@razorpay/blade 11.37.0 → 11.38.0

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 (520) hide show
  1. package/build/lib/native/components/Accordion/Accordion.js +2 -1
  2. package/build/lib/native/components/Accordion/Accordion.js.map +1 -1
  3. package/build/lib/native/components/Accordion/AccordionItem.js +3 -1
  4. package/build/lib/native/components/Accordion/AccordionItem.js.map +1 -1
  5. package/build/lib/native/components/Accordion/AccordionItemBody.js +3 -2
  6. package/build/lib/native/components/Accordion/AccordionItemBody.js.map +1 -1
  7. package/build/lib/native/components/Accordion/AccordionItemHeader.js +3 -2
  8. package/build/lib/native/components/Accordion/AccordionItemHeader.js.map +1 -1
  9. package/build/lib/native/components/ActionList/ActionList.js +3 -1
  10. package/build/lib/native/components/ActionList/ActionList.js.map +1 -1
  11. package/build/lib/native/components/ActionList/ActionListItem.js +3 -2
  12. package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
  13. package/build/lib/native/components/Alert/Alert.js +2 -1
  14. package/build/lib/native/components/Alert/Alert.js.map +1 -1
  15. package/build/lib/native/components/Amount/Amount.js +2 -1
  16. package/build/lib/native/components/Amount/Amount.js.map +1 -1
  17. package/build/lib/native/components/Badge/Badge.js +2 -1
  18. package/build/lib/native/components/Badge/Badge.js.map +1 -1
  19. package/build/lib/native/components/BaseHeaderFooter/BaseFooter.js +3 -1
  20. package/build/lib/native/components/BaseHeaderFooter/BaseFooter.js.map +1 -1
  21. package/build/lib/native/components/BaseHeaderFooter/BaseHeader.js +3 -2
  22. package/build/lib/native/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  23. package/build/lib/native/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  24. package/build/lib/native/components/Box/Box.js +2 -1
  25. package/build/lib/native/components/Box/Box.js.map +1 -1
  26. package/build/lib/native/components/Button/BaseButton/BaseButton.js +2 -1
  27. package/build/lib/native/components/Button/BaseButton/BaseButton.js.map +1 -1
  28. package/build/lib/native/components/Button/Button/Button.js +2 -1
  29. package/build/lib/native/components/Button/Button/Button.js.map +1 -1
  30. package/build/lib/native/components/Button/IconButton/IconButton.js +3 -1
  31. package/build/lib/native/components/Button/IconButton/IconButton.js.map +1 -1
  32. package/build/lib/native/components/Card/Card.js +2 -1
  33. package/build/lib/native/components/Card/Card.js.map +1 -1
  34. package/build/lib/native/components/Card/CardFooter.js +3 -2
  35. package/build/lib/native/components/Card/CardFooter.js.map +1 -1
  36. package/build/lib/native/components/Card/CardHeader.js +3 -2
  37. package/build/lib/native/components/Card/CardHeader.js.map +1 -1
  38. package/build/lib/native/components/Checkbox/Checkbox.js +3 -2
  39. package/build/lib/native/components/Checkbox/Checkbox.js.map +1 -1
  40. package/build/lib/native/components/Checkbox/CheckboxGroup/CheckboxGroup.js +2 -1
  41. package/build/lib/native/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  42. package/build/lib/native/components/Chip/Chip.js +2 -1
  43. package/build/lib/native/components/Chip/Chip.js.map +1 -1
  44. package/build/lib/native/components/Chip/ChipGroup.js +2 -1
  45. package/build/lib/native/components/Chip/ChipGroup.js.map +1 -1
  46. package/build/lib/native/components/Collapsible/Collapsible.js +2 -1
  47. package/build/lib/native/components/Collapsible/Collapsible.js.map +1 -1
  48. package/build/lib/native/components/Collapsible/CollapsibleBody.js +3 -1
  49. package/build/lib/native/components/Collapsible/CollapsibleBody.js.map +1 -1
  50. package/build/lib/native/components/Collapsible/CollapsibleButton.js +3 -1
  51. package/build/lib/native/components/Collapsible/CollapsibleButton.js.map +1 -1
  52. package/build/lib/native/components/Collapsible/CollapsibleLink.js +2 -1
  53. package/build/lib/native/components/Collapsible/CollapsibleLink.js.map +1 -1
  54. package/build/lib/native/components/Counter/Counter.js +2 -1
  55. package/build/lib/native/components/Counter/Counter.js.map +1 -1
  56. package/build/lib/native/components/Dropdown/Dropdown.js +2 -1
  57. package/build/lib/native/components/Dropdown/Dropdown.js.map +1 -1
  58. package/build/lib/native/components/Dropdown/DropdownButton.js +1 -1
  59. package/build/lib/native/components/Dropdown/DropdownButton.js.map +1 -1
  60. package/build/lib/native/components/Dropdown/DropdownHeaderFooter.js +3 -1
  61. package/build/lib/native/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  62. package/build/lib/native/components/Dropdown/DropdownLink.js +2 -1
  63. package/build/lib/native/components/Dropdown/DropdownLink.js.map +1 -1
  64. package/build/lib/native/components/Form/Selector/SelectorGroupField.js +3 -1
  65. package/build/lib/native/components/Form/Selector/SelectorGroupField.js.map +1 -1
  66. package/build/lib/native/components/Indicator/Indicator.js +2 -1
  67. package/build/lib/native/components/Indicator/Indicator.js.map +1 -1
  68. package/build/lib/native/components/Input/BaseInput/BaseInput.js +2 -1
  69. package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
  70. package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +2 -1
  71. package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  72. package/build/lib/native/components/Input/DropdownInputTriggers/SelectInput.js +2 -1
  73. package/build/lib/native/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  74. package/build/lib/native/components/Input/OTPInput/OTPInput.js +2 -1
  75. package/build/lib/native/components/Input/OTPInput/OTPInput.js.map +1 -1
  76. package/build/lib/native/components/Input/PasswordInput/PasswordInput.js +1 -1
  77. package/build/lib/native/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  78. package/build/lib/native/components/Input/SearchInput/SearchInput.js +1 -1
  79. package/build/lib/native/components/Input/SearchInput/SearchInput.js.map +1 -1
  80. package/build/lib/native/components/Input/TextArea/TextArea.js +1 -1
  81. package/build/lib/native/components/Input/TextArea/TextArea.js.map +1 -1
  82. package/build/lib/native/components/Input/TextInput/TextInput.js +1 -1
  83. package/build/lib/native/components/Input/TextInput/TextInput.js.map +1 -1
  84. package/build/lib/native/components/Link/BaseLink/BaseLink.js +2 -1
  85. package/build/lib/native/components/Link/BaseLink/BaseLink.js.map +1 -1
  86. package/build/lib/native/components/Link/Link/Link.js +2 -1
  87. package/build/lib/native/components/Link/Link/Link.js.map +1 -1
  88. package/build/lib/native/components/ProgressBar/ProgressBar.js +2 -1
  89. package/build/lib/native/components/ProgressBar/ProgressBar.js.map +1 -1
  90. package/build/lib/native/components/Radio/Radio.js +2 -1
  91. package/build/lib/native/components/Radio/Radio.js.map +1 -1
  92. package/build/lib/native/components/Radio/RadioGroup/RadioGroup.js +2 -1
  93. package/build/lib/native/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  94. package/build/lib/native/components/StepGroup/tokens.js +1 -1
  95. package/build/lib/native/components/StepGroup/tokens.js.map +1 -1
  96. package/build/lib/native/components/Switch/Switch.js +2 -1
  97. package/build/lib/native/components/Switch/Switch.js.map +1 -1
  98. package/build/lib/native/components/Tag/Tag.js +2 -1
  99. package/build/lib/native/components/Tag/Tag.js.map +1 -1
  100. package/build/lib/native/tokens/global/size.js +1 -1
  101. package/build/lib/native/tokens/global/size.js.map +1 -1
  102. package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +7 -0
  103. package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  104. package/build/lib/web/development/components/Accordion/Accordion.js +5 -3
  105. package/build/lib/web/development/components/Accordion/Accordion.js.map +1 -1
  106. package/build/lib/web/development/components/Accordion/AccordionButton.web.js +8 -3
  107. package/build/lib/web/development/components/Accordion/AccordionButton.web.js.map +1 -1
  108. package/build/lib/web/development/components/Accordion/AccordionItem.js +8 -3
  109. package/build/lib/web/development/components/Accordion/AccordionItem.js.map +1 -1
  110. package/build/lib/web/development/components/Accordion/AccordionItemBody.js +8 -3
  111. package/build/lib/web/development/components/Accordion/AccordionItemBody.js.map +1 -1
  112. package/build/lib/web/development/components/Accordion/AccordionItemHeader.js +10 -4
  113. package/build/lib/web/development/components/Accordion/AccordionItemHeader.js.map +1 -1
  114. package/build/lib/web/development/components/ActionList/ActionList.js +9 -4
  115. package/build/lib/web/development/components/ActionList/ActionList.js.map +1 -1
  116. package/build/lib/web/development/components/ActionList/ActionListBox.web.js +8 -3
  117. package/build/lib/web/development/components/ActionList/ActionListBox.web.js.map +1 -1
  118. package/build/lib/web/development/components/ActionList/ActionListItem.js +10 -5
  119. package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
  120. package/build/lib/web/development/components/Alert/Alert.js +5 -3
  121. package/build/lib/web/development/components/Alert/Alert.js.map +1 -1
  122. package/build/lib/web/development/components/Amount/Amount.js +5 -8
  123. package/build/lib/web/development/components/Amount/Amount.js.map +1 -1
  124. package/build/lib/web/development/components/Avatar/Avatar.web.js +5 -3
  125. package/build/lib/web/development/components/Avatar/Avatar.web.js.map +1 -1
  126. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js +5 -3
  127. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js.map +1 -1
  128. package/build/lib/web/development/components/Badge/Badge.js +5 -3
  129. package/build/lib/web/development/components/Badge/Badge.js.map +1 -1
  130. package/build/lib/web/development/components/BaseHeaderFooter/BaseFooter.js +8 -3
  131. package/build/lib/web/development/components/BaseHeaderFooter/BaseFooter.js.map +1 -1
  132. package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js +8 -3
  133. package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  134. package/build/lib/web/development/components/BottomNav/BottomNav.web.js +12 -8
  135. package/build/lib/web/development/components/BottomNav/BottomNav.web.js.map +1 -1
  136. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js +9 -3
  137. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js.map +1 -1
  138. package/build/lib/web/development/components/BottomSheet/BottomSheetBody.web.js +8 -3
  139. package/build/lib/web/development/components/BottomSheet/BottomSheetBody.web.js.map +1 -1
  140. package/build/lib/web/development/components/BottomSheet/BottomSheetFooter.web.js +8 -3
  141. package/build/lib/web/development/components/BottomSheet/BottomSheetFooter.web.js.map +1 -1
  142. package/build/lib/web/development/components/BottomSheet/BottomSheetHeader.web.js +8 -3
  143. package/build/lib/web/development/components/BottomSheet/BottomSheetHeader.web.js.map +1 -1
  144. package/build/lib/web/development/components/Box/BaseBox/BaseBox.web.js +4 -2
  145. package/build/lib/web/development/components/Box/BaseBox/BaseBox.web.js.map +1 -1
  146. package/build/lib/web/development/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  147. package/build/lib/web/development/components/Box/Box.js +4 -2
  148. package/build/lib/web/development/components/Box/Box.js.map +1 -1
  149. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js +6 -4
  150. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  151. package/build/lib/web/development/components/Breadcrumb/BreadcrumbItem.web.js +13 -4
  152. package/build/lib/web/development/components/Breadcrumb/BreadcrumbItem.web.js.map +1 -1
  153. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js +4 -2
  154. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js.map +1 -1
  155. package/build/lib/web/development/components/Button/Button/Button.js +4 -2
  156. package/build/lib/web/development/components/Button/Button/Button.js.map +1 -1
  157. package/build/lib/web/development/components/Button/IconButton/IconButton.js +11 -5
  158. package/build/lib/web/development/components/Button/IconButton/IconButton.js.map +1 -1
  159. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js +8 -3
  160. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  161. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js +5 -3
  162. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  163. package/build/lib/web/development/components/Card/Card.js +11 -7
  164. package/build/lib/web/development/components/Card/Card.js.map +1 -1
  165. package/build/lib/web/development/components/Card/CardFooter.js +22 -11
  166. package/build/lib/web/development/components/Card/CardFooter.js.map +1 -1
  167. package/build/lib/web/development/components/Card/CardHeader.js +13 -6
  168. package/build/lib/web/development/components/Card/CardHeader.js.map +1 -1
  169. package/build/lib/web/development/components/Carousel/Carousel.web.js +5 -3
  170. package/build/lib/web/development/components/Carousel/Carousel.web.js.map +1 -1
  171. package/build/lib/web/development/components/Carousel/CarouselItem.web.js +9 -3
  172. package/build/lib/web/development/components/Carousel/CarouselItem.web.js.map +1 -1
  173. package/build/lib/web/development/components/Checkbox/Checkbox.js +6 -4
  174. package/build/lib/web/development/components/Checkbox/Checkbox.js.map +1 -1
  175. package/build/lib/web/development/components/Checkbox/CheckboxGroup/CheckboxGroup.js +8 -5
  176. package/build/lib/web/development/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  177. package/build/lib/web/development/components/Chip/Chip.js +5 -3
  178. package/build/lib/web/development/components/Chip/Chip.js.map +1 -1
  179. package/build/lib/web/development/components/Chip/ChipGroup.js +8 -5
  180. package/build/lib/web/development/components/Chip/ChipGroup.js.map +1 -1
  181. package/build/lib/web/development/components/Collapsible/Collapsible.js +5 -3
  182. package/build/lib/web/development/components/Collapsible/Collapsible.js.map +1 -1
  183. package/build/lib/web/development/components/Collapsible/CollapsibleBody.js +8 -3
  184. package/build/lib/web/development/components/Collapsible/CollapsibleBody.js.map +1 -1
  185. package/build/lib/web/development/components/Collapsible/CollapsibleButton.js +13 -4
  186. package/build/lib/web/development/components/Collapsible/CollapsibleButton.js.map +1 -1
  187. package/build/lib/web/development/components/Collapsible/CollapsibleLink.js +5 -3
  188. package/build/lib/web/development/components/Collapsible/CollapsibleLink.js.map +1 -1
  189. package/build/lib/web/development/components/Counter/Counter.js +5 -3
  190. package/build/lib/web/development/components/Counter/Counter.js.map +1 -1
  191. package/build/lib/web/development/components/DatePicker/DateInput.web.js +11 -7
  192. package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
  193. package/build/lib/web/development/components/DatePicker/DatePicker.web.js +4 -2
  194. package/build/lib/web/development/components/DatePicker/DatePicker.web.js.map +1 -1
  195. package/build/lib/web/development/components/Drawer/Drawer.web.js +8 -3
  196. package/build/lib/web/development/components/Drawer/Drawer.web.js.map +1 -1
  197. package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js +11 -3
  198. package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
  199. package/build/lib/web/development/components/Dropdown/Dropdown.js +5 -3
  200. package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
  201. package/build/lib/web/development/components/Dropdown/DropdownButton.js +2 -2
  202. package/build/lib/web/development/components/Dropdown/DropdownButton.js.map +1 -1
  203. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js +8 -3
  204. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  205. package/build/lib/web/development/components/Dropdown/DropdownLink.js +5 -3
  206. package/build/lib/web/development/components/Dropdown/DropdownLink.js.map +1 -1
  207. package/build/lib/web/development/components/FileUpload/FileUpload.web.js +6 -4
  208. package/build/lib/web/development/components/FileUpload/FileUpload.web.js.map +1 -1
  209. package/build/lib/web/development/components/Form/Selector/SelectorGroupField.js +8 -3
  210. package/build/lib/web/development/components/Form/Selector/SelectorGroupField.js.map +1 -1
  211. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js +8 -3
  212. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js.map +1 -1
  213. package/build/lib/web/development/components/Indicator/Indicator.js +5 -3
  214. package/build/lib/web/development/components/Indicator/Indicator.js.map +1 -1
  215. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +6 -4
  216. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
  217. package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +5 -2
  218. package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  219. package/build/lib/web/development/components/Input/DropdownInputTriggers/SelectInput.js +5 -3
  220. package/build/lib/web/development/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  221. package/build/lib/web/development/components/Input/OTPInput/OTPInput.js +6 -4
  222. package/build/lib/web/development/components/Input/OTPInput/OTPInput.js.map +1 -1
  223. package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js +2 -2
  224. package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  225. package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +2 -2
  226. package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
  227. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js +2 -2
  228. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js.map +1 -1
  229. package/build/lib/web/development/components/Input/TextArea/TextArea.js +2 -2
  230. package/build/lib/web/development/components/Input/TextArea/TextArea.js.map +1 -1
  231. package/build/lib/web/development/components/Input/TextInput/TextInput.js +2 -2
  232. package/build/lib/web/development/components/Input/TextInput/TextInput.js.map +1 -1
  233. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js +5 -3
  234. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js.map +1 -1
  235. package/build/lib/web/development/components/Link/Link/Link.js +4 -2
  236. package/build/lib/web/development/components/Link/Link/Link.js.map +1 -1
  237. package/build/lib/web/development/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js +18 -8
  238. package/build/lib/web/development/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js.map +1 -1
  239. package/build/lib/web/development/components/Modal/Modal.web.js +10 -4
  240. package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
  241. package/build/lib/web/development/components/Modal/ModalBody.web.js +9 -3
  242. package/build/lib/web/development/components/Modal/ModalBody.web.js.map +1 -1
  243. package/build/lib/web/development/components/Modal/ModalFooter.web.js +7 -2
  244. package/build/lib/web/development/components/Modal/ModalFooter.web.js.map +1 -1
  245. package/build/lib/web/development/components/Modal/ModalHeader.web.js +14 -6
  246. package/build/lib/web/development/components/Modal/ModalHeader.web.js.map +1 -1
  247. package/build/lib/web/development/components/Popover/Popover.web.js +8 -3
  248. package/build/lib/web/development/components/Popover/Popover.web.js.map +1 -1
  249. package/build/lib/web/development/components/Popover/PopoverInteractiveWrapper.web.js.map +1 -1
  250. package/build/lib/web/development/components/ProgressBar/ProgressBar.js +5 -3
  251. package/build/lib/web/development/components/ProgressBar/ProgressBar.js.map +1 -1
  252. package/build/lib/web/development/components/Radio/Radio.js +6 -4
  253. package/build/lib/web/development/components/Radio/Radio.js.map +1 -1
  254. package/build/lib/web/development/components/Radio/RadioGroup/RadioGroup.js +8 -5
  255. package/build/lib/web/development/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  256. package/build/lib/web/development/components/SideNav/SideNav.web.js +5 -3
  257. package/build/lib/web/development/components/SideNav/SideNav.web.js.map +1 -1
  258. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js +13 -4
  259. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
  260. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js +10 -4
  261. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  262. package/build/lib/web/development/components/SideNav/SideNavSection.web.js +10 -4
  263. package/build/lib/web/development/components/SideNav/SideNavSection.web.js.map +1 -1
  264. package/build/lib/web/development/components/StepGroup/StepGroup.web.js +5 -3
  265. package/build/lib/web/development/components/StepGroup/StepGroup.web.js.map +1 -1
  266. package/build/lib/web/development/components/StepGroup/StepItem.web.js +13 -7
  267. package/build/lib/web/development/components/StepGroup/StepItem.web.js.map +1 -1
  268. package/build/lib/web/development/components/StepGroup/StepLine.web.js +79 -42
  269. package/build/lib/web/development/components/StepGroup/StepLine.web.js.map +1 -1
  270. package/build/lib/web/development/components/StepGroup/tokens.js +6 -6
  271. package/build/lib/web/development/components/StepGroup/tokens.js.map +1 -1
  272. package/build/lib/web/development/components/Switch/Switch.js +5 -3
  273. package/build/lib/web/development/components/Switch/Switch.js.map +1 -1
  274. package/build/lib/web/development/components/Table/Table.web.js +9 -7
  275. package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
  276. package/build/lib/web/development/components/Table/TableBody.web.js +18 -9
  277. package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
  278. package/build/lib/web/development/components/Table/TableFooter.web.js +18 -9
  279. package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
  280. package/build/lib/web/development/components/Table/TableHeader.web.js +18 -9
  281. package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
  282. package/build/lib/web/development/components/Table/TablePagination.web.js +10 -4
  283. package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
  284. package/build/lib/web/development/components/Table/TableToolbar.web.js +13 -8
  285. package/build/lib/web/development/components/Table/TableToolbar.web.js.map +1 -1
  286. package/build/lib/web/development/components/Tabs/TabItem.web.js +9 -5
  287. package/build/lib/web/development/components/Tabs/TabItem.web.js.map +1 -1
  288. package/build/lib/web/development/components/Tabs/TabList.web.js +5 -3
  289. package/build/lib/web/development/components/Tabs/TabList.web.js.map +1 -1
  290. package/build/lib/web/development/components/Tabs/TabPanel.web.js +10 -5
  291. package/build/lib/web/development/components/Tabs/TabPanel.web.js.map +1 -1
  292. package/build/lib/web/development/components/Tabs/Tabs.web.js +8 -3
  293. package/build/lib/web/development/components/Tabs/Tabs.web.js.map +1 -1
  294. package/build/lib/web/development/components/Tag/Tag.js +6 -4
  295. package/build/lib/web/development/components/Tag/Tag.js.map +1 -1
  296. package/build/lib/web/development/components/Toast/ToastContainer.web.js +8 -3
  297. package/build/lib/web/development/components/Toast/ToastContainer.web.js.map +1 -1
  298. package/build/lib/web/development/components/Tooltip/Tooltip.web.js +8 -3
  299. package/build/lib/web/development/components/Tooltip/Tooltip.web.js.map +1 -1
  300. package/build/lib/web/development/components/TopNav/TabNav/TabNav.web.js +6 -3
  301. package/build/lib/web/development/components/TopNav/TabNav/TabNav.web.js.map +1 -1
  302. package/build/lib/web/development/components/TopNav/TopNav.web.js +8 -5
  303. package/build/lib/web/development/components/TopNav/TopNav.web.js.map +1 -1
  304. package/build/lib/web/development/tokens/global/size.js +3 -1
  305. package/build/lib/web/development/tokens/global/size.js.map +1 -1
  306. package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js +2 -0
  307. package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js.map +1 -0
  308. package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +20 -0
  309. package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  310. package/build/lib/web/production/components/Accordion/Accordion.js +5 -3
  311. package/build/lib/web/production/components/Accordion/Accordion.js.map +1 -1
  312. package/build/lib/web/production/components/Accordion/AccordionButton.web.js +8 -3
  313. package/build/lib/web/production/components/Accordion/AccordionButton.web.js.map +1 -1
  314. package/build/lib/web/production/components/Accordion/AccordionItem.js +8 -3
  315. package/build/lib/web/production/components/Accordion/AccordionItem.js.map +1 -1
  316. package/build/lib/web/production/components/Accordion/AccordionItemBody.js +8 -3
  317. package/build/lib/web/production/components/Accordion/AccordionItemBody.js.map +1 -1
  318. package/build/lib/web/production/components/Accordion/AccordionItemHeader.js +10 -4
  319. package/build/lib/web/production/components/Accordion/AccordionItemHeader.js.map +1 -1
  320. package/build/lib/web/production/components/ActionList/ActionList.js +9 -4
  321. package/build/lib/web/production/components/ActionList/ActionList.js.map +1 -1
  322. package/build/lib/web/production/components/ActionList/ActionListBox.web.js +8 -3
  323. package/build/lib/web/production/components/ActionList/ActionListBox.web.js.map +1 -1
  324. package/build/lib/web/production/components/ActionList/ActionListItem.js +10 -5
  325. package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
  326. package/build/lib/web/production/components/Alert/Alert.js +5 -3
  327. package/build/lib/web/production/components/Alert/Alert.js.map +1 -1
  328. package/build/lib/web/production/components/Amount/Amount.js +5 -8
  329. package/build/lib/web/production/components/Amount/Amount.js.map +1 -1
  330. package/build/lib/web/production/components/Avatar/Avatar.web.js +5 -3
  331. package/build/lib/web/production/components/Avatar/Avatar.web.js.map +1 -1
  332. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js +5 -3
  333. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js.map +1 -1
  334. package/build/lib/web/production/components/Badge/Badge.js +5 -3
  335. package/build/lib/web/production/components/Badge/Badge.js.map +1 -1
  336. package/build/lib/web/production/components/BaseHeaderFooter/BaseFooter.js +8 -3
  337. package/build/lib/web/production/components/BaseHeaderFooter/BaseFooter.js.map +1 -1
  338. package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js +8 -3
  339. package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  340. package/build/lib/web/production/components/BottomNav/BottomNav.web.js +12 -8
  341. package/build/lib/web/production/components/BottomNav/BottomNav.web.js.map +1 -1
  342. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js +9 -3
  343. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js.map +1 -1
  344. package/build/lib/web/production/components/BottomSheet/BottomSheetBody.web.js +8 -3
  345. package/build/lib/web/production/components/BottomSheet/BottomSheetBody.web.js.map +1 -1
  346. package/build/lib/web/production/components/BottomSheet/BottomSheetFooter.web.js +8 -3
  347. package/build/lib/web/production/components/BottomSheet/BottomSheetFooter.web.js.map +1 -1
  348. package/build/lib/web/production/components/BottomSheet/BottomSheetHeader.web.js +8 -3
  349. package/build/lib/web/production/components/BottomSheet/BottomSheetHeader.web.js.map +1 -1
  350. package/build/lib/web/production/components/Box/BaseBox/BaseBox.web.js +4 -2
  351. package/build/lib/web/production/components/Box/BaseBox/BaseBox.web.js.map +1 -1
  352. package/build/lib/web/production/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  353. package/build/lib/web/production/components/Box/Box.js +4 -2
  354. package/build/lib/web/production/components/Box/Box.js.map +1 -1
  355. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js +6 -4
  356. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  357. package/build/lib/web/production/components/Breadcrumb/BreadcrumbItem.web.js +13 -4
  358. package/build/lib/web/production/components/Breadcrumb/BreadcrumbItem.web.js.map +1 -1
  359. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js +4 -2
  360. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js.map +1 -1
  361. package/build/lib/web/production/components/Button/Button/Button.js +4 -2
  362. package/build/lib/web/production/components/Button/Button/Button.js.map +1 -1
  363. package/build/lib/web/production/components/Button/IconButton/IconButton.js +11 -5
  364. package/build/lib/web/production/components/Button/IconButton/IconButton.js.map +1 -1
  365. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js +8 -3
  366. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  367. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js +5 -3
  368. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  369. package/build/lib/web/production/components/Card/Card.js +11 -7
  370. package/build/lib/web/production/components/Card/Card.js.map +1 -1
  371. package/build/lib/web/production/components/Card/CardFooter.js +22 -11
  372. package/build/lib/web/production/components/Card/CardFooter.js.map +1 -1
  373. package/build/lib/web/production/components/Card/CardHeader.js +13 -6
  374. package/build/lib/web/production/components/Card/CardHeader.js.map +1 -1
  375. package/build/lib/web/production/components/Carousel/Carousel.web.js +5 -3
  376. package/build/lib/web/production/components/Carousel/Carousel.web.js.map +1 -1
  377. package/build/lib/web/production/components/Carousel/CarouselItem.web.js +9 -3
  378. package/build/lib/web/production/components/Carousel/CarouselItem.web.js.map +1 -1
  379. package/build/lib/web/production/components/Checkbox/Checkbox.js +6 -4
  380. package/build/lib/web/production/components/Checkbox/Checkbox.js.map +1 -1
  381. package/build/lib/web/production/components/Checkbox/CheckboxGroup/CheckboxGroup.js +8 -5
  382. package/build/lib/web/production/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  383. package/build/lib/web/production/components/Chip/Chip.js +5 -3
  384. package/build/lib/web/production/components/Chip/Chip.js.map +1 -1
  385. package/build/lib/web/production/components/Chip/ChipGroup.js +8 -5
  386. package/build/lib/web/production/components/Chip/ChipGroup.js.map +1 -1
  387. package/build/lib/web/production/components/Collapsible/Collapsible.js +5 -3
  388. package/build/lib/web/production/components/Collapsible/Collapsible.js.map +1 -1
  389. package/build/lib/web/production/components/Collapsible/CollapsibleBody.js +8 -3
  390. package/build/lib/web/production/components/Collapsible/CollapsibleBody.js.map +1 -1
  391. package/build/lib/web/production/components/Collapsible/CollapsibleButton.js +13 -4
  392. package/build/lib/web/production/components/Collapsible/CollapsibleButton.js.map +1 -1
  393. package/build/lib/web/production/components/Collapsible/CollapsibleLink.js +5 -3
  394. package/build/lib/web/production/components/Collapsible/CollapsibleLink.js.map +1 -1
  395. package/build/lib/web/production/components/Counter/Counter.js +5 -3
  396. package/build/lib/web/production/components/Counter/Counter.js.map +1 -1
  397. package/build/lib/web/production/components/DatePicker/DateInput.web.js +11 -7
  398. package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
  399. package/build/lib/web/production/components/DatePicker/DatePicker.web.js +4 -2
  400. package/build/lib/web/production/components/DatePicker/DatePicker.web.js.map +1 -1
  401. package/build/lib/web/production/components/Drawer/Drawer.web.js +8 -3
  402. package/build/lib/web/production/components/Drawer/Drawer.web.js.map +1 -1
  403. package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js +11 -3
  404. package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
  405. package/build/lib/web/production/components/Dropdown/Dropdown.js +5 -3
  406. package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
  407. package/build/lib/web/production/components/Dropdown/DropdownButton.js +2 -2
  408. package/build/lib/web/production/components/Dropdown/DropdownButton.js.map +1 -1
  409. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js +8 -3
  410. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  411. package/build/lib/web/production/components/Dropdown/DropdownLink.js +5 -3
  412. package/build/lib/web/production/components/Dropdown/DropdownLink.js.map +1 -1
  413. package/build/lib/web/production/components/FileUpload/FileUpload.web.js +6 -4
  414. package/build/lib/web/production/components/FileUpload/FileUpload.web.js.map +1 -1
  415. package/build/lib/web/production/components/Form/Selector/SelectorGroupField.js +8 -3
  416. package/build/lib/web/production/components/Form/Selector/SelectorGroupField.js.map +1 -1
  417. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js +8 -3
  418. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js.map +1 -1
  419. package/build/lib/web/production/components/Indicator/Indicator.js +5 -3
  420. package/build/lib/web/production/components/Indicator/Indicator.js.map +1 -1
  421. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +6 -4
  422. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
  423. package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +5 -2
  424. package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  425. package/build/lib/web/production/components/Input/DropdownInputTriggers/SelectInput.js +5 -3
  426. package/build/lib/web/production/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  427. package/build/lib/web/production/components/Input/OTPInput/OTPInput.js +6 -4
  428. package/build/lib/web/production/components/Input/OTPInput/OTPInput.js.map +1 -1
  429. package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js +2 -2
  430. package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  431. package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +2 -2
  432. package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
  433. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js +2 -2
  434. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js.map +1 -1
  435. package/build/lib/web/production/components/Input/TextArea/TextArea.js +2 -2
  436. package/build/lib/web/production/components/Input/TextArea/TextArea.js.map +1 -1
  437. package/build/lib/web/production/components/Input/TextInput/TextInput.js +2 -2
  438. package/build/lib/web/production/components/Input/TextInput/TextInput.js.map +1 -1
  439. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js +5 -3
  440. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js.map +1 -1
  441. package/build/lib/web/production/components/Link/Link/Link.js +4 -2
  442. package/build/lib/web/production/components/Link/Link/Link.js.map +1 -1
  443. package/build/lib/web/production/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js +18 -8
  444. package/build/lib/web/production/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js.map +1 -1
  445. package/build/lib/web/production/components/Modal/Modal.web.js +10 -4
  446. package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
  447. package/build/lib/web/production/components/Modal/ModalBody.web.js +9 -3
  448. package/build/lib/web/production/components/Modal/ModalBody.web.js.map +1 -1
  449. package/build/lib/web/production/components/Modal/ModalFooter.web.js +7 -2
  450. package/build/lib/web/production/components/Modal/ModalFooter.web.js.map +1 -1
  451. package/build/lib/web/production/components/Modal/ModalHeader.web.js +14 -6
  452. package/build/lib/web/production/components/Modal/ModalHeader.web.js.map +1 -1
  453. package/build/lib/web/production/components/Popover/Popover.web.js +8 -3
  454. package/build/lib/web/production/components/Popover/Popover.web.js.map +1 -1
  455. package/build/lib/web/production/components/Popover/PopoverInteractiveWrapper.web.js.map +1 -1
  456. package/build/lib/web/production/components/ProgressBar/ProgressBar.js +5 -3
  457. package/build/lib/web/production/components/ProgressBar/ProgressBar.js.map +1 -1
  458. package/build/lib/web/production/components/Radio/Radio.js +6 -4
  459. package/build/lib/web/production/components/Radio/Radio.js.map +1 -1
  460. package/build/lib/web/production/components/Radio/RadioGroup/RadioGroup.js +8 -5
  461. package/build/lib/web/production/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  462. package/build/lib/web/production/components/SideNav/SideNav.web.js +5 -3
  463. package/build/lib/web/production/components/SideNav/SideNav.web.js.map +1 -1
  464. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js +13 -4
  465. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
  466. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js +10 -4
  467. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  468. package/build/lib/web/production/components/SideNav/SideNavSection.web.js +10 -4
  469. package/build/lib/web/production/components/SideNav/SideNavSection.web.js.map +1 -1
  470. package/build/lib/web/production/components/StepGroup/StepGroup.web.js +5 -3
  471. package/build/lib/web/production/components/StepGroup/StepGroup.web.js.map +1 -1
  472. package/build/lib/web/production/components/StepGroup/StepItem.web.js +13 -7
  473. package/build/lib/web/production/components/StepGroup/StepItem.web.js.map +1 -1
  474. package/build/lib/web/production/components/StepGroup/StepLine.web.js +79 -42
  475. package/build/lib/web/production/components/StepGroup/StepLine.web.js.map +1 -1
  476. package/build/lib/web/production/components/StepGroup/tokens.js +6 -6
  477. package/build/lib/web/production/components/StepGroup/tokens.js.map +1 -1
  478. package/build/lib/web/production/components/Switch/Switch.js +5 -3
  479. package/build/lib/web/production/components/Switch/Switch.js.map +1 -1
  480. package/build/lib/web/production/components/Table/Table.web.js +9 -7
  481. package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
  482. package/build/lib/web/production/components/Table/TableBody.web.js +18 -9
  483. package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
  484. package/build/lib/web/production/components/Table/TableFooter.web.js +18 -9
  485. package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
  486. package/build/lib/web/production/components/Table/TableHeader.web.js +18 -9
  487. package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
  488. package/build/lib/web/production/components/Table/TablePagination.web.js +10 -4
  489. package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
  490. package/build/lib/web/production/components/Table/TableToolbar.web.js +13 -8
  491. package/build/lib/web/production/components/Table/TableToolbar.web.js.map +1 -1
  492. package/build/lib/web/production/components/Tabs/TabItem.web.js +9 -5
  493. package/build/lib/web/production/components/Tabs/TabItem.web.js.map +1 -1
  494. package/build/lib/web/production/components/Tabs/TabList.web.js +5 -3
  495. package/build/lib/web/production/components/Tabs/TabList.web.js.map +1 -1
  496. package/build/lib/web/production/components/Tabs/TabPanel.web.js +10 -5
  497. package/build/lib/web/production/components/Tabs/TabPanel.web.js.map +1 -1
  498. package/build/lib/web/production/components/Tabs/Tabs.web.js +8 -3
  499. package/build/lib/web/production/components/Tabs/Tabs.web.js.map +1 -1
  500. package/build/lib/web/production/components/Tag/Tag.js +6 -4
  501. package/build/lib/web/production/components/Tag/Tag.js.map +1 -1
  502. package/build/lib/web/production/components/Toast/ToastContainer.web.js +8 -3
  503. package/build/lib/web/production/components/Toast/ToastContainer.web.js.map +1 -1
  504. package/build/lib/web/production/components/Tooltip/Tooltip.web.js +8 -3
  505. package/build/lib/web/production/components/Tooltip/Tooltip.web.js.map +1 -1
  506. package/build/lib/web/production/components/TopNav/TabNav/TabNav.web.js +6 -3
  507. package/build/lib/web/production/components/TopNav/TabNav/TabNav.web.js.map +1 -1
  508. package/build/lib/web/production/components/TopNav/TopNav.web.js +8 -5
  509. package/build/lib/web/production/components/TopNav/TopNav.web.js.map +1 -1
  510. package/build/lib/web/production/tokens/global/size.js +3 -1
  511. package/build/lib/web/production/tokens/global/size.js.map +1 -1
  512. package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js +2 -0
  513. package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js.map +1 -0
  514. package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +20 -0
  515. package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  516. package/build/types/components/index.d.ts +221 -189
  517. package/build/types/components/index.native.d.ts +145 -131
  518. package/build/types/tokens/index.d.ts +3 -1
  519. package/build/types/tokens/index.native.d.ts +3 -1
  520. package/package.json +1 -1
