@razorpay/blade 11.36.2 → 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 (560) 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/Icons/IndiaFlagIcon/IndiaFlagIcon.js +12 -0
  67. package/build/lib/native/components/Icons/IndiaFlagIcon/IndiaFlagIcon.js.map +1 -0
  68. package/build/lib/native/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js +12 -0
  69. package/build/lib/native/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js.map +1 -0
  70. package/build/lib/native/components/Icons/WorldwideIcon/WorldwideIcon.js +12 -0
  71. package/build/lib/native/components/Icons/WorldwideIcon/WorldwideIcon.js.map +1 -0
  72. package/build/lib/native/components/Indicator/Indicator.js +2 -1
  73. package/build/lib/native/components/Indicator/Indicator.js.map +1 -1
  74. package/build/lib/native/components/Input/BaseInput/BaseInput.js +2 -1
  75. package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
  76. package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +2 -1
  77. package/build/lib/native/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  78. package/build/lib/native/components/Input/DropdownInputTriggers/SelectInput.js +2 -1
  79. package/build/lib/native/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  80. package/build/lib/native/components/Input/OTPInput/OTPInput.js +2 -1
  81. package/build/lib/native/components/Input/OTPInput/OTPInput.js.map +1 -1
  82. package/build/lib/native/components/Input/PasswordInput/PasswordInput.js +1 -1
  83. package/build/lib/native/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  84. package/build/lib/native/components/Input/SearchInput/SearchInput.js +1 -1
  85. package/build/lib/native/components/Input/SearchInput/SearchInput.js.map +1 -1
  86. package/build/lib/native/components/Input/TextArea/TextArea.js +1 -1
  87. package/build/lib/native/components/Input/TextArea/TextArea.js.map +1 -1
  88. package/build/lib/native/components/Input/TextInput/TextInput.js +1 -1
  89. package/build/lib/native/components/Input/TextInput/TextInput.js.map +1 -1
  90. package/build/lib/native/components/Link/BaseLink/BaseLink.js +2 -1
  91. package/build/lib/native/components/Link/BaseLink/BaseLink.js.map +1 -1
  92. package/build/lib/native/components/Link/Link/Link.js +2 -1
  93. package/build/lib/native/components/Link/Link/Link.js.map +1 -1
  94. package/build/lib/native/components/ProgressBar/ProgressBar.js +2 -1
  95. package/build/lib/native/components/ProgressBar/ProgressBar.js.map +1 -1
  96. package/build/lib/native/components/Radio/Radio.js +2 -1
  97. package/build/lib/native/components/Radio/Radio.js.map +1 -1
  98. package/build/lib/native/components/Radio/RadioGroup/RadioGroup.js +2 -1
  99. package/build/lib/native/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  100. package/build/lib/native/components/StepGroup/tokens.js +1 -1
  101. package/build/lib/native/components/StepGroup/tokens.js.map +1 -1
  102. package/build/lib/native/components/Switch/Switch.js +2 -1
  103. package/build/lib/native/components/Switch/Switch.js.map +1 -1
  104. package/build/lib/native/components/Tag/Tag.js +2 -1
  105. package/build/lib/native/components/Tag/Tag.js.map +1 -1
  106. package/build/lib/native/components/index.js +3 -0
  107. package/build/lib/native/components/index.js.map +1 -1
  108. package/build/lib/native/tokens/global/size.js +1 -1
  109. package/build/lib/native/tokens/global/size.js.map +1 -1
  110. package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +7 -0
  111. package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  112. package/build/lib/web/development/components/Accordion/Accordion.js +5 -3
  113. package/build/lib/web/development/components/Accordion/Accordion.js.map +1 -1
  114. package/build/lib/web/development/components/Accordion/AccordionButton.web.js +8 -3
  115. package/build/lib/web/development/components/Accordion/AccordionButton.web.js.map +1 -1
  116. package/build/lib/web/development/components/Accordion/AccordionItem.js +8 -3
  117. package/build/lib/web/development/components/Accordion/AccordionItem.js.map +1 -1
  118. package/build/lib/web/development/components/Accordion/AccordionItemBody.js +8 -3
  119. package/build/lib/web/development/components/Accordion/AccordionItemBody.js.map +1 -1
  120. package/build/lib/web/development/components/Accordion/AccordionItemHeader.js +10 -4
  121. package/build/lib/web/development/components/Accordion/AccordionItemHeader.js.map +1 -1
  122. package/build/lib/web/development/components/ActionList/ActionList.js +9 -4
  123. package/build/lib/web/development/components/ActionList/ActionList.js.map +1 -1
  124. package/build/lib/web/development/components/ActionList/ActionListBox.web.js +8 -3
  125. package/build/lib/web/development/components/ActionList/ActionListBox.web.js.map +1 -1
  126. package/build/lib/web/development/components/ActionList/ActionListItem.js +10 -5
  127. package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
  128. package/build/lib/web/development/components/Alert/Alert.js +5 -3
  129. package/build/lib/web/development/components/Alert/Alert.js.map +1 -1
  130. package/build/lib/web/development/components/Amount/Amount.js +5 -8
  131. package/build/lib/web/development/components/Amount/Amount.js.map +1 -1
  132. package/build/lib/web/development/components/Avatar/Avatar.web.js +5 -3
  133. package/build/lib/web/development/components/Avatar/Avatar.web.js.map +1 -1
  134. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js +5 -3
  135. package/build/lib/web/development/components/Avatar/AvatarGroup.web.js.map +1 -1
  136. package/build/lib/web/development/components/Badge/Badge.js +5 -3
  137. package/build/lib/web/development/components/Badge/Badge.js.map +1 -1
  138. package/build/lib/web/development/components/BaseHeaderFooter/BaseFooter.js +8 -3
  139. package/build/lib/web/development/components/BaseHeaderFooter/BaseFooter.js.map +1 -1
  140. package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js +8 -3
  141. package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  142. package/build/lib/web/development/components/BottomNav/BottomNav.web.js +12 -8
  143. package/build/lib/web/development/components/BottomNav/BottomNav.web.js.map +1 -1
  144. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js +9 -3
  145. package/build/lib/web/development/components/BottomSheet/BottomSheet.web.js.map +1 -1
  146. package/build/lib/web/development/components/BottomSheet/BottomSheetBody.web.js +8 -3
  147. package/build/lib/web/development/components/BottomSheet/BottomSheetBody.web.js.map +1 -1
  148. package/build/lib/web/development/components/BottomSheet/BottomSheetFooter.web.js +8 -3
  149. package/build/lib/web/development/components/BottomSheet/BottomSheetFooter.web.js.map +1 -1
  150. package/build/lib/web/development/components/BottomSheet/BottomSheetHeader.web.js +8 -3
  151. package/build/lib/web/development/components/BottomSheet/BottomSheetHeader.web.js.map +1 -1
  152. package/build/lib/web/development/components/Box/BaseBox/BaseBox.web.js +4 -2
  153. package/build/lib/web/development/components/Box/BaseBox/BaseBox.web.js.map +1 -1
  154. package/build/lib/web/development/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  155. package/build/lib/web/development/components/Box/Box.js +4 -2
  156. package/build/lib/web/development/components/Box/Box.js.map +1 -1
  157. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js +6 -4
  158. package/build/lib/web/development/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  159. package/build/lib/web/development/components/Breadcrumb/BreadcrumbItem.web.js +13 -4
  160. package/build/lib/web/development/components/Breadcrumb/BreadcrumbItem.web.js.map +1 -1
  161. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js +4 -2
  162. package/build/lib/web/development/components/Button/BaseButton/BaseButton.js.map +1 -1
  163. package/build/lib/web/development/components/Button/Button/Button.js +4 -2
  164. package/build/lib/web/development/components/Button/Button/Button.js.map +1 -1
  165. package/build/lib/web/development/components/Button/IconButton/IconButton.js +11 -5
  166. package/build/lib/web/development/components/Button/IconButton/IconButton.js.map +1 -1
  167. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js +8 -3
  168. package/build/lib/web/development/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  169. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js +5 -3
  170. package/build/lib/web/development/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  171. package/build/lib/web/development/components/Card/Card.js +11 -7
  172. package/build/lib/web/development/components/Card/Card.js.map +1 -1
  173. package/build/lib/web/development/components/Card/CardFooter.js +22 -11
  174. package/build/lib/web/development/components/Card/CardFooter.js.map +1 -1
  175. package/build/lib/web/development/components/Card/CardHeader.js +13 -6
  176. package/build/lib/web/development/components/Card/CardHeader.js.map +1 -1
  177. package/build/lib/web/development/components/Carousel/Carousel.web.js +5 -3
  178. package/build/lib/web/development/components/Carousel/Carousel.web.js.map +1 -1
  179. package/build/lib/web/development/components/Carousel/CarouselItem.web.js +9 -3
  180. package/build/lib/web/development/components/Carousel/CarouselItem.web.js.map +1 -1
  181. package/build/lib/web/development/components/Checkbox/Checkbox.js +6 -4
  182. package/build/lib/web/development/components/Checkbox/Checkbox.js.map +1 -1
  183. package/build/lib/web/development/components/Checkbox/CheckboxGroup/CheckboxGroup.js +8 -5
  184. package/build/lib/web/development/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  185. package/build/lib/web/development/components/Chip/Chip.js +5 -3
  186. package/build/lib/web/development/components/Chip/Chip.js.map +1 -1
  187. package/build/lib/web/development/components/Chip/ChipGroup.js +8 -5
  188. package/build/lib/web/development/components/Chip/ChipGroup.js.map +1 -1
  189. package/build/lib/web/development/components/Collapsible/Collapsible.js +5 -3
  190. package/build/lib/web/development/components/Collapsible/Collapsible.js.map +1 -1
  191. package/build/lib/web/development/components/Collapsible/CollapsibleBody.js +8 -3
  192. package/build/lib/web/development/components/Collapsible/CollapsibleBody.js.map +1 -1
  193. package/build/lib/web/development/components/Collapsible/CollapsibleButton.js +13 -4
  194. package/build/lib/web/development/components/Collapsible/CollapsibleButton.js.map +1 -1
  195. package/build/lib/web/development/components/Collapsible/CollapsibleLink.js +5 -3
  196. package/build/lib/web/development/components/Collapsible/CollapsibleLink.js.map +1 -1
  197. package/build/lib/web/development/components/Counter/Counter.js +5 -3
  198. package/build/lib/web/development/components/Counter/Counter.js.map +1 -1
  199. package/build/lib/web/development/components/DatePicker/DateInput.web.js +11 -7
  200. package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
  201. package/build/lib/web/development/components/DatePicker/DatePicker.web.js +4 -2
  202. package/build/lib/web/development/components/DatePicker/DatePicker.web.js.map +1 -1
  203. package/build/lib/web/development/components/Drawer/Drawer.web.js +8 -3
  204. package/build/lib/web/development/components/Drawer/Drawer.web.js.map +1 -1
  205. package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js +11 -3
  206. package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
  207. package/build/lib/web/development/components/Dropdown/Dropdown.js +5 -3
  208. package/build/lib/web/development/components/Dropdown/Dropdown.js.map +1 -1
  209. package/build/lib/web/development/components/Dropdown/DropdownButton.js +2 -2
  210. package/build/lib/web/development/components/Dropdown/DropdownButton.js.map +1 -1
  211. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js +8 -3
  212. package/build/lib/web/development/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  213. package/build/lib/web/development/components/Dropdown/DropdownLink.js +5 -3
  214. package/build/lib/web/development/components/Dropdown/DropdownLink.js.map +1 -1
  215. package/build/lib/web/development/components/FileUpload/FileUpload.web.js +6 -4
  216. package/build/lib/web/development/components/FileUpload/FileUpload.web.js.map +1 -1
  217. package/build/lib/web/development/components/Form/Selector/SelectorGroupField.js +8 -3
  218. package/build/lib/web/development/components/Form/Selector/SelectorGroupField.js.map +1 -1
  219. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js +8 -3
  220. package/build/lib/web/development/components/Form/Selector/SelectorInput.web.js.map +1 -1
  221. package/build/lib/web/development/components/Icons/IndiaFlagIcon/IndiaFlagIcon.js +39 -0
  222. package/build/lib/web/development/components/Icons/IndiaFlagIcon/IndiaFlagIcon.js.map +1 -0
  223. package/build/lib/web/development/components/Icons/IndiaFlagIcon/index.js +2 -0
  224. package/build/lib/web/development/components/Icons/IndiaFlagIcon/index.js.map +1 -0
  225. package/build/lib/web/development/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js +49 -0
  226. package/build/lib/web/development/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js.map +1 -0
  227. package/build/lib/web/development/components/Icons/MagicKonnectIcon/index.js +2 -0
  228. package/build/lib/web/development/components/Icons/MagicKonnectIcon/index.js.map +1 -0
  229. package/build/lib/web/development/components/Icons/WorldwideIcon/WorldwideIcon.js +39 -0
  230. package/build/lib/web/development/components/Icons/WorldwideIcon/WorldwideIcon.js.map +1 -0
  231. package/build/lib/web/development/components/Icons/WorldwideIcon/index.js +2 -0
  232. package/build/lib/web/development/components/Icons/WorldwideIcon/index.js.map +1 -0
  233. package/build/lib/web/development/components/Icons/index.js +3 -0
  234. package/build/lib/web/development/components/Icons/index.js.map +1 -1
  235. package/build/lib/web/development/components/Indicator/Indicator.js +5 -3
  236. package/build/lib/web/development/components/Indicator/Indicator.js.map +1 -1
  237. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +6 -4
  238. package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
  239. package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +5 -2
  240. package/build/lib/web/development/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  241. package/build/lib/web/development/components/Input/DropdownInputTriggers/SelectInput.js +5 -3
  242. package/build/lib/web/development/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  243. package/build/lib/web/development/components/Input/OTPInput/OTPInput.js +6 -4
  244. package/build/lib/web/development/components/Input/OTPInput/OTPInput.js.map +1 -1
  245. package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js +2 -2
  246. package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  247. package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +2 -2
  248. package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
  249. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js +2 -2
  250. package/build/lib/web/development/components/Input/SearchInput/SearchInput.js.map +1 -1
  251. package/build/lib/web/development/components/Input/TextArea/TextArea.js +2 -2
  252. package/build/lib/web/development/components/Input/TextArea/TextArea.js.map +1 -1
  253. package/build/lib/web/development/components/Input/TextInput/TextInput.js +2 -2
  254. package/build/lib/web/development/components/Input/TextInput/TextInput.js.map +1 -1
  255. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js +5 -3
  256. package/build/lib/web/development/components/Link/BaseLink/BaseLink.js.map +1 -1
  257. package/build/lib/web/development/components/Link/Link/Link.js +4 -2
  258. package/build/lib/web/development/components/Link/Link/Link.js.map +1 -1
  259. package/build/lib/web/development/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js +18 -8
  260. package/build/lib/web/development/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js.map +1 -1
  261. package/build/lib/web/development/components/Modal/Modal.web.js +10 -4
  262. package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
  263. package/build/lib/web/development/components/Modal/ModalBody.web.js +9 -3
  264. package/build/lib/web/development/components/Modal/ModalBody.web.js.map +1 -1
  265. package/build/lib/web/development/components/Modal/ModalFooter.web.js +7 -2
  266. package/build/lib/web/development/components/Modal/ModalFooter.web.js.map +1 -1
  267. package/build/lib/web/development/components/Modal/ModalHeader.web.js +14 -6
  268. package/build/lib/web/development/components/Modal/ModalHeader.web.js.map +1 -1
  269. package/build/lib/web/development/components/Popover/Popover.web.js +8 -3
  270. package/build/lib/web/development/components/Popover/Popover.web.js.map +1 -1
  271. package/build/lib/web/development/components/Popover/PopoverInteractiveWrapper.web.js.map +1 -1
  272. package/build/lib/web/development/components/ProgressBar/ProgressBar.js +5 -3
  273. package/build/lib/web/development/components/ProgressBar/ProgressBar.js.map +1 -1
  274. package/build/lib/web/development/components/Radio/Radio.js +6 -4
  275. package/build/lib/web/development/components/Radio/Radio.js.map +1 -1
  276. package/build/lib/web/development/components/Radio/RadioGroup/RadioGroup.js +8 -5
  277. package/build/lib/web/development/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  278. package/build/lib/web/development/components/SideNav/SideNav.web.js +5 -3
  279. package/build/lib/web/development/components/SideNav/SideNav.web.js.map +1 -1
  280. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js +13 -4
  281. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
  282. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js +10 -4
  283. package/build/lib/web/development/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  284. package/build/lib/web/development/components/SideNav/SideNavSection.web.js +10 -4
  285. package/build/lib/web/development/components/SideNav/SideNavSection.web.js.map +1 -1
  286. package/build/lib/web/development/components/StepGroup/StepGroup.web.js +5 -3
  287. package/build/lib/web/development/components/StepGroup/StepGroup.web.js.map +1 -1
  288. package/build/lib/web/development/components/StepGroup/StepItem.web.js +13 -7
  289. package/build/lib/web/development/components/StepGroup/StepItem.web.js.map +1 -1
  290. package/build/lib/web/development/components/StepGroup/StepLine.web.js +79 -42
  291. package/build/lib/web/development/components/StepGroup/StepLine.web.js.map +1 -1
  292. package/build/lib/web/development/components/StepGroup/tokens.js +6 -6
  293. package/build/lib/web/development/components/StepGroup/tokens.js.map +1 -1
  294. package/build/lib/web/development/components/Switch/Switch.js +5 -3
  295. package/build/lib/web/development/components/Switch/Switch.js.map +1 -1
  296. package/build/lib/web/development/components/Table/Table.web.js +9 -7
  297. package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
  298. package/build/lib/web/development/components/Table/TableBody.web.js +18 -9
  299. package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
  300. package/build/lib/web/development/components/Table/TableFooter.web.js +18 -9
  301. package/build/lib/web/development/components/Table/TableFooter.web.js.map +1 -1
  302. package/build/lib/web/development/components/Table/TableHeader.web.js +18 -9
  303. package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
  304. package/build/lib/web/development/components/Table/TablePagination.web.js +10 -4
  305. package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
  306. package/build/lib/web/development/components/Table/TableToolbar.web.js +13 -8
  307. package/build/lib/web/development/components/Table/TableToolbar.web.js.map +1 -1
  308. package/build/lib/web/development/components/Tabs/TabItem.web.js +9 -5
  309. package/build/lib/web/development/components/Tabs/TabItem.web.js.map +1 -1
  310. package/build/lib/web/development/components/Tabs/TabList.web.js +5 -3
  311. package/build/lib/web/development/components/Tabs/TabList.web.js.map +1 -1
  312. package/build/lib/web/development/components/Tabs/TabPanel.web.js +10 -5
  313. package/build/lib/web/development/components/Tabs/TabPanel.web.js.map +1 -1
  314. package/build/lib/web/development/components/Tabs/Tabs.web.js +8 -3
  315. package/build/lib/web/development/components/Tabs/Tabs.web.js.map +1 -1
  316. package/build/lib/web/development/components/Tag/Tag.js +6 -4
  317. package/build/lib/web/development/components/Tag/Tag.js.map +1 -1
  318. package/build/lib/web/development/components/Toast/ToastContainer.web.js +8 -3
  319. package/build/lib/web/development/components/Toast/ToastContainer.web.js.map +1 -1
  320. package/build/lib/web/development/components/Tooltip/Tooltip.web.js +8 -3
  321. package/build/lib/web/development/components/Tooltip/Tooltip.web.js.map +1 -1
  322. package/build/lib/web/development/components/TopNav/TabNav/TabNav.web.js +6 -3
  323. package/build/lib/web/development/components/TopNav/TabNav/TabNav.web.js.map +1 -1
  324. package/build/lib/web/development/components/TopNav/TopNav.web.js +8 -5
  325. package/build/lib/web/development/components/TopNav/TopNav.web.js.map +1 -1
  326. package/build/lib/web/development/components/index.js +3 -0
  327. package/build/lib/web/development/components/index.js.map +1 -1
  328. package/build/lib/web/development/tokens/global/size.js +3 -1
  329. package/build/lib/web/development/tokens/global/size.js.map +1 -1
  330. package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js +2 -0
  331. package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js.map +1 -0
  332. package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +20 -0
  333. package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  334. package/build/lib/web/production/components/Accordion/Accordion.js +5 -3
  335. package/build/lib/web/production/components/Accordion/Accordion.js.map +1 -1
  336. package/build/lib/web/production/components/Accordion/AccordionButton.web.js +8 -3
  337. package/build/lib/web/production/components/Accordion/AccordionButton.web.js.map +1 -1
  338. package/build/lib/web/production/components/Accordion/AccordionItem.js +8 -3
  339. package/build/lib/web/production/components/Accordion/AccordionItem.js.map +1 -1
  340. package/build/lib/web/production/components/Accordion/AccordionItemBody.js +8 -3
  341. package/build/lib/web/production/components/Accordion/AccordionItemBody.js.map +1 -1
  342. package/build/lib/web/production/components/Accordion/AccordionItemHeader.js +10 -4
  343. package/build/lib/web/production/components/Accordion/AccordionItemHeader.js.map +1 -1
  344. package/build/lib/web/production/components/ActionList/ActionList.js +9 -4
  345. package/build/lib/web/production/components/ActionList/ActionList.js.map +1 -1
  346. package/build/lib/web/production/components/ActionList/ActionListBox.web.js +8 -3
  347. package/build/lib/web/production/components/ActionList/ActionListBox.web.js.map +1 -1
  348. package/build/lib/web/production/components/ActionList/ActionListItem.js +10 -5
  349. package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
  350. package/build/lib/web/production/components/Alert/Alert.js +5 -3
  351. package/build/lib/web/production/components/Alert/Alert.js.map +1 -1
  352. package/build/lib/web/production/components/Amount/Amount.js +5 -8
  353. package/build/lib/web/production/components/Amount/Amount.js.map +1 -1
  354. package/build/lib/web/production/components/Avatar/Avatar.web.js +5 -3
  355. package/build/lib/web/production/components/Avatar/Avatar.web.js.map +1 -1
  356. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js +5 -3
  357. package/build/lib/web/production/components/Avatar/AvatarGroup.web.js.map +1 -1
  358. package/build/lib/web/production/components/Badge/Badge.js +5 -3
  359. package/build/lib/web/production/components/Badge/Badge.js.map +1 -1
  360. package/build/lib/web/production/components/BaseHeaderFooter/BaseFooter.js +8 -3
  361. package/build/lib/web/production/components/BaseHeaderFooter/BaseFooter.js.map +1 -1
  362. package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js +8 -3
  363. package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
  364. package/build/lib/web/production/components/BottomNav/BottomNav.web.js +12 -8
  365. package/build/lib/web/production/components/BottomNav/BottomNav.web.js.map +1 -1
  366. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js +9 -3
  367. package/build/lib/web/production/components/BottomSheet/BottomSheet.web.js.map +1 -1
  368. package/build/lib/web/production/components/BottomSheet/BottomSheetBody.web.js +8 -3
  369. package/build/lib/web/production/components/BottomSheet/BottomSheetBody.web.js.map +1 -1
  370. package/build/lib/web/production/components/BottomSheet/BottomSheetFooter.web.js +8 -3
  371. package/build/lib/web/production/components/BottomSheet/BottomSheetFooter.web.js.map +1 -1
  372. package/build/lib/web/production/components/BottomSheet/BottomSheetHeader.web.js +8 -3
  373. package/build/lib/web/production/components/BottomSheet/BottomSheetHeader.web.js.map +1 -1
  374. package/build/lib/web/production/components/Box/BaseBox/BaseBox.web.js +4 -2
  375. package/build/lib/web/production/components/Box/BaseBox/BaseBox.web.js.map +1 -1
  376. package/build/lib/web/production/components/Box/BaseBox/types/propsTypes.js.map +1 -1
  377. package/build/lib/web/production/components/Box/Box.js +4 -2
  378. package/build/lib/web/production/components/Box/Box.js.map +1 -1
  379. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js +6 -4
  380. package/build/lib/web/production/components/Breadcrumb/Breadcrumb.web.js.map +1 -1
  381. package/build/lib/web/production/components/Breadcrumb/BreadcrumbItem.web.js +13 -4
  382. package/build/lib/web/production/components/Breadcrumb/BreadcrumbItem.web.js.map +1 -1
  383. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js +4 -2
  384. package/build/lib/web/production/components/Button/BaseButton/BaseButton.js.map +1 -1
  385. package/build/lib/web/production/components/Button/Button/Button.js +4 -2
  386. package/build/lib/web/production/components/Button/Button/Button.js.map +1 -1
  387. package/build/lib/web/production/components/Button/IconButton/IconButton.js +11 -5
  388. package/build/lib/web/production/components/Button/IconButton/IconButton.js.map +1 -1
  389. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js +8 -3
  390. package/build/lib/web/production/components/Button/IconButton/StyledIconButton.web.js.map +1 -1
  391. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js +5 -3
  392. package/build/lib/web/production/components/ButtonGroup/ButtonGroup.web.js.map +1 -1
  393. package/build/lib/web/production/components/Card/Card.js +11 -7
  394. package/build/lib/web/production/components/Card/Card.js.map +1 -1
  395. package/build/lib/web/production/components/Card/CardFooter.js +22 -11
  396. package/build/lib/web/production/components/Card/CardFooter.js.map +1 -1
  397. package/build/lib/web/production/components/Card/CardHeader.js +13 -6
  398. package/build/lib/web/production/components/Card/CardHeader.js.map +1 -1
  399. package/build/lib/web/production/components/Carousel/Carousel.web.js +5 -3
  400. package/build/lib/web/production/components/Carousel/Carousel.web.js.map +1 -1
  401. package/build/lib/web/production/components/Carousel/CarouselItem.web.js +9 -3
  402. package/build/lib/web/production/components/Carousel/CarouselItem.web.js.map +1 -1
  403. package/build/lib/web/production/components/Checkbox/Checkbox.js +6 -4
  404. package/build/lib/web/production/components/Checkbox/Checkbox.js.map +1 -1
  405. package/build/lib/web/production/components/Checkbox/CheckboxGroup/CheckboxGroup.js +8 -5
  406. package/build/lib/web/production/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  407. package/build/lib/web/production/components/Chip/Chip.js +5 -3
  408. package/build/lib/web/production/components/Chip/Chip.js.map +1 -1
  409. package/build/lib/web/production/components/Chip/ChipGroup.js +8 -5
  410. package/build/lib/web/production/components/Chip/ChipGroup.js.map +1 -1
  411. package/build/lib/web/production/components/Collapsible/Collapsible.js +5 -3
  412. package/build/lib/web/production/components/Collapsible/Collapsible.js.map +1 -1
  413. package/build/lib/web/production/components/Collapsible/CollapsibleBody.js +8 -3
  414. package/build/lib/web/production/components/Collapsible/CollapsibleBody.js.map +1 -1
  415. package/build/lib/web/production/components/Collapsible/CollapsibleButton.js +13 -4
  416. package/build/lib/web/production/components/Collapsible/CollapsibleButton.js.map +1 -1
  417. package/build/lib/web/production/components/Collapsible/CollapsibleLink.js +5 -3
  418. package/build/lib/web/production/components/Collapsible/CollapsibleLink.js.map +1 -1
  419. package/build/lib/web/production/components/Counter/Counter.js +5 -3
  420. package/build/lib/web/production/components/Counter/Counter.js.map +1 -1
  421. package/build/lib/web/production/components/DatePicker/DateInput.web.js +11 -7
  422. package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
  423. package/build/lib/web/production/components/DatePicker/DatePicker.web.js +4 -2
  424. package/build/lib/web/production/components/DatePicker/DatePicker.web.js.map +1 -1
  425. package/build/lib/web/production/components/Drawer/Drawer.web.js +8 -3
  426. package/build/lib/web/production/components/Drawer/Drawer.web.js.map +1 -1
  427. package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js +11 -3
  428. package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
  429. package/build/lib/web/production/components/Dropdown/Dropdown.js +5 -3
  430. package/build/lib/web/production/components/Dropdown/Dropdown.js.map +1 -1
  431. package/build/lib/web/production/components/Dropdown/DropdownButton.js +2 -2
  432. package/build/lib/web/production/components/Dropdown/DropdownButton.js.map +1 -1
  433. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js +8 -3
  434. package/build/lib/web/production/components/Dropdown/DropdownHeaderFooter.js.map +1 -1
  435. package/build/lib/web/production/components/Dropdown/DropdownLink.js +5 -3
  436. package/build/lib/web/production/components/Dropdown/DropdownLink.js.map +1 -1
  437. package/build/lib/web/production/components/FileUpload/FileUpload.web.js +6 -4
  438. package/build/lib/web/production/components/FileUpload/FileUpload.web.js.map +1 -1
  439. package/build/lib/web/production/components/Form/Selector/SelectorGroupField.js +8 -3
  440. package/build/lib/web/production/components/Form/Selector/SelectorGroupField.js.map +1 -1
  441. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js +8 -3
  442. package/build/lib/web/production/components/Form/Selector/SelectorInput.web.js.map +1 -1
  443. package/build/lib/web/production/components/Icons/IndiaFlagIcon/IndiaFlagIcon.js +39 -0
  444. package/build/lib/web/production/components/Icons/IndiaFlagIcon/IndiaFlagIcon.js.map +1 -0
  445. package/build/lib/web/production/components/Icons/IndiaFlagIcon/index.js +2 -0
  446. package/build/lib/web/production/components/Icons/IndiaFlagIcon/index.js.map +1 -0
  447. package/build/lib/web/production/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js +49 -0
  448. package/build/lib/web/production/components/Icons/MagicKonnectIcon/MagicKonnectIcon.js.map +1 -0
  449. package/build/lib/web/production/components/Icons/MagicKonnectIcon/index.js +2 -0
  450. package/build/lib/web/production/components/Icons/MagicKonnectIcon/index.js.map +1 -0
  451. package/build/lib/web/production/components/Icons/WorldwideIcon/WorldwideIcon.js +39 -0
  452. package/build/lib/web/production/components/Icons/WorldwideIcon/WorldwideIcon.js.map +1 -0
  453. package/build/lib/web/production/components/Icons/WorldwideIcon/index.js +2 -0
  454. package/build/lib/web/production/components/Icons/WorldwideIcon/index.js.map +1 -0
  455. package/build/lib/web/production/components/Icons/index.js +3 -0
  456. package/build/lib/web/production/components/Icons/index.js.map +1 -1
  457. package/build/lib/web/production/components/Indicator/Indicator.js +5 -3
  458. package/build/lib/web/production/components/Indicator/Indicator.js.map +1 -1
  459. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +6 -4
  460. package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
  461. package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js +5 -2
  462. package/build/lib/web/production/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.js.map +1 -1
  463. package/build/lib/web/production/components/Input/DropdownInputTriggers/SelectInput.js +5 -3
  464. package/build/lib/web/production/components/Input/DropdownInputTriggers/SelectInput.js.map +1 -1
  465. package/build/lib/web/production/components/Input/OTPInput/OTPInput.js +6 -4
  466. package/build/lib/web/production/components/Input/OTPInput/OTPInput.js.map +1 -1
  467. package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js +2 -2
  468. package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js.map +1 -1
  469. package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +2 -2
  470. package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
  471. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js +2 -2
  472. package/build/lib/web/production/components/Input/SearchInput/SearchInput.js.map +1 -1
  473. package/build/lib/web/production/components/Input/TextArea/TextArea.js +2 -2
  474. package/build/lib/web/production/components/Input/TextArea/TextArea.js.map +1 -1
  475. package/build/lib/web/production/components/Input/TextInput/TextInput.js +2 -2
  476. package/build/lib/web/production/components/Input/TextInput/TextInput.js.map +1 -1
  477. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js +5 -3
  478. package/build/lib/web/production/components/Link/BaseLink/BaseLink.js.map +1 -1
  479. package/build/lib/web/production/components/Link/Link/Link.js +4 -2
  480. package/build/lib/web/production/components/Link/Link/Link.js.map +1 -1
  481. package/build/lib/web/production/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js +18 -8
  482. package/build/lib/web/production/components/Menu/VisualSubComponents/MenuHeaderFooter.web.js.map +1 -1
  483. package/build/lib/web/production/components/Modal/Modal.web.js +10 -4
  484. package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
  485. package/build/lib/web/production/components/Modal/ModalBody.web.js +9 -3
  486. package/build/lib/web/production/components/Modal/ModalBody.web.js.map +1 -1
  487. package/build/lib/web/production/components/Modal/ModalFooter.web.js +7 -2
  488. package/build/lib/web/production/components/Modal/ModalFooter.web.js.map +1 -1
  489. package/build/lib/web/production/components/Modal/ModalHeader.web.js +14 -6
  490. package/build/lib/web/production/components/Modal/ModalHeader.web.js.map +1 -1
  491. package/build/lib/web/production/components/Popover/Popover.web.js +8 -3
  492. package/build/lib/web/production/components/Popover/Popover.web.js.map +1 -1
  493. package/build/lib/web/production/components/Popover/PopoverInteractiveWrapper.web.js.map +1 -1
  494. package/build/lib/web/production/components/ProgressBar/ProgressBar.js +5 -3
  495. package/build/lib/web/production/components/ProgressBar/ProgressBar.js.map +1 -1
  496. package/build/lib/web/production/components/Radio/Radio.js +6 -4
  497. package/build/lib/web/production/components/Radio/Radio.js.map +1 -1
  498. package/build/lib/web/production/components/Radio/RadioGroup/RadioGroup.js +8 -5
  499. package/build/lib/web/production/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  500. package/build/lib/web/production/components/SideNav/SideNav.web.js +5 -3
  501. package/build/lib/web/production/components/SideNav/SideNav.web.js.map +1 -1
  502. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js +13 -4
  503. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavItem.web.js.map +1 -1
  504. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js +10 -4
  505. package/build/lib/web/production/components/SideNav/SideNavItems/SideNavLink.web.js.map +1 -1
  506. package/build/lib/web/production/components/SideNav/SideNavSection.web.js +10 -4
  507. package/build/lib/web/production/components/SideNav/SideNavSection.web.js.map +1 -1
  508. package/build/lib/web/production/components/StepGroup/StepGroup.web.js +5 -3
  509. package/build/lib/web/production/components/StepGroup/StepGroup.web.js.map +1 -1
  510. package/build/lib/web/production/components/StepGroup/StepItem.web.js +13 -7
  511. package/build/lib/web/production/components/StepGroup/StepItem.web.js.map +1 -1
  512. package/build/lib/web/production/components/StepGroup/StepLine.web.js +79 -42
  513. package/build/lib/web/production/components/StepGroup/StepLine.web.js.map +1 -1
  514. package/build/lib/web/production/components/StepGroup/tokens.js +6 -6
  515. package/build/lib/web/production/components/StepGroup/tokens.js.map +1 -1
  516. package/build/lib/web/production/components/Switch/Switch.js +5 -3
  517. package/build/lib/web/production/components/Switch/Switch.js.map +1 -1
  518. package/build/lib/web/production/components/Table/Table.web.js +9 -7
  519. package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
  520. package/build/lib/web/production/components/Table/TableBody.web.js +18 -9
  521. package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
  522. package/build/lib/web/production/components/Table/TableFooter.web.js +18 -9
  523. package/build/lib/web/production/components/Table/TableFooter.web.js.map +1 -1
  524. package/build/lib/web/production/components/Table/TableHeader.web.js +18 -9
  525. package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
  526. package/build/lib/web/production/components/Table/TablePagination.web.js +10 -4
  527. package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
  528. package/build/lib/web/production/components/Table/TableToolbar.web.js +13 -8
  529. package/build/lib/web/production/components/Table/TableToolbar.web.js.map +1 -1
  530. package/build/lib/web/production/components/Tabs/TabItem.web.js +9 -5
  531. package/build/lib/web/production/components/Tabs/TabItem.web.js.map +1 -1
  532. package/build/lib/web/production/components/Tabs/TabList.web.js +5 -3
  533. package/build/lib/web/production/components/Tabs/TabList.web.js.map +1 -1
  534. package/build/lib/web/production/components/Tabs/TabPanel.web.js +10 -5
  535. package/build/lib/web/production/components/Tabs/TabPanel.web.js.map +1 -1
  536. package/build/lib/web/production/components/Tabs/Tabs.web.js +8 -3
  537. package/build/lib/web/production/components/Tabs/Tabs.web.js.map +1 -1
  538. package/build/lib/web/production/components/Tag/Tag.js +6 -4
  539. package/build/lib/web/production/components/Tag/Tag.js.map +1 -1
  540. package/build/lib/web/production/components/Toast/ToastContainer.web.js +8 -3
  541. package/build/lib/web/production/components/Toast/ToastContainer.web.js.map +1 -1
  542. package/build/lib/web/production/components/Tooltip/Tooltip.web.js +8 -3
  543. package/build/lib/web/production/components/Tooltip/Tooltip.web.js.map +1 -1
  544. package/build/lib/web/production/components/TopNav/TabNav/TabNav.web.js +6 -3
  545. package/build/lib/web/production/components/TopNav/TabNav/TabNav.web.js.map +1 -1
  546. package/build/lib/web/production/components/TopNav/TopNav.web.js +8 -5
  547. package/build/lib/web/production/components/TopNav/TopNav.web.js.map +1 -1
  548. package/build/lib/web/production/components/index.js +3 -0
  549. package/build/lib/web/production/components/index.js.map +1 -1
  550. package/build/lib/web/production/tokens/global/size.js +3 -1
  551. package/build/lib/web/production/tokens/global/size.js.map +1 -1
  552. package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js +2 -0
  553. package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js.map +1 -0
  554. package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js +20 -0
  555. package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js.map +1 -0
  556. package/build/types/components/index.d.ts +228 -190
  557. package/build/types/components/index.native.d.ts +152 -132
  558. package/build/types/tokens/index.d.ts +3 -1
  559. package/build/types/tokens/index.native.d.ts +3 -1
  560. package/package.json +1 -1
