@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
@@ -1 +1 @@
1
- {"version":3,"file":"CardFooter.js","sources":["../../../../../../src/components/Card/CardFooter.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport { useVerifyInsideCard } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\n\nexport type CardFooterAction = Pick<\n ButtonProps,\n 'type' | 'accessibilityLabel' | 'isLoading' | 'isDisabled' | 'icon' | 'iconPosition' | 'onClick'\n> & {\n text: ButtonProps['children'];\n};\n\ntype CardFooterProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and footer title\n */\n paddingTop?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginTop?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID;\n\nconst _CardFooter = ({\n children,\n testID,\n marginTop = 'spacing.4',\n paddingTop = 'spacing.4',\n showDivider = true,\n}: CardFooterProps): React.ReactElement => {\n const isMobile = useIsMobile();\n useVerifyInsideCard('CardFooter');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardFooter',\n allowedComponents: [ComponentIds.CardFooterLeading, ComponentIds.CardFooterTrailing],\n });\n\n const footerChildrensArray = React.Children.toArray(children);\n if (__DEV__) {\n if (!React.isValidElement(footerChildrensArray[0])) {\n throwBladeError({\n message: `Invalid React Element ${footerChildrensArray}`,\n moduleName: 'CardFooter',\n });\n }\n }\n\n // the reason why we are checking for actions here is, because we want the footerTrailing\n // to always be aligned to the right\n // if we don't check for action here, and if we do not have footerTrailing and only footerLeading\n // then the content of footerLeading will be justified to the end.\n const baseBoxJustifyContent =\n footerChildrensArray.length === 2 || !(footerChildrensArray[0] as ReactElement)?.props?.actions\n ? 'space-between'\n : 'flex-end';\n\n return (\n <BaseBox marginTop={marginTop} {...metaAttribute({ name: MetaConstants.CardFooter, testID })}>\n {showDivider ? <Divider /> : null}\n <BaseBox\n paddingTop={paddingTop}\n display=\"flex\"\n flexDirection={isMobile ? 'column' : 'row'}\n justifyContent={baseBoxJustifyContent}\n alignItems={isMobile ? 'stretch' : 'center'}\n >\n {children}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardFooter = assignWithoutSideEffects(_CardFooter, { componentId: ComponentIds.CardFooter });\n\ntype CardFooterLeadingProps = {\n title?: string;\n subtitle?: string;\n};\nconst _CardFooterLeading = ({ title, subtitle }: CardFooterLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardFooterLeading');\n\n return (\n <BaseBox textAlign={'left' as never}>\n {title && (\n <Text color=\"surface.text.gray.normal\" size=\"medium\" weight=\"semibold\">\n {title}\n </Text>\n )}\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" size=\"small\" weight=\"regular\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n );\n};\nconst CardFooterLeading = assignWithoutSideEffects(_CardFooterLeading, {\n componentId: ComponentIds.CardFooterLeading,\n});\n\ntype CardFooterTrailingProps = {\n actions?: {\n primary?: CardFooterAction;\n secondary?: CardFooterAction;\n };\n};\nconst _CardFooterTrailing = ({ actions }: CardFooterTrailingProps): React.ReactElement => {\n const isMobile = useIsMobile();\n useVerifyInsideCard('CardFooterTrailing');\n\n return (\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n alignSelf={isMobile ? 'auto' : 'center'}\n marginTop={isMobile ? 'spacing.5' : 'spacing.0'}\n marginLeft={isMobile ? 'spacing.0' : 'spacing.5'}\n >\n <BaseBox flexGrow={1}>\n {actions?.secondary ? (\n <Button isFullWidth size=\"medium\" variant=\"secondary\" {...actions.secondary}>\n {actions.secondary.text!}\n </Button>\n ) : null}\n </BaseBox>\n <BaseBox marginLeft=\"spacing.5\" />\n <BaseBox flexGrow={1}>\n {actions?.primary ? (\n <Button isFullWidth size=\"medium\" {...actions.primary}>\n {actions.primary.text!}\n </Button>\n ) : null}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardFooterTrailing = assignWithoutSideEffects(_CardFooterTrailing, {\n componentId: ComponentIds.CardFooterTrailing,\n});\n\nexport { CardFooter, CardFooterLeading, CardFooterTrailing };\n"],"names":["_CardFooter","_ref","_footerChildrensArray","_footerChildrensArray2","children","testID","_ref$marginTop","marginTop","_ref$paddingTop","paddingTop","_ref$showDivider","showDivider","isMobile","useIsMobile","useVerifyInsideCard","useVerifyAllowedChildren","componentName","allowedComponents","ComponentIds","CardFooterLeading","CardFooterTrailing","footerChildrensArray","React","Children","toArray","isValidElement","throwBladeError","message","concat","moduleName","baseBoxJustifyContent","length","props","actions","_jsxs","BaseBox","_objectSpread","metaAttribute","name","MetaConstants","CardFooter","_jsx","Divider","display","flexDirection","justifyContent","alignItems","assignWithoutSideEffects","componentId","_CardFooterLeading","_ref2","title","subtitle","textAlign","Text","color","size","weight","_CardFooterTrailing","_ref3","alignSelf","marginLeft","flexGrow","secondary","Button","isFullWidth","variant","text","primary"],"mappings":"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"}
1
+ {"version":3,"file":"CardFooter.js","sources":["../../../../../../src/components/Card/CardFooter.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\nimport type { ReactElement } from 'react';\nimport React from 'react';\nimport { useVerifyInsideCard } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Text } from '~components/Typography';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nexport type CardFooterAction = Pick<\n ButtonProps,\n 'type' | 'accessibilityLabel' | 'isLoading' | 'isDisabled' | 'icon' | 'iconPosition' | 'onClick'\n> & {\n text: ButtonProps['children'];\n};\n\ntype CardFooterProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and footer title\n */\n paddingTop?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginTop?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardFooter = ({\n children,\n testID,\n marginTop = 'spacing.4',\n paddingTop = 'spacing.4',\n showDivider = true,\n ...props\n}: CardFooterProps): React.ReactElement => {\n const isMobile = useIsMobile();\n useVerifyInsideCard('CardFooter');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardFooter',\n allowedComponents: [ComponentIds.CardFooterLeading, ComponentIds.CardFooterTrailing],\n });\n\n const footerChildrensArray = React.Children.toArray(children);\n if (__DEV__) {\n if (!React.isValidElement(footerChildrensArray[0])) {\n throwBladeError({\n message: `Invalid React Element ${footerChildrensArray}`,\n moduleName: 'CardFooter',\n });\n }\n }\n\n // the reason why we are checking for actions here is, because we want the footerTrailing\n // to always be aligned to the right\n // if we don't check for action here, and if we do not have footerTrailing and only footerLeading\n // then the content of footerLeading will be justified to the end.\n const baseBoxJustifyContent =\n footerChildrensArray.length === 2 || !(footerChildrensArray[0] as ReactElement)?.props?.actions\n ? 'space-between'\n : 'flex-end';\n\n return (\n <BaseBox\n marginTop={marginTop}\n {...metaAttribute({ name: MetaConstants.CardFooter, testID })}\n {...makeAnalyticsAttribute(props)}\n >\n {showDivider ? <Divider /> : null}\n <BaseBox\n paddingTop={paddingTop}\n display=\"flex\"\n flexDirection={isMobile ? 'column' : 'row'}\n justifyContent={baseBoxJustifyContent}\n alignItems={isMobile ? 'stretch' : 'center'}\n >\n {children}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardFooter = assignWithoutSideEffects(_CardFooter, { componentId: ComponentIds.CardFooter });\n\ntype CardFooterLeadingProps = {\n title?: string;\n subtitle?: string;\n} & DataAnalyticsAttribute;\nconst _CardFooterLeading = ({\n title,\n subtitle,\n ...rest\n}: CardFooterLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardFooterLeading');\n\n return (\n <BaseBox textAlign={'left' as never} {...makeAnalyticsAttribute(rest)}>\n {title && (\n <Text color=\"surface.text.gray.normal\" size=\"medium\" weight=\"semibold\">\n {title}\n </Text>\n )}\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" size=\"small\" weight=\"regular\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n );\n};\nconst CardFooterLeading = assignWithoutSideEffects(_CardFooterLeading, {\n componentId: ComponentIds.CardFooterLeading,\n});\n\ntype CardFooterTrailingProps = {\n actions?: {\n primary?: CardFooterAction;\n secondary?: CardFooterAction;\n };\n} & DataAnalyticsAttribute;\nconst _CardFooterTrailing = ({ actions, ...rest }: CardFooterTrailingProps): React.ReactElement => {\n const isMobile = useIsMobile();\n useVerifyInsideCard('CardFooterTrailing');\n\n return (\n <BaseBox\n display=\"flex\"\n flexDirection=\"row\"\n alignSelf={isMobile ? 'auto' : 'center'}\n marginTop={isMobile ? 'spacing.5' : 'spacing.0'}\n marginLeft={isMobile ? 'spacing.0' : 'spacing.5'}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox flexGrow={1}>\n {actions?.secondary ? (\n <Button isFullWidth size=\"medium\" variant=\"secondary\" {...actions.secondary}>\n {actions.secondary.text!}\n </Button>\n ) : null}\n </BaseBox>\n <BaseBox marginLeft=\"spacing.5\" />\n <BaseBox flexGrow={1}>\n {actions?.primary ? (\n <Button isFullWidth size=\"medium\" {...actions.primary}>\n {actions.primary.text!}\n </Button>\n ) : null}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardFooterTrailing = assignWithoutSideEffects(_CardFooterTrailing, {\n componentId: ComponentIds.CardFooterTrailing,\n});\n\nexport { CardFooter, CardFooterLeading, CardFooterTrailing };\n"],"names":["_CardFooter","_ref","_footerChildrensArray","_footerChildrensArray2","children","testID","_ref$marginTop","marginTop","_ref$paddingTop","paddingTop","_ref$showDivider","showDivider","props","_objectWithoutProperties","_excluded","isMobile","useIsMobile","useVerifyInsideCard","useVerifyAllowedChildren","componentName","allowedComponents","ComponentIds","CardFooterLeading","CardFooterTrailing","footerChildrensArray","React","Children","toArray","isValidElement","throwBladeError","message","concat","moduleName","baseBoxJustifyContent","length","actions","_jsxs","BaseBox","_objectSpread","metaAttribute","name","MetaConstants","CardFooter","makeAnalyticsAttribute","_jsx","Divider","display","flexDirection","justifyContent","alignItems","assignWithoutSideEffects","componentId","_CardFooterLeading","_ref2","title","subtitle","rest","_excluded2","textAlign","Text","color","size","weight","_CardFooterTrailing","_ref3","_excluded3","alignSelf","marginLeft","flexGrow","secondary","Button","isFullWidth","variant","text","primary"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
1
2
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
3
  import 'react';
3
4
  import { useVerifyInsideCard } from './CardContext.js';
@@ -17,6 +18,7 @@ import '../../utils/isValidAllowedChildren/index.js';
17
18
  import '../../utils/logger/index.js';
18
19
  import { useVerifyAllowedChildren } from '../../utils/useVerifyAllowedChildren/useVerifyAllowedChildren.js';
19
20
  import '../Amount/index.js';
21
+ import '../../utils/makeAnalyticsAttribute/index.js';
20
22
  import { jsx, jsxs } from 'react/jsx-runtime';
21
23
  import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
22
24
  import { Counter } from '../Counter/Counter.js';
@@ -29,10 +31,13 @@ import { makeSpace } from '../../utils/makeSpace/makeSpace.js';
29
31
  import Button from '../Button/Button/Button.js';
30
32
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
31
33
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
34
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
32
35
  import { Divider } from '../Divider/Divider.js';
33
36
  import { isValidAllowedChildren, getComponentId } from '../../utils/isValidAllowedChildren/isValidAllowedChildren.js';
34
37
  import { throwBladeError } from '../../utils/logger/logger.js';
35
38
 
39
+ var _excluded = ["children", "testID", "marginBottom", "paddingBottom", "showDivider"],
40
+ _excluded2 = ["title", "subtitle", "prefix", "suffix"];
36
41
  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; }
37
42
  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; }
38
43
  var _CardHeaderIcon = function _CardHeaderIcon(_ref) {
@@ -106,19 +111,20 @@ var _CardHeader = function _CardHeader(_ref2) {
106
111
  _ref2$paddingBottom = _ref2.paddingBottom,
107
112
  paddingBottom = _ref2$paddingBottom === void 0 ? 'spacing.4' : _ref2$paddingBottom,
108
113
  _ref2$showDivider = _ref2.showDivider,
109
- showDivider = _ref2$showDivider === void 0 ? true : _ref2$showDivider;
114
+ showDivider = _ref2$showDivider === void 0 ? true : _ref2$showDivider,
115
+ rest = _objectWithoutProperties(_ref2, _excluded);
110
116
  useVerifyInsideCard('CardHeader');
111
117
  useVerifyAllowedChildren({
112
118
  children: children,
113
119
  componentName: 'CardHeader',
114
120
  allowedComponents: [ComponentIds.CardHeaderLeading, ComponentIds.CardHeaderTrailing]
115
121
  });
116
- return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({
122
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
117
123
  marginBottom: marginBottom
118
124
  }, metaAttribute({
119
125
  name: MetaConstants.CardHeader,
120
126
  testID: testID
121
- })), {}, {
127
+ })), makeAnalyticsAttribute(rest)), {}, {
122
128
  children: [/*#__PURE__*/jsx(BaseBox, {
123
129
  paddingBottom: paddingBottom,
124
130
  display: "flex",
@@ -135,7 +141,8 @@ var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
135
141
  var title = _ref3.title,
136
142
  subtitle = _ref3.subtitle,
137
143
  prefix = _ref3.prefix,
138
- suffix = _ref3.suffix;
144
+ suffix = _ref3.suffix,
145
+ rest = _objectWithoutProperties(_ref3, _excluded2);
139
146
  useVerifyInsideCard('CardHeaderLeading');
140
147
  if (false) {
141
148
  if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {
@@ -151,7 +158,7 @@ var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
151
158
  });
152
159
  }
153
160
  }
154
- return /*#__PURE__*/jsxs(BaseBox, {
161
+ return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread({}, makeAnalyticsAttribute(rest)), {}, {
155
162
  flex: 1,
156
163
  display: "flex",
157
164
  flexDirection: "row",
@@ -183,7 +190,7 @@ var _CardHeaderLeading = function _CardHeaderLeading(_ref3) {
183
190
  children: subtitle
184
191
  })]
185
192
  })]
186
- });
193
+ }));
187
194
  };