@@ -4,9 +4,11 @@ import React__default from 'react';
4
4
  import '../BaseButton/index.js';
5
5
  import '../../Box/styledProps/index.js';
6
6
  import '../../../utils/assignWithoutSideEffects/index.js';
7
+ import '../../../utils/makeAnalyticsAttribute/index.js';
7
8
  import { jsx } from 'react/jsx-runtime';
8
9
  import BaseButton from '../BaseButton/BaseButton.js';
9
10
  import { getStyledProps } from '../../Box/styledProps/getStyledProps.js';
11
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
10
12
  import { assignWithoutSideEffects } from '../../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
11
13
 
12
14
  var _excluded = ["children", "icon", "iconPosition", "isDisabled", "isFullWidth", "isLoading", "href", "target", "rel", "onClick", "size", "type", "variant", "color", "accessibilityLabel", "role", "testID", "onBlur", "onFocus", "onMouseLeave", "onMouseMove", "onMouseDown", "onPointerDown", "onPointerEnter", "onTouchStart", "onTouchEnd"];
@@ -49,12 +51,12 @@ _ref, ref) {
49
51
  onTouchStart = _ref.onTouchStart,
50
52
  onTouchEnd = _ref.onTouchEnd,
51
53
  rest = _objectWithoutProperties(_ref, _excluded);
52
- return /*#__PURE__*/jsx(BaseButton, _objectSpread(_objectSpread(_objectSpread({}, icon ? {
54
+ return /*#__PURE__*/jsx(BaseButton, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, icon ? {
53
55
  icon: icon,
54
56
  children: children
55
57
  } : {
56
58
  children: children
57
- }), getStyledProps(rest)), {}, {
59
+ }), getStyledProps(rest)), makeAnalyticsAttribute(rest)), {}, {
58
60
  ref: ref,
59
61
  href: href,
60
62
  target: target,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../../../../../src/components/Button/Button/Button.tsx"],"sourcesContent":["import type { GestureResponderEvent } from 'react-native';\nimport React from 'react';\nimport BaseButton from '../BaseButton';\nimport type { BaseButtonProps } from '../BaseButton/BaseButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { Platform } from '~utils';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { BladeElementRef, StringChildrenType, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { AriaRoles } from '~utils/makeAccessible';\n\ntype ButtonCommonProps = {\n /**\n * Automatically renders button with `a` tag with `href` on web\n */\n href?: BaseButtonProps['href'];\n /**\n * anchor target attribute\n *\n * Should only be used alongside `href`\n */\n target?: BaseButtonProps['target'];\n /**\n * anchor rel attribute\n *\n * Should only be used alongside `href`\n */\n rel?: BaseButtonProps['rel'];\n variant?: 'primary' | 'secondary' | 'tertiary';\n color?: 'primary' | 'white' | 'positive' | 'negative';\n size?: 'xsmall' | 'small' | 'medium' | 'large';\n iconPosition?: 'left' | 'right';\n isDisabled?: boolean;\n isFullWidth?: boolean;\n isLoading?: boolean;\n accessibilityLabel?: string;\n type?: 'button' | 'reset' | 'submit';\n\n /**\n * It is exposed for internal usage with tooltip.\n *\n * @private\n */\n 'aria-describedby'?: string;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-controls'?: string;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-expanded'?: boolean;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-haspopup'?: 'menu';\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n role?: AriaRoles;\n tabIndex?: BaseButtonProps['tabIndex'];\n onClick?: Platform.Select<{\n native: (event: GestureResponderEvent) => void;\n web: (event: React.MouseEvent<HTMLButtonElement>) => void;\n }>;\n} & TestID &\n StyledPropsBlade &\n BladeCommonEvents;\n\n/*\n Mandatory children prop when icon is not provided\n */\ntype ButtonWithoutIconProps = ButtonCommonProps & {\n icon?: undefined;\n children: StringChildrenType;\n};\n\n/*\n Optional children prop when icon is provided\n */\ntype ButtonWithIconProps = ButtonCommonProps & {\n icon: IconComponent;\n children?: StringChildrenType;\n};\n\nexport type ButtonProps = ButtonWithoutIconProps | ButtonWithIconProps;\n\nconst _Button: React.ForwardRefRenderFunction<BladeElementRef, ButtonProps> = (\n // While adding any prop here, make sure to handle it in DropdownButton as well\n {\n children,\n icon,\n iconPosition = 'left',\n isDisabled = false,\n isFullWidth = false,\n isLoading = false,\n href,\n target,\n rel,\n onClick,\n size = 'medium',\n type = 'button',\n variant = 'primary',\n color = 'primary',\n accessibilityLabel,\n role,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onMouseDown,\n onPointerDown,\n onPointerEnter,\n onTouchStart,\n onTouchEnd,\n ...rest\n },\n ref,\n) => {\n return (\n <BaseButton\n {...(icon ? { icon, children } : { children })}\n {...getStyledProps(rest)}\n ref={ref}\n href={href}\n target={target}\n rel={rel}\n accessibilityProps={{\n label: accessibilityLabel,\n describedBy: rest['aria-describedby'],\n expanded: rest['aria-expanded'],\n hasPopup: rest['aria-haspopup'],\n role,\n }}\n iconPosition={iconPosition}\n color={color}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n onClick={onClick}\n size={size}\n type={type}\n variant={variant}\n isLoading={isLoading}\n testID={testID}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onMouseDown={onMouseDown}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchStart={onTouchStart}\n onTouchEnd={onTouchEnd}\n />\n );\n};\n\nconst Button = assignWithoutSideEffects(React.forwardRef(_Button), {\n displayName: 'Button',\n componentId: 'Button',\n});\n\nexport default Button;\n"],"names":["_Button","_ref","ref","children","icon","_ref$iconPosition","iconPosition","_ref$isDisabled","isDisabled","_ref$isFullWidth","isFullWidth","_ref$isLoading","isLoading","href","target","rel","onClick","_ref$size","size","_ref$type","type","_ref$variant","variant","_ref$color","color","accessibilityLabel","role","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onMouseDown","onPointerDown","onPointerEnter","onTouchStart","onTouchEnd","rest","_objectWithoutProperties","_excluded","_jsx","BaseButton","_objectSpread","getStyledProps","accessibilityProps","label","describedBy","expanded","hasPopup","Button","assignWithoutSideEffects","React","forwardRef","displayName","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"Button.js","sources":["../../../../../../../src/components/Button/Button/Button.tsx"],"sourcesContent":["import type { GestureResponderEvent } from 'react-native';\nimport React from 'react';\nimport BaseButton from '../BaseButton';\nimport type { BaseButtonProps } from '../BaseButton/BaseButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { Platform } from '~utils';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type {\n BladeElementRef,\n DataAnalyticsAttribute,\n StringChildrenType,\n TestID,\n} from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { AriaRoles } from '~utils/makeAccessible';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ButtonCommonProps = {\n /**\n * Automatically renders button with `a` tag with `href` on web\n */\n href?: BaseButtonProps['href'];\n /**\n * anchor target attribute\n *\n * Should only be used alongside `href`\n */\n target?: BaseButtonProps['target'];\n /**\n * anchor rel attribute\n *\n * Should only be used alongside `href`\n */\n rel?: BaseButtonProps['rel'];\n variant?: 'primary' | 'secondary' | 'tertiary';\n color?: 'primary' | 'white' | 'positive' | 'negative';\n size?: 'xsmall' | 'small' | 'medium' | 'large';\n iconPosition?: 'left' | 'right';\n isDisabled?: boolean;\n isFullWidth?: boolean;\n isLoading?: boolean;\n accessibilityLabel?: string;\n type?: 'button' | 'reset' | 'submit';\n\n /**\n * It is exposed for internal usage with tooltip.\n *\n * @private\n */\n 'aria-describedby'?: string;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-controls'?: string;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-expanded'?: boolean;\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n 'aria-haspopup'?: 'menu';\n /**\n * It is exposed for internal usage with menu.\n *\n * @private\n */\n role?: AriaRoles;\n tabIndex?: BaseButtonProps['tabIndex'];\n onClick?: Platform.Select<{\n native: (event: GestureResponderEvent) => void;\n web: (event: React.MouseEvent<HTMLButtonElement>) => void;\n }>;\n} & TestID &\n StyledPropsBlade &\n DataAnalyticsAttribute &\n BladeCommonEvents;\n\n/*\n Mandatory children prop when icon is not provided\n */\ntype ButtonWithoutIconProps = ButtonCommonProps & {\n icon?: undefined;\n children: StringChildrenType;\n};\n\n/*\n Optional children prop when icon is provided\n */\ntype ButtonWithIconProps = ButtonCommonProps & {\n icon: IconComponent;\n children?: StringChildrenType;\n};\n\nexport type ButtonProps = ButtonWithoutIconProps | ButtonWithIconProps;\n\nconst _Button: React.ForwardRefRenderFunction<BladeElementRef, ButtonProps> = (\n // While adding any prop here, make sure to handle it in DropdownButton as well\n {\n children,\n icon,\n iconPosition = 'left',\n isDisabled = false,\n isFullWidth = false,\n isLoading = false,\n href,\n target,\n rel,\n onClick,\n size = 'medium',\n type = 'button',\n variant = 'primary',\n color = 'primary',\n accessibilityLabel,\n role,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onMouseDown,\n onPointerDown,\n onPointerEnter,\n onTouchStart,\n onTouchEnd,\n ...rest\n },\n ref,\n) => {\n return (\n <BaseButton\n {...(icon ? { icon, children } : { children })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n ref={ref}\n href={href}\n target={target}\n rel={rel}\n accessibilityProps={{\n label: accessibilityLabel,\n describedBy: rest['aria-describedby'],\n expanded: rest['aria-expanded'],\n hasPopup: rest['aria-haspopup'],\n role,\n }}\n iconPosition={iconPosition}\n color={color}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n onClick={onClick}\n size={size}\n type={type}\n variant={variant}\n isLoading={isLoading}\n testID={testID}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onMouseDown={onMouseDown}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchStart={onTouchStart}\n onTouchEnd={onTouchEnd}\n />\n );\n};\n\nconst Button = assignWithoutSideEffects(React.forwardRef(_Button), {\n displayName: 'Button',\n componentId: 'Button',\n});\n\nexport default Button;\n"],"names":["_Button","_ref","ref","children","icon","_ref$iconPosition","iconPosition","_ref$isDisabled","isDisabled","_ref$isFullWidth","isFullWidth","_ref$isLoading","isLoading","href","target","rel","onClick","_ref$size","size","_ref$type","type","_ref$variant","variant","_ref$color","color","accessibilityLabel","role","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onMouseDown","onPointerDown","onPointerEnter","onTouchStart","onTouchEnd","rest","_objectWithoutProperties","_excluded","_jsx","BaseButton","_objectSpread","getStyledProps","makeAnalyticsAttribute","accessibilityProps","label","describedBy","expanded","hasPopup","Button","assignWithoutSideEffects","React","forwardRef","displayName","componentId"],"mappings":"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"}
@@ -1,9 +1,14 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
1
3
  import React__default from 'react';
2
4
  import StyledIconButton from './StyledIconButton.web.js';
5
+ import '../../../utils/makeAnalyticsAttribute/index.js';
3
6
  import { jsx } from 'react/jsx-runtime';
7
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
4
8
 
5
- /* eslint-disable @typescript-eslint/no-explicit-any */
6
- /* eslint-disable react/display-name */
9
+ var _excluded = ["icon", "onClick", "size", "emphasis", "accessibilityLabel", "isDisabled", "onBlur", "onFocus", "onMouseLeave", "onMouseMove", "onPointerDown", "onPointerEnter", "onTouchEnd", "onTouchStart", "isHighlighted", "_tabIndex"];
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
12
  /**
8
13
  * Component for making clickable icons with transparent background.
9
14
  * For other cases please use `Button` component with `icon` prop.
@@ -26,8 +31,9 @@ var _IconButton = function _IconButton(_ref, ref) {
26
31
  onTouchEnd = _ref.onTouchEnd,
27
32
  onTouchStart = _ref.onTouchStart,
28
33
  isHighlighted = _ref.isHighlighted,
29
- _tabIndex = _ref._tabIndex;
30
- return /*#__PURE__*/jsx(StyledIconButton, {
34
+ _tabIndex = _ref._tabIndex,
35
+ rest = _objectWithoutProperties(_ref, _excluded);
36
+ return /*#__PURE__*/jsx(StyledIconButton, _objectSpread({
31
37
  ref: ref,
32
38
  onClick: onClick,
33
39
  emphasis: emphasis,
@@ -45,7 +51,7 @@ var _IconButton = function _IconButton(_ref, ref) {
45
51
  onPointerEnter: onPointerEnter,
46
52
  onTouchEnd: onTouchEnd,
47
53
  onTouchStart: onTouchStart
48
- });
54
+ }, makeAnalyticsAttribute(rest)));
49
55
  };
50
56
  var IconButton = /*#__PURE__*/React__default.forwardRef(_IconButton);
51
57
 
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & BladeCommonEvents &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * This changes the hover interaction to highlight icon more\n *\n * **Only available on web currently**\n */\n isHighlighted?: boolean;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n isHighlighted?: undefined;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n isHighlighted,\n _tabIndex,\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n isHighlighted={isHighlighted}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n />\n );\n};\n\nconst IconButton = React.forwardRef(_IconButton);\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","isHighlighted","_tabIndex","_jsx","StyledIconButton","tabIndex","IconButton","React","forwardRef"],"mappings":";;;;AAAA;AACA;AA6DA;AACA;AACA;AACA;AACA,IAAMA,WAA6E,GAAG,SAAhFA,WAA6EA,CAAAC,IAAA,EAmBjFC,GAAG,EACA;AAAA,EAAA,IAlBDC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAAC,SAAA,GAAAJ,IAAA,CACPK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAE,aAAA,GAAAN,IAAA,CACfO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,aAAA;IACpBE,kBAAkB,GAAAR,IAAA,CAAlBQ,kBAAkB;IAClBC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,MAAM,GAAAV,IAAA,CAANU,MAAM;IACNC,OAAO,GAAAX,IAAA,CAAPW,OAAO;IACPC,YAAY,GAAAZ,IAAA,CAAZY,YAAY;IACZC,WAAW,GAAAb,IAAA,CAAXa,WAAW;IACXC,aAAa,GAAAd,IAAA,CAAbc,aAAa;IACbC,cAAc,GAAAf,IAAA,CAAde,cAAc;IACdC,UAAU,GAAAhB,IAAA,CAAVgB,UAAU;IACVC,YAAY,GAAAjB,IAAA,CAAZiB,YAAY;IACZC,aAAa,GAAAlB,IAAA,CAAbkB,aAAa;IACbC,SAAS,GAAAnB,IAAA,CAATmB,SAAS,CAAA;EAIX,oBACEC,GAAA,CAACC,gBAAgB,EAAA;AACfpB,IAAAA,GAAG,EAAEA,GAAW;AAChBE,IAAAA,OAAO,EAAEA,OAAQ;AACjBI,IAAAA,QAAQ,EAAEA,QAAS;AACnBF,IAAAA,IAAI,EAAEA,IAAK;AACXH,IAAAA,IAAI,EAAEA,IAAK;AACXoB,IAAAA,QAAQ,EAAEH,SAAU;AACpBX,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,IAAAA,UAAU,EAAEA,UAAW;AACvBS,IAAAA,aAAa,EAAEA,aAAc;AAC7BR,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,aAAa,EAAEA,aAAc;AAC7BC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,YAAY,EAAEA,YAAAA;AAAa,GAC5B,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,IAAMM,UAAU,gBAAGC,cAAK,CAACC,UAAU,CAAC1B,WAAW;;;;"}
1
+ {"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & DataAnalyticsAttribute &\n BladeCommonEvents &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * This changes the hover interaction to highlight icon more\n *\n * **Only available on web currently**\n */\n isHighlighted?: boolean;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n isHighlighted?: undefined;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n isHighlighted,\n _tabIndex,\n ...rest\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n isHighlighted={isHighlighted}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n {...makeAnalyticsAttribute(rest)}\n />\n );\n};\n\nconst IconButton = React.forwardRef(_IconButton);\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","isHighlighted","_tabIndex","rest","_objectWithoutProperties","_excluded","_jsx","StyledIconButton","_objectSpread","tabIndex","makeAnalyticsAttribute","IconButton","React","forwardRef"],"mappings":";;;;;;;;;;;AAgEA;AACA;AACA;AACA;AACA,IAAMA,WAA6E,GAAG,SAAhFA,WAA6EA,CAAAC,IAAA,EAoBjFC,GAAG,EACA;AAAA,EAAA,IAnBDC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAAC,SAAA,GAAAJ,IAAA,CACPK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAE,aAAA,GAAAN,IAAA,CACfO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,aAAA;IACpBE,kBAAkB,GAAAR,IAAA,CAAlBQ,kBAAkB;IAClBC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,MAAM,GAAAV,IAAA,CAANU,MAAM;IACNC,OAAO,GAAAX,IAAA,CAAPW,OAAO;IACPC,YAAY,GAAAZ,IAAA,CAAZY,YAAY;IACZC,WAAW,GAAAb,IAAA,CAAXa,WAAW;IACXC,aAAa,GAAAd,IAAA,CAAbc,aAAa;IACbC,cAAc,GAAAf,IAAA,CAAde,cAAc;IACdC,UAAU,GAAAhB,IAAA,CAAVgB,UAAU;IACVC,YAAY,GAAAjB,IAAA,CAAZiB,YAAY;IACZC,aAAa,GAAAlB,IAAA,CAAbkB,aAAa;IACbC,SAAS,GAAAnB,IAAA,CAATmB,SAAS;AACNC,IAAAA,IAAI,GAAAC,wBAAA,CAAArB,IAAA,EAAAsB,SAAA,CAAA,CAAA;AAIT,EAAA,oBACEC,GAAA,CAACC,gBAAgB,EAAAC,aAAA,CAAA;AACfxB,IAAAA,GAAG,EAAEA,GAAW;AAChBE,IAAAA,OAAO,EAAEA,OAAQ;AACjBI,IAAAA,QAAQ,EAAEA,QAAS;AACnBF,IAAAA,IAAI,EAAEA,IAAK;AACXH,IAAAA,IAAI,EAAEA,IAAK;AACXwB,IAAAA,QAAQ,EAAEP,SAAU;AACpBX,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,IAAAA,UAAU,EAAEA,UAAW;AACvBS,IAAAA,aAAa,EAAEA,aAAc;AAC7BR,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,aAAa,EAAEA,aAAc;AAC7BC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,YAAY,EAAEA,YAAAA;AAAa,GAAA,EACvBU,sBAAsB,CAACP,IAAI,CAAC,CACjC,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,IAAMQ,UAAU,gBAAGC,cAAK,CAACC,UAAU,CAAC/B,WAAW;;;;"}
@@ -1,3 +1,4 @@
1
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
1
2
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
3
  import styled from 'styled-components';