@@ -12,6 +12,7 @@ import { useFirstRender } from '../../../utils/useFirstRender.js';
12
12
  import { useTableContext } from '../../Table/TableContext.js';
13
13
  import { rowDensityToIsTableInputCellMapping, tableEditableCellRowDensityToInputSizeMap, validationStateToInputTrailingIconMap } from '../../Table/tokens.js';
14
14
  import { useTableEditableCell } from '../../Table/TableEditableCellContext.js';
15
+ import '../../../utils/makeAnalyticsAttribute/index.js';
15
16
  import '../../../utils/fireNativeEvent/index.js';
16
17
  import { jsx } from 'react/jsx-runtime';
17
18
  import { isBrowser } from '../../../utils/platform/isBrowser.js';
@@ -19,6 +20,7 @@ import { fireNativeEvent } from '../../../utils/fireNativeEvent/fireNativeEvent.
19
20
  import { isReactNative } from '../../../utils/platform/isReactNative.js';
20
21
  import { BaseInput } from '../BaseInput/BaseInput.js';
21
22
  import { MetaConstants } from '../../../utils/metaAttribute/metaConstants.js';
23
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
22
24
 
23
25
  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; }
24
26
  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; }
@@ -226,7 +228,7 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
226
228
  showHintsAsTooltip: true