188
195
  var CardHeaderLeading = /*#__PURE__*/assignWithoutSideEffects(_CardHeaderLeading, {
189
196
  componentId: ComponentIds.CardHeaderLeading
@@ -1 +1 @@
1
- {"version":3,"file":"CardHeader.js","sources":["../../../../../../src/components/Card/CardHeader.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useVerifyInsideCard } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport type { LinkProps } from '~components/Link';\nimport { Link } from '~components/Link';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Counter } from '~components/Counter';\nimport type { CounterProps } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { TextProps, TextVariant } from '~components/Typography';\nimport { Text } from '~components/Typography';\nimport type { IconComponent } from '~components/Icons';\nimport { minHeight } from '~components/Button/BaseButton/buttonTokens';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSpace } from '~utils/makeSpace';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { AmountProps } from '~components/Amount';\nimport { Amount } from '~components/Amount';\n\nconst _CardHeaderIcon = ({ icon: Icon }: { icon: IconComponent }): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIcon');\n\n return <Icon color=\"surface.icon.gray.normal\" size=\"large\" />;\n};\nconst CardHeaderIcon = assignWithoutSideEffects(_CardHeaderIcon, {\n componentId: ComponentIds.CardHeaderIcon,\n});\n\nconst _CardHeaderCounter = (props: CounterProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderCounter');\n\n return <Counter {...props} />;\n};\nconst CardHeaderCounter = assignWithoutSideEffects(_CardHeaderCounter, {\n componentId: ComponentIds.CardHeaderCounter,\n});\n\nconst _CardHeaderBadge = (props: BadgeProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderBadge');\n\n return <Badge {...props} />;\n};\nconst CardHeaderBadge = assignWithoutSideEffects(_CardHeaderBadge, {\n componentId: ComponentIds.CardHeaderBadge,\n});\n\nconst _CardHeaderAmount = (props: AmountProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderAmount');\n\n return <Amount {...props} />;\n};\n\nconst CardHeaderAmount = assignWithoutSideEffects(_CardHeaderAmount, {\n componentId: ComponentIds.CardHeaderAmount,\n});\n\nconst _CardHeaderText = (props: TextProps<{ variant: TextVariant }>): React.ReactElement => {\n useVerifyInsideCard('CardHeaderText');\n\n return <Text textAlign=\"left\" {...props} />;\n};\nconst CardHeaderText = assignWithoutSideEffects(_CardHeaderText, {\n componentId: ComponentIds.CardHeaderText,\n});\n\nconst _CardHeaderLink = (props: LinkProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLink');\n\n return <Link {...props} />;\n};\nconst CardHeaderLink = assignWithoutSideEffects(_CardHeaderLink, {\n componentId: ComponentIds.CardHeaderLink,\n});\n\ntype CardHeaderIconButtonProps = Omit<\n ButtonProps,\n 'variant' | 'size' | 'iconPosition' | 'isFullWidth' | 'children'\n> & {\n icon: IconComponent;\n};\n\nconst _CardHeaderIconButton = (props: CardHeaderIconButtonProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIconButton');\n\n return (\n <BaseBox width={makeSpace(minHeight.xsmall)}>\n <Button {...props} variant=\"tertiary\" size=\"xsmall\" iconPosition=\"left\" isFullWidth />\n </BaseBox>\n );\n};\nconst CardHeaderIconButton = assignWithoutSideEffects(_CardHeaderIconButton, {\n componentId: ComponentIds.CardHeaderIconButton,\n});\n\ntype CardHeaderProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and header title\n */\n paddingBottom?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginBottom?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID;\n\nconst _CardHeader = ({\n children,\n testID,\n marginBottom = 'spacing.4',\n paddingBottom = 'spacing.4',\n showDivider = true,\n}: CardHeaderProps): React.ReactElement => {\n useVerifyInsideCard('CardHeader');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardHeader',\n allowedComponents: [ComponentIds.CardHeaderLeading, ComponentIds.CardHeaderTrailing],\n });\n\n return (\n <BaseBox\n marginBottom={marginBottom}\n {...metaAttribute({ name: MetaConstants.CardHeader, testID })}\n >\n <BaseBox\n paddingBottom={paddingBottom}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"space-between\"\n >\n {children}\n </BaseBox>\n {showDivider ? <Divider /> : null}\n </BaseBox>\n );\n};\nconst CardHeader = assignWithoutSideEffects(_CardHeader, { componentId: ComponentIds.CardHeader });\n\ntype CardHeaderLeadingProps = {\n title: string;\n subtitle?: string;\n /**\n * prefix element of Card\n *\n * Accepts: `CardHeaderIcon` component\n */\n prefix?: React.ReactNode;\n /**\n * suffix element of Card\n *\n * Accepts: `CardHeaderCounter` component\n */\n suffix?: React.ReactNode;\n};\nconst _CardHeaderLeading = ({\n title,\n subtitle,\n prefix,\n suffix,\n}: CardHeaderLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLeading');\n\n if (__DEV__) {\n if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderIcon}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n\n if (suffix && !isValidAllowedChildren(suffix, ComponentIds.CardHeaderCounter)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderCounter}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n }\n\n return (\n <BaseBox flex={1} display=\"flex\" flexDirection=\"row\">\n <BaseBox marginRight=\"spacing.3\" alignSelf=\"center\" display=\"flex\">\n {prefix}\n </BaseBox>\n <BaseBox marginRight=\"spacing.5\">\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"center\" flexWrap=\"wrap\">\n <Text color=\"surface.text.gray.normal\" size=\"large\" weight=\"semibold\">\n {title}\n </Text>\n <BaseBox marginLeft=\"spacing.3\">{suffix}</BaseBox>\n </BaseBox>\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" textAlign=\"left\" size=\"small\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardHeaderLeading = assignWithoutSideEffects(_CardHeaderLeading, {\n componentId: ComponentIds.CardHeaderLeading,\n});\n\ntype CardHeaderTrailingProps = {\n /**\n * Renders a visual ornament in card header trailing section\n *\n * Accepts: `CardHeaderLink`, `CardHeaderText`, `CardHeaderIconButton`, `CardHeaderBadge`\n */\n visual?: React.ReactNode;\n};\n\nconst headerTrailingAllowedComponents = [\n ComponentIds.CardHeaderLink,\n ComponentIds.CardHeaderText,\n ComponentIds.CardHeaderIconButton,\n ComponentIds.CardHeaderBadge,\n ComponentIds.CardHeaderAmount,\n];\n\nconst _CardHeaderTrailing = ({ visual }: CardHeaderTrailingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderTrailing');\n\n if (__DEV__) {\n if (visual && !headerTrailingAllowedComponents.includes(getComponentId(visual)!)) {\n throwBladeError({\n message: `Only one of \\`${headerTrailingAllowedComponents.join(\n ', ',\n )}\\` component is accepted in visual`,\n moduleName: 'CardHeaderTrailing',\n });\n }\n }\n\n return <BaseBox alignSelf=\"center\">{visual}</BaseBox>;\n};\nconst CardHeaderTrailing = assignWithoutSideEffects(_CardHeaderTrailing, {\n componentId: ComponentIds.CardHeaderTrailing,\n});\n\nexport {\n CardHeader,\n CardHeaderLeading,\n CardHeaderTrailing,\n CardHeaderBadge,\n CardHeaderIcon,\n CardHeaderCounter,\n CardHeaderText,\n CardHeaderLink,\n CardHeaderAmount,\n CardHeaderIconButton,\n};\n"],"names":["_CardHeaderIcon","_ref","Icon","icon","useVerifyInsideCard","_jsx","color","size","CardHeaderIcon","assignWithoutSideEffects","componentId","ComponentIds","_CardHeaderCounter","props","Counter","_objectSpread","CardHeaderCounter","_CardHeaderBadge","Badge","CardHeaderBadge","_CardHeaderAmount","Amount","CardHeaderAmount","_CardHeaderText","Text","textAlign","CardHeaderText","_CardHeaderLink","Link","CardHeaderLink","_CardHeaderIconButton","BaseBox","width","makeSpace","minHeight","xsmall","children","Button","variant","iconPosition","isFullWidth","CardHeaderIconButton","_CardHeader","_ref2","testID","_ref2$marginBottom","marginBottom","_ref2$paddingBottom","paddingBottom","_ref2$showDivider","showDivider","useVerifyAllowedChildren","componentName","allowedComponents","CardHeaderLeading","CardHeaderTrailing","_jsxs","metaAttribute","name","MetaConstants","CardHeader","display","flexDirection","justifyContent","Divider","_CardHeaderLeading","_ref3","title","subtitle","prefix","suffix","isValidAllowedChildren","throwBladeError","message","concat","moduleName","flex","marginRight","alignSelf","alignItems","flexWrap","weight","marginLeft","headerTrailingAllowedComponents","_CardHeaderTrailing","_ref4","visual","includes","getComponentId","join"],"mappings":"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"}
1
+ {"version":3,"file":"CardHeader.js","sources":["../../../../../../src/components/Card/CardHeader.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useVerifyInsideCard } from './CardContext';\nimport { ComponentIds } from './Card';\nimport type { CardSpacingValueType } from './types';\nimport type { BadgeProps } from '~components/Badge';\nimport { Badge } from '~components/Badge';\nimport type { LinkProps } from '~components/Link';\nimport { Link } from '~components/Link';\nimport type { ButtonProps } from '~components/Button';\nimport { Button } from '~components/Button';\nimport { Counter } from '~components/Counter';\nimport type { CounterProps } from '~components/Counter';\nimport { Divider } from '~components/Divider';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { TextProps, TextVariant } from '~components/Typography';\nimport { Text } from '~components/Typography';\nimport type { IconComponent } from '~components/Icons';\nimport { minHeight } from '~components/Button/BaseButton/buttonTokens';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, TestID } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeSpace } from '~utils/makeSpace';\nimport { getComponentId, isValidAllowedChildren } from '~utils/isValidAllowedChildren';\nimport { throwBladeError } from '~utils/logger';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport type { AmountProps } from '~components/Amount';\nimport { Amount } from '~components/Amount';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _CardHeaderIcon = ({ icon: Icon }: { icon: IconComponent }): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIcon');\n\n return <Icon color=\"surface.icon.gray.normal\" size=\"large\" />;\n};\nconst CardHeaderIcon = assignWithoutSideEffects(_CardHeaderIcon, {\n componentId: ComponentIds.CardHeaderIcon,\n});\n\nconst _CardHeaderCounter = (props: CounterProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderCounter');\n\n return <Counter {...props} />;\n};\nconst CardHeaderCounter = assignWithoutSideEffects(_CardHeaderCounter, {\n componentId: ComponentIds.CardHeaderCounter,\n});\n\nconst _CardHeaderBadge = (props: BadgeProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderBadge');\n\n return <Badge {...props} />;\n};\nconst CardHeaderBadge = assignWithoutSideEffects(_CardHeaderBadge, {\n componentId: ComponentIds.CardHeaderBadge,\n});\n\nconst _CardHeaderAmount = (props: AmountProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderAmount');\n\n return <Amount {...props} />;\n};\n\nconst CardHeaderAmount = assignWithoutSideEffects(_CardHeaderAmount, {\n componentId: ComponentIds.CardHeaderAmount,\n});\n\nconst _CardHeaderText = (props: TextProps<{ variant: TextVariant }>): React.ReactElement => {\n useVerifyInsideCard('CardHeaderText');\n\n return <Text textAlign=\"left\" {...props} />;\n};\nconst CardHeaderText = assignWithoutSideEffects(_CardHeaderText, {\n componentId: ComponentIds.CardHeaderText,\n});\n\nconst _CardHeaderLink = (props: LinkProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLink');\n\n return <Link {...props} />;\n};\nconst CardHeaderLink = assignWithoutSideEffects(_CardHeaderLink, {\n componentId: ComponentIds.CardHeaderLink,\n});\n\ntype CardHeaderIconButtonProps = Omit<\n ButtonProps,\n 'variant' | 'size' | 'iconPosition' | 'isFullWidth' | 'children'\n> & {\n icon: IconComponent;\n};\n\nconst _CardHeaderIconButton = (props: CardHeaderIconButtonProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderIconButton');\n\n return (\n <BaseBox width={makeSpace(minHeight.xsmall)}>\n <Button {...props} variant=\"tertiary\" size=\"xsmall\" iconPosition=\"left\" isFullWidth />\n </BaseBox>\n );\n};\nconst CardHeaderIconButton = assignWithoutSideEffects(_CardHeaderIconButton, {\n componentId: ComponentIds.CardHeaderIconButton,\n});\n\ntype CardHeaderProps = {\n children?: React.ReactNode;\n /**\n * For spacing between divider and header title\n */\n paddingBottom?: CardSpacingValueType;\n /**\n * For spacing between body content and divider\n */\n marginBottom?: CardSpacingValueType;\n /**\n * @default true\n */\n showDivider?: boolean;\n} & TestID &\n DataAnalyticsAttribute;\n\nconst _CardHeader = ({\n children,\n testID,\n marginBottom = 'spacing.4',\n paddingBottom = 'spacing.4',\n showDivider = true,\n ...rest\n}: CardHeaderProps): React.ReactElement => {\n useVerifyInsideCard('CardHeader');\n useVerifyAllowedChildren({\n children,\n componentName: 'CardHeader',\n allowedComponents: [ComponentIds.CardHeaderLeading, ComponentIds.CardHeaderTrailing],\n });\n\n return (\n <BaseBox\n marginBottom={marginBottom}\n {...metaAttribute({ name: MetaConstants.CardHeader, testID })}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n paddingBottom={paddingBottom}\n display=\"flex\"\n flexDirection=\"row\"\n justifyContent=\"space-between\"\n >\n {children}\n </BaseBox>\n {showDivider ? <Divider /> : null}\n </BaseBox>\n );\n};\nconst CardHeader = assignWithoutSideEffects(_CardHeader, { componentId: ComponentIds.CardHeader });\n\ntype CardHeaderLeadingProps = {\n title: string;\n subtitle?: string;\n /**\n * prefix element of Card\n *\n * Accepts: `CardHeaderIcon` component\n */\n prefix?: React.ReactNode;\n /**\n * suffix element of Card\n *\n * Accepts: `CardHeaderCounter` component\n */\n suffix?: React.ReactNode;\n} & DataAnalyticsAttribute;\nconst _CardHeaderLeading = ({\n title,\n subtitle,\n prefix,\n suffix,\n ...rest\n}: CardHeaderLeadingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderLeading');\n\n if (__DEV__) {\n if (prefix && !isValidAllowedChildren(prefix, ComponentIds.CardHeaderIcon)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderIcon}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n\n if (suffix && !isValidAllowedChildren(suffix, ComponentIds.CardHeaderCounter)) {\n throwBladeError({\n message: `Only \\`${ComponentIds.CardHeaderCounter}\\` component is accepted in prefix`,\n moduleName: 'CardHeaderLeading',\n });\n }\n }\n\n return (\n <BaseBox {...makeAnalyticsAttribute(rest)} flex={1} display=\"flex\" flexDirection=\"row\">\n <BaseBox marginRight=\"spacing.3\" alignSelf=\"center\" display=\"flex\">\n {prefix}\n </BaseBox>\n <BaseBox marginRight=\"spacing.5\">\n <BaseBox display=\"flex\" flexDirection=\"row\" alignItems=\"center\" flexWrap=\"wrap\">\n <Text color=\"surface.text.gray.normal\" size=\"large\" weight=\"semibold\">\n {title}\n </Text>\n <BaseBox marginLeft=\"spacing.3\">{suffix}</BaseBox>\n </BaseBox>\n {subtitle && (\n <Text color=\"surface.text.gray.subtle\" textAlign=\"left\" size=\"small\">\n {subtitle}\n </Text>\n )}\n </BaseBox>\n </BaseBox>\n );\n};\nconst CardHeaderLeading = assignWithoutSideEffects(_CardHeaderLeading, {\n componentId: ComponentIds.CardHeaderLeading,\n});\n\ntype CardHeaderTrailingProps = {\n /**\n * Renders a visual ornament in card header trailing section\n *\n * Accepts: `CardHeaderLink`, `CardHeaderText`, `CardHeaderIconButton`, `CardHeaderBadge`\n */\n visual?: React.ReactNode;\n};\n\nconst headerTrailingAllowedComponents = [\n ComponentIds.CardHeaderLink,\n ComponentIds.CardHeaderText,\n ComponentIds.CardHeaderIconButton,\n ComponentIds.CardHeaderBadge,\n ComponentIds.CardHeaderAmount,\n];\n\nconst _CardHeaderTrailing = ({ visual }: CardHeaderTrailingProps): React.ReactElement => {\n useVerifyInsideCard('CardHeaderTrailing');\n\n if (__DEV__) {\n if (visual && !headerTrailingAllowedComponents.includes(getComponentId(visual)!)) {\n throwBladeError({\n message: `Only one of \\`${headerTrailingAllowedComponents.join(\n ', ',\n )}\\` component is accepted in visual`,\n moduleName: 'CardHeaderTrailing',\n });\n }\n }\n\n return <BaseBox alignSelf=\"center\">{visual}</BaseBox>;\n};\nconst CardHeaderTrailing = assignWithoutSideEffects(_CardHeaderTrailing, {\n componentId: ComponentIds.CardHeaderTrailing,\n});\n\nexport {\n CardHeader,\n CardHeaderLeading,\n CardHeaderTrailing,\n CardHeaderBadge,\n CardHeaderIcon,\n CardHeaderCounter,\n CardHeaderText,\n CardHeaderLink,\n CardHeaderAmount,\n CardHeaderIconButton,\n};\n"],"names":["_CardHeaderIcon","_ref","Icon","icon","useVerifyInsideCard","_jsx","color","size","CardHeaderIcon","assignWithoutSideEffects","componentId","ComponentIds","_CardHeaderCounter","props","Counter","_objectSpread","CardHeaderCounter","_CardHeaderBadge","Badge","CardHeaderBadge","_CardHeaderAmount","Amount","CardHeaderAmount","_CardHeaderText","Text","textAlign","CardHeaderText","_CardHeaderLink","Link","CardHeaderLink","_CardHeaderIconButton","BaseBox","width","makeSpace","minHeight","xsmall","children","Button","variant","iconPosition","isFullWidth","CardHeaderIconButton","_CardHeader","_ref2","testID","_ref2$marginBottom","marginBottom","_ref2$paddingBottom","paddingBottom","_ref2$showDivider","showDivider","rest","_objectWithoutProperties","_excluded","useVerifyAllowedChildren","componentName","allowedComponents","CardHeaderLeading","CardHeaderTrailing","_jsxs","metaAttribute","name","MetaConstants","CardHeader","makeAnalyticsAttribute","display","flexDirection","justifyContent","Divider","_CardHeaderLeading","_ref3","title","subtitle","prefix","suffix","_excluded2","isValidAllowedChildren","throwBladeError","message","concat","moduleName","flex","marginRight","alignSelf","alignItems","flexWrap","weight","marginLeft","headerTrailingAllowedComponents","_CardHeaderTrailing","_ref4","visual","includes","getComponentId","join"],"mappings":"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"}
@@ -23,6 +23,7 @@ import '../Box/styledProps/index.js';
23
23
  import { useControllableState } from '../../utils/useControllable.js';
24
24
  import { useIsomorphicLayoutEffect } from '../../utils/useIsomorphicLayoutEffect.js';
25
25
  import { useDidUpdate } from '../../utils/useDidUpdate.js';
26
+ import '../../utils/makeAnalyticsAttribute/index.js';
26
27
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
27
28
  import { Box } from '../Box/Box.js';
28
29
  import { NavigationButton } from './NavigationButton/NavigationButton.js';
@@ -35,6 +36,7 @@ import { useInterval } from '../../utils/useInterval.js';
35
36
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
36
37
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
37
38
  import { getStyledProps } from '../Box/styledProps/getStyledProps.js';
39
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
38
40
 
39
41
  var _excluded = ["autoPlay", "visibleItems", "showIndicators", "navigationButtonPosition", "children", "shouldAddStartEndSpacing", "carouselItemWidth", "scrollOverlayColor", "accessibilityLabel", "onChange", "indicatorVariant", "navigationButtonVariant", "carouselItemAlignment", "height", "defaultActiveSlide", "activeSlide"];
40
42
  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; }
@@ -215,7 +217,7 @@ var Carousel = function Carousel(_ref4) {
215
217
  height = _ref4.height,
216
218
  defaultActiveSlide = _ref4.defaultActiveSlide,
217
219
  activeSlideProp = _ref4.activeSlide,
218
- props = _objectWithoutProperties(_ref4, _excluded);
220
+ rest = _objectWithoutProperties(_ref4, _excluded);
219
221
  var _useTheme = useTheme(),
220
222
  platform = _useTheme.platform;
221
223
  var _React$useState = React__default.useState(0),
@@ -438,7 +440,7 @@ var Carousel = function Carousel(_ref4) {
438
440
  }, [carouselId, startEndMargin, isResponsive, _visibleItems, carouselItemWidth, totalNumberOfSlides, activeSlide, shouldAddStartEndSpacing]);
439
441
  return /*#__PURE__*/jsx(CarouselContext.Provider, {
440
442
  value: carouselContext,
441
- children: /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
443
+ children: /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
442
444
  name: MetaConstants.Carousel
443
445
  })), {}, {
444
446
  // stop autoplaying when any elements in carousel is in focus
@@ -470,7 +472,7 @@ var Carousel = function Carousel(_ref4) {
470
472
  alignItems: "center",
471
473
  flexDirection: "column",
472
474
  height: height
473
- }, getStyledProps(props)), {}, {
475
+ }, getStyledProps(rest)), makeAnalyticsAttribute(rest)), {}, {
474
476
  children: [/*#__PURE__*/jsxs(BaseBox, {
475
477
  width: "100%",
476
478
  position: "relative",
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.web.js","sources":["../../../../../../src/components/Carousel/Carousel.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */\n/* eslint-disable consistent-return */\n/* eslint-disable @typescript-eslint/restrict-plus-operands */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable react/jsx-no-useless-fragment */\nimport type { CSSObject } from 'styled-components';\nimport styled from 'styled-components';\nimport React from 'react';\nimport { Indicators } from './Indicators/Indicators';\nimport { NavigationButton } from './NavigationButton';\nimport type { CarouselProps } from './types';\nimport type { CarouselContextProps } from './CarouselContext';\nimport { CarouselContext } from './CarouselContext';\nimport { getCarouselItemId } from './utils';\nimport { CAROUSEL_AUTOPLAY_INTERVAL, componentIds } from './constants';\nimport getIn from '~utils/lodashButBetter/get';\nimport throttle from '~utils/lodashButBetter/throttle';\nimport debounce from '~utils/lodashButBetter/debounce';\nimport { Box } from '~components/Box';\nimport BaseBox from '~components/Box/BaseBox';\nimport { castWebType, makeMotionTime, useInterval } from '~utils';\nimport { useId } from '~utils/useId';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport { useTheme } from '~components/BladeProvider';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { useControllableState } from '~utils/useControllable';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { useDidUpdate } from '~utils/useDidUpdate';\n\ntype ControlsProp = Required<\n Pick<\n CarouselProps,\n 'indicatorVariant' | 'showIndicators' | 'navigationButtonVariant' | 'navigationButtonPosition'\n >\n> & {\n activeIndicator: number;\n totalSlides: number;\n onIndicatorButtonClick: (index: number) => void;\n onNextButtonClick: () => void;\n onPreviousButtonClick: () => void;\n};\n\nconst Controls = ({\n showIndicators,\n navigationButtonPosition,\n activeIndicator,\n totalSlides,\n onIndicatorButtonClick,\n onNextButtonClick,\n onPreviousButtonClick,\n indicatorVariant,\n navigationButtonVariant,\n}: ControlsProp): React.ReactElement => {\n if (navigationButtonPosition === 'bottom') {\n return (\n <Box marginTop=\"spacing.7\" display=\"flex\" alignItems=\"center\" gap=\"spacing.4\">\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={onPreviousButtonClick}\n />\n {showIndicators ? (\n <Indicators\n onClick={onIndicatorButtonClick}\n activeIndex={activeIndicator}\n totalItems={totalSlides}\n variant={indicatorVariant}\n />\n ) : null}\n <NavigationButton\n onClick={onNextButtonClick}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n </Box>\n );\n }\n\n if (showIndicators && navigationButtonPosition === 'side') {\n return (\n <Box marginTop=\"spacing.7\">\n <Indicators\n onClick={onIndicatorButtonClick}\n activeIndex={activeIndicator}\n totalItems={totalSlides}\n variant={indicatorVariant}\n />\n </Box>\n );\n }\n\n return <></>;\n};\n\nconst CarouselContainer = styled(BaseBox)<{\n showOverlay?: boolean;\n scrollOverlayColor: CarouselProps['scrollOverlayColor'];\n isScrollAtStart: boolean;\n isScrollAtEnd: boolean;\n}>(({ theme, showOverlay, scrollOverlayColor, isScrollAtStart, isScrollAtEnd }) => {\n const gradientStop1: string = getIn(theme.colors, scrollOverlayColor!);\n const gradientStop2 = 'hsla(0, 0%, 100%, 0)';\n\n const overlayCommonStyle: CSSObject = {\n content: \"''\",\n position: 'absolute',\n top: 0,\n width: '100px',\n height: '100%',\n transitionDuration: castWebType(makeMotionTime(theme.motion.duration.gentle)),\n transitionTimingFunction: castWebType(theme.motion.easing.standard.effective),\n transitionProperty: 'opacity',\n };\n\n return {\n width: '100%',\n height: '100%',\n overflowX: 'scroll',\n display: 'flex',\n flexWrap: 'nowrap',\n scrollSnapType: 'x mandatory',\n scrollSnapPointsY: `repeat(100%)`,\n msOverflowStyle: 'none' /* IE and Edge */,\n scrollbarWidth: 'none' /* Firefox */,\n /* Needed to work on iOS Safari */\n webkitOverflowScrolling: 'touch',\n msScrollSnapType: 'mandatory',\n scrollSnapPointsX: 'repeat(100%)',\n msScrollSnapPointsX: 'repeat(100%)',\n '&::-webkit-scrollbar': {\n display: 'none',\n },\n ...(showOverlay && {\n '&::before': {\n ...overlayCommonStyle,\n background: `linear-gradient(to right, ${gradientStop1}, ${gradientStop2})`,\n left: -1,\n opacity: isScrollAtStart ? 0 : 1,\n pointerEvents: 'none',\n },\n '&::after': {\n ...overlayCommonStyle,\n background: `linear-gradient(to left, ${gradientStop1}, ${gradientStop2})`,\n right: -1,\n opacity: isScrollAtEnd ? 0 : 1,\n pointerEvents: 'none',\n },\n }),\n };\n});\n\ntype CarouselBodyProps = {\n children: React.ReactNode;\n totalSlides: number;\n shouldAddStartEndSpacing?: boolean;\n idPrefix: string;\n scrollOverlayColor: CarouselProps['scrollOverlayColor'];\n isScrollAtStart: boolean;\n isScrollAtEnd: boolean;\n carouselItemAlignment: CarouselProps['carouselItemAlignment'];\n accessibilityLabel?: string;\n startEndMargin: number;\n};\n\nconst CarouselBody = React.forwardRef<HTMLDivElement, CarouselBodyProps>(\n (\n {\n children,\n totalSlides,\n shouldAddStartEndSpacing,\n idPrefix,\n scrollOverlayColor,\n isScrollAtStart,\n isScrollAtEnd,\n carouselItemAlignment,\n accessibilityLabel,\n startEndMargin,\n },\n ref,\n ) => {\n return (\n <CarouselContainer\n tabIndex={0}\n ref={ref}\n showOverlay={Boolean(scrollOverlayColor)}\n scrollOverlayColor={scrollOverlayColor}\n gap={{ base: 'spacing.4', m: 'spacing.5' }}\n isScrollAtStart={isScrollAtStart}\n isScrollAtEnd={isScrollAtEnd}\n alignItems={carouselItemAlignment}\n {...makeAccessible({\n role: 'group',\n roleDescription: 'carousel',\n label: accessibilityLabel,\n })}\n >\n {React.Children.map(children, (child, index) => {\n const shouldHaveStartSpacing = shouldAddStartEndSpacing && index === 0;\n const shouldHaveEndSpacing = shouldAddStartEndSpacing && index === totalSlides - 1;\n const carouselItemNode: React.ReactElement = React.cloneElement(\n child as React.ReactElement,\n {\n index,\n id: `${idPrefix}-carousel-item-${index}`,\n shouldHaveStartSpacing,\n shouldHaveEndSpacing,\n },\n );\n\n // Safari doesn't include the margin in the bounding box calculation\n // Thus have to add an additional box to the end of the carousel to ensure we can scroll past the last item\n // https://stackoverflow.com/questions/75509058/safari-does-not-include-margins-to-the-scroll-width\n if (shouldHaveEndSpacing) {\n return (\n <>\n {carouselItemNode}\n {<BaseBox minWidth={`${startEndMargin}px`} />}\n </>\n );\n }\n return carouselItemNode;\n })}\n </CarouselContainer>\n );\n },\n);\n\nconst Carousel = ({\n autoPlay,\n visibleItems = 1,\n showIndicators = true,\n navigationButtonPosition = 'bottom',\n children,\n shouldAddStartEndSpacing = false,\n carouselItemWidth,\n scrollOverlayColor,\n accessibilityLabel,\n onChange,\n indicatorVariant = 'gray',\n navigationButtonVariant = 'filled',\n carouselItemAlignment = 'start',\n height,\n defaultActiveSlide,\n activeSlide: activeSlideProp,\n ...props\n}: CarouselProps): React.ReactElement => {\n const { platform } = useTheme();\n const [activeIndicator, setActiveIndicator] = React.useState(0);\n const [activeSlide, setActiveSlide] = useControllableState({\n defaultValue: defaultActiveSlide ?? 0,\n value: activeSlideProp,\n onChange: (value) => {\n onChange?.(value);\n },\n });\n const [shouldPauseAutoplay, setShouldPauseAutoplay] = React.useState(false);\n const [startEndMargin, setStartEndMargin] = React.useState(0);\n const containerRef = React.useRef<HTMLDivElement>(null);\n const isMobile = platform === 'onMobile';\n const id = useId();\n const carouselId = `carousel-${id}`;\n\n useVerifyAllowedChildren({\n componentName: 'Carousel',\n allowedComponents: [componentIds.CarouselItem],\n children,\n });\n\n const [isScrollAtStart, setScrollStart] = React.useState(\n // on mobile we do not want to render the overlay\n isMobile ? true : !shouldAddStartEndSpacing,\n );\n const [isScrollAtEnd, setScrollEnd] = React.useState(isMobile);\n\n const isResponsive = visibleItems === 'autofit';\n let _visibleItems = visibleItems as 1 | 2 | 3;\n if (isMobile) {\n _visibleItems = 1;\n navigationButtonPosition = 'bottom';\n }\n if (isResponsive) {\n _visibleItems = 1;\n }\n\n // A special case where we hide the indicators when the carousel is responsive\n // Because indicators become useless since it's not aparent which carousel item is active\n // and how many carousel items are visible at a time\n if (isResponsive && !shouldAddStartEndSpacing && !isMobile) {\n showIndicators = false;\n }\n\n const isNavButtonsOnSide = !isResponsive && navigationButtonPosition === 'side';\n const shouldNavButtonsFloat = isResponsive && navigationButtonPosition === 'side';\n const totalNumberOfSlides = React.Children.count(children);\n const numberOfIndicators = Math.ceil(totalNumberOfSlides / _visibleItems);\n\n // hide next/prev button on reaching start/end when carousel is responsive\n // in non-responsive carousel we always show the next/prev buttons to allow looping\n const shouldShowPrevButton = isResponsive ? activeSlide !== 0 : true;\n const shouldShowNextButton = isResponsive ? activeSlide !== totalNumberOfSlides - 1 : true;\n\n // calculate the start/end margin so that we can\n // deduct that margin when scrolling to a carousel item with goToSlideIndex\n useIsomorphicLayoutEffect(() => {\n // Do not calculate if not needed\n if (!isResponsive && !shouldAddStartEndSpacing) return;\n if (!containerRef.current) return;\n\n const carouselItemId = getCarouselItemId(carouselId, 0);\n const carouselItem = containerRef.current.querySelector(carouselItemId);\n if (!carouselItem) return;\n\n const carouselItemLeft = carouselItem.getBoundingClientRect().left ?? 0;\n const carouselContainerLeft = containerRef.current.getBoundingClientRect().left ?? 0;\n\n setStartEndMargin(carouselItemLeft - carouselContainerLeft);\n }, [carouselId, isResponsive, shouldAddStartEndSpacing]);\n\n const scrollToSlide = (slideIndex: number, shouldAnimate = true) => {\n if (!containerRef.current) return;\n\n const carouselItemId = getCarouselItemId(carouselId, slideIndex * _visibleItems);\n const carouselItem = containerRef.current.querySelector(carouselItemId);\n if (!carouselItem) return;\n\n const carouselItemLeft =\n carouselItem.getBoundingClientRect().left -\n containerRef.current.getBoundingClientRect().left ?? 0;\n const left = containerRef.current.scrollLeft + carouselItemLeft;\n\n containerRef.current.scroll({\n left: left - startEndMargin,\n behavior: shouldAnimate ? 'smooth' : 'auto',\n });\n };\n\n const goToSlideIndex = (slideIndex: number) => {\n setActiveSlide(() => slideIndex);\n setActiveIndicator(slideIndex);\n };\n\n const goToNextSlide = () => {\n let slideIndex = activeSlide + 1;\n if (slideIndex >= numberOfIndicators) {\n slideIndex = 0;\n }\n\n // an edge case where if carousel is responsive\n // and shouldHaveStartEndSpacing is set to false\n // there can be a case where numberOfIndicators is set to 10 but\n // visually there is 3 or 4 items, in those cases we want to check if we reached the\n // end of the scroll container if so we wrap around\n if (containerRef.current) {\n const container = containerRef.current;\n const scrollLeft = container.scrollLeft;\n const scrollWidth = container.scrollWidth - container.offsetWidth;\n if (scrollLeft === scrollWidth) {\n slideIndex = 0;\n }\n }\n\n goToSlideIndex(slideIndex);\n };\n\n const goToPreviousSlide = () => {\n let slideIndex = activeSlide - 1;\n if (activeSlide <= 0) {\n slideIndex = numberOfIndicators - 1;\n }\n goToSlideIndex(slideIndex);\n };\n\n // Scroll overlay gradient show/hide based on if scrolled to start or end\n React.useEffect(() => {\n // if shouldAddStartEndSpacing is true, we don't need to hide/show the overlay based on the scroll position\n // because the gap is there so it won't overlap with the card anyway\n if (shouldAddStartEndSpacing) return;\n if (isMobile) return;\n\n const carouselContainer = containerRef.current;\n if (!carouselContainer) return;\n\n const handleScroll = throttle(() => {\n const scrollWidth = carouselContainer?.scrollWidth - carouselContainer.offsetWidth;\n setScrollStart(carouselContainer?.scrollLeft === 0);\n setScrollEnd(carouselContainer?.scrollLeft === scrollWidth);\n }, 500);\n\n carouselContainer.addEventListener('scroll', handleScroll);\n\n return () => {\n carouselContainer?.removeEventListener('scroll', handleScroll);\n };\n }, [isMobile, shouldAddStartEndSpacing]);\n\n // Sync the indicators with scroll\n React.useEffect(() => {\n const carouselContainer = containerRef.current;\n if (!carouselContainer) return;\n\n const handleScroll = debounce(() => {\n // carousel bounding box\n const carouselBB = carouselContainer.getBoundingClientRect();\n // By default we check the far left side of the screen\n let xOffset = 0.1;\n // when the carousel is responsive & has spacing\n // we want to check the center of the screen\n if (isResponsive && shouldAddStartEndSpacing) {\n xOffset = 0.5;\n }\n\n const pointX = carouselBB.left + carouselBB.width * xOffset;\n const pointY = carouselBB.top + carouselBB.height * 0.5;\n const element = document.elementFromPoint(pointX, pointY);\n const carouselItem = element?.closest('[data-slide-index]');\n if (!carouselItem) {\n return;\n }\n\n const slideIndex = Number(carouselItem?.getAttribute('data-slide-index'));\n const goTo = Math.ceil(slideIndex / _visibleItems);\n setActiveSlide(() => goTo);\n setActiveIndicator(goTo);\n }, 50);\n\n carouselContainer.addEventListener('scroll', handleScroll);\n\n return () => {\n carouselContainer?.removeEventListener('scroll', handleScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [_visibleItems, isMobile, isResponsive, shouldAddStartEndSpacing]);\n\n // auto play\n useInterval(\n () => {\n goToNextSlide();\n },\n {\n delay: CAROUSEL_AUTOPLAY_INTERVAL,\n // only enable if autoplay is true & user's intent isn't to interact with carousel\n enable: autoPlay && !shouldPauseAutoplay,\n },\n );\n\n // set initial active slide on mount\n useIsomorphicLayoutEffect(() => {\n if (!id) return;\n goToSlideIndex(activeSlide);\n scrollToSlide(activeSlide, false);\n }, [id]);\n\n // Scroll the carousel to the active slide\n useDidUpdate(() => {\n scrollToSlide(activeSlide);\n }, [activeSlide]);\n\n const carouselContext = React.useMemo<CarouselContextProps>(() => {\n return {\n isResponsive,\n visibleItems: _visibleItems,\n carouselItemWidth,\n carouselContainerRef: containerRef,\n setActiveIndicator,\n carouselId,\n totalNumberOfSlides,\n activeSlide,\n startEndMargin,\n shouldAddStartEndSpacing,\n };\n }, [\n carouselId,\n startEndMargin,\n isResponsive,\n _visibleItems,\n carouselItemWidth,\n totalNumberOfSlides,\n activeSlide,\n shouldAddStartEndSpacing,\n ]);\n\n return (\n <CarouselContext.Provider value={carouselContext}>\n <BaseBox\n {...metaAttribute({ name: MetaConstants.Carousel })}\n // stop autoplaying when any elements in carousel is in focus\n onFocus={(e: React.FocusEvent) => {\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShouldPauseAutoplay(true);\n }\n }}\n onBlur={(e: React.FocusEvent) => {\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShouldPauseAutoplay(false);\n }\n }}\n // stop autplay when user hover overs the carousel\n onMouseEnter={() => {\n setShouldPauseAutoplay(true);\n }}\n onMouseLeave={() => {\n setShouldPauseAutoplay(false);\n }}\n onTouchStart={() => {\n setShouldPauseAutoplay(true);\n }}\n onTouchEnd={() => {\n setShouldPauseAutoplay(false);\n }}\n display=\"flex\"\n alignItems=\"center\"\n flexDirection=\"column\"\n height={height}\n {...getStyledProps(props)}\n >\n <BaseBox\n width=\"100%\"\n position=\"relative\"\n display=\"flex\"\n alignItems=\"center\"\n gap=\"spacing.4\"\n flexDirection=\"row\"\n height=\"100%\"\n >\n {shouldShowPrevButton && shouldNavButtonsFloat ? (\n <BaseBox zIndex={2} position=\"absolute\" left=\"spacing.11\">\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={goToPreviousSlide}\n />\n </BaseBox>\n ) : null}\n {isNavButtonsOnSide ? (\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={goToPreviousSlide}\n />\n ) : null}\n <CarouselBody\n idPrefix={carouselId}\n startEndMargin={startEndMargin}\n totalSlides={totalNumberOfSlides}\n shouldAddStartEndSpacing={shouldAddStartEndSpacing}\n scrollOverlayColor={scrollOverlayColor}\n isScrollAtStart={isScrollAtStart}\n isScrollAtEnd={isScrollAtEnd}\n ref={containerRef}\n carouselItemAlignment={carouselItemAlignment}\n accessibilityLabel={accessibilityLabel}\n >\n {children}\n </CarouselBody>\n {shouldShowNextButton && shouldNavButtonsFloat ? (\n <BaseBox zIndex={2} position=\"absolute\" right=\"spacing.11\">\n <NavigationButton\n onClick={goToNextSlide}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n </BaseBox>\n ) : null}\n {isNavButtonsOnSide ? (\n <NavigationButton\n onClick={goToNextSlide}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n ) : null}\n </BaseBox>\n <Controls\n totalSlides={numberOfIndicators}\n activeIndicator={activeIndicator}\n showIndicators={showIndicators}\n navigationButtonPosition={navigationButtonPosition}\n onIndicatorButtonClick={goToSlideIndex}\n onNextButtonClick={goToNextSlide}\n onPreviousButtonClick={goToPreviousSlide}\n indicatorVariant={indicatorVariant}\n navigationButtonVariant={navigationButtonVariant}\n />\n </BaseBox>\n </CarouselContext.Provider>\n );\n};\n\nexport { Carousel };\n"],"names":["Controls","_ref","showIndicators","navigationButtonPosition","activeIndicator","totalSlides","onIndicatorButtonClick","onNextButtonClick","onPreviousButtonClick","indicatorVariant","navigationButtonVariant","_jsxs","Box","marginTop","display","alignItems","gap","children","_jsx","NavigationButton","type","variant","onClick","Indicators","activeIndex","totalItems","_Fragment","CarouselContainer","styled","BaseBox","withConfig","displayName","componentId","_ref2","theme","showOverlay","scrollOverlayColor","isScrollAtStart","isScrollAtEnd","gradientStop1","getIn","colors","gradientStop2","overlayCommonStyle","content","position","top","width","height","transitionDuration","castWebType","makeMotionTime","motion","duration","gentle","transitionTimingFunction","easing","standard","effective","transitionProperty","_objectSpread","overflowX","flexWrap","scrollSnapType","scrollSnapPointsY","msOverflowStyle","scrollbarWidth","webkitOverflowScrolling","msScrollSnapType","scrollSnapPointsX","msScrollSnapPointsX","background","concat","left","opacity","pointerEvents","right","CarouselBody","React","forwardRef","_ref3","ref","shouldAddStartEndSpacing","idPrefix","carouselItemAlignment","accessibilityLabel","startEndMargin","tabIndex","Boolean","base","m","makeAccessible","role","roleDescription","label","Children","map","child","index","shouldHaveStartSpacing","shouldHaveEndSpacing","carouselItemNode","cloneElement","id","minWidth","Carousel","_ref4","autoPlay","_ref4$visibleItems","visibleItems","_ref4$showIndicators","_ref4$navigationButto","_ref4$shouldAddStartE","carouselItemWidth","onChange","_ref4$indicatorVarian","_ref4$navigationButto2","_ref4$carouselItemAli","defaultActiveSlide","activeSlideProp","activeSlide","props","_objectWithoutProperties","_excluded","_useTheme","useTheme","platform","_React$useState","useState","_React$useState2","_slicedToArray","setActiveIndicator","_useControllableState","useControllableState","defaultValue","value","_useControllableState2","setActiveSlide","_React$useState3","_React$useState4","shouldPauseAutoplay","setShouldPauseAutoplay","_React$useState5","_React$useState6","setStartEndMargin","containerRef","useRef","isMobile","useId","carouselId","useVerifyAllowedChildren","componentName","allowedComponents","componentIds","CarouselItem","_React$useState7","_React$useState8","setScrollStart","_React$useState9","_React$useState10","setScrollEnd","isResponsive","_visibleItems","isNavButtonsOnSide","shouldNavButtonsFloat","totalNumberOfSlides","count","numberOfIndicators","Math","ceil","shouldShowPrevButton","shouldShowNextButton","useIsomorphicLayoutEffect","_carouselItem$getBoun","_containerRef$current","current","carouselItemId","getCarouselItemId","carouselItem","querySelector","carouselItemLeft","getBoundingClientRect","carouselContainerLeft","scrollToSlide","slideIndex","_ref5","shouldAnimate","arguments","length","undefined","scrollLeft","scroll","behavior","goToSlideIndex","goToNextSlide","container","scrollWidth","offsetWidth","goToPreviousSlide","useEffect","carouselContainer","handleScroll","throttle","addEventListener","removeEventListener","debounce","carouselBB","xOffset","pointX","pointY","element","document","elementFromPoint","closest","Number","getAttribute","goTo","useInterval","delay","CAROUSEL_AUTOPLAY_INTERVAL","enable","useDidUpdate","carouselContext","useMemo","carouselContainerRef","CarouselContext","Provider","metaAttribute","name","MetaConstants","onFocus","e","currentTarget","contains","relatedTarget","onBlur","onMouseEnter","onMouseLeave","onTouchStart","onTouchEnd","flexDirection","getStyledProps","zIndex"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAU0B;AAAA,EAAA,IATtCC,cAAc,GAAAD,IAAA,CAAdC,cAAc;IACdC,wBAAwB,GAAAF,IAAA,CAAxBE,wBAAwB;IACxBC,eAAe,GAAAH,IAAA,CAAfG,eAAe;IACfC,WAAW,GAAAJ,IAAA,CAAXI,WAAW;IACXC,sBAAsB,GAAAL,IAAA,CAAtBK,sBAAsB;IACtBC,iBAAiB,GAAAN,IAAA,CAAjBM,iBAAiB;IACjBC,qBAAqB,GAAAP,IAAA,CAArBO,qBAAqB;IACrBC,gBAAgB,GAAAR,IAAA,CAAhBQ,gBAAgB;IAChBC,uBAAuB,GAAAT,IAAA,CAAvBS,uBAAuB,CAAA;EAEvB,IAAIP,wBAAwB,KAAK,QAAQ,EAAE;IACzC,oBACEQ,IAAA,CAACC,GAAG,EAAA;AAACC,MAAAA,SAAS,EAAC,WAAW;AAACC,MAAAA,OAAO,EAAC,MAAM;AAACC,MAAAA,UAAU,EAAC,QAAQ;AAACC,MAAAA,GAAG,EAAC,WAAW;MAAAC,QAAA,EAAA,cAC3EC,GAAA,CAACC,gBAAgB,EAAA;AACfC,QAAAA,IAAI,EAAC,UAAU;AACfC,QAAAA,OAAO,EAAEX,uBAAwB;AACjCY,QAAAA,OAAO,EAAEd,qBAAAA;AAAsB,OAChC,CAAC,EACDN,cAAc,gBACbgB,GAAA,CAACK,UAAU,EAAA;AACTD,QAAAA,OAAO,EAAEhB,sBAAuB;AAChCkB,QAAAA,WAAW,EAAEpB,eAAgB;AAC7BqB,QAAAA,UAAU,EAAEpB,WAAY;AACxBgB,QAAAA,OAAO,EAAEZ,gBAAAA;AAAiB,OAC3B,CAAC,GACA,IAAI,eACRS,GAAA,CAACC,gBAAgB,EAAA;AACfG,QAAAA,OAAO,EAAEf,iBAAkB;AAC3Ba,QAAAA,IAAI,EAAC,MAAM;AACXC,QAAAA,OAAO,EAAEX,uBAAAA;AAAwB,OAClC,CAAC,CAAA;AAAA,KACC,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,IAAIR,cAAc,IAAIC,wBAAwB,KAAK,MAAM,EAAE;IACzD,oBACEe,GAAA,CAACN,GAAG,EAAA;AAACC,MAAAA,SAAS,EAAC,WAAW;MAAAI,QAAA,eACxBC,GAAA,CAACK,UAAU,EAAA;AACTD,QAAAA,OAAO,EAAEhB,sBAAuB;AAChCkB,QAAAA,WAAW,EAAEpB,eAAgB;AAC7BqB,QAAAA,UAAU,EAAEpB,WAAY;AACxBgB,QAAAA,OAAO,EAAEZ,gBAAAA;OACV,CAAA;AAAC,KACC,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,oBAAOS,GAAA,CAAAQ,QAAA,EAAA,EAAI,CAAC,CAAA;AACd,CAAC,CAAA;AAED,IAAMC,iBAAiB,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,gCAAA;EAAAC,WAAA,EAAA,UAAA;AAAA,CAKtC,CAAA,CAAA,UAAAC,KAAA,EAAgF;AAAA,EAAA,IAA7EC,KAAK,GAAAD,KAAA,CAALC,KAAK;IAAEC,WAAW,GAAAF,KAAA,CAAXE,WAAW;IAAEC,kBAAkB,GAAAH,KAAA,CAAlBG,kBAAkB;IAAEC,eAAe,GAAAJ,KAAA,CAAfI,eAAe;IAAEC,aAAa,GAAAL,KAAA,CAAbK,aAAa,CAAA;EAC1E,IAAMC,aAAqB,GAAGC,KAAK,CAACN,KAAK,CAACO,MAAM,EAAEL,kBAAmB,CAAC,CAAA;EACtE,IAAMM,aAAa,GAAG,sBAAsB,CAAA;AAE5C,EAAA,IAAMC,kBAA6B,GAAG;AACpCC,IAAAA,OAAO,EAAE,IAAI;AACbC,IAAAA,QAAQ,EAAE,UAAU;AACpBC,IAAAA,GAAG,EAAE,CAAC;AACNC,IAAAA,KAAK,EAAE,OAAO;AACdC,IAAAA,MAAM,EAAE,MAAM;AACdC,IAAAA,kBAAkB,EAAEC,WAAW,CAACC,cAAc,CAACjB,KAAK,CAACkB,MAAM,CAACC,QAAQ,CAACC,MAAM,CAAC,CAAC;AAC7EC,IAAAA,wBAAwB,EAAEL,WAAW,CAAChB,KAAK,CAACkB,MAAM,CAACI,MAAM,CAACC,QAAQ,CAACC,SAAS,CAAC;AAC7EC,IAAAA,kBAAkB,EAAE,SAAA;GACrB,CAAA;AAED,EAAA,OAAAC,aAAA,CAAA;AACEb,IAAAA,KAAK,EAAE,MAAM;AACbC,IAAAA,MAAM,EAAE,MAAM;AACda,IAAAA,SAAS,EAAE,QAAQ;AACnB/C,IAAAA,OAAO,EAAE,MAAM;AACfgD,IAAAA,QAAQ,EAAE,QAAQ;AAClBC,IAAAA,cAAc,EAAE,aAAa;AAC7BC,IAAAA,iBAAiB,EAAgB,cAAA;IACjCC,eAAe,EAAE,MAAM;IACvBC,cAAc,EAAE,MAAM;;AACtB;AACAC,IAAAA,uBAAuB,EAAE,OAAO;AAChCC,IAAAA,gBAAgB,EAAE,WAAW;AAC7BC,IAAAA,iBAAiB,EAAE,cAAc;AACjCC,IAAAA,mBAAmB,EAAE,cAAc;AACnC,IAAA,sBAAsB,EAAE;AACtBxD,MAAAA,OAAO,EAAE,MAAA;AACX,KAAA;AAAC,GAAA,EACGqB,WAAW,IAAI;AACjB,IAAA,WAAW,EAAAyB,aAAA,CAAAA,aAAA,KACNjB,kBAAkB,CAAA,EAAA,EAAA,EAAA;MACrB4B,UAAU,EAAA,4BAAA,CAAAC,MAAA,CAA+BjC,aAAa,QAAAiC,MAAA,CAAK9B,aAAa,EAAG,GAAA,CAAA;MAC3E+B,IAAI,EAAE,CAAC,CAAC;AACRC,MAAAA,OAAO,EAAErC,eAAe,GAAG,CAAC,GAAG,CAAC;AAChCsC,MAAAA,aAAa,EAAE,MAAA;KAChB,CAAA;AACD,IAAA,UAAU,EAAAf,aAAA,CAAAA,aAAA,KACLjB,kBAAkB,CAAA,EAAA,EAAA,EAAA;MACrB4B,UAAU,EAAA,2BAAA,CAAAC,MAAA,CAA8BjC,aAAa,QAAAiC,MAAA,CAAK9B,aAAa,EAAG,GAAA,CAAA;MAC1EkC,KAAK,EAAE,CAAC,CAAC;AACTF,MAAAA,OAAO,EAAEpC,aAAa,GAAG,CAAC,GAAG,CAAC;AAC9BqC,MAAAA,aAAa,EAAE,MAAA;AAAM,KAAA,CAAA;GAExB,CAAA,CAAA;AAEL,CAAC,CAAC,CAAA;AAeF,IAAME,YAAY,gBAAGC,cAAK,CAACC,UAAU,CACnC,UAAAC,KAAA,EAaEC,GAAG,EACA;AAAA,EAAA,IAZDhE,QAAQ,GAAA+D,KAAA,CAAR/D,QAAQ;IACRZ,WAAW,GAAA2E,KAAA,CAAX3E,WAAW;IACX6E,wBAAwB,GAAAF,KAAA,CAAxBE,wBAAwB;IACxBC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;IACR/C,kBAAkB,GAAA4C,KAAA,CAAlB5C,kBAAkB;IAClBC,eAAe,GAAA2C,KAAA,CAAf3C,eAAe;IACfC,aAAa,GAAA0C,KAAA,CAAb1C,aAAa;IACb8C,qBAAqB,GAAAJ,KAAA,CAArBI,qBAAqB;IACrBC,kBAAkB,GAAAL,KAAA,CAAlBK,kBAAkB;IAClBC,cAAc,GAAAN,KAAA,CAAdM,cAAc,CAAA;AAIhB,EAAA,oBACEpE,GAAA,CAACS,iBAAiB,EAAAiC,aAAA,CAAAA,aAAA,CAAA;AAChB2B,IAAAA,QAAQ,EAAE,CAAE;AACZN,IAAAA,GAAG,EAAEA,GAAI;AACT9C,IAAAA,WAAW,EAAEqD,OAAO,CAACpD,kBAAkB,CAAE;AACzCA,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCpB,IAAAA,GAAG,EAAE;AAAEyE,MAAAA,IAAI,EAAE,WAAW;AAAEC,MAAAA,CAAC,EAAE,WAAA;KAAc;AAC3CrD,IAAAA,eAAe,EAAEA,eAAgB;AACjCC,IAAAA,aAAa,EAAEA,aAAc;AAC7BvB,IAAAA,UAAU,EAAEqE,qBAAAA;AAAsB,GAAA,EAC9BO,cAAc,CAAC;AACjBC,IAAAA,IAAI,EAAE,OAAO;AACbC,IAAAA,eAAe,EAAE,UAAU;AAC3BC,IAAAA,KAAK,EAAET,kBAAAA;AACT,GAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AAAApE,IAAAA,QAAA,EAED6D,cAAK,CAACiB,QAAQ,CAACC,GAAG,CAAC/E,QAAQ,EAAE,UAACgF,KAAK,EAAEC,KAAK,EAAK;AAC9C,MAAA,IAAMC,sBAAsB,GAAGjB,wBAAwB,IAAIgB,KAAK,KAAK,CAAC,CAAA;MACtE,IAAME,oBAAoB,GAAGlB,wBAAwB,IAAIgB,KAAK,KAAK7F,WAAW,GAAG,CAAC,CAAA;AAClF,MAAA,IAAMgG,gBAAoC,gBAAGvB,cAAK,CAACwB,YAAY,CAC7DL,KAAK,EACL;AACEC,QAAAA,KAAK,EAALA,KAAK;QACLK,EAAE,EAAA,EAAA,CAAA/B,MAAA,CAAKW,QAAQ,qBAAAX,MAAA,CAAkB0B,KAAK,CAAE;AACxCC,QAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBC,QAAAA,oBAAoB,EAApBA,oBAAAA;AACF,OACF,CAAC,CAAA;;AAED;AACA;AACA;AACA,MAAA,IAAIA,oBAAoB,EAAE;QACxB,oBACEzF,IAAA,CAAAe,QAAA,EAAA;AAAAT,UAAAA,QAAA,EACGoF,CAAAA,gBAAgB,eAChBnF,GAAA,CAACW,OAAO,EAAA;YAAC2E,QAAQ,EAAA,EAAA,CAAAhC,MAAA,CAAKc,cAAc,EAAA,IAAA,CAAA;AAAK,WAAE,CAAC,CAAA;AAAA,SAC7C,CAAC,CAAA;AAEP,OAAA;AACA,MAAA,OAAOe,gBAAgB,CAAA;KACxB,CAAA;AAAC,GAAA,CACe,CAAC,CAAA;AAExB,CACF,CAAC,CAAA;AAED,IAAMI,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,KAAA,EAkB2B;AAAA,EAAA,IAjBvCC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAAC,kBAAA,GAAAF,KAAA,CACRG,YAAY;AAAZA,IAAAA,YAAY,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,kBAAA;IAAAE,oBAAA,GAAAJ,KAAA,CAChBxG,cAAc;AAAdA,IAAAA,cAAc,GAAA4G,oBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,oBAAA;IAAAC,qBAAA,GAAAL,KAAA,CACrBvG,wBAAwB;AAAxBA,IAAAA,wBAAwB,GAAA4G,qBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,qBAAA;IACnC9F,QAAQ,GAAAyF,KAAA,CAARzF,QAAQ;IAAA+F,qBAAA,GAAAN,KAAA,CACRxB,wBAAwB;AAAxBA,IAAAA,wBAAwB,GAAA8B,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;IAChCC,iBAAiB,GAAAP,KAAA,CAAjBO,iBAAiB;IACjB7E,kBAAkB,GAAAsE,KAAA,CAAlBtE,kBAAkB;IAClBiD,kBAAkB,GAAAqB,KAAA,CAAlBrB,kBAAkB;IAClB6B,SAAQ,GAAAR,KAAA,CAARQ,QAAQ;IAAAC,qBAAA,GAAAT,KAAA,CACRjG,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA0G,qBAAA,KAAG,KAAA,CAAA,GAAA,MAAM,GAAAA,qBAAA;IAAAC,sBAAA,GAAAV,KAAA,CACzBhG,uBAAuB;AAAvBA,IAAAA,uBAAuB,GAAA0G,sBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,sBAAA;IAAAC,qBAAA,GAAAX,KAAA,CAClCtB,qBAAqB;AAArBA,IAAAA,qBAAqB,GAAAiC,qBAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,qBAAA;IAC/BrE,MAAM,GAAA0D,KAAA,CAAN1D,MAAM;IACNsE,kBAAkB,GAAAZ,KAAA,CAAlBY,kBAAkB;IACLC,eAAe,GAAAb,KAAA,CAA5Bc,WAAW;AACRC,IAAAA,KAAK,GAAAC,wBAAA,CAAAhB,KAAA,EAAAiB,SAAA,CAAA,CAAA;AAER,EAAA,IAAAC,SAAA,GAAqBC,QAAQ,EAAE;IAAvBC,QAAQ,GAAAF,SAAA,CAARE,QAAQ,CAAA;AAChB,EAAA,IAAAC,eAAA,GAA8CjD,cAAK,CAACkD,QAAQ,CAAC,CAAC,CAAC;IAAAC,gBAAA,GAAAC,cAAA,CAAAH,eAAA,EAAA,CAAA,CAAA;AAAxD3H,IAAAA,eAAe,GAAA6H,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,kBAAkB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;EAC1C,IAAAG,qBAAA,GAAsCC,oBAAoB,CAAC;AACzDC,MAAAA,YAAY,EAAEhB,kBAAkB,KAAA,IAAA,IAAlBA,kBAAkB,KAAlBA,KAAAA,CAAAA,GAAAA,kBAAkB,GAAI,CAAC;AACrCiB,MAAAA,KAAK,EAAEhB,eAAe;AACtBL,MAAAA,QAAQ,EAAE,SAAAA,QAACqB,CAAAA,KAAK,EAAK;AACnBrB,QAAAA,SAAQ,aAARA,SAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAARA,SAAQ,CAAGqB,KAAK,CAAC,CAAA;AACnB,OAAA;AACF,KAAC,CAAC;IAAAC,sBAAA,GAAAN,cAAA,CAAAE,qBAAA,EAAA,CAAA,CAAA;AANKZ,IAAAA,WAAW,GAAAgB,sBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,cAAc,GAAAD,sBAAA,CAAA,CAAA,CAAA,CAAA;AAOlC,EAAA,IAAAE,gBAAA,GAAsD5D,cAAK,CAACkD,QAAQ,CAAC,KAAK,CAAC;IAAAW,gBAAA,GAAAT,cAAA,CAAAQ,gBAAA,EAAA,CAAA,CAAA;AAApEE,IAAAA,mBAAmB,GAAAD,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,sBAAsB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAG,gBAAA,GAA4ChE,cAAK,CAACkD,QAAQ,CAAC,CAAC,CAAC;IAAAe,gBAAA,GAAAb,cAAA,CAAAY,gBAAA,EAAA,CAAA,CAAA;AAAtDxD,IAAAA,cAAc,GAAAyD,gBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,iBAAiB,GAAAD,gBAAA,CAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAME,YAAY,GAAGnE,cAAK,CAACoE,MAAM,CAAiB,IAAI,CAAC,CAAA;AACvD,EAAA,IAAMC,QAAQ,GAAGrB,QAAQ,KAAK,UAAU,CAAA;AACxC,EAAA,IAAMvB,EAAE,GAAG6C,KAAK,EAAE,CAAA;AAClB,EAAA,IAAMC,UAAU,GAAA,WAAA,CAAA7E,MAAA,CAAe+B,EAAE,CAAE,CAAA;AAEnC+C,EAAAA,wBAAwB,CAAC;AACvBC,IAAAA,aAAa,EAAE,UAAU;AACzBC,IAAAA,iBAAiB,EAAE,CAACC,YAAY,CAACC,YAAY,CAAC;AAC9CzI,IAAAA,QAAQ,EAARA,QAAAA;AACF,GAAC,CAAC,CAAA;AAEF,EAAA,IAAA0I,gBAAA,GAA0C7E,cAAK,CAACkD,QAAQ;AACtD;AACAmB,IAAAA,QAAQ,GAAG,IAAI,GAAG,CAACjE,wBACrB,CAAC;IAAA0E,gBAAA,GAAA1B,cAAA,CAAAyB,gBAAA,EAAA,CAAA,CAAA;AAHMtH,IAAAA,eAAe,GAAAuH,gBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,cAAc,GAAAD,gBAAA,CAAA,CAAA,CAAA,CAAA;AAItC,EAAA,IAAAE,gBAAA,GAAsChF,cAAK,CAACkD,QAAQ,CAACmB,QAAQ,CAAC;IAAAY,iBAAA,GAAA7B,cAAA,CAAA4B,gBAAA,EAAA,CAAA,CAAA;AAAvDxH,IAAAA,aAAa,GAAAyH,iBAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,YAAY,GAAAD,iBAAA,CAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAME,YAAY,GAAGpD,YAAY,KAAK,SAAS,CAAA;EAC/C,IAAIqD,aAAa,GAAGrD,YAAyB,CAAA;AAC7C,EAAA,IAAIsC,QAAQ,EAAE;AACZe,IAAAA,aAAa,GAAG,CAAC,CAAA;AACjB/J,IAAAA,wBAAwB,GAAG,QAAQ,CAAA;AACrC,GAAA;AACA,EAAA,IAAI8J,YAAY,EAAE;AAChBC,IAAAA,aAAa,GAAG,CAAC,CAAA;AACnB,GAAA;;AAEA;AACA;AACA;AACA,EAAA,IAAID,YAAY,IAAI,CAAC/E,wBAAwB,IAAI,CAACiE,QAAQ,EAAE;AAC1DjJ,IAAAA,cAAc,GAAG,KAAK,CAAA;AACxB,GAAA;AAEA,EAAA,IAAMiK,kBAAkB,GAAG,CAACF,YAAY,IAAI9J,wBAAwB,KAAK,MAAM,CAAA;AAC/E,EAAA,IAAMiK,qBAAqB,GAAGH,YAAY,IAAI9J,wBAAwB,KAAK,MAAM,CAAA;EACjF,IAAMkK,mBAAmB,GAAGvF,cAAK,CAACiB,QAAQ,CAACuE,KAAK,CAACrJ,QAAQ,CAAC,CAAA;EAC1D,IAAMsJ,kBAAkB,GAAGC,IAAI,CAACC,IAAI,CAACJ,mBAAmB,GAAGH,aAAa,CAAC,CAAA;;AAEzE;AACA;EACA,IAAMQ,oBAAoB,GAAGT,YAAY,GAAGzC,WAAW,KAAK,CAAC,GAAG,IAAI,CAAA;EACpE,IAAMmD,oBAAoB,GAAGV,YAAY,GAAGzC,WAAW,KAAK6C,mBAAmB,GAAG,CAAC,GAAG,IAAI,CAAA;;AAE1F;AACA;AACAO,EAAAA,yBAAyB,CAAC,YAAM;IAAA,IAAAC,qBAAA,EAAAC,qBAAA,CAAA;AAC9B;AACA,IAAA,IAAI,CAACb,YAAY,IAAI,CAAC/E,wBAAwB,EAAE,OAAA;AAChD,IAAA,IAAI,CAAC+D,YAAY,CAAC8B,OAAO,EAAE,OAAA;AAE3B,IAAA,IAAMC,cAAc,GAAGC,iBAAiB,CAAC5B,UAAU,EAAE,CAAC,CAAC,CAAA;IACvD,IAAM6B,YAAY,GAAGjC,YAAY,CAAC8B,OAAO,CAACI,aAAa,CAACH,cAAc,CAAC,CAAA;IACvE,IAAI,CAACE,YAAY,EAAE,OAAA;AAEnB,IAAA,IAAME,gBAAgB,GAAAP,CAAAA,qBAAA,GAAGK,YAAY,CAACG,qBAAqB,EAAE,CAAC5G,IAAI,MAAAoG,IAAAA,IAAAA,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAI,CAAC,CAAA;AACvE,IAAA,IAAMS,qBAAqB,GAAAR,CAAAA,qBAAA,GAAG7B,YAAY,CAAC8B,OAAO,CAACM,qBAAqB,EAAE,CAAC5G,IAAI,MAAA,IAAA,IAAAqG,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAI,CAAC,CAAA;AAEpF9B,IAAAA,iBAAiB,CAACoC,gBAAgB,GAAGE,qBAAqB,CAAC,CAAA;GAC5D,EAAE,CAACjC,UAAU,EAAEY,YAAY,EAAE/E,wBAAwB,CAAC,CAAC,CAAA;AAExD,EAAA,IAAMqG,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,UAAkB,EAA2B;AAAA,IAAA,IAAAC,KAAA,CAAA;AAAA,IAAA,IAAzBC,aAAa,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,IAAI,CAAA;AAC7D,IAAA,IAAI,CAAC1C,YAAY,CAAC8B,OAAO,EAAE,OAAA;IAE3B,IAAMC,cAAc,GAAGC,iBAAiB,CAAC5B,UAAU,EAAEmC,UAAU,GAAGtB,aAAa,CAAC,CAAA;IAChF,IAAMgB,YAAY,GAAGjC,YAAY,CAAC8B,OAAO,CAACI,aAAa,CAACH,cAAc,CAAC,CAAA;IACvE,IAAI,CAACE,YAAY,EAAE,OAAA;IAEnB,IAAME,gBAAgB,GAAAK,CAAAA,KAAA,GACpBP,YAAY,CAACG,qBAAqB,EAAE,CAAC5G,IAAI,GACvCwE,YAAY,CAAC8B,OAAO,CAACM,qBAAqB,EAAE,CAAC5G,IAAI,MAAA,IAAA,IAAAgH,KAAA,KAAA,KAAA,CAAA,GAAAA,KAAA,GAAI,CAAC,CAAA;IAC1D,IAAMhH,IAAI,GAAGwE,YAAY,CAAC8B,OAAO,CAACe,UAAU,GAAGV,gBAAgB,CAAA;AAE/DnC,IAAAA,YAAY,CAAC8B,OAAO,CAACgB,MAAM,CAAC;MAC1BtH,IAAI,EAAEA,IAAI,GAAGa,cAAc;AAC3B0G,MAAAA,QAAQ,EAAEN,aAAa,GAAG,QAAQ,GAAG,MAAA;AACvC,KAAC,CAAC,CAAA;GACH,CAAA;AAED,EAAA,IAAMO,cAAc,GAAG,SAAjBA,cAAcA,CAAIT,UAAkB,EAAK;AAC7C/C,IAAAA,cAAc,CAAC,YAAA;AAAA,MAAA,OAAM+C,UAAU,CAAA;KAAC,CAAA,CAAA;IAChCrD,kBAAkB,CAACqD,UAAU,CAAC,CAAA;GAC/B,CAAA;AAED,EAAA,IAAMU,aAAa,GAAG,SAAhBA,aAAaA,GAAS;AAC1B,IAAA,IAAIV,UAAU,GAAGhE,WAAW,GAAG,CAAC,CAAA;IAChC,IAAIgE,UAAU,IAAIjB,kBAAkB,EAAE;AACpCiB,MAAAA,UAAU,GAAG,CAAC,CAAA;AAChB,KAAA;;AAEA;AACA;AACA;AACA;AACA;IACA,IAAIvC,YAAY,CAAC8B,OAAO,EAAE;AACxB,MAAA,IAAMoB,SAAS,GAAGlD,YAAY,CAAC8B,OAAO,CAAA;AACtC,MAAA,IAAMe,UAAU,GAAGK,SAAS,CAACL,UAAU,CAAA;MACvC,IAAMM,WAAW,GAAGD,SAAS,CAACC,WAAW,GAAGD,SAAS,CAACE,WAAW,CAAA;MACjE,IAAIP,UAAU,KAAKM,WAAW,EAAE;AAC9BZ,QAAAA,UAAU,GAAG,CAAC,CAAA;AAChB,OAAA;AACF,KAAA;IAEAS,cAAc,CAACT,UAAU,CAAC,CAAA;GAC3B,CAAA;AAED,EAAA,IAAMc,iBAAiB,GAAG,SAApBA,iBAAiBA,GAAS;AAC9B,IAAA,IAAId,UAAU,GAAGhE,WAAW,GAAG,CAAC,CAAA;IAChC,IAAIA,WAAW,IAAI,CAAC,EAAE;MACpBgE,UAAU,GAAGjB,kBAAkB,GAAG,CAAC,CAAA;AACrC,KAAA;IACA0B,cAAc,CAACT,UAAU,CAAC,CAAA;GAC3B,CAAA;;AAED;EACA1G,cAAK,CAACyH,SAAS,CAAC,YAAM;AACpB;AACA;AACA,IAAA,IAAIrH,wBAAwB,EAAE,OAAA;AAC9B,IAAA,IAAIiE,QAAQ,EAAE,OAAA;AAEd,IAAA,IAAMqD,iBAAiB,GAAGvD,YAAY,CAAC8B,OAAO,CAAA;IAC9C,IAAI,CAACyB,iBAAiB,EAAE,OAAA;AAExB,IAAA,IAAMC,YAAY,GAAGC,QAAQ,CAAC,YAAM;AAClC,MAAA,IAAMN,WAAW,GAAG,CAAAI,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAEJ,WAAW,IAAGI,iBAAiB,CAACH,WAAW,CAAA;MAClFxC,cAAc,CAAC,CAAA2C,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAEV,UAAU,MAAK,CAAC,CAAC,CAAA;MACnD9B,YAAY,CAAC,CAAAwC,iBAAiB,KAAjBA,IAAAA,IAAAA,iBAAiB,KAAjBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAiB,CAAEV,UAAU,MAAKM,WAAW,CAAC,CAAA;KAC5D,EAAE,GAAG,CAAC,CAAA;AAEPI,IAAAA,iBAAiB,CAACG,gBAAgB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAE1D,IAAA,OAAO,YAAM;MACXD,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,iBAAiB,CAAEI,mBAAmB,CAAC,QAAQ,EAAEH,YAAY,CAAC,CAAA;KAC/D,CAAA;AACH,GAAC,EAAE,CAACtD,QAAQ,EAAEjE,wBAAwB,CAAC,CAAC,CAAA;;AAExC;EACAJ,cAAK,CAACyH,SAAS,CAAC,YAAM;AACpB,IAAA,IAAMC,iBAAiB,GAAGvD,YAAY,CAAC8B,OAAO,CAAA;IAC9C,IAAI,CAACyB,iBAAiB,EAAE,OAAA;AAExB,IAAA,IAAMC,YAAY,GAAGI,QAAQ,CAAC,YAAM;AAClC;AACA,MAAA,IAAMC,UAAU,GAAGN,iBAAiB,CAACnB,qBAAqB,EAAE,CAAA;AAC5D;MACA,IAAI0B,OAAO,GAAG,GAAG,CAAA;AACjB;AACA;MACA,IAAI9C,YAAY,IAAI/E,wBAAwB,EAAE;AAC5C6H,QAAAA,OAAO,GAAG,GAAG,CAAA;AACf,OAAA;MAEA,IAAMC,MAAM,GAAGF,UAAU,CAACrI,IAAI,GAAGqI,UAAU,CAAC/J,KAAK,GAAGgK,OAAO,CAAA;MAC3D,IAAME,MAAM,GAAGH,UAAU,CAAChK,GAAG,GAAGgK,UAAU,CAAC9J,MAAM,GAAG,GAAG,CAAA;MACvD,IAAMkK,OAAO,GAAGC,QAAQ,CAACC,gBAAgB,CAACJ,MAAM,EAAEC,MAAM,CAAC,CAAA;MACzD,IAAM/B,YAAY,GAAGgC,OAAO,KAAPA,IAAAA,IAAAA,OAAO,KAAPA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,OAAO,CAAEG,OAAO,CAAC,oBAAoB,CAAC,CAAA;MAC3D,IAAI,CAACnC,YAAY,EAAE;AACjB,QAAA,OAAA;AACF,OAAA;AAEA,MAAA,IAAMM,UAAU,GAAG8B,MAAM,CAACpC,YAAY,KAAZA,IAAAA,IAAAA,YAAY,KAAZA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAY,CAAEqC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAA;MACzE,IAAMC,IAAI,GAAGhD,IAAI,CAACC,IAAI,CAACe,UAAU,GAAGtB,aAAa,CAAC,CAAA;AAClDzB,MAAAA,cAAc,CAAC,YAAA;AAAA,QAAA,OAAM+E,IAAI,CAAA;OAAC,CAAA,CAAA;MAC1BrF,kBAAkB,CAACqF,IAAI,CAAC,CAAA;KACzB,EAAE,EAAE,CAAC,CAAA;AAENhB,IAAAA,iBAAiB,CAACG,gBAAgB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAE1D,IAAA,OAAO,YAAM;MACXD,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,iBAAiB,CAAEI,mBAAmB,CAAC,QAAQ,EAAEH,YAAY,CAAC,CAAA;KAC/D,CAAA;AACD;GACD,EAAE,CAACvC,aAAa,EAAEf,QAAQ,EAAEc,YAAY,EAAE/E,wBAAwB,CAAC,CAAC,CAAA;;AAErE;AACAuI,EAAAA,WAAW,CACT,YAAM;AACJvB,IAAAA,aAAa,EAAE,CAAA;AACjB,GAAC,EACD;AACEwB,IAAAA,KAAK,EAAEC,0BAA0B;AACjC;IACAC,MAAM,EAAEjH,QAAQ,IAAI,CAACiC,mBAAAA;AACvB,GACF,CAAC,CAAA;;AAED;AACAgC,EAAAA,yBAAyB,CAAC,YAAM;IAC9B,IAAI,CAACrE,EAAE,EAAE,OAAA;IACT0F,cAAc,CAACzE,WAAW,CAAC,CAAA;AAC3B+D,IAAAA,aAAa,CAAC/D,WAAW,EAAE,KAAK,CAAC,CAAA;AACnC,GAAC,EAAE,CAACjB,EAAE,CAAC,CAAC,CAAA;;AAER;AACAsH,EAAAA,YAAY,CAAC,YAAM;IACjBtC,aAAa,CAAC/D,WAAW,CAAC,CAAA;AAC5B,GAAC,EAAE,CAACA,WAAW,CAAC,CAAC,CAAA;AAEjB,EAAA,IAAMsG,eAAe,GAAGhJ,cAAK,CAACiJ,OAAO,CAAuB,YAAM;IAChE,OAAO;AACL9D,MAAAA,YAAY,EAAZA,YAAY;AACZpD,MAAAA,YAAY,EAAEqD,aAAa;AAC3BjD,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjB+G,MAAAA,oBAAoB,EAAE/E,YAAY;AAClCd,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBkB,MAAAA,UAAU,EAAVA,UAAU;AACVgB,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnB7C,MAAAA,WAAW,EAAXA,WAAW;AACXlC,MAAAA,cAAc,EAAdA,cAAc;AACdJ,MAAAA,wBAAwB,EAAxBA,wBAAAA;KACD,CAAA;AACH,GAAC,EAAE,CACDmE,UAAU,EACV/D,cAAc,EACd2E,YAAY,EACZC,aAAa,EACbjD,iBAAiB,EACjBoD,mBAAmB,EACnB7C,WAAW,EACXtC,wBAAwB,CACzB,CAAC,CAAA;AAEF,EAAA,oBACEhE,GAAA,CAAC+M,eAAe,CAACC,QAAQ,EAAA;AAAC3F,IAAAA,KAAK,EAAEuF,eAAgB;AAAA7M,IAAAA,QAAA,eAC/CN,IAAA,CAACkB,OAAO,EAAA+B,aAAA,CAAAA,aAAA,CAAAA,aAAA,CACFuK,EAAAA,EAAAA,aAAa,CAAC;MAAEC,IAAI,EAAEC,aAAa,CAAC5H,QAAAA;AAAS,KAAC,CAAC,CAAA,EAAA,EAAA,EAAA;AACnD;AACA6H,MAAAA,OAAO,EAAE,SAAAA,OAACC,CAAAA,CAAmB,EAAK;QAChC,IAAI,CAACA,CAAC,CAACC,aAAa,CAACC,QAAQ,CAACF,CAAC,CAACG,aAAa,CAAC,EAAE;UAC9C7F,sBAAsB,CAAC,IAAI,CAAC,CAAA;AAC9B,SAAA;OACA;AACF8F,MAAAA,MAAM,EAAE,SAAAA,MAACJ,CAAAA,CAAmB,EAAK;QAC/B,IAAI,CAACA,CAAC,CAACC,aAAa,CAACC,QAAQ,CAACF,CAAC,CAACG,aAAa,CAAC,EAAE;UAC9C7F,sBAAsB,CAAC,KAAK,CAAC,CAAA;AAC/B,SAAA;AACF,OAAA;AACA;AAAA;MACA+F,YAAY,EAAE,SAAAA,YAAAA,GAAM;QAClB/F,sBAAsB,CAAC,IAAI,CAAC,CAAA;OAC5B;MACFgG,YAAY,EAAE,SAAAA,YAAAA,GAAM;QAClBhG,sBAAsB,CAAC,KAAK,CAAC,CAAA;OAC7B;MACFiG,YAAY,EAAE,SAAAA,YAAAA,GAAM;QAClBjG,sBAAsB,CAAC,IAAI,CAAC,CAAA;OAC5B;MACFkG,UAAU,EAAE,SAAAA,UAAAA,GAAM;QAChBlG,sBAAsB,CAAC,KAAK,CAAC,CAAA;OAC7B;AACF/H,MAAAA,OAAO,EAAC,MAAM;AACdC,MAAAA,UAAU,EAAC,QAAQ;AACnBiO,MAAAA,aAAa,EAAC,QAAQ;AACtBhM,MAAAA,MAAM,EAAEA,MAAAA;KACJiM,EAAAA,cAAc,CAACxH,KAAK,CAAC,CAAA,EAAA,EAAA,EAAA;MAAAxG,QAAA,EAAA,cAEzBN,IAAA,CAACkB,OAAO,EAAA;AACNkB,QAAAA,KAAK,EAAC,MAAM;AACZF,QAAAA,QAAQ,EAAC,UAAU;AACnB/B,QAAAA,OAAO,EAAC,MAAM;AACdC,QAAAA,UAAU,EAAC,QAAQ;AACnBC,QAAAA,GAAG,EAAC,WAAW;AACfgO,QAAAA,aAAa,EAAC,KAAK;AACnBhM,QAAAA,MAAM,EAAC,MAAM;AAAA/B,QAAAA,QAAA,GAEZyJ,oBAAoB,IAAIN,qBAAqB,gBAC5ClJ,GAAA,CAACW,OAAO,EAAA;AAACqN,UAAAA,MAAM,EAAE,CAAE;AAACrM,UAAAA,QAAQ,EAAC,UAAU;AAAC4B,UAAAA,IAAI,EAAC,YAAY;UAAAxD,QAAA,eACvDC,GAAA,CAACC,gBAAgB,EAAA;AACfC,YAAAA,IAAI,EAAC,UAAU;AACfC,YAAAA,OAAO,EAAEX,uBAAwB;AACjCY,YAAAA,OAAO,EAAEgL,iBAAAA;WACV,CAAA;SACM,CAAC,GACR,IAAI,EACPnC,kBAAkB,gBACjBjJ,GAAA,CAACC,gBAAgB,EAAA;AACfC,UAAAA,IAAI,EAAC,UAAU;AACfC,UAAAA,OAAO,EAAEX,uBAAwB;AACjCY,UAAAA,OAAO,EAAEgL,iBAAAA;AAAkB,SAC5B,CAAC,GACA,IAAI,eACRpL,GAAA,CAAC2D,YAAY,EAAA;AACXM,UAAAA,QAAQ,EAAEkE,UAAW;AACrB/D,UAAAA,cAAc,EAAEA,cAAe;AAC/BjF,UAAAA,WAAW,EAAEgK,mBAAoB;AACjCnF,UAAAA,wBAAwB,EAAEA,wBAAyB;AACnD9C,UAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,UAAAA,eAAe,EAAEA,eAAgB;AACjCC,UAAAA,aAAa,EAAEA,aAAc;AAC7B2C,UAAAA,GAAG,EAAEgE,YAAa;AAClB7D,UAAAA,qBAAqB,EAAEA,qBAAsB;AAC7CC,UAAAA,kBAAkB,EAAEA,kBAAmB;AAAApE,UAAAA,QAAA,EAEtCA,QAAAA;SACW,CAAC,EACd0J,oBAAoB,IAAIP,qBAAqB,gBAC5ClJ,GAAA,CAACW,OAAO,EAAA;AAACqN,UAAAA,MAAM,EAAE,CAAE;AAACrM,UAAAA,QAAQ,EAAC,UAAU;AAAC+B,UAAAA,KAAK,EAAC,YAAY;UAAA3D,QAAA,eACxDC,GAAA,CAACC,gBAAgB,EAAA;AACfG,YAAAA,OAAO,EAAE4K,aAAc;AACvB9K,YAAAA,IAAI,EAAC,MAAM;AACXC,YAAAA,OAAO,EAAEX,uBAAAA;WACV,CAAA;SACM,CAAC,GACR,IAAI,EACPyJ,kBAAkB,gBACjBjJ,GAAA,CAACC,gBAAgB,EAAA;AACfG,UAAAA,OAAO,EAAE4K,aAAc;AACvB9K,UAAAA,IAAI,EAAC,MAAM;AACXC,UAAAA,OAAO,EAAEX,uBAAAA;SACV,CAAC,GACA,IAAI,CAAA;AAAA,OACD,CAAC,eACVQ,GAAA,CAAClB,QAAQ,EAAA;AACPK,QAAAA,WAAW,EAAEkK,kBAAmB;AAChCnK,QAAAA,eAAe,EAAEA,eAAgB;AACjCF,QAAAA,cAAc,EAAEA,cAAe;AAC/BC,QAAAA,wBAAwB,EAAEA,wBAAyB;AACnDG,QAAAA,sBAAsB,EAAE2L,cAAe;AACvC1L,QAAAA,iBAAiB,EAAE2L,aAAc;AACjC1L,QAAAA,qBAAqB,EAAE8L,iBAAkB;AACzC7L,QAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,QAAAA,uBAAuB,EAAEA,uBAAAA;AAAwB,OAClD,CAAC,CAAA;KACK,CAAA,CAAA;AAAC,GACc,CAAC,CAAA;AAE/B;;;;"}
1
+ {"version":3,"file":"Carousel.web.js","sources":["../../../../../../src/components/Carousel/Carousel.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */\n/* eslint-disable consistent-return */\n/* eslint-disable @typescript-eslint/restrict-plus-operands */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\n/* eslint-disable react/jsx-no-useless-fragment */\nimport type { CSSObject } from 'styled-components';\nimport styled from 'styled-components';\nimport React from 'react';\nimport { Indicators } from './Indicators/Indicators';\nimport { NavigationButton } from './NavigationButton';\nimport type { CarouselProps } from './types';\nimport type { CarouselContextProps } from './CarouselContext';\nimport { CarouselContext } from './CarouselContext';\nimport { getCarouselItemId } from './utils';\nimport { CAROUSEL_AUTOPLAY_INTERVAL, componentIds } from './constants';\nimport getIn from '~utils/lodashButBetter/get';\nimport throttle from '~utils/lodashButBetter/throttle';\nimport debounce from '~utils/lodashButBetter/debounce';\nimport { Box } from '~components/Box';\nimport BaseBox from '~components/Box/BaseBox';\nimport { castWebType, makeMotionTime, useInterval } from '~utils';\nimport { useId } from '~utils/useId';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren/useVerifyAllowedChildren';\nimport { useTheme } from '~components/BladeProvider';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport { useControllableState } from '~utils/useControllable';\nimport { useIsomorphicLayoutEffect } from '~utils/useIsomorphicLayoutEffect';\nimport { useDidUpdate } from '~utils/useDidUpdate';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype ControlsProp = Required<\n Pick<\n CarouselProps,\n 'indicatorVariant' | 'showIndicators' | 'navigationButtonVariant' | 'navigationButtonPosition'\n >\n> & {\n activeIndicator: number;\n totalSlides: number;\n onIndicatorButtonClick: (index: number) => void;\n onNextButtonClick: () => void;\n onPreviousButtonClick: () => void;\n};\n\nconst Controls = ({\n showIndicators,\n navigationButtonPosition,\n activeIndicator,\n totalSlides,\n onIndicatorButtonClick,\n onNextButtonClick,\n onPreviousButtonClick,\n indicatorVariant,\n navigationButtonVariant,\n}: ControlsProp): React.ReactElement => {\n if (navigationButtonPosition === 'bottom') {\n return (\n <Box marginTop=\"spacing.7\" display=\"flex\" alignItems=\"center\" gap=\"spacing.4\">\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={onPreviousButtonClick}\n />\n {showIndicators ? (\n <Indicators\n onClick={onIndicatorButtonClick}\n activeIndex={activeIndicator}\n totalItems={totalSlides}\n variant={indicatorVariant}\n />\n ) : null}\n <NavigationButton\n onClick={onNextButtonClick}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n </Box>\n );\n }\n\n if (showIndicators && navigationButtonPosition === 'side') {\n return (\n <Box marginTop=\"spacing.7\">\n <Indicators\n onClick={onIndicatorButtonClick}\n activeIndex={activeIndicator}\n totalItems={totalSlides}\n variant={indicatorVariant}\n />\n </Box>\n );\n }\n\n return <></>;\n};\n\nconst CarouselContainer = styled(BaseBox)<{\n showOverlay?: boolean;\n scrollOverlayColor: CarouselProps['scrollOverlayColor'];\n isScrollAtStart: boolean;\n isScrollAtEnd: boolean;\n}>(({ theme, showOverlay, scrollOverlayColor, isScrollAtStart, isScrollAtEnd }) => {\n const gradientStop1: string = getIn(theme.colors, scrollOverlayColor!);\n const gradientStop2 = 'hsla(0, 0%, 100%, 0)';\n\n const overlayCommonStyle: CSSObject = {\n content: \"''\",\n position: 'absolute',\n top: 0,\n width: '100px',\n height: '100%',\n transitionDuration: castWebType(makeMotionTime(theme.motion.duration.gentle)),\n transitionTimingFunction: castWebType(theme.motion.easing.standard.effective),\n transitionProperty: 'opacity',\n };\n\n return {\n width: '100%',\n height: '100%',\n overflowX: 'scroll',\n display: 'flex',\n flexWrap: 'nowrap',\n scrollSnapType: 'x mandatory',\n scrollSnapPointsY: `repeat(100%)`,\n msOverflowStyle: 'none' /* IE and Edge */,\n scrollbarWidth: 'none' /* Firefox */,\n /* Needed to work on iOS Safari */\n webkitOverflowScrolling: 'touch',\n msScrollSnapType: 'mandatory',\n scrollSnapPointsX: 'repeat(100%)',\n msScrollSnapPointsX: 'repeat(100%)',\n '&::-webkit-scrollbar': {\n display: 'none',\n },\n ...(showOverlay && {\n '&::before': {\n ...overlayCommonStyle,\n background: `linear-gradient(to right, ${gradientStop1}, ${gradientStop2})`,\n left: -1,\n opacity: isScrollAtStart ? 0 : 1,\n pointerEvents: 'none',\n },\n '&::after': {\n ...overlayCommonStyle,\n background: `linear-gradient(to left, ${gradientStop1}, ${gradientStop2})`,\n right: -1,\n opacity: isScrollAtEnd ? 0 : 1,\n pointerEvents: 'none',\n },\n }),\n };\n});\n\ntype CarouselBodyProps = {\n children: React.ReactNode;\n totalSlides: number;\n shouldAddStartEndSpacing?: boolean;\n idPrefix: string;\n scrollOverlayColor: CarouselProps['scrollOverlayColor'];\n isScrollAtStart: boolean;\n isScrollAtEnd: boolean;\n carouselItemAlignment: CarouselProps['carouselItemAlignment'];\n accessibilityLabel?: string;\n startEndMargin: number;\n};\n\nconst CarouselBody = React.forwardRef<HTMLDivElement, CarouselBodyProps>(\n (\n {\n children,\n totalSlides,\n shouldAddStartEndSpacing,\n idPrefix,\n scrollOverlayColor,\n isScrollAtStart,\n isScrollAtEnd,\n carouselItemAlignment,\n accessibilityLabel,\n startEndMargin,\n },\n ref,\n ) => {\n return (\n <CarouselContainer\n tabIndex={0}\n ref={ref}\n showOverlay={Boolean(scrollOverlayColor)}\n scrollOverlayColor={scrollOverlayColor}\n gap={{ base: 'spacing.4', m: 'spacing.5' }}\n isScrollAtStart={isScrollAtStart}\n isScrollAtEnd={isScrollAtEnd}\n alignItems={carouselItemAlignment}\n {...makeAccessible({\n role: 'group',\n roleDescription: 'carousel',\n label: accessibilityLabel,\n })}\n >\n {React.Children.map(children, (child, index) => {\n const shouldHaveStartSpacing = shouldAddStartEndSpacing && index === 0;\n const shouldHaveEndSpacing = shouldAddStartEndSpacing && index === totalSlides - 1;\n const carouselItemNode: React.ReactElement = React.cloneElement(\n child as React.ReactElement,\n {\n index,\n id: `${idPrefix}-carousel-item-${index}`,\n shouldHaveStartSpacing,\n shouldHaveEndSpacing,\n },\n );\n\n // Safari doesn't include the margin in the bounding box calculation\n // Thus have to add an additional box to the end of the carousel to ensure we can scroll past the last item\n // https://stackoverflow.com/questions/75509058/safari-does-not-include-margins-to-the-scroll-width\n if (shouldHaveEndSpacing) {\n return (\n <>\n {carouselItemNode}\n {<BaseBox minWidth={`${startEndMargin}px`} />}\n </>\n );\n }\n return carouselItemNode;\n })}\n </CarouselContainer>\n );\n },\n);\n\nconst Carousel = ({\n autoPlay,\n visibleItems = 1,\n showIndicators = true,\n navigationButtonPosition = 'bottom',\n children,\n shouldAddStartEndSpacing = false,\n carouselItemWidth,\n scrollOverlayColor,\n accessibilityLabel,\n onChange,\n indicatorVariant = 'gray',\n navigationButtonVariant = 'filled',\n carouselItemAlignment = 'start',\n height,\n defaultActiveSlide,\n activeSlide: activeSlideProp,\n ...rest\n}: CarouselProps): React.ReactElement => {\n const { platform } = useTheme();\n const [activeIndicator, setActiveIndicator] = React.useState(0);\n const [activeSlide, setActiveSlide] = useControllableState({\n defaultValue: defaultActiveSlide ?? 0,\n value: activeSlideProp,\n onChange: (value) => {\n onChange?.(value);\n },\n });\n const [shouldPauseAutoplay, setShouldPauseAutoplay] = React.useState(false);\n const [startEndMargin, setStartEndMargin] = React.useState(0);\n const containerRef = React.useRef<HTMLDivElement>(null);\n const isMobile = platform === 'onMobile';\n const id = useId();\n const carouselId = `carousel-${id}`;\n\n useVerifyAllowedChildren({\n componentName: 'Carousel',\n allowedComponents: [componentIds.CarouselItem],\n children,\n });\n\n const [isScrollAtStart, setScrollStart] = React.useState(\n // on mobile we do not want to render the overlay\n isMobile ? true : !shouldAddStartEndSpacing,\n );\n const [isScrollAtEnd, setScrollEnd] = React.useState(isMobile);\n\n const isResponsive = visibleItems === 'autofit';\n let _visibleItems = visibleItems as 1 | 2 | 3;\n if (isMobile) {\n _visibleItems = 1;\n navigationButtonPosition = 'bottom';\n }\n if (isResponsive) {\n _visibleItems = 1;\n }\n\n // A special case where we hide the indicators when the carousel is responsive\n // Because indicators become useless since it's not aparent which carousel item is active\n // and how many carousel items are visible at a time\n if (isResponsive && !shouldAddStartEndSpacing && !isMobile) {\n showIndicators = false;\n }\n\n const isNavButtonsOnSide = !isResponsive && navigationButtonPosition === 'side';\n const shouldNavButtonsFloat = isResponsive && navigationButtonPosition === 'side';\n const totalNumberOfSlides = React.Children.count(children);\n const numberOfIndicators = Math.ceil(totalNumberOfSlides / _visibleItems);\n\n // hide next/prev button on reaching start/end when carousel is responsive\n // in non-responsive carousel we always show the next/prev buttons to allow looping\n const shouldShowPrevButton = isResponsive ? activeSlide !== 0 : true;\n const shouldShowNextButton = isResponsive ? activeSlide !== totalNumberOfSlides - 1 : true;\n\n // calculate the start/end margin so that we can\n // deduct that margin when scrolling to a carousel item with goToSlideIndex\n useIsomorphicLayoutEffect(() => {\n // Do not calculate if not needed\n if (!isResponsive && !shouldAddStartEndSpacing) return;\n if (!containerRef.current) return;\n\n const carouselItemId = getCarouselItemId(carouselId, 0);\n const carouselItem = containerRef.current.querySelector(carouselItemId);\n if (!carouselItem) return;\n\n const carouselItemLeft = carouselItem.getBoundingClientRect().left ?? 0;\n const carouselContainerLeft = containerRef.current.getBoundingClientRect().left ?? 0;\n\n setStartEndMargin(carouselItemLeft - carouselContainerLeft);\n }, [carouselId, isResponsive, shouldAddStartEndSpacing]);\n\n const scrollToSlide = (slideIndex: number, shouldAnimate = true) => {\n if (!containerRef.current) return;\n\n const carouselItemId = getCarouselItemId(carouselId, slideIndex * _visibleItems);\n const carouselItem = containerRef.current.querySelector(carouselItemId);\n if (!carouselItem) return;\n\n const carouselItemLeft =\n carouselItem.getBoundingClientRect().left -\n containerRef.current.getBoundingClientRect().left ?? 0;\n const left = containerRef.current.scrollLeft + carouselItemLeft;\n\n containerRef.current.scroll({\n left: left - startEndMargin,\n behavior: shouldAnimate ? 'smooth' : 'auto',\n });\n };\n\n const goToSlideIndex = (slideIndex: number) => {\n setActiveSlide(() => slideIndex);\n setActiveIndicator(slideIndex);\n };\n\n const goToNextSlide = () => {\n let slideIndex = activeSlide + 1;\n if (slideIndex >= numberOfIndicators) {\n slideIndex = 0;\n }\n\n // an edge case where if carousel is responsive\n // and shouldHaveStartEndSpacing is set to false\n // there can be a case where numberOfIndicators is set to 10 but\n // visually there is 3 or 4 items, in those cases we want to check if we reached the\n // end of the scroll container if so we wrap around\n if (containerRef.current) {\n const container = containerRef.current;\n const scrollLeft = container.scrollLeft;\n const scrollWidth = container.scrollWidth - container.offsetWidth;\n if (scrollLeft === scrollWidth) {\n slideIndex = 0;\n }\n }\n\n goToSlideIndex(slideIndex);\n };\n\n const goToPreviousSlide = () => {\n let slideIndex = activeSlide - 1;\n if (activeSlide <= 0) {\n slideIndex = numberOfIndicators - 1;\n }\n goToSlideIndex(slideIndex);\n };\n\n // Scroll overlay gradient show/hide based on if scrolled to start or end\n React.useEffect(() => {\n // if shouldAddStartEndSpacing is true, we don't need to hide/show the overlay based on the scroll position\n // because the gap is there so it won't overlap with the card anyway\n if (shouldAddStartEndSpacing) return;\n if (isMobile) return;\n\n const carouselContainer = containerRef.current;\n if (!carouselContainer) return;\n\n const handleScroll = throttle(() => {\n const scrollWidth = carouselContainer?.scrollWidth - carouselContainer.offsetWidth;\n setScrollStart(carouselContainer?.scrollLeft === 0);\n setScrollEnd(carouselContainer?.scrollLeft === scrollWidth);\n }, 500);\n\n carouselContainer.addEventListener('scroll', handleScroll);\n\n return () => {\n carouselContainer?.removeEventListener('scroll', handleScroll);\n };\n }, [isMobile, shouldAddStartEndSpacing]);\n\n // Sync the indicators with scroll\n React.useEffect(() => {\n const carouselContainer = containerRef.current;\n if (!carouselContainer) return;\n\n const handleScroll = debounce(() => {\n // carousel bounding box\n const carouselBB = carouselContainer.getBoundingClientRect();\n // By default we check the far left side of the screen\n let xOffset = 0.1;\n // when the carousel is responsive & has spacing\n // we want to check the center of the screen\n if (isResponsive && shouldAddStartEndSpacing) {\n xOffset = 0.5;\n }\n\n const pointX = carouselBB.left + carouselBB.width * xOffset;\n const pointY = carouselBB.top + carouselBB.height * 0.5;\n const element = document.elementFromPoint(pointX, pointY);\n const carouselItem = element?.closest('[data-slide-index]');\n if (!carouselItem) {\n return;\n }\n\n const slideIndex = Number(carouselItem?.getAttribute('data-slide-index'));\n const goTo = Math.ceil(slideIndex / _visibleItems);\n setActiveSlide(() => goTo);\n setActiveIndicator(goTo);\n }, 50);\n\n carouselContainer.addEventListener('scroll', handleScroll);\n\n return () => {\n carouselContainer?.removeEventListener('scroll', handleScroll);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [_visibleItems, isMobile, isResponsive, shouldAddStartEndSpacing]);\n\n // auto play\n useInterval(\n () => {\n goToNextSlide();\n },\n {\n delay: CAROUSEL_AUTOPLAY_INTERVAL,\n // only enable if autoplay is true & user's intent isn't to interact with carousel\n enable: autoPlay && !shouldPauseAutoplay,\n },\n );\n\n // set initial active slide on mount\n useIsomorphicLayoutEffect(() => {\n if (!id) return;\n goToSlideIndex(activeSlide);\n scrollToSlide(activeSlide, false);\n }, [id]);\n\n // Scroll the carousel to the active slide\n useDidUpdate(() => {\n scrollToSlide(activeSlide);\n }, [activeSlide]);\n\n const carouselContext = React.useMemo<CarouselContextProps>(() => {\n return {\n isResponsive,\n visibleItems: _visibleItems,\n carouselItemWidth,\n carouselContainerRef: containerRef,\n setActiveIndicator,\n carouselId,\n totalNumberOfSlides,\n activeSlide,\n startEndMargin,\n shouldAddStartEndSpacing,\n };\n }, [\n carouselId,\n startEndMargin,\n isResponsive,\n _visibleItems,\n carouselItemWidth,\n totalNumberOfSlides,\n activeSlide,\n shouldAddStartEndSpacing,\n ]);\n\n return (\n <CarouselContext.Provider value={carouselContext}>\n <BaseBox\n {...metaAttribute({ name: MetaConstants.Carousel })}\n // stop autoplaying when any elements in carousel is in focus\n onFocus={(e: React.FocusEvent) => {\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShouldPauseAutoplay(true);\n }\n }}\n onBlur={(e: React.FocusEvent) => {\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setShouldPauseAutoplay(false);\n }\n }}\n // stop autplay when user hover overs the carousel\n onMouseEnter={() => {\n setShouldPauseAutoplay(true);\n }}\n onMouseLeave={() => {\n setShouldPauseAutoplay(false);\n }}\n onTouchStart={() => {\n setShouldPauseAutoplay(true);\n }}\n onTouchEnd={() => {\n setShouldPauseAutoplay(false);\n }}\n display=\"flex\"\n alignItems=\"center\"\n flexDirection=\"column\"\n height={height}\n {...getStyledProps(rest)}\n {...makeAnalyticsAttribute(rest)}\n >\n <BaseBox\n width=\"100%\"\n position=\"relative\"\n display=\"flex\"\n alignItems=\"center\"\n gap=\"spacing.4\"\n flexDirection=\"row\"\n height=\"100%\"\n >\n {shouldShowPrevButton && shouldNavButtonsFloat ? (\n <BaseBox zIndex={2} position=\"absolute\" left=\"spacing.11\">\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={goToPreviousSlide}\n />\n </BaseBox>\n ) : null}\n {isNavButtonsOnSide ? (\n <NavigationButton\n type=\"previous\"\n variant={navigationButtonVariant}\n onClick={goToPreviousSlide}\n />\n ) : null}\n <CarouselBody\n idPrefix={carouselId}\n startEndMargin={startEndMargin}\n totalSlides={totalNumberOfSlides}\n shouldAddStartEndSpacing={shouldAddStartEndSpacing}\n scrollOverlayColor={scrollOverlayColor}\n isScrollAtStart={isScrollAtStart}\n isScrollAtEnd={isScrollAtEnd}\n ref={containerRef}\n carouselItemAlignment={carouselItemAlignment}\n accessibilityLabel={accessibilityLabel}\n >\n {children}\n </CarouselBody>\n {shouldShowNextButton && shouldNavButtonsFloat ? (\n <BaseBox zIndex={2} position=\"absolute\" right=\"spacing.11\">\n <NavigationButton\n onClick={goToNextSlide}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n </BaseBox>\n ) : null}\n {isNavButtonsOnSide ? (\n <NavigationButton\n onClick={goToNextSlide}\n type=\"next\"\n variant={navigationButtonVariant}\n />\n ) : null}\n </BaseBox>\n <Controls\n totalSlides={numberOfIndicators}\n activeIndicator={activeIndicator}\n showIndicators={showIndicators}\n navigationButtonPosition={navigationButtonPosition}\n onIndicatorButtonClick={goToSlideIndex}\n onNextButtonClick={goToNextSlide}\n onPreviousButtonClick={goToPreviousSlide}\n indicatorVariant={indicatorVariant}\n navigationButtonVariant={navigationButtonVariant}\n />\n </BaseBox>\n </CarouselContext.Provider>\n );\n};\n\nexport { Carousel };\n"],"names":["Controls","_ref","showIndicators","navigationButtonPosition","activeIndicator","totalSlides","onIndicatorButtonClick","onNextButtonClick","onPreviousButtonClick","indicatorVariant","navigationButtonVariant","_jsxs","Box","marginTop","display","alignItems","gap","children","_jsx","NavigationButton","type","variant","onClick","Indicators","activeIndex","totalItems","_Fragment","CarouselContainer","styled","BaseBox","withConfig","displayName","componentId","_ref2","theme","showOverlay","scrollOverlayColor","isScrollAtStart","isScrollAtEnd","gradientStop1","getIn","colors","gradientStop2","overlayCommonStyle","content","position","top","width","height","transitionDuration","castWebType","makeMotionTime","motion","duration","gentle","transitionTimingFunction","easing","standard","effective","transitionProperty","_objectSpread","overflowX","flexWrap","scrollSnapType","scrollSnapPointsY","msOverflowStyle","scrollbarWidth","webkitOverflowScrolling","msScrollSnapType","scrollSnapPointsX","msScrollSnapPointsX","background","concat","left","opacity","pointerEvents","right","CarouselBody","React","forwardRef","_ref3","ref","shouldAddStartEndSpacing","idPrefix","carouselItemAlignment","accessibilityLabel","startEndMargin","tabIndex","Boolean","base","m","makeAccessible","role","roleDescription","label","Children","map","child","index","shouldHaveStartSpacing","shouldHaveEndSpacing","carouselItemNode","cloneElement","id","minWidth","Carousel","_ref4","autoPlay","_ref4$visibleItems","visibleItems","_ref4$showIndicators","_ref4$navigationButto","_ref4$shouldAddStartE","carouselItemWidth","onChange","_ref4$indicatorVarian","_ref4$navigationButto2","_ref4$carouselItemAli","defaultActiveSlide","activeSlideProp","activeSlide","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","platform","_React$useState","useState","_React$useState2","_slicedToArray","setActiveIndicator","_useControllableState","useControllableState","defaultValue","value","_useControllableState2","setActiveSlide","_React$useState3","_React$useState4","shouldPauseAutoplay","setShouldPauseAutoplay","_React$useState5","_React$useState6","setStartEndMargin","containerRef","useRef","isMobile","useId","carouselId","useVerifyAllowedChildren","componentName","allowedComponents","componentIds","CarouselItem","_React$useState7","_React$useState8","setScrollStart","_React$useState9","_React$useState10","setScrollEnd","isResponsive","_visibleItems","isNavButtonsOnSide","shouldNavButtonsFloat","totalNumberOfSlides","count","numberOfIndicators","Math","ceil","shouldShowPrevButton","shouldShowNextButton","useIsomorphicLayoutEffect","_carouselItem$getBoun","_containerRef$current","current","carouselItemId","getCarouselItemId","carouselItem","querySelector","carouselItemLeft","getBoundingClientRect","carouselContainerLeft","scrollToSlide","slideIndex","_ref5","shouldAnimate","arguments","length","undefined","scrollLeft","scroll","behavior","goToSlideIndex","goToNextSlide","container","scrollWidth","offsetWidth","goToPreviousSlide","useEffect","carouselContainer","handleScroll","throttle","addEventListener","removeEventListener","debounce","carouselBB","xOffset","pointX","pointY","element","document","elementFromPoint","closest","Number","getAttribute","goTo","useInterval","delay","CAROUSEL_AUTOPLAY_INTERVAL","enable","useDidUpdate","carouselContext","useMemo","carouselContainerRef","CarouselContext","Provider","metaAttribute","name","MetaConstants","onFocus","e","currentTarget","contains","relatedTarget","onBlur","onMouseEnter","onMouseLeave","onTouchStart","onTouchEnd","flexDirection","getStyledProps","makeAnalyticsAttribute","zIndex"],"mappings":"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"}
@@ -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';
@@ -8,13 +9,16 @@ import '../BladeProvider/index.js';
8
9
  import '../../utils/index.js';
9
10
  import '../../utils/makeAccessible/index.js';
10
11
  import '../../utils/assignWithoutSideEffects/index.js';
12
+ import '../../utils/makeAnalyticsAttribute/index.js';
11
13
  import { jsx } from 'react/jsx-runtime';
12
14
  import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
13
15
  import { useBreakpoint } from '../../utils/useBreakpoint/useBreakpoint.js';
14
16
  import useTheme from '../BladeProvider/useTheme.js';
15
17
  import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
18
+ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
16
19
  import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
17
20
 
21
+ var _excluded = ["children", "shouldHaveStartSpacing", "shouldHaveEndSpacing", "id", "index"];
18
22
  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; }
19
23
  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; }
20
24
  var StyledCarouselItem = /*#__PURE__*/styled(BaseBox).withConfig({
@@ -50,7 +54,8 @@ var _CarouselItem = function _CarouselItem(_ref2) {
50
54
  shouldHaveStartSpacing = _ref2.shouldHaveStartSpacing,
51
55
  shouldHaveEndSpacing = _ref2.shouldHaveEndSpacing,
52
56
  id = _ref2.id,
53
- index = _ref2.index;
57
+ index = _ref2.index,
58
+ rest = _objectWithoutProperties(_ref2, _excluded);
54
59
  var itemRef = React__default.useRef(null);
55
60
  var _useCarouselContext = useCarouselContext(),
56
61
  totalNumberOfSlides = _useCarouselContext.totalNumberOfSlides,
@@ -61,7 +66,7 @@ var _CarouselItem = function _CarouselItem(_ref2) {
61
66
  var _useTheme = useTheme(),
62
67
  platform = _useTheme.platform;
63
68
  var isMobile = platform === 'onMobile';
64
- return /*#__PURE__*/jsx(StyledCarouselItem, _objectSpread(_objectSpread({}, makeAccessible({
69
+ return /*#__PURE__*/jsx(StyledCarouselItem, _objectSpread(_objectSpread(_objectSpread({}, makeAccessible({
65
70
  role: 'tabpanel',
66
71
  roleDescription: 'slide',
67
72
  label: "".concat(index + 1, " of ").concat(totalNumberOfSlides)
@@ -75,7 +80,8 @@ var _CarouselItem = function _CarouselItem(_ref2) {
75
80
  maxWidth: carouselItemWidth,
76
81
  shouldAddStartEndSpacing: shouldAddStartEndSpacing,
77
82
  shouldHaveStartSpacing: shouldHaveStartSpacing,
78
- shouldHaveEndSpacing: shouldHaveEndSpacing,
83
+ shouldHaveEndSpacing: shouldHaveEndSpacing
84
+ }, makeAnalyticsAttribute(rest)), {}, {
79
85
  children: children
80
86
  }));
81
87
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CarouselItem.web.js","sources":["../../../../../../src/components/Carousel/CarouselItem.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\n/* eslint-disable consistent-return */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\nimport styled from 'styled-components';\nimport React from 'react';\nimport type { CarouselProps } from './types';\nimport { useCarouselContext } from './CarouselContext';\nimport { componentIds } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { useTheme } from '~components/BladeProvider';\nimport { useBreakpoint } from '~utils';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\n\ntype StyledCarouselItemProps = Pick<CarouselProps, 'visibleItems' | 'shouldAddStartEndSpacing'> &\n Pick<CarouselItemProps, 'shouldHaveEndSpacing' | 'shouldHaveStartSpacing'> & {\n isMobile?: boolean;\n isResponsive?: boolean;\n };\n\nconst StyledCarouselItem = styled(BaseBox)<StyledCarouselItemProps>(\n ({ visibleItems, isResponsive, shouldAddStartEndSpacing, shouldHaveStartSpacing, theme }) => {\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isMobile = matchedDeviceType === 'mobile';\n\n const gap = isMobile ? theme.spacing[4] : theme.spacing[5];\n const calculatedWidth = `calc(100% / ${visibleItems!} - ${gap}px * (${visibleItems} - 1) / ${visibleItems})`;\n\n return {\n flexGrow: 0,\n flexShrink: 0,\n width: calculatedWidth,\n minHeight: '100%',\n scrollSnapAlign: 'start',\n\n // Responsive slider styles, a special case\n ...(isResponsive && {\n width: '100%',\n scrollSnapAlign: isMobile || !shouldAddStartEndSpacing ? 'start' : 'center',\n marginLeft: shouldHaveStartSpacing ? '40%' : 0,\n }),\n };\n },\n);\n\ntype CarouselItemProps = {\n id?: string;\n index?: number;\n children: React.ReactNode;\n shouldHaveStartSpacing?: boolean;\n shouldHaveEndSpacing?: boolean;\n};\n\nconst _CarouselItem = ({\n children,\n shouldHaveStartSpacing,\n shouldHaveEndSpacing,\n id,\n index,\n}: CarouselItemProps): React.ReactElement => {\n const itemRef = React.useRef<HTMLDivElement>(null);\n const {\n totalNumberOfSlides,\n visibleItems,\n isResponsive,\n carouselItemWidth,\n shouldAddStartEndSpacing,\n } = useCarouselContext();\n const { platform } = useTheme();\n const isMobile = platform === 'onMobile';\n\n return (\n <StyledCarouselItem\n {...makeAccessible({\n role: 'tabpanel',\n roleDescription: 'slide',\n label: `${index! + 1} of ${totalNumberOfSlides}`,\n })}\n ref={itemRef}\n id={id}\n isMobile={isMobile}\n data-slide-index={index}\n isResponsive={isResponsive}\n visibleItems={visibleItems}\n maxWidth={carouselItemWidth}\n shouldAddStartEndSpacing={shouldAddStartEndSpacing}\n shouldHaveStartSpacing={shouldHaveStartSpacing}\n shouldHaveEndSpacing={shouldHaveEndSpacing}\n >\n {children}\n </StyledCarouselItem>\n );\n};\n\nconst CarouselItem = assignWithoutSideEffects(_CarouselItem, {\n componentId: componentIds.CarouselItem,\n});\n\nexport { CarouselItem };\n"],"names":["StyledCarouselItem","styled","BaseBox","withConfig","displayName","componentId","_ref","visibleItems","isResponsive","shouldAddStartEndSpacing","shouldHaveStartSpacing","theme","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isMobile","gap","spacing","calculatedWidth","concat","_objectSpread","flexGrow","flexShrink","width","minHeight","scrollSnapAlign","marginLeft","_CarouselItem","_ref2","children","shouldHaveEndSpacing","id","index","itemRef","React","useRef","_useCarouselContext","useCarouselContext","totalNumberOfSlides","carouselItemWidth","_useTheme","useTheme","platform","_jsx","makeAccessible","role","roleDescription","label","ref","maxWidth","CarouselItem","assignWithoutSideEffects","componentIds"],"mappings":"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"}
1
+ {"version":3,"file":"CarouselItem.web.js","sources":["../../../../../../src/components/Carousel/CarouselItem.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\n/* eslint-disable consistent-return */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\nimport styled from 'styled-components';\nimport React from 'react';\nimport type { CarouselProps } from './types';\nimport { useCarouselContext } from './CarouselContext';\nimport { componentIds } from './constants';\nimport BaseBox from '~components/Box/BaseBox';\nimport { useTheme } from '~components/BladeProvider';\nimport { useBreakpoint } from '~utils';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport type { DataAnalyticsAttribute } from '~utils/types';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype StyledCarouselItemProps = Pick<CarouselProps, 'visibleItems' | 'shouldAddStartEndSpacing'> &\n Pick<CarouselItemProps, 'shouldHaveEndSpacing' | 'shouldHaveStartSpacing'> & {\n isMobile?: boolean;\n isResponsive?: boolean;\n };\n\nconst StyledCarouselItem = styled(BaseBox)<StyledCarouselItemProps>(\n ({ visibleItems, isResponsive, shouldAddStartEndSpacing, shouldHaveStartSpacing, theme }) => {\n const { matchedDeviceType } = useBreakpoint({ breakpoints: theme.breakpoints });\n const isMobile = matchedDeviceType === 'mobile';\n\n const gap = isMobile ? theme.spacing[4] : theme.spacing[5];\n const calculatedWidth = `calc(100% / ${visibleItems!} - ${gap}px * (${visibleItems} - 1) / ${visibleItems})`;\n\n return {\n flexGrow: 0,\n flexShrink: 0,\n width: calculatedWidth,\n minHeight: '100%',\n scrollSnapAlign: 'start',\n\n // Responsive slider styles, a special case\n ...(isResponsive && {\n width: '100%',\n scrollSnapAlign: isMobile || !shouldAddStartEndSpacing ? 'start' : 'center',\n marginLeft: shouldHaveStartSpacing ? '40%' : 0,\n }),\n };\n },\n);\n\ntype CarouselItemProps = {\n id?: string;\n index?: number;\n children: React.ReactNode;\n shouldHaveStartSpacing?: boolean;\n shouldHaveEndSpacing?: boolean;\n} & DataAnalyticsAttribute;\n\nconst _CarouselItem = ({\n children,\n shouldHaveStartSpacing,\n shouldHaveEndSpacing,\n id,\n index,\n ...rest\n}: CarouselItemProps): React.ReactElement => {\n const itemRef = React.useRef<HTMLDivElement>(null);\n const {\n totalNumberOfSlides,\n visibleItems,\n isResponsive,\n carouselItemWidth,\n shouldAddStartEndSpacing,\n } = useCarouselContext();\n const { platform } = useTheme();\n const isMobile = platform === 'onMobile';\n\n return (\n <StyledCarouselItem\n {...makeAccessible({\n role: 'tabpanel',\n roleDescription: 'slide',\n label: `${index! + 1} of ${totalNumberOfSlides}`,\n })}\n ref={itemRef}\n id={id}\n isMobile={isMobile}\n data-slide-index={index}\n isResponsive={isResponsive}\n visibleItems={visibleItems}\n maxWidth={carouselItemWidth}\n shouldAddStartEndSpacing={shouldAddStartEndSpacing}\n shouldHaveStartSpacing={shouldHaveStartSpacing}\n shouldHaveEndSpacing={shouldHaveEndSpacing}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </StyledCarouselItem>\n );\n};\n\nconst CarouselItem = assignWithoutSideEffects(_CarouselItem, {\n componentId: componentIds.CarouselItem,\n});\n\nexport { CarouselItem };\n"],"names":["StyledCarouselItem","styled","BaseBox","withConfig","displayName","componentId","_ref","visibleItems","isResponsive","shouldAddStartEndSpacing","shouldHaveStartSpacing","theme","_useBreakpoint","useBreakpoint","breakpoints","matchedDeviceType","isMobile","gap","spacing","calculatedWidth","concat","_objectSpread","flexGrow","flexShrink","width","minHeight","scrollSnapAlign","marginLeft","_CarouselItem","_ref2","children","shouldHaveEndSpacing","id","index","rest","_objectWithoutProperties","_excluded","itemRef","React","useRef","_useCarouselContext","useCarouselContext","totalNumberOfSlides","carouselItemWidth","_useTheme","useTheme","platform","_jsx","makeAccessible","role","roleDescription","label","ref","maxWidth","makeAnalyticsAttribute","CarouselItem","assignWithoutSideEffects","componentIds"],"mappings":"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"}