@vibe/core 4.5.9 → 4.5.10

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 (483) hide show
  1. package/dist/components/AvatarGroup/AvatarGroup.d.ts +1 -2
  2. package/dist/components/AvatarGroup/AvatarGroupCounter.d.ts +1 -2
  3. package/dist/components/AvatarGroup/AvatarGroupCounterTooltipContainer.d.ts +1 -2
  4. package/dist/components/AvatarGroup/AvatarGroupCounterTooltipContent.d.ts +1 -2
  5. package/dist/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.d.ts +1 -2
  6. package/dist/components/AvatarGroup/AvatarGroupCounterTooltipHelper.d.ts +1 -2
  7. package/dist/components/AvatarGroup/AvatarGroupHelper.d.ts +1 -1
  8. package/dist/components/Chips/Chips.d.ts +1 -1
  9. package/dist/components/Menu/MenuItem/AvatarMenuItem.d.ts +1 -1
  10. package/dist/components/avatar/dist/Avatar/Avatar.js +2 -0
  11. package/dist/components/avatar/dist/Avatar/Avatar.js.map +1 -0
  12. package/dist/components/avatar/dist/Avatar/Avatar.module.scss.js +2 -0
  13. package/dist/components/avatar/dist/Avatar/AvatarBadge.js +2 -0
  14. package/dist/components/avatar/dist/Avatar/AvatarBadge.js.map +1 -0
  15. package/dist/components/avatar/dist/Avatar/AvatarBadge.module.scss.js +2 -0
  16. package/dist/components/avatar/dist/Avatar/AvatarContent.js +2 -0
  17. package/dist/components/avatar/dist/Avatar/AvatarContent.js.map +1 -0
  18. package/dist/components/avatar/dist/Avatar/AvatarContent.module.scss.js +2 -0
  19. package/dist/components/avatar/dist/_virtual/_tslib.js +2 -0
  20. package/dist/components/avatar/dist/_virtual/_tslib.js.map +1 -0
  21. package/dist/components/button-group/dist/ButtonGroup/ButtonGroup.js +1 -1
  22. package/dist/components/button-group/dist/ButtonGroup/ButtonGroup.js.map +1 -1
  23. package/dist/components/button-group/dist/ButtonGroup/ButtonGroup.module.scss.js +1 -1
  24. package/dist/components/checkbox/dist/Checkbox/Checkbox.module.scss.js +1 -1
  25. package/dist/components/counter/dist/Counter/Counter.module.scss.js +1 -1
  26. package/dist/components/dialog/dist/Dialog/Dialog.module.scss.js +1 -1
  27. package/dist/components/dialog/dist/Dialog/components/DialogContent/DialogContent.module.scss.js +1 -1
  28. package/dist/components/dialog/dist/DialogContentContainer/DialogContentContainer.module.scss.js +1 -1
  29. package/dist/components/editable/dist/EditableHeading/EditableHeading.js +2 -0
  30. package/dist/components/editable/dist/EditableHeading/EditableHeading.js.map +1 -0
  31. package/dist/components/editable/dist/EditableHeading/EditableHeading.module.scss.js +2 -0
  32. package/dist/components/editable/dist/EditableText/EditableText.js +2 -0
  33. package/dist/components/editable/dist/EditableText/EditableText.js.map +1 -0
  34. package/dist/components/editable/dist/EditableText/EditableText.module.scss.js +2 -0
  35. package/dist/components/editable/dist/EditableTypography/EditableTypography.js +2 -0
  36. package/dist/components/editable/dist/EditableTypography/EditableTypography.js.map +1 -0
  37. package/dist/components/editable/dist/EditableTypography/EditableTypography.module.scss.js +2 -0
  38. package/dist/components/editable/dist/_virtual/_tslib.js +2 -0
  39. package/dist/components/editable/dist/_virtual/_tslib.js.map +1 -0
  40. package/dist/components/expand-collapse/dist/ExpandCollapse/ExpandCollapse.module.scss.js +1 -1
  41. package/dist/components/icon-button/dist/IconButton/IconButton.module.scss.js +1 -1
  42. package/dist/components/index.d.ts +2 -3
  43. package/dist/components/label/dist/Label/Label.module.scss.js +1 -1
  44. package/dist/components/label/dist/Label/LabelCelebrationAnimation.module.scss.js +1 -1
  45. package/dist/components/radio-button/dist/RadioButton/RadioButton.module.scss.js +1 -1
  46. package/dist/components/tooltip/dist/Tooltip/Tooltip.module.scss.js +1 -1
  47. package/dist/components/typography/dist/Heading/Heading.module.scss.js +1 -1
  48. package/dist/components/typography/dist/Text/Text.module.scss.js +1 -1
  49. package/dist/components/typography/dist/Typography/Typography.module.scss.js +1 -1
  50. package/dist/hooks/dist/usePrevious/index.js.map +1 -0
  51. package/dist/hooks/index.d.ts +1 -2
  52. package/dist/metadata/components.json +3 -6
  53. package/dist/metadata.json +3 -6
  54. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroup.d.ts +1 -2
  55. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupCounter.d.ts +1 -2
  56. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupCounterTooltipContainer.d.ts +1 -2
  57. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupCounterTooltipContent.d.ts +1 -2
  58. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.d.ts +1 -2
  59. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupCounterTooltipHelper.d.ts +1 -2
  60. package/dist/mocked_classnames/components/AvatarGroup/AvatarGroupHelper.d.ts +1 -1
  61. package/dist/mocked_classnames/components/Chips/Chips.d.ts +1 -1
  62. package/dist/mocked_classnames/components/Menu/MenuItem/AvatarMenuItem.d.ts +1 -1
  63. package/dist/mocked_classnames/components/index.d.ts +2 -3
  64. package/dist/mocked_classnames/hooks/index.d.ts +1 -2
  65. package/dist/mocked_classnames/src/components/Accordion/Accordion/Accordion.module.scss.js +1 -1
  66. package/dist/mocked_classnames/src/components/AlertBanner/AlertBanner.module.scss.js +1 -1
  67. package/dist/mocked_classnames/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.module.scss.js +1 -1
  68. package/dist/mocked_classnames/src/components/AlertBanner/AlertBannerLink/AlertBannerLink.module.scss.js +1 -1
  69. package/dist/mocked_classnames/src/components/AlertBanner/AlertBannerText/AlertBannerText.module.scss.js +1 -1
  70. package/dist/mocked_classnames/src/components/AttentionBox/AttentionBox.module.scss.js +1 -1
  71. package/dist/mocked_classnames/src/components/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.module.scss.js +1 -1
  72. package/dist/mocked_classnames/src/components/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.module.scss.js +1 -1
  73. package/dist/mocked_classnames/src/components/AttentionBox/components/AttentionBoxLink/AttentionBoxLink.module.scss.js +1 -1
  74. package/dist/mocked_classnames/src/components/AttentionBox/layouts/AttentionBoxCompact/AttentionBoxCompact.module.scss.js +1 -1
  75. package/dist/mocked_classnames/src/components/AttentionBox/layouts/AttentionBoxDefault/AttentionBoxDefault.module.scss.js +1 -1
  76. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroup.js.map +1 -1
  77. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroup.module.scss.js +1 -1
  78. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounter.js.map +1 -1
  79. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounter.module.scss.js +1 -1
  80. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipContainer.js.map +1 -1
  81. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipContent.js.map +1 -1
  82. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipContent.module.scss.js +1 -1
  83. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.js.map +1 -1
  84. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.module.scss.js +1 -1
  85. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipHelper.js +1 -1
  86. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupCounterTooltipHelper.js.map +1 -1
  87. package/dist/mocked_classnames/src/components/AvatarGroup/AvatarGroupHelper.js.map +1 -1
  88. package/dist/mocked_classnames/src/components/Badge/Badge.module.scss.js +1 -1
  89. package/dist/mocked_classnames/src/components/Badge/Indicator/Indicator.module.scss.js +1 -1
  90. package/dist/mocked_classnames/src/components/BaseItem/BaseItem.module.scss.js +1 -1
  91. package/dist/mocked_classnames/src/components/BaseItem/utils.js +1 -1
  92. package/dist/mocked_classnames/src/components/BaseItem/utils.js.map +1 -1
  93. package/dist/mocked_classnames/src/components/BaseList/BaseList.module.scss.js +1 -1
  94. package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.module.scss.js +1 -1
  95. package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.module.scss.js +1 -1
  96. package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbsMenu.module.scss.js +1 -1
  97. package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbsBar.module.scss.js +1 -1
  98. package/dist/mocked_classnames/src/components/Chips/Chips.js +1 -1
  99. package/dist/mocked_classnames/src/components/Chips/Chips.js.map +1 -1
  100. package/dist/mocked_classnames/src/components/Chips/Chips.module.scss.js +1 -1
  101. package/dist/mocked_classnames/src/components/ColorPicker/ColorPicker.module.scss.js +1 -1
  102. package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.module.scss.js +1 -1
  103. package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.module.scss.js +1 -1
  104. package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.module.scss.js +1 -1
  105. package/dist/mocked_classnames/src/components/Combobox/Combobox.module.scss.js +1 -1
  106. package/dist/mocked_classnames/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js +1 -1
  107. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js +1 -1
  108. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js +1 -1
  109. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js +1 -1
  110. package/dist/mocked_classnames/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js +1 -1
  111. package/dist/mocked_classnames/src/components/DatePicker/DatePicker.module.scss.js +1 -1
  112. package/dist/mocked_classnames/src/components/DatePicker/DatePickerHeader.module.scss.js +1 -1
  113. package/dist/mocked_classnames/src/components/Dropdown/components/DropdownBase/DropdownBase.module.scss.js +1 -1
  114. package/dist/mocked_classnames/src/components/Dropdown/components/DropdownBaseList/DropdownBaseList.module.scss.js +1 -1
  115. package/dist/mocked_classnames/src/components/Dropdown/components/DropdownBoxMode/DropdownBoxMode.module.scss.js +1 -1
  116. package/dist/mocked_classnames/src/components/Dropdown/components/Menu/Menu.module.scss.js +1 -1
  117. package/dist/mocked_classnames/src/components/Dropdown/components/MultiSelectedValues/MultiSelectedValues.module.scss.js +1 -1
  118. package/dist/mocked_classnames/src/components/Dropdown/components/Trigger/Trigger.module.scss.js +1 -1
  119. package/dist/mocked_classnames/src/components/EmptyState/EmptyState.module.scss.js +1 -1
  120. package/dist/mocked_classnames/src/components/FieldLabel/FieldLabel.module.scss.js +1 -1
  121. package/dist/mocked_classnames/src/components/HiddenText/HiddenText.module.scss.js +1 -1
  122. package/dist/mocked_classnames/src/components/Info/components/InfoDialogContent/InfoDialogContent.module.scss.js +1 -1
  123. package/dist/mocked_classnames/src/components/Info/components/InfoLink/InfoLink.module.scss.js +1 -1
  124. package/dist/mocked_classnames/src/components/InfoText/InfoText.module.scss.js +1 -1
  125. package/dist/mocked_classnames/src/components/List/List.module.scss.js +1 -1
  126. package/dist/mocked_classnames/src/components/List/VirtualizedListItems/VirtualizedListItems.module.scss.js +1 -1
  127. package/dist/mocked_classnames/src/components/ListItem/ListItem.module.scss.js +1 -1
  128. package/dist/mocked_classnames/src/components/ListItemAvatar/ListItemAvatar.js +1 -1
  129. package/dist/mocked_classnames/src/components/ListItemAvatar/ListItemAvatar.js.map +1 -1
  130. package/dist/mocked_classnames/src/components/ListItemAvatar/ListItemAvatar.module.scss.js +1 -1
  131. package/dist/mocked_classnames/src/components/ListItemIcon/ListItemIcon.module.scss.js +1 -1
  132. package/dist/mocked_classnames/src/components/ListTitle/ListTitle.module.scss.js +1 -1
  133. package/dist/mocked_classnames/src/components/Menu/Menu/Menu.js +1 -1
  134. package/dist/mocked_classnames/src/components/Menu/Menu/Menu.js.map +1 -1
  135. package/dist/mocked_classnames/src/components/Menu/Menu/Menu.module.scss.js +1 -1
  136. package/dist/mocked_classnames/src/components/Menu/Menu/hooks/useMouseLeave.js +1 -1
  137. package/dist/mocked_classnames/src/components/Menu/Menu/hooks/useMouseLeave.js.map +1 -1
  138. package/dist/mocked_classnames/src/components/Menu/MenuDivider/MenuDivider.module.scss.js +1 -1
  139. package/dist/mocked_classnames/src/components/Menu/MenuItem/AvatarMenuItem.js +1 -1
  140. package/dist/mocked_classnames/src/components/Menu/MenuItem/AvatarMenuItem.js.map +1 -1
  141. package/dist/mocked_classnames/src/components/Menu/MenuItem/MenuItem.module.scss.js +1 -1
  142. package/dist/mocked_classnames/src/components/Menu/MenuItem/components/BaseMenuItem/BaseMenuItem.module.scss.js +1 -1
  143. package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.module.scss.js +1 -1
  144. package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.module.scss.js +1 -1
  145. package/dist/mocked_classnames/src/components/Menu/MenuItem/hooks/useMenuItemMouseEvents.js +1 -1
  146. package/dist/mocked_classnames/src/components/Menu/MenuItem/hooks/useMenuItemMouseEvents.js.map +1 -1
  147. package/dist/mocked_classnames/src/components/Menu/MenuItemButton/MenuItemButton.module.scss.js +1 -1
  148. package/dist/mocked_classnames/src/components/Menu/MenuTitle/MenuTitle.module.scss.js +1 -1
  149. package/dist/mocked_classnames/src/components/MenuButton/MenuButton.module.scss.js +1 -1
  150. package/dist/mocked_classnames/src/components/Modal/Modal/Modal.module.scss.js +1 -1
  151. package/dist/mocked_classnames/src/components/Modal/ModalHeader/ModalHeader.module.scss.js +1 -1
  152. package/dist/mocked_classnames/src/components/Modal/ModalMedia/ModalMedia.module.scss.js +1 -1
  153. package/dist/mocked_classnames/src/components/Modal/ModalTopActions/ModalTopActions.module.scss.js +1 -1
  154. package/dist/mocked_classnames/src/components/Modal/footers/ModalFooter/ModalFooter.module.scss.js +1 -1
  155. package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.module.scss.js +1 -1
  156. package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterWizard/ModalFooterWizard.module.scss.js +1 -1
  157. package/dist/mocked_classnames/src/components/Modal/layouts/ModalBasicLayout/ModalBasicLayout.module.scss.js +1 -1
  158. package/dist/mocked_classnames/src/components/Modal/layouts/ModalFooterShadow.module.scss.js +1 -1
  159. package/dist/mocked_classnames/src/components/Modal/layouts/ModalLayoutScrollableContent.module.scss.js +1 -1
  160. package/dist/mocked_classnames/src/components/Modal/layouts/ModalMediaLayout/ModalMediaLayout.module.scss.js +1 -1
  161. package/dist/mocked_classnames/src/components/Modal/layouts/ModalSideBySideLayout/ModalSideBySideLayout.module.scss.js +1 -1
  162. package/dist/mocked_classnames/src/components/MultiStepIndicator/MultiStepIndicator.module.scss.js +1 -1
  163. package/dist/mocked_classnames/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.module.scss.js +1 -1
  164. package/dist/mocked_classnames/src/components/NumberField/NumberField.module.scss.js +1 -1
  165. package/dist/mocked_classnames/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.module.scss.js +1 -1
  166. package/dist/mocked_classnames/src/components/Search/Search.module.scss.js +1 -1
  167. package/dist/mocked_classnames/src/components/Skeleton/Skeleton.module.scss.js +1 -1
  168. package/dist/mocked_classnames/src/components/SlideTransition/SlideTransition.module.scss.js +1 -1
  169. package/dist/mocked_classnames/src/components/Slider/SelectionIndicator.module.scss.js +1 -1
  170. package/dist/mocked_classnames/src/components/Slider/Slider.module.scss.js +1 -1
  171. package/dist/mocked_classnames/src/components/Slider/SliderBase/SliderBase.module.scss.js +1 -1
  172. package/dist/mocked_classnames/src/components/Slider/SliderBase/SliderFilledTrack.module.scss.js +1 -1
  173. package/dist/mocked_classnames/src/components/Slider/SliderBase/SliderRail.module.scss.js +1 -1
  174. package/dist/mocked_classnames/src/components/Slider/SliderBase/SliderThumb.module.scss.js +1 -1
  175. package/dist/mocked_classnames/src/components/Slider/SliderBase/SliderTrack.module.scss.js +1 -1
  176. package/dist/mocked_classnames/src/components/Slider/SliderInfix.module.scss.js +1 -1
  177. package/dist/mocked_classnames/src/components/SplitButton/SplitButton.module.scss.js +1 -1
  178. package/dist/mocked_classnames/src/components/Steps/Steps.module.scss.js +1 -1
  179. package/dist/mocked_classnames/src/components/Steps/StepsCommand.module.scss.js +1 -1
  180. package/dist/mocked_classnames/src/components/Steps/StepsDot.module.scss.js +1 -1
  181. package/dist/mocked_classnames/src/components/Steps/StepsGalleryHeader.module.scss.js +1 -1
  182. package/dist/mocked_classnames/src/components/Steps/StepsHeader.module.scss.js +1 -1
  183. package/dist/mocked_classnames/src/components/Steps/StepsNumbersHeader.module.scss.js +1 -1
  184. package/dist/mocked_classnames/src/components/Switch/Switch.module.scss.js +1 -1
  185. package/dist/mocked_classnames/src/components/Table/Table/Table.module.scss.js +1 -1
  186. package/dist/mocked_classnames/src/components/Table/TableBody/TableBody.module.scss.js +1 -1
  187. package/dist/mocked_classnames/src/components/Table/TableCell/TableCell.module.scss.js +1 -1
  188. package/dist/mocked_classnames/src/components/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js +1 -1
  189. package/dist/mocked_classnames/src/components/Table/TableContainer/TableContainer.module.scss.js +1 -1
  190. package/dist/mocked_classnames/src/components/Table/TableHeader/TableHeader.module.scss.js +1 -1
  191. package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.module.scss.js +1 -1
  192. package/dist/mocked_classnames/src/components/Table/TableRow/TableRow.module.scss.js +1 -1
  193. package/dist/mocked_classnames/src/components/Table/TableRowMenu/TableRowMenu.module.scss.js +1 -1
  194. package/dist/mocked_classnames/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js +1 -1
  195. package/dist/mocked_classnames/src/components/Tabs/Tab/Tab.module.scss.js +1 -1
  196. package/dist/mocked_classnames/src/components/Tabs/TabList/TabList.js +1 -1
  197. package/dist/mocked_classnames/src/components/Tabs/TabList/TabList.js.map +1 -1
  198. package/dist/mocked_classnames/src/components/Tabs/TabList/TabList.module.scss.js +1 -1
  199. package/dist/mocked_classnames/src/components/Tabs/TabPanel/TabPanel.module.scss.js +1 -1
  200. package/dist/mocked_classnames/src/components/Tabs/TabPanels/TabPanels.module.scss.js +1 -1
  201. package/dist/mocked_classnames/src/components/Tabs/TabsContext/TabsContext.js +1 -1
  202. package/dist/mocked_classnames/src/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  203. package/dist/mocked_classnames/src/components/TextArea/TextArea.module.scss.js +1 -1
  204. package/dist/mocked_classnames/src/components/TextField/TextField.module.scss.js +1 -1
  205. package/dist/mocked_classnames/src/components/TextWithHighlight/TextWithHighlight.module.scss.js +1 -1
  206. package/dist/mocked_classnames/src/components/Tipseen/Tipseen.module.scss.js +1 -1
  207. package/dist/mocked_classnames/src/components/Tipseen/TipseenBasicContent.module.scss.js +1 -1
  208. package/dist/mocked_classnames/src/components/Tipseen/TipseenContent.module.scss.js +1 -1
  209. package/dist/mocked_classnames/src/components/Tipseen/TipseenMedia/TipseenMedia.module.scss.js +1 -1
  210. package/dist/mocked_classnames/src/components/Tipseen/TipseenTitle.module.scss.js +1 -1
  211. package/dist/mocked_classnames/src/components/Tipseen/TipseenWizard.module.scss.js +1 -1
  212. package/dist/mocked_classnames/src/components/Toast/Toast.js +1 -1
  213. package/dist/mocked_classnames/src/components/Toast/Toast.js.map +1 -1
  214. package/dist/mocked_classnames/src/components/Toast/Toast.module.scss.js +1 -1
  215. package/dist/mocked_classnames/src/components/Toast/ToastLink/ToastLink.module.scss.js +1 -1
  216. package/dist/mocked_classnames/src/components/Toggle/MockToggle.module.scss.js +1 -1
  217. package/dist/mocked_classnames/src/components/Toggle/Toggle.module.scss.js +1 -1
  218. package/dist/mocked_classnames/src/components/Toggle/ToggleText.module.scss.js +1 -1
  219. package/dist/mocked_classnames/src/components/TransitionView/TransitionView.module.scss.js +1 -1
  220. package/dist/mocked_classnames/src/components/VirtualizedGrid/VirtualizedGrid.js +1 -1
  221. package/dist/mocked_classnames/src/components/VirtualizedGrid/VirtualizedGrid.js.map +1 -1
  222. package/dist/mocked_classnames/src/components/VirtualizedGrid/VirtualizedGrid.module.scss.js +1 -1
  223. package/dist/mocked_classnames/src/components/VirtualizedList/VirtualizedList.js +1 -1
  224. package/dist/mocked_classnames/src/components/VirtualizedList/VirtualizedList.js.map +1 -1
  225. package/dist/mocked_classnames/src/components/VirtualizedList/VirtualizedList.module.scss.js +1 -1
  226. package/dist/mocked_classnames/src/components/next/List/List.module.scss.js +1 -1
  227. package/dist/mocked_classnames/src/components/next/List/ListTitle/ListTitle.module.scss.js +1 -1
  228. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js +1 -1
  229. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js.map +1 -1
  230. package/dist/mocked_classnames/src/hooks/useSetFocus/index.js +1 -1
  231. package/dist/mocked_classnames/src/hooks/useSetFocus/index.js.map +1 -1
  232. package/dist/mocked_classnames/src/index.js +1 -1
  233. package/dist/shared/dist/types/Colors.js +2 -0
  234. package/dist/shared/dist/types/Colors.js.map +1 -0
  235. package/dist/src/components/Accordion/Accordion/Accordion.module.scss.js +1 -1
  236. package/dist/src/components/AlertBanner/AlertBanner.module.scss.js +1 -1
  237. package/dist/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.module.scss.js +1 -1
  238. package/dist/src/components/AlertBanner/AlertBannerLink/AlertBannerLink.module.scss.js +1 -1
  239. package/dist/src/components/AlertBanner/AlertBannerText/AlertBannerText.module.scss.js +1 -1
  240. package/dist/src/components/AttentionBox/AttentionBox.module.scss.js +1 -1
  241. package/dist/src/components/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.module.scss.js +1 -1
  242. package/dist/src/components/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.module.scss.js +1 -1
  243. package/dist/src/components/AttentionBox/components/AttentionBoxLink/AttentionBoxLink.module.scss.js +1 -1
  244. package/dist/src/components/AttentionBox/layouts/AttentionBoxCompact/AttentionBoxCompact.module.scss.js +1 -1
  245. package/dist/src/components/AttentionBox/layouts/AttentionBoxDefault/AttentionBoxDefault.module.scss.js +1 -1
  246. package/dist/src/components/AvatarGroup/AvatarGroup.js.map +1 -1
  247. package/dist/src/components/AvatarGroup/AvatarGroup.module.scss.js +1 -1
  248. package/dist/src/components/AvatarGroup/AvatarGroupCounter.js.map +1 -1
  249. package/dist/src/components/AvatarGroup/AvatarGroupCounter.module.scss.js +1 -1
  250. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipContainer.js.map +1 -1
  251. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipContent.js.map +1 -1
  252. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipContent.module.scss.js +1 -1
  253. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.js.map +1 -1
  254. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipContentVirtualizedList.module.scss.js +1 -1
  255. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipHelper.js +1 -1
  256. package/dist/src/components/AvatarGroup/AvatarGroupCounterTooltipHelper.js.map +1 -1
  257. package/dist/src/components/AvatarGroup/AvatarGroupHelper.js.map +1 -1
  258. package/dist/src/components/Badge/Badge.module.scss.js +1 -1
  259. package/dist/src/components/Badge/Indicator/Indicator.module.scss.js +1 -1
  260. package/dist/src/components/BaseItem/BaseItem.module.scss.js +1 -1
  261. package/dist/src/components/BaseItem/utils.js +1 -1
  262. package/dist/src/components/BaseItem/utils.js.map +1 -1
  263. package/dist/src/components/BaseList/BaseList.module.scss.js +1 -1
  264. package/dist/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.module.scss.js +1 -1
  265. package/dist/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.module.scss.js +1 -1
  266. package/dist/src/components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbsMenu.module.scss.js +1 -1
  267. package/dist/src/components/BreadcrumbsBar/BreadcrumbsBar.module.scss.js +1 -1
  268. package/dist/src/components/Chips/Chips.js +1 -1
  269. package/dist/src/components/Chips/Chips.js.map +1 -1
  270. package/dist/src/components/Chips/Chips.module.scss.js +1 -1
  271. package/dist/src/components/ColorPicker/ColorPicker.module.scss.js +1 -1
  272. package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.module.scss.js +1 -1
  273. package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.module.scss.js +1 -1
  274. package/dist/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.module.scss.js +1 -1
  275. package/dist/src/components/Combobox/Combobox.module.scss.js +1 -1
  276. package/dist/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js +1 -1
  277. package/dist/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js +1 -1
  278. package/dist/src/components/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js +1 -1
  279. package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js +1 -1
  280. package/dist/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js +1 -1
  281. package/dist/src/components/DatePicker/DatePicker.module.scss.js +1 -1
  282. package/dist/src/components/DatePicker/DatePickerHeader.module.scss.js +1 -1
  283. package/dist/src/components/Dropdown/components/DropdownBase/DropdownBase.module.scss.js +1 -1
  284. package/dist/src/components/Dropdown/components/DropdownBaseList/DropdownBaseList.module.scss.js +1 -1
  285. package/dist/src/components/Dropdown/components/DropdownBoxMode/DropdownBoxMode.module.scss.js +1 -1
  286. package/dist/src/components/Dropdown/components/Menu/Menu.module.scss.js +1 -1
  287. package/dist/src/components/Dropdown/components/MultiSelectedValues/MultiSelectedValues.module.scss.js +1 -1
  288. package/dist/src/components/Dropdown/components/Trigger/Trigger.module.scss.js +1 -1
  289. package/dist/src/components/EmptyState/EmptyState.module.scss.js +1 -1
  290. package/dist/src/components/FieldLabel/FieldLabel.module.scss.js +1 -1
  291. package/dist/src/components/HiddenText/HiddenText.module.scss.js +1 -1
  292. package/dist/src/components/Info/components/InfoDialogContent/InfoDialogContent.module.scss.js +1 -1
  293. package/dist/src/components/Info/components/InfoLink/InfoLink.module.scss.js +1 -1
  294. package/dist/src/components/InfoText/InfoText.module.scss.js +1 -1
  295. package/dist/src/components/List/List.module.scss.js +1 -1
  296. package/dist/src/components/List/VirtualizedListItems/VirtualizedListItems.module.scss.js +1 -1
  297. package/dist/src/components/ListItem/ListItem.module.scss.js +1 -1
  298. package/dist/src/components/ListItemAvatar/ListItemAvatar.js +1 -1
  299. package/dist/src/components/ListItemAvatar/ListItemAvatar.js.map +1 -1
  300. package/dist/src/components/ListItemAvatar/ListItemAvatar.module.scss.js +1 -1
  301. package/dist/src/components/ListItemIcon/ListItemIcon.module.scss.js +1 -1
  302. package/dist/src/components/ListTitle/ListTitle.module.scss.js +1 -1
  303. package/dist/src/components/Menu/Menu/Menu.js +1 -1
  304. package/dist/src/components/Menu/Menu/Menu.js.map +1 -1
  305. package/dist/src/components/Menu/Menu/Menu.module.scss.js +1 -1
  306. package/dist/src/components/Menu/Menu/hooks/useMouseLeave.js +1 -1
  307. package/dist/src/components/Menu/Menu/hooks/useMouseLeave.js.map +1 -1
  308. package/dist/src/components/Menu/MenuDivider/MenuDivider.module.scss.js +1 -1
  309. package/dist/src/components/Menu/MenuItem/AvatarMenuItem.js +1 -1
  310. package/dist/src/components/Menu/MenuItem/AvatarMenuItem.js.map +1 -1
  311. package/dist/src/components/Menu/MenuItem/MenuItem.module.scss.js +1 -1
  312. package/dist/src/components/Menu/MenuItem/components/BaseMenuItem/BaseMenuItem.module.scss.js +1 -1
  313. package/dist/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.module.scss.js +1 -1
  314. package/dist/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.module.scss.js +1 -1
  315. package/dist/src/components/Menu/MenuItem/hooks/useMenuItemMouseEvents.js +1 -1
  316. package/dist/src/components/Menu/MenuItem/hooks/useMenuItemMouseEvents.js.map +1 -1
  317. package/dist/src/components/Menu/MenuItemButton/MenuItemButton.module.scss.js +1 -1
  318. package/dist/src/components/Menu/MenuTitle/MenuTitle.module.scss.js +1 -1
  319. package/dist/src/components/MenuButton/MenuButton.js +1 -1
  320. package/dist/src/components/MenuButton/MenuButton.module.scss.js +1 -1
  321. package/dist/src/components/Modal/Modal/Modal.module.scss.js +1 -1
  322. package/dist/src/components/Modal/ModalHeader/ModalHeader.module.scss.js +1 -1
  323. package/dist/src/components/Modal/ModalMedia/ModalMedia.module.scss.js +1 -1
  324. package/dist/src/components/Modal/ModalTopActions/ModalTopActions.module.scss.js +1 -1
  325. package/dist/src/components/Modal/footers/ModalFooter/ModalFooter.module.scss.js +1 -1
  326. package/dist/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.module.scss.js +1 -1
  327. package/dist/src/components/Modal/footers/ModalFooterWizard/ModalFooterWizard.module.scss.js +1 -1
  328. package/dist/src/components/Modal/layouts/ModalBasicLayout/ModalBasicLayout.module.scss.js +1 -1
  329. package/dist/src/components/Modal/layouts/ModalFooterShadow.module.scss.js +1 -1
  330. package/dist/src/components/Modal/layouts/ModalLayoutScrollableContent.module.scss.js +1 -1
  331. package/dist/src/components/Modal/layouts/ModalMediaLayout/ModalMediaLayout.module.scss.js +1 -1
  332. package/dist/src/components/Modal/layouts/ModalSideBySideLayout/ModalSideBySideLayout.module.scss.js +1 -1
  333. package/dist/src/components/MultiStepIndicator/MultiStepIndicator.module.scss.js +1 -1
  334. package/dist/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.module.scss.js +1 -1
  335. package/dist/src/components/NumberField/NumberField.module.scss.js +1 -1
  336. package/dist/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.module.scss.js +1 -1
  337. package/dist/src/components/Search/Search.module.scss.js +1 -1
  338. package/dist/src/components/Skeleton/Skeleton.module.scss.js +1 -1
  339. package/dist/src/components/SlideTransition/SlideTransition.module.scss.js +1 -1
  340. package/dist/src/components/Slider/SelectionIndicator.module.scss.js +1 -1
  341. package/dist/src/components/Slider/Slider.module.scss.js +1 -1
  342. package/dist/src/components/Slider/SliderBase/SliderBase.module.scss.js +1 -1
  343. package/dist/src/components/Slider/SliderBase/SliderFilledTrack.module.scss.js +1 -1
  344. package/dist/src/components/Slider/SliderBase/SliderRail.module.scss.js +1 -1
  345. package/dist/src/components/Slider/SliderBase/SliderThumb.module.scss.js +1 -1
  346. package/dist/src/components/Slider/SliderBase/SliderTrack.module.scss.js +1 -1
  347. package/dist/src/components/Slider/SliderInfix.module.scss.js +1 -1
  348. package/dist/src/components/SplitButton/SplitButton.module.scss.js +1 -1
  349. package/dist/src/components/Steps/Steps.module.scss.js +1 -1
  350. package/dist/src/components/Steps/StepsCommand.module.scss.js +1 -1
  351. package/dist/src/components/Steps/StepsDot.module.scss.js +1 -1
  352. package/dist/src/components/Steps/StepsGalleryHeader.module.scss.js +1 -1
  353. package/dist/src/components/Steps/StepsHeader.module.scss.js +1 -1
  354. package/dist/src/components/Steps/StepsNumbersHeader.module.scss.js +1 -1
  355. package/dist/src/components/Switch/Switch.module.scss.js +1 -1
  356. package/dist/src/components/Table/Table/Table.module.scss.js +1 -1
  357. package/dist/src/components/Table/TableBody/TableBody.module.scss.js +1 -1
  358. package/dist/src/components/Table/TableCell/TableCell.module.scss.js +1 -1
  359. package/dist/src/components/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js +1 -1
  360. package/dist/src/components/Table/TableContainer/TableContainer.module.scss.js +1 -1
  361. package/dist/src/components/Table/TableHeader/TableHeader.module.scss.js +1 -1
  362. package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.module.scss.js +1 -1
  363. package/dist/src/components/Table/TableRow/TableRow.module.scss.js +1 -1
  364. package/dist/src/components/Table/TableRowMenu/TableRowMenu.module.scss.js +1 -1
  365. package/dist/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js +1 -1
  366. package/dist/src/components/Tabs/Tab/Tab.module.scss.js +1 -1
  367. package/dist/src/components/Tabs/TabList/TabList.js +1 -1
  368. package/dist/src/components/Tabs/TabList/TabList.js.map +1 -1
  369. package/dist/src/components/Tabs/TabList/TabList.module.scss.js +1 -1
  370. package/dist/src/components/Tabs/TabPanel/TabPanel.module.scss.js +1 -1
  371. package/dist/src/components/Tabs/TabPanels/TabPanels.module.scss.js +1 -1
  372. package/dist/src/components/Tabs/TabsContext/TabsContext.js +1 -1
  373. package/dist/src/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  374. package/dist/src/components/TextArea/TextArea.module.scss.js +1 -1
  375. package/dist/src/components/TextField/TextField.module.scss.js +1 -1
  376. package/dist/src/components/TextWithHighlight/TextWithHighlight.module.scss.js +1 -1
  377. package/dist/src/components/Tipseen/Tipseen.module.scss.js +1 -1
  378. package/dist/src/components/Tipseen/TipseenBasicContent.module.scss.js +1 -1
  379. package/dist/src/components/Tipseen/TipseenContent.module.scss.js +1 -1
  380. package/dist/src/components/Tipseen/TipseenMedia/TipseenMedia.module.scss.js +1 -1
  381. package/dist/src/components/Tipseen/TipseenTitle.module.scss.js +1 -1
  382. package/dist/src/components/Tipseen/TipseenWizard.module.scss.js +1 -1
  383. package/dist/src/components/Toast/Toast.js +1 -1
  384. package/dist/src/components/Toast/Toast.js.map +1 -1
  385. package/dist/src/components/Toast/Toast.module.scss.js +1 -1
  386. package/dist/src/components/Toast/ToastLink/ToastLink.module.scss.js +1 -1
  387. package/dist/src/components/Toggle/MockToggle.module.scss.js +1 -1
  388. package/dist/src/components/Toggle/Toggle.module.scss.js +1 -1
  389. package/dist/src/components/Toggle/ToggleText.module.scss.js +1 -1
  390. package/dist/src/components/TransitionView/TransitionView.module.scss.js +1 -1
  391. package/dist/src/components/VirtualizedGrid/VirtualizedGrid.js +1 -1
  392. package/dist/src/components/VirtualizedGrid/VirtualizedGrid.js.map +1 -1
  393. package/dist/src/components/VirtualizedGrid/VirtualizedGrid.module.scss.js +1 -1
  394. package/dist/src/components/VirtualizedList/VirtualizedList.js +1 -1
  395. package/dist/src/components/VirtualizedList/VirtualizedList.js.map +1 -1
  396. package/dist/src/components/VirtualizedList/VirtualizedList.module.scss.js +1 -1
  397. package/dist/src/components/next/List/List.module.scss.js +1 -1
  398. package/dist/src/components/next/List/ListTitle/ListTitle.module.scss.js +1 -1
  399. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js +1 -1
  400. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js.map +1 -1
  401. package/dist/src/hooks/useSetFocus/index.js +1 -1
  402. package/dist/src/hooks/useSetFocus/index.js.map +1 -1
  403. package/dist/src/index.js +1 -1
  404. package/dist/style/dist/index.min.css.js +1 -1
  405. package/package.json +15 -13
  406. package/dist/components/Avatar/Avatar.d.ts +0 -107
  407. package/dist/components/Avatar/Avatar.types.d.ts +0 -2
  408. package/dist/components/Avatar/AvatarBadge.d.ts +0 -28
  409. package/dist/components/Avatar/AvatarContent.d.ts +0 -40
  410. package/dist/components/Avatar/index.d.ts +0 -2
  411. package/dist/components/EditableHeading/EditableHeading.d.ts +0 -16
  412. package/dist/components/EditableHeading/index.d.ts +0 -1
  413. package/dist/components/EditableText/EditableText.d.ts +0 -20
  414. package/dist/components/EditableText/index.d.ts +0 -1
  415. package/dist/components/EditableTypography/EditableTypography.d.ts +0 -79
  416. package/dist/components/EditableTypography/index.d.ts +0 -1
  417. package/dist/components/button-group/dist/ButtonGroup/usePrevious.js +0 -2
  418. package/dist/components/button-group/dist/ButtonGroup/usePrevious.js.map +0 -1
  419. package/dist/hooks/usePrevious/index.d.ts +0 -1
  420. package/dist/mocked_classnames/components/Avatar/Avatar.d.ts +0 -107
  421. package/dist/mocked_classnames/components/Avatar/Avatar.types.d.ts +0 -2
  422. package/dist/mocked_classnames/components/Avatar/AvatarBadge.d.ts +0 -28
  423. package/dist/mocked_classnames/components/Avatar/AvatarContent.d.ts +0 -40
  424. package/dist/mocked_classnames/components/Avatar/index.d.ts +0 -2
  425. package/dist/mocked_classnames/components/EditableHeading/EditableHeading.d.ts +0 -16
  426. package/dist/mocked_classnames/components/EditableHeading/index.d.ts +0 -1
  427. package/dist/mocked_classnames/components/EditableText/EditableText.d.ts +0 -20
  428. package/dist/mocked_classnames/components/EditableText/index.d.ts +0 -1
  429. package/dist/mocked_classnames/components/EditableTypography/EditableTypography.d.ts +0 -79
  430. package/dist/mocked_classnames/components/EditableTypography/index.d.ts +0 -1
  431. package/dist/mocked_classnames/hooks/usePrevious/index.d.ts +0 -1
  432. package/dist/mocked_classnames/src/components/Avatar/Avatar.js +0 -2
  433. package/dist/mocked_classnames/src/components/Avatar/Avatar.js.map +0 -1
  434. package/dist/mocked_classnames/src/components/Avatar/Avatar.module.scss.js +0 -2
  435. package/dist/mocked_classnames/src/components/Avatar/AvatarBadge.js +0 -2
  436. package/dist/mocked_classnames/src/components/Avatar/AvatarBadge.js.map +0 -1
  437. package/dist/mocked_classnames/src/components/Avatar/AvatarBadge.module.scss.js +0 -2
  438. package/dist/mocked_classnames/src/components/Avatar/AvatarContent.js +0 -2
  439. package/dist/mocked_classnames/src/components/Avatar/AvatarContent.js.map +0 -1
  440. package/dist/mocked_classnames/src/components/Avatar/AvatarContent.module.scss.js +0 -2
  441. package/dist/mocked_classnames/src/components/EditableHeading/EditableHeading.js +0 -2
  442. package/dist/mocked_classnames/src/components/EditableHeading/EditableHeading.js.map +0 -1
  443. package/dist/mocked_classnames/src/components/EditableHeading/EditableHeading.module.scss.js +0 -2
  444. package/dist/mocked_classnames/src/components/EditableText/EditableText.js +0 -2
  445. package/dist/mocked_classnames/src/components/EditableText/EditableText.js.map +0 -1
  446. package/dist/mocked_classnames/src/components/EditableText/EditableText.module.scss.js +0 -2
  447. package/dist/mocked_classnames/src/components/EditableTypography/EditableTypography.js +0 -2
  448. package/dist/mocked_classnames/src/components/EditableTypography/EditableTypography.js.map +0 -1
  449. package/dist/mocked_classnames/src/components/EditableTypography/EditableTypography.module.scss.js +0 -2
  450. package/dist/mocked_classnames/src/hooks/usePrevious/index.js +0 -2
  451. package/dist/mocked_classnames/src/hooks/usePrevious/index.js.map +0 -1
  452. package/dist/src/components/Avatar/Avatar.js +0 -2
  453. package/dist/src/components/Avatar/Avatar.js.map +0 -1
  454. package/dist/src/components/Avatar/Avatar.module.scss.js +0 -2
  455. package/dist/src/components/Avatar/Avatar.module.scss.js.map +0 -1
  456. package/dist/src/components/Avatar/AvatarBadge.js +0 -2
  457. package/dist/src/components/Avatar/AvatarBadge.js.map +0 -1
  458. package/dist/src/components/Avatar/AvatarBadge.module.scss.js +0 -2
  459. package/dist/src/components/Avatar/AvatarBadge.module.scss.js.map +0 -1
  460. package/dist/src/components/Avatar/AvatarContent.js +0 -2
  461. package/dist/src/components/Avatar/AvatarContent.js.map +0 -1
  462. package/dist/src/components/Avatar/AvatarContent.module.scss.js +0 -2
  463. package/dist/src/components/Avatar/AvatarContent.module.scss.js.map +0 -1
  464. package/dist/src/components/EditableHeading/EditableHeading.js +0 -2
  465. package/dist/src/components/EditableHeading/EditableHeading.js.map +0 -1
  466. package/dist/src/components/EditableHeading/EditableHeading.module.scss.js +0 -2
  467. package/dist/src/components/EditableHeading/EditableHeading.module.scss.js.map +0 -1
  468. package/dist/src/components/EditableText/EditableText.js +0 -2
  469. package/dist/src/components/EditableText/EditableText.js.map +0 -1
  470. package/dist/src/components/EditableText/EditableText.module.scss.js +0 -2
  471. package/dist/src/components/EditableText/EditableText.module.scss.js.map +0 -1
  472. package/dist/src/components/EditableTypography/EditableTypography.js +0 -2
  473. package/dist/src/components/EditableTypography/EditableTypography.js.map +0 -1
  474. package/dist/src/components/EditableTypography/EditableTypography.module.scss.js +0 -2
  475. package/dist/src/components/EditableTypography/EditableTypography.module.scss.js.map +0 -1
  476. package/dist/src/hooks/usePrevious/index.js.map +0 -1
  477. /package/dist/{mocked_classnames/src/components → components/avatar/dist}/Avatar/Avatar.module.scss.js.map +0 -0
  478. /package/dist/{mocked_classnames/src/components → components/avatar/dist}/Avatar/AvatarBadge.module.scss.js.map +0 -0
  479. /package/dist/{mocked_classnames/src/components → components/avatar/dist}/Avatar/AvatarContent.module.scss.js.map +0 -0
  480. /package/dist/{mocked_classnames/src/components → components/editable/dist}/EditableHeading/EditableHeading.module.scss.js.map +0 -0
  481. /package/dist/{mocked_classnames/src/components → components/editable/dist}/EditableText/EditableText.module.scss.js.map +0 -0
  482. /package/dist/{mocked_classnames/src/components → components/editable/dist}/EditableTypography/EditableTypography.module.scss.js.map +0 -0
  483. /package/dist/{src/hooks → hooks/dist}/usePrevious/index.js +0 -0