227
229
  };
228
230
  var isValidationStateNone = props.validationState === 'none' || props.validationState === undefined;
229
- return /*#__PURE__*/jsx(BaseInput, _objectSpread({
231
+ return /*#__PURE__*/jsx(BaseInput, _objectSpread(_objectSpread({
230
232
  as: props.isSelectInput ? 'button' : 'input',
231
233
  ref: !isReactNative() ?
232
234
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -309,7 +311,8 @@ var _BaseDropdownInputTrigger = function _BaseDropdownInputTrigger(props, ref) {
309
311
  ,
310
312
  onChange: props.isSelectInput ? undefined : props.onInputValueChange,
311
313
  onKeyDown: props.onTriggerKeydown,
312
- size: props.size,
314
+ size: props.size
315
+ }, makeAnalyticsAttribute(props)), {}, {
313
316
  onTrailingInteractionElementClick: function onTrailingInteractionElementClick() {
314
317
  if (!props.isDisabled) {
315
318
  // Icon onClicks to the SelectInput itself
@@ -1 +1 @@
1
- {"version":3,"file":"BaseDropdownInputTrigger.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseInput } from '../BaseInput';\nimport type { BaseInputProps } from '../BaseInput';\nimport { InputChevronIcon } from './InputChevronIcon';\nimport type { BaseDropdownInputTriggerProps, useControlledDropdownInputProps } from './types';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { isReactNative, isBrowser } from '~utils';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport type { BladeElementRef } from '~utils/types';\nimport { useFirstRender } from '~utils/useFirstRender';\nimport { useTableContext } from '~components/Table/TableContext';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from '~components/Table/tokens';\nimport { useTableEditableCell } from '~components/Table/TableEditableCellContext';\nimport { fireNativeEvent } from '~utils/fireNativeEvent';\n\nconst useControlledDropdownInput = (props: useControlledDropdownInputProps): void => {\n const isFirstRender = useFirstRender();\n const {\n changeCallbackTriggerer,\n isControlled,\n options,\n selectedIndices,\n controlledValueIndices,\n setSelectedIndices,\n selectionType,\n setIsControlled,\n } = useDropdown();\n\n const getValuesArrayFromIndices = (): string[] => {\n let indices: number[] = [];\n if (isControlled) {\n indices = controlledValueIndices;\n } else {\n indices = selectedIndices;\n }\n\n return indices.map((selectionIndex) => options[selectionIndex].value);\n };\n\n const selectValues = (valuesToSelect: string | string[]): void => {\n if (options.length > 0) {\n // we use empty `''` for clearing the input\n if (isEmpty(valuesToSelect)) {\n setSelectedIndices([]);\n } else if (typeof valuesToSelect === 'string') {\n // single select control\n const selectedItemIndex = options.findIndex((option) => option.value === valuesToSelect);\n if (selectedItemIndex >= 0) {\n setSelectedIndices([selectedItemIndex]);\n }\n } else {\n // multiselect control\n\n // Handles repeated values in user state\n const uniqueValues = Array.from(new Set(valuesToSelect));\n // Handle selectionType single with multiselect values\n const userValues = selectionType === 'single' ? [valuesToSelect?.[0]] : uniqueValues;\n\n const selectedItemIndices = userValues\n .map((optionValue) => options.findIndex((option) => option.value === optionValue))\n .filter((value) => value >= 0);\n\n setSelectedIndices(selectedItemIndices);\n }\n }\n };\n\n // Handles `defaultValue` prop\n React.useEffect(() => {\n if (options.length > 0 && props.defaultValue) {\n selectValues(props.defaultValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options.length]);\n\n // Handles `value` prop\n React.useEffect(() => {\n if (options.length > 0 && props.value !== undefined) {\n if (!isControlled) {\n setIsControlled(true);\n }\n\n selectValues(props.value);\n\n // in single select AutoComplete, we have to set inputValue of autocomplete according to the new selection.\n if (selectionType === 'single' && !Array.isArray(props.value) && !props.isSelectInput) {\n props.syncInputValueWithSelection?.(props.value);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.value, options]);\n\n // onChange behaviour\n React.useEffect(() => {\n // Ignore calling onChange on mount\n\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name,\n values: getValuesArrayFromIndices(),\n });\n if (isBrowser()) {\n fireNativeEvent(props.triggererRef, ['change', 'input']);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n};\n\nconst _BaseDropdownInputTrigger = (\n props: BaseDropdownInputTriggerProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const {\n isOpen,\n activeTagIndex,\n setActiveTagIndex,\n displayValue,\n selectionType,\n dropdownTriggerer,\n dropdownBaseId,\n selectedIndices,\n triggererRef,\n triggererWrapperRef,\n isTagDismissedRef,\n onTriggerClick,\n value,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n activeIndex,\n hasFooterAction,\n hasAutoCompleteInBottomSheetHeader,\n options,\n removeOption,\n setChangeCallbackTriggerer,\n changeCallbackTriggerer,\n } = useDropdown();\n const { rowDensity } = useTableContext();\n const { isInsideTableEditableCell } = useTableEditableCell();\n\n const dropdownTriggerPlaceholder = props.placeholder ?? 'Select Option';\n const isAutoCompleteInHeader = !props.isSelectInput && hasAutoCompleteInBottomSheetHeader;\n\n const getShowAllTags = React.useCallback((): boolean => {\n if (hasAutoCompleteInBottomSheetHeader) {\n // When AutoComplete is in bottomsheet header, we never want to show all tags in outer select input\n if (props.isSelectInput) {\n return false;\n }\n\n // ... And we always want to show all tags in inner AutoComplete\n return true;\n }\n\n return isOpen;\n }, [hasAutoCompleteInBottomSheetHeader, props.isSelectInput, isOpen]);\n\n useControlledDropdownInput({\n onChange: props.onChange,\n name: props.name,\n value: props.value,\n defaultValue: props.defaultValue,\n syncInputValueWithSelection: props.syncInputValueWithSelection,\n isSelectInput: props.isSelectInput,\n triggererRef,\n });\n\n const getValue = (): string | undefined => {\n let prefix = '';\n if (props.labelPosition === 'inside-input' && props.label) {\n prefix = `${props.label}: `;\n }\n\n if (props.isSelectInput) {\n if (selectionType === 'single') {\n return `${prefix}${displayValue}`;\n }\n\n // In multiselect, we return tags so no display value is required\n return undefined;\n }\n\n // In AutoComplete, input has a special value too\n return props.inputValue;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }) => {\n if (selectionType === 'single') {\n return undefined;\n }\n\n return getTagsGroup({\n size,\n tags: selectedIndices.map((selectedIndex) => options[selectedIndex]?.title),\n activeTagIndex,\n isDisabled: props.isDisabled,\n onDismiss: ({ tagIndex }) => {\n if (isTagDismissedRef.current) {\n isTagDismissedRef.current.value = true;\n }\n\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n\n removeOption(selectedIndices[tagIndex]);\n setChangeCallbackTriggerer(Number(changeCallbackTriggerer) + 1);\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedIndices, selectionType, activeTagIndex, changeCallbackTriggerer, options],\n );\n\n const tableInputProps: Partial<BaseInputProps> = {\n isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],\n id: 'table-editable-cell-input',\n size: tableEditableCellRowDensityToInputSizeMap[rowDensity],\n trailingIcon: validationStateToInputTrailingIconMap[props.validationState ?? 'none'],\n showHintsAsTooltip: true,\n };\n\n const isValidationStateNone =\n props.validationState === 'none' || props.validationState === undefined;\n\n return (\n <BaseInput\n as={props.isSelectInput ? 'button' : 'input'}\n ref={\n (!isReactNative()\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (node: any) => {\n triggererRef.current = node;\n if (ref) {\n if (typeof ref === 'function') {\n ref(node);\n } else {\n ref.current = node;\n }\n }\n }\n : null) as never\n }\n isDropdownTrigger={true}\n setInputWrapperRef={(wrapperNode) => {\n triggererWrapperRef.current = wrapperNode;\n }}\n maxTagRows={props.maxRows ?? 'single'}\n tags={getTags({ size: props.size || 'medium' })}\n showAllTags={getShowAllTags()}\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n textAlign=\"left\"\n // Form Props\n label={props.label as string}\n placeholder={\n selectionType === 'multiple' && selectedIndices.length > 0\n ? undefined\n : dropdownTriggerPlaceholder\n }\n hideLabelText={props.label?.length === 0}\n accessibilityLabel={props.accessibilityLabel}\n labelPosition={props.labelPosition === 'inside-input' ? undefined : props.labelPosition}\n isLabelInsideInput={props.labelPosition === 'inside-input'}\n necessityIndicator={props.necessityIndicator}\n autoCompleteSuggestionType=\"none\"\n validationState={props.validationState}\n helpText={props.helpText}\n errorText={props.errorText}\n successText={props.successText}\n name={props.name}\n isDisabled={props.isDisabled}\n isRequired={props.isRequired}\n prefix={props.prefix}\n suffix={props.suffix}\n autoFocus={props.autoFocus} // eslint-disable-line jsx-a11y/no-autofocus\n value={getValue()}\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onTriggerClick?.(e);\n }}\n onFocus={props.onFocus}\n onBlur={({ name }) => {\n props.onBlur?.({ name, value });\n }}\n leadingIcon={props.icon}\n // Meta Props\n componentName={props.isSelectInput ? MetaConstants.SelectInput : MetaConstants.AutoComplete}\n testID={props.testID}\n // a11y Props\n id={`${dropdownBaseId}-trigger`}\n labelId={`${dropdownBaseId}-label`}\n hasPopup={getActionListContainerRole(hasFooterAction, dropdownTriggerer)}\n isPopupExpanded={isOpen}\n activeDescendant={activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined}\n popupId={`${dropdownBaseId}-actionlist`}\n // Special Props for Unique behaviour between Select and AutoComplete\n onChange={props.isSelectInput ? undefined : props.onInputValueChange}\n onKeyDown={props.onTriggerKeydown}\n size={props.size}\n onTrailingInteractionElementClick={() => {\n if (!props.isDisabled) {\n // Icon onClicks to the SelectInput itself\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n onTriggerClick();\n }\n }}\n trailingInteractionElement={\n isAutoCompleteInHeader || (isInsideTableEditableCell && !isValidationStateNone) ? null : (\n <InputChevronIcon isDisabled={props.isDisabled} isOpen={isOpen} />\n )\n }\n {...(isInsideTableEditableCell ? tableInputProps : undefined)}\n />\n );\n};\n\nconst BaseDropdownInputTrigger = React.forwardRef(_BaseDropdownInputTrigger);\n\nexport { BaseDropdownInputTrigger };\n"],"names":["useControlledDropdownInput","props","isFirstRender","useFirstRender","_useDropdown","useDropdown","changeCallbackTriggerer","isControlled","options","selectedIndices","controlledValueIndices","setSelectedIndices","selectionType","setIsControlled","getValuesArrayFromIndices","indices","map","selectionIndex","value","selectValues","valuesToSelect","length","isEmpty","selectedItemIndex","findIndex","option","uniqueValues","Array","from","Set","userValues","selectedItemIndices","optionValue","filter","React","useEffect","defaultValue","undefined","isArray","isSelectInput","_props$syncInputValue","syncInputValueWithSelection","call","_props$onChange","onChange","name","values","isBrowser","fireNativeEvent","triggererRef","_BaseDropdownInputTrigger","ref","_props$placeholder","_props$validationStat","_props$maxRows","_props$label","_useDropdown2","isOpen","activeTagIndex","setActiveTagIndex","displayValue","dropdownTriggerer","dropdownBaseId","triggererWrapperRef","isTagDismissedRef","onTriggerClick","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","activeIndex","hasFooterAction","hasAutoCompleteInBottomSheetHeader","removeOption","setChangeCallbackTriggerer","_useTableContext","useTableContext","rowDensity","_useTableEditableCell","useTableEditableCell","isInsideTableEditableCell","dropdownTriggerPlaceholder","placeholder","isAutoCompleteInHeader","getShowAllTags","useCallback","getValue","prefix","labelPosition","label","concat","inputValue","getTags","useMemo","_ref","size","getTagsGroup","tags","selectedIndex","_options$selectedInde","title","isDisabled","onDismiss","_ref2","tagIndex","current","isReactNative","_triggererRef$current","focus","Number","tableInputProps","isTableInputCell","rowDensityToIsTableInputCellMapping","id","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","validationState","showHintsAsTooltip","isValidationStateNone","_jsx","BaseInput","_objectSpread","as","node","isDropdownTrigger","setInputWrapperRef","wrapperNode","maxTagRows","maxRows","showAllTags","textAlign","hideLabelText","accessibilityLabel","isLabelInsideInput","necessityIndicator","autoCompleteSuggestionType","helpText","errorText","successText","isRequired","suffix","autoFocus","onClick","e","_props$onTriggerClick","onFocus","onBlur","_ref3","_props$onBlur","leadingIcon","icon","componentName","MetaConstants","SelectInput","AutoComplete","testID","labelId","hasPopup","getActionListContainerRole","isPopupExpanded","activeDescendant","popupId","onInputValueChange","onKeyDown","onTriggerKeydown","onTrailingInteractionElementClick","_triggererRef$current2","trailingInteractionElement","InputChevronIcon","BaseDropdownInputTrigger","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"BaseDropdownInputTrigger.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/BaseDropdownInputTrigger.tsx"],"sourcesContent":["import React from 'react';\nimport { BaseInput } from '../BaseInput';\nimport type { BaseInputProps } from '../BaseInput';\nimport { InputChevronIcon } from './InputChevronIcon';\nimport type { BaseDropdownInputTriggerProps, useControlledDropdownInputProps } from './types';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport { isReactNative, isBrowser } from '~utils';\nimport { getActionListContainerRole } from '~components/ActionList/getA11yRoles';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport type { BladeElementRef } from '~utils/types';\nimport { useFirstRender } from '~utils/useFirstRender';\nimport { useTableContext } from '~components/Table/TableContext';\nimport {\n rowDensityToIsTableInputCellMapping,\n tableEditableCellRowDensityToInputSizeMap,\n validationStateToInputTrailingIconMap,\n} from '~components/Table/tokens';\nimport { useTableEditableCell } from '~components/Table/TableEditableCellContext';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { fireNativeEvent } from '~utils/fireNativeEvent';\n\nconst useControlledDropdownInput = (props: useControlledDropdownInputProps): void => {\n const isFirstRender = useFirstRender();\n const {\n changeCallbackTriggerer,\n isControlled,\n options,\n selectedIndices,\n controlledValueIndices,\n setSelectedIndices,\n selectionType,\n setIsControlled,\n } = useDropdown();\n\n const getValuesArrayFromIndices = (): string[] => {\n let indices: number[] = [];\n if (isControlled) {\n indices = controlledValueIndices;\n } else {\n indices = selectedIndices;\n }\n\n return indices.map((selectionIndex) => options[selectionIndex].value);\n };\n\n const selectValues = (valuesToSelect: string | string[]): void => {\n if (options.length > 0) {\n // we use empty `''` for clearing the input\n if (isEmpty(valuesToSelect)) {\n setSelectedIndices([]);\n } else if (typeof valuesToSelect === 'string') {\n // single select control\n const selectedItemIndex = options.findIndex((option) => option.value === valuesToSelect);\n if (selectedItemIndex >= 0) {\n setSelectedIndices([selectedItemIndex]);\n }\n } else {\n // multiselect control\n\n // Handles repeated values in user state\n const uniqueValues = Array.from(new Set(valuesToSelect));\n // Handle selectionType single with multiselect values\n const userValues = selectionType === 'single' ? [valuesToSelect?.[0]] : uniqueValues;\n\n const selectedItemIndices = userValues\n .map((optionValue) => options.findIndex((option) => option.value === optionValue))\n .filter((value) => value >= 0);\n\n setSelectedIndices(selectedItemIndices);\n }\n }\n };\n\n // Handles `defaultValue` prop\n React.useEffect(() => {\n if (options.length > 0 && props.defaultValue) {\n selectValues(props.defaultValue);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options.length]);\n\n // Handles `value` prop\n React.useEffect(() => {\n if (options.length > 0 && props.value !== undefined) {\n if (!isControlled) {\n setIsControlled(true);\n }\n\n selectValues(props.value);\n\n // in single select AutoComplete, we have to set inputValue of autocomplete according to the new selection.\n if (selectionType === 'single' && !Array.isArray(props.value) && !props.isSelectInput) {\n props.syncInputValueWithSelection?.(props.value);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props.value, options]);\n\n // onChange behaviour\n React.useEffect(() => {\n // Ignore calling onChange on mount\n\n if (!isFirstRender) {\n props.onChange?.({\n name: props.name,\n values: getValuesArrayFromIndices(),\n });\n if (isBrowser()) {\n fireNativeEvent(props.triggererRef, ['change', 'input']);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [changeCallbackTriggerer]);\n};\n\nconst _BaseDropdownInputTrigger = (\n props: BaseDropdownInputTriggerProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const {\n isOpen,\n activeTagIndex,\n setActiveTagIndex,\n displayValue,\n selectionType,\n dropdownTriggerer,\n dropdownBaseId,\n selectedIndices,\n triggererRef,\n triggererWrapperRef,\n isTagDismissedRef,\n onTriggerClick,\n value,\n shouldIgnoreBlurAnimation,\n setShouldIgnoreBlurAnimation,\n activeIndex,\n hasFooterAction,\n hasAutoCompleteInBottomSheetHeader,\n options,\n removeOption,\n setChangeCallbackTriggerer,\n changeCallbackTriggerer,\n } = useDropdown();\n const { rowDensity } = useTableContext();\n const { isInsideTableEditableCell } = useTableEditableCell();\n\n const dropdownTriggerPlaceholder = props.placeholder ?? 'Select Option';\n const isAutoCompleteInHeader = !props.isSelectInput && hasAutoCompleteInBottomSheetHeader;\n\n const getShowAllTags = React.useCallback((): boolean => {\n if (hasAutoCompleteInBottomSheetHeader) {\n // When AutoComplete is in bottomsheet header, we never want to show all tags in outer select input\n if (props.isSelectInput) {\n return false;\n }\n\n // ... And we always want to show all tags in inner AutoComplete\n return true;\n }\n\n return isOpen;\n }, [hasAutoCompleteInBottomSheetHeader, props.isSelectInput, isOpen]);\n\n useControlledDropdownInput({\n onChange: props.onChange,\n name: props.name,\n value: props.value,\n defaultValue: props.defaultValue,\n syncInputValueWithSelection: props.syncInputValueWithSelection,\n isSelectInput: props.isSelectInput,\n triggererRef,\n });\n\n const getValue = (): string | undefined => {\n let prefix = '';\n if (props.labelPosition === 'inside-input' && props.label) {\n prefix = `${props.label}: `;\n }\n\n if (props.isSelectInput) {\n if (selectionType === 'single') {\n return `${prefix}${displayValue}`;\n }\n\n // In multiselect, we return tags so no display value is required\n return undefined;\n }\n\n // In AutoComplete, input has a special value too\n return props.inputValue;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }) => {\n if (selectionType === 'single') {\n return undefined;\n }\n\n return getTagsGroup({\n size,\n tags: selectedIndices.map((selectedIndex) => options[selectedIndex]?.title),\n activeTagIndex,\n isDisabled: props.isDisabled,\n onDismiss: ({ tagIndex }) => {\n if (isTagDismissedRef.current) {\n isTagDismissedRef.current.value = true;\n }\n\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n\n removeOption(selectedIndices[tagIndex]);\n setChangeCallbackTriggerer(Number(changeCallbackTriggerer) + 1);\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [selectedIndices, selectionType, activeTagIndex, changeCallbackTriggerer, options],\n );\n\n const tableInputProps: Partial<BaseInputProps> = {\n isTableInputCell: rowDensityToIsTableInputCellMapping[rowDensity],\n id: 'table-editable-cell-input',\n size: tableEditableCellRowDensityToInputSizeMap[rowDensity],\n trailingIcon: validationStateToInputTrailingIconMap[props.validationState ?? 'none'],\n showHintsAsTooltip: true,\n };\n\n const isValidationStateNone =\n props.validationState === 'none' || props.validationState === undefined;\n\n return (\n <BaseInput\n as={props.isSelectInput ? 'button' : 'input'}\n ref={\n (!isReactNative()\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (node: any) => {\n triggererRef.current = node;\n if (ref) {\n if (typeof ref === 'function') {\n ref(node);\n } else {\n ref.current = node;\n }\n }\n }\n : null) as never\n }\n isDropdownTrigger={true}\n setInputWrapperRef={(wrapperNode) => {\n triggererWrapperRef.current = wrapperNode;\n }}\n maxTagRows={props.maxRows ?? 'single'}\n tags={getTags({ size: props.size || 'medium' })}\n showAllTags={getShowAllTags()}\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n shouldIgnoreBlurAnimation={shouldIgnoreBlurAnimation}\n setShouldIgnoreBlurAnimation={setShouldIgnoreBlurAnimation}\n textAlign=\"left\"\n // Form Props\n label={props.label as string}\n placeholder={\n selectionType === 'multiple' && selectedIndices.length > 0\n ? undefined\n : dropdownTriggerPlaceholder\n }\n hideLabelText={props.label?.length === 0}\n accessibilityLabel={props.accessibilityLabel}\n labelPosition={props.labelPosition === 'inside-input' ? undefined : props.labelPosition}\n isLabelInsideInput={props.labelPosition === 'inside-input'}\n necessityIndicator={props.necessityIndicator}\n autoCompleteSuggestionType=\"none\"\n validationState={props.validationState}\n helpText={props.helpText}\n errorText={props.errorText}\n successText={props.successText}\n name={props.name}\n isDisabled={props.isDisabled}\n isRequired={props.isRequired}\n prefix={props.prefix}\n suffix={props.suffix}\n autoFocus={props.autoFocus} // eslint-disable-line jsx-a11y/no-autofocus\n value={getValue()}\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onTriggerClick?.(e);\n }}\n onFocus={props.onFocus}\n onBlur={({ name }) => {\n props.onBlur?.({ name, value });\n }}\n leadingIcon={props.icon}\n // Meta Props\n componentName={props.isSelectInput ? MetaConstants.SelectInput : MetaConstants.AutoComplete}\n testID={props.testID}\n // a11y Props\n id={`${dropdownBaseId}-trigger`}\n labelId={`${dropdownBaseId}-label`}\n hasPopup={getActionListContainerRole(hasFooterAction, dropdownTriggerer)}\n isPopupExpanded={isOpen}\n activeDescendant={activeIndex >= 0 ? `${dropdownBaseId}-${activeIndex}` : undefined}\n popupId={`${dropdownBaseId}-actionlist`}\n // Special Props for Unique behaviour between Select and AutoComplete\n onChange={props.isSelectInput ? undefined : props.onInputValueChange}\n onKeyDown={props.onTriggerKeydown}\n size={props.size}\n {...makeAnalyticsAttribute(props)}\n onTrailingInteractionElementClick={() => {\n if (!props.isDisabled) {\n // Icon onClicks to the SelectInput itself\n if (!isReactNative()) {\n triggererRef.current?.focus();\n }\n onTriggerClick();\n }\n }}\n trailingInteractionElement={\n isAutoCompleteInHeader || (isInsideTableEditableCell && !isValidationStateNone) ? null : (\n <InputChevronIcon isDisabled={props.isDisabled} isOpen={isOpen} />\n )\n }\n {...(isInsideTableEditableCell ? tableInputProps : undefined)}\n />\n );\n};\n\nconst BaseDropdownInputTrigger = React.forwardRef(_BaseDropdownInputTrigger);\n\nexport { BaseDropdownInputTrigger };\n"],"names":["useControlledDropdownInput","props","isFirstRender","useFirstRender","_useDropdown","useDropdown","changeCallbackTriggerer","isControlled","options","selectedIndices","controlledValueIndices","setSelectedIndices","selectionType","setIsControlled","getValuesArrayFromIndices","indices","map","selectionIndex","value","selectValues","valuesToSelect","length","isEmpty","selectedItemIndex","findIndex","option","uniqueValues","Array","from","Set","userValues","selectedItemIndices","optionValue","filter","React","useEffect","defaultValue","undefined","isArray","isSelectInput","_props$syncInputValue","syncInputValueWithSelection","call","_props$onChange","onChange","name","values","isBrowser","fireNativeEvent","triggererRef","_BaseDropdownInputTrigger","ref","_props$placeholder","_props$validationStat","_props$maxRows","_props$label","_useDropdown2","isOpen","activeTagIndex","setActiveTagIndex","displayValue","dropdownTriggerer","dropdownBaseId","triggererWrapperRef","isTagDismissedRef","onTriggerClick","shouldIgnoreBlurAnimation","setShouldIgnoreBlurAnimation","activeIndex","hasFooterAction","hasAutoCompleteInBottomSheetHeader","removeOption","setChangeCallbackTriggerer","_useTableContext","useTableContext","rowDensity","_useTableEditableCell","useTableEditableCell","isInsideTableEditableCell","dropdownTriggerPlaceholder","placeholder","isAutoCompleteInHeader","getShowAllTags","useCallback","getValue","prefix","labelPosition","label","concat","inputValue","getTags","useMemo","_ref","size","getTagsGroup","tags","selectedIndex","_options$selectedInde","title","isDisabled","onDismiss","_ref2","tagIndex","current","isReactNative","_triggererRef$current","focus","Number","tableInputProps","isTableInputCell","rowDensityToIsTableInputCellMapping","id","tableEditableCellRowDensityToInputSizeMap","trailingIcon","validationStateToInputTrailingIconMap","validationState","showHintsAsTooltip","isValidationStateNone","_jsx","BaseInput","_objectSpread","as","node","isDropdownTrigger","setInputWrapperRef","wrapperNode","maxTagRows","maxRows","showAllTags","textAlign","hideLabelText","accessibilityLabel","isLabelInsideInput","necessityIndicator","autoCompleteSuggestionType","helpText","errorText","successText","isRequired","suffix","autoFocus","onClick","e","_props$onTriggerClick","onFocus","onBlur","_ref3","_props$onBlur","leadingIcon","icon","componentName","MetaConstants","SelectInput","AutoComplete","testID","labelId","hasPopup","getActionListContainerRole","isPopupExpanded","activeDescendant","popupId","onInputValueChange","onKeyDown","onTriggerKeydown","makeAnalyticsAttribute","onTrailingInteractionElementClick","_triggererRef$current2","trailingInteractionElement","InputChevronIcon","BaseDropdownInputTrigger","forwardRef"],"mappings":"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"}
@@ -7,10 +7,12 @@ import '../../VisuallyHidden/index.web.js';
7
7
  import '../../../utils/index.js';
8
8
  import '../../../utils/assignWithoutSideEffects/index.js';
9
9
  import { dropdownComponentIds } from '../../Dropdown/dropdownComponentIds.js';
10
+ import '../../../utils/makeAnalyticsAttribute/index.js';
10
11
  import { jsxs, jsx } from 'react/jsx-runtime';
11
12
  import { BaseBox } from '../../Box/BaseBox/BaseBox.web.js';
12
13
  import { isReactNative } from '../../../utils/platform/isReactNative.js';
13
14
  import { VisuallyHidden } from '../../VisuallyHidden/VisuallyHidden.web.js';
15
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
14
16
  import { assignWithoutSideEffects } from '../../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
15
17
 
16
18
  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; }
@@ -27,7 +29,7 @@ var _SelectInput = function _SelectInput(props, ref) {
27
29
  jsxs(BaseBox, {
28
30
  position: "relative",
29
31
  children: [!isReactNative() ? /*#__PURE__*/jsx(VisuallyHidden, {
30
- children: /*#__PURE__*/jsx("input", {
32
+ children: /*#__PURE__*/jsx("input", _objectSpread(_objectSpread({
31
33
  onFocus: function onFocus() {
32
34
  var _triggererRef$current;
33
35
  (_triggererRef$current = triggererRef.current) === null || _triggererRef$current === void 0 ? void 0 : _triggererRef$current.focus();
@@ -37,14 +39,14 @@ var _SelectInput = function _SelectInput(props, ref) {
37
39
  required: props.isRequired,
38
40
  name: props.name,
39
41
  value: value
42
+ }, makeAnalyticsAttribute(props)), {}, {
40
43
  // Adding onChange to surpass no onChange on controlled component warning
41
44
  // eslint-disable-next-line @typescript-eslint/no-empty-function
42
- ,
43
45
  onChange: function onChange() {}
44
46
  // Accessibility is covered in the select input itself so we hide this field from a11y tree
45
47
  ,
46
48
  "aria-hidden": true
47
- })
49
+ }))
48
50
  }) : null, /*#__PURE__*/jsx(BaseDropdownInputTrigger, _objectSpread(_objectSpread({}, props), {}, {
49
51
  isSelectInput: true,
50
52
  onTriggerKeydown: onTriggerKeydown,
@@ -1 +1 @@
1
- {"version":3,"file":"SelectInput.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/SelectInput.tsx"],"sourcesContent":["import React from 'react';\nimport type { SelectInputProps } from './types';\nimport { BaseDropdownInputTrigger } from './BaseDropdownInputTrigger';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport BaseBox from '~components/Box/BaseBox';\nimport { VisuallyHidden } from '~components/VisuallyHidden';\nimport { isReactNative } from '~utils';\nimport type { BladeElementRef } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\n\nconst _SelectInput = (\n props: SelectInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const { value, triggererRef, onTriggerKeydown, onTriggerClick } = useDropdown();\n\n return (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <BaseBox position=\"relative\">\n {!isReactNative() ? (\n <VisuallyHidden>\n <input\n onFocus={() => {\n triggererRef.current?.focus();\n }}\n ref={ref as React.Ref<HTMLInputElement>}\n tabIndex={-1}\n required={props.isRequired}\n name={props.name}\n value={value}\n // Adding onChange to surpass no onChange on controlled component warning\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onChange={() => {}}\n // Accessibility is covered in the select input itself so we hide this field from a11y tree\n aria-hidden={true}\n />\n </VisuallyHidden>\n ) : null}\n <BaseDropdownInputTrigger\n {...props}\n isSelectInput={true}\n onTriggerKeydown={onTriggerKeydown}\n onTriggerClick={(e) => {\n onTriggerClick();\n props?.onClick?.(e);\n }}\n />\n </BaseBox>\n );\n};\n\n/**\n * ### SelectInput\n *\n * Our equivalent of `<select>` tag. Lets you select items from given options.\n *\n * To be used in combination of `Dropdown` and `ActionList` component\n *\n * ---\n *\n * #### Usage\n *\n * ```diff\n * <Dropdown>\n * + <SelectInput label=\"Select Fruits\" />\n * <DropdownOverlay>\n * <ActionList>\n * <ActionListItem title=\"Mango\" value=\"mango\" />\n * <ActionListItem title=\"Apple\" value=\"apple\" />\n * </ActionList>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-dropdown-with-select--with-single-select SelectInput Documentation}.\n */\n\nconst SelectInput = assignWithoutSideEffects(React.forwardRef(_SelectInput), {\n componentId: dropdownComponentIds.triggers.SelectInput,\n});\n\nexport { SelectInput };\n"],"names":["_SelectInput","props","ref","_useDropdown","useDropdown","value","triggererRef","onTriggerKeydown","onTriggerClick","_jsxs","BaseBox","position","children","isReactNative","_jsx","VisuallyHidden","onFocus","_triggererRef$current","current","focus","tabIndex","required","isRequired","name","onChange","BaseDropdownInputTrigger","_objectSpread","isSelectInput","e","_props$onClick","onClick","call","SelectInput","assignWithoutSideEffects","React","forwardRef","componentId","dropdownComponentIds","triggers"],"mappings":";;;;;;;;;;;;;;;;;AAWA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAChBC,KAAuB,EACvBC,GAAwC,EACjB;AACvB,EAAA,IAAAC,YAAA,GAAkEC,WAAW,EAAE;IAAvEC,KAAK,GAAAF,YAAA,CAALE,KAAK;IAAEC,YAAY,GAAAH,YAAA,CAAZG,YAAY;IAAEC,gBAAgB,GAAAJ,YAAA,CAAhBI,gBAAgB;IAAEC,eAAc,GAAAL,YAAA,CAAdK,cAAc,CAAA;AAE7D,EAAA;AAAA;AACE;AACAC,IAAAA,IAAA,CAACC,OAAO,EAAA;AAACC,MAAAA,QAAQ,EAAC,UAAU;MAAAC,QAAA,EAAA,CACzB,CAACC,aAAa,EAAE,gBACfC,GAAA,CAACC,cAAc,EAAA;AAAAH,QAAAA,QAAA,eACbE,GAAA,CAAA,OAAA,EAAA;UACEE,OAAO,EAAE,SAAAA,OAAAA,GAAM;AAAA,YAAA,IAAAC,qBAAA,CAAA;AACb,YAAA,CAAAA,qBAAA,GAAAX,YAAY,CAACY,OAAO,MAAA,IAAA,IAAAD,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAApBA,qBAAA,CAAsBE,KAAK,EAAE,CAAA;WAC7B;AACFjB,UAAAA,GAAG,EAAEA,GAAmC;UACxCkB,QAAQ,EAAE,CAAC,CAAE;UACbC,QAAQ,EAAEpB,KAAK,CAACqB,UAAW;UAC3BC,IAAI,EAAEtB,KAAK,CAACsB,IAAK;AACjBlB,UAAAA,KAAK,EAAEA,KAAAA;AACP;AACA;AAAA;AACAmB,UAAAA,QAAQ,EAAE,SAAAA,QAAA,GAAM,EAAC;AACjB;AAAA;UACA,aAAa,EAAA,IAAA;SACd,CAAA;AAAC,OACY,CAAC,GACf,IAAI,eACRV,GAAA,CAACW,wBAAwB,EAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACnBzB,KAAK,CAAA,EAAA,EAAA,EAAA;AACT0B,QAAAA,aAAa,EAAE,IAAK;AACpBpB,QAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,QAAAA,cAAc,EAAE,SAAAA,cAACoB,CAAAA,CAAC,EAAK;AAAA,UAAA,IAAAC,cAAA,CAAA;AACrBrB,UAAAA,eAAc,EAAE,CAAA;AAChBP,UAAAA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA4B,cAAA,GAAL5B,KAAK,CAAE6B,OAAO,MAAA,IAAA,IAAAD,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAA,CAAAE,IAAA,CAAA9B,KAAK,EAAY2B,CAAC,CAAC,CAAA;AACrB,SAAA;AAAE,OAAA,CACH,CAAC,CAAA;KACK,CAAA;AAAC,IAAA;AAEd,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEMI,IAAAA,WAAW,gBAAGC,wBAAwB,eAACC,cAAK,CAACC,UAAU,CAACnC,YAAY,CAAC,EAAE;AAC3EoC,EAAAA,WAAW,EAAEC,oBAAoB,CAACC,QAAQ,CAACN,WAAAA;AAC7C,CAAC;;;;"}
1
+ {"version":3,"file":"SelectInput.js","sources":["../../../../../../../src/components/Input/DropdownInputTriggers/SelectInput.tsx"],"sourcesContent":["import React from 'react';\nimport type { SelectInputProps } from './types';\nimport { BaseDropdownInputTrigger } from './BaseDropdownInputTrigger';\nimport { useDropdown } from '~components/Dropdown/useDropdown';\nimport BaseBox from '~components/Box/BaseBox';\nimport { VisuallyHidden } from '~components/VisuallyHidden';\nimport { isReactNative } from '~utils';\nimport type { BladeElementRef } from '~utils/types';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { dropdownComponentIds } from '~components/Dropdown/dropdownComponentIds';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _SelectInput = (\n props: SelectInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n const { value, triggererRef, onTriggerKeydown, onTriggerClick } = useDropdown();\n\n return (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <BaseBox position=\"relative\">\n {!isReactNative() ? (\n <VisuallyHidden>\n <input\n onFocus={() => {\n triggererRef.current?.focus();\n }}\n ref={ref as React.Ref<HTMLInputElement>}\n tabIndex={-1}\n required={props.isRequired}\n name={props.name}\n value={value}\n {...makeAnalyticsAttribute(props)}\n // Adding onChange to surpass no onChange on controlled component warning\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n onChange={() => {}}\n // Accessibility is covered in the select input itself so we hide this field from a11y tree\n aria-hidden={true}\n />\n </VisuallyHidden>\n ) : null}\n <BaseDropdownInputTrigger\n {...props}\n isSelectInput={true}\n onTriggerKeydown={onTriggerKeydown}\n onTriggerClick={(e) => {\n onTriggerClick();\n props?.onClick?.(e);\n }}\n />\n </BaseBox>\n );\n};\n\n/**\n * ### SelectInput\n *\n * Our equivalent of `<select>` tag. Lets you select items from given options.\n *\n * To be used in combination of `Dropdown` and `ActionList` component\n *\n * ---\n *\n * #### Usage\n *\n * ```diff\n * <Dropdown>\n * + <SelectInput label=\"Select Fruits\" />\n * <DropdownOverlay>\n * <ActionList>\n * <ActionListItem title=\"Mango\" value=\"mango\" />\n * <ActionListItem title=\"Apple\" value=\"apple\" />\n * </ActionList>\n * </DropdownOverlay>\n * </Dropdown>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-dropdown-with-select--with-single-select SelectInput Documentation}.\n */\n\nconst SelectInput = assignWithoutSideEffects(React.forwardRef(_SelectInput), {\n componentId: dropdownComponentIds.triggers.SelectInput,\n});\n\nexport { SelectInput };\n"],"names":["_SelectInput","props","ref","_useDropdown","useDropdown","value","triggererRef","onTriggerKeydown","onTriggerClick","_jsxs","BaseBox","position","children","isReactNative","_jsx","VisuallyHidden","_objectSpread","onFocus","_triggererRef$current","current","focus","tabIndex","required","isRequired","name","makeAnalyticsAttribute","onChange","BaseDropdownInputTrigger","isSelectInput","e","_props$onClick","onClick","call","SelectInput","assignWithoutSideEffects","React","forwardRef","componentId","dropdownComponentIds","triggers"],"mappings":";;;;;;;;;;;;;;;;;;;AAYA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAChBC,KAAuB,EACvBC,GAAwC,EACjB;AACvB,EAAA,IAAAC,YAAA,GAAkEC,WAAW,EAAE;IAAvEC,KAAK,GAAAF,YAAA,CAALE,KAAK;IAAEC,YAAY,GAAAH,YAAA,CAAZG,YAAY;IAAEC,gBAAgB,GAAAJ,YAAA,CAAhBI,gBAAgB;IAAEC,eAAc,GAAAL,YAAA,CAAdK,cAAc,CAAA;AAE7D,EAAA;AAAA;AACE;AACAC,IAAAA,IAAA,CAACC,OAAO,EAAA;AAACC,MAAAA,QAAQ,EAAC,UAAU;MAAAC,QAAA,EAAA,CACzB,CAACC,aAAa,EAAE,gBACfC,GAAA,CAACC,cAAc,EAAA;AAAAH,QAAAA,QAAA,eACbE,GAAA,CAAAE,OAAAA,EAAAA,aAAA,CAAAA,aAAA,CAAA;UACEC,OAAO,EAAE,SAAAA,OAAAA,GAAM;AAAA,YAAA,IAAAC,qBAAA,CAAA;AACb,YAAA,CAAAA,qBAAA,GAAAZ,YAAY,CAACa,OAAO,MAAA,IAAA,IAAAD,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAApBA,qBAAA,CAAsBE,KAAK,EAAE,CAAA;WAC7B;AACFlB,UAAAA,GAAG,EAAEA,GAAmC;UACxCmB,QAAQ,EAAE,CAAC,CAAE;UACbC,QAAQ,EAAErB,KAAK,CAACsB,UAAW;UAC3BC,IAAI,EAAEvB,KAAK,CAACuB,IAAK;AACjBnB,UAAAA,KAAK,EAAEA,KAAAA;SACHoB,EAAAA,sBAAsB,CAACxB,KAAK,CAAC,CAAA,EAAA,EAAA,EAAA;AACjC;AACA;AACAyB,UAAAA,QAAQ,EAAE,SAAAA,QAAA,GAAM,EAAC;AACjB;AAAA;UACA,aAAa,EAAA,IAAA;SACd,CAAA,CAAA;AAAC,OACY,CAAC,GACf,IAAI,eACRZ,GAAA,CAACa,wBAAwB,EAAAX,aAAA,CAAAA,aAAA,CAAA,EAAA,EACnBf,KAAK,CAAA,EAAA,EAAA,EAAA;AACT2B,QAAAA,aAAa,EAAE,IAAK;AACpBrB,QAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,QAAAA,cAAc,EAAE,SAAAA,cAACqB,CAAAA,CAAC,EAAK;AAAA,UAAA,IAAAC,cAAA,CAAA;AACrBtB,UAAAA,eAAc,EAAE,CAAA;AAChBP,UAAAA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,CAAA6B,cAAA,GAAL7B,KAAK,CAAE8B,OAAO,MAAA,IAAA,IAAAD,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAdA,cAAA,CAAAE,IAAA,CAAA/B,KAAK,EAAY4B,CAAC,CAAC,CAAA;AACrB,SAAA;AAAE,OAAA,CACH,CAAC,CAAA;KACK,CAAA;AAAC,IAAA;AAEd,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEMI,IAAAA,WAAW,gBAAGC,wBAAwB,eAACC,cAAK,CAACC,UAAU,CAACpC,YAAY,CAAC,EAAE;AAC3EqC,EAAAA,WAAW,EAAEC,oBAAoB,CAACC,QAAQ,CAACN,WAAAA;AAC7C,CAAC;;;;"}
@@ -12,9 +12,11 @@ import '../../Box/styledProps/index.js';
12
12
  import '../../../utils/index.js';
13
13
  import '../../../utils/metaAttribute/index.js';
14
14
  import '../../../utils/makeSize/index.js';
15
+ import '../../../utils/makeAnalyticsAttribute/index.js';
15
16
  import { jsx, jsxs } from 'react/jsx-runtime';
16
17
  import { getPlatformType } from '../../../utils/getPlatformType/getPlatformType.js';
17
18
  import { BaseBox } from '../../Box/BaseBox/BaseBox.web.js';
19
+ import { makeAnalyticsAttribute } from '../../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
18
20
  import { metaAttribute } from '../../../utils/metaAttribute/metaAttribute.web.js';
19
21
  import { MetaConstants } from '../../../utils/metaAttribute/metaConstants.js';
20
22
  import { getStyledProps } from '../../Box/styledProps/getStyledProps.js';
@@ -77,7 +79,7 @@ var _OTPInput = function _OTPInput(_ref, incomingRef) {
77
79
  testID = _ref.testID,
78
80
  _ref$size = _ref.size,
79
81
  size = _ref$size === void 0 ? 'medium' : _ref$size,
80
- styledProps = _objectWithoutProperties(_ref, _excluded);
82
+ rest = _objectWithoutProperties(_ref, _excluded);
81
83
  var inputRefs = [];
82
84
  var _useState = useState(otpToArray(inputValue)),
83
85
  _useState2 = _slicedToArray(_useState, 2),
@@ -268,7 +270,7 @@ var _OTPInput = function _OTPInput(_ref, incomingRef) {
268
270
  marginLeft: index == 0 ? 'spacing.0' : 'spacing.3',
269
271
  children: /*#__PURE__*/jsx(BaseInput
270
272
  // eslint-disable-next-line jsx-a11y/no-autofocus
271
- , {
273
+ , _objectSpread({
272
274
  autoFocus: autoFocus && index === 0,
273
275
  accessibilityLabel: "".concat(index === 0 ? label || accessibilityLabel : '', " character ").concat(index + 1),
274
276
  label: label,
@@ -318,7 +320,7 @@ var _OTPInput = function _OTPInput(_ref, incomingRef) {
318
320
  type: currentInputType,
319
321
  size: size,
320
322
  valueComponentType: "heading"
321
- })
323
+ }, makeAnalyticsAttribute(rest)))
322
324
  }, "".concat(inputId, "-").concat(index)));
323
325
  };
324
326
  for (var index = 0; index < otpLength; index++) {
@@ -329,7 +331,7 @@ var _OTPInput = function _OTPInput(_ref, incomingRef) {
329
331
  return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
330
332
  name: MetaConstants.OTPInput,
331
333
  testID: testID
332
- })), getStyledProps(styledProps)), {}, {
334
+ })), getStyledProps(rest)), {}, {
333
335
  children: [/*#__PURE__*/jsxs(BaseBox, {
334
336
  display: "flex",
335
337
  flexDirection: isLabelLeftPositioned ? 'row' : 'column',
@@ -1 +1 @@
1
- {"version":3,"file":"OTPInput.js","sources":["../../../../../../../src/components/Input/OTPInput/OTPInput.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, useState } from 'react';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { getHintType } from '../BaseInput/BaseInput';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport type { FormInputOnEvent } from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport { useFormId } from '~components/Form/useFormId';\nimport type { FormInputOnKeyDownEvent } from '~components/Form/FormTypes';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeSize } from '~utils/makeSize';\n\ntype FormInputOnEventWithIndex = ({\n name,\n value,\n inputIndex,\n}: {\n name?: string;\n value?: string;\n inputIndex: number;\n}) => void;\n\nexport type OTPInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'validationState'\n | 'helpText'\n | 'errorText'\n | 'successText'\n | 'name'\n | 'onChange'\n | 'value'\n | 'isDisabled'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'keyboardType'\n | 'placeholder'\n | 'testID'\n | 'size'\n> & {\n /**\n * Determines the number of input fields to show for the OTP\n * @default 6\n */\n otpLength?: 4 | 6;\n /**\n * The callback function to be invoked when all the values of the OTPInput are filled\n */\n onOTPFilled?: FormInputOnEvent;\n /**\n * Masks input characters in all the fields\n */\n isMasked?: boolean;\n /**\n * Determines what autoComplete suggestion type to show. Defaults to `oneTimeCode`.\n *\n * It's not recommended to turn this off in favor of otp input practices.\n *\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: Extract<\n BaseInputProps['autoCompleteSuggestionType'],\n 'none' | 'oneTimeCode'\n >;\n /**\n * The callback function to be invoked when one of the input fields gets focus\n */\n onFocus?: FormInputOnEventWithIndex;\n /**\n * The callback function to be invoked when one of the input fields is blurred\n */\n onBlur?: FormInputOnEventWithIndex;\n} & StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype OTPInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype OTPInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype OTPInputProps = (OTPInputPropsWithA11yLabel | OTPInputPropsWithLabel) & OTPInputCommonProps;\n\nconst isReactNative = getPlatformType() === 'react-native';\n\n/**\n * Converts a string value of otp to array if passed otherwise returns an array of 6 empty strings\n */\nconst otpToArray = (code?: string): string[] => code?.split('') ?? Array(6).fill('');\n\n/**\n * OTPInput component can be used for accepting OTPs sent to users for authentication/verification purposes.\n *\n * ## Usage\n *\n * ```tsx\n * <OTPInput\n * label=\"Enter OTP\"\n * name=\"otpInput\"\n * onChange={({ name, value }): void => console.log({ name, value })}\n * onOTPFilled={({ name, value }): void => console.log({ name, value })}\n * />\n * ```\n */\nconst _OTPInput: React.ForwardRefRenderFunction<HTMLInputElement[], OTPInputProps> = (\n {\n autoFocus,\n errorText,\n helpText,\n isDisabled,\n keyboardReturnKeyType,\n keyboardType = 'decimal',\n label,\n accessibilityLabel,\n labelPosition,\n name,\n onChange,\n onFocus,\n onBlur,\n onOTPFilled,\n otpLength = 6,\n placeholder,\n successText,\n validationState,\n value: inputValue,\n isMasked,\n autoCompleteSuggestionType = 'oneTimeCode',\n testID,\n size = 'medium',\n ...styledProps\n },\n incomingRef,\n) => {\n const inputRefs: React.RefObject<HTMLInputElement>[] = [];\n const [otpValue, setOtpValue] = useState<string[]>(otpToArray(inputValue));\n const [inputType, setInputType] = useState<('password' | undefined)[]>([]);\n const isLabelLeftPositioned = labelPosition === 'left';\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId('otp');\n\n useImperativeHandle(\n incomingRef,\n () => {\n return inputRefs.map((ref) => ref.current!);\n },\n [inputRefs],\n );\n\n useEffect(() => {\n // Effect for calling `onOTPFilled` callback\n if (inputValue && inputValue.length >= otpLength) {\n // callback for when the OTPInput is controlled and inputValue reaches the same or greater length as the otpLength\n onOTPFilled?.({ value: inputValue.slice(0, otpLength), name });\n } else if (!inputValue && otpValue.join('').length >= otpLength) {\n // callback for when the OTPInput is uncontrolled and otpValue stored in state reaches the same or greater length as the otpLength\n onOTPFilled?.({ value: otpValue.slice(0, otpLength).join(''), name });\n }\n }, [otpValue, otpLength, name, inputValue, onOTPFilled]);\n\n useEffect(() => {\n /* We want to disable the password managers for OTPInput when isMasked is set.\n The issue with only setting autocomplete='off' is that its not an enforcement but a suggestion to the browser to follow.\n This workaround unsets type on first render and sets it to `password` only once a value is entered by the user.\n */\n otpValue.forEach((otp, index) => {\n // Set inputType as 'password' only when a value is entered when isMasked is set\n if (!isEmpty(otp) && !inputType[index] && isMasked) {\n const newInputType = Array.from(inputType);\n newInputType[index] = 'password';\n setInputType(newInputType);\n }\n // Cleanup the inputType array whenever the value is empty but inputType[index] is set\n if (isEmpty(otp) && inputType[index]) {\n const newInputType = Array.from(inputType);\n newInputType[index] = undefined;\n setInputType(newInputType);\n }\n });\n }, [otpValue, inputType, isMasked]);\n\n /**\n * Changes the value of the otp at a given index and updates the otpValue stored in state\n *\n * @param {{ value: string; index: number }} { value, index }\n * @returns {string} updated otpValue\n */\n const setOtpValueByIndex = ({ value, index }: { value: string; index: number }): string => {\n const newOtpValue = Array.from(otpValue);\n newOtpValue[index] = value;\n setOtpValue(newOtpValue);\n return newOtpValue.join('');\n };\n\n /**\n * Sets focus to the desired otp input by index\n *\n * @param {number} index the index of the otp input to be focused\n */\n const focusOnOtpByIndex = (index: number): void => {\n inputRefs[index]?.current?.focus();\n if (!isReactNative) {\n // React Native doesn't support imperatively selecting the value of input\n inputRefs[index]?.current?.select();\n }\n };\n\n const handleOnChange = ({\n value,\n currentOtpIndex,\n }: {\n value?: string;\n currentOtpIndex: number;\n }): void => {\n if (value && value === ' ') {\n // React native doesn't support `event.preventDefault()` hence have to add this check to ensure that empty space is not allowed\n return;\n }\n if (inputValue && inputValue.length > 0) {\n // When OTPInput is controlled, set the otpValue as the consumer passed `inputValue` and append the value on current index based on user's input.\n // User's input will not reflect on the otp but will trigger `onChange` callback with the user's input appended so that the consumer can take appropriate action.\n const newOtpValue = Array.from(inputValue);\n newOtpValue[currentOtpIndex] = value ?? '';\n setOtpValue(newOtpValue);\n onChange?.({ name, value: newOtpValue.join('') });\n } else if (value && value.trim().length > 1) {\n // When the entered value is more that 1 character (when value is pasted), set the otpValue to the newly received value.\n // Could have used `onPaste` for web to achieve this but 1. React Native doesn't support onPaste and 2. Safari's autofill on web doesn't trigger onPaste\n setOtpValue(Array.from(value));\n onChange?.({ name, value: value.trim().slice(0, otpLength) });\n } else if (otpValue[currentOtpIndex] !== value?.trim()) {\n // Set the value at the current index to the entered value\n // only as long as its not the same as the already existing value (this prevents `onChange` being triggered unnecessarily)\n const newValue = setOtpValueByIndex({\n value: value?.trim() ?? '',\n index: currentOtpIndex,\n });\n onChange?.({ name, value: newValue });\n }\n };\n\n const handleOnInput = ({\n value,\n currentOtpIndex,\n }: {\n value?: string;\n currentOtpIndex: number;\n }): void => {\n // Moves focus to next input whenever a value is entered in the current input\n if (value && value.trim().length === 1) {\n focusOnOtpByIndex(++currentOtpIndex);\n }\n };\n\n const handleOnKeyDown = ({\n key,\n code,\n event,\n currentOtpIndex,\n }: FormInputOnKeyDownEvent & { currentOtpIndex: number }): void => {\n if (key === 'Backspace' || code === 'Backspace' || code === 'Delete' || key === 'Delete') {\n event.preventDefault?.();\n handleOnChange({ value: '', currentOtpIndex });\n focusOnOtpByIndex(--currentOtpIndex);\n } else if (key === 'ArrowLeft' || code === 'ArrowLeft') {\n event.preventDefault?.();\n focusOnOtpByIndex(--currentOtpIndex);\n } else if (key === 'ArrowRight' || code === 'ArrowRight') {\n event.preventDefault?.();\n focusOnOtpByIndex(++currentOtpIndex);\n } else if (key === ' ' || code === 'Space') {\n event.preventDefault?.();\n }\n };\n\n const getHiddenInput = (): React.ReactNode => {\n if (!isReactNative) {\n return (\n <input\n hidden={true}\n id={inputId}\n name={name}\n value={inputValue ?? otpValue.join('') ?? ''}\n readOnly\n />\n );\n }\n return null;\n };\n\n const getOTPInputFields = (): React.ReactNode => {\n const inputs = [];\n for (let index = 0; index < otpLength; index++) {\n const currentValue = inputValue ? otpToArray(inputValue)[index] || '' : otpValue[index] || '';\n const ref = React.createRef<HTMLInputElement>();\n // if an inputValue is passed (controlled) and isMasked is set, inputType will always be password\n let currentInputType: 'password' | undefined;\n if (isMasked) {\n // if inputValue is passed (controlled component) then the inputType will always be password\n currentInputType = inputValue ? 'password' : inputType[index];\n }\n inputRefs.push(ref);\n inputs.push(\n <BaseBox\n flex={1}\n marginLeft={index == 0 ? 'spacing.0' : 'spacing.3'}\n key={`${inputId}-${index}`}\n >\n <BaseInput\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus && index === 0}\n accessibilityLabel={`${index === 0 ? label || accessibilityLabel : ''} character ${\n index + 1\n }`}\n label={label}\n hideLabelText={true}\n id={`${inputId}-${index}`}\n textAlign=\"center\"\n ref={ref as never}\n name={name}\n value={currentValue}\n maxCharacters={otpValue[index]?.length > 0 ? 1 : undefined}\n onChange={(formEvent) => handleOnChange({ ...formEvent, currentOtpIndex: index })}\n onFocus={(formEvent) => onFocus?.({ ...formEvent, inputIndex: index })}\n onBlur={(formEvent) => onBlur?.({ ...formEvent, inputIndex: index })}\n onInput={(formEvent) => handleOnInput({ ...formEvent, currentOtpIndex: index })}\n onKeyDown={(keyboardEvent) =>\n handleOnKeyDown({ ...keyboardEvent, currentOtpIndex: index })\n }\n isDisabled={isDisabled}\n placeholder={Array.from(placeholder ?? '')[index] ?? ''}\n isRequired={true}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n keyboardType={keyboardType}\n keyboardReturnKeyType={keyboardReturnKeyType}\n validationState={validationState}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n hideFormHint={true}\n type={currentInputType}\n size={size}\n valueComponentType=\"heading\"\n />\n </BaseBox>,\n );\n }\n return inputs;\n };\n\n return (\n <BaseBox\n {...metaAttribute({ name: MetaConstants.OTPInput, testID })}\n {...getStyledProps(styledProps)}\n >\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n >\n {Boolean(label) && (\n <FormLabel as=\"label\" position={labelPosition} htmlFor={inputId} size={size}>\n {label}\n </FormLabel>\n )}\n <BaseBox display=\"flex\" flexDirection=\"row\">\n {getHiddenInput()}\n {getOTPInputFields()}\n </BaseBox>\n </BaseBox>\n {/* the magic number 136 is basically max-width of label i.e 120 and then right margin i.e 16 which is the spacing between label and input field */}\n {/*Refer `BaseInput`'s implementation of FormHint which uses similar logic */}\n <BaseBox marginLeft={makeSize(isLabelLeftPositioned ? 136 : 0)}>\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={size}\n />\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst OTPInput = React.forwardRef<HTMLInputElement[], OTPInputProps>(_OTPInput);\n\nexport type { OTPInputProps };\nexport { OTPInput };\n"],"names":["isReactNative","getPlatformType","otpToArray","code","_code$split","split","Array","fill","_OTPInput","_ref","incomingRef","autoFocus","errorText","helpText","isDisabled","keyboardReturnKeyType","_ref$keyboardType","keyboardType","label","accessibilityLabel","labelPosition","name","onChange","onFocus","onBlur","onOTPFilled","_ref$otpLength","otpLength","placeholder","successText","validationState","inputValue","value","isMasked","_ref$autoCompleteSugg","autoCompleteSuggestionType","testID","_ref$size","size","styledProps","_objectWithoutProperties","_excluded","inputRefs","_useState","useState","_useState2","_slicedToArray","otpValue","setOtpValue","_useState3","_useState4","inputType","setInputType","isLabelLeftPositioned","_useFormId","useFormId","inputId","helpTextId","errorTextId","successTextId","useImperativeHandle","map","ref","current","useEffect","length","slice","join","forEach","otp","index","isEmpty","newInputType","from","undefined","setOtpValueByIndex","_ref2","newOtpValue","focusOnOtpByIndex","_inputRefs$index","_inputRefs$index$curr","focus","_inputRefs$index2","_inputRefs$index2$cur","select","handleOnChange","_ref3","currentOtpIndex","trim","_value$trim","newValue","handleOnInput","_ref4","handleOnKeyDown","_ref5","key","event","_event$preventDefault","preventDefault","call","_event$preventDefault2","_event$preventDefault3","_event$preventDefault4","getHiddenInput","_ref6","_jsx","hidden","id","readOnly","getOTPInputFields","inputs","_loop","_otpValue$index","_Array$from$index","currentValue","React","createRef","currentInputType","push","BaseBox","flex","marginLeft","children","BaseInput","concat","hideLabelText","textAlign","maxCharacters","formEvent","_objectSpread","inputIndex","onInput","onKeyDown","keyboardEvent","isRequired","hideFormHint","type","valueComponentType","_jsxs","metaAttribute","MetaConstants","OTPInput","getStyledProps","display","flexDirection","alignItems","position","Boolean","FormLabel","as","htmlFor","makeSize","FormHint","getHintType","hasHelpText","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"OTPInput.js","sources":["../../../../../../../src/components/Input/OTPInput/OTPInput.tsx"],"sourcesContent":["import React, { useEffect, useImperativeHandle, useState } from 'react';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { getHintType } from '../BaseInput/BaseInput';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport type { FormInputOnEvent } from '~components/Form';\nimport { FormHint, FormLabel } from '~components/Form';\nimport { useFormId } from '~components/Form/useFormId';\nimport type { FormInputOnKeyDownEvent } from '~components/Form/FormTypes';\nimport BaseBox from '~components/Box/BaseBox';\nimport { getStyledProps } from '~components/Box/styledProps';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { getPlatformType } from '~utils';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeSize } from '~utils/makeSize';\nimport type { DataAnalyticsAttribute } from '~utils/types';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype FormInputOnEventWithIndex = ({\n name,\n value,\n inputIndex,\n}: {\n name?: string;\n value?: string;\n inputIndex: number;\n}) => void;\n\nexport type OTPInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'validationState'\n | 'helpText'\n | 'errorText'\n | 'successText'\n | 'name'\n | 'onChange'\n | 'value'\n | 'isDisabled'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'keyboardType'\n | 'placeholder'\n | 'testID'\n | 'size'\n | keyof DataAnalyticsAttribute\n> & {\n /**\n * Determines the number of input fields to show for the OTP\n * @default 6\n */\n otpLength?: 4 | 6;\n /**\n * The callback function to be invoked when all the values of the OTPInput are filled\n */\n onOTPFilled?: FormInputOnEvent;\n /**\n * Masks input characters in all the fields\n */\n isMasked?: boolean;\n /**\n * Determines what autoComplete suggestion type to show. Defaults to `oneTimeCode`.\n *\n * It's not recommended to turn this off in favor of otp input practices.\n *\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: Extract<\n BaseInputProps['autoCompleteSuggestionType'],\n 'none' | 'oneTimeCode'\n >;\n /**\n * The callback function to be invoked when one of the input fields gets focus\n */\n onFocus?: FormInputOnEventWithIndex;\n /**\n * The callback function to be invoked when one of the input fields is blurred\n */\n onBlur?: FormInputOnEventWithIndex;\n} & StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype OTPInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype OTPInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype OTPInputProps = (OTPInputPropsWithA11yLabel | OTPInputPropsWithLabel) & OTPInputCommonProps;\n\nconst isReactNative = getPlatformType() === 'react-native';\n\n/**\n * Converts a string value of otp to array if passed otherwise returns an array of 6 empty strings\n */\nconst otpToArray = (code?: string): string[] => code?.split('') ?? Array(6).fill('');\n\n/**\n * OTPInput component can be used for accepting OTPs sent to users for authentication/verification purposes.\n *\n * ## Usage\n *\n * ```tsx\n * <OTPInput\n * label=\"Enter OTP\"\n * name=\"otpInput\"\n * onChange={({ name, value }): void => console.log({ name, value })}\n * onOTPFilled={({ name, value }): void => console.log({ name, value })}\n * />\n * ```\n */\nconst _OTPInput: React.ForwardRefRenderFunction<HTMLInputElement[], OTPInputProps> = (\n {\n autoFocus,\n errorText,\n helpText,\n isDisabled,\n keyboardReturnKeyType,\n keyboardType = 'decimal',\n label,\n accessibilityLabel,\n labelPosition,\n name,\n onChange,\n onFocus,\n onBlur,\n onOTPFilled,\n otpLength = 6,\n placeholder,\n successText,\n validationState,\n value: inputValue,\n isMasked,\n autoCompleteSuggestionType = 'oneTimeCode',\n testID,\n size = 'medium',\n ...rest\n },\n incomingRef,\n) => {\n const inputRefs: React.RefObject<HTMLInputElement>[] = [];\n const [otpValue, setOtpValue] = useState<string[]>(otpToArray(inputValue));\n const [inputType, setInputType] = useState<('password' | undefined)[]>([]);\n const isLabelLeftPositioned = labelPosition === 'left';\n const { inputId, helpTextId, errorTextId, successTextId } = useFormId('otp');\n\n useImperativeHandle(\n incomingRef,\n () => {\n return inputRefs.map((ref) => ref.current!);\n },\n [inputRefs],\n );\n\n useEffect(() => {\n // Effect for calling `onOTPFilled` callback\n if (inputValue && inputValue.length >= otpLength) {\n // callback for when the OTPInput is controlled and inputValue reaches the same or greater length as the otpLength\n onOTPFilled?.({ value: inputValue.slice(0, otpLength), name });\n } else if (!inputValue && otpValue.join('').length >= otpLength) {\n // callback for when the OTPInput is uncontrolled and otpValue stored in state reaches the same or greater length as the otpLength\n onOTPFilled?.({ value: otpValue.slice(0, otpLength).join(''), name });\n }\n }, [otpValue, otpLength, name, inputValue, onOTPFilled]);\n\n useEffect(() => {\n /* We want to disable the password managers for OTPInput when isMasked is set.\n The issue with only setting autocomplete='off' is that its not an enforcement but a suggestion to the browser to follow.\n This workaround unsets type on first render and sets it to `password` only once a value is entered by the user.\n */\n otpValue.forEach((otp, index) => {\n // Set inputType as 'password' only when a value is entered when isMasked is set\n if (!isEmpty(otp) && !inputType[index] && isMasked) {\n const newInputType = Array.from(inputType);\n newInputType[index] = 'password';\n setInputType(newInputType);\n }\n // Cleanup the inputType array whenever the value is empty but inputType[index] is set\n if (isEmpty(otp) && inputType[index]) {\n const newInputType = Array.from(inputType);\n newInputType[index] = undefined;\n setInputType(newInputType);\n }\n });\n }, [otpValue, inputType, isMasked]);\n\n /**\n * Changes the value of the otp at a given index and updates the otpValue stored in state\n *\n * @param {{ value: string; index: number }} { value, index }\n * @returns {string} updated otpValue\n */\n const setOtpValueByIndex = ({ value, index }: { value: string; index: number }): string => {\n const newOtpValue = Array.from(otpValue);\n newOtpValue[index] = value;\n setOtpValue(newOtpValue);\n return newOtpValue.join('');\n };\n\n /**\n * Sets focus to the desired otp input by index\n *\n * @param {number} index the index of the otp input to be focused\n */\n const focusOnOtpByIndex = (index: number): void => {\n inputRefs[index]?.current?.focus();\n if (!isReactNative) {\n // React Native doesn't support imperatively selecting the value of input\n inputRefs[index]?.current?.select();\n }\n };\n\n const handleOnChange = ({\n value,\n currentOtpIndex,\n }: {\n value?: string;\n currentOtpIndex: number;\n }): void => {\n if (value && value === ' ') {\n // React native doesn't support `event.preventDefault()` hence have to add this check to ensure that empty space is not allowed\n return;\n }\n if (inputValue && inputValue.length > 0) {\n // When OTPInput is controlled, set the otpValue as the consumer passed `inputValue` and append the value on current index based on user's input.\n // User's input will not reflect on the otp but will trigger `onChange` callback with the user's input appended so that the consumer can take appropriate action.\n const newOtpValue = Array.from(inputValue);\n newOtpValue[currentOtpIndex] = value ?? '';\n setOtpValue(newOtpValue);\n onChange?.({ name, value: newOtpValue.join('') });\n } else if (value && value.trim().length > 1) {\n // When the entered value is more that 1 character (when value is pasted), set the otpValue to the newly received value.\n // Could have used `onPaste` for web to achieve this but 1. React Native doesn't support onPaste and 2. Safari's autofill on web doesn't trigger onPaste\n setOtpValue(Array.from(value));\n onChange?.({ name, value: value.trim().slice(0, otpLength) });\n } else if (otpValue[currentOtpIndex] !== value?.trim()) {\n // Set the value at the current index to the entered value\n // only as long as its not the same as the already existing value (this prevents `onChange` being triggered unnecessarily)\n const newValue = setOtpValueByIndex({\n value: value?.trim() ?? '',\n index: currentOtpIndex,\n });\n onChange?.({ name, value: newValue });\n }\n };\n\n const handleOnInput = ({\n value,\n currentOtpIndex,\n }: {\n value?: string;\n currentOtpIndex: number;\n }): void => {\n // Moves focus to next input whenever a value is entered in the current input\n if (value && value.trim().length === 1) {\n focusOnOtpByIndex(++currentOtpIndex);\n }\n };\n\n const handleOnKeyDown = ({\n key,\n code,\n event,\n currentOtpIndex,\n }: FormInputOnKeyDownEvent & { currentOtpIndex: number }): void => {\n if (key === 'Backspace' || code === 'Backspace' || code === 'Delete' || key === 'Delete') {\n event.preventDefault?.();\n handleOnChange({ value: '', currentOtpIndex });\n focusOnOtpByIndex(--currentOtpIndex);\n } else if (key === 'ArrowLeft' || code === 'ArrowLeft') {\n event.preventDefault?.();\n focusOnOtpByIndex(--currentOtpIndex);\n } else if (key === 'ArrowRight' || code === 'ArrowRight') {\n event.preventDefault?.();\n focusOnOtpByIndex(++currentOtpIndex);\n } else if (key === ' ' || code === 'Space') {\n event.preventDefault?.();\n }\n };\n\n const getHiddenInput = (): React.ReactNode => {\n if (!isReactNative) {\n return (\n <input\n hidden={true}\n id={inputId}\n name={name}\n value={inputValue ?? otpValue.join('') ?? ''}\n readOnly\n />\n );\n }\n return null;\n };\n\n const getOTPInputFields = (): React.ReactNode => {\n const inputs = [];\n for (let index = 0; index < otpLength; index++) {\n const currentValue = inputValue ? otpToArray(inputValue)[index] || '' : otpValue[index] || '';\n const ref = React.createRef<HTMLInputElement>();\n // if an inputValue is passed (controlled) and isMasked is set, inputType will always be password\n let currentInputType: 'password' | undefined;\n if (isMasked) {\n // if inputValue is passed (controlled component) then the inputType will always be password\n currentInputType = inputValue ? 'password' : inputType[index];\n }\n inputRefs.push(ref);\n inputs.push(\n <BaseBox\n flex={1}\n marginLeft={index == 0 ? 'spacing.0' : 'spacing.3'}\n key={`${inputId}-${index}`}\n >\n <BaseInput\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus && index === 0}\n accessibilityLabel={`${index === 0 ? label || accessibilityLabel : ''} character ${\n index + 1\n }`}\n label={label}\n hideLabelText={true}\n id={`${inputId}-${index}`}\n textAlign=\"center\"\n ref={ref as never}\n name={name}\n value={currentValue}\n maxCharacters={otpValue[index]?.length > 0 ? 1 : undefined}\n onChange={(formEvent) => handleOnChange({ ...formEvent, currentOtpIndex: index })}\n onFocus={(formEvent) => onFocus?.({ ...formEvent, inputIndex: index })}\n onBlur={(formEvent) => onBlur?.({ ...formEvent, inputIndex: index })}\n onInput={(formEvent) => handleOnInput({ ...formEvent, currentOtpIndex: index })}\n onKeyDown={(keyboardEvent) =>\n handleOnKeyDown({ ...keyboardEvent, currentOtpIndex: index })\n }\n isDisabled={isDisabled}\n placeholder={Array.from(placeholder ?? '')[index] ?? ''}\n isRequired={true}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n keyboardType={keyboardType}\n keyboardReturnKeyType={keyboardReturnKeyType}\n validationState={validationState}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n hideFormHint={true}\n type={currentInputType}\n size={size}\n valueComponentType=\"heading\"\n {...makeAnalyticsAttribute(rest)}\n />\n </BaseBox>,\n );\n }\n return inputs;\n };\n\n return (\n <BaseBox {...metaAttribute({ name: MetaConstants.OTPInput, testID })} {...getStyledProps(rest)}>\n <BaseBox\n display=\"flex\"\n flexDirection={isLabelLeftPositioned ? 'row' : 'column'}\n alignItems={isLabelLeftPositioned ? 'center' : undefined}\n position=\"relative\"\n >\n {Boolean(label) && (\n <FormLabel as=\"label\" position={labelPosition} htmlFor={inputId} size={size}>\n {label}\n </FormLabel>\n )}\n <BaseBox display=\"flex\" flexDirection=\"row\">\n {getHiddenInput()}\n {getOTPInputFields()}\n </BaseBox>\n </BaseBox>\n {/* the magic number 136 is basically max-width of label i.e 120 and then right margin i.e 16 which is the spacing between label and input field */}\n {/*Refer `BaseInput`'s implementation of FormHint which uses similar logic */}\n <BaseBox marginLeft={makeSize(isLabelLeftPositioned ? 136 : 0)}>\n <FormHint\n type={getHintType({ validationState, hasHelpText: Boolean(helpText) })}\n helpText={helpText}\n errorText={errorText}\n successText={successText}\n helpTextId={helpTextId}\n errorTextId={errorTextId}\n successTextId={successTextId}\n size={size}\n />\n </BaseBox>\n </BaseBox>\n );\n};\n\nconst OTPInput = React.forwardRef<HTMLInputElement[], OTPInputProps>(_OTPInput);\n\nexport type { OTPInputProps };\nexport { OTPInput };\n"],"names":["isReactNative","getPlatformType","otpToArray","code","_code$split","split","Array","fill","_OTPInput","_ref","incomingRef","autoFocus","errorText","helpText","isDisabled","keyboardReturnKeyType","_ref$keyboardType","keyboardType","label","accessibilityLabel","labelPosition","name","onChange","onFocus","onBlur","onOTPFilled","_ref$otpLength","otpLength","placeholder","successText","validationState","inputValue","value","isMasked","_ref$autoCompleteSugg","autoCompleteSuggestionType","testID","_ref$size","size","rest","_objectWithoutProperties","_excluded","inputRefs","_useState","useState","_useState2","_slicedToArray","otpValue","setOtpValue","_useState3","_useState4","inputType","setInputType","isLabelLeftPositioned","_useFormId","useFormId","inputId","helpTextId","errorTextId","successTextId","useImperativeHandle","map","ref","current","useEffect","length","slice","join","forEach","otp","index","isEmpty","newInputType","from","undefined","setOtpValueByIndex","_ref2","newOtpValue","focusOnOtpByIndex","_inputRefs$index","_inputRefs$index$curr","focus","_inputRefs$index2","_inputRefs$index2$cur","select","handleOnChange","_ref3","currentOtpIndex","trim","_value$trim","newValue","handleOnInput","_ref4","handleOnKeyDown","_ref5","key","event","_event$preventDefault","preventDefault","call","_event$preventDefault2","_event$preventDefault3","_event$preventDefault4","getHiddenInput","_ref6","_jsx","hidden","id","readOnly","getOTPInputFields","inputs","_loop","_otpValue$index","_Array$from$index","currentValue","React","createRef","currentInputType","push","BaseBox","flex","marginLeft","children","BaseInput","_objectSpread","concat","hideLabelText","textAlign","maxCharacters","formEvent","inputIndex","onInput","onKeyDown","keyboardEvent","isRequired","hideFormHint","type","valueComponentType","makeAnalyticsAttribute","_jsxs","metaAttribute","MetaConstants","OTPInput","getStyledProps","display","flexDirection","alignItems","position","Boolean","FormLabel","as","htmlFor","makeSize","FormHint","getHintType","hasHelpText","forwardRef"],"mappings":"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"}
@@ -56,7 +56,7 @@ var _PasswordInput = function _PasswordInput(_ref, ref) {
56
56
  testID = _ref.testID,
57
57
  _ref$size = _ref.size,
58
58
  size = _ref$size === void 0 ? 'medium' : _ref$size,
59
- styledProps = _objectWithoutProperties(_ref, _excluded);
59
+ rest = _objectWithoutProperties(_ref, _excluded);
60
60
  var _React$useState = React__default.useState(false),
61
61
  _React$useState2 = _slicedToArray(_React$useState, 2),
62
62
  isRevealed = _React$useState2[0],
@@ -125,7 +125,7 @@ var _PasswordInput = function _PasswordInput(_ref, ref) {
125
125
  autoCapitalize: "none",
126
126
  testID: testID,
127
127
  size: size
128
- }, styledProps));
128
+ }, rest));
129
129
  };
130
130
 
131
131
  // nosemgrep
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordInput.js","sources":["../../../../../../../src/components/Input/PasswordInput/PasswordInput.tsx"],"sourcesContent":["import React from 'react';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { EyeIcon, EyeOffIcon } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { CharacterCounter } from '~components/Form/CharacterCounter';\nimport { IconButton } from '~components/Button/IconButton';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport type { BladeElementRef } from '~utils/types';\n\ntype PasswordInputExtraProps = {\n /**\n * Shows a reveal button to toggle password visibility\n *\n * @default true\n */\n showRevealButton?: boolean;\n\n /**\n * Displays asterisk (`*`) when `isRequired` is enabled\n *\n * @default none\n */\n necessityIndicator?: Exclude<BaseInputProps['necessityIndicator'], 'optional'>;\n\n /**\n * Determines what autoComplete suggestion type to show. Defaults to using platform heuristics.\n *\n * It's not recommended to turn this off in favor of safe password practices.\n * Providing `password` or `newPassword` is more informative to the platform for browser autofill or password managers.\n *\n * **Note**: Using `newPassword` on iOS has some [known issue](https://github.com/facebook/react-native/issues/21911) on React Native\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: Extract<\n BaseInputProps['autoCompleteSuggestionType'],\n 'none' | 'password' | 'newPassword'\n >;\n};\n\ntype PasswordInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'maxCharacters'\n | 'validationState'\n | 'errorText'\n | 'successText'\n | 'helpText'\n | 'isDisabled'\n | 'defaultValue'\n | 'placeholder'\n | 'isRequired'\n | 'value'\n | 'onChange'\n | 'onBlur'\n | 'onSubmit'\n | 'onFocus'\n | 'name'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'autoCompleteSuggestionType'\n | 'testID'\n | 'size'\n> &\n PasswordInputExtraProps &\n StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype PasswordInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype PasswordInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype PasswordInputProps = (PasswordInputPropsWithA11yLabel | PasswordInputPropsWithLabel) &\n PasswordInputCommonProps;\n\nconst _PasswordInput: React.ForwardRefRenderFunction<BladeElementRef, PasswordInputProps> = (\n {\n label,\n accessibilityLabel,\n labelPosition = 'top',\n showRevealButton = true,\n maxCharacters,\n validationState,\n errorText,\n successText,\n helpText,\n isDisabled = false,\n defaultValue,\n placeholder,\n isRequired = false,\n necessityIndicator = 'none',\n value,\n onChange,\n onFocus,\n onBlur,\n onSubmit,\n name,\n autoFocus = false,\n keyboardReturnKeyType = 'done',\n autoCompleteSuggestionType,\n testID,\n size = 'medium',\n ...styledProps\n },\n ref,\n) => {\n const [isRevealed, setIsRevealed] = React.useState(false);\n const isEnabled = !isDisabled;\n\n // If input is disabled reveal button shouldn't be present and input should be masked\n const isRevealedAndEnabled = isRevealed && isEnabled;\n\n const toggleIsRevealed = (): void => setIsRevealed((revealed) => !revealed);\n const iconAccessibilityLabel = isRevealedAndEnabled ? 'Hide password' : 'Show password';\n const type = isRevealedAndEnabled ? 'text' : 'password';\n\n const revealButtonIcon = isRevealedAndEnabled ? EyeOffIcon : EyeIcon;\n const revealButton =\n showRevealButton && !isDisabled ? (\n <IconButton\n size=\"medium\"\n icon={revealButtonIcon}\n onClick={toggleIsRevealed}\n accessibilityLabel={iconAccessibilityLabel}\n />\n ) : null;\n\n const trailingFooterSlot = (value?: string): React.ReactNode =>\n maxCharacters ? (\n <BaseBox marginTop=\"spacing.2\" marginRight=\"spacing.1\">\n <CharacterCounter currentCount={value?.length ?? 0} maxCount={maxCharacters} />\n </BaseBox>\n ) : null;\n\n return (\n <BaseInput\n ref={ref}\n componentName={MetaConstants.PasswordInput}\n id=\"password-field\"\n label={label as string}\n accessibilityLabel={accessibilityLabel}\n hideLabelText={!Boolean(label)}\n labelPosition={labelPosition}\n type={type}\n trailingInteractionElement={revealButton}\n trailingFooterSlot={trailingFooterSlot}\n maxCharacters={maxCharacters}\n validationState={validationState}\n errorText={errorText}\n successText={successText}\n helpText={helpText}\n isDisabled={isDisabled}\n defaultValue={defaultValue}\n placeholder={placeholder}\n isRequired={isRequired}\n necessityIndicator={necessityIndicator}\n value={value}\n onChange={onChange}\n onBlur={onBlur}\n onSubmit={onSubmit}\n onFocus={onFocus}\n name={name}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n keyboardReturnKeyType={keyboardReturnKeyType}\n autoCapitalize=\"none\"\n testID={testID}\n size={size}\n {...styledProps}\n />\n );\n};\n\n// nosemgrep\nconst PasswordInput = assignWithoutSideEffects(React.forwardRef(_PasswordInput), {\n displayName: 'PasswordInput',\n});\n\nexport type { PasswordInputProps };\nexport { PasswordInput };\n"],"names":["_PasswordInput","_ref","ref","label","accessibilityLabel","_ref$labelPosition","labelPosition","_ref$showRevealButton","showRevealButton","maxCharacters","validationState","errorText","successText","helpText","_ref$isDisabled","isDisabled","defaultValue","placeholder","_ref$isRequired","isRequired","_ref$necessityIndicat","necessityIndicator","value","onChange","onFocus","onBlur","onSubmit","name","_ref$autoFocus","autoFocus","_ref$keyboardReturnKe","keyboardReturnKeyType","autoCompleteSuggestionType","testID","_ref$size","size","styledProps","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isRevealed","setIsRevealed","isEnabled","isRevealedAndEnabled","toggleIsRevealed","revealed","iconAccessibilityLabel","type","revealButtonIcon","EyeOffIcon","EyeIcon","revealButton","_jsx","IconButton","icon","onClick","trailingFooterSlot","_value$length","BaseBox","marginTop","marginRight","children","CharacterCounter","currentCount","length","maxCount","BaseInput","_objectSpread","componentName","MetaConstants","PasswordInput","id","hideLabelText","Boolean","trailingInteractionElement","autoCapitalize","assignWithoutSideEffects","forwardRef","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"PasswordInput.js","sources":["../../../../../../../src/components/Input/PasswordInput/PasswordInput.tsx"],"sourcesContent":["import React from 'react';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { EyeIcon, EyeOffIcon } from '~components/Icons';\nimport BaseBox from '~components/Box/BaseBox';\nimport { CharacterCounter } from '~components/Form/CharacterCounter';\nimport { IconButton } from '~components/Button/IconButton';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport type { DataAnalyticsAttribute, BladeElementRef } from '~utils/types';\n\ntype PasswordInputExtraProps = {\n /**\n * Shows a reveal button to toggle password visibility\n *\n * @default true\n */\n showRevealButton?: boolean;\n\n /**\n * Displays asterisk (`*`) when `isRequired` is enabled\n *\n * @default none\n */\n necessityIndicator?: Exclude<BaseInputProps['necessityIndicator'], 'optional'>;\n\n /**\n * Determines what autoComplete suggestion type to show. Defaults to using platform heuristics.\n *\n * It's not recommended to turn this off in favor of safe password practices.\n * Providing `password` or `newPassword` is more informative to the platform for browser autofill or password managers.\n *\n * **Note**: Using `newPassword` on iOS has some [known issue](https://github.com/facebook/react-native/issues/21911) on React Native\n *\n * Internally it'll render platform specific attributes:\n *\n * - web: `autocomplete`\n * - iOS: `textContentType`\n * - android: `autoComplete`\n *\n */\n autoCompleteSuggestionType?: Extract<\n BaseInputProps['autoCompleteSuggestionType'],\n 'none' | 'password' | 'newPassword'\n >;\n};\n\ntype PasswordInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'maxCharacters'\n | 'validationState'\n | 'errorText'\n | 'successText'\n | 'helpText'\n | 'isDisabled'\n | 'defaultValue'\n | 'placeholder'\n | 'isRequired'\n | 'value'\n | 'onChange'\n | 'onBlur'\n | 'onSubmit'\n | 'onFocus'\n | 'name'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'autoCompleteSuggestionType'\n | 'testID'\n | 'size'\n | keyof DataAnalyticsAttribute\n> &\n PasswordInputExtraProps &\n StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype PasswordInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype PasswordInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype PasswordInputProps = (PasswordInputPropsWithA11yLabel | PasswordInputPropsWithLabel) &\n PasswordInputCommonProps;\n\nconst _PasswordInput: React.ForwardRefRenderFunction<BladeElementRef, PasswordInputProps> = (\n {\n label,\n accessibilityLabel,\n labelPosition = 'top',\n showRevealButton = true,\n maxCharacters,\n validationState,\n errorText,\n successText,\n helpText,\n isDisabled = false,\n defaultValue,\n placeholder,\n isRequired = false,\n necessityIndicator = 'none',\n value,\n onChange,\n onFocus,\n onBlur,\n onSubmit,\n name,\n autoFocus = false,\n keyboardReturnKeyType = 'done',\n autoCompleteSuggestionType,\n testID,\n size = 'medium',\n ...rest\n },\n ref,\n) => {\n const [isRevealed, setIsRevealed] = React.useState(false);\n const isEnabled = !isDisabled;\n\n // If input is disabled reveal button shouldn't be present and input should be masked\n const isRevealedAndEnabled = isRevealed && isEnabled;\n\n const toggleIsRevealed = (): void => setIsRevealed((revealed) => !revealed);\n const iconAccessibilityLabel = isRevealedAndEnabled ? 'Hide password' : 'Show password';\n const type = isRevealedAndEnabled ? 'text' : 'password';\n\n const revealButtonIcon = isRevealedAndEnabled ? EyeOffIcon : EyeIcon;\n const revealButton =\n showRevealButton && !isDisabled ? (\n <IconButton\n size=\"medium\"\n icon={revealButtonIcon}\n onClick={toggleIsRevealed}\n accessibilityLabel={iconAccessibilityLabel}\n />\n ) : null;\n\n const trailingFooterSlot = (value?: string): React.ReactNode =>\n maxCharacters ? (\n <BaseBox marginTop=\"spacing.2\" marginRight=\"spacing.1\">\n <CharacterCounter currentCount={value?.length ?? 0} maxCount={maxCharacters} />\n </BaseBox>\n ) : null;\n\n return (\n <BaseInput\n ref={ref}\n componentName={MetaConstants.PasswordInput}\n id=\"password-field\"\n label={label as string}\n accessibilityLabel={accessibilityLabel}\n hideLabelText={!Boolean(label)}\n labelPosition={labelPosition}\n type={type}\n trailingInteractionElement={revealButton}\n trailingFooterSlot={trailingFooterSlot}\n maxCharacters={maxCharacters}\n validationState={validationState}\n errorText={errorText}\n successText={successText}\n helpText={helpText}\n isDisabled={isDisabled}\n defaultValue={defaultValue}\n placeholder={placeholder}\n isRequired={isRequired}\n necessityIndicator={necessityIndicator}\n value={value}\n onChange={onChange}\n onBlur={onBlur}\n onSubmit={onSubmit}\n onFocus={onFocus}\n name={name}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n autoCompleteSuggestionType={autoCompleteSuggestionType}\n keyboardReturnKeyType={keyboardReturnKeyType}\n autoCapitalize=\"none\"\n testID={testID}\n size={size}\n {...rest}\n />\n );\n};\n\n// nosemgrep\nconst PasswordInput = assignWithoutSideEffects(React.forwardRef(_PasswordInput), {\n displayName: 'PasswordInput',\n});\n\nexport type { PasswordInputProps };\nexport { PasswordInput };\n"],"names":["_PasswordInput","_ref","ref","label","accessibilityLabel","_ref$labelPosition","labelPosition","_ref$showRevealButton","showRevealButton","maxCharacters","validationState","errorText","successText","helpText","_ref$isDisabled","isDisabled","defaultValue","placeholder","_ref$isRequired","isRequired","_ref$necessityIndicat","necessityIndicator","value","onChange","onFocus","onBlur","onSubmit","name","_ref$autoFocus","autoFocus","_ref$keyboardReturnKe","keyboardReturnKeyType","autoCompleteSuggestionType","testID","_ref$size","size","rest","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","isRevealed","setIsRevealed","isEnabled","isRevealedAndEnabled","toggleIsRevealed","revealed","iconAccessibilityLabel","type","revealButtonIcon","EyeOffIcon","EyeIcon","revealButton","_jsx","IconButton","icon","onClick","trailingFooterSlot","_value$length","BaseBox","marginTop","marginRight","children","CharacterCounter","currentCount","length","maxCount","BaseInput","_objectSpread","componentName","MetaConstants","PasswordInput","id","hideLabelText","Boolean","trailingInteractionElement","autoCapitalize","assignWithoutSideEffects","forwardRef","displayName"],"mappings":"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"}
@@ -62,7 +62,7 @@ var _PhoneNumberInput = function _PhoneNumberInput(_ref, ref) {
62
62
  autoCompleteSuggestionType = _ref.autoCompleteSuggestionType,
63
63
  allowedCountries = _ref.allowedCountries,
64
64
  placeholder = _ref.placeholder,
65
- styledProps = _objectWithoutProperties(_ref, _excluded);
65
+ rest = _objectWithoutProperties(_ref, _excluded);
66
66
  var inputRef = React__default.useRef(null);
67
67
  var mergedRef = useMergeRefs(ref, inputRef);
68
68
  var inputWrapperRef = React__default.useRef(null);
@@ -225,7 +225,7 @@ var _PhoneNumberInput = function _PhoneNumberInput(_ref, ref) {
225
225
  autoCapitalize: 'none'
226
226
  })), {}, {
227
227
  type: "telephone"
228
- }, styledProps));
228
+ }, rest));
229
229
  };
230
230
 
231
231
  /**