3
4
  import React__default from 'react';
@@ -9,6 +10,7 @@ import '../../../utils/makeMotionTime/index.web.js';
9
10
  import '../../../utils/getFocusRingStyles/index.js';
10
11
  import '../../../utils/logger/index.js';
11
12
  import getIn from '../../../utils/lodashButBetter/get.js';
13
+ import '../../../utils/makeAnalyticsAttribute/index.js';
12
14
  import { jsx } from 'react/jsx-runtime';
13
15
  import { throwBladeError } from '../../../utils/logger/logger.js';
14
16
  import { makeSize } from '../../../utils/makeSize/makeSize.js';
@@ -18,7 +20,9 @@ import { getFocusRingStyles } from '../../../utils/getFocusRingStyles/getFocusRi
18
20
  import { makeAccessible } from '../../../utils/makeAccessible/makeAccessible.web.js';
19
21
  import { metaAttribute } from '../../../utils/metaAttribute/metaAttribute.web.js';
20
22
  import { MetaConstants } from '../../../utils/metaAttribute/metaConstants.js';
23
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
21
24
 
25
+ var _excluded = ["icon", "onClick", "size", "emphasis", "accessibilityLabel", "isDisabled", "isHighlighted", "testID", "onBlur", "onFocus", "onMouseLeave", "onMouseMove", "onPointerDown", "onPointerEnter", "onTouchEnd", "onTouchStart", "tabIndex"];
22
26
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
27
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
28
  var StyledButton = /*#__PURE__*/styled.button.withConfig({
@@ -86,8 +90,9 @@ var StyledIconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, re
86
90
  onPointerEnter = _ref.onPointerEnter,
87
91
  onTouchEnd = _ref.onTouchEnd,
88
92
  onTouchStart = _ref.onTouchStart,
89
- tabIndex = _ref.tabIndex;
90
- return /*#__PURE__*/jsx(StyledButton, _objectSpread(_objectSpread(_objectSpread({
93
+ tabIndex = _ref.tabIndex,
94
+ rest = _objectWithoutProperties(_ref, _excluded);
95
+ return /*#__PURE__*/jsx(StyledButton, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
91
96
  ref: ref,
92
97
  onClick: castWebType(onClick),
93
98
  emphasis: emphasis,
@@ -109,7 +114,7 @@ var StyledIconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, re
109
114
  })), metaAttribute({
110
115
  name: MetaConstants.IconButton,
111
116
  testID: testID
112
- })), {}, {
117
+ })), makeAnalyticsAttribute(rest)), {}, {
113
118
  children: /*#__PURE__*/jsx(Icon, {
114
119
  size: size,
115
120
  color: isDisabled ? 'interactive.icon.gray.disabled' : 'currentColor'
@@ -1 +1 @@
1
- {"version":3,"file":"StyledIconButton.web.js","sources":["../../../../../../../src/components/Button/IconButton/StyledIconButton.web.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport styled from 'styled-components';\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport type { StyledIconButtonProps } from './types';\nimport { highlightedButtonSizeMap, highlightedHoverColorMap } from './tokens';\nimport { castWebType, makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeMotionTime } from '~utils/makeMotionTime';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { throwBladeError } from '~utils/logger';\nimport getIn from '~utils/lodashButBetter/get';\n\ntype StyledButtonProps = {\n emphasis: SubtleOrIntense;\n $isHighlighted: StyledIconButtonProps['isHighlighted'];\n $size: StyledIconButtonProps['size'];\n};\n\nconst StyledButton = styled.button<StyledButtonProps>((props) => {\n const { theme, emphasis } = props;\n const motionToken = theme.motion;\n\n const emphasisColor = emphasis === 'intense' ? 'gray' : 'staticWhite';\n\n if (__DEV__) {\n if (props.$size === 'large' && props.$isHighlighted) {\n throwBladeError({\n moduleName: 'IconButton',\n message: 'size large is not allowed with isHighlighted true',\n });\n return null;\n }\n }\n\n return {\n border: 'none',\n cursor: props.disabled ? 'not-allowed' : 'pointer',\n padding: 0,\n height: props.$isHighlighted\n ? // We throw error for size large on top\n makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n width: props.$isHighlighted\n ? makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n borderRadius: props.$isHighlighted ? theme.border.radius.round : theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: props.disabled\n ? theme.colors.interactive.icon[emphasisColor].disabled\n : theme.colors.interactive.icon[emphasisColor].muted,\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(motionToken.duration.xquick)),\n transitionTimingFunction: motionToken.easing.standard.effective as string,\n\n '&:hover:not([disabled])': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n backgroundColor: props.$isHighlighted\n ? getIn(theme.colors, highlightedHoverColorMap[emphasis])\n : 'transparent',\n },\n\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n\n '&:active': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n };\n});\n\nconst StyledIconButton = React.forwardRef<HTMLButtonElement, StyledIconButtonProps>(\n (\n {\n icon: Icon,\n onClick,\n size,\n emphasis,\n accessibilityLabel,\n isDisabled,\n isHighlighted,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n tabIndex,\n },\n ref,\n ): ReactElement => (\n <StyledButton\n ref={ref}\n onClick={castWebType(onClick)}\n emphasis={emphasis}\n type=\"button\"\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n disabled={isDisabled}\n $isHighlighted={isHighlighted}\n $size={size}\n tabIndex={tabIndex}\n {...makeAccessible({ label: accessibilityLabel })}\n {...metaAttribute({ name: MetaConstants.IconButton, testID })}\n >\n <Icon size={size} color={isDisabled ? 'interactive.icon.gray.disabled' : 'currentColor'} />\n </StyledButton>\n ),\n);\n\nexport default StyledIconButton;\n"],"names":["StyledButton","styled","button","withConfig","displayName","componentId","props","theme","emphasis","motionToken","motion","emphasisColor","$size","$isHighlighted","throwBladeError","moduleName","message","border","cursor","disabled","padding","height","makeSize","highlightedButtonSizeMap","undefined","width","borderRadius","radius","round","small","background","display","alignItems","justifyContent","color","colors","interactive","icon","muted","transitionProperty","transitionDuration","castWebType","makeMotionTime","duration","xquick","transitionTimingFunction","easing","standard","effective","subtle","backgroundColor","getIn","highlightedHoverColorMap","_objectSpread","getFocusRingStyles","StyledIconButton","React","forwardRef","_ref","ref","Icon","onClick","size","accessibilityLabel","isDisabled","isHighlighted","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","tabIndex","_jsx","type","makeAccessible","label","metaAttribute","name","MetaConstants","IconButton","children"],"mappings":"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"}
1
+ {"version":3,"file":"StyledIconButton.web.js","sources":["../../../../../../../src/components/Button/IconButton/StyledIconButton.web.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport styled from 'styled-components';\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport type { StyledIconButtonProps } from './types';\nimport { highlightedButtonSizeMap, highlightedHoverColorMap } from './tokens';\nimport { castWebType, makeSize } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { makeMotionTime } from '~utils/makeMotionTime';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport { throwBladeError } from '~utils/logger';\nimport getIn from '~utils/lodashButBetter/get';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype StyledButtonProps = {\n emphasis: SubtleOrIntense;\n $isHighlighted: StyledIconButtonProps['isHighlighted'];\n $size: StyledIconButtonProps['size'];\n};\n\nconst StyledButton = styled.button<StyledButtonProps>((props) => {\n const { theme, emphasis } = props;\n const motionToken = theme.motion;\n\n const emphasisColor = emphasis === 'intense' ? 'gray' : 'staticWhite';\n\n if (__DEV__) {\n if (props.$size === 'large' && props.$isHighlighted) {\n throwBladeError({\n moduleName: 'IconButton',\n message: 'size large is not allowed with isHighlighted true',\n });\n return null;\n }\n }\n\n return {\n border: 'none',\n cursor: props.disabled ? 'not-allowed' : 'pointer',\n padding: 0,\n height: props.$isHighlighted\n ? // We throw error for size large on top\n makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n width: props.$isHighlighted\n ? makeSize(highlightedButtonSizeMap[props.$size as 'small' | 'medium'])\n : undefined,\n borderRadius: props.$isHighlighted ? theme.border.radius.round : theme.border.radius.small,\n background: 'transparent',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: props.disabled\n ? theme.colors.interactive.icon[emphasisColor].disabled\n : theme.colors.interactive.icon[emphasisColor].muted,\n transitionProperty: 'color, box-shadow',\n transitionDuration: castWebType(makeMotionTime(motionToken.duration.xquick)),\n transitionTimingFunction: motionToken.easing.standard.effective as string,\n\n '&:hover:not([disabled])': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n backgroundColor: props.$isHighlighted\n ? getIn(theme.colors, highlightedHoverColorMap[emphasis])\n : 'transparent',\n },\n\n '&:focus-visible': {\n ...getFocusRingStyles({ theme }),\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n\n '&:active': {\n color: theme.colors.interactive.icon[emphasisColor].subtle,\n },\n };\n});\n\nconst StyledIconButton = React.forwardRef<HTMLButtonElement, StyledIconButtonProps>(\n (\n {\n icon: Icon,\n onClick,\n size,\n emphasis,\n accessibilityLabel,\n isDisabled,\n isHighlighted,\n testID,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n tabIndex,\n ...rest\n },\n ref,\n ): ReactElement => (\n <StyledButton\n ref={ref}\n onClick={castWebType(onClick)}\n emphasis={emphasis}\n type=\"button\"\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n disabled={isDisabled}\n $isHighlighted={isHighlighted}\n $size={size}\n tabIndex={tabIndex}\n {...makeAccessible({ label: accessibilityLabel })}\n {...metaAttribute({ name: MetaConstants.IconButton, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <Icon size={size} color={isDisabled ? 'interactive.icon.gray.disabled' : 'currentColor'} />\n </StyledButton>\n ),\n);\n\nexport default StyledIconButton;\n"],"names":["StyledButton","styled","button","withConfig","displayName","componentId","props","theme","emphasis","motionToken","motion","emphasisColor","$size","$isHighlighted","throwBladeError","moduleName","message","border","cursor","disabled","padding","height","makeSize","highlightedButtonSizeMap","undefined","width","borderRadius","radius","round","small","background","display","alignItems","justifyContent","color","colors","interactive","icon","muted","transitionProperty","transitionDuration","castWebType","makeMotionTime","duration","xquick","transitionTimingFunction","easing","standard","effective","subtle","backgroundColor","getIn","highlightedHoverColorMap","_objectSpread","getFocusRingStyles","StyledIconButton","React","forwardRef","_ref","ref","Icon","onClick","size","accessibilityLabel","isDisabled","isHighlighted","testID","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","tabIndex","rest","_objectWithoutProperties","_excluded","_jsx","type","makeAccessible","label","metaAttribute","name","MetaConstants","IconButton","makeAnalyticsAttribute","children"],"mappings":"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"}
@@ -13,12 +13,14 @@ import getIn from '../../utils/lodashButBetter/get.js';
13
13
  import { getBackgroundColorToken } from '../Button/BaseButton/BaseButton.js';
14
14
  import '../../utils/logger/index.js';
15
15
  import '../../utils/isValidAllowedChildren/index.js';
16
+ import '../../utils/makeAnalyticsAttribute/index.js';
16
17
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
17
18
  import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
18
19
  import { makeBorderSize } from '../../utils/makeBorderSize/makeBorderSize.js';
19
20
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
20
21
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
21
22
  import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
23
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
22
24
  import { isValidAllowedChildren } from '../../utils/isValidAllowedChildren/isValidAllowedChildren.js';
23
25
  import { throwBladeError } from '../../utils/logger/logger.js';
24
26
  import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
@@ -76,7 +78,7 @@ var _ButtonGroup = function _ButtonGroup(_ref3) {
76
78
  _ref3$isFullWidth = _ref3.isFullWidth,
77
79
  isFullWidth = _ref3$isFullWidth === void 0 ? false : _ref3$isFullWidth,
78
80
  testID = _ref3.testID,
79
- styledProps = _objectWithoutProperties(_ref3, _excluded);
81
+ rest = _objectWithoutProperties(_ref3, _excluded);
80
82
  var contextValue = {
81
83
  isDisabled: isDisabled,
82
84
  size: size,
@@ -86,7 +88,7 @@ var _ButtonGroup = function _ButtonGroup(_ref3) {
86
88
  };
87
89
  return /*#__PURE__*/jsx(ButtonGroupProvider, {
88
90
  value: contextValue,
89
- children: /*#__PURE__*/jsx(StyledButtonGroup, _objectSpread(_objectSpread(_objectSpread({
91
+ children: /*#__PURE__*/jsx(StyledButtonGroup, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
90
92
  color: color,
91
93
  variant: variant,
92
94
  isDisabled: isDisabled,
@@ -94,7 +96,7 @@ var _ButtonGroup = function _ButtonGroup(_ref3) {
94
96
  }, metaAttribute({
95
97
  name: MetaConstants.ButtonGroup,
96
98
  testID: testID
97
- })), getStyledProps(styledProps)), {}, {
99
+ })), getStyledProps(rest)), makeAnalyticsAttribute(rest)), {}, {
98
100
  role: "group",
99
101
  children: React__default.Children.map(children, function (child, index) {
100
102
  if (false) {
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.web.js","sources":["../../../../../../src/components/ButtonGroup/ButtonGroup.web.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\nimport styled from 'styled-components';\nimport type { ButtonGroupProps } from './types';\nimport { StyledButtonGroup } from './StyledButtonGroup';\nimport { ButtonGroupProvider } from './ButtonGroupContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeBorderSize } from '~utils';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\nimport getIn from '~utils/lodashButBetter/get';\nimport { getBackgroundColorToken } from '~components/Button/BaseButton/BaseButton';\nimport type { Theme } from '~components/BladeProvider';\nimport { throwBladeError } from '~utils/logger';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\n\nconst getDividerColorToken = ({\n color,\n variant,\n isDisabled,\n}: Pick<ButtonGroupProps, 'color' | 'isDisabled' | 'variant'>): DotNotationToken<\n Theme['colors']\n> => {\n if (variant === 'primary') {\n return 'surface.border.gray.subtle';\n }\n\n if (variant === 'secondary') {\n return getBackgroundColorToken({\n property: 'border',\n variant,\n color,\n state: isDisabled ? 'disabled' : 'default',\n });\n }\n\n return 'surface.border.gray.muted';\n};\n\nconst StyledDivider = styled(BaseBox)<Pick<ButtonGroupProps, 'color' | 'isDisabled' | 'variant'>>(\n ({ theme, color, variant, isDisabled }) => {\n return {\n borderWidth: 0,\n borderLeftStyle: 'solid',\n borderLeftWidth: makeBorderSize(theme.border.width.thin),\n alignSelf: 'stretch',\n color: getIn(theme.colors, getDividerColorToken({ color, variant, isDisabled })),\n };\n },\n);\n\nconst _ButtonGroup = ({\n children,\n isDisabled = false,\n size = 'medium',\n color = 'primary',\n variant = 'primary',\n isFullWidth = false,\n testID,\n ...styledProps\n}: ButtonGroupProps): React.ReactElement => {\n const contextValue = {\n isDisabled,\n size,\n color,\n variant,\n isFullWidth,\n };\n\n return (\n <ButtonGroupProvider value={contextValue}>\n <StyledButtonGroup\n color={color}\n variant={variant}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n {...metaAttribute({ name: MetaConstants.ButtonGroup, testID })}\n {...getStyledProps(styledProps)}\n role=\"group\"\n >\n {React.Children.map(children, (child, index) => {\n if (__DEV__) {\n // throw error if child is not a button or dropdown with button trigger\n /* eslint-disable no-restricted-properties */\n if (\n !isValidAllowedChildren(child, 'Button') &&\n !(\n isValidAllowedChildren(child, 'Dropdown') &&\n (child as ReactElement).props.children.some((c: ReactElement) =>\n isValidAllowedChildren(c, 'DropdownButton'),\n )\n )\n ) {\n throwBladeError({\n moduleName: 'ButtonGroup',\n message: `Only \"Button\" or \"Dropdown\" component with Button trigger are allowed as children.`,\n });\n }\n /* eslint-enable no-restricted-properties */\n }\n\n return (\n <>\n {child}\n {React.Children.count(children) - 1 !== index && (\n <StyledDivider variant={variant} color={color} isDisabled={isDisabled} />\n )}\n </>\n );\n })}\n </StyledButtonGroup>\n </ButtonGroupProvider>\n );\n};\n\n/**\n * ### ButtonGroup Component\n * \n * The ButtonGroup component is used to group related buttons together.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n const App = () => {\n return (\n <ButtonGroup>\n <Button icon={RefreshIcon}>Sync</Button>\n <Button icon={ShareIcon}>Share</Button>\n <Button icon={DownloadIcon}>Download</Button>\n </ButtonGroup>\n );\n }\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-buttongroup FileUpload Documentation}\n * \n */\nconst ButtonGroup = assignWithoutSideEffects(_ButtonGroup, {\n displayName: 'ButtonGroup',\n componentId: 'ButtonGroup',\n});\n\nexport { ButtonGroup };\nexport type { ButtonGroupProps };\n"],"names":["getDividerColorToken","_ref","color","variant","isDisabled","getBackgroundColorToken","property","state","StyledDivider","styled","BaseBox","withConfig","displayName","componentId","_ref2","theme","borderWidth","borderLeftStyle","borderLeftWidth","makeBorderSize","border","width","thin","alignSelf","getIn","colors","_ButtonGroup","_ref3","children","_ref3$isDisabled","_ref3$size","size","_ref3$color","_ref3$variant","_ref3$isFullWidth","isFullWidth","testID","styledProps","_objectWithoutProperties","_excluded","contextValue","_jsx","ButtonGroupProvider","value","StyledButtonGroup","_objectSpread","metaAttribute","name","MetaConstants","ButtonGroup","getStyledProps","role","React","Children","map","child","index","isValidAllowedChildren","props","some","c","throwBladeError","moduleName","message","_jsxs","_Fragment","count","assignWithoutSideEffects"],"mappings":"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"}
1
+ {"version":3,"file":"ButtonGroup.web.js","sources":["../../../../../../src/components/ButtonGroup/ButtonGroup.web.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\nimport styled from 'styled-components';\nimport type { ButtonGroupProps } from './types';\nimport { StyledButtonGroup } from './StyledButtonGroup';\nimport { ButtonGroupProvider } from './ButtonGroupContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeBorderSize } from '~utils';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\nimport getIn from '~utils/lodashButBetter/get';\nimport { getBackgroundColorToken } from '~components/Button/BaseButton/BaseButton';\nimport type { Theme } from '~components/BladeProvider';\nimport { throwBladeError } from '~utils/logger';\nimport { isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst getDividerColorToken = ({\n color,\n variant,\n isDisabled,\n}: Pick<ButtonGroupProps, 'color' | 'isDisabled' | 'variant'>): DotNotationToken<\n Theme['colors']\n> => {\n if (variant === 'primary') {\n return 'surface.border.gray.subtle';\n }\n\n if (variant === 'secondary') {\n return getBackgroundColorToken({\n property: 'border',\n variant,\n color,\n state: isDisabled ? 'disabled' : 'default',\n });\n }\n\n return 'surface.border.gray.muted';\n};\n\nconst StyledDivider = styled(BaseBox)<Pick<ButtonGroupProps, 'color' | 'isDisabled' | 'variant'>>(\n ({ theme, color, variant, isDisabled }) => {\n return {\n borderWidth: 0,\n borderLeftStyle: 'solid',\n borderLeftWidth: makeBorderSize(theme.border.width.thin),\n alignSelf: 'stretch',\n color: getIn(theme.colors, getDividerColorToken({ color, variant, isDisabled })),\n };\n },\n);\n\nconst _ButtonGroup = ({\n children,\n isDisabled = false,\n size = 'medium',\n color = 'primary',\n variant = 'primary',\n isFullWidth = false,\n testID,\n ...rest\n}: ButtonGroupProps): React.ReactElement => {\n const contextValue = {\n isDisabled,\n size,\n color,\n variant,\n isFullWidth,\n };\n\n return (\n <ButtonGroupProvider value={contextValue}>\n <StyledButtonGroup\n color={color}\n variant={variant}\n isDisabled={isDisabled}\n isFullWidth={isFullWidth}\n {...metaAttribute({ name: MetaConstants.ButtonGroup, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n role=\"group\"\n >\n {React.Children.map(children, (child, index) => {\n if (__DEV__) {\n // throw error if child is not a button or dropdown with button trigger\n /* eslint-disable no-restricted-properties */\n if (\n !isValidAllowedChildren(child, 'Button') &&\n !(\n isValidAllowedChildren(child, 'Dropdown') &&\n (child as ReactElement).props.children.some((c: ReactElement) =>\n isValidAllowedChildren(c, 'DropdownButton'),\n )\n )\n ) {\n throwBladeError({\n moduleName: 'ButtonGroup',\n message: `Only \"Button\" or \"Dropdown\" component with Button trigger are allowed as children.`,\n });\n }\n /* eslint-enable no-restricted-properties */\n }\n\n return (\n <>\n {child}\n {React.Children.count(children) - 1 !== index && (\n <StyledDivider variant={variant} color={color} isDisabled={isDisabled} />\n )}\n </>\n );\n })}\n </StyledButtonGroup>\n </ButtonGroupProvider>\n );\n};\n\n/**\n * ### ButtonGroup Component\n * \n * The ButtonGroup component is used to group related buttons together.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n const App = () => {\n return (\n <ButtonGroup>\n <Button icon={RefreshIcon}>Sync</Button>\n <Button icon={ShareIcon}>Share</Button>\n <Button icon={DownloadIcon}>Download</Button>\n </ButtonGroup>\n );\n }\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-buttongroup FileUpload Documentation}\n * \n */\nconst ButtonGroup = assignWithoutSideEffects(_ButtonGroup, {\n displayName: 'ButtonGroup',\n componentId: 'ButtonGroup',\n});\n\nexport { ButtonGroup };\nexport type { ButtonGroupProps };\n"],"names":["getDividerColorToken","_ref","color","variant","isDisabled","getBackgroundColorToken","property","state","StyledDivider","styled","BaseBox","withConfig","displayName","componentId","_ref2","theme","borderWidth","borderLeftStyle","borderLeftWidth","makeBorderSize","border","width","thin","alignSelf","getIn","colors","_ButtonGroup","_ref3","children","_ref3$isDisabled","_ref3$size","size","_ref3$color","_ref3$variant","_ref3$isFullWidth","isFullWidth","testID","rest","_objectWithoutProperties","_excluded","contextValue","_jsx","ButtonGroupProvider","value","StyledButtonGroup","_objectSpread","metaAttribute","name","MetaConstants","ButtonGroup","getStyledProps","makeAnalyticsAttribute","role","React","Children","map","child","index","isValidAllowedChildren","props","some","c","throwBladeError","moduleName","message","_jsxs","_Fragment","count","assignWithoutSideEffects"],"mappings":"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"}
@@ -14,16 +14,19 @@ import '../../utils/assignWithoutSideEffects/index.js';
14
14
  import '../../utils/makeAccessible/index.js';
15
15
  import { useVerifyAllowedChildren } from '../../utils/useVerifyAllowedChildren/useVerifyAllowedChildren.js';
16
16
  import '../../utils/index.js';
17
+ import '../../utils/makeAnalyticsAttribute/index.js';
17
18
  import { jsx, jsxs } from 'react/jsx-runtime';
18
19
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
19
20
  import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
20
21
  import { isReactNative } from '../../utils/platform/isReactNative.js';
21
22
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
22
23
  import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
24
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
23
25
  import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
24
26
  import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
25
27
 
26
- var _excluded = ["children", "backgroundColor", "borderRadius", "elevation", "testID", "padding", "width", "height", "minHeight", "minWidth", "onClick", "isSelected", "accessibilityLabel", "shouldScaleOnHover", "onHover", "href", "target", "rel", "as"];
28
+ var _excluded = ["children", "backgroundColor", "borderRadius", "elevation", "testID", "padding", "width", "height", "minHeight", "minWidth", "onClick", "isSelected", "accessibilityLabel", "shouldScaleOnHover", "onHover", "href", "target", "rel", "as"],
29
+ _excluded2 = ["height", "children", "testID"];
27
30
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28
31
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
29
32
  var ComponentIds = {
@@ -68,7 +71,7 @@ var Card = function Card(_ref) {
68
71
  target = _ref.target,
69
72
  rel = _ref.rel,
70
73
  as = _ref.as,
71
- styledProps = _objectWithoutProperties(_ref, _excluded);
74
+ rest = _objectWithoutProperties(_ref, _excluded);
72
75
  var _React$useState = React__default.useState(false),
73
76
  _React$useState2 = _slicedToArray(_React$useState, 2),
74
77
  isFocused = _React$useState2[0],
@@ -93,7 +96,7 @@ var Card = function Card(_ref) {
93
96
  });
94
97
  var defaultRel = target && target === '_blank' ? 'noreferrer noopener' : undefined;
95
98
  return /*#__PURE__*/jsx(CardProvider, {
96
- children: /*#__PURE__*/jsx(CardRoot, _objectSpread(_objectSpread(_objectSpread({
99
+ children: /*#__PURE__*/jsx(CardRoot, _objectSpread(_objectSpread(_objectSpread(_objectSpread({
97
100
  as: as,
98
101
  display: 'block',
99
102
  borderRadius: "medium",
@@ -113,7 +116,7 @@ var Card = function Card(_ref) {
113
116
  }, metaAttribute({
114
117
  name: MetaConstants.Card,
115
118
  testID: testID
116
- })), getStyledProps(styledProps)), {}, {
119
+ })), getStyledProps(rest)), makeAnalyticsAttribute(rest)), {}, {
117
120
  children: /*#__PURE__*/jsxs(CardSurface, {
118
121
  height: height,
119
122
  minHeight: minHeight,
@@ -138,12 +141,13 @@ var Card = function Card(_ref) {
138
141
  var _CardBody = function _CardBody(_ref2) {
139
142
  var height = _ref2.height,
140
143
  children = _ref2.children,
141
- testID = _ref2.testID;
144
+ testID = _ref2.testID,
145
+ rest = _objectWithoutProperties(_ref2, _excluded2);
142
146
  useVerifyInsideCard('CardBody');
143
- return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread({}, metaAttribute({
147
+ return /*#__PURE__*/jsx(BaseBox, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
144
148
  name: MetaConstants.CardBody,
145
149
  testID: testID
146
- })), {}, {
150
+ })), makeAnalyticsAttribute(rest)), {}, {
147
151
  height: height,
148
152
  children: children
149
153
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","sources":["../../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { CardSurface } from './CardSurface';\nimport { CardProvider, useVerifyInsideCard } from './CardContext';\nimport { LinkOverlay } from './LinkOverlay';\nimport { CardRoot } from './CardRoot';\nimport type { CardSpacingValueType, LinkOverlayProps } from './types';\nimport { CARD_LINK_OVERLAY_ID } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type { TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { Elevation } from '~tokens/global';\nimport type { BoxProps } from '~components/Box';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { Platform } from '~utils';\nimport { isReactNative } from '~utils';\nimport type { Theme } from '~components/BladeProvider';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\n\nexport const ComponentIds = {\n CardHeader: 'CardHeader',\n CardHeaderTrailing: 'CardHeaderTrailing',\n CardHeaderLeading: 'CardHeaderLeading',\n CardFooter: 'CardFooter',\n CardFooterTrailing: 'CardFooterTrailing',\n CardFooterLeading: 'CardFooterLeading',\n CardBody: 'CardBody',\n CardHeaderIcon: 'CardHeaderIcon',\n CardHeaderCounter: 'CardHeaderCounter',\n CardHeaderBadge: 'CardHeaderBadge',\n CardHeaderAmount: 'CardHeaderAmount',\n CardHeaderText: 'CardHeaderText',\n CardHeaderLink: 'CardHeaderLink',\n CardHeaderIconButton: 'CardHeaderIconButton',\n};\n\ntype CardSurfaceBackgroundColors = `surface.background.gray.${DotNotationToken<\n Theme['colors']['surface']['background']['gray']\n>}`;\n\nexport type CardProps = {\n /**\n * Card contents\n */\n children: React.ReactNode;\n /**\n * Sets the background color of the Card\n *\n * @default `surface.background.gray.intense`\n */\n backgroundColor?: CardSurfaceBackgroundColors;\n /**\n * Sets the border radius of the Card\n *\n * @default `medium`\n */\n borderRadius?: Extract<BoxProps['borderRadius'], 'medium' | 'large' | 'xlarge'>;\n /**\n * Sets the elevation for Cards\n *\n * eg: `theme.elevation.midRaised`\n *\n * @default `theme.elevation.lowRaised`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-elevation--docs\n */\n elevation?: keyof Elevation;\n /**\n * Sets the padding equally on all sides. Only few `spacing` tokens are allowed deliberately\n * @default `spacing.7`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-spacing--docs\n */\n padding?: CardSpacingValueType;\n /**\n * Sets the width of the card\n */\n width?: BoxProps['width'];\n /**\n * Sets the height of the card\n */\n height?: BoxProps['height'];\n /**\n * Sets minimum height of the card\n */\n minHeight?: BoxProps['minHeight'];\n /**\n * Sets minimum width of the card\n */\n minWidth?: BoxProps['minWidth'];\n /**\n * If `true`, the card will be in selected state\n * Card will have a primary color border around it.\n *\n * @default false\n */\n\n isSelected?: boolean;\n /**\n * Makes the Card linkable by setting the `href` prop\n *\n * @default undefined\n */\n href?: string;\n /**\n * Sets the `target` attribute for the linkable card\n */\n target?: string;\n /**\n * Sets the `rel` attribute for the linkable card\n */\n rel?: string;\n /**\n * Sets the accessibility label for the card\n * This is useful when the card has an `href` or `onClick` prop\n * Setting this will announce the label when the card is focused\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the card will scale up on hover\n *\n * On mobile devices it will scale down on press\n *\n * @default false\n */\n shouldScaleOnHover?: boolean;\n /**\n * Callback triggered when the card is hovered\n */\n onHover?: () => void;\n /**\n * Callback triggered when the card is clicked\n */\n onClick?: (\n event: Platform.Select<{\n web: React.MouseEvent;\n native: GestureResponderEvent;\n }>,\n ) => void;\n /**\n * Sets the HTML element for the Card\n *\n * When `as` is set to `label`, the card will be rendered as a label element\n * This can be used to create a custom checkbox or radio button using the card\n *\n * @default undefined\n */\n as?: 'label';\n} & TestID &\n StyledPropsBlade;\n\nconst Card = ({\n children,\n backgroundColor = 'surface.background.gray.intense',\n borderRadius = 'medium',\n elevation = 'lowRaised',\n testID,\n padding = 'spacing.7',\n width,\n height,\n minHeight,\n minWidth,\n onClick,\n isSelected = false,\n accessibilityLabel,\n shouldScaleOnHover = false,\n onHover,\n href,\n target,\n rel,\n as,\n ...styledProps\n}: CardProps): React.ReactElement => {\n const [isFocused, setIsFocused] = React.useState(false);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Card',\n allowedComponents: [ComponentIds.CardHeader, ComponentIds.CardBody, ComponentIds.CardFooter],\n });\n\n const linkOverlayProps: LinkOverlayProps = {\n ...metaAttribute({ name: CARD_LINK_OVERLAY_ID }),\n ...makeAccessible({ label: accessibilityLabel, pressed: isSelected }),\n onFocus: () => {\n setIsFocused(true);\n },\n onBlur: () => {\n setIsFocused(false);\n },\n };\n const defaultRel = target && target === '_blank' ? 'noreferrer noopener' : undefined;\n\n return (\n <CardProvider>\n <CardRoot\n as={as}\n display={'block' as never}\n borderRadius=\"medium\"\n onMouseEnter={onHover as never}\n shouldScaleOnHover={shouldScaleOnHover}\n isSelected={isSelected}\n isFocused={isFocused}\n // on react native we need to pass onClick to root, because we don't need the LinkOverlay in RN\n onClick={isReactNative() ? onClick : undefined}\n width={width}\n height={height}\n minHeight={minHeight}\n minWidth={minWidth}\n href={href}\n accessibilityLabel={accessibilityLabel}\n {...metaAttribute({ name: MetaConstants.Card, testID })}\n {...getStyledProps(styledProps)}\n >\n <CardSurface\n height={height}\n minHeight={minHeight}\n padding={padding}\n borderRadius={borderRadius}\n elevation={elevation}\n textAlign={'left' as never}\n backgroundColor={backgroundColor}\n >\n {href ? (\n <LinkOverlay\n onClick={onClick}\n href={href}\n target={target}\n rel={rel ?? defaultRel}\n {...linkOverlayProps}\n />\n ) : null}\n {!href && onClick ? (\n <LinkOverlay as=\"button\" onClick={onClick} {...linkOverlayProps} />\n ) : null}\n {children}\n </CardSurface>\n </CardRoot>\n </CardProvider>\n );\n};\n\ntype CardBodyProps = {\n children: React.ReactNode;\n height?: BoxProps['height'];\n} & TestID;\n\nconst _CardBody = ({ height, children, testID }: CardBodyProps): React.ReactElement => {\n useVerifyInsideCard('CardBody');\n\n return (\n <BaseBox {...metaAttribute({ name: MetaConstants.CardBody, testID })} height={height}>\n {children}\n </BaseBox>\n );\n};\n\nconst CardBody = assignWithoutSideEffects(_CardBody, { componentId: ComponentIds.CardBody });\n\nexport { Card, CardBody };\n"],"names":["ComponentIds","CardHeader","CardHeaderTrailing","CardHeaderLeading","CardFooter","CardFooterTrailing","CardFooterLeading","CardBody","CardHeaderIcon","CardHeaderCounter","CardHeaderBadge","CardHeaderAmount","CardHeaderText","CardHeaderLink","CardHeaderIconButton","Card","_ref","children","_ref$backgroundColor","backgroundColor","_ref$borderRadius","borderRadius","_ref$elevation","elevation","testID","_ref$padding","padding","width","height","minHeight","minWidth","onClick","_ref$isSelected","isSelected","accessibilityLabel","_ref$shouldScaleOnHov","shouldScaleOnHover","onHover","href","target","rel","as","styledProps","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isFocused","setIsFocused","useVerifyAllowedChildren","componentName","allowedComponents","linkOverlayProps","_objectSpread","metaAttribute","name","CARD_LINK_OVERLAY_ID","makeAccessible","label","pressed","onFocus","onBlur","defaultRel","undefined","_jsx","CardProvider","CardRoot","display","onMouseEnter","isReactNative","MetaConstants","getStyledProps","_jsxs","CardSurface","textAlign","LinkOverlay","_CardBody","_ref2","useVerifyInsideCard","BaseBox","assignWithoutSideEffects","componentId"],"mappings":"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"}
1
+ {"version":3,"file":"Card.js","sources":["../../../../../../src/components/Card/Card.tsx"],"sourcesContent":["import React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport { CardSurface } from './CardSurface';\nimport { CardProvider, useVerifyInsideCard } from './CardContext';\nimport { LinkOverlay } from './LinkOverlay';\nimport { CardRoot } from './CardRoot';\nimport type { CardSpacingValueType, LinkOverlayProps } from './types';\nimport { CARD_LINK_OVERLAY_ID } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { Elevation } from '~tokens/global';\nimport type { BoxProps } from '~components/Box';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { Platform } from '~utils';\nimport { isReactNative } from '~utils';\nimport type { Theme } from '~components/BladeProvider';\nimport type { DotNotationToken } from '~utils/lodashButBetter/get';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nexport const ComponentIds = {\n CardHeader: 'CardHeader',\n CardHeaderTrailing: 'CardHeaderTrailing',\n CardHeaderLeading: 'CardHeaderLeading',\n CardFooter: 'CardFooter',\n CardFooterTrailing: 'CardFooterTrailing',\n CardFooterLeading: 'CardFooterLeading',\n CardBody: 'CardBody',\n CardHeaderIcon: 'CardHeaderIcon',\n CardHeaderCounter: 'CardHeaderCounter',\n CardHeaderBadge: 'CardHeaderBadge',\n CardHeaderAmount: 'CardHeaderAmount',\n CardHeaderText: 'CardHeaderText',\n CardHeaderLink: 'CardHeaderLink',\n CardHeaderIconButton: 'CardHeaderIconButton',\n};\n\ntype CardSurfaceBackgroundColors = `surface.background.gray.${DotNotationToken<\n Theme['colors']['surface']['background']['gray']\n>}`;\n\nexport type CardProps = {\n /**\n * Card contents\n */\n children: React.ReactNode;\n /**\n * Sets the background color of the Card\n *\n * @default `surface.background.gray.intense`\n */\n backgroundColor?: CardSurfaceBackgroundColors;\n /**\n * Sets the border radius of the Card\n *\n * @default `medium`\n */\n borderRadius?: Extract<BoxProps['borderRadius'], 'medium' | 'large' | 'xlarge'>;\n /**\n * Sets the elevation for Cards\n *\n * eg: `theme.elevation.midRaised`\n *\n * @default `theme.elevation.lowRaised`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-elevation--docs\n */\n elevation?: keyof Elevation;\n /**\n * Sets the padding equally on all sides. Only few `spacing` tokens are allowed deliberately\n * @default `spacing.7`\n *\n * **Links:**\n * - Docs: https://blade.razorpay.com/?path=/docs/tokens-spacing--docs\n */\n padding?: CardSpacingValueType;\n /**\n * Sets the width of the card\n */\n width?: BoxProps['width'];\n /**\n * Sets the height of the card\n */\n height?: BoxProps['height'];\n /**\n * Sets minimum height of the card\n */\n minHeight?: BoxProps['minHeight'];\n /**\n * Sets minimum width of the card\n */\n minWidth?: BoxProps['minWidth'];\n /**\n * If `true`, the card will be in selected state\n * Card will have a primary color border around it.\n *\n * @default false\n */\n\n isSelected?: boolean;\n /**\n * Makes the Card linkable by setting the `href` prop\n *\n * @default undefined\n */\n href?: string;\n /**\n * Sets the `target` attribute for the linkable card\n */\n target?: string;\n /**\n * Sets the `rel` attribute for the linkable card\n */\n rel?: string;\n /**\n * Sets the accessibility label for the card\n * This is useful when the card has an `href` or `onClick` prop\n * Setting this will announce the label when the card is focused\n */\n accessibilityLabel?: string;\n /**\n * If `true`, the card will scale up on hover\n *\n * On mobile devices it will scale down on press\n *\n * @default false\n */\n shouldScaleOnHover?: boolean;\n /**\n * Callback triggered when the card is hovered\n */\n onHover?: () => void;\n /**\n * Callback triggered when the card is clicked\n */\n onClick?: (\n event: Platform.Select<{\n web: React.MouseEvent;\n native: GestureResponderEvent;\n }>,\n ) => void;\n /**\n * Sets the HTML element for the Card\n *\n * When `as` is set to `label`, the card will be rendered as a label element\n * This can be used to create a custom checkbox or radio button using the card\n *\n * @default undefined\n */\n as?: 'label';\n} & TestID &\n DataAnalyticsAttribute &\n StyledPropsBlade;\n\nconst Card = ({\n children,\n backgroundColor = 'surface.background.gray.intense',\n borderRadius = 'medium',\n elevation = 'lowRaised',\n testID,\n padding = 'spacing.7',\n width,\n height,\n minHeight,\n minWidth,\n onClick,\n isSelected = false,\n accessibilityLabel,\n shouldScaleOnHover = false,\n onHover,\n href,\n target,\n rel,\n as,\n ...rest\n}: CardProps): React.ReactElement => {\n const [isFocused, setIsFocused] = React.useState(false);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Card',\n allowedComponents: [ComponentIds.CardHeader, ComponentIds.CardBody, ComponentIds.CardFooter],\n });\n\n const linkOverlayProps: LinkOverlayProps = {\n ...metaAttribute({ name: CARD_LINK_OVERLAY_ID }),\n ...makeAccessible({ label: accessibilityLabel, pressed: isSelected }),\n onFocus: () => {\n setIsFocused(true);\n },\n onBlur: () => {\n setIsFocused(false);\n },\n };\n const defaultRel = target && target === '_blank' ? 'noreferrer noopener' : undefined;\n\n return (\n <CardProvider>\n <CardRoot\n as={as}\n display={'block' as never}\n borderRadius=\"medium\"\n onMouseEnter={onHover as never}\n shouldScaleOnHover={shouldScaleOnHover}\n isSelected={isSelected}\n isFocused={isFocused}\n // on react native we need to pass onClick to root, because we don't need the LinkOverlay in RN\n onClick={isReactNative() ? onClick : undefined}\n width={width}\n height={height}\n minHeight={minHeight}\n minWidth={minWidth}\n href={href}\n accessibilityLabel={accessibilityLabel}\n {...metaAttribute({ name: MetaConstants.Card, testID })}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <CardSurface\n height={height}\n minHeight={minHeight}\n padding={padding}\n borderRadius={borderRadius}\n elevation={elevation}\n textAlign={'left' as never}\n backgroundColor={backgroundColor}\n >\n {href ? (\n <LinkOverlay\n onClick={onClick}\n href={href}\n target={target}\n rel={rel ?? defaultRel}\n {...linkOverlayProps}\n />\n ) : null}\n {!href && onClick ? (\n <LinkOverlay as=\"button\" onClick={onClick} {...linkOverlayProps} />\n ) : null}\n {children}\n </CardSurface>\n </CardRoot>\n </CardProvider>\n );\n};\n\ntype CardBodyProps = {\n children: React.ReactNode;\n height?: BoxProps['height'];\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardBody = ({ height, children, testID, ...rest }: CardBodyProps): React.ReactElement => {\n useVerifyInsideCard('CardBody');\n\n return (\n <BaseBox\n {...metaAttribute({ name: MetaConstants.CardBody, testID })}\n {...makeAnalyticsAttribute(rest)}\n height={height}\n >\n {children}\n </BaseBox>\n );\n};\n\nconst CardBody = assignWithoutSideEffects(_CardBody, { componentId: ComponentIds.CardBody });\n\nexport { Card, CardBody };\n"],"names":["ComponentIds","CardHeader","CardHeaderTrailing","CardHeaderLeading","CardFooter","CardFooterTrailing","CardFooterLeading","CardBody","CardHeaderIcon","CardHeaderCounter","CardHeaderBadge","CardHeaderAmount","CardHeaderText","CardHeaderLink","CardHeaderIconButton","Card","_ref","children","_ref$backgroundColor","backgroundColor","_ref$borderRadius","borderRadius","_ref$elevation","elevation","testID","_ref$padding","padding","width","height","minHeight","minWidth","onClick","_ref$isSelected","isSelected","accessibilityLabel","_ref$shouldScaleOnHov","shouldScaleOnHover","onHover","href","target","rel","as","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isFocused","setIsFocused","useVerifyAllowedChildren","componentName","allowedComponents","linkOverlayProps","_objectSpread","metaAttribute","name","CARD_LINK_OVERLAY_ID","makeAccessible","label","pressed","onFocus","onBlur","defaultRel","undefined","_jsx","CardProvider","CardRoot","display","onMouseEnter","isReactNative","MetaConstants","getStyledProps","makeAnalyticsAttribute","_jsxs","CardSurface","textAlign","LinkOverlay","_CardBody","_ref2","_excluded2","useVerifyInsideCard","BaseBox","assignWithoutSideEffects","componentId"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
2
3
  import React__default from 'react';
3
4
  import { useVerifyInsideCard } from './CardContext.js';
4
5
  import { ComponentIds } from './Card.js';
@@ -11,16 +12,21 @@ import '../../utils/assignWithoutSideEffects/index.js';
11
12
  import { useIsMobile } from '../../utils/useIsMobile.js';
12
13
  import '../../utils/logger/index.js';
13
14
  import { useVerifyAllowedChildren } from '../../utils/useVerifyAllowedChildren/useVerifyAllowedChildren.js';
15
+ import '../../utils/makeAnalyticsAttribute/index.js';
14
16
  import { jsxs, jsx } from 'react/jsx-runtime';
15
17
  import { throwBladeError } from '../../utils/logger/logger.js';
16
18
  import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
17
19
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
18
20
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
21
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
19
22
  import { Divider } from '../Divider/Divider.js';
20
23
  import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
21
24
  import { Text } from '../Typography/Text/Text.js';
22
25
  import Button from '../Button/Button/Button.js';
23
26
 
27
+ var _excluded = ["children", "testID", "marginTop", "paddingTop", "showDivider"],
28
+ _excluded2 = ["title", "subtitle"],
29
+ _excluded3 = ["actions"];
24
30
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25
31
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26
32
  var _CardFooter = function _CardFooter(_ref) {
@@ -32,7 +38,8 @@ var _CardFooter = function _CardFooter(_ref) {
32
38
  _ref$paddingTop = _ref.paddingTop,
33
39
  paddingTop = _ref$paddingTop === void 0 ? 'spacing.4' : _ref$paddingTop,
34
40
  _ref$showDivider = _ref.showDivider,
35
- showDivider = _ref$showDivider === void 0 ? true : _ref$showDivider;
41
+ showDivider = _ref$showDivider === void 0 ? true : _ref$showDivider,
42
+ props = _objectWithoutProperties(_ref, _excluded);
36
43
  var isMobile = useIsMobile();
37
44
  useVerifyInsideCard('CardFooter');
38
45
  useVerifyAllowedChildren({
@@ -55,12 +62,12 @@ var _CardFooter = function _CardFooter(_ref) {
55
62
  // if we don't check for action here, and if we do not have footerTrailing and only footerLeading
56
63
  // then the content of footerLeading will be justified to the end.
57
64
  var baseBoxJustifyContent = footerChildrensArray.length === 2 || !((_footerChildrensArray = footerChildrensArray[0]) !== null && _footerChildrensArray !== void 0 && (_footerChildrensArray2 = _footerChildrensArray.props) !== null && _footerChildrensArray2 !== void 0 && _footerChildrensArray2.actions) ? 'space-between' : 'flex-end';
58
- return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
65
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
59
66
  marginTop: marginTop
60
67
  }, metaAttribute({
61
68
  name: MetaConstants.CardFooter,
62
69
  testID: testID
63
- })), {}, {
70
+ })), makeAnalyticsAttribute(props)), {}, {
64
71
  children: [showDivider ? /*#__PURE__*/jsx(Divider, {}) : null, /*#__PURE__*/jsx(BaseBox, {
65
72
  paddingTop: paddingTop,
66
73
  display: "flex",
@@ -76,10 +83,12 @@ var CardFooter = /*#__PURE__*/assignWithoutSideEffects(_CardFooter, {
76
83
  });
77
84
  var _CardFooterLeading = function _CardFooterLeading(_ref2) {
78
85
  var title = _ref2.title,
79
- subtitle = _ref2.subtitle;
86
+ subtitle = _ref2.subtitle,
87
+ rest = _objectWithoutProperties(_ref2, _excluded2);
80
88
  useVerifyInsideCard('CardFooterLeading');
81
- return /*#__PURE__*/jsxs(BaseBox, {
82
- textAlign: 'left',
89
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
90
+ textAlign: 'left'
91
+ }, makeAnalyticsAttribute(rest)), {}, {
83
92
  children: [title && /*#__PURE__*/jsx(Text, {
84
93
  color: "surface.text.gray.normal",
85
94
  size: "medium",
@@ -91,21 +100,23 @@ var _CardFooterLeading = function _CardFooterLeading(_ref2) {
91
100
  weight: "regular",
92
101
  children: subtitle
93
102
  })]
94
- });
103
+ }));
95
104
  };
96
105
  var CardFooterLeading = /*#__PURE__*/assignWithoutSideEffects(_CardFooterLeading, {
97
106
  componentId: ComponentIds.CardFooterLeading
98
107
  });
99
108
  var _CardFooterTrailing = function _CardFooterTrailing(_ref3) {
100
- var actions = _ref3.actions;
109
+ var actions = _ref3.actions,
110
+ rest = _objectWithoutProperties(_ref3, _excluded3);
101
111
  var isMobile = useIsMobile();
102
112
  useVerifyInsideCard('CardFooterTrailing');
103
- return /*#__PURE__*/jsxs(BaseBox, {
113
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
104
114
  display: "flex",
105
115
  flexDirection: "row",
106
116
  alignSelf: isMobile ? 'auto' : 'center',
107
117
  marginTop: isMobile ? 'spacing.5' : 'spacing.0',
108
- marginLeft: isMobile ? 'spacing.0' : 'spacing.5',
118
+ marginLeft: isMobile ? 'spacing.0' : 'spacing.5'
119
+ }, makeAnalyticsAttribute(rest)), {}, {
109
120
  children: [/*#__PURE__*/jsx(BaseBox, {
110
121
  flexGrow: 1,
111
122
  children: actions !== null && actions !== void 0 && actions.secondary ? /*#__PURE__*/jsx(Button, _objectSpread(_objectSpread({
@@ -126,7 +137,7 @@ var _CardFooterTrailing = function _CardFooterTrailing(_ref3) {
126
137
  children: actions.primary.text
127
138
  })) : null
128
139
  })]
129
- });
140
+ }));
130
141
  };
131
142
  var CardFooterTrailing = /*#__PURE__*/assignWithoutSideEffects(_CardFooterTrailing, {
132
143
  componentId: ComponentIds.CardFooterTrailing