@@ -1,2 +1,2 @@
1
- import{slicedToArray as t}from"../../../_virtual/_rollupPluginBabelHelpers.js";import i from"classnames";import e,{forwardRef as r,useState as o,useMemo as n,useRef as l,useCallback as a,useEffect as s}from"react";import{noop as c}from"es-toolkit";import{VariableSizeList as u}from"react-window";import f from"react-virtualized-auto-sizer";import d from"../../hooks/usePrevious/index.js";import m from"../../hooks/useThrottledCallback.js";import{useMergeRef as v}from"@vibe/shared";import{getNormalizedItems as p,getMaxOffset as h,getOnItemsRenderedData as I,isLayoutDirectionScrollbarVisible as S,easeInOutQuint as T}from"../../services/virtualized-service.js";import{getTestId as O}from"../../tests/testIds.js";import{ComponentDefaultTestId as g}from"../../tests/constants.js";import z from"./VirtualizedList.module.scss.js";var b=r((function(r,b){var y=r.className,C=r.id,j=r.items,w=void 0===j?[]:j,F=r.itemRenderer,R=void 0===F?function(t,i,e){return t}:F,x=r.getItemSize,L=void 0===x?function(t,i){return t.height}:x,k=r.layout,A=void 0===k?"vertical":k,D=r.onScroll,E=r.overscanCount,N=void 0===E?0:E,M=r.getItemId,U=void 0===M?function(t,i){return t.id}:M,V=r.scrollToId,_=r.scrollDuration,q=void 0===_?200:_,P=r.onScrollToFinished,W=void 0===P?c:P,B=r.onItemsRendered,H=r.onItemsRenderedThrottleMs,Z=void 0===H?200:H,G=r.onSizeUpdate,J=void 0===G?c:G,K=r.onLayoutDirectionScrollbarVisibilityChange,Q=void 0===K?null:K,X=r.virtualListRef,Y=r.scrollableClassName,$=r.role,tt=r["aria-label"],it=r.style,et=r["data-testid"],rt=o(0),ot=t(rt,2),nt=ot[0],lt=ot[1],at=o(0),st=t(at,2),ct=st[0],ut=st[1],ft="horizontal"!==A,dt=n((function(){return ft?nt:ct}),[ft,nt,ct]),mt=d(V),vt=l(null),pt=l(null),ht=l(null),It=l(0),St=l({initialized:!1,scrollOffsetInitial:0,scrollOffsetFinal:0,animationStartTime:0}),Tt=v(b,vt),Ot=v(X,ht),gt=St.current;gt.initialized||(gt.initialized=!0,gt.scrollOffsetInitial=0,gt.scrollOffsetFinal=0,gt.animationStartTime=0);var zt=a((function(t,i){var e=L(t,i);return void 0===e&&console.error("Couldn't get height for item: ",t),e}),[L]),bt=a((function(t,i){var e=U(t,i);return void 0===e&&console.error("Couldn't get id for item: ",t),e}),[U]),yt=n((function(){return p(w,bt,zt)}),[w,bt,zt]),Ct=n((function(){return h(dt,yt)}),[dt,yt]),jt=a((function(t){var i=t.scrollDirection,e=t.scrollOffset,r=t.scrollUpdateWasRequested;It.current=e,r||(gt.scrollOffsetInitial=e),D&&D(i,e,r)}),[D,It,gt]),wt=a((function(){requestAnimationFrame((function(){var t,i=performance.now()-gt.animationStartTime,e=gt.scrollOffsetFinal-gt.scrollOffsetInitial,r=T(Math.min(1,i/q)),o=Math.min(Ct,gt.scrollOffsetInitial+e*r);It.current=o,null===(t=ht.current)||void 0===t||t.scrollTo(o),q>i?wt():(gt.animationStartTime=void 0,W&&W())}))}),[q,gt,ht,Ct,W]),Ft=a((function(t){var i,e,r,o,n=t.offsetTop;gt.animationStartTime?gt.scrollOffsetFinal=n:(null!==(null===(e=null===(i=ht.current)||void 0===i?void 0:i.state)||void 0===e?void 0:e.scrollOffset)&&(gt.scrollOffsetInitial=null===(o=null===(r=ht.current)||void 0===r?void 0:r.state)||void 0===o?void 0:o.scrollOffset),gt.scrollOffsetInitial!==n?(gt.scrollOffsetFinal=n,gt.animationStartTime=performance.now(),wt()):W&&W())}),[gt,wt,W]),Rt=a((function(t){var i=t.index;return R(w[i],i,t.style)}),[w,R]),xt=a((function(t){return zt(w[t],t)}),[w,zt]),Lt=a((function(t,i){i===nt&&t===ct||setTimeout((function(){lt(i),ut(t),J(t,i)}),0)}),[nt,ct,J]),kt=m((function(t){if(B){var i=I(w,yt,bt,t.visibleStartIndex,t.visibleStopIndex,dt,It.current);B(i)}}),{wait:Z,trailing:!0},[B,w,yt,bt,dt]);return s((function(){if(V&&mt!==V){var t=S(w,yt,bt,dt),i=yt[V];t&&i&&Ft(i)}}),[mt,V,Ft,yt,w,bt,dt]),s((function(){ht.current&&ht.current.resetAfterIndex(0)}),[yt]),s((function(){if(Q){var t=S(w,yt,bt,dt);pt.current!==t&&(pt.current=t,Q(t))}}),[Q,w,yt,dt,bt]),e.createElement("div",{ref:Tt,className:i(z.virtualizedListWrapper,y),id:C,role:$,"aria-label":tt,"data-testid":et||O(g.VIRTUALIZED_LIST,C),style:it},e.createElement(f,null,(function(t){var i=t.height,r=t.width;return Lt(r,i),e.createElement(u,{ref:Ot,height:i,width:r,itemCount:w.length,itemSize:xt,onScroll:jt,layout:A,overscanCount:N,onItemsRendered:kt,className:Y},Rt)})))}));export{b as default};
1
+ import{slicedToArray as t}from"../../../_virtual/_rollupPluginBabelHelpers.js";import i from"classnames";import e,{forwardRef as r,useState as o,useMemo as n,useRef as l,useCallback as a,useEffect as s}from"react";import{noop as c}from"es-toolkit";import{VariableSizeList as u}from"react-window";import f from"react-virtualized-auto-sizer";import{usePrevious as d}from"@vibe/hooks";import m from"../../hooks/useThrottledCallback.js";import{useMergeRef as v}from"@vibe/shared";import{getNormalizedItems as p,getMaxOffset as h,getOnItemsRenderedData as I,isLayoutDirectionScrollbarVisible as S,easeInOutQuint as T}from"../../services/virtualized-service.js";import{getTestId as O}from"../../tests/testIds.js";import{ComponentDefaultTestId as g}from"../../tests/constants.js";import z from"./VirtualizedList.module.scss.js";var b=r((function(r,b){var y=r.className,C=r.id,w=r.items,F=void 0===w?[]:w,R=r.itemRenderer,j=void 0===R?function(t,i,e){return t}:R,L=r.getItemSize,x=void 0===L?function(t,i){return t.height}:L,k=r.layout,A=void 0===k?"vertical":k,D=r.onScroll,E=r.overscanCount,N=void 0===E?0:E,M=r.getItemId,U=void 0===M?function(t,i){return t.id}:M,V=r.scrollToId,_=r.scrollDuration,q=void 0===_?200:_,W=r.onScrollToFinished,B=void 0===W?c:W,H=r.onItemsRendered,P=r.onItemsRenderedThrottleMs,Z=void 0===P?200:P,G=r.onSizeUpdate,J=void 0===G?c:G,K=r.onLayoutDirectionScrollbarVisibilityChange,Q=void 0===K?null:K,X=r.virtualListRef,Y=r.scrollableClassName,$=r.role,tt=r["aria-label"],it=r.style,et=r["data-testid"],rt=o(0),ot=t(rt,2),nt=ot[0],lt=ot[1],at=o(0),st=t(at,2),ct=st[0],ut=st[1],ft="horizontal"!==A,dt=n((function(){return ft?nt:ct}),[ft,nt,ct]),mt=d(V),vt=l(null),pt=l(null),ht=l(null),It=l(0),St=l({initialized:!1,scrollOffsetInitial:0,scrollOffsetFinal:0,animationStartTime:0}),Tt=v(b,vt),Ot=v(X,ht),gt=St.current;gt.initialized||(gt.initialized=!0,gt.scrollOffsetInitial=0,gt.scrollOffsetFinal=0,gt.animationStartTime=0);var zt=a((function(t,i){var e=x(t,i);return void 0===e&&console.error("Couldn't get height for item: ",t),e}),[x]),bt=a((function(t,i){var e=U(t,i);return void 0===e&&console.error("Couldn't get id for item: ",t),e}),[U]),yt=n((function(){return p(F,bt,zt)}),[F,bt,zt]),Ct=n((function(){return h(dt,yt)}),[dt,yt]),wt=a((function(t){var i=t.scrollDirection,e=t.scrollOffset,r=t.scrollUpdateWasRequested;It.current=e,r||(gt.scrollOffsetInitial=e),D&&D(i,e,r)}),[D,It,gt]),Ft=a((function(){requestAnimationFrame((function(){var t,i=performance.now()-gt.animationStartTime,e=gt.scrollOffsetFinal-gt.scrollOffsetInitial,r=T(Math.min(1,i/q)),o=Math.min(Ct,gt.scrollOffsetInitial+e*r);It.current=o,null===(t=ht.current)||void 0===t||t.scrollTo(o),q>i?Ft():(gt.animationStartTime=void 0,B&&B())}))}),[q,gt,ht,Ct,B]),Rt=a((function(t){var i,e,r,o,n=t.offsetTop;gt.animationStartTime?gt.scrollOffsetFinal=n:(null!==(null===(e=null===(i=ht.current)||void 0===i?void 0:i.state)||void 0===e?void 0:e.scrollOffset)&&(gt.scrollOffsetInitial=null===(o=null===(r=ht.current)||void 0===r?void 0:r.state)||void 0===o?void 0:o.scrollOffset),gt.scrollOffsetInitial!==n?(gt.scrollOffsetFinal=n,gt.animationStartTime=performance.now(),Ft()):B&&B())}),[gt,Ft,B]),jt=a((function(t){var i=t.index;return j(F[i],i,t.style)}),[F,j]),Lt=a((function(t){return zt(F[t],t)}),[F,zt]),xt=a((function(t,i){i===nt&&t===ct||setTimeout((function(){lt(i),ut(t),J(t,i)}),0)}),[nt,ct,J]),kt=m((function(t){if(H){var i=I(F,yt,bt,t.visibleStartIndex,t.visibleStopIndex,dt,It.current);H(i)}}),{wait:Z,trailing:!0},[H,F,yt,bt,dt]);return s((function(){if(V&&mt!==V){var t=S(F,yt,bt,dt),i=yt[V];t&&i&&Rt(i)}}),[mt,V,Rt,yt,F,bt,dt]),s((function(){ht.current&&ht.current.resetAfterIndex(0)}),[yt]),s((function(){if(Q){var t=S(F,yt,bt,dt);pt.current!==t&&(pt.current=t,Q(t))}}),[Q,F,yt,dt,bt]),e.createElement("div",{ref:Tt,className:i(z.virtualizedListWrapper,y),id:C,role:$,"aria-label":tt,"data-testid":et||O(g.VIRTUALIZED_LIST,C),style:it},e.createElement(f,null,(function(t){var i=t.height,r=t.width;return xt(r,i),e.createElement(u,{ref:Ot,height:i,width:r,itemCount:F.length,itemSize:Lt,onScroll:wt,layout:A,overscanCount:N,onItemsRendered:kt,className:Y},jt)})))}));export{b as default};
2
2
  //# sourceMappingURL=VirtualizedList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedList.js","sources":["../../../../../src/components/VirtualizedList/VirtualizedList.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport React, {\n type CSSProperties,\n type ForwardedRef,\n forwardRef,\n type LegacyRef,\n type ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from \"react\";\nimport { noop as NOOP } from \"es-toolkit\";\nimport {\n type ScrollDirection,\n VariableSizeList as List,\n type ListOnItemsRenderedProps,\n type ListChildComponentProps,\n type VariableSizeList\n} from \"react-window\";\nimport AutoSizer from \"react-virtualized-auto-sizer\";\nimport usePrevious from \"../../hooks/usePrevious\";\nimport useThrottledCallback from \"../../hooks/useThrottledCallback\";\nimport { useMergeRef } from \"@vibe/shared\";\nimport {\n easeInOutQuint,\n getMaxOffset,\n getNormalizedItems,\n getOnItemsRenderedData,\n isLayoutDirectionScrollbarVisible\n} from \"../../services/virtualized-service\";\nimport { getTestId } from \"../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../tests/constants\";\nimport { type VibeComponentProps } from \"../../types\";\nimport styles from \"./VirtualizedList.module.scss\";\nimport {\n type VirtualizedListItem,\n type VirtualizedListLayout,\n type VirtualizedListScrollDirection\n} from \"./VirtualizedList.types\";\n\nexport interface VirtualizedListProps extends VibeComponentProps {\n /**\n * Class name applied to the scrollable container.\n */\n scrollableClassName?: string;\n /**\n * The orientation of the list.\n */\n layout?: VirtualizedListLayout;\n /**\n * The list of items to be rendered.\n */\n items: VirtualizedListItem[];\n /**\n * Function to render each item in the list.\n */\n itemRenderer: (item: VirtualizedListItem, index: number, style: CSSProperties) => ReactElement | JSX.Element;\n /**\n * Function to get the size (height/width) of each item, based on layout.\n */\n getItemSize?: (item: VirtualizedListItem, index: number) => number;\n /**\n * Function to get the unique ID of an item.\n */\n getItemId?: (item: VirtualizedListItem, index: number) => string;\n /**\n * Callback fired when the scroll animation is finished.\n */\n onScrollToFinished?: () => void;\n /**\n * Number of items to render above and below the visible portion.\n */\n overscanCount?: number;\n /**\n * The duration of the scroll animation in milliseconds.\n */\n scrollDuration?: number;\n /**\n * Callback fired when items are rendered.\n */\n onItemsRendered?: ({\n firstItemId,\n secondItemId,\n lastItemId,\n centerItemId,\n firstItemOffsetEnd,\n currentOffsetTop\n }: {\n firstItemId: string;\n secondItemId: string;\n lastItemId: string;\n centerItemId: string;\n firstItemOffsetEnd: number;\n currentOffsetTop: number;\n }) => void;\n /**\n * The delay (in ms) for throttling the `onItemsRendered` callback.\n */\n onItemsRenderedThrottleMs?: number;\n /**\n * Callback fired when the list size changes.\n */\n onSizeUpdate?: (width: number, height: number) => void;\n /**\n * Callback fired when the vertical or horizontal scrollbar visibility changes.\n */\n onLayoutDirectionScrollbarVisibilityChange?: (value: boolean) => void;\n /**\n * The ARIA role attribute applied to the list.\n */\n role?: string;\n /**\n * The ARIA label for the list.\n */\n \"aria-label\"?: string;\n /**\n * Custom inline styles applied to the list.\n */\n style?: CSSProperties;\n /**\n * The ID of the item to scroll to.\n */\n scrollToId?: string;\n /**\n * Reference to the virtualized list component.\n */\n virtualListRef?: ForwardedRef<HTMLElement>;\n /**\n * Callback fired when the list is scrolled.\n */\n onScroll?: (\n horizontalScrollDirection: VirtualizedListScrollDirection,\n scrollTop: number,\n scrollUpdateWasRequested: boolean\n ) => void;\n}\n\nconst VirtualizedList = forwardRef(\n (\n {\n className,\n id,\n items = [],\n itemRenderer = (item: VirtualizedListItem, _index: number, _style: CSSProperties) => item as ReactElement,\n getItemSize = (item: VirtualizedListItem, _index: number) => item.height,\n layout = \"vertical\",\n onScroll,\n overscanCount = 0,\n getItemId = (item: VirtualizedListItem, _index: number) => item.id,\n scrollToId,\n scrollDuration = 200,\n onScrollToFinished = NOOP,\n onItemsRendered,\n onItemsRenderedThrottleMs = 200,\n onSizeUpdate = NOOP,\n onLayoutDirectionScrollbarVisibilityChange = null,\n virtualListRef,\n scrollableClassName,\n role,\n \"aria-label\": ariaLabel,\n style,\n \"data-testid\": dataTestId\n }: VirtualizedListProps,\n ref: React.ForwardedRef<HTMLElement>\n ) => {\n // states\n const [listHeight, setListHeight] = useState(0);\n const [listWidth, setListWidth] = useState(0);\n\n const isVerticalList = layout !== \"horizontal\";\n const listSizeByLayout = useMemo(() => {\n return isVerticalList ? listHeight : listWidth;\n }, [isVerticalList, listHeight, listWidth]);\n\n // prevs\n const prevScrollToId = usePrevious(scrollToId);\n\n // Refs\n const componentRef = useRef(null);\n const isVerticalScrollbarVisibleRef = useRef(null);\n const listRef = useRef(null);\n const scrollTopRef = useRef(0);\n const animationDataRef = useRef({\n initialized: false,\n scrollOffsetInitial: 0,\n scrollOffsetFinal: 0,\n animationStartTime: 0\n });\n const mergedRef = useMergeRef(ref, componentRef);\n const mergedListRef = useMergeRef(virtualListRef, listRef);\n\n const animationData = animationDataRef.current;\n if (!animationData.initialized) {\n animationData.initialized = true;\n animationData.scrollOffsetInitial = 0;\n animationData.scrollOffsetFinal = 0;\n animationData.animationStartTime = 0;\n }\n\n // Callbacks\n const sizeGetter = useCallback(\n (item: VirtualizedListItem, index: number) => {\n const height = getItemSize(item, index);\n if (height === undefined) {\n console.error(\"Couldn't get height for item: \", item);\n }\n return height;\n },\n [getItemSize]\n );\n\n const idGetter = useCallback(\n (item: VirtualizedListItem, index: number) => {\n const itemId = getItemId(item, index);\n if (itemId === undefined) {\n console.error(\"Couldn't get id for item: \", item);\n }\n return itemId;\n },\n [getItemId]\n );\n\n // Memos\n // Creates object of itemId => { item, index, size, offsetTop}\n const normalizedItems = useMemo(() => {\n return getNormalizedItems(items, idGetter, sizeGetter);\n }, [items, idGetter, sizeGetter]);\n\n const maxListOffset = useMemo(() => {\n return getMaxOffset(listSizeByLayout, normalizedItems);\n }, [listSizeByLayout, normalizedItems]);\n\n // Callbacks\n const onScrollCB = useCallback(\n ({\n scrollDirection,\n scrollOffset,\n scrollUpdateWasRequested\n }: {\n scrollDirection: ScrollDirection;\n scrollOffset: number;\n scrollUpdateWasRequested: boolean;\n }) => {\n scrollTopRef.current = scrollOffset;\n if (!scrollUpdateWasRequested) {\n animationData.scrollOffsetInitial = scrollOffset;\n }\n onScroll && onScroll(scrollDirection, scrollOffset, scrollUpdateWasRequested);\n },\n [onScroll, scrollTopRef, animationData]\n );\n\n const animateScroll = useCallback(() => {\n requestAnimationFrame(() => {\n const now = performance.now();\n const ellapsed = now - animationData.animationStartTime;\n const scrollDelta = animationData.scrollOffsetFinal - animationData.scrollOffsetInitial;\n const easedTime = easeInOutQuint(Math.min(1, ellapsed / scrollDuration));\n const scrollOffset = animationData.scrollOffsetInitial + scrollDelta * easedTime;\n const finalOffsetValue = Math.min(maxListOffset, scrollOffset);\n scrollTopRef.current = finalOffsetValue;\n listRef.current?.scrollTo(finalOffsetValue);\n\n if (ellapsed < scrollDuration) {\n animateScroll();\n } else {\n animationData.animationStartTime = undefined;\n onScrollToFinished && onScrollToFinished();\n }\n });\n }, [scrollDuration, animationData, listRef, maxListOffset, onScrollToFinished]);\n\n const startScrollAnimation = useCallback(\n (item: VirtualizedListItem) => {\n const { offsetTop } = item;\n\n if (animationData.animationStartTime) {\n // animation already in progress\n animationData.scrollOffsetFinal = offsetTop;\n return;\n }\n\n // Update the initial scroll offset with the current scroll position for react 18 batching behavior\n if (listRef.current?.state?.scrollOffset !== null) {\n animationData.scrollOffsetInitial = listRef.current?.state?.scrollOffset;\n }\n\n if (animationData.scrollOffsetInitial === offsetTop) {\n // offset already equals to item offset\n onScrollToFinished && onScrollToFinished();\n return;\n }\n\n animationData.scrollOffsetFinal = offsetTop;\n animationData.animationStartTime = performance.now();\n animateScroll();\n },\n [animationData, animateScroll, onScrollToFinished]\n );\n\n const rowRenderer = useCallback(\n ({ index, style }: { index: number; style: CSSProperties }) => {\n const item = items[index];\n return itemRenderer(item, index, style);\n },\n [items, itemRenderer]\n );\n\n const calcItemSize = useCallback(\n (index: number) => {\n const item = items[index];\n return sizeGetter(item, index);\n },\n [items, sizeGetter]\n );\n\n const updateListSize = useCallback(\n (width: number, height: number) => {\n if (height !== listHeight || width !== listWidth) {\n setTimeout(() => {\n setListHeight(height);\n setListWidth(width);\n onSizeUpdate(width, height);\n }, 0);\n }\n },\n [listHeight, listWidth, onSizeUpdate]\n );\n\n const onItemsRenderedCB = useThrottledCallback(\n ({ visibleStartIndex, visibleStopIndex }: ListOnItemsRenderedProps) => {\n if (!onItemsRendered) return;\n const data = getOnItemsRenderedData(\n items,\n normalizedItems,\n idGetter,\n visibleStartIndex,\n visibleStopIndex,\n listSizeByLayout,\n scrollTopRef.current\n );\n onItemsRendered(data);\n },\n { wait: onItemsRenderedThrottleMs, trailing: true },\n [onItemsRendered, items, normalizedItems, idGetter, listSizeByLayout]\n );\n\n // Effects\n useEffect(() => {\n // scroll to specific item\n if (scrollToId && prevScrollToId !== scrollToId) {\n const hasScrollbar = isLayoutDirectionScrollbarVisible(items, normalizedItems, idGetter, listSizeByLayout);\n const item = normalizedItems[scrollToId as keyof typeof normalizedItems];\n hasScrollbar && item && startScrollAnimation(item);\n }\n }, [prevScrollToId, scrollToId, startScrollAnimation, normalizedItems, items, idGetter, listSizeByLayout]);\n\n useEffect(() => {\n // recalculate row heights\n if (listRef.current) {\n listRef.current.resetAfterIndex(0);\n }\n }, [normalizedItems]);\n\n useEffect(() => {\n // update vertical scrollbar visibility\n if (onLayoutDirectionScrollbarVisibilityChange) {\n const isVisible = isLayoutDirectionScrollbarVisible(items, normalizedItems, idGetter, listSizeByLayout);\n if (isVerticalScrollbarVisibleRef.current !== isVisible) {\n isVerticalScrollbarVisibleRef.current = isVisible;\n onLayoutDirectionScrollbarVisibilityChange(isVisible);\n }\n }\n }, [onLayoutDirectionScrollbarVisibilityChange, items, normalizedItems, listSizeByLayout, idGetter]);\n\n return (\n <div\n ref={mergedRef}\n className={cx(styles.virtualizedListWrapper, className)}\n id={id}\n role={role}\n aria-label={ariaLabel}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.VIRTUALIZED_LIST, id)}\n style={style}\n >\n <AutoSizer>\n {({ height, width }: { height: number; width: number }) => {\n updateListSize(width, height);\n return (\n <List\n ref={mergedListRef as unknown as LegacyRef<VariableSizeList<unknown>>}\n height={height}\n width={width}\n itemCount={items.length}\n itemSize={calcItemSize}\n onScroll={onScrollCB}\n layout={layout}\n overscanCount={overscanCount}\n onItemsRendered={onItemsRenderedCB}\n className={scrollableClassName}\n >\n {rowRenderer as React.ComponentType<ListChildComponentProps>}\n </List>\n );\n }}\n </AutoSizer>\n </div>\n );\n }\n);\n\nexport default VirtualizedList;\n"],"names":["VirtualizedList","forwardRef","_ref","ref","className","id","_ref$items","items","_ref$itemRenderer","itemRenderer","item","_index","_style","_ref$getItemSize","getItemSize","height","_ref$layout","layout","onScroll","_ref$overscanCount","overscanCount","_ref$getItemId","getItemId","scrollToId","_ref$scrollDuration","scrollDuration","_ref$onScrollToFinish","onScrollToFinished","NOOP","onItemsRendered","_ref$onItemsRenderedT","onItemsRenderedThrottleMs","_ref$onSizeUpdate","onSizeUpdate","_ref$onLayoutDirectio","onLayoutDirectionScrollbarVisibilityChange","virtualListRef","scrollableClassName","role","ariaLabel","style","dataTestId","_useState","useState","_useState2","_slicedToArray","listHeight","setListHeight","_useState3","_useState4","listWidth","setListWidth","isVerticalList","listSizeByLayout","useMemo","prevScrollToId","usePrevious","componentRef","useRef","isVerticalScrollbarVisibleRef","listRef","scrollTopRef","animationDataRef","initialized","scrollOffsetInitial","scrollOffsetFinal","animationStartTime","mergedRef","useMergeRef","mergedListRef","animationData","current","sizeGetter","useCallback","index","undefined","console","error","idGetter","itemId","normalizedItems","getNormalizedItems","maxListOffset","getMaxOffset","onScrollCB","_ref2","scrollDirection","scrollOffset","scrollUpdateWasRequested","animateScroll","requestAnimationFrame","ellapsed","performance","now","scrollDelta","easedTime","easeInOutQuint","Math","min","finalOffsetValue","_a","scrollTo","startScrollAnimation","offsetTop","_b","state","_d","_c","rowRenderer","_ref3","calcItemSize","updateListSize","width","setTimeout","onItemsRenderedCB","useThrottledCallback","_ref4","data","getOnItemsRenderedData","visibleStartIndex","visibleStopIndex","wait","trailing","useEffect","hasScrollbar","isLayoutDirectionScrollbarVisible","resetAfterIndex","isVisible","React","createElement","cx","styles","virtualizedListWrapper","getTestId","ComponentDefaultTestId","VIRTUALIZED_LIST","AutoSizer","_ref5","List","itemCount","length","itemSize"],"mappings":"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"}
1
+ {"version":3,"file":"VirtualizedList.js","sources":["../../../../../src/components/VirtualizedList/VirtualizedList.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport React, {\n type CSSProperties,\n type ForwardedRef,\n forwardRef,\n type LegacyRef,\n type ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from \"react\";\nimport { noop as NOOP } from \"es-toolkit\";\nimport {\n type ScrollDirection,\n VariableSizeList as List,\n type ListOnItemsRenderedProps,\n type ListChildComponentProps,\n type VariableSizeList\n} from \"react-window\";\nimport AutoSizer from \"react-virtualized-auto-sizer\";\nimport { usePrevious } from \"@vibe/hooks\";\nimport useThrottledCallback from \"../../hooks/useThrottledCallback\";\nimport { useMergeRef } from \"@vibe/shared\";\nimport {\n easeInOutQuint,\n getMaxOffset,\n getNormalizedItems,\n getOnItemsRenderedData,\n isLayoutDirectionScrollbarVisible\n} from \"../../services/virtualized-service\";\nimport { getTestId } from \"../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../tests/constants\";\nimport { type VibeComponentProps } from \"../../types\";\nimport styles from \"./VirtualizedList.module.scss\";\nimport {\n type VirtualizedListItem,\n type VirtualizedListLayout,\n type VirtualizedListScrollDirection\n} from \"./VirtualizedList.types\";\n\nexport interface VirtualizedListProps extends VibeComponentProps {\n /**\n * Class name applied to the scrollable container.\n */\n scrollableClassName?: string;\n /**\n * The orientation of the list.\n */\n layout?: VirtualizedListLayout;\n /**\n * The list of items to be rendered.\n */\n items: VirtualizedListItem[];\n /**\n * Function to render each item in the list.\n */\n itemRenderer: (item: VirtualizedListItem, index: number, style: CSSProperties) => ReactElement | JSX.Element;\n /**\n * Function to get the size (height/width) of each item, based on layout.\n */\n getItemSize?: (item: VirtualizedListItem, index: number) => number;\n /**\n * Function to get the unique ID of an item.\n */\n getItemId?: (item: VirtualizedListItem, index: number) => string;\n /**\n * Callback fired when the scroll animation is finished.\n */\n onScrollToFinished?: () => void;\n /**\n * Number of items to render above and below the visible portion.\n */\n overscanCount?: number;\n /**\n * The duration of the scroll animation in milliseconds.\n */\n scrollDuration?: number;\n /**\n * Callback fired when items are rendered.\n */\n onItemsRendered?: ({\n firstItemId,\n secondItemId,\n lastItemId,\n centerItemId,\n firstItemOffsetEnd,\n currentOffsetTop\n }: {\n firstItemId: string;\n secondItemId: string;\n lastItemId: string;\n centerItemId: string;\n firstItemOffsetEnd: number;\n currentOffsetTop: number;\n }) => void;\n /**\n * The delay (in ms) for throttling the `onItemsRendered` callback.\n */\n onItemsRenderedThrottleMs?: number;\n /**\n * Callback fired when the list size changes.\n */\n onSizeUpdate?: (width: number, height: number) => void;\n /**\n * Callback fired when the vertical or horizontal scrollbar visibility changes.\n */\n onLayoutDirectionScrollbarVisibilityChange?: (value: boolean) => void;\n /**\n * The ARIA role attribute applied to the list.\n */\n role?: string;\n /**\n * The ARIA label for the list.\n */\n \"aria-label\"?: string;\n /**\n * Custom inline styles applied to the list.\n */\n style?: CSSProperties;\n /**\n * The ID of the item to scroll to.\n */\n scrollToId?: string;\n /**\n * Reference to the virtualized list component.\n */\n virtualListRef?: ForwardedRef<HTMLElement>;\n /**\n * Callback fired when the list is scrolled.\n */\n onScroll?: (\n horizontalScrollDirection: VirtualizedListScrollDirection,\n scrollTop: number,\n scrollUpdateWasRequested: boolean\n ) => void;\n}\n\nconst VirtualizedList = forwardRef(\n (\n {\n className,\n id,\n items = [],\n itemRenderer = (item: VirtualizedListItem, _index: number, _style: CSSProperties) => item as ReactElement,\n getItemSize = (item: VirtualizedListItem, _index: number) => item.height,\n layout = \"vertical\",\n onScroll,\n overscanCount = 0,\n getItemId = (item: VirtualizedListItem, _index: number) => item.id,\n scrollToId,\n scrollDuration = 200,\n onScrollToFinished = NOOP,\n onItemsRendered,\n onItemsRenderedThrottleMs = 200,\n onSizeUpdate = NOOP,\n onLayoutDirectionScrollbarVisibilityChange = null,\n virtualListRef,\n scrollableClassName,\n role,\n \"aria-label\": ariaLabel,\n style,\n \"data-testid\": dataTestId\n }: VirtualizedListProps,\n ref: React.ForwardedRef<HTMLElement>\n ) => {\n // states\n const [listHeight, setListHeight] = useState(0);\n const [listWidth, setListWidth] = useState(0);\n\n const isVerticalList = layout !== \"horizontal\";\n const listSizeByLayout = useMemo(() => {\n return isVerticalList ? listHeight : listWidth;\n }, [isVerticalList, listHeight, listWidth]);\n\n // prevs\n const prevScrollToId = usePrevious(scrollToId);\n\n // Refs\n const componentRef = useRef(null);\n const isVerticalScrollbarVisibleRef = useRef(null);\n const listRef = useRef(null);\n const scrollTopRef = useRef(0);\n const animationDataRef = useRef({\n initialized: false,\n scrollOffsetInitial: 0,\n scrollOffsetFinal: 0,\n animationStartTime: 0\n });\n const mergedRef = useMergeRef(ref, componentRef);\n const mergedListRef = useMergeRef(virtualListRef, listRef);\n\n const animationData = animationDataRef.current;\n if (!animationData.initialized) {\n animationData.initialized = true;\n animationData.scrollOffsetInitial = 0;\n animationData.scrollOffsetFinal = 0;\n animationData.animationStartTime = 0;\n }\n\n // Callbacks\n const sizeGetter = useCallback(\n (item: VirtualizedListItem, index: number) => {\n const height = getItemSize(item, index);\n if (height === undefined) {\n console.error(\"Couldn't get height for item: \", item);\n }\n return height;\n },\n [getItemSize]\n );\n\n const idGetter = useCallback(\n (item: VirtualizedListItem, index: number) => {\n const itemId = getItemId(item, index);\n if (itemId === undefined) {\n console.error(\"Couldn't get id for item: \", item);\n }\n return itemId;\n },\n [getItemId]\n );\n\n // Memos\n // Creates object of itemId => { item, index, size, offsetTop}\n const normalizedItems = useMemo(() => {\n return getNormalizedItems(items, idGetter, sizeGetter);\n }, [items, idGetter, sizeGetter]);\n\n const maxListOffset = useMemo(() => {\n return getMaxOffset(listSizeByLayout, normalizedItems);\n }, [listSizeByLayout, normalizedItems]);\n\n // Callbacks\n const onScrollCB = useCallback(\n ({\n scrollDirection,\n scrollOffset,\n scrollUpdateWasRequested\n }: {\n scrollDirection: ScrollDirection;\n scrollOffset: number;\n scrollUpdateWasRequested: boolean;\n }) => {\n scrollTopRef.current = scrollOffset;\n if (!scrollUpdateWasRequested) {\n animationData.scrollOffsetInitial = scrollOffset;\n }\n onScroll && onScroll(scrollDirection, scrollOffset, scrollUpdateWasRequested);\n },\n [onScroll, scrollTopRef, animationData]\n );\n\n const animateScroll = useCallback(() => {\n requestAnimationFrame(() => {\n const now = performance.now();\n const ellapsed = now - animationData.animationStartTime;\n const scrollDelta = animationData.scrollOffsetFinal - animationData.scrollOffsetInitial;\n const easedTime = easeInOutQuint(Math.min(1, ellapsed / scrollDuration));\n const scrollOffset = animationData.scrollOffsetInitial + scrollDelta * easedTime;\n const finalOffsetValue = Math.min(maxListOffset, scrollOffset);\n scrollTopRef.current = finalOffsetValue;\n listRef.current?.scrollTo(finalOffsetValue);\n\n if (ellapsed < scrollDuration) {\n animateScroll();\n } else {\n animationData.animationStartTime = undefined;\n onScrollToFinished && onScrollToFinished();\n }\n });\n }, [scrollDuration, animationData, listRef, maxListOffset, onScrollToFinished]);\n\n const startScrollAnimation = useCallback(\n (item: VirtualizedListItem) => {\n const { offsetTop } = item;\n\n if (animationData.animationStartTime) {\n // animation already in progress\n animationData.scrollOffsetFinal = offsetTop;\n return;\n }\n\n // Update the initial scroll offset with the current scroll position for react 18 batching behavior\n if (listRef.current?.state?.scrollOffset !== null) {\n animationData.scrollOffsetInitial = listRef.current?.state?.scrollOffset;\n }\n\n if (animationData.scrollOffsetInitial === offsetTop) {\n // offset already equals to item offset\n onScrollToFinished && onScrollToFinished();\n return;\n }\n\n animationData.scrollOffsetFinal = offsetTop;\n animationData.animationStartTime = performance.now();\n animateScroll();\n },\n [animationData, animateScroll, onScrollToFinished]\n );\n\n const rowRenderer = useCallback(\n ({ index, style }: { index: number; style: CSSProperties }) => {\n const item = items[index];\n return itemRenderer(item, index, style);\n },\n [items, itemRenderer]\n );\n\n const calcItemSize = useCallback(\n (index: number) => {\n const item = items[index];\n return sizeGetter(item, index);\n },\n [items, sizeGetter]\n );\n\n const updateListSize = useCallback(\n (width: number, height: number) => {\n if (height !== listHeight || width !== listWidth) {\n setTimeout(() => {\n setListHeight(height);\n setListWidth(width);\n onSizeUpdate(width, height);\n }, 0);\n }\n },\n [listHeight, listWidth, onSizeUpdate]\n );\n\n const onItemsRenderedCB = useThrottledCallback(\n ({ visibleStartIndex, visibleStopIndex }: ListOnItemsRenderedProps) => {\n if (!onItemsRendered) return;\n const data = getOnItemsRenderedData(\n items,\n normalizedItems,\n idGetter,\n visibleStartIndex,\n visibleStopIndex,\n listSizeByLayout,\n scrollTopRef.current\n );\n onItemsRendered(data);\n },\n { wait: onItemsRenderedThrottleMs, trailing: true },\n [onItemsRendered, items, normalizedItems, idGetter, listSizeByLayout]\n );\n\n // Effects\n useEffect(() => {\n // scroll to specific item\n if (scrollToId && prevScrollToId !== scrollToId) {\n const hasScrollbar = isLayoutDirectionScrollbarVisible(items, normalizedItems, idGetter, listSizeByLayout);\n const item = normalizedItems[scrollToId as keyof typeof normalizedItems];\n hasScrollbar && item && startScrollAnimation(item);\n }\n }, [prevScrollToId, scrollToId, startScrollAnimation, normalizedItems, items, idGetter, listSizeByLayout]);\n\n useEffect(() => {\n // recalculate row heights\n if (listRef.current) {\n listRef.current.resetAfterIndex(0);\n }\n }, [normalizedItems]);\n\n useEffect(() => {\n // update vertical scrollbar visibility\n if (onLayoutDirectionScrollbarVisibilityChange) {\n const isVisible = isLayoutDirectionScrollbarVisible(items, normalizedItems, idGetter, listSizeByLayout);\n if (isVerticalScrollbarVisibleRef.current !== isVisible) {\n isVerticalScrollbarVisibleRef.current = isVisible;\n onLayoutDirectionScrollbarVisibilityChange(isVisible);\n }\n }\n }, [onLayoutDirectionScrollbarVisibilityChange, items, normalizedItems, listSizeByLayout, idGetter]);\n\n return (\n <div\n ref={mergedRef}\n className={cx(styles.virtualizedListWrapper, className)}\n id={id}\n role={role}\n aria-label={ariaLabel}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.VIRTUALIZED_LIST, id)}\n style={style}\n >\n <AutoSizer>\n {({ height, width }: { height: number; width: number }) => {\n updateListSize(width, height);\n return (\n <List\n ref={mergedListRef as unknown as LegacyRef<VariableSizeList<unknown>>}\n height={height}\n width={width}\n itemCount={items.length}\n itemSize={calcItemSize}\n onScroll={onScrollCB}\n layout={layout}\n overscanCount={overscanCount}\n onItemsRendered={onItemsRenderedCB}\n className={scrollableClassName}\n >\n {rowRenderer as React.ComponentType<ListChildComponentProps>}\n </List>\n );\n }}\n </AutoSizer>\n </div>\n );\n }\n);\n\nexport default VirtualizedList;\n"],"names":["VirtualizedList","forwardRef","_ref","ref","className","id","_ref$items","items","_ref$itemRenderer","itemRenderer","item","_index","_style","_ref$getItemSize","getItemSize","height","_ref$layout","layout","onScroll","_ref$overscanCount","overscanCount","_ref$getItemId","getItemId","scrollToId","_ref$scrollDuration","scrollDuration","_ref$onScrollToFinish","onScrollToFinished","NOOP","onItemsRendered","_ref$onItemsRenderedT","onItemsRenderedThrottleMs","_ref$onSizeUpdate","onSizeUpdate","_ref$onLayoutDirectio","onLayoutDirectionScrollbarVisibilityChange","virtualListRef","scrollableClassName","role","ariaLabel","style","dataTestId","_useState","useState","_useState2","_slicedToArray","listHeight","setListHeight","_useState3","_useState4","listWidth","setListWidth","isVerticalList","listSizeByLayout","useMemo","prevScrollToId","usePrevious","componentRef","useRef","isVerticalScrollbarVisibleRef","listRef","scrollTopRef","animationDataRef","initialized","scrollOffsetInitial","scrollOffsetFinal","animationStartTime","mergedRef","useMergeRef","mergedListRef","animationData","current","sizeGetter","useCallback","index","undefined","console","error","idGetter","itemId","normalizedItems","getNormalizedItems","maxListOffset","getMaxOffset","onScrollCB","_ref2","scrollDirection","scrollOffset","scrollUpdateWasRequested","animateScroll","requestAnimationFrame","ellapsed","performance","now","scrollDelta","easedTime","easeInOutQuint","Math","min","finalOffsetValue","_a","scrollTo","startScrollAnimation","offsetTop","_b","state","_d","_c","rowRenderer","_ref3","calcItemSize","updateListSize","width","setTimeout","onItemsRenderedCB","useThrottledCallback","_ref4","data","getOnItemsRenderedData","visibleStartIndex","visibleStopIndex","wait","trailing","useEffect","hasScrollbar","isLayoutDirectionScrollbarVisible","resetAfterIndex","isVisible","React","createElement","cx","styles","virtualizedListWrapper","getTestId","ComponentDefaultTestId","VIRTUALIZED_LIST","AutoSizer","_ref5","List","itemCount","length","itemSize"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e={virtualizedListWrapper:"virtualizedListWrapper"};!function(e){const t="s_id-9250e4cf6c59_4_5_8";if("undefined"!=typeof document){const i=document.head||document.getElementsByTagName("head")[0];if(i.querySelector("#"+t))return;const n=document.createElement("style");n.id=t,i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.virtualizedListWrapper {\n height: 100%;\n width: 100%;\n}");export{e as default};
1
+ var e={virtualizedListWrapper:"virtualizedListWrapper"};!function(e){const t="s_id-9250e4cf6c59_4_5_9";if("undefined"!=typeof document){const i=document.head||document.getElementsByTagName("head")[0];if(i.querySelector("#"+t))return;const n=document.createElement("style");n.id=t,i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.virtualizedListWrapper {\n height: 100%;\n width: 100%;\n}");export{e as default};
2
2
  //# sourceMappingURL=VirtualizedList.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={list:"list"};!function(e){const t="s_id-39e4d9ed645a_4_5_8";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const d=document.createElement("style");d.id=t,n.firstChild?n.insertBefore(d,n.firstChild):n.appendChild(d),d.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".list {\n margin: 0;\n padding: 0;\n list-style: none;\n}");export{e as default};
1
+ var e={list:"list"};!function(e){const t="s_id-39e4d9ed645a_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const d=document.createElement("style");d.id=t,n.firstChild?n.insertBefore(d,n.firstChild):n.appendChild(d),d.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".list {\n margin: 0;\n padding: 0;\n list-style: none;\n}");export{e as default};
2
2
  //# sourceMappingURL=List.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={listTitle:"listTitle",small:"small",medium:"medium",large:"large",sticky:"sticky"};!function(e){const n="s_id-7bd0f1d1374d_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.listTitle {\n -webkit-font-smoothing: var(--font-smoothing-webkit);\n -moz-osx-font-smoothing: var(--font-smoothing-moz);\n border-radius: var(--border-radius-small);\n}\n.small {\n padding: var(--space-16) var(--space-8) var(--space-8);\n}\n.medium {\n padding: var(--space-16) 12px var(--space-8);\n}\n.large {\n padding: var(--space-16) 12px var(--space-8);\n}\n.sticky {\n position: sticky;\n inset-block-start: 0;\n background-color: var(--primary-background-color);\n z-index: 1;\n}");export{e as default};
1
+ var e={listTitle:"listTitle",small:"small",medium:"medium",large:"large",sticky:"sticky"};!function(e){const n="s_id-7bd0f1d1374d_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.listTitle {\n -webkit-font-smoothing: var(--font-smoothing-webkit);\n -moz-osx-font-smoothing: var(--font-smoothing-moz);\n border-radius: var(--border-radius-small);\n}\n.small {\n padding: var(--space-16) var(--space-8) var(--space-8);\n}\n.medium {\n padding: var(--space-16) 12px var(--space-8);\n}\n.large {\n padding: var(--space-16) 12px var(--space-8);\n}\n.sticky {\n position: sticky;\n inset-block-start: 0;\n background-color: var(--primary-background-color);\n z-index: 1;\n}");export{e as default};
2
2
  //# sourceMappingURL=ListTitle.module.scss.js.map
@@ -1,2 +1,2 @@
1
- import{useCallback as e,useMemo as t,useEffect as n,useRef as s}from"react";import{useKeyEvent as i,useEventListener as o}from"@vibe/shared";import u from"../usePrevious/index.js";import{getNextSelectableIndex as c,getPreviousSelectableIndex as r}from"./useActiveDescendantListFocusHelpers.js";import l from"../useListenFocusTriggers/index.js";var a;!function(e){e.UP="ArrowUp",e.DOWN="ArrowDown",e.RIGHT="ArrowRight",e.LEFT="ArrowLeft"}(a||(a={}));var m="Enter";function I(t){var n=t.itemsCount,s=t.focusedElementRef,o=t.visualFocusItemIndex,u=t.setVisualFocusItemIndex,l=t.isHorizontalList,m=t.isItemSelectable,I=t.listenerOptions,d=t.triggeredByKeyboard,f=l?a.RIGHT:a.DOWN,v=l?a.LEFT:a.UP,F=e((function(e){var t;document.activeElement===s.current&&(!d.current&&(d.current=!0,o>-1)||(e===f?t=c({isItemSelectable:m,visualFocusItemIndex:o,itemsCount:n}):e===v&&(t=r({isItemSelectable:m,visualFocusItemIndex:o,itemsCount:n})),t>-1&&t!==o&&u(t)))}),[s,d,f,v,o,u,m,n]),b=e((function(){F(v)}),[v,F]),x=e((function(){F(f)}),[f,F]);i(Object.assign({keys:[f],callback:x},I)),i(Object.assign({keys:[v],callback:b},I))}function d(n){var s=n.visualFocusItemIndex,o=n.focusedElementRef,u=n.itemsCount,c=n.setVisualFocusItemIndex,r=n.onItemClick,l=n.isItemSelectable,a=n.listenerOptions,I=void 0===a?void 0:a,d=n.isIgnoreSpaceAsItemSelection,f=void 0!==d&&d,v=t((function(){return f?[m]:[m," "]}),[f]),F=e((function(e,t){r&&(t>=0&&u>t)&&l(t)&&(s!==t&&c(t),r(e,t))}),[u,r,l,s,c]),b=e((function(e){o.current.contains(document.activeElement)&&F(e,s)}),[F,o,s]);i(Object.assign({keys:v,callback:b},I))}function f(t){var s=t.focusedElementRef,i=t.visualFocusItemIndex,c=t.setVisualFocusItemIndex,r=u(s),l=e((function(){-1!==i&&c(-1)}),[c,i]);n((function(){null===(null==s?void 0:s.current)&&null!==(null==r?void 0:r.current)&&l()}),[s.current,r,l]),o({eventName:"blur",ref:s,callback:l})}function v(t){var n=t.focusedElementRef,i=t.isItemSelectable,o=t.visualFocusItemIndex,u=t.setVisualFocusItemIndex,r=t.itemsCount,a=t.defaultVisualFocusItemIndex,m=void 0===a?-1:a,I=s(!1),d=e((function(){var e;(I.current=!0,o!==m)&&(e=i(m)?m:c({isItemSelectable:i,itemsCount:r,visualFocusItemIndex:m}),u(e))}),[m,i,r,u,I,o]),f=e((function(){I.current=!1}),[I]);return l({ref:n,onFocusByKeyboard:d,onFocusByMouse:f}),{triggeredByKeyboard:I}}function F(e){var t=e.visualFocusItemIndex,s=e.itemsIds,i=e.isItemSelectable,o=e.setVisualFocusItemIndex,r=u(s);n((function(){var e;void 0!==r&&r!==s&&void 0!==r&&-1!==t?e=s.indexOf(r[t]):e=t;if(e!==t)if(i(e))o(e);else{var n=c({isItemSelectable:i,visualFocusItemIndex:e,itemsCount:s.length});o(n)}}),[t,s,i,o,r])}export{f as useCleanVisualFocusOnBlur,F as useKeepFocusOnItemWhenListChanged,v as useSetDefaultItemOnFocusEvent,I as useSupportArrowsKeyboardNavigation,d as useSupportPressItemKeyboardNavigation};
1
+ import{useCallback as e,useMemo as t,useEffect as n,useRef as s}from"react";import{useKeyEvent as i,useEventListener as o}from"@vibe/shared";import{usePrevious as u}from"@vibe/hooks";import{getNextSelectableIndex as c,getPreviousSelectableIndex as r}from"./useActiveDescendantListFocusHelpers.js";import l from"../useListenFocusTriggers/index.js";var a;!function(e){e.UP="ArrowUp",e.DOWN="ArrowDown",e.RIGHT="ArrowRight",e.LEFT="ArrowLeft"}(a||(a={}));var m="Enter";function I(t){var n=t.itemsCount,s=t.focusedElementRef,o=t.visualFocusItemIndex,u=t.setVisualFocusItemIndex,l=t.isHorizontalList,m=t.isItemSelectable,I=t.listenerOptions,d=t.triggeredByKeyboard,f=l?a.RIGHT:a.DOWN,v=l?a.LEFT:a.UP,b=e((function(e){var t;document.activeElement===s.current&&(!d.current&&(d.current=!0,o>-1)||(e===f?t=c({isItemSelectable:m,visualFocusItemIndex:o,itemsCount:n}):e===v&&(t=r({isItemSelectable:m,visualFocusItemIndex:o,itemsCount:n})),t>-1&&t!==o&&u(t)))}),[s,d,f,v,o,u,m,n]),F=e((function(){b(v)}),[v,b]),x=e((function(){b(f)}),[f,b]);i(Object.assign({keys:[f],callback:x},I)),i(Object.assign({keys:[v],callback:F},I))}function d(n){var s=n.visualFocusItemIndex,o=n.focusedElementRef,u=n.itemsCount,c=n.setVisualFocusItemIndex,r=n.onItemClick,l=n.isItemSelectable,a=n.listenerOptions,I=void 0===a?void 0:a,d=n.isIgnoreSpaceAsItemSelection,f=void 0!==d&&d,v=t((function(){return f?[m]:[m," "]}),[f]),b=e((function(e,t){r&&(t>=0&&u>t)&&l(t)&&(s!==t&&c(t),r(e,t))}),[u,r,l,s,c]),F=e((function(e){o.current.contains(document.activeElement)&&b(e,s)}),[b,o,s]);i(Object.assign({keys:v,callback:F},I))}function f(t){var s=t.focusedElementRef,i=t.visualFocusItemIndex,c=t.setVisualFocusItemIndex,r=u(s),l=e((function(){-1!==i&&c(-1)}),[c,i]);n((function(){null===(null==s?void 0:s.current)&&null!==(null==r?void 0:r.current)&&l()}),[s.current,r,l]),o({eventName:"blur",ref:s,callback:l})}function v(t){var n=t.focusedElementRef,i=t.isItemSelectable,o=t.visualFocusItemIndex,u=t.setVisualFocusItemIndex,r=t.itemsCount,a=t.defaultVisualFocusItemIndex,m=void 0===a?-1:a,I=s(!1),d=e((function(){var e;(I.current=!0,o!==m)&&(e=i(m)?m:c({isItemSelectable:i,itemsCount:r,visualFocusItemIndex:m}),u(e))}),[m,i,r,u,I,o]),f=e((function(){I.current=!1}),[I]);return l({ref:n,onFocusByKeyboard:d,onFocusByMouse:f}),{triggeredByKeyboard:I}}function b(e){var t=e.visualFocusItemIndex,s=e.itemsIds,i=e.isItemSelectable,o=e.setVisualFocusItemIndex,r=u(s);n((function(){var e;void 0!==r&&r!==s&&void 0!==r&&-1!==t?e=s.indexOf(r[t]):e=t;if(e!==t)if(i(e))o(e);else{var n=c({isItemSelectable:i,visualFocusItemIndex:e,itemsCount:s.length});o(n)}}),[t,s,i,o,r])}export{f as useCleanVisualFocusOnBlur,b as useKeepFocusOnItemWhenListChanged,v as useSetDefaultItemOnFocusEvent,I as useSupportArrowsKeyboardNavigation,d as useSupportPressItemKeyboardNavigation};
2
2
  //# sourceMappingURL=useActiveDescendantListFocusHooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useActiveDescendantListFocusHooks.js","sources":["../../../../../src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.ts"],"sourcesContent":["import { type MutableRefObject } from \"react\";\nimport type React from \"react\";\nimport { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport useKeyEvent, { type UseKeyEventArgs } from \"../useKeyEvent\";\nimport useEventListener from \"../useEventListener\";\nimport usePrevious from \"../usePrevious\";\nimport { getNextSelectableIndex, getPreviousSelectableIndex } from \"./useActiveDescendantListFocusHelpers\";\nimport useListenFocusTriggers from \"../useListenFocusTriggers\";\n\nenum ArrowDirection {\n UP = \"ArrowUp\",\n DOWN = \"ArrowDown\",\n RIGHT = \"ArrowRight\",\n LEFT = \"ArrowLeft\"\n}\n\nconst ENTER_KEY = \"Enter\";\nconst SPACE_KEY = \" \";\n\nexport function useSupportArrowsKeyboardNavigation({\n itemsCount,\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isHorizontalList,\n isItemSelectable,\n listenerOptions,\n triggeredByKeyboard\n}: {\n itemsCount: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n isHorizontalList: boolean;\n isItemSelectable: (index: number) => boolean;\n triggeredByKeyboard: MutableRefObject<boolean>;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n}) {\n const nextArrow = isHorizontalList ? ArrowDirection.RIGHT : ArrowDirection.DOWN;\n const backArrow = isHorizontalList ? ArrowDirection.LEFT : ArrowDirection.UP;\n\n const onArrowKeyEvent = useCallback(\n (direction: ArrowDirection) => {\n // we desire to change the visual focus item only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (document.activeElement !== focusedElementRef.current) {\n return;\n }\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we will mark future user interactions as trigger by keyboard (until the next mouse interaction)\n // that from now on the interactions are trigger by keyboard (until the next mouse interaction)\n if (!triggeredByKeyboard.current) {\n triggeredByKeyboard.current = true;\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we want only to display the item\n // which right now visually focus without changing it.\n if (visualFocusItemIndex > -1) {\n return;\n }\n }\n\n let newIndex;\n\n // We will change the visual focused item index according to the direction of the pressed arrow\n if (direction === nextArrow) {\n newIndex = getNextSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n } else if (direction === backArrow) {\n newIndex = getPreviousSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n }\n\n if (newIndex > -1 && newIndex !== visualFocusItemIndex) setVisualFocusItemIndex(newIndex);\n },\n [\n focusedElementRef,\n triggeredByKeyboard,\n nextArrow,\n backArrow,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isItemSelectable,\n itemsCount\n ]\n );\n const onArrowBack = useCallback(() => {\n onArrowKeyEvent(backArrow);\n }, [backArrow, onArrowKeyEvent]);\n\n const onArrowNext = useCallback(() => {\n onArrowKeyEvent(nextArrow);\n }, [nextArrow, onArrowKeyEvent]);\n\n useKeyEvent({\n keys: [nextArrow],\n callback: onArrowNext,\n ...listenerOptions\n });\n\n useKeyEvent({\n keys: [backArrow],\n callback: onArrowBack,\n ...listenerOptions\n });\n}\n\nexport function useSupportPressItemKeyboardNavigation({\n visualFocusItemIndex,\n focusedElementRef,\n itemsCount,\n setVisualFocusItemIndex,\n onItemClick,\n isItemSelectable,\n listenerOptions = undefined,\n isIgnoreSpaceAsItemSelection = false\n}: {\n visualFocusItemIndex: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n itemsCount: number;\n setVisualFocusItemIndex: (index: number) => void;\n onItemClick: (event: React.MouseEvent | React.KeyboardEvent, index: number) => void;\n isItemSelectable: (index: number) => boolean;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n isIgnoreSpaceAsItemSelection: boolean;\n}) {\n const pressKeys = useMemo(\n () => (isIgnoreSpaceAsItemSelection ? [ENTER_KEY] : [ENTER_KEY, SPACE_KEY]),\n [isIgnoreSpaceAsItemSelection]\n );\n\n const baseOnClickCallback = useCallback(\n (event: React.KeyboardEvent, itemIndex: number) => {\n const hasValidIndex = itemIndex >= 0 && itemIndex < itemsCount;\n if (!onItemClick || !hasValidIndex || !isItemSelectable(itemIndex)) return;\n if (visualFocusItemIndex !== itemIndex) setVisualFocusItemIndex(itemIndex);\n onItemClick(event, itemIndex);\n },\n [itemsCount, onItemClick, isItemSelectable, visualFocusItemIndex, setVisualFocusItemIndex]\n );\n\n const keyboardOnSelectCallback = useCallback(\n (event: React.KeyboardEvent) => {\n // we desire to change the trigger the active item on click callback only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (focusedElementRef.current.contains(document.activeElement)) {\n baseOnClickCallback(event, visualFocusItemIndex);\n }\n },\n [baseOnClickCallback, focusedElementRef, visualFocusItemIndex]\n );\n\n useKeyEvent({\n keys: pressKeys,\n callback: keyboardOnSelectCallback,\n ...listenerOptions\n });\n}\n\nexport function useCleanVisualFocusOnBlur({\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const previousFocusedElementRef = usePrevious(focusedElementRef);\n\n const onBlurCallback = useCallback(() => {\n if (visualFocusItemIndex !== -1) {\n setVisualFocusItemIndex(-1);\n }\n }, [setVisualFocusItemIndex, visualFocusItemIndex]);\n\n // if element unmount act like element got blur event\n useEffect(() => {\n // if element unmount\n if (focusedElementRef?.current === null && previousFocusedElementRef?.current !== null) {\n onBlurCallback();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focusedElementRef.current, previousFocusedElementRef, onBlurCallback]);\n\n useEventListener({\n eventName: \"blur\",\n ref: focusedElementRef,\n callback: onBlurCallback\n });\n}\n\nexport function useSetDefaultItemOnFocusEvent({\n focusedElementRef,\n isItemSelectable,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n itemsCount,\n defaultVisualFocusItemIndex = -1\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n isItemSelectable: (index: number) => boolean;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n itemsCount: number;\n defaultVisualFocusItemIndex: number;\n}) {\n const triggeredByKeyboard = useRef(false);\n\n const onFocusByKeyboard = useCallback(() => {\n triggeredByKeyboard.current = true;\n if (visualFocusItemIndex !== defaultVisualFocusItemIndex) {\n let newVisualFocusIndex;\n if (isItemSelectable(defaultVisualFocusItemIndex)) {\n newVisualFocusIndex = defaultVisualFocusItemIndex;\n } else {\n newVisualFocusIndex = getNextSelectableIndex({\n isItemSelectable,\n itemsCount,\n visualFocusItemIndex: defaultVisualFocusItemIndex\n });\n }\n setVisualFocusItemIndex(newVisualFocusIndex);\n }\n }, [\n defaultVisualFocusItemIndex,\n isItemSelectable,\n itemsCount,\n setVisualFocusItemIndex,\n triggeredByKeyboard,\n visualFocusItemIndex\n ]);\n const onFocusByMouse = useCallback(() => {\n triggeredByKeyboard.current = false;\n }, [triggeredByKeyboard]);\n useListenFocusTriggers({ ref: focusedElementRef, onFocusByKeyboard, onFocusByMouse });\n\n return { triggeredByKeyboard };\n}\n\nexport function useKeepFocusOnItemWhenListChanged({\n visualFocusItemIndex,\n itemsIds,\n isItemSelectable,\n setVisualFocusItemIndex\n}: {\n visualFocusItemIndex: number;\n itemsIds: string[];\n isItemSelectable: (index: number) => boolean;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const prevItemIds = usePrevious(itemsIds);\n\n // When item list changed, keep the focus on the same item\n useEffect(() => {\n // When the list is changing the index of the focused item is point to a different item then before and\n // this is why we want to search for the new index of the item and change the index to point to it.\n let overrideIndexAfterListChanged;\n const isListChanged = prevItemIds !== undefined && prevItemIds !== itemsIds;\n if (isListChanged && prevItemIds !== undefined && visualFocusItemIndex !== -1) {\n const focusedItemId = prevItemIds[visualFocusItemIndex];\n overrideIndexAfterListChanged = itemsIds.indexOf(focusedItemId);\n } else {\n overrideIndexAfterListChanged = visualFocusItemIndex;\n }\n\n if (overrideIndexAfterListChanged !== visualFocusItemIndex) {\n if (isItemSelectable(overrideIndexAfterListChanged)) {\n setVisualFocusItemIndex(overrideIndexAfterListChanged);\n } else {\n const closestSelectableIndex = getNextSelectableIndex({\n isItemSelectable,\n visualFocusItemIndex: overrideIndexAfterListChanged,\n itemsCount: itemsIds.length\n });\n setVisualFocusItemIndex(closestSelectableIndex);\n }\n }\n }, [visualFocusItemIndex, itemsIds, isItemSelectable, setVisualFocusItemIndex, prevItemIds]);\n}\n"],"names":["ArrowDirection","ENTER_KEY","useSupportArrowsKeyboardNavigation","_ref","itemsCount","focusedElementRef","visualFocusItemIndex","setVisualFocusItemIndex","isHorizontalList","isItemSelectable","listenerOptions","triggeredByKeyboard","nextArrow","RIGHT","DOWN","backArrow","LEFT","UP","onArrowKeyEvent","useCallback","direction","newIndex","document","activeElement","current","getNextSelectableIndex","getPreviousSelectableIndex","onArrowBack","onArrowNext","useKeyEvent","Object","assign","keys","callback","useSupportPressItemKeyboardNavigation","_ref2","onItemClick","_ref2$listenerOptions","undefined","_ref2$isIgnoreSpaceAs","isIgnoreSpaceAsItemSelection","pressKeys","useMemo","baseOnClickCallback","event","itemIndex","keyboardOnSelectCallback","contains","useCleanVisualFocusOnBlur","_ref3","previousFocusedElementRef","usePrevious","onBlurCallback","useEffect","useEventListener","eventName","ref","useSetDefaultItemOnFocusEvent","_ref4","_ref4$defaultVisualFo","defaultVisualFocusItemIndex","useRef","onFocusByKeyboard","newVisualFocusIndex","onFocusByMouse","useListenFocusTriggers","useKeepFocusOnItemWhenListChanged","_ref5","itemsIds","prevItemIds","overrideIndexAfterListChanged","indexOf","closestSelectableIndex","length"],"mappings":"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"}
1
+ {"version":3,"file":"useActiveDescendantListFocusHooks.js","sources":["../../../../../src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.ts"],"sourcesContent":["import { type MutableRefObject } from \"react\";\nimport type React from \"react\";\nimport { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport useKeyEvent, { type UseKeyEventArgs } from \"../useKeyEvent\";\nimport useEventListener from \"../useEventListener\";\nimport { usePrevious } from \"@vibe/hooks\";\nimport { getNextSelectableIndex, getPreviousSelectableIndex } from \"./useActiveDescendantListFocusHelpers\";\nimport useListenFocusTriggers from \"../useListenFocusTriggers\";\n\nenum ArrowDirection {\n UP = \"ArrowUp\",\n DOWN = \"ArrowDown\",\n RIGHT = \"ArrowRight\",\n LEFT = \"ArrowLeft\"\n}\n\nconst ENTER_KEY = \"Enter\";\nconst SPACE_KEY = \" \";\n\nexport function useSupportArrowsKeyboardNavigation({\n itemsCount,\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isHorizontalList,\n isItemSelectable,\n listenerOptions,\n triggeredByKeyboard\n}: {\n itemsCount: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n isHorizontalList: boolean;\n isItemSelectable: (index: number) => boolean;\n triggeredByKeyboard: MutableRefObject<boolean>;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n}) {\n const nextArrow = isHorizontalList ? ArrowDirection.RIGHT : ArrowDirection.DOWN;\n const backArrow = isHorizontalList ? ArrowDirection.LEFT : ArrowDirection.UP;\n\n const onArrowKeyEvent = useCallback(\n (direction: ArrowDirection) => {\n // we desire to change the visual focus item only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (document.activeElement !== focusedElementRef.current) {\n return;\n }\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we will mark future user interactions as trigger by keyboard (until the next mouse interaction)\n // that from now on the interactions are trigger by keyboard (until the next mouse interaction)\n if (!triggeredByKeyboard.current) {\n triggeredByKeyboard.current = true;\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we want only to display the item\n // which right now visually focus without changing it.\n if (visualFocusItemIndex > -1) {\n return;\n }\n }\n\n let newIndex;\n\n // We will change the visual focused item index according to the direction of the pressed arrow\n if (direction === nextArrow) {\n newIndex = getNextSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n } else if (direction === backArrow) {\n newIndex = getPreviousSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n }\n\n if (newIndex > -1 && newIndex !== visualFocusItemIndex) setVisualFocusItemIndex(newIndex);\n },\n [\n focusedElementRef,\n triggeredByKeyboard,\n nextArrow,\n backArrow,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isItemSelectable,\n itemsCount\n ]\n );\n const onArrowBack = useCallback(() => {\n onArrowKeyEvent(backArrow);\n }, [backArrow, onArrowKeyEvent]);\n\n const onArrowNext = useCallback(() => {\n onArrowKeyEvent(nextArrow);\n }, [nextArrow, onArrowKeyEvent]);\n\n useKeyEvent({\n keys: [nextArrow],\n callback: onArrowNext,\n ...listenerOptions\n });\n\n useKeyEvent({\n keys: [backArrow],\n callback: onArrowBack,\n ...listenerOptions\n });\n}\n\nexport function useSupportPressItemKeyboardNavigation({\n visualFocusItemIndex,\n focusedElementRef,\n itemsCount,\n setVisualFocusItemIndex,\n onItemClick,\n isItemSelectable,\n listenerOptions = undefined,\n isIgnoreSpaceAsItemSelection = false\n}: {\n visualFocusItemIndex: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n itemsCount: number;\n setVisualFocusItemIndex: (index: number) => void;\n onItemClick: (event: React.MouseEvent | React.KeyboardEvent, index: number) => void;\n isItemSelectable: (index: number) => boolean;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n isIgnoreSpaceAsItemSelection: boolean;\n}) {\n const pressKeys = useMemo(\n () => (isIgnoreSpaceAsItemSelection ? [ENTER_KEY] : [ENTER_KEY, SPACE_KEY]),\n [isIgnoreSpaceAsItemSelection]\n );\n\n const baseOnClickCallback = useCallback(\n (event: React.KeyboardEvent, itemIndex: number) => {\n const hasValidIndex = itemIndex >= 0 && itemIndex < itemsCount;\n if (!onItemClick || !hasValidIndex || !isItemSelectable(itemIndex)) return;\n if (visualFocusItemIndex !== itemIndex) setVisualFocusItemIndex(itemIndex);\n onItemClick(event, itemIndex);\n },\n [itemsCount, onItemClick, isItemSelectable, visualFocusItemIndex, setVisualFocusItemIndex]\n );\n\n const keyboardOnSelectCallback = useCallback(\n (event: React.KeyboardEvent) => {\n // we desire to change the trigger the active item on click callback only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (focusedElementRef.current.contains(document.activeElement)) {\n baseOnClickCallback(event, visualFocusItemIndex);\n }\n },\n [baseOnClickCallback, focusedElementRef, visualFocusItemIndex]\n );\n\n useKeyEvent({\n keys: pressKeys,\n callback: keyboardOnSelectCallback,\n ...listenerOptions\n });\n}\n\nexport function useCleanVisualFocusOnBlur({\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const previousFocusedElementRef = usePrevious(focusedElementRef);\n\n const onBlurCallback = useCallback(() => {\n if (visualFocusItemIndex !== -1) {\n setVisualFocusItemIndex(-1);\n }\n }, [setVisualFocusItemIndex, visualFocusItemIndex]);\n\n // if element unmount act like element got blur event\n useEffect(() => {\n // if element unmount\n if (focusedElementRef?.current === null && previousFocusedElementRef?.current !== null) {\n onBlurCallback();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focusedElementRef.current, previousFocusedElementRef, onBlurCallback]);\n\n useEventListener({\n eventName: \"blur\",\n ref: focusedElementRef,\n callback: onBlurCallback\n });\n}\n\nexport function useSetDefaultItemOnFocusEvent({\n focusedElementRef,\n isItemSelectable,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n itemsCount,\n defaultVisualFocusItemIndex = -1\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n isItemSelectable: (index: number) => boolean;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n itemsCount: number;\n defaultVisualFocusItemIndex: number;\n}) {\n const triggeredByKeyboard = useRef(false);\n\n const onFocusByKeyboard = useCallback(() => {\n triggeredByKeyboard.current = true;\n if (visualFocusItemIndex !== defaultVisualFocusItemIndex) {\n let newVisualFocusIndex;\n if (isItemSelectable(defaultVisualFocusItemIndex)) {\n newVisualFocusIndex = defaultVisualFocusItemIndex;\n } else {\n newVisualFocusIndex = getNextSelectableIndex({\n isItemSelectable,\n itemsCount,\n visualFocusItemIndex: defaultVisualFocusItemIndex\n });\n }\n setVisualFocusItemIndex(newVisualFocusIndex);\n }\n }, [\n defaultVisualFocusItemIndex,\n isItemSelectable,\n itemsCount,\n setVisualFocusItemIndex,\n triggeredByKeyboard,\n visualFocusItemIndex\n ]);\n const onFocusByMouse = useCallback(() => {\n triggeredByKeyboard.current = false;\n }, [triggeredByKeyboard]);\n useListenFocusTriggers({ ref: focusedElementRef, onFocusByKeyboard, onFocusByMouse });\n\n return { triggeredByKeyboard };\n}\n\nexport function useKeepFocusOnItemWhenListChanged({\n visualFocusItemIndex,\n itemsIds,\n isItemSelectable,\n setVisualFocusItemIndex\n}: {\n visualFocusItemIndex: number;\n itemsIds: string[];\n isItemSelectable: (index: number) => boolean;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const prevItemIds = usePrevious(itemsIds);\n\n // When item list changed, keep the focus on the same item\n useEffect(() => {\n // When the list is changing the index of the focused item is point to a different item then before and\n // this is why we want to search for the new index of the item and change the index to point to it.\n let overrideIndexAfterListChanged;\n const isListChanged = prevItemIds !== undefined && prevItemIds !== itemsIds;\n if (isListChanged && prevItemIds !== undefined && visualFocusItemIndex !== -1) {\n const focusedItemId = prevItemIds[visualFocusItemIndex];\n overrideIndexAfterListChanged = itemsIds.indexOf(focusedItemId);\n } else {\n overrideIndexAfterListChanged = visualFocusItemIndex;\n }\n\n if (overrideIndexAfterListChanged !== visualFocusItemIndex) {\n if (isItemSelectable(overrideIndexAfterListChanged)) {\n setVisualFocusItemIndex(overrideIndexAfterListChanged);\n } else {\n const closestSelectableIndex = getNextSelectableIndex({\n isItemSelectable,\n visualFocusItemIndex: overrideIndexAfterListChanged,\n itemsCount: itemsIds.length\n });\n setVisualFocusItemIndex(closestSelectableIndex);\n }\n }\n }, [visualFocusItemIndex, itemsIds, isItemSelectable, setVisualFocusItemIndex, prevItemIds]);\n}\n"],"names":["ArrowDirection","ENTER_KEY","useSupportArrowsKeyboardNavigation","_ref","itemsCount","focusedElementRef","visualFocusItemIndex","setVisualFocusItemIndex","isHorizontalList","isItemSelectable","listenerOptions","triggeredByKeyboard","nextArrow","RIGHT","DOWN","backArrow","LEFT","UP","onArrowKeyEvent","useCallback","direction","newIndex","document","activeElement","current","getNextSelectableIndex","getPreviousSelectableIndex","onArrowBack","onArrowNext","useKeyEvent","Object","assign","keys","callback","useSupportPressItemKeyboardNavigation","_ref2","onItemClick","_ref2$listenerOptions","undefined","_ref2$isIgnoreSpaceAs","isIgnoreSpaceAsItemSelection","pressKeys","useMemo","baseOnClickCallback","event","itemIndex","keyboardOnSelectCallback","contains","useCleanVisualFocusOnBlur","_ref3","previousFocusedElementRef","usePrevious","onBlurCallback","useEffect","useEventListener","eventName","ref","useSetDefaultItemOnFocusEvent","_ref4","_ref4$defaultVisualFo","defaultVisualFocusItemIndex","useRef","onFocusByKeyboard","newVisualFocusIndex","onFocusByMouse","useListenFocusTriggers","useKeepFocusOnItemWhenListChanged","_ref5","itemsIds","prevItemIds","overrideIndexAfterListChanged","indexOf","closestSelectableIndex","length"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{slicedToArray as r}from"../../../_virtual/_rollupPluginBabelHelpers.js";import{useState as e,useEffect as o,useCallback as u}from"react";import{useEventListener as c}from"@vibe/shared";import a from"../usePrevious/index.js";function l(l){var n=l.ref,t=l.focusCallback,f=l.blurCallback,i=e(!1),s=r(i,2),b=s[0],m=s[1],v=a(b);o((function(){void 0!==v&&(b?t&&t():f&&f())}),[f,t,b,v]);var p=u((function(){n.current.focus()}),[n]),d=u((function(){n.current.blur()}),[n]);return c({eventName:"focus",ref:n,callback:function(){m(!0)}}),c({eventName:"blur",ref:n,callback:function(){m(!1)}}),{isFocused:b,focus:p,blur:d}}export{l as default};
1
+ import{slicedToArray as r}from"../../../_virtual/_rollupPluginBabelHelpers.js";import{useState as o,useEffect as e,useCallback as u}from"react";import{useEventListener as c}from"@vibe/shared";import{usePrevious as a}from"@vibe/hooks";function l(l){var t=l.ref,f=l.focusCallback,n=l.blurCallback,i=o(!1),s=r(i,2),b=s[0],m=s[1],v=a(b);e((function(){void 0!==v&&(b?f&&f():n&&n())}),[n,f,b,v]);var p=u((function(){t.current.focus()}),[t]),d=u((function(){t.current.blur()}),[t]);return c({eventName:"focus",ref:t,callback:function(){m(!0)}}),c({eventName:"blur",ref:t,callback:function(){m(!1)}}),{isFocused:b,focus:p,blur:d}}export{l as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/hooks/useSetFocus/index.ts"],"sourcesContent":["import { type RefObject, useCallback, useEffect, useState } from \"react\";\nimport useEventListener from \"../useEventListener\";\nimport usePrevious from \"../../hooks/usePrevious\";\n\n// TODO: [breaking] rename to useFocus? and maybe change signature to be like useHover?\nexport default function useSetFocus({\n ref,\n focusCallback,\n blurCallback\n}: {\n ref: RefObject<HTMLElement>;\n focusCallback?: () => void;\n blurCallback?: () => void;\n}) {\n const [isFocused, setIsFocused] = useState(false);\n const isFocusedPrev = usePrevious(isFocused);\n\n useEffect(() => {\n if (isFocusedPrev === undefined) {\n // Don't call callback on first render\n return;\n }\n\n // Calling back from here to be sure that isFocused value have already been updated\n if (isFocused) {\n focusCallback && focusCallback();\n } else {\n blurCallback && blurCallback();\n }\n }, [blurCallback, focusCallback, isFocused, isFocusedPrev]);\n\n const focus = useCallback(() => {\n ref.current.focus();\n }, [ref]);\n\n const blur = useCallback(() => {\n ref.current.blur();\n }, [ref]);\n\n const onFocus = () => {\n setIsFocused(true);\n };\n\n const onBlur = () => {\n setIsFocused(false);\n };\n\n useEventListener({\n eventName: \"focus\",\n ref,\n callback: onFocus\n });\n\n useEventListener({\n eventName: \"blur\",\n ref,\n callback: onBlur\n });\n\n return { isFocused, focus, blur };\n}\n"],"names":["useSetFocus","_ref","ref","focusCallback","blurCallback","_useState","useState","_useState2","_slicedToArray","isFocused","setIsFocused","isFocusedPrev","usePrevious","useEffect","undefined","focus","useCallback","current","blur","useEventListener","eventName","callback"],"mappings":"uOAKc,SAAUA,EAAWC,GAQlC,IAPCC,EAAGD,EAAHC,IACAC,EAAaF,EAAbE,cACAC,EAAYH,EAAZG,aAMAC,EAAkCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GACxBI,EAAgBC,EAAYH,GAElCI,GAAU,gBACcC,IAAlBH,IAMAF,EACFN,GAAiBA,IAEjBC,GAAgBA,IAEnB,GAAE,CAACA,EAAcD,EAAeM,EAAWE,IAE5C,IAAMI,EAAQC,GAAY,WACxBd,EAAIe,QAAQF,OACd,GAAG,CAACb,IAEEgB,EAAOF,GAAY,WACvBd,EAAIe,QAAQC,MACd,GAAG,CAAChB,IAsBJ,OAZAiB,EAAiB,CACfC,UAAW,QACXlB,IAAAA,EACAmB,SAXc,WACdX,GAAa,MAafS,EAAiB,CACfC,UAAW,OACXlB,IAAAA,EACAmB,SAba,WACbX,GAAa,MAeR,CAAED,UAAAA,EAAWM,MAAAA,EAAOG,KAAAA,EAC7B"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/hooks/useSetFocus/index.ts"],"sourcesContent":["import { type RefObject, useCallback, useEffect, useState } from \"react\";\nimport useEventListener from \"../useEventListener\";\nimport { usePrevious } from \"@vibe/hooks\";\n\n// TODO: [breaking] rename to useFocus? and maybe change signature to be like useHover?\nexport default function useSetFocus({\n ref,\n focusCallback,\n blurCallback\n}: {\n ref: RefObject<HTMLElement>;\n focusCallback?: () => void;\n blurCallback?: () => void;\n}) {\n const [isFocused, setIsFocused] = useState(false);\n const isFocusedPrev = usePrevious(isFocused);\n\n useEffect(() => {\n if (isFocusedPrev === undefined) {\n // Don't call callback on first render\n return;\n }\n\n // Calling back from here to be sure that isFocused value have already been updated\n if (isFocused) {\n focusCallback && focusCallback();\n } else {\n blurCallback && blurCallback();\n }\n }, [blurCallback, focusCallback, isFocused, isFocusedPrev]);\n\n const focus = useCallback(() => {\n ref.current.focus();\n }, [ref]);\n\n const blur = useCallback(() => {\n ref.current.blur();\n }, [ref]);\n\n const onFocus = () => {\n setIsFocused(true);\n };\n\n const onBlur = () => {\n setIsFocused(false);\n };\n\n useEventListener({\n eventName: \"focus\",\n ref,\n callback: onFocus\n });\n\n useEventListener({\n eventName: \"blur\",\n ref,\n callback: onBlur\n });\n\n return { isFocused, focus, blur };\n}\n"],"names":["useSetFocus","_ref","ref","focusCallback","blurCallback","_useState","useState","_useState2","_slicedToArray","isFocused","setIsFocused","isFocusedPrev","usePrevious","useEffect","undefined","focus","useCallback","current","blur","useEventListener","eventName","callback"],"mappings":"0OAKc,SAAUA,EAAWC,GAQlC,IAPCC,EAAGD,EAAHC,IACAC,EAAaF,EAAbE,cACAC,EAAYH,EAAZG,aAMAC,EAAkCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA1CI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GACxBI,EAAgBC,EAAYH,GAElCI,GAAU,gBACcC,IAAlBH,IAMAF,EACFN,GAAiBA,IAEjBC,GAAgBA,IAEnB,GAAE,CAACA,EAAcD,EAAeM,EAAWE,IAE5C,IAAMI,EAAQC,GAAY,WACxBd,EAAIe,QAAQF,OACd,GAAG,CAACb,IAEEgB,EAAOF,GAAY,WACvBd,EAAIe,QAAQC,MACd,GAAG,CAAChB,IAsBJ,OAZAiB,EAAiB,CACfC,UAAW,QACXlB,IAAAA,EACAmB,SAXc,WACdX,GAAa,MAafS,EAAiB,CACfC,UAAW,OACXlB,IAAAA,EACAmB,SAba,WACbX,GAAa,MAeR,CAAED,UAAAA,EAAWM,MAAAA,EAAOG,KAAAA,EAC7B"}
@@ -1,2 +1,2 @@
1
- import"@vibe/style/dist/index.min.css";export{default as Accordion}from"./components/Accordion/Accordion/Accordion.js";export{default as AccordionItem}from"./components/Accordion/AccordionItem/AccordionItem.js";export{default as AlertBanner}from"./components/AlertBanner/AlertBanner.js";export{default as AlertBannerButton}from"./components/AlertBanner/AlertBannerButton/AlertBannerButton.js";export{default as AlertBannerLink}from"./components/AlertBanner/AlertBannerLink/AlertBannerLink.js";export{default as AlertBannerText}from"./components/AlertBanner/AlertBannerText/AlertBannerText.js";export{default as AttentionBox}from"./components/AttentionBox/AttentionBox.js";export{default as Avatar}from"./components/Avatar/Avatar.js";export{default as AvatarGroup}from"./components/AvatarGroup/AvatarGroup.js";export{default as Badge}from"./components/Badge/Badge.js";export{default as BreadcrumbsBar}from"./components/BreadcrumbsBar/BreadcrumbsBar.js";export{default as BreadcrumbItem}from"./components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.js";export{default as BreadcrumbMenu}from"./components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbMenu.js";export{default as BreadcrumbMenuItem}from"./components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbMenuItem/BreadcrumbMenuItem.js";export*from"@vibe/button/mockedClassNames";export{ButtonGroup}from"@vibe/button-group/mockedClassNames";export*from"@vibe/checkbox/mockedClassNames";export{default as Chips}from"./components/Chips/Chips.js";export{Clickable,useClickableProps}from"@vibe/clickable/mockedClassNames";export{default as ColorPicker}from"./components/ColorPicker/ColorPicker.js";export{default as ColorPickerContent}from"./components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js";export{default as Combobox}from"./components/Combobox/Combobox.js";export*from"@vibe/counter/mockedClassNames";export{default as DatePicker}from"./components/DatePicker/DatePicker.js";export{Dialog,DialogContentContainer}from"@vibe/dialog/mockedClassNames";export*from"@vibe/divider/mockedClassNames";export{default as Dropdown}from"./components/Dropdown/Dropdown.js";export{default as EditableHeading}from"./components/EditableHeading/EditableHeading.js";export{default as EditableText}from"./components/EditableText/EditableText.js";export{default as EmptyState}from"./components/EmptyState/EmptyState.js";export{ExpandCollapse}from"@vibe/expand-collapse/mockedClassNames";export*from"@vibe/layout/mockedClassNames";export*from"@vibe/formatted-number/mockedClassNames";export{GridKeyboardNavigationContext,useGridKeyboardNavigationContext}from"./components/GridKeyboardNavigationContext/GridKeyboardNavigationContext.js";export{Heading,Text}from"@vibe/typography/mockedClassNames";export{default as HiddenText}from"./components/HiddenText/HiddenText.js";export*from"@vibe/icon/mockedClassNames";export*from"@vibe/icon-button/mockedClassNames";export{default as Info}from"./components/Info/Info.js";export*from"@vibe/label/mockedClassNames";export{LayerProvider}from"@vibe/layer/mockedClassNames";export*from"@vibe/link/mockedClassNames";export{default as List}from"./components/List/List.js";export{default as ListItem}from"./components/ListItem/ListItem.js";export{default as ListItemAvatar}from"./components/ListItemAvatar/ListItemAvatar.js";export{default as ListItemIcon}from"./components/ListItemIcon/ListItemIcon.js";export{default as ListTitle}from"./components/ListTitle/ListTitle.js";export*from"@vibe/loader/mockedClassNames";export{default as Menu}from"./components/Menu/Menu/Menu.js";export{default as MenuItem}from"./components/Menu/MenuItem/MenuItem.js";export{default as MenuItemButton}from"./components/Menu/MenuItemButton/MenuItemButton.js";export{default as MenuDivider}from"./components/Menu/MenuDivider/MenuDivider.js";export{default as MenuTitle}from"./components/Menu/MenuTitle/MenuTitle.js";export{default as MenuGridItem}from"./components/Menu/MenuGridItem/MenuGridItem.js";export{default as MenuButton}from"./components/MenuButton/MenuButton.js";export{default as NumberField}from"./components/NumberField/NumberField.js";export{default as ModalFooter}from"./components/Modal/footers/ModalFooter/ModalFooter.js";export{default as ModalFooterWizard}from"./components/Modal/footers/ModalFooterWizard/ModalFooterWizard.js";export{default as ModalBasicLayout}from"./components/Modal/layouts/ModalBasicLayout/ModalBasicLayout.js";export{default as ModalMediaLayout}from"./components/Modal/layouts/ModalMediaLayout/ModalMediaLayout.js";export{default as ModalSideBySideLayout}from"./components/Modal/layouts/ModalSideBySideLayout/ModalSideBySideLayout.js";export{default as Modal}from"./components/Modal/Modal/Modal.js";export{default as ModalHeader}from"./components/Modal/ModalHeader/ModalHeader.js";export{default as ModalContent}from"./components/Modal/ModalContent/ModalContent.js";export{default as ModalMedia}from"./components/Modal/ModalMedia/ModalMedia.js";export{default as MultiStepIndicator}from"./components/MultiStepIndicator/MultiStepIndicator.js";export*from"@vibe/progress-bars/mockedClassNames";export*from"@vibe/radio-button/mockedClassNames";export{default as Search}from"./components/Search/Search.js";export{default as Skeleton}from"./components/Skeleton/Skeleton.js";export{default as Slider}from"./components/Slider/Slider.js";export{default as SplitButton}from"./components/SplitButton/SplitButton.js";export{default as SplitButtonMenu}from"./components/SplitButton/SplitButtonMenu/SplitButtonMenu.js";export{default as Steps}from"./components/Steps/Steps.js";export{default as Table}from"./components/Table/Table/Table.js";export{default as TableContainer}from"./components/Table/TableContainer/TableContainer.js";export{default as TableHeader}from"./components/Table/TableHeader/TableHeader.js";export{default as TableHeaderCell}from"./components/Table/TableHeaderCell/TableHeaderCell.js";export{default as TableBody}from"./components/Table/TableBody/TableBody.js";export{default as TableVirtualizedBody}from"./components/Table/TableVirtualizedBody/TableVirtualizedBody.js";export{default as TableRow}from"./components/Table/TableRow/TableRow.js";export{default as TableRowMenu}from"./components/Table/TableRowMenu/TableRowMenu.js";export{default as TableCell}from"./components/Table/TableCell/TableCell.js";export{default as Tab}from"./components/Tabs/Tab/Tab.js";export{default as TabList}from"./components/Tabs/TabList/TabList.js";export{default as TabPanel}from"./components/Tabs/TabPanel/TabPanel.js";export{default as TabsContext}from"./components/Tabs/TabsContext/TabsContext.js";export{default as TabPanels}from"./components/Tabs/TabPanels/TabPanels.js";export{default as TextArea}from"./components/TextArea/TextArea.js";export{default as TextField}from"./components/TextField/TextField.js";export{default as TextWithHighlight}from"./components/TextWithHighlight/TextWithHighlight.js";export{default as ThemeProvider}from"./components/ThemeProvider/ThemeProvider.js";export{default as Tipseen}from"./components/Tipseen/Tipseen.js";export{default as TipseenContent}from"./components/Tipseen/TipseenContent.js";export{default as TipseenWizard}from"./components/Tipseen/TipseenWizard.js";export{default as TipseenMedia}from"./components/Tipseen/TipseenMedia/TipseenMedia.js";export{default as Toast}from"./components/Toast/Toast.js";export{default as ToastButton}from"./components/Toast/ToastButton/ToastButton.js";export{default as ToastLink}from"./components/Toast/ToastLink/ToastLink.js";export{default as Toggle}from"./components/Toggle/Toggle.js";export{Tooltip}from"@vibe/tooltip/mockedClassNames";export{default as TransitionView}from"./components/TransitionView/TransitionView.js";export{default as VirtualizedGrid}from"./components/VirtualizedGrid/VirtualizedGrid.js";export{default as VirtualizedList}from"./components/VirtualizedList/VirtualizedList.js";export{default as ColorUtils}from"./utils/colors-utils.js";export{useEventListener,useKeyEvent}from"@vibe/shared";export{default as useDebounceEvent}from"./hooks/useDebounceEvent/index.js";export{useAfterFirstRender,useClickOutside,useIsOverflowing,useResizeObserver}from"@vibe/hooks";export{default as useTimeout}from"./hooks/useTimeout/index.js";export{default as usePrevious}from"./hooks/usePrevious/index.js";export{default as useSetFocus}from"./hooks/useSetFocus/index.js";export{default as useIsMouseOver}from"./hooks/useIsMouseOver.js";export{default as useHover}from"./hooks/useHover/useHover.js";export{default as useGridKeyboardNavigation}from"./hooks/useGridKeyboardNavigation/useGridKeyboardNavigation.js";export{default as useActiveDescendantListFocus}from"./hooks/useActiveDescendantListFocus/index.js";export{useMediaQuery}from"./hooks/useMediaQuery/index.js";export{default as useVibeMediaQuery}from"./hooks/useVibeMediaQuery/index.js";export{default as useSwitch}from"./hooks/useSwitch/index.js";export{default as useElementsOverflowingIndex}from"./hooks/useElementsOverflowingIndex.js";export{default as useWizard}from"./hooks/useWizard/useWizard.js";export{getElementColor}from"./types/Colors.js";
1
+ import"@vibe/style/dist/index.min.css";export{default as Accordion}from"./components/Accordion/Accordion/Accordion.js";export{default as AccordionItem}from"./components/Accordion/AccordionItem/AccordionItem.js";export{default as AlertBanner}from"./components/AlertBanner/AlertBanner.js";export{default as AlertBannerButton}from"./components/AlertBanner/AlertBannerButton/AlertBannerButton.js";export{default as AlertBannerLink}from"./components/AlertBanner/AlertBannerLink/AlertBannerLink.js";export{default as AlertBannerText}from"./components/AlertBanner/AlertBannerText/AlertBannerText.js";export{default as AttentionBox}from"./components/AttentionBox/AttentionBox.js";export*from"@vibe/avatar/mockedClassNames";export{default as AvatarGroup}from"./components/AvatarGroup/AvatarGroup.js";export{default as Badge}from"./components/Badge/Badge.js";export{default as BreadcrumbsBar}from"./components/BreadcrumbsBar/BreadcrumbsBar.js";export{default as BreadcrumbItem}from"./components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.js";export{default as BreadcrumbMenu}from"./components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbMenu.js";export{default as BreadcrumbMenuItem}from"./components/BreadcrumbsBar/BreadcrumbMenu/BreadcrumbMenuItem/BreadcrumbMenuItem.js";export*from"@vibe/button/mockedClassNames";export{ButtonGroup}from"@vibe/button-group/mockedClassNames";export*from"@vibe/checkbox/mockedClassNames";export{default as Chips}from"./components/Chips/Chips.js";export{Clickable,useClickableProps}from"@vibe/clickable/mockedClassNames";export{default as ColorPicker}from"./components/ColorPicker/ColorPicker.js";export{default as ColorPickerContent}from"./components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js";export{default as Combobox}from"./components/Combobox/Combobox.js";export*from"@vibe/counter/mockedClassNames";export{default as DatePicker}from"./components/DatePicker/DatePicker.js";export{Dialog,DialogContentContainer}from"@vibe/dialog/mockedClassNames";export*from"@vibe/divider/mockedClassNames";export{default as Dropdown}from"./components/Dropdown/Dropdown.js";export*from"@vibe/editable/mockedClassNames";export{default as EmptyState}from"./components/EmptyState/EmptyState.js";export{ExpandCollapse}from"@vibe/expand-collapse/mockedClassNames";export*from"@vibe/layout/mockedClassNames";export*from"@vibe/formatted-number/mockedClassNames";export{GridKeyboardNavigationContext,useGridKeyboardNavigationContext}from"./components/GridKeyboardNavigationContext/GridKeyboardNavigationContext.js";export{Heading,Text}from"@vibe/typography/mockedClassNames";export{default as HiddenText}from"./components/HiddenText/HiddenText.js";export*from"@vibe/icon/mockedClassNames";export*from"@vibe/icon-button/mockedClassNames";export{default as Info}from"./components/Info/Info.js";export*from"@vibe/label/mockedClassNames";export{LayerProvider}from"@vibe/layer/mockedClassNames";export*from"@vibe/link/mockedClassNames";export{default as List}from"./components/List/List.js";export{default as ListItem}from"./components/ListItem/ListItem.js";export{default as ListItemAvatar}from"./components/ListItemAvatar/ListItemAvatar.js";export{default as ListItemIcon}from"./components/ListItemIcon/ListItemIcon.js";export{default as ListTitle}from"./components/ListTitle/ListTitle.js";export*from"@vibe/loader/mockedClassNames";export{default as Menu}from"./components/Menu/Menu/Menu.js";export{default as MenuItem}from"./components/Menu/MenuItem/MenuItem.js";export{default as MenuItemButton}from"./components/Menu/MenuItemButton/MenuItemButton.js";export{default as MenuDivider}from"./components/Menu/MenuDivider/MenuDivider.js";export{default as MenuTitle}from"./components/Menu/MenuTitle/MenuTitle.js";export{default as MenuGridItem}from"./components/Menu/MenuGridItem/MenuGridItem.js";export{default as MenuButton}from"./components/MenuButton/MenuButton.js";export{default as NumberField}from"./components/NumberField/NumberField.js";export{default as ModalFooter}from"./components/Modal/footers/ModalFooter/ModalFooter.js";export{default as ModalFooterWizard}from"./components/Modal/footers/ModalFooterWizard/ModalFooterWizard.js";export{default as ModalBasicLayout}from"./components/Modal/layouts/ModalBasicLayout/ModalBasicLayout.js";export{default as ModalMediaLayout}from"./components/Modal/layouts/ModalMediaLayout/ModalMediaLayout.js";export{default as ModalSideBySideLayout}from"./components/Modal/layouts/ModalSideBySideLayout/ModalSideBySideLayout.js";export{default as Modal}from"./components/Modal/Modal/Modal.js";export{default as ModalHeader}from"./components/Modal/ModalHeader/ModalHeader.js";export{default as ModalContent}from"./components/Modal/ModalContent/ModalContent.js";export{default as ModalMedia}from"./components/Modal/ModalMedia/ModalMedia.js";export{default as MultiStepIndicator}from"./components/MultiStepIndicator/MultiStepIndicator.js";export*from"@vibe/progress-bars/mockedClassNames";export*from"@vibe/radio-button/mockedClassNames";export{default as Search}from"./components/Search/Search.js";export{default as Skeleton}from"./components/Skeleton/Skeleton.js";export{default as Slider}from"./components/Slider/Slider.js";export{default as SplitButton}from"./components/SplitButton/SplitButton.js";export{default as SplitButtonMenu}from"./components/SplitButton/SplitButtonMenu/SplitButtonMenu.js";export{default as Steps}from"./components/Steps/Steps.js";export{default as Table}from"./components/Table/Table/Table.js";export{default as TableContainer}from"./components/Table/TableContainer/TableContainer.js";export{default as TableHeader}from"./components/Table/TableHeader/TableHeader.js";export{default as TableHeaderCell}from"./components/Table/TableHeaderCell/TableHeaderCell.js";export{default as TableBody}from"./components/Table/TableBody/TableBody.js";export{default as TableVirtualizedBody}from"./components/Table/TableVirtualizedBody/TableVirtualizedBody.js";export{default as TableRow}from"./components/Table/TableRow/TableRow.js";export{default as TableRowMenu}from"./components/Table/TableRowMenu/TableRowMenu.js";export{default as TableCell}from"./components/Table/TableCell/TableCell.js";export{default as Tab}from"./components/Tabs/Tab/Tab.js";export{default as TabList}from"./components/Tabs/TabList/TabList.js";export{default as TabPanel}from"./components/Tabs/TabPanel/TabPanel.js";export{default as TabsContext}from"./components/Tabs/TabsContext/TabsContext.js";export{default as TabPanels}from"./components/Tabs/TabPanels/TabPanels.js";export{default as TextArea}from"./components/TextArea/TextArea.js";export{default as TextField}from"./components/TextField/TextField.js";export{default as TextWithHighlight}from"./components/TextWithHighlight/TextWithHighlight.js";export{default as ThemeProvider}from"./components/ThemeProvider/ThemeProvider.js";export{default as Tipseen}from"./components/Tipseen/Tipseen.js";export{default as TipseenContent}from"./components/Tipseen/TipseenContent.js";export{default as TipseenWizard}from"./components/Tipseen/TipseenWizard.js";export{default as TipseenMedia}from"./components/Tipseen/TipseenMedia/TipseenMedia.js";export{default as Toast}from"./components/Toast/Toast.js";export{default as ToastButton}from"./components/Toast/ToastButton/ToastButton.js";export{default as ToastLink}from"./components/Toast/ToastLink/ToastLink.js";export{default as Toggle}from"./components/Toggle/Toggle.js";export{Tooltip}from"@vibe/tooltip/mockedClassNames";export{default as TransitionView}from"./components/TransitionView/TransitionView.js";export{default as VirtualizedGrid}from"./components/VirtualizedGrid/VirtualizedGrid.js";export{default as VirtualizedList}from"./components/VirtualizedList/VirtualizedList.js";export{default as ColorUtils}from"./utils/colors-utils.js";export{useEventListener,useKeyEvent}from"@vibe/shared";export{default as useDebounceEvent}from"./hooks/useDebounceEvent/index.js";export{useAfterFirstRender,useClickOutside,useIsOverflowing,usePrevious,useResizeObserver}from"@vibe/hooks";export{default as useTimeout}from"./hooks/useTimeout/index.js";export{default as useSetFocus}from"./hooks/useSetFocus/index.js";export{default as useIsMouseOver}from"./hooks/useIsMouseOver.js";export{default as useHover}from"./hooks/useHover/useHover.js";export{default as useGridKeyboardNavigation}from"./hooks/useGridKeyboardNavigation/useGridKeyboardNavigation.js";export{default as useActiveDescendantListFocus}from"./hooks/useActiveDescendantListFocus/index.js";export{useMediaQuery}from"./hooks/useMediaQuery/index.js";export{default as useVibeMediaQuery}from"./hooks/useVibeMediaQuery/index.js";export{default as useSwitch}from"./hooks/useSwitch/index.js";export{default as useElementsOverflowingIndex}from"./hooks/useElementsOverflowingIndex.js";export{default as useWizard}from"./hooks/useWizard/useWizard.js";export{getElementColor}from"./types/Colors.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,2 @@
1
+ import{contentColors as e}from"../utils/colors-vars-map.js";var o={positive:"--positive-color-selected",negative:"--negative-color-selected",primary:"--primary-selected-color",warning:"--warning-color-selected"},r={positive:"--positive-color-selected-hover",negative:"--negative-color-selected-hover",primary:"--primary-selected-hover-color"};function c(c){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return e.includes(c)?"var(--color-".concat(c).concat(t?"-selected":"",")"):Object.keys(r).includes(c)&&i?"var(".concat(r[c],")"):Object.keys(o).includes(c)&&t?"var(".concat(o[c],")"):c}export{c as getElementColor};
2
+ //# sourceMappingURL=Colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Colors.js","sources":["../../../../../shared/dist/types/Colors.js"],"sourcesContent":["import { contentColors } from \"../utils/colors-vars-map\";\nconst MapStateSelectedColor = {\n positive: \"--positive-color-selected\",\n negative: \"--negative-color-selected\",\n primary: \"--primary-selected-color\",\n warning: \"--warning-color-selected\"\n};\nconst MapStateSelectedHoverColor = {\n positive: \"--positive-color-selected-hover\",\n negative: \"--negative-color-selected-hover\",\n primary: \"--primary-selected-hover-color\"\n};\nexport function getElementColor(colorValue, isSelectedPalette = false, isSelectedHoverPalette = false) {\n if (contentColors.includes(colorValue)) {\n return `var(--color-${colorValue}${isSelectedPalette ? \"-selected\" : \"\"})`;\n }\n if (Object.keys(MapStateSelectedHoverColor).includes(colorValue) &&\n isSelectedHoverPalette) {\n return `var(${MapStateSelectedHoverColor[colorValue]})`;\n }\n if (Object.keys(MapStateSelectedColor).includes(colorValue) && isSelectedPalette) {\n return `var(${MapStateSelectedColor[colorValue]})`;\n }\n return colorValue;\n}\n//# sourceMappingURL=Colors.js.map"],"names":["MapStateSelectedColor","positive","negative","primary","warning","MapStateSelectedHoverColor","getElementColor","colorValue","isSelectedPalette","arguments","length","undefined","isSelectedHoverPalette","contentColors","includes","concat","Object","keys"],"mappings":"4DAEA,IAAMA,EAAwB,CAC5BC,SAAU,4BACVC,SAAU,4BACVC,QAAS,2BACTC,QAAS,4BAGLC,EAA6B,CACjCJ,SAAU,kCACVC,SAAU,kCACVC,QAAS,kCASL,SAAUG,EACdC,GAE8B,IAD9BC,EAAiBC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,IAAAA,UAAA,GACjBG,EAAsBH,UAAAC,OAAA,QAAAC,IAAAF,UAAA,IAAAA,UAAA,GAEtB,OAAII,EAAcC,SAASP,GACzBQ,eAAAA,OAAsBR,GAAUQ,OAAGP,EAAoB,YAAc,GAAE,KAGvEQ,OAAOC,KAAKZ,GAA4BS,SAASP,IACjDK,EAEA,OAAAG,OAAcV,EAA2BE,GAA0C,KAEjFS,OAAOC,KAAKjB,GAAuBc,SAASP,IAAyCC,EACvF,OAAAO,OAAcf,EAAsBO,GAAqC,KAEpEA,CACT"}
@@ -1,2 +1,2 @@
1
- var e={accordion:"accordion_3c748cb7e5",accordionItemExpandCollapse:"accordionItemExpandCollapse_c2f1994fd7",accordionItemExpandCollapseLast:"accordionItemExpandCollapseLast_248167d663"};!function(e){const o="s_id-0e4aa6b3ed9f_4_5_8";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+o))return;const d=document.createElement("style");d.id=o,n.firstChild?n.insertBefore(d,n.firstChild):n.appendChild(d),d.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[o]=e)}(".accordion_3c748cb7e5 {\n height: fit-content;\n border: 1px solid var(--ui-border-color);\n box-sizing: border-box;\n border-radius: var(--border-radius-small);\n}\n\n.accordion_3c748cb7e5 .accordionItemExpandCollapse_c2f1994fd7 {\n border-radius: 0;\n border-top: none;\n border-inline: none;\n border-color: var(--ui-border-color);\n}\n\n.accordion_3c748cb7e5 .accordionItemExpandCollapseLast_248167d663 {\n border-bottom: none;\n}");export{e as default};
1
+ var e={accordion:"accordion_67f9a90c9b",accordionItemExpandCollapse:"accordionItemExpandCollapse_af14af5153",accordionItemExpandCollapseLast:"accordionItemExpandCollapseLast_bcf776a8bc"};!function(e){const o="s_id-0e4aa6b3ed9f_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+o))return;const a=document.createElement("style");a.id=o,n.firstChild?n.insertBefore(a,n.firstChild):n.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[o]=e)}(".accordion_67f9a90c9b {\n height: fit-content;\n border: 1px solid var(--ui-border-color);\n box-sizing: border-box;\n border-radius: var(--border-radius-small);\n}\n\n.accordion_67f9a90c9b .accordionItemExpandCollapse_af14af5153 {\n border-radius: 0;\n border-top: none;\n border-inline: none;\n border-color: var(--ui-border-color);\n}\n\n.accordion_67f9a90c9b .accordionItemExpandCollapseLast_bcf776a8bc {\n border-bottom: none;\n}");export{e as default};
2
2
  //# sourceMappingURL=Accordion.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var n={alertBanner:"alertBanner_3ca1140fc8",primary:"primary_8fb66facd1",positive:"positive_941ea58292",negative:"negative_3b31fcf429",dark:"dark_5e4864169f",warning:"warning_359b750d3c",closeBtn:"closeBtn_7311776d42",content:"content_5ab3acbc1b",closeButtonWrapper:"closeButtonWrapper_cd0e82ed04",ellipsis:"ellipsis_b0390866a3",contentItem:"contentItem_c9b30526dd",contentItemText:"contentItemText_d44d7da916"};!function(n){const e="s_id-d6894f952adc_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const o=document.createElement("style");o.id=e,t.firstChild?t.insertBefore(o,t.firstChild):t.appendChild(o),o.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".alertBanner_3ca1140fc8 {\n height: 40px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n}\n\n.primary_8fb66facd1 {\n background-color: var(--primary-color);\n}\n\n.positive_941ea58292 {\n background-color: var(--positive-color);\n}\n\n.negative_3b31fcf429 {\n background-color: var(--negative-color);\n}\n\n.dark_5e4864169f {\n background-color: var(--inverted-color-background);\n}\n\n.warning_359b750d3c {\n background-color: var(--warning-color);\n color: var(--fixed-dark-color);\n}\n\n.warning_359b750d3c .closeBtn_7311776d42 {\n color: var(--fixed-dark-color);\n}\n\n.content_5ab3acbc1b {\n flex: 1 1 auto;\n display: flex;\n height: 100%;\n min-width: 0;\n align-items: center;\n justify-content: center;\n padding-inline-start: var(--space-16);\n}\n\n.closeButtonWrapper_cd0e82ed04 {\n flex: 0 0 40px;\n position: relative;\n height: 100%;\n min-width: 0;\n}\n\n.closeBtn_7311776d42 {\n position: absolute;\n inset-inline-end: 4px;\n top: 4px;\n}\n\n.ellipsis_b0390866a3 {\n flex: 0 1 auto;\n}\n\n.contentItem_c9b30526dd {\n flex: 0 0 auto;\n min-width: 0;\n}\n\n.contentItemText_d44d7da916 {\n flex: 0 1 auto;\n min-width: 0;\n}");export{n as default};
1
+ var n={alertBanner:"alertBanner_922add5577",primary:"primary_23e3d53e4b",positive:"positive_3f2a48cd87",negative:"negative_b09c32452a",dark:"dark_8fd8b3b6be",warning:"warning_34ecc1aba3",closeBtn:"closeBtn_664508972b",content:"content_b915c9ff22",closeButtonWrapper:"closeButtonWrapper_513cbdf8f5",ellipsis:"ellipsis_afda77a070",contentItem:"contentItem_ae9676167a",contentItemText:"contentItemText_df59997e3b"};!function(n){const e="s_id-d6894f952adc_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const a=document.createElement("style");a.id=e,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".alertBanner_922add5577 {\n height: 40px;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n}\n\n.primary_23e3d53e4b {\n background-color: var(--primary-color);\n}\n\n.positive_3f2a48cd87 {\n background-color: var(--positive-color);\n}\n\n.negative_b09c32452a {\n background-color: var(--negative-color);\n}\n\n.dark_8fd8b3b6be {\n background-color: var(--inverted-color-background);\n}\n\n.warning_34ecc1aba3 {\n background-color: var(--warning-color);\n color: var(--fixed-dark-color);\n}\n\n.warning_34ecc1aba3 .closeBtn_664508972b {\n color: var(--fixed-dark-color);\n}\n\n.content_b915c9ff22 {\n flex: 1 1 auto;\n display: flex;\n height: 100%;\n min-width: 0;\n align-items: center;\n justify-content: center;\n padding-inline-start: var(--space-16);\n}\n\n.closeButtonWrapper_513cbdf8f5 {\n flex: 0 0 40px;\n position: relative;\n height: 100%;\n min-width: 0;\n}\n\n.closeBtn_664508972b {\n position: absolute;\n inset-inline-end: 4px;\n top: 4px;\n}\n\n.ellipsis_afda77a070 {\n flex: 0 1 auto;\n}\n\n.contentItem_ae9676167a {\n flex: 0 0 auto;\n min-width: 0;\n}\n\n.contentItemText_df59997e3b {\n flex: 0 1 auto;\n min-width: 0;\n}");export{n as default};
2
2
  //# sourceMappingURL=AlertBanner.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={bannerButton:"bannerButton_5769c9eb6e",darkBackground:"darkBackground_5769c9eb6e",marginLeft:"marginLeft_717e3c11ad"};!function(e){const n="s_id-35a7e70934a8_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".bannerButton_5769c9eb6e {\n -webkit-font-smoothing: auto;\n -moz-osx-font-smoothing: auto;\n}\n\n.dark-app-theme .darkBackground_5769c9eb6e .bannerButton_5769c9eb6e {\n background-color: var(--dark-background-color);\n}\n\n.marginLeft_717e3c11ad {\n margin-inline-start: var(--space-8);\n}");export{e as default};
1
+ var e={bannerButton:"bannerButton_44672ec40c",darkBackground:"darkBackground_44672ec40c",marginLeft:"marginLeft_20772641c4"};!function(e){const n="s_id-35a7e70934a8_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".bannerButton_44672ec40c {\n -webkit-font-smoothing: auto;\n -moz-osx-font-smoothing: auto;\n}\n\n.dark-app-theme .darkBackground_44672ec40c .bannerButton_44672ec40c {\n background-color: var(--dark-background-color);\n}\n\n.marginLeft_20772641c4 {\n margin-inline-start: var(--space-8);\n}");export{e as default};
2
2
  //# sourceMappingURL=AlertBannerButton.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var n={bannerLink:"bannerLink_55a162c750",bannerLinkTextColorOnPrimary:"bannerLinkTextColorOnPrimary_b5d568f664",bannerLinkTextColorOnInverted:"bannerLinkTextColorOnInverted_f5ed0dde8f",marginLeft:"marginLeft_717e3c11ad"};!function(n){const e="s_id-b8e9178179b1_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const r=document.createElement("style");r.id=e,t.firstChild?t.insertBefore(r,t.firstChild):t.appendChild(r),r.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".bannerLink_55a162c750 {\n text-decoration: underline;\n -webkit-font-smoothing: auto;\n -moz-osx-font-smoothing: auto;\n}\n\n.bannerLinkTextColorOnPrimary_b5d568f664 {\n color: var(--text-color-on-primary);\n}\n\n.bannerLinkTextColorOnInverted_f5ed0dde8f {\n color: var(--text-color-on-inverted);\n}\n\n.marginLeft_717e3c11ad {\n margin-inline-start: var(--space-8);\n}");export{n as default};
1
+ var n={bannerLink:"bannerLink_1fdb1bcfc1",bannerLinkTextColorOnPrimary:"bannerLinkTextColorOnPrimary_6d29f74952",bannerLinkTextColorOnInverted:"bannerLinkTextColorOnInverted_0de188ece8",marginLeft:"marginLeft_20772641c4"};!function(n){const e="s_id-b8e9178179b1_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const r=document.createElement("style");r.id=e,t.firstChild?t.insertBefore(r,t.firstChild):t.appendChild(r),r.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".bannerLink_1fdb1bcfc1 {\n text-decoration: underline;\n -webkit-font-smoothing: auto;\n -moz-osx-font-smoothing: auto;\n}\n\n.bannerLinkTextColorOnPrimary_6d29f74952 {\n color: var(--text-color-on-primary);\n}\n\n.bannerLinkTextColorOnInverted_0de188ece8 {\n color: var(--text-color-on-inverted);\n}\n\n.marginLeft_20772641c4 {\n margin-inline-start: var(--space-8);\n}");export{n as default};
2
2
  //# sourceMappingURL=AlertBannerLink.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={bannerText:"bannerText_2fd5d49e5b",marginLeft:"marginLeft_717e3c11ad"};!function(e){const n="s_id-306a220e9849_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const d=document.createElement("style");d.id=n,t.firstChild?t.insertBefore(d,t.firstChild):t.appendChild(d),d.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".bannerText_2fd5d49e5b {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.marginLeft_717e3c11ad {\n margin-inline-start: var(--space-8);\n}");export{e as default};
1
+ var e={bannerText:"bannerText_711ac3ca20",marginLeft:"marginLeft_20772641c4"};!function(e){const n="s_id-306a220e9849_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".bannerText_711ac3ca20 {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.marginLeft_20772641c4 {\n margin-inline-start: var(--space-8);\n}");export{e as default};
2
2
  //# sourceMappingURL=AlertBannerText.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var n={attention:"attention_d6d28944f1",animate:"animate_e980c98939",attentionBoxAnimation:"attentionBoxAnimation_7faf0450fa",primary:"primary_e04dab3efd",positive:"positive_80c0f43e7a",negative:"negative_159a86b4c6",warning:"warning_9a1a6b8a7b",neutral:"neutral_b0c34351c1"};!function(n){const e="s_id-4a6eadcbcb7d_4_5_8";if("undefined"!=typeof document){const a=document.head||document.getElementsByTagName("head")[0];if(a.querySelector("#"+e))return;const t=document.createElement("style");t.id=e,a.firstChild?a.insertBefore(t,a.firstChild):a.appendChild(t),t.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}("@keyframes attentionBoxAnimation_7faf0450fa {\n 0% {\n opacity: 0;\n transform: translateY(-10px);\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.attention_d6d28944f1 {\n width: 100%;\n border-radius: var(--border-radius-medium);\n padding: var(--space-12) var(--space-16);\n position: relative;\n overflow: hidden;\n}\n.attention_d6d28944f1.animate_e980c98939 {\n animation: attentionBoxAnimation_7faf0450fa 200ms var(--motion-timing-transition);\n}\n.attention_d6d28944f1.primary_e04dab3efd {\n background-color: var(--primary-selected-color);\n}\n.attention_d6d28944f1.positive_80c0f43e7a {\n background-color: var(--positive-color-selected);\n}\n.attention_d6d28944f1.negative_159a86b4c6 {\n background-color: var(--negative-color-selected);\n}\n.attention_d6d28944f1.warning_9a1a6b8a7b {\n background-color: var(--warning-color-selected);\n}\n.attention_d6d28944f1.neutral_b0c34351c1 {\n background-color: var(--allgrey-background-color);\n}");export{n as default};
1
+ var n={attention:"attention_edeba328ba",animate:"animate_e6d70f529c",attentionBoxAnimation:"attentionBoxAnimation_0d401abdb0",primary:"primary_bc311732b5",positive:"positive_c21d6f93ee",negative:"negative_1052091009",warning:"warning_842a9db73d",neutral:"neutral_32ea8bbbad"};!function(n){const e="s_id-4a6eadcbcb7d_4_5_9";if("undefined"!=typeof document){const a=document.head||document.getElementsByTagName("head")[0];if(a.querySelector("#"+e))return;const t=document.createElement("style");t.id=e,a.firstChild?a.insertBefore(t,a.firstChild):a.appendChild(t),t.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}("@keyframes attentionBoxAnimation_0d401abdb0 {\n 0% {\n opacity: 0;\n transform: translateY(-10px);\n }\n 50% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n.attention_edeba328ba {\n width: 100%;\n border-radius: var(--border-radius-medium);\n padding: var(--space-12) var(--space-16);\n position: relative;\n overflow: hidden;\n}\n.attention_edeba328ba.animate_e6d70f529c {\n animation: attentionBoxAnimation_0d401abdb0 200ms var(--motion-timing-transition);\n}\n.attention_edeba328ba.primary_bc311732b5 {\n background-color: var(--primary-selected-color);\n}\n.attention_edeba328ba.positive_c21d6f93ee {\n background-color: var(--positive-color-selected);\n}\n.attention_edeba328ba.negative_1052091009 {\n background-color: var(--negative-color-selected);\n}\n.attention_edeba328ba.warning_842a9db73d {\n background-color: var(--warning-color-selected);\n}\n.attention_edeba328ba.neutral_32ea8bbbad {\n background-color: var(--allgrey-background-color);\n}");export{n as default};
2
2
  //# sourceMappingURL=AttentionBox.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={closeButton:"closeButton_66af1649fd"};!function(e){const t="s_id-979f8aeb619b_4_5_8";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const o=document.createElement("style");o.id=t,n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".closeButton_66af1649fd {\n flex-shrink: 0;\n}\n.closeButton_66af1649fd:hover {\n background-color: var(--primary-background-hover-color);\n}");export{e as default};
1
+ var e={closeButton:"closeButton_6657513141"};!function(e){const t="s_id-979f8aeb619b_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const o=document.createElement("style");o.id=t,n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".closeButton_6657513141 {\n flex-shrink: 0;\n}\n.closeButton_6657513141:hover {\n background-color: var(--primary-background-hover-color);\n}");export{e as default};
2
2
  //# sourceMappingURL=AttentionBoxCloseButton.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={icon:"icon_d895a41a0c"};!function(e){const t="s_id-55a80ba34ba3_4_5_8";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const d=document.createElement("style");d.id=t,n.firstChild?n.insertBefore(d,n.firstChild):n.appendChild(d),d.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".icon_d895a41a0c {\n color: var(--primary-text-color);\n flex-shrink: 0;\n}");export{e as default};
1
+ var e={icon:"icon_28e8762413"};!function(e){const t="s_id-55a80ba34ba3_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const o=document.createElement("style");o.id=t,n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".icon_28e8762413 {\n color: var(--primary-text-color);\n flex-shrink: 0;\n}");export{e as default};
2
2
  //# sourceMappingURL=AttentionBoxLeadingIcon.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var e={attentionBoxLink:"attentionBoxLink_d346b1f203"};!function(e){const t="s_id-f7cefb69d475_4_5_8";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const o=document.createElement("style");o.id=t,n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("a.attentionBoxLink_d346b1f203 {\n color: var(--primary-text-color);\n text-decoration: underline;\n}");export{e as default};
1
+ var e={attentionBoxLink:"attentionBoxLink_2fbd66f2a0"};!function(e){const t="s_id-f7cefb69d475_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const o=document.createElement("style");o.id=t,n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("a.attentionBoxLink_2fbd66f2a0 {\n color: var(--primary-text-color);\n text-decoration: underline;\n}");export{e as default};
2
2
  //# sourceMappingURL=AttentionBoxLink.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var n={container:"container_0cddfb48eb",mainContentGroup:"mainContentGroup_8ac16b32fd",leadingIcon:"leadingIcon_c7f84ba1d0",actionsGroup:"actionsGroup_457ec3fac5"};!function(n){const e="s_id-2f71fab0a877_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const a=document.createElement("style");a.id=e,t.firstChild?t.insertBefore(a,t.firstChild):t.appendChild(a),a.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".container_0cddfb48eb {\n gap: var(--space-32);\n}\n\n.mainContentGroup_8ac16b32fd {\n min-width: 0;\n}\n\n.leadingIcon_c7f84ba1d0 {\n align-self: flex-start;\n}\n\n.actionsGroup_457ec3fac5 {\n gap: var(--space-12);\n}");export{n as default};
1
+ var n={container:"container_0b83fac841",mainContentGroup:"mainContentGroup_5a37c08e6a",leadingIcon:"leadingIcon_dc03b5848f",actionsGroup:"actionsGroup_5093a61df0"};!function(n){const e="s_id-2f71fab0a877_4_5_9";if("undefined"!=typeof document){const a=document.head||document.getElementsByTagName("head")[0];if(a.querySelector("#"+e))return;const t=document.createElement("style");t.id=e,a.firstChild?a.insertBefore(t,a.firstChild):a.appendChild(t),t.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".container_0b83fac841 {\n gap: var(--space-32);\n}\n\n.mainContentGroup_5a37c08e6a {\n min-width: 0;\n}\n\n.leadingIcon_dc03b5848f {\n align-self: flex-start;\n}\n\n.actionsGroup_5093a61df0 {\n gap: var(--space-12);\n}");export{n as default};
2
2
  //# sourceMappingURL=AttentionBoxCompact.module.scss.js.map
@@ -1,2 +1,2 @@
1
- var n={container:"container_3f105eb84c",icon:"icon_7a2a26de2d",title:"title_5c6a47a59f",text:"text_a0e95e1c29",actions:"actions_249b57584d",closeButton:"closeButton_0f80f98a9d",hasIcon:"hasIcon_31f08285e8",hasCloseButton:"hasCloseButton_729541d8c9",hasTitle:"hasTitle_6e9e9094e7"};!function(n){const e="s_id-d1aa0b2532e6_4_5_8";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const o=document.createElement("style");o.id=e,t.firstChild?t.insertBefore(o,t.firstChild):t.appendChild(o),o.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".container_3f105eb84c {\n --grid-columns: auto 1fr auto;\n display: grid;\n gap: var(--space-4);\n width: 100%;\n grid-template-columns: var(--grid-columns);\n}\n.container_3f105eb84c .icon_7a2a26de2d {\n grid-column: 1;\n grid-row: 1;\n align-self: center;\n}\n.container_3f105eb84c .title_5c6a47a59f {\n grid-row: 1;\n grid-column: 2;\n align-self: center;\n}\n.container_3f105eb84c .text_a0e95e1c29,\n.container_3f105eb84c .actions_249b57584d {\n grid-column: 2/-1;\n}\n.container_3f105eb84c .text_a0e95e1c29 {\n grid-row: 2;\n min-width: 0;\n margin-inline-end: var(--space-8);\n}\n.container_3f105eb84c .closeButton_0f80f98a9d {\n grid-row: 1;\n grid-column: 3;\n align-self: start;\n}\n.container_3f105eb84c .actions_249b57584d {\n grid-row: 3;\n margin-block-start: var(--space-8);\n}\n.container_3f105eb84c:not(.hasIcon_31f08285e8) {\n --grid-columns: 1fr auto;\n}\n.container_3f105eb84c:not(.hasIcon_31f08285e8):not(.hasCloseButton_729541d8c9) {\n --grid-columns: 1fr;\n}\n.container_3f105eb84c:not(.hasIcon_31f08285e8) .title_5c6a47a59f {\n grid-column: 1;\n}\n.container_3f105eb84c:not(.hasIcon_31f08285e8) .text_a0e95e1c29,\n.container_3f105eb84c:not(.hasIcon_31f08285e8) .actions_249b57584d {\n grid-column: 1/-1;\n}\n.container_3f105eb84c:not(.hasIcon_31f08285e8) .closeButton_0f80f98a9d {\n grid-column: 2;\n}\n.container_3f105eb84c:not(.hasCloseButton_729541d8c9) {\n --grid-columns: auto 1fr;\n}\n.container_3f105eb84c:not(.hasTitle_6e9e9094e7) .icon_7a2a26de2d {\n align-self: start;\n}\n.container_3f105eb84c:not(.hasTitle_6e9e9094e7) .text_a0e95e1c29 {\n grid-row: 1;\n grid-column-end: -2;\n}\n.container_3f105eb84c:not(.hasTitle_6e9e9094e7) .closeButton_0f80f98a9d {\n margin-block-start: -1px;\n}\n.container_3f105eb84c:not(.hasTitle_6e9e9094e7) .actions_249b57584d {\n grid-row: 2;\n}");export{n as default};
1
+ var n={container:"container_1ec7164919",icon:"icon_0cb17f298c",title:"title_073d89fa0b",text:"text_bd456eb845",actions:"actions_86da4dbc79",closeButton:"closeButton_3d70d65ce9",hasIcon:"hasIcon_584af4b31f",hasCloseButton:"hasCloseButton_d119e2f27d",hasTitle:"hasTitle_f93c212a92"};!function(n){const e="s_id-d1aa0b2532e6_4_5_9";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+e))return;const c=document.createElement("style");c.id=e,t.firstChild?t.insertBefore(c,t.firstChild):t.appendChild(c),c.appendChild(document.createTextNode(n))}else globalThis.injectedStyles&&(globalThis.injectedStyles[e]=n)}(".container_1ec7164919 {\n --grid-columns: auto 1fr auto;\n display: grid;\n gap: var(--space-4);\n width: 100%;\n grid-template-columns: var(--grid-columns);\n}\n.container_1ec7164919 .icon_0cb17f298c {\n grid-column: 1;\n grid-row: 1;\n align-self: center;\n}\n.container_1ec7164919 .title_073d89fa0b {\n grid-row: 1;\n grid-column: 2;\n align-self: center;\n}\n.container_1ec7164919 .text_bd456eb845,\n.container_1ec7164919 .actions_86da4dbc79 {\n grid-column: 2/-1;\n}\n.container_1ec7164919 .text_bd456eb845 {\n grid-row: 2;\n min-width: 0;\n margin-inline-end: var(--space-8);\n}\n.container_1ec7164919 .closeButton_3d70d65ce9 {\n grid-row: 1;\n grid-column: 3;\n align-self: start;\n}\n.container_1ec7164919 .actions_86da4dbc79 {\n grid-row: 3;\n margin-block-start: var(--space-8);\n}\n.container_1ec7164919:not(.hasIcon_584af4b31f) {\n --grid-columns: 1fr auto;\n}\n.container_1ec7164919:not(.hasIcon_584af4b31f):not(.hasCloseButton_d119e2f27d) {\n --grid-columns: 1fr;\n}\n.container_1ec7164919:not(.hasIcon_584af4b31f) .title_073d89fa0b {\n grid-column: 1;\n}\n.container_1ec7164919:not(.hasIcon_584af4b31f) .text_bd456eb845,\n.container_1ec7164919:not(.hasIcon_584af4b31f) .actions_86da4dbc79 {\n grid-column: 1/-1;\n}\n.container_1ec7164919:not(.hasIcon_584af4b31f) .closeButton_3d70d65ce9 {\n grid-column: 2;\n}\n.container_1ec7164919:not(.hasCloseButton_d119e2f27d) {\n --grid-columns: auto 1fr;\n}\n.container_1ec7164919:not(.hasTitle_f93c212a92) .icon_0cb17f298c {\n align-self: start;\n}\n.container_1ec7164919:not(.hasTitle_f93c212a92) .text_bd456eb845 {\n grid-row: 1;\n grid-column-end: -2;\n}\n.container_1ec7164919:not(.hasTitle_f93c212a92) .closeButton_3d70d65ce9 {\n margin-block-start: -1px;\n}\n.container_1ec7164919:not(.hasTitle_f93c212a92) .actions_86da4dbc79 {\n grid-row: 2;\n}");export{n as default};
2
2
  //# sourceMappingURL=AttentionBoxDefault.module.scss.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarGroup.js","sources":["../../../../src/components/AvatarGroup/AvatarGroup.tsx"],"sourcesContent":["import React, { type ReactElement, useMemo } from \"react\";\nimport cx from \"classnames\";\nimport { type AvatarProps } from \"../Avatar/Avatar\";\nimport AvatarGroupCounter from \"./AvatarGroupCounter\";\nimport type VibeComponentProps from \"../../types/VibeComponentProps\";\nimport { type AvatarSize, type AvatarType } from \"../Avatar/Avatar.types\";\nimport { avatarOnClick } from \"./AvatarGroupHelper\";\nimport { type TooltipProps } from \"@vibe/tooltip\";\nimport styles from \"./AvatarGroup.module.scss\";\nimport { type AvatarGroupCounterVisualProps } from \"./AvatarGroup.types\";\nimport { ComponentVibeId } from \"../../tests/constants\";\n\nexport interface AvatarGroupProps extends VibeComponentProps {\n /**\n * Class name applied to each avatar.\n */\n avatarClassName?: string;\n /**\n * The avatars displayed in the group.\n */\n children?: ReactElement<AvatarProps> | ReactElement<AvatarProps>[];\n /**\n * The size of the avatars in the group.\n */\n size?: AvatarSize;\n /**\n * The type of the avatars in the group.\n */\n type?: AvatarType;\n /**\n * The maximum number of avatars displayed before showing a counter.\n */\n max?: number;\n /**\n * Props for customizing the counter display.\n */\n counterProps?: AvatarGroupCounterVisualProps;\n /**\n * Props passed to the Tooltip component. See full options in the [Tooltip documentation](https://vibe.monday.com/?path=/docs/components-tooltip--docs).\n */\n counterTooltipCustomProps?: Partial<TooltipProps>;\n /**\n * If true, the counter tooltip uses a virtualized list for performance optimization.\n */\n counterTooltipIsVirtualizedList?: boolean;\n /**\n * If true, the component is disabled and non-interactive.\n */\n disabled?: boolean;\n}\n\nconst AvatarGroup: React.FC<AvatarGroupProps> = ({\n className,\n avatarClassName,\n id,\n children,\n size,\n type,\n max = 5,\n counterProps,\n counterTooltipCustomProps,\n counterTooltipIsVirtualizedList = false,\n disabled\n}) => {\n const { displayAvatars, counterTooltipAvatars } = useMemo(() => {\n if (!children) {\n return {};\n }\n const childrenArray = Array.isArray(children) ? children : [children];\n return {\n displayAvatars: childrenArray.slice(0, max).map((avatar, index) => {\n return React.cloneElement(avatar, {\n key: index,\n ...avatar?.props,\n size: size || avatar?.props?.size,\n type: type || avatar?.props?.type,\n className: cx(styles.avatarContainer, avatarClassName),\n onClick: (event: React.MouseEvent | React.KeyboardEvent) => avatarOnClick(event, avatar.props),\n disabled\n });\n }),\n counterTooltipAvatars: childrenArray.slice(max)\n };\n }, [avatarClassName, children, disabled, max, size, type]);\n\n if (!children) {\n return null;\n }\n\n return (\n <div className={cx(styles.avatarGroupContainer, className)} id={id} data-vibe={ComponentVibeId.AVATAR_GROUP}>\n {displayAvatars}\n <AvatarGroupCounter\n counterTooltipAvatars={counterTooltipAvatars}\n counterProps={counterProps}\n counterTooltipCustomProps={counterTooltipCustomProps}\n counterTooltipIsVirtualizedList={counterTooltipIsVirtualizedList}\n size={size}\n type={type}\n disabled={disabled}\n />\n </div>\n );\n};\n\nexport default AvatarGroup;\n"],"names":["AvatarGroup","_ref","className","avatarClassName","id","children","size","type","_ref$max","max","counterProps","counterTooltipCustomProps","_ref$counterTooltipIs","counterTooltipIsVirtualizedList","disabled","_useMemo","useMemo","childrenArray","Array","isArray","displayAvatars","slice","map","avatar","index","React","cloneElement","key","props","_a","_b","cx","styles","avatarContainer","onClick","event","avatarOnClick","counterTooltipAvatars","createElement","avatarGroupContainer","ComponentVibeId","AVATAR_GROUP","AvatarGroupCounter"],"mappings":"kQAmDA,IAAMA,EAA0C,SAA/BC,GAYZ,IAXHC,EAASD,EAATC,UACAC,EAAeF,EAAfE,gBACAC,EAAEH,EAAFG,GACAC,EAAQJ,EAARI,SACAC,EAAIL,EAAJK,KACAC,EAAIN,EAAJM,KAAIC,EAAAP,EACJQ,IAAAA,OAAM,IAAHD,EAAG,EAACA,EACPE,EAAYT,EAAZS,aACAC,EAAyBV,EAAzBU,0BAAyBC,EAAAX,EACzBY,gCAAAA,OAAkC,IAAHD,GAAQA,EACvCE,EAAQb,EAARa,SAEAC,EAAkDC,GAAQ,WACxD,IAAKX,EACH,MAAO,GAET,IAAMY,EAAgBC,MAAMC,QAAQd,GAAYA,EAAW,CAACA,GAC5D,MAAO,CACLe,eAAgBH,EAAcI,MAAM,EAAGZ,GAAKa,KAAI,SAACC,EAAQC,WACvD,OAAOC,EAAMC,aAAaH,+BACxBI,IAAKH,GACFD,aAAA,EAAAA,EAAQK,OAAK,CAChBtB,KAAMA,YAAQuB,EAAAN,aAAA,EAAAA,EAAQK,4BAAOtB,MAC7BC,KAAMA,YAAQuB,EAAAP,aAAA,EAAAA,EAAQK,4BAAOrB,MAC7BL,UAAW6B,EAAGC,EAAOC,gBAAiB9B,GACtC+B,QAAS,SAACC,GAA6C,OAAKC,EAAcD,EAAOZ,EAAOK,MAAM,EAC9Fd,SAAAA,IAEJ,IACAuB,sBAAuBpB,EAAcI,MAAMZ,GAE/C,GAAG,CAACN,EAAiBE,EAAUS,EAAUL,EAAKH,EAAMC,IAnB5Ca,EAAcL,EAAdK,eAAgBiB,EAAqBtB,EAArBsB,sBAqBxB,OAAKhC,EAKHoB,EAAKa,cAAA,MAAA,CAAApC,UAAW6B,EAAGC,EAAOO,qBAAsBrC,GAAYE,GAAIA,EAAe,YAAAoC,EAAgBC,cAC5FrB,EACDK,EAAAa,cAACI,EAAkB,CACjBL,sBAAuBA,EACvB3B,aAAcA,EACdC,0BAA2BA,EAC3BE,gCAAiCA,EACjCP,KAAMA,EACNC,KAAMA,EACNO,SAAUA,KAbP,IAiBX"}
1
+ {"version":3,"file":"AvatarGroup.js","sources":["../../../../src/components/AvatarGroup/AvatarGroup.tsx"],"sourcesContent":["import React, { type ReactElement, useMemo } from \"react\";\nimport cx from \"classnames\";\nimport { type AvatarProps, type AvatarSize, type AvatarType } from \"@vibe/avatar\";\nimport AvatarGroupCounter from \"./AvatarGroupCounter\";\nimport type VibeComponentProps from \"../../types/VibeComponentProps\";\nimport { avatarOnClick } from \"./AvatarGroupHelper\";\nimport { type TooltipProps } from \"@vibe/tooltip\";\nimport styles from \"./AvatarGroup.module.scss\";\nimport { type AvatarGroupCounterVisualProps } from \"./AvatarGroup.types\";\nimport { ComponentVibeId } from \"../../tests/constants\";\n\nexport interface AvatarGroupProps extends VibeComponentProps {\n /**\n * Class name applied to each avatar.\n */\n avatarClassName?: string;\n /**\n * The avatars displayed in the group.\n */\n children?: ReactElement<AvatarProps> | ReactElement<AvatarProps>[];\n /**\n * The size of the avatars in the group.\n */\n size?: AvatarSize;\n /**\n * The type of the avatars in the group.\n */\n type?: AvatarType;\n /**\n * The maximum number of avatars displayed before showing a counter.\n */\n max?: number;\n /**\n * Props for customizing the counter display.\n */\n counterProps?: AvatarGroupCounterVisualProps;\n /**\n * Props passed to the Tooltip component. See full options in the [Tooltip documentation](https://vibe.monday.com/?path=/docs/components-tooltip--docs).\n */\n counterTooltipCustomProps?: Partial<TooltipProps>;\n /**\n * If true, the counter tooltip uses a virtualized list for performance optimization.\n */\n counterTooltipIsVirtualizedList?: boolean;\n /**\n * If true, the component is disabled and non-interactive.\n */\n disabled?: boolean;\n}\n\nconst AvatarGroup: React.FC<AvatarGroupProps> = ({\n className,\n avatarClassName,\n id,\n children,\n size,\n type,\n max = 5,\n counterProps,\n counterTooltipCustomProps,\n counterTooltipIsVirtualizedList = false,\n disabled\n}) => {\n const { displayAvatars, counterTooltipAvatars } = useMemo(() => {\n if (!children) {\n return {};\n }\n const childrenArray = Array.isArray(children) ? children : [children];\n return {\n displayAvatars: childrenArray.slice(0, max).map((avatar, index) => {\n return React.cloneElement(avatar, {\n key: index,\n ...avatar?.props,\n size: size || avatar?.props?.size,\n type: type || avatar?.props?.type,\n className: cx(styles.avatarContainer, avatarClassName),\n onClick: (event: React.MouseEvent | React.KeyboardEvent) => avatarOnClick(event, avatar.props),\n disabled\n });\n }),\n counterTooltipAvatars: childrenArray.slice(max)\n };\n }, [avatarClassName, children, disabled, max, size, type]);\n\n if (!children) {\n return null;\n }\n\n return (\n <div className={cx(styles.avatarGroupContainer, className)} id={id} data-vibe={ComponentVibeId.AVATAR_GROUP}>\n {displayAvatars}\n <AvatarGroupCounter\n counterTooltipAvatars={counterTooltipAvatars}\n counterProps={counterProps}\n counterTooltipCustomProps={counterTooltipCustomProps}\n counterTooltipIsVirtualizedList={counterTooltipIsVirtualizedList}\n size={size}\n type={type}\n disabled={disabled}\n />\n </div>\n );\n};\n\nexport default AvatarGroup;\n"],"names":["AvatarGroup","_ref","className","avatarClassName","id","children","size","type","_ref$max","max","counterProps","counterTooltipCustomProps","_ref$counterTooltipIs","counterTooltipIsVirtualizedList","disabled","_useMemo","useMemo","childrenArray","Array","isArray","displayAvatars","slice","map","avatar","index","React","cloneElement","key","props","_a","_b","cx","styles","avatarContainer","onClick","event","avatarOnClick","counterTooltipAvatars","createElement","avatarGroupContainer","ComponentVibeId","AVATAR_GROUP","AvatarGroupCounter"],"mappings":"kQAkDA,IAAMA,EAA0C,SAA/BC,GAYZ,IAXHC,EAASD,EAATC,UACAC,EAAeF,EAAfE,gBACAC,EAAEH,EAAFG,GACAC,EAAQJ,EAARI,SACAC,EAAIL,EAAJK,KACAC,EAAIN,EAAJM,KAAIC,EAAAP,EACJQ,IAAAA,OAAM,IAAHD,EAAG,EAACA,EACPE,EAAYT,EAAZS,aACAC,EAAyBV,EAAzBU,0BAAyBC,EAAAX,EACzBY,gCAAAA,OAAkC,IAAHD,GAAQA,EACvCE,EAAQb,EAARa,SAEAC,EAAkDC,GAAQ,WACxD,IAAKX,EACH,MAAO,GAET,IAAMY,EAAgBC,MAAMC,QAAQd,GAAYA,EAAW,CAACA,GAC5D,MAAO,CACLe,eAAgBH,EAAcI,MAAM,EAAGZ,GAAKa,KAAI,SAACC,EAAQC,WACvD,OAAOC,EAAMC,aAAaH,+BACxBI,IAAKH,GACFD,aAAA,EAAAA,EAAQK,OAAK,CAChBtB,KAAMA,YAAQuB,EAAAN,aAAA,EAAAA,EAAQK,4BAAOtB,MAC7BC,KAAMA,YAAQuB,EAAAP,aAAA,EAAAA,EAAQK,4BAAOrB,MAC7BL,UAAW6B,EAAGC,EAAOC,gBAAiB9B,GACtC+B,QAAS,SAACC,GAA6C,OAAKC,EAAcD,EAAOZ,EAAOK,MAAM,EAC9Fd,SAAAA,IAEJ,IACAuB,sBAAuBpB,EAAcI,MAAMZ,GAE/C,GAAG,CAACN,EAAiBE,EAAUS,EAAUL,EAAKH,EAAMC,IAnB5Ca,EAAcL,EAAdK,eAAgBiB,EAAqBtB,EAArBsB,sBAqBxB,OAAKhC,EAKHoB,EAAKa,cAAA,MAAA,CAAApC,UAAW6B,EAAGC,EAAOO,qBAAsBrC,GAAYE,GAAIA,EAAe,YAAAoC,EAAgBC,cAC5FrB,EACDK,EAAAa,cAACI,EAAkB,CACjBL,sBAAuBA,EACvB3B,aAAcA,EACdC,0BAA2BA,EAC3BE,gCAAiCA,EACjCP,KAAMA,EACNC,KAAMA,EACNO,SAAUA,KAbP,IAiBX"}
@@ -1,2 +1,2 @@
1
- var e={avatarGroupContainer:"avatarGroupContainer_d985241ff9",avatarContainer:"avatarContainer_82c3bf711e"};!function(e){const n="s_id-34c07868a875_4_5_8";if("undefined"!=typeof document){const a=document.head||document.getElementsByTagName("head")[0];if(a.querySelector("#"+n))return;const t=document.createElement("style");t.id=n,a.firstChild?a.insertBefore(t,a.firstChild):a.appendChild(t),t.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".avatarGroupContainer_d985241ff9 {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n position: relative;\n padding: 0;\n margin: 0;\n}\n\n.avatarContainer_82c3bf711e {\n margin-inline-start: calc(-1 * var(--space-8));\n}");export{e as default};
1
+ var e={avatarGroupContainer:"avatarGroupContainer_2ef00380d7",avatarContainer:"avatarContainer_450a2fd1df"};!function(e){const a="s_id-34c07868a875_4_5_9";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+a))return;const t=document.createElement("style");t.id=a,n.firstChild?n.insertBefore(t,n.firstChild):n.appendChild(t),t.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[a]=e)}(".avatarGroupContainer_2ef00380d7 {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n position: relative;\n padding: 0;\n margin: 0;\n}\n\n.avatarContainer_450a2fd1df {\n margin-inline-start: calc(-1 * var(--space-8));\n}");export{e as default};
2
2
  //# sourceMappingURL=AvatarGroup.module.scss.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarGroupCounter.js","sources":["../../../../src/components/AvatarGroup/AvatarGroupCounter.tsx"],"sourcesContent":["import React, { type ReactElement, useCallback, useRef } from \"react\";\nimport cx from \"classnames\";\nimport { type AvatarProps } from \"../Avatar/Avatar\";\nimport { Counter } from \"@vibe/counter\";\nimport MenuButton from \"../MenuButton/MenuButton\";\nimport Menu from \"../Menu/Menu/Menu\";\nimport AvatarMenuItem from \"../Menu/MenuItem/AvatarMenuItem\";\nimport AvatarGroupCounterTooltipContainer from \"./AvatarGroupCounterTooltipContainer\";\nimport type VibeComponentProps from \"../../types/VibeComponentProps\";\nimport { type AvatarSize, type AvatarType } from \"../Avatar/Avatar.types\";\nimport { getStyle } from \"@vibe/shared\";\nimport { type AvatarGroupCounterVisualProps } from \"./AvatarGroup.types\";\nimport { type TooltipProps } from \"@vibe/tooltip\";\nimport { avatarOnClick } from \"./AvatarGroupHelper\";\nimport styles from \"./AvatarGroupCounter.module.scss\";\nimport { AVATAR_GROUP_COUNTER_AVATAR_SIZE } from \"./AvatarGroupConstants\";\n\nexport interface AvatarGroupCounterProps extends VibeComponentProps {\n /**\n * The list of avatars hidden behind the counter.\n */\n counterTooltipAvatars?: ReactElement<AvatarProps>[];\n /**\n * Props for customizing the counter appearance.\n */\n counterProps?: AvatarGroupCounterVisualProps;\n /**\n * Props for customizing the counter tooltip.\n */\n counterTooltipCustomProps?: Partial<TooltipProps>;\n /**\n * If true, the counter tooltip uses a virtualized list for performance optimization.\n */\n counterTooltipIsVirtualizedList?: boolean;\n /**\n * The size of the counter.\n */\n size?: AvatarSize;\n /**\n * The type of the avatars in the counter.\n */\n type?: AvatarType;\n /**\n * The label of the counter for accessibility.\n */\n counterAriaLabel?: string;\n /**\n * If true, the counter is disabled and non-interactive.\n */\n disabled?: boolean;\n}\n\nconst AvatarGroupCounter: React.FC<AvatarGroupCounterProps> = ({\n counterTooltipAvatars = [],\n counterProps,\n counterTooltipCustomProps,\n counterTooltipIsVirtualizedList = false,\n size = \"medium\",\n type,\n counterAriaLabel,\n disabled\n}: AvatarGroupCounterProps) => {\n const {\n color: counterColor = \"light\",\n count: counterValue = counterTooltipAvatars.length,\n prefix: counterPrefix = \"+\",\n maxDigits: counterMaxDigits = 3,\n ariaLabelItemsName: counterAriaLabelItemsName = \"items\",\n noAnimation,\n dialogContainerSelector,\n tabIndex: counterTabIndex = 0\n } = counterProps || {};\n\n const counterSizeStyle = getStyle(styles, size?.toString());\n const counterColorStyle = styles[counterColor];\n\n const focusPrevPlaceholderRef = useRef(null);\n const focusNextPlaceholderRef = useRef(null);\n const counterContainerRef = useRef(null);\n const counterComponent = useCallback(() => {\n return (\n <Counter\n color={counterColor}\n count={counterValue}\n prefix={counterPrefix}\n maxDigits={counterMaxDigits}\n aria-label={counterAriaLabel ? counterAriaLabel : `Tab for more ${counterAriaLabelItemsName}`}\n noAnimation={noAnimation}\n counterClassName={cx({ [styles.disabled]: disabled })}\n size={size === \"xs\" ? \"xs\" : undefined}\n />\n );\n }, [\n counterAriaLabel,\n counterAriaLabelItemsName,\n counterColor,\n counterMaxDigits,\n counterPrefix,\n counterValue,\n disabled,\n noAnimation\n ]);\n\n if (!counterTooltipAvatars.length && !counterValue) {\n return null;\n }\n\n if (disabled) {\n return (\n <div\n ref={counterContainerRef}\n className={cx(styles.counterContainer, styles.disabled, counterSizeStyle, counterColorStyle)}\n >\n {counterComponent()}\n </div>\n );\n }\n\n const areAvatarsClickable = counterTooltipAvatars.some(a => a.props?.onClick);\n if (areAvatarsClickable) {\n return (\n <MenuButton\n component={counterComponent}\n zIndex={1}\n className={cx(styles.counterContainer, counterSizeStyle, counterColorStyle)}\n aria-label={counterAriaLabel ? counterAriaLabel : `${counterValue} additional ${counterAriaLabelItemsName}`}\n dialogContainerSelector={dialogContainerSelector}\n >\n <Menu id=\"menu\" size=\"medium\" className={styles.menu} focusItemIndexOnMount={0}>\n {counterTooltipAvatars.map((avatar, index) => {\n return (\n // eslint-disable-next-line react/jsx-key\n <AvatarMenuItem\n menuItemProps={{\n key: avatar.props?.id || String(index),\n title: (avatar.props?.tooltipProps?.content as string) || avatar?.props?.[\"aria-label\"],\n onClick: (event: React.MouseEvent | React.KeyboardEvent) => avatarOnClick(event, avatar.props)\n }}\n avatarProps={{\n ...avatar.props,\n customSize: AVATAR_GROUP_COUNTER_AVATAR_SIZE,\n \"aria-label\": \"\",\n tabIndex: -1\n }}\n />\n );\n })}\n </Menu>\n </MenuButton>\n );\n }\n\n return (\n <AvatarGroupCounterTooltipContainer\n focusPrevPlaceholderRef={focusPrevPlaceholderRef}\n focusNextPlaceholderRef={focusNextPlaceholderRef}\n counterContainerRef={counterContainerRef}\n avatars={counterTooltipAvatars}\n counterTooltipCustomProps={counterTooltipCustomProps}\n counterTooltipIsVirtualizedList={counterTooltipIsVirtualizedList}\n type={type}\n >\n <div tabIndex={-1} ref={focusPrevPlaceholderRef} />\n {/* eslint-disable jsx-a11y/no-noninteractive-tabindex */}\n <div\n tabIndex={counterTabIndex}\n className={cx(styles.counterContainer, counterSizeStyle, counterColorStyle)}\n ref={counterContainerRef}\n >\n {/* eslint-enable jsx-a11y/no-noninteractive-tabindex */}\n {counterComponent()}\n <div tabIndex={-1} ref={focusNextPlaceholderRef} />\n </div>\n </AvatarGroupCounterTooltipContainer>\n );\n};\n\nexport default AvatarGroupCounter;\n"],"names":["AvatarGroupCounter","_ref","_ref$counterTooltipAv","counterTooltipAvatars","counterTooltipCustomProps","_ref$counterTooltipIs","counterTooltipIsVirtualizedList","_ref$size","size","type","counterAriaLabel","disabled","_ref2","counterProps","_ref2$color","color","counterColor","_ref2$count","count","counterValue","length","_ref2$prefix","prefix","counterPrefix","_ref2$maxDigits","maxDigits","counterMaxDigits","_ref2$ariaLabelItemsN","ariaLabelItemsName","counterAriaLabelItemsName","noAnimation","dialogContainerSelector","_ref2$tabIndex","tabIndex","counterTabIndex","counterSizeStyle","getStyle","styles","counterColorStyle","focusPrevPlaceholderRef","useRef","focusNextPlaceholderRef","counterContainerRef","counterComponent","useCallback","React","createElement","Counter","concat","counterClassName","cx","_defineProperty","undefined","ref","className","counterContainer","some","a","_a","props","onClick","MenuButton","component","zIndex","Menu","id","menu","focusItemIndexOnMount","map","avatar","index","AvatarMenuItem","menuItemProps","key","String","title","_c","_b","tooltipProps","content","_d","event","avatarOnClick","avatarProps","customSize","AVATAR_GROUP_COUNTER_AVATAR_SIZE","AvatarGroupCounterTooltipContainer","avatars"],"mappings":"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"}
1
+ {"version":3,"file":"AvatarGroupCounter.js","sources":["../../../../src/components/AvatarGroup/AvatarGroupCounter.tsx"],"sourcesContent":["import React, { type ReactElement, useCallback, useRef } from \"react\";\nimport cx from \"classnames\";\nimport { type AvatarProps, type AvatarSize, type AvatarType } from \"@vibe/avatar\";\nimport { Counter } from \"@vibe/counter\";\nimport MenuButton from \"../MenuButton/MenuButton\";\nimport Menu from \"../Menu/Menu/Menu\";\nimport AvatarMenuItem from \"../Menu/MenuItem/AvatarMenuItem\";\nimport AvatarGroupCounterTooltipContainer from \"./AvatarGroupCounterTooltipContainer\";\nimport type VibeComponentProps from \"../../types/VibeComponentProps\";\nimport { getStyle } from \"@vibe/shared\";\nimport { type AvatarGroupCounterVisualProps } from \"./AvatarGroup.types\";\nimport { type TooltipProps } from \"@vibe/tooltip\";\nimport { avatarOnClick } from \"./AvatarGroupHelper\";\nimport styles from \"./AvatarGroupCounter.module.scss\";\nimport { AVATAR_GROUP_COUNTER_AVATAR_SIZE } from \"./AvatarGroupConstants\";\n\nexport interface AvatarGroupCounterProps extends VibeComponentProps {\n /**\n * The list of avatars hidden behind the counter.\n */\n counterTooltipAvatars?: ReactElement<AvatarProps>[];\n /**\n * Props for customizing the counter appearance.\n */\n counterProps?: AvatarGroupCounterVisualProps;\n /**\n * Props for customizing the counter tooltip.\n */\n counterTooltipCustomProps?: Partial<TooltipProps>;\n /**\n * If true, the counter tooltip uses a virtualized list for performance optimization.\n */\n counterTooltipIsVirtualizedList?: boolean;\n /**\n * The size of the counter.\n */\n size?: AvatarSize;\n /**\n * The type of the avatars in the counter.\n */\n type?: AvatarType;\n /**\n * The label of the counter for accessibility.\n */\n counterAriaLabel?: string;\n /**\n * If true, the counter is disabled and non-interactive.\n */\n disabled?: boolean;\n}\n\nconst AvatarGroupCounter: React.FC<AvatarGroupCounterProps> = ({\n counterTooltipAvatars = [],\n counterProps,\n counterTooltipCustomProps,\n counterTooltipIsVirtualizedList = false,\n size = \"medium\",\n type,\n counterAriaLabel,\n disabled\n}: AvatarGroupCounterProps) => {\n const {\n color: counterColor = \"light\",\n count: counterValue = counterTooltipAvatars.length,\n prefix: counterPrefix = \"+\",\n maxDigits: counterMaxDigits = 3,\n ariaLabelItemsName: counterAriaLabelItemsName = \"items\",\n noAnimation,\n dialogContainerSelector,\n tabIndex: counterTabIndex = 0\n } = counterProps || {};\n\n const counterSizeStyle = getStyle(styles, size?.toString());\n const counterColorStyle = styles[counterColor];\n\n const focusPrevPlaceholderRef = useRef(null);\n const focusNextPlaceholderRef = useRef(null);\n const counterContainerRef = useRef(null);\n const counterComponent = useCallback(() => {\n return (\n <Counter\n color={counterColor}\n count={counterValue}\n prefix={counterPrefix}\n maxDigits={counterMaxDigits}\n aria-label={counterAriaLabel ? counterAriaLabel : `Tab for more ${counterAriaLabelItemsName}`}\n noAnimation={noAnimation}\n counterClassName={cx({ [styles.disabled]: disabled })}\n size={size === \"xs\" ? \"xs\" : undefined}\n />\n );\n }, [\n counterAriaLabel,\n counterAriaLabelItemsName,\n counterColor,\n counterMaxDigits,\n counterPrefix,\n counterValue,\n disabled,\n noAnimation\n ]);\n\n if (!counterTooltipAvatars.length && !counterValue) {\n return null;\n }\n\n if (disabled) {\n return (\n <div\n ref={counterContainerRef}\n className={cx(styles.counterContainer, styles.disabled, counterSizeStyle, counterColorStyle)}\n >\n {counterComponent()}\n </div>\n );\n }\n\n const areAvatarsClickable = counterTooltipAvatars.some(a => a.props?.onClick);\n if (areAvatarsClickable) {\n return (\n <MenuButton\n component={counterComponent}\n zIndex={1}\n className={cx(styles.counterContainer, counterSizeStyle, counterColorStyle)}\n aria-label={counterAriaLabel ? counterAriaLabel : `${counterValue} additional ${counterAriaLabelItemsName}`}\n dialogContainerSelector={dialogContainerSelector}\n >\n <Menu id=\"menu\" size=\"medium\" className={styles.menu} focusItemIndexOnMount={0}>\n {counterTooltipAvatars.map((avatar, index) => {\n return (\n // eslint-disable-next-line react/jsx-key\n <AvatarMenuItem\n menuItemProps={{\n key: avatar.props?.id || String(index),\n title: (avatar.props?.tooltipProps?.content as string) || avatar?.props?.[\"aria-label\"],\n onClick: (event: React.MouseEvent | React.KeyboardEvent) => avatarOnClick(event, avatar.props)\n }}\n avatarProps={{\n ...avatar.props,\n customSize: AVATAR_GROUP_COUNTER_AVATAR_SIZE,\n \"aria-label\": \"\",\n tabIndex: -1\n }}\n />\n );\n })}\n </Menu>\n </MenuButton>\n );\n }\n\n return (\n <AvatarGroupCounterTooltipContainer\n focusPrevPlaceholderRef={focusPrevPlaceholderRef}\n focusNextPlaceholderRef={focusNextPlaceholderRef}\n counterContainerRef={counterContainerRef}\n avatars={counterTooltipAvatars}\n counterTooltipCustomProps={counterTooltipCustomProps}\n counterTooltipIsVirtualizedList={counterTooltipIsVirtualizedList}\n type={type}\n >\n <div tabIndex={-1} ref={focusPrevPlaceholderRef} />\n {/* eslint-disable jsx-a11y/no-noninteractive-tabindex */}\n <div\n tabIndex={counterTabIndex}\n className={cx(styles.counterContainer, counterSizeStyle, counterColorStyle)}\n ref={counterContainerRef}\n >\n {/* eslint-enable jsx-a11y/no-noninteractive-tabindex */}\n {counterComponent()}\n <div tabIndex={-1} ref={focusNextPlaceholderRef} />\n </div>\n </AvatarGroupCounterTooltipContainer>\n );\n};\n\nexport default AvatarGroupCounter;\n"],"names":["AvatarGroupCounter","_ref","_ref$counterTooltipAv","counterTooltipAvatars","counterTooltipCustomProps","_ref$counterTooltipIs","counterTooltipIsVirtualizedList","_ref$size","size","type","counterAriaLabel","disabled","_ref2","counterProps","_ref2$color","color","counterColor","_ref2$count","count","counterValue","length","_ref2$prefix","prefix","counterPrefix","_ref2$maxDigits","maxDigits","counterMaxDigits","_ref2$ariaLabelItemsN","ariaLabelItemsName","counterAriaLabelItemsName","noAnimation","dialogContainerSelector","_ref2$tabIndex","tabIndex","counterTabIndex","counterSizeStyle","getStyle","styles","counterColorStyle","focusPrevPlaceholderRef","useRef","focusNextPlaceholderRef","counterContainerRef","counterComponent","useCallback","React","createElement","Counter","concat","counterClassName","cx","_defineProperty","undefined","ref","className","counterContainer","some","a","_a","props","onClick","MenuButton","component","zIndex","Menu","id","menu","focusItemIndexOnMount","map","avatar","index","AvatarMenuItem","menuItemProps","key","String","title","_c","_b","tooltipProps","content","_d","event","avatarOnClick","avatarProps","customSize","AVATAR_GROUP_COUNTER_AVATAR_SIZE","AvatarGroupCounterTooltipContainer","avatars"],"mappings":"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"}