@hitachivantara/uikit-react-core 3.67.18 → 3.68.2

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 (456) hide show
  1. package/dist/Accordion/Accordion.js.map +1 -1
  2. package/dist/ActionBar/ActionBar.js.map +1 -1
  3. package/dist/ActionsGeneric/ActionsGeneric.js.map +1 -1
  4. package/dist/AppSwitcher/Action/Action.js.map +1 -1
  5. package/dist/AppSwitcher/AppSwitcher.js.map +1 -1
  6. package/dist/AppSwitcher/TitleWithTooltip.js.map +1 -1
  7. package/dist/AssetInventory/AssetInventory.js.map +1 -1
  8. package/dist/AssetInventory/CardView/CardView.js.map +1 -1
  9. package/dist/AssetInventory/ListView/ListView.js.map +1 -1
  10. package/dist/AssetInventory/ListView/ListViewCell/ListViewCell.js.map +1 -1
  11. package/dist/AssetInventory/ListView/ListViewCell/styles.js.map +1 -1
  12. package/dist/AssetInventory/ListView/ListViewContext/ListViewContext.js.map +1 -1
  13. package/dist/AssetInventory/ListView/ListViewHeaderRow/ListViewHeaderRow.js.map +1 -1
  14. package/dist/AssetInventory/ListView/ListViewRow/ListViewRow.js.map +1 -1
  15. package/dist/AssetInventory/Multibutton/Multibutton.js.map +1 -1
  16. package/dist/AssetInventory/Search/Search.js.map +1 -1
  17. package/dist/AssetInventory/Sort/Sort.js.map +1 -1
  18. package/dist/AssetInventory/setActionsId.js.map +1 -1
  19. package/dist/Avatar/Avatar.js.map +1 -1
  20. package/dist/Badge/Badge.js.map +1 -1
  21. package/dist/Banner/Banner.js.map +1 -1
  22. package/dist/Banner/BannerWrapper/ActionContainer/ActionContainer.js.map +1 -1
  23. package/dist/Banner/BannerWrapper/ActionContainer/styles.js.map +1 -1
  24. package/dist/Banner/BannerWrapper/BannerContentWrapper.js.map +1 -1
  25. package/dist/Banner/BannerWrapper/MessageContainer/MessageContainer.js.map +1 -1
  26. package/dist/BaseCheckBox/BaseCheckBox.js.map +1 -1
  27. package/dist/BaseDropdown/BaseDropdown.js.map +1 -1
  28. package/dist/BaseDropdown/BaseDropdownContext/BaseDropdownContext.js.map +1 -1
  29. package/dist/BaseInput/BaseInput.js.map +1 -1
  30. package/dist/BaseInput/validations.js.map +1 -1
  31. package/dist/BaseRadio/BaseRadio.js.map +1 -1
  32. package/dist/BaseSwitch/BaseSwitch.js.map +1 -1
  33. package/dist/BreadCrumb/BreadCrumb.js.map +1 -1
  34. package/dist/BreadCrumb/utils.js.map +1 -1
  35. package/dist/BulkActions/BulkActions.js.map +1 -1
  36. package/dist/BulkActions/styles.js.map +1 -1
  37. package/dist/Button/Button.js.map +1 -1
  38. package/dist/Button/materialConfigurarion.js.map +1 -1
  39. package/dist/Button/styles.js.map +1 -1
  40. package/dist/Calendar/Calendar.js.map +1 -1
  41. package/dist/Calendar/CalendarHeader/CalendarHeader.js.map +1 -1
  42. package/dist/Calendar/CalendarNavigation/ComposedNavigation/ComposedNavigation.js.map +1 -1
  43. package/dist/Calendar/CalendarNavigation/MonthSelector/MonthSelector.js.map +1 -1
  44. package/dist/Calendar/CalendarNavigation/Navigation/Navigation.js.map +1 -1
  45. package/dist/Calendar/CalendarWeekLabels/CalendarWeekLabels.js.map +1 -1
  46. package/dist/Calendar/SingleCalendar/CalendarCell.js.map +1 -1
  47. package/dist/Calendar/SingleCalendar/SingleCalendar.js.map +1 -1
  48. package/dist/Calendar/model.js.map +1 -1
  49. package/dist/Calendar/utils.js.map +1 -1
  50. package/dist/Card/Card.js.map +1 -1
  51. package/dist/Card/Content/Content.js.map +1 -1
  52. package/dist/Card/Header/Header.js.map +1 -1
  53. package/dist/Card/Media/Media.js.map +1 -1
  54. package/dist/Card/styles.js.map +1 -1
  55. package/dist/CheckBox/CheckBox.js.map +1 -1
  56. package/dist/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
  57. package/dist/Container/Container.js.map +1 -1
  58. package/dist/DatePicker/DatePicker.js.map +1 -1
  59. package/dist/DatePicker/useVisibleDate.js.map +1 -1
  60. package/dist/DatePicker/utils.js.map +1 -1
  61. package/dist/Dialog/Dialog.js.map +1 -1
  62. package/dist/Dialog/DialogActions/DialogActions.js.map +1 -1
  63. package/dist/Dialog/DialogContent/DialogContent.js.map +1 -1
  64. package/dist/Dialog/DialogTitle/DialogTitle.js.map +1 -1
  65. package/dist/Dialog/styles.js.map +1 -1
  66. package/dist/DropDownMenu/DropDownMenu.js.map +1 -1
  67. package/dist/Dropdown/Dropdown.js.map +1 -1
  68. package/dist/Dropdown/List/List.js.map +1 -1
  69. package/dist/EmptyState/EmptyState.js.map +1 -1
  70. package/dist/FileUploader/DropZone/DropZone.js.map +1 -1
  71. package/dist/FileUploader/File/File.js.map +1 -1
  72. package/dist/FileUploader/FileList/FileList.js.map +1 -1
  73. package/dist/FileUploader/FileUploader.js.map +1 -1
  74. package/dist/FileUploader/Preview/Preview.js.map +1 -1
  75. package/dist/FilterGroup/Counter/Counter.js.map +1 -1
  76. package/dist/FilterGroup/Counter/styles.js.map +1 -1
  77. package/dist/FilterGroup/FilterContent/FilterContent.js.map +1 -1
  78. package/dist/FilterGroup/FilterContent/styles.js.map +1 -1
  79. package/dist/FilterGroup/FilterGroup.js.map +1 -1
  80. package/dist/FilterGroup/FilterGroupContext.js.map +1 -1
  81. package/dist/FilterGroup/LeftPanel/LeftPanel.js.map +1 -1
  82. package/dist/FilterGroup/LeftPanel/styles.js.map +1 -1
  83. package/dist/FilterGroup/RightPanel/RightPanel.js.map +1 -1
  84. package/dist/FilterGroup/RightPanel/styles.js.map +1 -1
  85. package/dist/FilterGroup/styles.js.map +1 -1
  86. package/dist/Focus/Focus.js.map +1 -1
  87. package/dist/Focus/utils.js.map +1 -1
  88. package/dist/Footer/Footer.js.map +1 -1
  89. package/dist/Forms/Adornment/Adornment.js.map +1 -1
  90. package/dist/Forms/CharCounter/CharCounter.js.map +1 -1
  91. package/dist/Forms/FormElement/FormElement.js.map +1 -1
  92. package/dist/Forms/FormElement/context/FormElementContext.js.map +1 -1
  93. package/dist/Forms/FormElement/context/FormElementDescriptorsContext.js.map +1 -1
  94. package/dist/Forms/FormElement/context/FormElementValueContext.js.map +1 -1
  95. package/dist/Forms/FormElement/utils/FormUtils.js.map +1 -1
  96. package/dist/Forms/InfoMessage/InfoMessage.js.map +1 -1
  97. package/dist/Forms/Label/Label.js.map +1 -1
  98. package/dist/Forms/Suggestions/Suggestions.js.map +1 -1
  99. package/dist/Forms/WarningText/WarningText.js.map +1 -1
  100. package/dist/GlobalActions/GlobalActions.js.map +1 -1
  101. package/dist/Grid/Grid.js.map +1 -1
  102. package/dist/Header/Actions/Actions.js.map +1 -1
  103. package/dist/Header/Brand/Brand.js.map +1 -1
  104. package/dist/Header/Header.js.map +1 -1
  105. package/dist/Header/Navigation/MenuBar/MenuBar.js.map +1 -1
  106. package/dist/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
  107. package/dist/Header/Navigation/Navigation.js.map +1 -1
  108. package/dist/Header/Navigation/utils/FocusContext.js.map +1 -1
  109. package/dist/Header/Navigation/utils/SelectionContext.js.map +1 -1
  110. package/dist/Header/Navigation/utils/useSelectionPath.js.map +1 -1
  111. package/dist/Input/Input.js.map +1 -1
  112. package/dist/Kpi/Kpi.js.map +1 -1
  113. package/dist/Link/Link.js.map +1 -1
  114. package/dist/List/List.js +20 -16
  115. package/dist/List/List.js.map +1 -1
  116. package/dist/List/useSelectableList.js.map +1 -1
  117. package/dist/List/utils.js.map +1 -1
  118. package/dist/ListContainer/ListContainer.js.map +1 -1
  119. package/dist/ListContainer/ListContext/ListContext.js.map +1 -1
  120. package/dist/ListContainer/ListItem/ListItem.js.map +1 -1
  121. package/dist/Loading/Loading.js.map +1 -1
  122. package/dist/Login/Login.js.map +1 -1
  123. package/dist/Login/styles.js.map +1 -1
  124. package/dist/MultiButton/MultiButton.js.map +1 -1
  125. package/dist/OverflowTooltip/OverflowTooltip.js.map +1 -1
  126. package/dist/Pagination/Pagination.js.map +1 -1
  127. package/dist/Pagination/Select.js.map +1 -1
  128. package/dist/Pagination/utils.js.map +1 -1
  129. package/dist/Panel/Panel.js.map +1 -1
  130. package/dist/Provider/Provider.js +15 -4
  131. package/dist/Provider/Provider.js.map +1 -1
  132. package/dist/Provider/context.js.map +1 -1
  133. package/dist/Provider/useLocale.js.map +1 -1
  134. package/dist/Radio/Radio.js.map +1 -1
  135. package/dist/RadioGroup/RadioGroup.js.map +1 -1
  136. package/dist/ScrollTo/Horizontal/HorizontalScrollListItem/HorizontalScrollListItem.js.map +1 -1
  137. package/dist/ScrollTo/Horizontal/ScrollToHorizontal.js.map +1 -1
  138. package/dist/ScrollTo/Horizontal/styles.js.map +1 -1
  139. package/dist/ScrollTo/Vertical/ScrollToVertical.js.map +1 -1
  140. package/dist/ScrollTo/Vertical/VerticalScrollListItem/VerticalScrollListItem.js.map +1 -1
  141. package/dist/ScrollTo/Vertical/styles.js.map +1 -1
  142. package/dist/ScrollTo/useScrollTo.js.map +1 -1
  143. package/dist/ScrollTo/withTooltip.js.map +1 -1
  144. package/dist/SelectionList/SelectionList.js.map +1 -1
  145. package/dist/SimpleGrid/SimpleGrid.js.map +1 -1
  146. package/dist/SimpleGrid/styles.js.map +1 -1
  147. package/dist/Slider/Slider.js.map +1 -1
  148. package/dist/Slider/SliderInput/SliderInput.js.map +1 -1
  149. package/dist/Slider/utils.js.map +1 -1
  150. package/dist/Snackbar/Snackbar.js.map +1 -1
  151. package/dist/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js.map +1 -1
  152. package/dist/Snackbar/SnackbarProvider/SnackbarProvider.js.map +1 -1
  153. package/dist/Stack/Stack.js.map +1 -1
  154. package/dist/Switch/Switch.js.map +1 -1
  155. package/dist/Tab/Tab.js.map +1 -1
  156. package/dist/Table/CellWithTooltip/index.js.map +1 -1
  157. package/dist/Table/Header/Header.js.map +1 -1
  158. package/dist/Table/NoData/index.js.map +1 -1
  159. package/dist/Table/NoData/styles.js.map +1 -1
  160. package/dist/Table/Table.js +19 -22
  161. package/dist/Table/Table.js.map +1 -1
  162. package/dist/Table/columnUtils.js.map +1 -1
  163. package/dist/Table/selectTable.js.map +1 -1
  164. package/dist/Table/styles.js.map +1 -1
  165. package/dist/Tabs/Tabs.js.map +1 -1
  166. package/dist/Tag/Tag.js.map +1 -1
  167. package/dist/Tag/styles.js.map +1 -1
  168. package/dist/TagsInput/TagsInput.js.map +1 -1
  169. package/dist/TextArea/TextArea.js.map +1 -1
  170. package/dist/TimePicker/PeriodPicker/PeriodPicker.js.map +1 -1
  171. package/dist/TimePicker/PeriodPicker/index.js.map +1 -1
  172. package/dist/TimePicker/TimePicker.js.map +1 -1
  173. package/dist/TimePicker/UnitTimePicker/UnitTimePicker.js.map +1 -1
  174. package/dist/TimePicker/UnitTimePicker/index.js.map +1 -1
  175. package/dist/TimePicker/timePickerConverter.js.map +1 -1
  176. package/dist/TimePicker/timePickerFormatter.js.map +1 -1
  177. package/dist/TimePicker/timePickerUtils.js.map +1 -1
  178. package/dist/ToggleButton/ToggleButton.js.map +1 -1
  179. package/dist/Tooltip/Tooltip.js.map +1 -1
  180. package/dist/Typography/Typography.js.map +1 -1
  181. package/dist/UserPreferences/Action/Action.js.map +1 -1
  182. package/dist/UserPreferences/Action/styles.js.map +1 -1
  183. package/dist/UserPreferences/Actions/Actions.js.map +1 -1
  184. package/dist/UserPreferences/Options/Group/Group.js.map +1 -1
  185. package/dist/UserPreferences/Options/Label/Label.js.map +1 -1
  186. package/dist/UserPreferences/Options/Option.js.map +1 -1
  187. package/dist/UserPreferences/Options/Options.js.map +1 -1
  188. package/dist/UserPreferences/Options/OptionsContext.js.map +1 -1
  189. package/dist/UserPreferences/Options/styles.js.map +1 -1
  190. package/dist/UserPreferences/UserPreferences.js.map +1 -1
  191. package/dist/VerticalNavigation/Actions/Action.js.map +1 -1
  192. package/dist/VerticalNavigation/Actions/Actions.js.map +1 -1
  193. package/dist/VerticalNavigation/Navigation/Navigation.js +0 -1
  194. package/dist/VerticalNavigation/Navigation/Navigation.js.map +1 -1
  195. package/dist/VerticalNavigation/TreeView/TreeView.js.map +1 -1
  196. package/dist/VerticalNavigation/TreeView/TreeViewContexts.js.map +1 -1
  197. package/dist/VerticalNavigation/TreeView/TreeViewItem.js +1 -1
  198. package/dist/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  199. package/dist/VerticalNavigation/TreeView/descendants.js.map +1 -1
  200. package/dist/VerticalNavigation/VerticalContainer/VerticalContainer.js.map +1 -1
  201. package/dist/VerticalNavigation/VerticalNavigation.js.map +1 -1
  202. package/dist/index.d.ts +0 -9
  203. package/dist/index.js +0 -27
  204. package/dist/index.js.map +1 -1
  205. package/dist/legacy/List/List.js +23 -19
  206. package/dist/legacy/List/List.js.map +1 -1
  207. package/dist/legacy/Provider/Provider.js +16 -5
  208. package/dist/legacy/Provider/Provider.js.map +1 -1
  209. package/dist/legacy/Table/Table.js +20 -23
  210. package/dist/legacy/Table/Table.js.map +1 -1
  211. package/dist/legacy/VerticalNavigation/Navigation/Navigation.js +0 -1
  212. package/dist/legacy/VerticalNavigation/Navigation/Navigation.js.map +1 -1
  213. package/dist/legacy/VerticalNavigation/TreeView/TreeViewItem.js +1 -1
  214. package/dist/legacy/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  215. package/dist/legacy/index.d.ts +0 -9
  216. package/dist/legacy/index.js +0 -3
  217. package/dist/legacy/index.js.map +1 -1
  218. package/dist/legacy/utils/ConditionalRenderer.js +1 -0
  219. package/dist/legacy/utils/ConditionalRenderer.js.map +1 -1
  220. package/dist/modern/List/List.js +25 -24
  221. package/dist/modern/List/List.js.map +1 -1
  222. package/dist/modern/Provider/Provider.js +10 -5
  223. package/dist/modern/Provider/Provider.js.map +1 -1
  224. package/dist/modern/Table/Table.js +20 -23
  225. package/dist/modern/Table/Table.js.map +1 -1
  226. package/dist/modern/VerticalNavigation/TreeView/TreeViewItem.js +1 -1
  227. package/dist/modern/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  228. package/dist/modern/index.d.ts +0 -9
  229. package/dist/modern/index.js +0 -3
  230. package/dist/modern/index.js.map +1 -1
  231. package/dist/modern/utils/ConditionalRenderer.js +1 -0
  232. package/dist/modern/utils/ConditionalRenderer.js.map +1 -1
  233. package/dist/theme/CssBaseline.js.map +1 -1
  234. package/dist/theme/ScopedCssBaseline.js.map +1 -1
  235. package/dist/theme/createGenerateClassName.js.map +1 -1
  236. package/dist/theme/index.js.map +1 -1
  237. package/dist/theme/overrides/muiButton.js.map +1 -1
  238. package/dist/theme/palette.js.map +1 -1
  239. package/dist/theme/typography.js.map +1 -1
  240. package/dist/useUniqueId.js.map +1 -1
  241. package/dist/utils/ConditionalRenderer.js +1 -0
  242. package/dist/utils/ConditionalRenderer.js.map +1 -1
  243. package/dist/utils/browser.js.map +1 -1
  244. package/dist/utils/hexToRgbA.js.map +1 -1
  245. package/dist/utils/refType.js.map +1 -1
  246. package/dist/utils/setId.js.map +1 -1
  247. package/dist/utils/useComputation.js.map +1 -1
  248. package/dist/utils/useDeprecated.js.map +1 -1
  249. package/dist/utils/useImageLoaded.js.map +1 -1
  250. package/dist/utils/useIsMounted.js.map +1 -1
  251. package/dist/utils/useLabels.js.map +1 -1
  252. package/dist/utils/usePropAsRef.js.map +1 -1
  253. package/dist/utils/useSavedState.js.map +1 -1
  254. package/dist/utils/useUpdated.js.map +1 -1
  255. package/dist/utils/useWidth.js.map +1 -1
  256. package/dist/withId.js.map +1 -1
  257. package/dist/withTooltip.js.map +1 -1
  258. package/package.json +22 -32
  259. package/dist/Barchart/Barchart.d.ts +0 -14
  260. package/dist/Barchart/Barchart.js +0 -241
  261. package/dist/Barchart/Barchart.js.map +0 -1
  262. package/dist/Barchart/barchartPlotlyOverrides.js +0 -59
  263. package/dist/Barchart/barchartPlotlyOverrides.js.map +0 -1
  264. package/dist/Barchart/index.d.ts +0 -2
  265. package/dist/Barchart/index.js +0 -16
  266. package/dist/Barchart/index.js.map +0 -1
  267. package/dist/Barchart/styles.js +0 -10
  268. package/dist/Barchart/styles.js.map +0 -1
  269. package/dist/Chart/Chart.d.ts +0 -25
  270. package/dist/Chart/Chart.js +0 -215
  271. package/dist/Chart/Chart.js.map +0 -1
  272. package/dist/Chart/Plot/Plot.d.ts +0 -43
  273. package/dist/Chart/Plot/Plot.js +0 -131
  274. package/dist/Chart/Plot/Plot.js.map +0 -1
  275. package/dist/Chart/Plot/index.d.ts +0 -2
  276. package/dist/Chart/Plot/index.js +0 -16
  277. package/dist/Chart/Plot/index.js.map +0 -1
  278. package/dist/Chart/Plot/styles.js +0 -10
  279. package/dist/Chart/Plot/styles.js.map +0 -1
  280. package/dist/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -162
  281. package/dist/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  282. package/dist/Chart/Tooltip/MultiTooltip/index.js +0 -16
  283. package/dist/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  284. package/dist/Chart/Tooltip/MultiTooltip/styles.js +0 -51
  285. package/dist/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  286. package/dist/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -87
  287. package/dist/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  288. package/dist/Chart/Tooltip/SingleTooltip/index.js +0 -16
  289. package/dist/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  290. package/dist/Chart/Tooltip/SingleTooltip/styles.js +0 -26
  291. package/dist/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  292. package/dist/Chart/Tooltip/Tooltip.js +0 -165
  293. package/dist/Chart/Tooltip/Tooltip.js.map +0 -1
  294. package/dist/Chart/Tooltip/index.js +0 -16
  295. package/dist/Chart/Tooltip/index.js.map +0 -1
  296. package/dist/Chart/Tooltip/styles.js +0 -16
  297. package/dist/Chart/Tooltip/styles.js.map +0 -1
  298. package/dist/Chart/chartPlotlyOverrides.js +0 -169
  299. package/dist/Chart/chartPlotlyOverrides.js.map +0 -1
  300. package/dist/Chart/index.d.ts +0 -5
  301. package/dist/Chart/index.js +0 -16
  302. package/dist/Chart/index.js.map +0 -1
  303. package/dist/Chart/styles.js +0 -49
  304. package/dist/Chart/styles.js.map +0 -1
  305. package/dist/Donutchart/Donutchart.d.ts +0 -10
  306. package/dist/Donutchart/Donutchart.js +0 -124
  307. package/dist/Donutchart/Donutchart.js.map +0 -1
  308. package/dist/Donutchart/donutchartPlotlyOverrides.js +0 -56
  309. package/dist/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  310. package/dist/Donutchart/index.d.ts +0 -2
  311. package/dist/Donutchart/index.js +0 -16
  312. package/dist/Donutchart/index.js.map +0 -1
  313. package/dist/Donutchart/styles.js +0 -10
  314. package/dist/Donutchart/styles.js.map +0 -1
  315. package/dist/Linechart/Linechart.d.ts +0 -14
  316. package/dist/Linechart/Linechart.js +0 -130
  317. package/dist/Linechart/Linechart.js.map +0 -1
  318. package/dist/Linechart/index.d.ts +0 -2
  319. package/dist/Linechart/index.js +0 -16
  320. package/dist/Linechart/index.js.map +0 -1
  321. package/dist/Linechart/lineChartPlotlyOverrides.js +0 -79
  322. package/dist/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  323. package/dist/Linechart/styles.js +0 -10
  324. package/dist/Linechart/styles.js.map +0 -1
  325. package/dist/legacy/Barchart/Barchart.d.ts +0 -14
  326. package/dist/legacy/Barchart/Barchart.js +0 -197
  327. package/dist/legacy/Barchart/Barchart.js.map +0 -1
  328. package/dist/legacy/Barchart/barchartPlotlyOverrides.js +0 -43
  329. package/dist/legacy/Barchart/barchartPlotlyOverrides.js.map +0 -1
  330. package/dist/legacy/Barchart/index.d.ts +0 -2
  331. package/dist/legacy/Barchart/index.js +0 -2
  332. package/dist/legacy/Barchart/index.js.map +0 -1
  333. package/dist/legacy/Barchart/styles.js +0 -3
  334. package/dist/legacy/Barchart/styles.js.map +0 -1
  335. package/dist/legacy/Chart/Chart.d.ts +0 -25
  336. package/dist/legacy/Chart/Chart.js +0 -174
  337. package/dist/legacy/Chart/Chart.js.map +0 -1
  338. package/dist/legacy/Chart/Plot/Plot.d.ts +0 -43
  339. package/dist/legacy/Chart/Plot/Plot.js +0 -93
  340. package/dist/legacy/Chart/Plot/Plot.js.map +0 -1
  341. package/dist/legacy/Chart/Plot/index.d.ts +0 -2
  342. package/dist/legacy/Chart/Plot/index.js +0 -2
  343. package/dist/legacy/Chart/Plot/index.js.map +0 -1
  344. package/dist/legacy/Chart/Plot/styles.js +0 -3
  345. package/dist/legacy/Chart/Plot/styles.js.map +0 -1
  346. package/dist/legacy/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -130
  347. package/dist/legacy/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  348. package/dist/legacy/Chart/Tooltip/MultiTooltip/index.js +0 -2
  349. package/dist/legacy/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  350. package/dist/legacy/Chart/Tooltip/MultiTooltip/styles.js +0 -43
  351. package/dist/legacy/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  352. package/dist/legacy/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -54
  353. package/dist/legacy/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  354. package/dist/legacy/Chart/Tooltip/SingleTooltip/index.js +0 -2
  355. package/dist/legacy/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  356. package/dist/legacy/Chart/Tooltip/SingleTooltip/styles.js +0 -18
  357. package/dist/legacy/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  358. package/dist/legacy/Chart/Tooltip/Tooltip.js +0 -128
  359. package/dist/legacy/Chart/Tooltip/Tooltip.js.map +0 -1
  360. package/dist/legacy/Chart/Tooltip/index.js +0 -2
  361. package/dist/legacy/Chart/Tooltip/index.js.map +0 -1
  362. package/dist/legacy/Chart/Tooltip/styles.js +0 -9
  363. package/dist/legacy/Chart/Tooltip/styles.js.map +0 -1
  364. package/dist/legacy/Chart/chartPlotlyOverrides.js +0 -147
  365. package/dist/legacy/Chart/chartPlotlyOverrides.js.map +0 -1
  366. package/dist/legacy/Chart/index.d.ts +0 -5
  367. package/dist/legacy/Chart/index.js +0 -2
  368. package/dist/legacy/Chart/index.js.map +0 -1
  369. package/dist/legacy/Chart/styles.js +0 -32
  370. package/dist/legacy/Chart/styles.js.map +0 -1
  371. package/dist/legacy/Donutchart/Donutchart.d.ts +0 -10
  372. package/dist/legacy/Donutchart/Donutchart.js +0 -86
  373. package/dist/legacy/Donutchart/Donutchart.js.map +0 -1
  374. package/dist/legacy/Donutchart/donutchartPlotlyOverrides.js +0 -40
  375. package/dist/legacy/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  376. package/dist/legacy/Donutchart/index.d.ts +0 -2
  377. package/dist/legacy/Donutchart/index.js +0 -2
  378. package/dist/legacy/Donutchart/index.js.map +0 -1
  379. package/dist/legacy/Donutchart/styles.js +0 -3
  380. package/dist/legacy/Donutchart/styles.js.map +0 -1
  381. package/dist/legacy/Linechart/Linechart.d.ts +0 -14
  382. package/dist/legacy/Linechart/Linechart.js +0 -92
  383. package/dist/legacy/Linechart/Linechart.js.map +0 -1
  384. package/dist/legacy/Linechart/index.d.ts +0 -2
  385. package/dist/legacy/Linechart/index.js +0 -2
  386. package/dist/legacy/Linechart/index.js.map +0 -1
  387. package/dist/legacy/Linechart/lineChartPlotlyOverrides.js +0 -63
  388. package/dist/legacy/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  389. package/dist/legacy/Linechart/styles.js +0 -3
  390. package/dist/legacy/Linechart/styles.js.map +0 -1
  391. package/dist/modern/Barchart/Barchart.d.ts +0 -14
  392. package/dist/modern/Barchart/Barchart.js +0 -178
  393. package/dist/modern/Barchart/Barchart.js.map +0 -1
  394. package/dist/modern/Barchart/barchartPlotlyOverrides.js +0 -41
  395. package/dist/modern/Barchart/barchartPlotlyOverrides.js.map +0 -1
  396. package/dist/modern/Barchart/index.d.ts +0 -2
  397. package/dist/modern/Barchart/index.js +0 -2
  398. package/dist/modern/Barchart/index.js.map +0 -1
  399. package/dist/modern/Barchart/styles.js +0 -3
  400. package/dist/modern/Barchart/styles.js.map +0 -1
  401. package/dist/modern/Chart/Chart.d.ts +0 -25
  402. package/dist/modern/Chart/Chart.js +0 -158
  403. package/dist/modern/Chart/Chart.js.map +0 -1
  404. package/dist/modern/Chart/Plot/Plot.d.ts +0 -43
  405. package/dist/modern/Chart/Plot/Plot.js +0 -94
  406. package/dist/modern/Chart/Plot/Plot.js.map +0 -1
  407. package/dist/modern/Chart/Plot/index.d.ts +0 -2
  408. package/dist/modern/Chart/Plot/index.js +0 -2
  409. package/dist/modern/Chart/Plot/index.js.map +0 -1
  410. package/dist/modern/Chart/Plot/styles.js +0 -3
  411. package/dist/modern/Chart/Plot/styles.js.map +0 -1
  412. package/dist/modern/Chart/Tooltip/MultiTooltip/MultiTooltip.js +0 -123
  413. package/dist/modern/Chart/Tooltip/MultiTooltip/MultiTooltip.js.map +0 -1
  414. package/dist/modern/Chart/Tooltip/MultiTooltip/index.js +0 -2
  415. package/dist/modern/Chart/Tooltip/MultiTooltip/index.js.map +0 -1
  416. package/dist/modern/Chart/Tooltip/MultiTooltip/styles.js +0 -41
  417. package/dist/modern/Chart/Tooltip/MultiTooltip/styles.js.map +0 -1
  418. package/dist/modern/Chart/Tooltip/SingleTooltip/SingleTooltip.js +0 -51
  419. package/dist/modern/Chart/Tooltip/SingleTooltip/SingleTooltip.js.map +0 -1
  420. package/dist/modern/Chart/Tooltip/SingleTooltip/index.js +0 -2
  421. package/dist/modern/Chart/Tooltip/SingleTooltip/index.js.map +0 -1
  422. package/dist/modern/Chart/Tooltip/SingleTooltip/styles.js +0 -16
  423. package/dist/modern/Chart/Tooltip/SingleTooltip/styles.js.map +0 -1
  424. package/dist/modern/Chart/Tooltip/Tooltip.js +0 -125
  425. package/dist/modern/Chart/Tooltip/Tooltip.js.map +0 -1
  426. package/dist/modern/Chart/Tooltip/index.js +0 -2
  427. package/dist/modern/Chart/Tooltip/index.js.map +0 -1
  428. package/dist/modern/Chart/Tooltip/styles.js +0 -9
  429. package/dist/modern/Chart/Tooltip/styles.js.map +0 -1
  430. package/dist/modern/Chart/chartPlotlyOverrides.js +0 -137
  431. package/dist/modern/Chart/chartPlotlyOverrides.js.map +0 -1
  432. package/dist/modern/Chart/index.d.ts +0 -5
  433. package/dist/modern/Chart/index.js +0 -2
  434. package/dist/modern/Chart/index.js.map +0 -1
  435. package/dist/modern/Chart/styles.js +0 -23
  436. package/dist/modern/Chart/styles.js.map +0 -1
  437. package/dist/modern/Donutchart/Donutchart.d.ts +0 -10
  438. package/dist/modern/Donutchart/Donutchart.js +0 -82
  439. package/dist/modern/Donutchart/Donutchart.js.map +0 -1
  440. package/dist/modern/Donutchart/donutchartPlotlyOverrides.js +0 -38
  441. package/dist/modern/Donutchart/donutchartPlotlyOverrides.js.map +0 -1
  442. package/dist/modern/Donutchart/index.d.ts +0 -2
  443. package/dist/modern/Donutchart/index.js +0 -2
  444. package/dist/modern/Donutchart/index.js.map +0 -1
  445. package/dist/modern/Donutchart/styles.js +0 -3
  446. package/dist/modern/Donutchart/styles.js.map +0 -1
  447. package/dist/modern/Linechart/Linechart.d.ts +0 -14
  448. package/dist/modern/Linechart/Linechart.js +0 -87
  449. package/dist/modern/Linechart/Linechart.js.map +0 -1
  450. package/dist/modern/Linechart/index.d.ts +0 -2
  451. package/dist/modern/Linechart/index.js +0 -2
  452. package/dist/modern/Linechart/index.js.map +0 -1
  453. package/dist/modern/Linechart/lineChartPlotlyOverrides.js +0 -59
  454. package/dist/modern/Linechart/lineChartPlotlyOverrides.js.map +0 -1
  455. package/dist/modern/Linechart/styles.js +0 -3
  456. package/dist/modern/Linechart/styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FilterContent.js","names":["FilterContent","id","status","disabled","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","labels","horizontalPlacement","disablePortal","escapeWithReference","height","others","classes","filterGroupOpen","setFilterGroupOpen","FilterGroupContext","defaultValue","filterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","focusTarget","focusOnContainer","current","focus","onApplyHandler","evt","onCancelHandler","onClearHandler","handleToggle","open","Header","placeholder","root","dropdown","panel","selection","baseDropdownSelection","header","modifiers","name","enabled","undefined","join","trim","leftSidePanel","rightSidePanel","actionBar","flat","length","clearLabel","space","applyLabel","cancelLabel","propTypes","PropTypes","string","node","bool","oneOf","func","shape","searchBoxPlaceholder","selectAll","multiSelectionConjunction","any"],"sources":["../../../src/FilterGroup/FilterContent/FilterContent.js"],"sourcesContent":["import React, { useMemo, useState, useRef, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Filters } from \"@hitachivantara/uikit-react-icons\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport LeftPanel from \"../LeftPanel\";\nimport RightPanel from \"../RightPanel\";\nimport Counter from \"../Counter\";\n\nimport useStyles from \"./styles\";\n\nimport { setId, HvBaseDropdown, HvTypography, HvButton, HvActionBar } from \"../..\";\n\nconst FilterContent = ({\n id,\n status,\n disabled = false,\n\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n labels,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height,\n\n ...others\n}) => {\n const classes = useStyles();\n const [filterGroupOpen, setFilterGroupOpen] = useState(false);\n\n const { defaultValue, filterValues, rollbackFilters, clearFilters, applyFilters, applyDisabled } =\n useContext(FilterGroupContext);\n\n const focusTarget = useRef();\n\n const focusOnContainer = () => {\n focusTarget.current?.focus();\n };\n\n const onApplyHandler = (evt) => {\n applyFilters();\n onChange?.(evt, filterValues);\n setFilterGroupOpen(false);\n };\n\n const onCancelHandler = (evt) => {\n rollbackFilters();\n onCancel?.(evt);\n setFilterGroupOpen(false);\n };\n\n const onClearHandler = (evt) => {\n clearFilters();\n onClear?.(evt);\n };\n\n const handleToggle = (evt, open) => {\n /* \n If evt is null this toggle wasn't triggered by the user.\n instead it was triggered by the baseDropdown useEffect after\n the datepicker changed the expanded value this baseDropdown behavior needs a review\n */\n if (evt === null) return;\n setFilterGroupOpen(open);\n if (!open) onCancelHandler?.(evt);\n };\n\n const Header = useMemo(\n () => (\n <>\n <Filters />\n <HvTypography variant=\"highlightText\">{labels.placeholder}</HvTypography>\n </>\n ),\n [labels.placeholder]\n );\n\n return (\n <HvBaseDropdown\n id={setId(id, \"dropdown\")}\n role=\"combobox\"\n classes={{\n root: classes.dropdown,\n panel: classes.panel,\n selection: classes.baseDropdownSelection,\n header: classes.header,\n }}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n expanded={filterGroupOpen}\n onToggle={handleToggle}\n onClickOutside={onCancelHandler}\n onContainerCreation={focusOnContainer}\n placeholder={Header}\n adornment={<Counter />}\n popperProps={{ modifiers: [{ name: \"preventOverflow\", enabled: escapeWithReference }] }}\n aria-haspopup=\"dialog\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={status === \"invalid\" ? true : undefined}\n aria-errormessage={status === \"invalid\" ? setId(id, \"error\") : undefined}\n aria-describedby={\n [description && setId(id, \"description\"), ariaDescribedBy].join(\" \").trim() || undefined\n }\n {...others}\n >\n <div ref={focusTarget} tabIndex={-1} />\n <div className={classes.root} style={{ height }}>\n <LeftPanel id={id} className={classes.leftSidePanel} />\n <RightPanel id={id} className={classes.rightSidePanel} labels={labels} />\n </div>\n <HvActionBar className={classes.actionBar}>\n <HvButton\n id={setId(id, \"clearFilters-button\")}\n disabled={\n defaultValue\n ? defaultValue?.flat().length === filterValues?.flat().length\n : filterValues?.flat().length === 0\n }\n category=\"ghost\"\n onClick={onClearHandler}\n >\n {labels.clearLabel}\n </HvButton>\n <div aria-hidden=\"true\" className={classes.space}>\n &nbsp;\n </div>\n <HvButton\n id={setId(id, \"apply-button\")}\n disabled={applyDisabled}\n category=\"ghost\"\n onClick={onApplyHandler}\n >\n {labels.applyLabel}\n </HvButton>\n <HvButton id={setId(id, \"cancel-button\")} category=\"ghost\" onClick={onCancelHandler}>\n {labels.cancelLabel}\n </HvButton>\n </HvActionBar>\n </HvBaseDropdown>\n );\n};\n\nFilterContent.propTypes = {\n id: PropTypes.string,\n\n \"aria-label\": PropTypes.string,\n \"aria-labelledby\": PropTypes.string,\n description: PropTypes.node,\n \"aria-describedby\": PropTypes.string,\n disabled: PropTypes.bool,\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n\n onChange: PropTypes.func,\n onCancel: PropTypes.func,\n onClear: PropTypes.func,\n\n labels: PropTypes.shape({\n applyLabel: PropTypes.string,\n cancelLabel: PropTypes.string,\n clearLabel: PropTypes.string,\n placeholder: PropTypes.string,\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n disablePortal: PropTypes.bool,\n escapeWithReference: PropTypes.bool,\n height: PropTypes.any,\n};\n\nexport default FilterContent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterContent.js","names":["FilterContent","id","status","disabled","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","labels","horizontalPlacement","disablePortal","escapeWithReference","height","others","classes","useStyles","useState","filterGroupOpen","setFilterGroupOpen","useContext","FilterGroupContext","defaultValue","filterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","focusTarget","useRef","focusOnContainer","current","focus","onApplyHandler","evt","onCancelHandler","onClearHandler","handleToggle","open","Header","useMemo","placeholder","setId","root","dropdown","panel","selection","baseDropdownSelection","header","modifiers","name","enabled","undefined","join","trim","leftSidePanel","rightSidePanel","actionBar","flat","length","clearLabel","space","applyLabel","cancelLabel","propTypes","PropTypes","string","node","bool","oneOf","func","shape","searchBoxPlaceholder","selectAll","multiSelectionConjunction","any"],"sources":["../../../src/FilterGroup/FilterContent/FilterContent.js"],"sourcesContent":["import React, { useMemo, useState, useRef, useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { Filters } from \"@hitachivantara/uikit-react-icons\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport LeftPanel from \"../LeftPanel\";\nimport RightPanel from \"../RightPanel\";\nimport Counter from \"../Counter\";\n\nimport useStyles from \"./styles\";\n\nimport { setId, HvBaseDropdown, HvTypography, HvButton, HvActionBar } from \"../..\";\n\nconst FilterContent = ({\n id,\n status,\n disabled = false,\n\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n labels,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height,\n\n ...others\n}) => {\n const classes = useStyles();\n const [filterGroupOpen, setFilterGroupOpen] = useState(false);\n\n const { defaultValue, filterValues, rollbackFilters, clearFilters, applyFilters, applyDisabled } =\n useContext(FilterGroupContext);\n\n const focusTarget = useRef();\n\n const focusOnContainer = () => {\n focusTarget.current?.focus();\n };\n\n const onApplyHandler = (evt) => {\n applyFilters();\n onChange?.(evt, filterValues);\n setFilterGroupOpen(false);\n };\n\n const onCancelHandler = (evt) => {\n rollbackFilters();\n onCancel?.(evt);\n setFilterGroupOpen(false);\n };\n\n const onClearHandler = (evt) => {\n clearFilters();\n onClear?.(evt);\n };\n\n const handleToggle = (evt, open) => {\n /* \n If evt is null this toggle wasn't triggered by the user.\n instead it was triggered by the baseDropdown useEffect after\n the datepicker changed the expanded value this baseDropdown behavior needs a review\n */\n if (evt === null) return;\n setFilterGroupOpen(open);\n if (!open) onCancelHandler?.(evt);\n };\n\n const Header = useMemo(\n () => (\n <>\n <Filters />\n <HvTypography variant=\"highlightText\">{labels.placeholder}</HvTypography>\n </>\n ),\n [labels.placeholder]\n );\n\n return (\n <HvBaseDropdown\n id={setId(id, \"dropdown\")}\n role=\"combobox\"\n classes={{\n root: classes.dropdown,\n panel: classes.panel,\n selection: classes.baseDropdownSelection,\n header: classes.header,\n }}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n expanded={filterGroupOpen}\n onToggle={handleToggle}\n onClickOutside={onCancelHandler}\n onContainerCreation={focusOnContainer}\n placeholder={Header}\n adornment={<Counter />}\n popperProps={{ modifiers: [{ name: \"preventOverflow\", enabled: escapeWithReference }] }}\n aria-haspopup=\"dialog\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={status === \"invalid\" ? true : undefined}\n aria-errormessage={status === \"invalid\" ? setId(id, \"error\") : undefined}\n aria-describedby={\n [description && setId(id, \"description\"), ariaDescribedBy].join(\" \").trim() || undefined\n }\n {...others}\n >\n <div ref={focusTarget} tabIndex={-1} />\n <div className={classes.root} style={{ height }}>\n <LeftPanel id={id} className={classes.leftSidePanel} />\n <RightPanel id={id} className={classes.rightSidePanel} labels={labels} />\n </div>\n <HvActionBar className={classes.actionBar}>\n <HvButton\n id={setId(id, \"clearFilters-button\")}\n disabled={\n defaultValue\n ? defaultValue?.flat().length === filterValues?.flat().length\n : filterValues?.flat().length === 0\n }\n category=\"ghost\"\n onClick={onClearHandler}\n >\n {labels.clearLabel}\n </HvButton>\n <div aria-hidden=\"true\" className={classes.space}>\n &nbsp;\n </div>\n <HvButton\n id={setId(id, \"apply-button\")}\n disabled={applyDisabled}\n category=\"ghost\"\n onClick={onApplyHandler}\n >\n {labels.applyLabel}\n </HvButton>\n <HvButton id={setId(id, \"cancel-button\")} category=\"ghost\" onClick={onCancelHandler}>\n {labels.cancelLabel}\n </HvButton>\n </HvActionBar>\n </HvBaseDropdown>\n );\n};\n\nFilterContent.propTypes = {\n id: PropTypes.string,\n\n \"aria-label\": PropTypes.string,\n \"aria-labelledby\": PropTypes.string,\n description: PropTypes.node,\n \"aria-describedby\": PropTypes.string,\n disabled: PropTypes.bool,\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n\n onChange: PropTypes.func,\n onCancel: PropTypes.func,\n onClear: PropTypes.func,\n\n labels: PropTypes.shape({\n applyLabel: PropTypes.string,\n cancelLabel: PropTypes.string,\n clearLabel: PropTypes.string,\n placeholder: PropTypes.string,\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n disablePortal: PropTypes.bool,\n escapeWithReference: PropTypes.bool,\n height: PropTypes.any,\n};\n\nexport default FilterContent;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","width","backgroundColor","hv","palette","atmosphere","atmo1","maxHeight","minHeight","display","spacing","height","verticalAlign","padding","margin","overflow","boxShadow","shadow","shad1","panel","actionBar","space","flex","baseDropdownSelection","header","justifyContent","leftSidePanel","rightSidePanel"],"sources":["../../../src/FilterGroup/FilterContent/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n width: 640,\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n \"& div$leftSidePanel\": {\n display: \"inline-block\",\n width: `calc(50% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n height: `calc(100% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n verticalAlign: \"top\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n padding: 4,\n margin: theme.spacing(\"sm\") - 4,\n },\n \"& div$rightSidePanel\": {\n display: \"inline-block\",\n width: \"50%\",\n height: \"100%\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n verticalAlign: \"top\",\n overflow: \"visible\",\n boxShadow: `inset 8px 0 8px -6px ${theme.hv.palette.shadow.shad1}`,\n },\n },\n panel: {\n maxHeight: 500,\n minHeight: 370,\n },\n actionBar: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n space: {\n flex: 1,\n },\n baseDropdownSelection: {\n padding: \"0 30px 0 0\",\n },\n header: {\n display: \"flex\",\n justifyContent: \"space-between\",\n height: 32,\n },\n leftSidePanel: {},\n rightSidePanel: {},\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,sBAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJC,KAAK,EAAE,GADH;MAEJC,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAFzC;MAGJC,SAAS,EAAE,oBAHP;MAIJC,SAAS,EAAE,oBAJP;MAKJ,uBAAuB;QACrBC,OAAO,EAAE,cADY;QAErBR,KAAK,uBAAgBF,KAAK,CAACW,OAAN,CAAc,IAAd,CAAhB,kBAA2CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA3C,cAFgB;QAGrBC,MAAM,wBAAiBZ,KAAK,CAACW,OAAN,CAAc,IAAd,CAAjB,kBAA4CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA5C,cAHe;QAIrBE,aAAa,EAAE,KAJM;QAKrBL,SAAS,EAAE,oBALU;QAMrBC,SAAS,EAAE,oBANU;QAOrBK,OAAO,EAAE,CAPY;QAQrBC,MAAM,EAAEf,KAAK,CAACW,OAAN,CAAc,IAAd,IAAsB;MART,CALnB;MAeJ,wBAAwB;QACtBD,OAAO,EAAE,cADa;QAEtBR,KAAK,EAAE,KAFe;QAGtBU,MAAM,EAAE,MAHc;QAItBJ,SAAS,EAAE,oBAJW;QAKtBC,SAAS,EAAE,oBALW;QAMtBI,aAAa,EAAE,KANO;QAOtBG,QAAQ,EAAE,SAPY;QAQtBC,SAAS,iCAA0BjB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBa,MAAjB,CAAwBC,KAAlD;MARa;IAfpB,CAD8B;IA2BpCC,KAAK,EAAE;MACLZ,SAAS,EAAE,GADN;MAELC,SAAS,EAAE;IAFN,CA3B6B;IA+BpCY,SAAS,EAAE;MACTlB,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADpC,CA/ByB;IAkCpCe,KAAK,EAAE;MACLC,IAAI,EAAE;IADD,CAlC6B;IAqCpCC,qBAAqB,EAAE;MACrBV,OAAO,EAAE;IADY,CArCa;IAwCpCW,MAAM,EAAE;MACNf,OAAO,EAAE,MADH;MAENgB,cAAc,EAAE,eAFV;MAGNd,MAAM,EAAE;IAHF,CAxC4B;IA6CpCe,aAAa,EAAE,EA7CqB;IA8CpCC,cAAc,EAAE;EA9CoB,CAAZ;AAAA,CAAX,CAAf;eAiDe7B,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","makeStyles","theme","root","width","backgroundColor","hv","palette","atmosphere","atmo1","maxHeight","minHeight","display","spacing","height","verticalAlign","padding","margin","overflow","boxShadow","shadow","shad1","panel","actionBar","space","flex","baseDropdownSelection","header","justifyContent","leftSidePanel","rightSidePanel"],"sources":["../../../src/FilterGroup/FilterContent/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n width: 640,\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n \"& div$leftSidePanel\": {\n display: \"inline-block\",\n width: `calc(50% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n height: `calc(100% - ${theme.spacing(\"sm\")}px - ${theme.spacing(\"sm\")}px + 8px)`,\n verticalAlign: \"top\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n padding: 4,\n margin: theme.spacing(\"sm\") - 4,\n },\n \"& div$rightSidePanel\": {\n display: \"inline-block\",\n width: \"50%\",\n height: \"100%\",\n maxHeight: \"calc(500px - 75px)\",\n minHeight: \"calc(370px - 75px)\",\n verticalAlign: \"top\",\n overflow: \"visible\",\n boxShadow: `inset 8px 0 8px -6px ${theme.hv.palette.shadow.shad1}`,\n },\n },\n panel: {\n maxHeight: 500,\n minHeight: 370,\n },\n actionBar: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n space: {\n flex: 1,\n },\n baseDropdownSelection: {\n padding: \"0 30px 0 0\",\n },\n header: {\n display: \"flex\",\n justifyContent: \"space-between\",\n height: 32,\n },\n leftSidePanel: {},\n rightSidePanel: {},\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,IAAAC,gBAAA,EAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJC,KAAK,EAAE,GADH;MAEJC,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAFzC;MAGJC,SAAS,EAAE,oBAHP;MAIJC,SAAS,EAAE,oBAJP;MAKJ,uBAAuB;QACrBC,OAAO,EAAE,cADY;QAErBR,KAAK,uBAAgBF,KAAK,CAACW,OAAN,CAAc,IAAd,CAAhB,kBAA2CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA3C,cAFgB;QAGrBC,MAAM,wBAAiBZ,KAAK,CAACW,OAAN,CAAc,IAAd,CAAjB,kBAA4CX,KAAK,CAACW,OAAN,CAAc,IAAd,CAA5C,cAHe;QAIrBE,aAAa,EAAE,KAJM;QAKrBL,SAAS,EAAE,oBALU;QAMrBC,SAAS,EAAE,oBANU;QAOrBK,OAAO,EAAE,CAPY;QAQrBC,MAAM,EAAEf,KAAK,CAACW,OAAN,CAAc,IAAd,IAAsB;MART,CALnB;MAeJ,wBAAwB;QACtBD,OAAO,EAAE,cADa;QAEtBR,KAAK,EAAE,KAFe;QAGtBU,MAAM,EAAE,MAHc;QAItBJ,SAAS,EAAE,oBAJW;QAKtBC,SAAS,EAAE,oBALW;QAMtBI,aAAa,EAAE,KANO;QAOtBG,QAAQ,EAAE,SAPY;QAQtBC,SAAS,iCAA0BjB,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBa,MAAjB,CAAwBC,KAAlD;MARa;IAfpB,CAD8B;IA2BpCC,KAAK,EAAE;MACLZ,SAAS,EAAE,GADN;MAELC,SAAS,EAAE;IAFN,CA3B6B;IA+BpCY,SAAS,EAAE;MACTlB,eAAe,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADpC,CA/ByB;IAkCpCe,KAAK,EAAE;MACLC,IAAI,EAAE;IADD,CAlC6B;IAqCpCC,qBAAqB,EAAE;MACrBV,OAAO,EAAE;IADY,CArCa;IAwCpCW,MAAM,EAAE;MACNf,OAAO,EAAE,MADH;MAENgB,cAAc,EAAE,eAFV;MAGNd,MAAM,EAAE;IAHF,CAxC4B;IA6CpCe,aAAa,EAAE,EA7CqB;IA8CpCC,cAAc,EAAE;EA9CoB,CAAZ;AAAA,CAAX,CAAf;eAiDe9B,M"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilterGroup.js","names":["DEFAULT_LABELS","applyLabel","cancelLabel","clearLabel","placeholder","searchBoxPlaceholder","selectAll","multiSelectionConjunction","HvFilterGroup","className","id","name","required","disabled","label","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","status","statusMessage","labelsProp","labels","defaultValue","value","filters","horizontalPlacement","disablePortal","escapeWithReference","height","filterContentProps","others","classes","validationMessage","elementId","hasLabel","hasDescription","canShowError","undefined","root","labelContainer","error","propTypes","PropTypes","string","node","bool","oneOf","func","shape","arrayOf","isRequired","data","oneOfType","number","object","expanded"],"sources":["../../src/FilterGroup/FilterGroup.js"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { FilterGroupProvider } from \"./FilterGroupContext\";\nimport FilterContent from \"./FilterContent\";\nimport useStyles from \"./styles\";\nimport {\n setId,\n useLabels,\n useUniqueId,\n useControlled,\n HvFormElement,\n HvLabel,\n HvWarningText,\n HvInfoMessage,\n} from \"..\";\n\nconst DEFAULT_LABELS = {\n applyLabel: \"Apply\",\n cancelLabel: \"Cancel\",\n clearLabel: \"Clear Filters\",\n placeholder: \"Filters\",\n searchBoxPlaceholder: \"Search\",\n selectAll: \"All\",\n multiSelectionConjunction: \"/\",\n};\n\n/**\n * This component implements one potential use-case of the Filter Group pattern Design System Specifies.\n * Due to the enormous variety of capabilities required for this, we strongly recommend checking the code of the component and extend it yourself,\n * while we do not provide a better approach for building this component with smaller and more composable parts.\n */\nconst HvFilterGroup = ({\n className,\n\n id,\n name,\n\n required = false,\n disabled = false,\n\n label,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n status,\n statusMessage,\n\n labels: labelsProp,\n\n defaultValue,\n value,\n filters,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height = 350,\n filterContentProps,\n\n ...others\n}) => {\n const classes = useStyles();\n\n const [validationMessage] = useControlled(statusMessage, \"Required\");\n\n const elementId = useUniqueId(id, \"hvfiltergroup\");\n\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const hasLabel = label != null;\n const hasDescription = description != null;\n\n // error message area will only be needed if the status is being controlled\n // or if required is true\n const canShowError = status !== undefined || required;\n\n return (\n <HvFormElement\n id={id}\n name={name}\n value={value}\n status={status}\n disabled={disabled}\n required={required}\n className={clsx(className, classes.root)}\n {...others}\n >\n {(hasLabel || hasDescription) && (\n <div className={classes.labelContainer}>\n {hasLabel && (\n <HvLabel\n id={setId(elementId, \"label\")}\n htmlFor={setId(elementId, \"input\")}\n label={label}\n className={classes.label}\n />\n )}\n\n {hasDescription && (\n <HvInfoMessage id={setId(elementId, \"description\")} className={classes.description}>\n {description}\n </HvInfoMessage>\n )}\n </div>\n )}\n <FilterGroupProvider defaultValue={defaultValue} value={value} filters={filters}>\n <FilterContent\n id={elementId}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n escapeWithReference={escapeWithReference}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n status={status}\n onChange={onChange}\n onCancel={onCancel}\n onClear={onClear}\n labels={labels}\n height={height}\n {...filterContentProps}\n />\n {canShowError && (\n <HvWarningText id={setId(elementId, \"error\")} disableBorder className={classes.error}>\n {validationMessage}\n </HvWarningText>\n )}\n </FilterGroupProvider>\n </HvFormElement>\n );\n};\n\nHvFilterGroup.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n\n /**\n * Id to be applied to the form element root node.\n */\n id: PropTypes.string,\n\n /**\n * The form element name.\n */\n name: PropTypes.string,\n\n /**\n * The label of the form element.\n *\n * The form element must be labeled for accessibility reasons.\n * If not provided, an aria-label or aria-labelledby must be provided instead.\n */\n label: PropTypes.node,\n /**\n * @ignore\n */\n \"aria-label\": PropTypes.string,\n /**\n * @ignore\n */\n \"aria-labelledby\": PropTypes.string,\n /**\n * Provide additional descriptive text for the form element.\n */\n description: PropTypes.node,\n /**\n * @ignore\n */\n \"aria-describedby\": PropTypes.string,\n\n /**\n * Indicates that the form element is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Indicates that user input is required on the form element.\n */\n required: PropTypes.bool,\n\n /**\n * The status of the form element.\n *\n * Valid is correct, invalid is incorrect and standBy means no validations have run.\n *\n * When uncontrolled and unspecified it will default to \"standBy\" and change to either \"valid\"\n * or \"invalid\" after any change to the state.\n */\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n /**\n * The error message to show when `status` is \"invalid\". Defaults to \"Required\".\n */\n statusMessage: PropTypes.node,\n\n /**\n * The callback fired when the value changes.\n */\n onChange: PropTypes.func,\n\n /**\n * The callback fired when the cancel button is clicked.\n */\n onCancel: PropTypes.func,\n\n /**\n * The callback fired when the clear filters button is clicked.\n */\n onClear: PropTypes.func,\n\n /**\n * An object containing all the labels for the Filter Group.\n */\n labels: PropTypes.shape({\n /**\n * Apply button label.\n */\n applyLabel: PropTypes.string,\n /**\n * Cancel button label.\n */\n cancelLabel: PropTypes.string,\n /**\n * Clear Filters button label.\n */\n clearLabel: PropTypes.string,\n /**\n * Placeholder label.\n */\n placeholder: PropTypes.string,\n /**\n * SearchBox placeholder label.\n */\n searchBoxPlaceholder: PropTypes.string,\n /**\n * Select All placeholder label.\n */\n selectAll: PropTypes.string,\n /**\n * Multi selection conjunction placeholder label.\n */\n multiSelectionConjunction: PropTypes.string,\n }),\n\n /**\n * The options of the filter group.\n */\n filters: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n name: PropTypes.string.isRequired,\n })\n ).isRequired,\n })\n ).isRequired,\n\n /**\n * The default value of the filter group.\n * If defined the clear action will reset to it.\n */\n defaultValue: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n\n /**\n * The value of the filter group.\n */\n value: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n\n /**\n * The placement where the filter group should be placed according to the input. Options are `left` or `right`.\n */\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n\n /**\n * Disable the portal behavior. The children stay within it's parent DOM hierarchy.\n */\n disablePortal: PropTypes.bool,\n /**\n * Sets if the filter container should be out of the screen or stay visible.\n */\n escapeWithReference: PropTypes.bool,\n\n /**\n * The Height of the filter panel, between 295 and 425. Defaults to 350\n */\n height: PropTypes.oneOf([PropTypes.number, PropTypes.string]),\n\n /**\n * The filter content props\n */\n filterContentProps: PropTypes.object,\n\n /**\n * If `true` the filter group starts opened if `false` it starts closed.\n */\n expanded: PropTypes.bool,\n};\n\nexport default HvFilterGroup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterGroup.js","names":["DEFAULT_LABELS","applyLabel","cancelLabel","clearLabel","placeholder","searchBoxPlaceholder","selectAll","multiSelectionConjunction","HvFilterGroup","className","id","name","required","disabled","label","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","status","statusMessage","labelsProp","labels","defaultValue","value","filters","horizontalPlacement","disablePortal","escapeWithReference","height","filterContentProps","others","classes","useStyles","useControlled","validationMessage","elementId","useUniqueId","useLabels","hasLabel","hasDescription","canShowError","undefined","clsx","root","labelContainer","setId","error","propTypes","PropTypes","string","node","bool","oneOf","func","shape","arrayOf","isRequired","data","oneOfType","number","object","expanded"],"sources":["../../src/FilterGroup/FilterGroup.js"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { FilterGroupProvider } from \"./FilterGroupContext\";\nimport FilterContent from \"./FilterContent\";\nimport useStyles from \"./styles\";\nimport {\n setId,\n useLabels,\n useUniqueId,\n useControlled,\n HvFormElement,\n HvLabel,\n HvWarningText,\n HvInfoMessage,\n} from \"..\";\n\nconst DEFAULT_LABELS = {\n applyLabel: \"Apply\",\n cancelLabel: \"Cancel\",\n clearLabel: \"Clear Filters\",\n placeholder: \"Filters\",\n searchBoxPlaceholder: \"Search\",\n selectAll: \"All\",\n multiSelectionConjunction: \"/\",\n};\n\n/**\n * This component implements one potential use-case of the Filter Group pattern Design System Specifies.\n * Due to the enormous variety of capabilities required for this, we strongly recommend checking the code of the component and extend it yourself,\n * while we do not provide a better approach for building this component with smaller and more composable parts.\n */\nconst HvFilterGroup = ({\n className,\n\n id,\n name,\n\n required = false,\n disabled = false,\n\n label,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n\n onChange,\n onCancel,\n onClear,\n\n status,\n statusMessage,\n\n labels: labelsProp,\n\n defaultValue,\n value,\n filters,\n\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n\n height = 350,\n filterContentProps,\n\n ...others\n}) => {\n const classes = useStyles();\n\n const [validationMessage] = useControlled(statusMessage, \"Required\");\n\n const elementId = useUniqueId(id, \"hvfiltergroup\");\n\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const hasLabel = label != null;\n const hasDescription = description != null;\n\n // error message area will only be needed if the status is being controlled\n // or if required is true\n const canShowError = status !== undefined || required;\n\n return (\n <HvFormElement\n id={id}\n name={name}\n value={value}\n status={status}\n disabled={disabled}\n required={required}\n className={clsx(className, classes.root)}\n {...others}\n >\n {(hasLabel || hasDescription) && (\n <div className={classes.labelContainer}>\n {hasLabel && (\n <HvLabel\n id={setId(elementId, \"label\")}\n htmlFor={setId(elementId, \"input\")}\n label={label}\n className={classes.label}\n />\n )}\n\n {hasDescription && (\n <HvInfoMessage id={setId(elementId, \"description\")} className={classes.description}>\n {description}\n </HvInfoMessage>\n )}\n </div>\n )}\n <FilterGroupProvider defaultValue={defaultValue} value={value} filters={filters}>\n <FilterContent\n id={elementId}\n disabled={disabled}\n disablePortal={disablePortal}\n variableWidth\n placement={horizontalPlacement}\n escapeWithReference={escapeWithReference}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n status={status}\n onChange={onChange}\n onCancel={onCancel}\n onClear={onClear}\n labels={labels}\n height={height}\n {...filterContentProps}\n />\n {canShowError && (\n <HvWarningText id={setId(elementId, \"error\")} disableBorder className={classes.error}>\n {validationMessage}\n </HvWarningText>\n )}\n </FilterGroupProvider>\n </HvFormElement>\n );\n};\n\nHvFilterGroup.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n\n /**\n * Id to be applied to the form element root node.\n */\n id: PropTypes.string,\n\n /**\n * The form element name.\n */\n name: PropTypes.string,\n\n /**\n * The label of the form element.\n *\n * The form element must be labeled for accessibility reasons.\n * If not provided, an aria-label or aria-labelledby must be provided instead.\n */\n label: PropTypes.node,\n /**\n * @ignore\n */\n \"aria-label\": PropTypes.string,\n /**\n * @ignore\n */\n \"aria-labelledby\": PropTypes.string,\n /**\n * Provide additional descriptive text for the form element.\n */\n description: PropTypes.node,\n /**\n * @ignore\n */\n \"aria-describedby\": PropTypes.string,\n\n /**\n * Indicates that the form element is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Indicates that user input is required on the form element.\n */\n required: PropTypes.bool,\n\n /**\n * The status of the form element.\n *\n * Valid is correct, invalid is incorrect and standBy means no validations have run.\n *\n * When uncontrolled and unspecified it will default to \"standBy\" and change to either \"valid\"\n * or \"invalid\" after any change to the state.\n */\n status: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n /**\n * The error message to show when `status` is \"invalid\". Defaults to \"Required\".\n */\n statusMessage: PropTypes.node,\n\n /**\n * The callback fired when the value changes.\n */\n onChange: PropTypes.func,\n\n /**\n * The callback fired when the cancel button is clicked.\n */\n onCancel: PropTypes.func,\n\n /**\n * The callback fired when the clear filters button is clicked.\n */\n onClear: PropTypes.func,\n\n /**\n * An object containing all the labels for the Filter Group.\n */\n labels: PropTypes.shape({\n /**\n * Apply button label.\n */\n applyLabel: PropTypes.string,\n /**\n * Cancel button label.\n */\n cancelLabel: PropTypes.string,\n /**\n * Clear Filters button label.\n */\n clearLabel: PropTypes.string,\n /**\n * Placeholder label.\n */\n placeholder: PropTypes.string,\n /**\n * SearchBox placeholder label.\n */\n searchBoxPlaceholder: PropTypes.string,\n /**\n * Select All placeholder label.\n */\n selectAll: PropTypes.string,\n /**\n * Multi selection conjunction placeholder label.\n */\n multiSelectionConjunction: PropTypes.string,\n }),\n\n /**\n * The options of the filter group.\n */\n filters: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n name: PropTypes.string.isRequired,\n })\n ).isRequired,\n })\n ).isRequired,\n\n /**\n * The default value of the filter group.\n * If defined the clear action will reset to it.\n */\n defaultValue: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n\n /**\n * The value of the filter group.\n */\n value: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n\n /**\n * The placement where the filter group should be placed according to the input. Options are `left` or `right`.\n */\n horizontalPlacement: PropTypes.oneOf([\"left\", \"right\"]),\n\n /**\n * Disable the portal behavior. The children stay within it's parent DOM hierarchy.\n */\n disablePortal: PropTypes.bool,\n /**\n * Sets if the filter container should be out of the screen or stay visible.\n */\n escapeWithReference: PropTypes.bool,\n\n /**\n * The Height of the filter panel, between 295 and 425. Defaults to 350\n */\n height: PropTypes.oneOf([PropTypes.number, PropTypes.string]),\n\n /**\n * The filter content props\n */\n filterContentProps: PropTypes.object,\n\n /**\n * If `true` the filter group starts opened if `false` it starts closed.\n */\n expanded: PropTypes.bool,\n};\n\nexport default HvFilterGroup;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilterGroupContext.js","names":["FilterGroupContext","React","createContext","activeGroup","setActiveGroup","filterOptions","setFilterOptions","filterValues","setFilterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","groups","filters","map","FilterGroupProvider","defaultValue","value","children","group","appliedFilters","setApplyDisabled","contextValue","propTypes","PropTypes","arrayOf","oneOfType","string","number","shape","id","isRequired","name","data","node"],"sources":["../../src/FilterGroup/FilterGroupContext.js"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isEqual from \"lodash/isEqual\";\nimport { useSavedState } from \"../utils\";\n\nexport const FilterGroupContext = React.createContext({\n activeGroup: 0,\n setActiveGroup: () => {},\n filterOptions: [],\n setFilterOptions: () => {},\n filterValues: [],\n setFilterValues: () => {},\n rollbackFilters: () => {},\n clearFilters: () => {},\n applyFilters: () => {},\n applyDisabled: false,\n});\n\nconst groups = (filters) => filters.map(() => []);\n\nexport const FilterGroupProvider = ({ defaultValue, value, filters, children }) => {\n const [group, setActiveGroup] = useState(0);\n const [filterValues, setFilterValues, rollbackFilters, appliedFilters] = useSavedState(\n value || groups(filters)\n );\n const [applyDisabled, setApplyDisabled] = useState(false);\n\n useEffect(() => {\n setFilterValues(value, true);\n }, [value, setFilterValues]);\n\n useEffect(() => {\n setApplyDisabled(isEqual(filterValues, appliedFilters));\n }, [filterValues, appliedFilters]);\n\n const clearFilters = useCallback(() => {\n setFilterValues(defaultValue || groups(filters));\n }, [filters, setFilterValues, defaultValue]);\n\n const applyFilters = useCallback(() => {\n setFilterValues(filterValues, true);\n }, [filterValues, setFilterValues]);\n\n const contextValue = useMemo(\n () => ({\n activeGroup: group,\n setActiveGroup,\n filterOptions: filters,\n filterValues,\n setFilterValues,\n appliedFilters,\n rollbackFilters,\n clearFilters,\n applyFilters,\n applyDisabled,\n defaultValue,\n }),\n [\n appliedFilters,\n applyDisabled,\n applyFilters,\n clearFilters,\n filterValues,\n filters,\n group,\n rollbackFilters,\n setFilterValues,\n defaultValue,\n ]\n );\n\n return <FilterGroupContext.Provider value={contextValue}>{children}</FilterGroupContext.Provider>;\n};\n\nFilterGroupProvider.propTypes = {\n defaultValue: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n value: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n filters: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n name: PropTypes.string.isRequired,\n })\n ).isRequired,\n })\n ),\n children: PropTypes.node.isRequired,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterGroupContext.js","names":["FilterGroupContext","React","createContext","activeGroup","setActiveGroup","filterOptions","setFilterOptions","filterValues","setFilterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","groups","filters","map","FilterGroupProvider","defaultValue","value","children","useState","group","useSavedState","appliedFilters","setApplyDisabled","useEffect","isEqual","useCallback","contextValue","useMemo","propTypes","PropTypes","arrayOf","oneOfType","string","number","shape","id","isRequired","name","data","node"],"sources":["../../src/FilterGroup/FilterGroupContext.js"],"sourcesContent":["import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport isEqual from \"lodash/isEqual\";\nimport { useSavedState } from \"../utils\";\n\nexport const FilterGroupContext = React.createContext({\n activeGroup: 0,\n setActiveGroup: () => {},\n filterOptions: [],\n setFilterOptions: () => {},\n filterValues: [],\n setFilterValues: () => {},\n rollbackFilters: () => {},\n clearFilters: () => {},\n applyFilters: () => {},\n applyDisabled: false,\n});\n\nconst groups = (filters) => filters.map(() => []);\n\nexport const FilterGroupProvider = ({ defaultValue, value, filters, children }) => {\n const [group, setActiveGroup] = useState(0);\n const [filterValues, setFilterValues, rollbackFilters, appliedFilters] = useSavedState(\n value || groups(filters)\n );\n const [applyDisabled, setApplyDisabled] = useState(false);\n\n useEffect(() => {\n setFilterValues(value, true);\n }, [value, setFilterValues]);\n\n useEffect(() => {\n setApplyDisabled(isEqual(filterValues, appliedFilters));\n }, [filterValues, appliedFilters]);\n\n const clearFilters = useCallback(() => {\n setFilterValues(defaultValue || groups(filters));\n }, [filters, setFilterValues, defaultValue]);\n\n const applyFilters = useCallback(() => {\n setFilterValues(filterValues, true);\n }, [filterValues, setFilterValues]);\n\n const contextValue = useMemo(\n () => ({\n activeGroup: group,\n setActiveGroup,\n filterOptions: filters,\n filterValues,\n setFilterValues,\n appliedFilters,\n rollbackFilters,\n clearFilters,\n applyFilters,\n applyDisabled,\n defaultValue,\n }),\n [\n appliedFilters,\n applyDisabled,\n applyFilters,\n clearFilters,\n filterValues,\n filters,\n group,\n rollbackFilters,\n setFilterValues,\n defaultValue,\n ]\n );\n\n return <FilterGroupContext.Provider value={contextValue}>{children}</FilterGroupContext.Provider>;\n};\n\nFilterGroupProvider.propTypes = {\n defaultValue: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n value: PropTypes.arrayOf(\n PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]))\n ),\n filters: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,\n name: PropTypes.string.isRequired,\n })\n ).isRequired,\n })\n ),\n children: PropTypes.node.isRequired,\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LeftPanel.js","names":["LeftPanel","id","className","classes","FilterGroupContext","filterOptions","activeGroup","setActiveGroup","root","map","group","index","ItemText","name","filterItem","propTypes","PropTypes","string"],"sources":["../../../src/FilterGroup/LeftPanel/LeftPanel.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { HvPanel, HvListContainer, HvListItem, setId } from \"../..\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport Counter from \"../Counter\";\nimport useStyles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst LeftPanel = ({ id, className }) => {\n const classes = useStyles();\n const { filterOptions, activeGroup, setActiveGroup } = useContext(FilterGroupContext);\n\n return (\n <HvPanel id={setId(id, \"leftPanel\")} className={clsx(className, classes.root)}>\n <HvListContainer id={setId(id, \"leftPanel-list\")} condensed interactive>\n {filterOptions.map((group, index) => {\n const ItemText = wrapperTooltip(true, group.name, group.name);\n return (\n <HvListItem\n id={group.id}\n className={classes.filterItem}\n key={group.name}\n onClick={() => setActiveGroup(index)}\n selected={filterOptions[activeGroup].id === group.id}\n endAdornment={<Counter id={group.id} />}\n >\n <ItemText />\n </HvListItem>\n );\n })}\n </HvListContainer>\n </HvPanel>\n );\n};\n\nLeftPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n};\n\nexport default LeftPanel;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAAuB;EAAA,IAApBC,EAAoB,QAApBA,EAAoB;EAAA,IAAhBC,SAAgB,QAAhBA,SAAgB;EACvC,IAAMC,OAAO,GAAG,sBAAhB;;EACA,kBAAuD,uBAAWC,sCAAX,CAAvD;EAAA,IAAQC,aAAR,eAAQA,aAAR;EAAA,IAAuBC,WAAvB,eAAuBA,WAAvB;EAAA,IAAoCC,cAApC,eAAoCA,cAApC;;EAEA,oBACE,6BAAC,SAAD;IAAS,EAAE,EAAE,aAAMN,EAAN,EAAU,WAAV,CAAb;IAAqC,SAAS,EAAE,mBAAKC,SAAL,EAAgBC,OAAO,CAACK,IAAxB;EAAhD,gBACE,6BAAC,iBAAD;IAAiB,EAAE,EAAE,aAAMP,EAAN,EAAU,gBAAV,CAArB;IAAkD,SAAS,MAA3D;IAA4D,WAAW;EAAvE,GACGI,aAAa,CAACI,GAAd,CAAkB,UAACC,KAAD,EAAQC,KAAR,EAAkB;IACnC,IAAMC,QAAQ,GAAG,2BAAe,IAAf,EAAqBF,KAAK,CAACG,IAA3B,EAAiCH,KAAK,CAACG,IAAvC,CAAjB;IACA,oBACE,6BAAC,YAAD;MACE,EAAE,EAAEH,KAAK,CAACT,EADZ;MAEE,SAAS,EAAEE,OAAO,CAACW,UAFrB;MAGE,GAAG,EAAEJ,KAAK,CAACG,IAHb;MAIE,OAAO,EAAE;QAAA,OAAMN,cAAc,CAACI,KAAD,CAApB;MAAA,CAJX;MAKE,QAAQ,EAAEN,aAAa,CAACC,WAAD,CAAb,CAA2BL,EAA3B,KAAkCS,KAAK,CAACT,EALpD;MAME,YAAY,eAAE,6BAAC,gBAAD;QAAS,EAAE,EAAES,KAAK,CAACT;MAAnB;IANhB,gBAQE,6BAAC,QAAD,OARF,CADF;EAYD,CAdA,CADH,CADF,CADF;AAqBD,CAzBD;;AA2BA,wCAAAD,SAAS,CAACe,SAAV,GAAsB;EACpBd,EAAE,EAAEe,mBAAUC,MADM;EAEpBf,SAAS,EAAEc,mBAAUC;AAFD,CAAtB;eAKejB,S"}
1
+ {"version":3,"file":"LeftPanel.js","names":["LeftPanel","id","className","classes","useStyles","useContext","FilterGroupContext","filterOptions","activeGroup","setActiveGroup","setId","clsx","root","map","group","index","ItemText","wrapperTooltip","name","filterItem","propTypes","PropTypes","string"],"sources":["../../../src/FilterGroup/LeftPanel/LeftPanel.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { HvPanel, HvListContainer, HvListItem, setId } from \"../..\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport Counter from \"../Counter\";\nimport useStyles from \"./styles\";\nimport { wrapperTooltip } from \"../../List/utils\";\n\nconst LeftPanel = ({ id, className }) => {\n const classes = useStyles();\n const { filterOptions, activeGroup, setActiveGroup } = useContext(FilterGroupContext);\n\n return (\n <HvPanel id={setId(id, \"leftPanel\")} className={clsx(className, classes.root)}>\n <HvListContainer id={setId(id, \"leftPanel-list\")} condensed interactive>\n {filterOptions.map((group, index) => {\n const ItemText = wrapperTooltip(true, group.name, group.name);\n return (\n <HvListItem\n id={group.id}\n className={classes.filterItem}\n key={group.name}\n onClick={() => setActiveGroup(index)}\n selected={filterOptions[activeGroup].id === group.id}\n endAdornment={<Counter id={group.id} />}\n >\n <ItemText />\n </HvListItem>\n );\n })}\n </HvListContainer>\n </HvPanel>\n );\n};\n\nLeftPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n};\n\nexport default LeftPanel;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY,OAAuB;EAAA,IAApBC,EAAoB,QAApBA,EAAoB;EAAA,IAAhBC,SAAgB,QAAhBA,SAAgB;EACvC,IAAMC,OAAO,GAAG,IAAAC,eAAA,GAAhB;;EACA,kBAAuD,IAAAC,iBAAA,EAAWC,sCAAX,CAAvD;EAAA,IAAQC,aAAR,eAAQA,aAAR;EAAA,IAAuBC,WAAvB,eAAuBA,WAAvB;EAAA,IAAoCC,cAApC,eAAoCA,cAApC;;EAEA,oBACE,6BAAC,SAAD;IAAS,EAAE,EAAE,IAAAC,OAAA,EAAMT,EAAN,EAAU,WAAV,CAAb;IAAqC,SAAS,EAAE,IAAAU,aAAA,EAAKT,SAAL,EAAgBC,OAAO,CAACS,IAAxB;EAAhD,gBACE,6BAAC,iBAAD;IAAiB,EAAE,EAAE,IAAAF,OAAA,EAAMT,EAAN,EAAU,gBAAV,CAArB;IAAkD,SAAS,MAA3D;IAA4D,WAAW;EAAvE,GACGM,aAAa,CAACM,GAAd,CAAkB,UAACC,KAAD,EAAQC,KAAR,EAAkB;IACnC,IAAMC,QAAQ,GAAG,IAAAC,qBAAA,EAAe,IAAf,EAAqBH,KAAK,CAACI,IAA3B,EAAiCJ,KAAK,CAACI,IAAvC,CAAjB;IACA,oBACE,6BAAC,YAAD;MACE,EAAE,EAAEJ,KAAK,CAACb,EADZ;MAEE,SAAS,EAAEE,OAAO,CAACgB,UAFrB;MAGE,GAAG,EAAEL,KAAK,CAACI,IAHb;MAIE,OAAO,EAAE;QAAA,OAAMT,cAAc,CAACM,KAAD,CAApB;MAAA,CAJX;MAKE,QAAQ,EAAER,aAAa,CAACC,WAAD,CAAb,CAA2BP,EAA3B,KAAkCa,KAAK,CAACb,EALpD;MAME,YAAY,eAAE,6BAAC,gBAAD;QAAS,EAAE,EAAEa,KAAK,CAACb;MAAnB;IANhB,gBAQE,6BAAC,QAAD,OARF,CADF;EAYD,CAdA,CADH,CADF,CADF;AAqBD,CAzBD;;AA2BA,wCAAAD,SAAS,CAACoB,SAAV,GAAsB;EACpBnB,EAAE,EAAEoB,kBAAA,CAAUC,MADM;EAEpBpB,SAAS,EAAEmB,kBAAA,CAAUC;AAFD,CAAtB;eAKetB,S"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","root","display","justifyContent","filterItem"],"sources":["../../../src/FilterGroup/LeftPanel/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\n// accommodating the focus outline space with extra 4px\n\nconst styles = makeStyles(() => ({\n root: {\n \"& $filterItem\": {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n },\n filterItem: {},\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA;AAEA,IAAMA,MAAM,GAAG,sBAAW;EAAA,OAAO;IAC/BC,IAAI,EAAE;MACJ,iBAAiB;QACfC,OAAO,EAAE,MADM;QAEfC,cAAc,EAAE;MAFD;IADb,CADyB;IAO/BC,UAAU,EAAE;EAPmB,CAAP;AAAA,CAAX,CAAf;eAUeJ,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","makeStyles","root","display","justifyContent","filterItem"],"sources":["../../../src/FilterGroup/LeftPanel/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\n// accommodating the focus outline space with extra 4px\n\nconst styles = makeStyles(() => ({\n root: {\n \"& $filterItem\": {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n },\n filterItem: {},\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA;AAEA,IAAMA,MAAM,GAAG,IAAAC,gBAAA,EAAW;EAAA,OAAO;IAC/BC,IAAI,EAAE;MACJ,iBAAiB;QACfC,OAAO,EAAE,MADM;QAEfC,cAAc,EAAE;MAFD;IADb,CADyB;IAO/BC,UAAU,EAAE;EAPmB,CAAP;AAAA,CAAX,CAAf;eAUeL,M"}
@@ -1 +1 @@
1
- {"version":3,"file":"RightPanel.js","names":["RightPanel","id","className","labels","classes","searchStr","setSearchStr","allSelected","setAllSelected","anySelected","setAnySelected","FilterGroupContext","filterOptions","filterValues","setFilterValues","activeGroup","activeGroupOptions","data","map","option","activeFilterValues","filter","value","includes","listValues","label","name","selected","isHidden","toLowerCase","indexOf","updateSelectAll","nbrSelected","length","hasSelection","allSelect","onChangeHandler","values","newFilterValues","i","v","handleSelectAll","SelectAll","selectAll","multiSelectionConjunction","defaultLabel","selectAllContainer","container","selection","root","search","searchBoxPlaceholder","event","str","list","propTypes","PropTypes","string","shape"],"sources":["../../../src/FilterGroup/RightPanel/RightPanel.js"],"sourcesContent":["import React, { useMemo, useContext, useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport clsx from \"clsx\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport useStyles from \"./styles\";\nimport { setId, HvTypography, HvList, HvInput, HvPanel, HvCheckBox } from \"../..\";\n\nconst RightPanel = ({ id, className, labels }) => {\n const classes = useStyles();\n const [searchStr, setSearchStr] = useState(\"\");\n const [allSelected, setAllSelected] = useState(false);\n const [anySelected, setAnySelected] = useState(false);\n\n const {\n filterOptions,\n filterValues = [],\n setFilterValues,\n activeGroup,\n } = useContext(FilterGroupContext);\n\n const activeGroupOptions = useMemo(\n () => filterOptions[activeGroup].data.map((option) => option.id),\n [filterOptions, activeGroup]\n );\n\n const activeFilterValues = useMemo(\n () => filterValues[activeGroup]?.filter((value) => activeGroupOptions.includes(value)),\n [filterValues, activeGroupOptions, activeGroup]\n );\n\n const listValues = useMemo(\n () =>\n filterOptions[activeGroup].data.map((option) => ({\n ...option,\n label: option.name,\n selected: filterValues[activeGroup]?.includes(option.id),\n isHidden: option.name.toLowerCase().indexOf(searchStr.toLowerCase()) < 0,\n })),\n [filterOptions, filterValues, activeGroup, searchStr]\n );\n\n const updateSelectAll = useCallback(() => {\n const nbrSelected = activeFilterValues?.length;\n const hasSelection = nbrSelected > 0;\n const allSelect = nbrSelected === activeGroupOptions.length;\n\n setAnySelected(hasSelection);\n setAllSelected(hasSelection && allSelect);\n }, [activeFilterValues, activeGroupOptions]);\n\n useEffect(() => {\n updateSelectAll();\n }, [activeFilterValues, updateSelectAll]);\n\n useEffect(() => setSearchStr(\"\"), [activeGroup]);\n\n const onChangeHandler = (values) => {\n const newFilterValues = filterOptions.map((option, i) =>\n activeGroup === i\n ? values.filter((v) => v.selected).map((v) => v.id)\n : [...(filterValues[i] || [])]\n );\n setFilterValues(newFilterValues);\n };\n\n const handleSelectAll = useCallback(() => {\n const newFilterValues = cloneDeep(filterValues);\n newFilterValues[activeGroup] = anySelected ? [] : activeGroupOptions;\n\n setFilterValues(newFilterValues);\n }, [activeGroup, activeGroupOptions, anySelected, filterValues, setFilterValues]);\n\n /**\n * Create selecteAll component.\n *\n * @returns {*}\n */\n const SelectAll = useCallback(() => {\n const { selectAll, multiSelectionConjunction } = labels;\n const nbrSelected = activeFilterValues?.length;\n\n const defaultLabel = (\n <HvTypography component=\"span\">\n {nbrSelected > 0 ? (\n <>\n <b>{nbrSelected}</b>\n {` ${multiSelectionConjunction} ${activeGroupOptions.length}`}\n </>\n ) : (\n <>\n <b>{selectAll}</b>\n {` (${activeGroupOptions.length})`}\n </>\n )}\n </HvTypography>\n );\n\n return (\n <div className={classes.selectAllContainer}>\n <HvCheckBox\n id={setId(id, \"select-all\")}\n label={defaultLabel}\n onChange={() => handleSelectAll()}\n classes={{ container: classes.selection }}\n className={classes.selectAll}\n indeterminate={anySelected && !allSelected}\n checked={allSelected}\n />\n </div>\n );\n }, [\n activeFilterValues?.length,\n activeGroupOptions.length,\n allSelected,\n anySelected,\n classes.selectAll,\n classes.selectAllContainer,\n classes.selection,\n handleSelectAll,\n id,\n labels,\n ]);\n\n return (\n <HvPanel id={setId(id, \"rightPanel\")} className={clsx(className, classes.root)}>\n <HvInput\n id={setId(id, \"search\")}\n classes={{\n root: classes.search,\n }}\n type=\"search\"\n placeholder={labels.searchBoxPlaceholder}\n value={searchStr}\n onChange={(event, str) => setSearchStr(str)}\n />\n <SelectAll />\n <HvList\n key={activeGroup}\n id={setId(id, \"list\")}\n className={classes.list}\n values={listValues}\n multiSelect\n useSelector\n showSelectAll={false}\n onChange={onChangeHandler}\n selectable\n condensed\n hasTooltips\n />\n </HvPanel>\n );\n};\n\nRightPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n labels: PropTypes.shape({\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n};\n\nexport default RightPanel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"RightPanel.js","names":["RightPanel","id","className","labels","classes","useStyles","useState","searchStr","setSearchStr","allSelected","setAllSelected","anySelected","setAnySelected","useContext","FilterGroupContext","filterOptions","filterValues","setFilterValues","activeGroup","activeGroupOptions","useMemo","data","map","option","activeFilterValues","filter","value","includes","listValues","label","name","selected","isHidden","toLowerCase","indexOf","updateSelectAll","useCallback","nbrSelected","length","hasSelection","allSelect","useEffect","onChangeHandler","values","newFilterValues","i","v","handleSelectAll","cloneDeep","SelectAll","selectAll","multiSelectionConjunction","defaultLabel","selectAllContainer","setId","container","selection","clsx","root","search","searchBoxPlaceholder","event","str","list","propTypes","PropTypes","string","shape"],"sources":["../../../src/FilterGroup/RightPanel/RightPanel.js"],"sourcesContent":["import React, { useMemo, useContext, useState, useEffect, useCallback } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cloneDeep from \"lodash/cloneDeep\";\nimport clsx from \"clsx\";\nimport { FilterGroupContext } from \"../FilterGroupContext\";\nimport useStyles from \"./styles\";\nimport { setId, HvTypography, HvList, HvInput, HvPanel, HvCheckBox } from \"../..\";\n\nconst RightPanel = ({ id, className, labels }) => {\n const classes = useStyles();\n const [searchStr, setSearchStr] = useState(\"\");\n const [allSelected, setAllSelected] = useState(false);\n const [anySelected, setAnySelected] = useState(false);\n\n const {\n filterOptions,\n filterValues = [],\n setFilterValues,\n activeGroup,\n } = useContext(FilterGroupContext);\n\n const activeGroupOptions = useMemo(\n () => filterOptions[activeGroup].data.map((option) => option.id),\n [filterOptions, activeGroup]\n );\n\n const activeFilterValues = useMemo(\n () => filterValues[activeGroup]?.filter((value) => activeGroupOptions.includes(value)),\n [filterValues, activeGroupOptions, activeGroup]\n );\n\n const listValues = useMemo(\n () =>\n filterOptions[activeGroup].data.map((option) => ({\n ...option,\n label: option.name,\n selected: filterValues[activeGroup]?.includes(option.id),\n isHidden: option.name.toLowerCase().indexOf(searchStr.toLowerCase()) < 0,\n })),\n [filterOptions, filterValues, activeGroup, searchStr]\n );\n\n const updateSelectAll = useCallback(() => {\n const nbrSelected = activeFilterValues?.length;\n const hasSelection = nbrSelected > 0;\n const allSelect = nbrSelected === activeGroupOptions.length;\n\n setAnySelected(hasSelection);\n setAllSelected(hasSelection && allSelect);\n }, [activeFilterValues, activeGroupOptions]);\n\n useEffect(() => {\n updateSelectAll();\n }, [activeFilterValues, updateSelectAll]);\n\n useEffect(() => setSearchStr(\"\"), [activeGroup]);\n\n const onChangeHandler = (values) => {\n const newFilterValues = filterOptions.map((option, i) =>\n activeGroup === i\n ? values.filter((v) => v.selected).map((v) => v.id)\n : [...(filterValues[i] || [])]\n );\n setFilterValues(newFilterValues);\n };\n\n const handleSelectAll = useCallback(() => {\n const newFilterValues = cloneDeep(filterValues);\n newFilterValues[activeGroup] = anySelected ? [] : activeGroupOptions;\n\n setFilterValues(newFilterValues);\n }, [activeGroup, activeGroupOptions, anySelected, filterValues, setFilterValues]);\n\n /**\n * Create selecteAll component.\n *\n * @returns {*}\n */\n const SelectAll = useCallback(() => {\n const { selectAll, multiSelectionConjunction } = labels;\n const nbrSelected = activeFilterValues?.length;\n\n const defaultLabel = (\n <HvTypography component=\"span\">\n {nbrSelected > 0 ? (\n <>\n <b>{nbrSelected}</b>\n {` ${multiSelectionConjunction} ${activeGroupOptions.length}`}\n </>\n ) : (\n <>\n <b>{selectAll}</b>\n {` (${activeGroupOptions.length})`}\n </>\n )}\n </HvTypography>\n );\n\n return (\n <div className={classes.selectAllContainer}>\n <HvCheckBox\n id={setId(id, \"select-all\")}\n label={defaultLabel}\n onChange={() => handleSelectAll()}\n classes={{ container: classes.selection }}\n className={classes.selectAll}\n indeterminate={anySelected && !allSelected}\n checked={allSelected}\n />\n </div>\n );\n }, [\n activeFilterValues?.length,\n activeGroupOptions.length,\n allSelected,\n anySelected,\n classes.selectAll,\n classes.selectAllContainer,\n classes.selection,\n handleSelectAll,\n id,\n labels,\n ]);\n\n return (\n <HvPanel id={setId(id, \"rightPanel\")} className={clsx(className, classes.root)}>\n <HvInput\n id={setId(id, \"search\")}\n classes={{\n root: classes.search,\n }}\n type=\"search\"\n placeholder={labels.searchBoxPlaceholder}\n value={searchStr}\n onChange={(event, str) => setSearchStr(str)}\n />\n <SelectAll />\n <HvList\n key={activeGroup}\n id={setId(id, \"list\")}\n className={classes.list}\n values={listValues}\n multiSelect\n useSelector\n showSelectAll={false}\n onChange={onChangeHandler}\n selectable\n condensed\n hasTooltips\n />\n </HvPanel>\n );\n};\n\nRightPanel.propTypes = {\n id: PropTypes.string,\n className: PropTypes.string,\n labels: PropTypes.shape({\n searchBoxPlaceholder: PropTypes.string,\n selectAll: PropTypes.string,\n multiSelectionConjunction: PropTypes.string,\n }),\n};\n\nexport default RightPanel;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","width","height","overflowY","margin","padding","search","marginBottom","hvSpacing","list","hiddenOption","display","selectAllContainer","position","zIndex","selectAll"],"sources":["../../../src/FilterGroup/RightPanel/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n \"& ul$list\": {\n width: \"calc(100% + 8px)\",\n height: \"calc(100% - 70px)\",\n overflowY: \"auto\",\n margin: -4,\n padding: 4,\n },\n },\n search: {\n marginBottom: theme.hvSpacing(\"xs\"),\n },\n list: {},\n hiddenOption: {\n display: \"none\",\n },\n selectAllContainer: {\n // prevent the focus ring to be hidden by sibling hover background\n \"&\": {\n position: \"relative\",\n zIndex: 0,\n },\n \"&:focus-within\": {\n zIndex: 1,\n },\n // IE fallback code (using focus-within-polyfill)\n \"&.focus-within\": {\n zIndex: 1,\n },\n },\n selectAll: {\n width: \"100%\",\n },\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,sBAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJ,aAAa;QACXC,KAAK,EAAE,kBADI;QAEXC,MAAM,EAAE,mBAFG;QAGXC,SAAS,EAAE,MAHA;QAIXC,MAAM,EAAE,CAAC,CAJE;QAKXC,OAAO,EAAE;MALE;IADT,CAD8B;IAUpCC,MAAM,EAAE;MACNC,YAAY,EAAER,KAAK,CAACS,SAAN,CAAgB,IAAhB;IADR,CAV4B;IAapCC,IAAI,EAAE,EAb8B;IAcpCC,YAAY,EAAE;MACZC,OAAO,EAAE;IADG,CAdsB;IAiBpCC,kBAAkB,EAAE;MAClB;MACA,KAAK;QACHC,QAAQ,EAAE,UADP;QAEHC,MAAM,EAAE;MAFL,CAFa;MAMlB,kBAAkB;QAChBA,MAAM,EAAE;MADQ,CANA;MASlB;MACA,kBAAkB;QAChBA,MAAM,EAAE;MADQ;IAVA,CAjBgB;IA+BpCC,SAAS,EAAE;MACTd,KAAK,EAAE;IADE;EA/ByB,CAAZ;AAAA,CAAX,CAAf;eAoCeH,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","makeStyles","theme","root","width","height","overflowY","margin","padding","search","marginBottom","hvSpacing","list","hiddenOption","display","selectAllContainer","position","zIndex","selectAll"],"sources":["../../../src/FilterGroup/RightPanel/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n root: {\n \"& ul$list\": {\n width: \"calc(100% + 8px)\",\n height: \"calc(100% - 70px)\",\n overflowY: \"auto\",\n margin: -4,\n padding: 4,\n },\n },\n search: {\n marginBottom: theme.hvSpacing(\"xs\"),\n },\n list: {},\n hiddenOption: {\n display: \"none\",\n },\n selectAllContainer: {\n // prevent the focus ring to be hidden by sibling hover background\n \"&\": {\n position: \"relative\",\n zIndex: 0,\n },\n \"&:focus-within\": {\n zIndex: 1,\n },\n // IE fallback code (using focus-within-polyfill)\n \"&.focus-within\": {\n zIndex: 1,\n },\n },\n selectAll: {\n width: \"100%\",\n },\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,IAAAC,gBAAA,EAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,IAAI,EAAE;MACJ,aAAa;QACXC,KAAK,EAAE,kBADI;QAEXC,MAAM,EAAE,mBAFG;QAGXC,SAAS,EAAE,MAHA;QAIXC,MAAM,EAAE,CAAC,CAJE;QAKXC,OAAO,EAAE;MALE;IADT,CAD8B;IAUpCC,MAAM,EAAE;MACNC,YAAY,EAAER,KAAK,CAACS,SAAN,CAAgB,IAAhB;IADR,CAV4B;IAapCC,IAAI,EAAE,EAb8B;IAcpCC,YAAY,EAAE;MACZC,OAAO,EAAE;IADG,CAdsB;IAiBpCC,kBAAkB,EAAE;MAClB;MACA,KAAK;QACHC,QAAQ,EAAE,UADP;QAEHC,MAAM,EAAE;MAFL,CAFa;MAMlB,kBAAkB;QAChBA,MAAM,EAAE;MADQ,CANA;MASlB;MACA,kBAAkB;QAChBA,MAAM,EAAE;MADQ;IAVA,CAjBgB;IA+BpCC,SAAS,EAAE;MACTd,KAAK,EAAE;IADE;EA/ByB,CAAZ;AAAA,CAAX,CAAf;eAoCeJ,M"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","dropdownPanel","backgroundColor","hv","palette","atmosphere","atmo1","actionBar","width","labelContainer","display","alignItems","label","paddingBottom"],"sources":["../../src/FilterGroup/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n dropdownPanel: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n actionBar: {\n width: \"100%\",\n },\n labelContainer: {\n display: \"flex\",\n alignItems: \"flex-start\",\n },\n label: {\n paddingBottom: \"6px\",\n display: \"block\",\n },\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,sBAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,aAAa,EAAE;MACbC,eAAe,EAAEF,KAAK,CAACG,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADhC,CADqB;IAIpCC,SAAS,EAAE;MACTC,KAAK,EAAE;IADE,CAJyB;IAOpCC,cAAc,EAAE;MACdC,OAAO,EAAE,MADK;MAEdC,UAAU,EAAE;IAFE,CAPoB;IAWpCC,KAAK,EAAE;MACLC,aAAa,EAAE,KADV;MAELH,OAAO,EAAE;IAFJ;EAX6B,CAAZ;AAAA,CAAX,CAAf;eAiBeX,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","makeStyles","theme","dropdownPanel","backgroundColor","hv","palette","atmosphere","atmo1","actionBar","width","labelContainer","display","alignItems","label","paddingBottom"],"sources":["../../src/FilterGroup/styles.js"],"sourcesContent":["import { makeStyles } from \"@material-ui/core\";\n\nconst styles = makeStyles((theme) => ({\n dropdownPanel: {\n backgroundColor: theme.hv.palette.atmosphere.atmo1,\n },\n actionBar: {\n width: \"100%\",\n },\n labelContainer: {\n display: \"flex\",\n alignItems: \"flex-start\",\n },\n label: {\n paddingBottom: \"6px\",\n display: \"block\",\n },\n}));\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,IAAAC,gBAAA,EAAW,UAACC,KAAD;EAAA,OAAY;IACpCC,aAAa,EAAE;MACbC,eAAe,EAAEF,KAAK,CAACG,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC;IADhC,CADqB;IAIpCC,SAAS,EAAE;MACTC,KAAK,EAAE;IADE,CAJyB;IAOpCC,cAAc,EAAE;MACdC,OAAO,EAAE,MADK;MAEdC,UAAU,EAAE;IAFE,CAPoB;IAWpCC,KAAK,EAAE;MACLC,aAAa,EAAE,KADV;MAELH,OAAO,EAAE;IAFJ;EAX6B,CAAZ;AAAA,CAAX,CAAf;eAiBeZ,M"}
@@ -1 +1 @@
1
- {"version":3,"file":"Focus.js","names":["Focus","props","classes","children","configuration","disabledClass","selected","disabled","rootRef","focusOnClick","focusDisabled","strategy","useFalseFocus","filterClass","navigationJump","showFocus","setShowFocus","childFocus","setChildFocus","hasRunConfig","setHasRunConfig","getFocuses","current","Array","from","getElementsByClassName","root","setTabIndex","el","tabIndex","elChildFocus","setSelectedTabIndex","focuses","firstSelected","find","focus","classList","contains","forEach","clearTabSiblings","onFocusStrategy","evt","currentTarget","onBlurStrategy","document","activeElement","setTimeout","config","focusableChildren","length","child","addFocusClass","add","focused","split","c","removeFocusClass","element","remove","onFocus","onBlur","onMouseDown","hasCard","querySelector","focusAndUpdateIndex","nextFocus","previousFocus","focusesList","includes","getEnabledKeys","currentFocusIndex","jump","listSize","right","left","up","down","onGridKeyDownHandler","ArrowUp","KeyboardCodes","ArrowDown","Home","End","ArrowLeft","ArrowRight","Enter","SpaceBar","childFocusIsInput","nodeName","preventDefault","stopPropagation","blockedKeys","keyCode","target","click","last","fall","first","previous","next","onVerticalArrangementHandler","onSingleHandler","onKeyDown","isDisabledFocusable","filter","currentFocus","indexOf","onKeyUp","focusWrapper","childrenToWrap","externalReference","falseFocus","React","cloneElement","className","ref","propTypes","PropTypes","shape","string","focusGridDisabled","isRequired","refType","instanceOf","Object","bool","node","oneOf","number","styles","name"],"sources":["../../src/Focus/Focus.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport { withStyles } from \"@material-ui/core\";\nimport { KeyboardCodes, isBrowser, refType } from \"../utils\";\nimport ConditionalWrapper from \"../utils/ConditionalWrapper\";\nimport { isKey, isOneOfKeys, setFocusTo, getFocusableChildren } from \"./utils\";\nimport styles from \"./styles\";\n\n/* eslint-disable no-param-reassign */\nconst Focus = (props) => {\n const {\n classes,\n children,\n configuration = {},\n disabledClass = false,\n selected = false,\n disabled = false,\n rootRef = {},\n focusOnClick = false,\n focusDisabled = true,\n strategy = \"listbox\",\n useFalseFocus = false,\n filterClass,\n navigationJump = 4,\n } = props;\n const [showFocus, setShowFocus] = useState(null);\n const [childFocus, setChildFocus] = useState(null);\n const [hasRunConfig, setHasRunConfig] = useState(false);\n\n const getFocuses = () =>\n rootRef.current\n ? Array.from(rootRef.current.getElementsByClassName(filterClass || classes.root))\n : [];\n\n const setTabIndex = (el, tabIndex = 0) => {\n const elChildFocus = getFocusableChildren(el)[0];\n if (elChildFocus) {\n el.tabIndex = -1;\n elChildFocus.tabIndex = tabIndex;\n } else {\n el.tabIndex = tabIndex;\n }\n };\n\n const setSelectedTabIndex = () => {\n const focuses = getFocuses();\n const firstSelected = focuses.find((focus) => focus.classList.contains(classes.selected));\n\n if (!firstSelected) return;\n focuses.forEach((focus) => setTabIndex(focus, -1));\n setTabIndex(firstSelected, 0);\n };\n\n const clearTabSiblings = (el) => {\n getFocuses().forEach((focus) => setTabIndex(focus, -1));\n setTabIndex(el, 0);\n };\n\n const onFocusStrategy = (evt) => {\n if (strategy === \"listbox\") {\n clearTabSiblings(evt.currentTarget);\n }\n };\n\n const onBlurStrategy = () => {\n if (\n strategy === \"listbox\" &&\n rootRef.current &&\n !rootRef.current.contains(document.activeElement)\n ) {\n setTimeout(() => {\n setSelectedTabIndex();\n }, 10);\n }\n };\n\n const config = (el) => {\n const { tabIndex } = configuration;\n if (!el || hasRunConfig) return;\n if (strategy === \"card\") {\n setChildFocus(children);\n return;\n }\n\n if (strategy === \"grid\") {\n return;\n }\n\n const focusableChildren = getFocusableChildren(el);\n if (focusableChildren.length) {\n focusableChildren.forEach((child) => setTabIndex(child, -1));\n setChildFocus(focusableChildren[0]);\n }\n\n if (!isNil(tabIndex)) setTabIndex(el, tabIndex);\n setHasRunConfig(true);\n };\n\n const addFocusClass = (evt) => {\n if (!useFalseFocus) {\n evt.currentTarget.classList.add(classes.focused);\n // add global class HvIsFocused as a marker\n // not to be styled directly, only as helper in specific css queries\n evt.currentTarget.classList.add(\"HvIsFocused\");\n classes.focus.split(\" \").forEach((c) => evt.currentTarget.classList.add(c));\n }\n };\n\n const removeFocusClass = () => {\n if (!useFalseFocus) {\n getFocuses().forEach((element) => {\n element.classList.remove(classes.focused);\n // remove the global class HvIsFocused\n element.classList.remove(\"HvIsFocused\");\n classes.focus.split(\" \").forEach((c) => element.classList.remove(c));\n });\n }\n };\n\n const onFocus = (evt) => {\n addFocusClass(evt);\n setShowFocus(true);\n // give focus to child element if any focusable\n\n if (childFocus && childFocus.focus) childFocus.focus();\n onFocusStrategy(evt);\n };\n\n const onBlur = (evt) => {\n setShowFocus(false);\n removeFocusClass(evt);\n onBlurStrategy(evt);\n };\n\n const onMouseDown = (evt) => {\n const hasCard = !!evt.currentTarget?.querySelector(\".HvIsCardGridElement\");\n if (strategy === \"grid\" && hasCard) return;\n\n setFocusTo(evt.currentTarget);\n setTabIndex(evt.currentTarget, 0);\n // remove focus outline unless explicitly enabled\n if (!focusOnClick) {\n // TODO this piece of code works only because onMouseDown is happening after the focus event\n // There is nothing in here that guarantees the order of these events, so it may present a problem in the future\n removeFocusClass(evt);\n setShowFocus(false);\n }\n };\n\n const focusAndUpdateIndex = (nextFocus, previousFocus, focusesList) => {\n if (focusesList?.includes(previousFocus)) {\n setTabIndex(previousFocus, -1);\n }\n setTabIndex(nextFocus, 0);\n setFocusTo(nextFocus);\n };\n\n const getEnabledKeys = (currentFocusIndex, jump, listSize) => ({\n right: (currentFocusIndex + 1) % jump === 0 || currentFocusIndex + 1 > listSize - 1,\n left: currentFocusIndex % jump === 0,\n up: currentFocusIndex - jump < 0,\n down: currentFocusIndex + jump > listSize || currentFocusIndex + jump > listSize - 1,\n });\n\n const onGridKeyDownHandler = (evt, focuses, focusesList, currentFocusIndex, jump) => {\n const { ArrowUp, ArrowDown, Home, End, ArrowLeft, ArrowRight, Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (\n !isOneOfKeys(evt, [ArrowUp, ArrowDown, ArrowLeft, ArrowRight, Home, End, SpaceBar, Enter]) ||\n (childFocusIsInput && isKey(evt, Enter))\n ) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n // except for Enter and SpaceBar\n if (!isOneOfKeys(evt, [Enter, SpaceBar])) {\n evt.preventDefault();\n evt.stopPropagation();\n }\n\n const blockedKeys = getEnabledKeys(currentFocusIndex, jump, focusesList.length);\n\n switch (evt.keyCode) {\n case SpaceBar:\n case Enter:\n if (isBrowser(\"firefox\")) {\n evt.target.click();\n } else {\n evt.currentTarget.click();\n }\n break;\n case ArrowUp:\n if (!blockedKeys.up) {\n focusAndUpdateIndex(focuses.jump || focuses.last, evt.current, focusesList);\n }\n break;\n case ArrowDown:\n if (!blockedKeys.down) {\n focusAndUpdateIndex(focuses.fall || focuses.first, evt.current, focusesList);\n }\n break;\n case ArrowLeft:\n if (!blockedKeys.left) {\n focusAndUpdateIndex(focuses.previous || focuses.last, evt.current, focusesList);\n }\n break;\n case ArrowRight:\n if (!blockedKeys.right) {\n focusAndUpdateIndex(focuses.next || focuses.first, evt.current, focusesList);\n }\n break;\n case Home:\n focusAndUpdateIndex(focuses.first, evt.current, focusesList);\n break;\n case End:\n focusAndUpdateIndex(focuses.last, evt.current, focusesList);\n break;\n default:\n }\n };\n\n const onVerticalArrangementHandler = (evt, focuses, focusesList) => {\n const { ArrowUp, ArrowDown, Home, End, Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (\n !isOneOfKeys(evt, [ArrowUp, ArrowDown, Home, End, SpaceBar, Enter]) ||\n (childFocusIsInput && isKey(evt, Enter))\n ) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n evt.preventDefault();\n evt.stopPropagation();\n\n switch (evt.keyCode) {\n case SpaceBar:\n case Enter:\n evt.target.click();\n break;\n case ArrowUp:\n focusAndUpdateIndex(focuses.previous || focuses.last, evt.current, focusesList);\n break;\n case ArrowDown:\n focusAndUpdateIndex(focuses.next || focuses.first, evt.current, focusesList);\n break;\n case Home:\n focusAndUpdateIndex(focuses.first, evt.current, focusesList);\n break;\n case End:\n focusAndUpdateIndex(focuses.last, evt.current, focusesList);\n break;\n default:\n }\n };\n\n const onSingleHandler = (evt) => {\n const { Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (!isOneOfKeys(evt, [SpaceBar, Enter]) || (childFocusIsInput && isKey(evt, Enter))) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n evt.preventDefault();\n evt.stopPropagation();\n\n evt.currentTarget.click();\n };\n\n const onKeyDown = (evt) => {\n if (rootRef.current == null) {\n // operating outside of a composite widget\n // nothing to manage, just style and trigger clicks\n onSingleHandler(evt);\n return;\n }\n\n // TODO keep the smart default, but allow to explictly override if disabled elements should be focusable\n const isDisabledFocusable = strategy === \"menu\";\n const focusesList = getFocuses().filter(\n (el) => isDisabledFocusable || !el.classList.contains(classes.disabled)\n );\n\n const currentFocus = focusesList.indexOf(evt.currentTarget);\n\n const focuses = {\n first: focusesList[0],\n last: focusesList[focusesList.length - 1],\n previous: focusesList[currentFocus - 1],\n next: focusesList[currentFocus + 1],\n fall: focusesList[currentFocus + navigationJump],\n jump: focusesList[currentFocus - navigationJump],\n };\n\n if (strategy === \"grid\") {\n onGridKeyDownHandler(evt, focuses, focusesList, currentFocus, navigationJump);\n return;\n }\n\n // TODO add property for specifing the composite widget orientation\n // TODO implement handler for horizontal orientation\n onVerticalArrangementHandler(evt, focuses, focusesList);\n };\n\n const onKeyUp = (evt) => {\n if (isBrowser(\"firefox\")) evt.preventDefault();\n };\n\n if (disabled) return children;\n\n const focusWrapper = (childrenToWrap) => (\n <div className={classes.externalReference}>\n {childrenToWrap}\n {showFocus && <div className={classes.falseFocus} />}\n </div>\n );\n\n return (\n <ConditionalWrapper condition={useFalseFocus} wrapper={focusWrapper}>\n {React.cloneElement(children, {\n className: clsx(children.props.className, [classes.root, filterClass], {\n [classes.selected]: selected,\n [classes.disabled]: disabledClass,\n [classes.focusDisabled]: focusDisabled,\n }),\n ref: config,\n onFocus,\n onBlur,\n onMouseDown,\n onKeyDown,\n onKeyUp,\n selected,\n })}\n </ConditionalWrapper>\n );\n};\n\nFocus.propTypes = {\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the root.\n */\n root: PropTypes.string,\n /**\n * Styles applied when component is selected.\n */\n selected: PropTypes.string,\n /**\n * Styles applied when component is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Styles applied to external reference.\n */\n externalReference: PropTypes.string,\n /**\n * Styles applied when using the false focus.\n */\n falseFocus: PropTypes.string,\n /**\n * Styles applied when focus disabled.\n */\n focusDisabled: PropTypes.string,\n focusGridDisabled: PropTypes.string,\n /**\n * Styles applied when focus active.\n */\n focused: PropTypes.string,\n /**\n * Styles applied when focus customization is passed.\n */\n focus: PropTypes.string,\n }).isRequired,\n /**\n * The reference to the root element to hold all Focus' context.\n */\n rootRef: refType,\n /**\n * Extra configuration for the child element.\n */\n configuration: PropTypes.instanceOf(Object),\n /**\n * Whether the focus is selected.\n */\n selected: PropTypes.bool,\n /**\n * Whether the focus is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Child node to set the focus.\n */\n children: PropTypes.node.isRequired,\n /**\n * Focus and navigation strategy to be used.\n */\n strategy: PropTypes.oneOf([\"listbox\", \"menu\", \"card\", \"grid\"]),\n /**\n * Show focus when click element.\n */\n focusOnClick: PropTypes.bool,\n /**\n * Show focus when click element.\n */\n focusDisabled: PropTypes.bool,\n /**\n * Indicates that the disabled class should be applied.\n */\n disabledClass: PropTypes.bool,\n /**\n * Uses an absolute positioned div as a focus.\n */\n useFalseFocus: PropTypes.bool,\n /**\n * Narrows the results of the focus to only theses class\n */\n filterClass: PropTypes.string,\n /**\n * How much the navigation will skip when using the arrows.\n */\n navigationJump: PropTypes.number,\n};\n\nexport default withStyles(styles, { name: \"HvFocus\" })(Focus);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Focus.js","names":["Focus","props","classes","children","configuration","disabledClass","selected","disabled","rootRef","focusOnClick","focusDisabled","strategy","useFalseFocus","filterClass","navigationJump","useState","showFocus","setShowFocus","childFocus","setChildFocus","hasRunConfig","setHasRunConfig","getFocuses","current","Array","from","getElementsByClassName","root","setTabIndex","el","tabIndex","elChildFocus","getFocusableChildren","setSelectedTabIndex","focuses","firstSelected","find","focus","classList","contains","forEach","clearTabSiblings","onFocusStrategy","evt","currentTarget","onBlurStrategy","document","activeElement","setTimeout","config","focusableChildren","length","child","isNil","addFocusClass","add","focused","split","c","removeFocusClass","element","remove","onFocus","onBlur","onMouseDown","hasCard","querySelector","setFocusTo","focusAndUpdateIndex","nextFocus","previousFocus","focusesList","includes","getEnabledKeys","currentFocusIndex","jump","listSize","right","left","up","down","onGridKeyDownHandler","ArrowUp","KeyboardCodes","ArrowDown","Home","End","ArrowLeft","ArrowRight","Enter","SpaceBar","childFocusIsInput","nodeName","isOneOfKeys","isKey","preventDefault","stopPropagation","blockedKeys","keyCode","isBrowser","target","click","last","fall","first","previous","next","onVerticalArrangementHandler","onSingleHandler","onKeyDown","isDisabledFocusable","filter","currentFocus","indexOf","onKeyUp","focusWrapper","childrenToWrap","externalReference","falseFocus","React","cloneElement","className","clsx","ref","propTypes","PropTypes","shape","string","focusGridDisabled","isRequired","refType","instanceOf","Object","bool","node","oneOf","number","withStyles","styles","name"],"sources":["../../src/Focus/Focus.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport isNil from \"lodash/isNil\";\nimport { withStyles } from \"@material-ui/core\";\nimport { KeyboardCodes, isBrowser, refType } from \"../utils\";\nimport ConditionalWrapper from \"../utils/ConditionalWrapper\";\nimport { isKey, isOneOfKeys, setFocusTo, getFocusableChildren } from \"./utils\";\nimport styles from \"./styles\";\n\n/* eslint-disable no-param-reassign */\nconst Focus = (props) => {\n const {\n classes,\n children,\n configuration = {},\n disabledClass = false,\n selected = false,\n disabled = false,\n rootRef = {},\n focusOnClick = false,\n focusDisabled = true,\n strategy = \"listbox\",\n useFalseFocus = false,\n filterClass,\n navigationJump = 4,\n } = props;\n const [showFocus, setShowFocus] = useState(null);\n const [childFocus, setChildFocus] = useState(null);\n const [hasRunConfig, setHasRunConfig] = useState(false);\n\n const getFocuses = () =>\n rootRef.current\n ? Array.from(rootRef.current.getElementsByClassName(filterClass || classes.root))\n : [];\n\n const setTabIndex = (el, tabIndex = 0) => {\n const elChildFocus = getFocusableChildren(el)[0];\n if (elChildFocus) {\n el.tabIndex = -1;\n elChildFocus.tabIndex = tabIndex;\n } else {\n el.tabIndex = tabIndex;\n }\n };\n\n const setSelectedTabIndex = () => {\n const focuses = getFocuses();\n const firstSelected = focuses.find((focus) => focus.classList.contains(classes.selected));\n\n if (!firstSelected) return;\n focuses.forEach((focus) => setTabIndex(focus, -1));\n setTabIndex(firstSelected, 0);\n };\n\n const clearTabSiblings = (el) => {\n getFocuses().forEach((focus) => setTabIndex(focus, -1));\n setTabIndex(el, 0);\n };\n\n const onFocusStrategy = (evt) => {\n if (strategy === \"listbox\") {\n clearTabSiblings(evt.currentTarget);\n }\n };\n\n const onBlurStrategy = () => {\n if (\n strategy === \"listbox\" &&\n rootRef.current &&\n !rootRef.current.contains(document.activeElement)\n ) {\n setTimeout(() => {\n setSelectedTabIndex();\n }, 10);\n }\n };\n\n const config = (el) => {\n const { tabIndex } = configuration;\n if (!el || hasRunConfig) return;\n if (strategy === \"card\") {\n setChildFocus(children);\n return;\n }\n\n if (strategy === \"grid\") {\n return;\n }\n\n const focusableChildren = getFocusableChildren(el);\n if (focusableChildren.length) {\n focusableChildren.forEach((child) => setTabIndex(child, -1));\n setChildFocus(focusableChildren[0]);\n }\n\n if (!isNil(tabIndex)) setTabIndex(el, tabIndex);\n setHasRunConfig(true);\n };\n\n const addFocusClass = (evt) => {\n if (!useFalseFocus) {\n evt.currentTarget.classList.add(classes.focused);\n // add global class HvIsFocused as a marker\n // not to be styled directly, only as helper in specific css queries\n evt.currentTarget.classList.add(\"HvIsFocused\");\n classes.focus.split(\" \").forEach((c) => evt.currentTarget.classList.add(c));\n }\n };\n\n const removeFocusClass = () => {\n if (!useFalseFocus) {\n getFocuses().forEach((element) => {\n element.classList.remove(classes.focused);\n // remove the global class HvIsFocused\n element.classList.remove(\"HvIsFocused\");\n classes.focus.split(\" \").forEach((c) => element.classList.remove(c));\n });\n }\n };\n\n const onFocus = (evt) => {\n addFocusClass(evt);\n setShowFocus(true);\n // give focus to child element if any focusable\n\n if (childFocus && childFocus.focus) childFocus.focus();\n onFocusStrategy(evt);\n };\n\n const onBlur = (evt) => {\n setShowFocus(false);\n removeFocusClass(evt);\n onBlurStrategy(evt);\n };\n\n const onMouseDown = (evt) => {\n const hasCard = !!evt.currentTarget?.querySelector(\".HvIsCardGridElement\");\n if (strategy === \"grid\" && hasCard) return;\n\n setFocusTo(evt.currentTarget);\n setTabIndex(evt.currentTarget, 0);\n // remove focus outline unless explicitly enabled\n if (!focusOnClick) {\n // TODO this piece of code works only because onMouseDown is happening after the focus event\n // There is nothing in here that guarantees the order of these events, so it may present a problem in the future\n removeFocusClass(evt);\n setShowFocus(false);\n }\n };\n\n const focusAndUpdateIndex = (nextFocus, previousFocus, focusesList) => {\n if (focusesList?.includes(previousFocus)) {\n setTabIndex(previousFocus, -1);\n }\n setTabIndex(nextFocus, 0);\n setFocusTo(nextFocus);\n };\n\n const getEnabledKeys = (currentFocusIndex, jump, listSize) => ({\n right: (currentFocusIndex + 1) % jump === 0 || currentFocusIndex + 1 > listSize - 1,\n left: currentFocusIndex % jump === 0,\n up: currentFocusIndex - jump < 0,\n down: currentFocusIndex + jump > listSize || currentFocusIndex + jump > listSize - 1,\n });\n\n const onGridKeyDownHandler = (evt, focuses, focusesList, currentFocusIndex, jump) => {\n const { ArrowUp, ArrowDown, Home, End, ArrowLeft, ArrowRight, Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (\n !isOneOfKeys(evt, [ArrowUp, ArrowDown, ArrowLeft, ArrowRight, Home, End, SpaceBar, Enter]) ||\n (childFocusIsInput && isKey(evt, Enter))\n ) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n // except for Enter and SpaceBar\n if (!isOneOfKeys(evt, [Enter, SpaceBar])) {\n evt.preventDefault();\n evt.stopPropagation();\n }\n\n const blockedKeys = getEnabledKeys(currentFocusIndex, jump, focusesList.length);\n\n switch (evt.keyCode) {\n case SpaceBar:\n case Enter:\n if (isBrowser(\"firefox\")) {\n evt.target.click();\n } else {\n evt.currentTarget.click();\n }\n break;\n case ArrowUp:\n if (!blockedKeys.up) {\n focusAndUpdateIndex(focuses.jump || focuses.last, evt.current, focusesList);\n }\n break;\n case ArrowDown:\n if (!blockedKeys.down) {\n focusAndUpdateIndex(focuses.fall || focuses.first, evt.current, focusesList);\n }\n break;\n case ArrowLeft:\n if (!blockedKeys.left) {\n focusAndUpdateIndex(focuses.previous || focuses.last, evt.current, focusesList);\n }\n break;\n case ArrowRight:\n if (!blockedKeys.right) {\n focusAndUpdateIndex(focuses.next || focuses.first, evt.current, focusesList);\n }\n break;\n case Home:\n focusAndUpdateIndex(focuses.first, evt.current, focusesList);\n break;\n case End:\n focusAndUpdateIndex(focuses.last, evt.current, focusesList);\n break;\n default:\n }\n };\n\n const onVerticalArrangementHandler = (evt, focuses, focusesList) => {\n const { ArrowUp, ArrowDown, Home, End, Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (\n !isOneOfKeys(evt, [ArrowUp, ArrowDown, Home, End, SpaceBar, Enter]) ||\n (childFocusIsInput && isKey(evt, Enter))\n ) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n evt.preventDefault();\n evt.stopPropagation();\n\n switch (evt.keyCode) {\n case SpaceBar:\n case Enter:\n evt.target.click();\n break;\n case ArrowUp:\n focusAndUpdateIndex(focuses.previous || focuses.last, evt.current, focusesList);\n break;\n case ArrowDown:\n focusAndUpdateIndex(focuses.next || focuses.first, evt.current, focusesList);\n break;\n case Home:\n focusAndUpdateIndex(focuses.first, evt.current, focusesList);\n break;\n case End:\n focusAndUpdateIndex(focuses.last, evt.current, focusesList);\n break;\n default:\n }\n };\n\n const onSingleHandler = (evt) => {\n const { Enter, SpaceBar } = KeyboardCodes;\n const childFocusIsInput = childFocus && childFocus.nodeName === \"INPUT\";\n\n if (!isOneOfKeys(evt, [SpaceBar, Enter]) || (childFocusIsInput && isKey(evt, Enter))) {\n // nothing to do\n return;\n }\n\n // we'll do something with the key so prevent default and stop propagation\n evt.preventDefault();\n evt.stopPropagation();\n\n evt.currentTarget.click();\n };\n\n const onKeyDown = (evt) => {\n if (rootRef.current == null) {\n // operating outside of a composite widget\n // nothing to manage, just style and trigger clicks\n onSingleHandler(evt);\n return;\n }\n\n // TODO keep the smart default, but allow to explictly override if disabled elements should be focusable\n const isDisabledFocusable = strategy === \"menu\";\n const focusesList = getFocuses().filter(\n (el) => isDisabledFocusable || !el.classList.contains(classes.disabled)\n );\n\n const currentFocus = focusesList.indexOf(evt.currentTarget);\n\n const focuses = {\n first: focusesList[0],\n last: focusesList[focusesList.length - 1],\n previous: focusesList[currentFocus - 1],\n next: focusesList[currentFocus + 1],\n fall: focusesList[currentFocus + navigationJump],\n jump: focusesList[currentFocus - navigationJump],\n };\n\n if (strategy === \"grid\") {\n onGridKeyDownHandler(evt, focuses, focusesList, currentFocus, navigationJump);\n return;\n }\n\n // TODO add property for specifing the composite widget orientation\n // TODO implement handler for horizontal orientation\n onVerticalArrangementHandler(evt, focuses, focusesList);\n };\n\n const onKeyUp = (evt) => {\n if (isBrowser(\"firefox\")) evt.preventDefault();\n };\n\n if (disabled) return children;\n\n const focusWrapper = (childrenToWrap) => (\n <div className={classes.externalReference}>\n {childrenToWrap}\n {showFocus && <div className={classes.falseFocus} />}\n </div>\n );\n\n return (\n <ConditionalWrapper condition={useFalseFocus} wrapper={focusWrapper}>\n {React.cloneElement(children, {\n className: clsx(children.props.className, [classes.root, filterClass], {\n [classes.selected]: selected,\n [classes.disabled]: disabledClass,\n [classes.focusDisabled]: focusDisabled,\n }),\n ref: config,\n onFocus,\n onBlur,\n onMouseDown,\n onKeyDown,\n onKeyUp,\n selected,\n })}\n </ConditionalWrapper>\n );\n};\n\nFocus.propTypes = {\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the root.\n */\n root: PropTypes.string,\n /**\n * Styles applied when component is selected.\n */\n selected: PropTypes.string,\n /**\n * Styles applied when component is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Styles applied to external reference.\n */\n externalReference: PropTypes.string,\n /**\n * Styles applied when using the false focus.\n */\n falseFocus: PropTypes.string,\n /**\n * Styles applied when focus disabled.\n */\n focusDisabled: PropTypes.string,\n focusGridDisabled: PropTypes.string,\n /**\n * Styles applied when focus active.\n */\n focused: PropTypes.string,\n /**\n * Styles applied when focus customization is passed.\n */\n focus: PropTypes.string,\n }).isRequired,\n /**\n * The reference to the root element to hold all Focus' context.\n */\n rootRef: refType,\n /**\n * Extra configuration for the child element.\n */\n configuration: PropTypes.instanceOf(Object),\n /**\n * Whether the focus is selected.\n */\n selected: PropTypes.bool,\n /**\n * Whether the focus is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Child node to set the focus.\n */\n children: PropTypes.node.isRequired,\n /**\n * Focus and navigation strategy to be used.\n */\n strategy: PropTypes.oneOf([\"listbox\", \"menu\", \"card\", \"grid\"]),\n /**\n * Show focus when click element.\n */\n focusOnClick: PropTypes.bool,\n /**\n * Show focus when click element.\n */\n focusDisabled: PropTypes.bool,\n /**\n * Indicates that the disabled class should be applied.\n */\n disabledClass: PropTypes.bool,\n /**\n * Uses an absolute positioned div as a focus.\n */\n useFalseFocus: PropTypes.bool,\n /**\n * Narrows the results of the focus to only theses class\n */\n filterClass: PropTypes.string,\n /**\n * How much the navigation will skip when using the arrows.\n */\n navigationJump: PropTypes.number,\n};\n\nexport default withStyles(styles, { name: \"HvFocus\" })(Focus);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["isKey","evt","key","isOneOfKeys","keys","some","getFocusableChildren","el","querySelectorAll","setFocusTo","focus"],"sources":["../../src/Focus/utils.js"],"sourcesContent":["import { isKeypress } from \"../utils\";\n\nexport const isKey = (evt, key) => isKeypress(evt, key);\n\nexport const isOneOfKeys = (evt, keys) => keys.some((key) => isKey(evt, key));\n\nexport const getFocusableChildren = (el) =>\n el.querySelectorAll(\"input, button, select, textarea, a[href]\") || [];\n\nexport const setFocusTo = (el) => {\n el.focus();\n};\n"],"mappings":";;;;;;;;;AAAA;;AAEO,IAAMA,KAAK,GAAG,SAARA,KAAQ,CAACC,GAAD,EAAMC,GAAN;EAAA,OAAc,uBAAWD,GAAX,EAAgBC,GAAhB,CAAd;AAAA,CAAd;;;;AAEA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACF,GAAD,EAAMG,IAAN;EAAA,OAAeA,IAAI,CAACC,IAAL,CAAU,UAACH,GAAD;IAAA,OAASF,KAAK,CAACC,GAAD,EAAMC,GAAN,CAAd;EAAA,CAAV,CAAf;AAAA,CAApB;;;;AAEA,IAAMI,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,EAAD;EAAA,OAClCA,EAAE,CAACC,gBAAH,CAAoB,0CAApB,KAAmE,EADjC;AAAA,CAA7B;;;;AAGA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACF,EAAD,EAAQ;EAChCA,EAAE,CAACG,KAAH;AACD,CAFM"}
1
+ {"version":3,"file":"utils.js","names":["isKey","evt","key","isKeypress","isOneOfKeys","keys","some","getFocusableChildren","el","querySelectorAll","setFocusTo","focus"],"sources":["../../src/Focus/utils.js"],"sourcesContent":["import { isKeypress } from \"../utils\";\n\nexport const isKey = (evt, key) => isKeypress(evt, key);\n\nexport const isOneOfKeys = (evt, keys) => keys.some((key) => isKey(evt, key));\n\nexport const getFocusableChildren = (el) =>\n el.querySelectorAll(\"input, button, select, textarea, a[href]\") || [];\n\nexport const setFocusTo = (el) => {\n el.focus();\n};\n"],"mappings":";;;;;;;;;AAAA;;AAEO,IAAMA,KAAK,GAAG,SAARA,KAAQ,CAACC,GAAD,EAAMC,GAAN;EAAA,OAAc,IAAAC,iBAAA,EAAWF,GAAX,EAAgBC,GAAhB,CAAd;AAAA,CAAd;;;;AAEA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAACH,GAAD,EAAMI,IAAN;EAAA,OAAeA,IAAI,CAACC,IAAL,CAAU,UAACJ,GAAD;IAAA,OAASF,KAAK,CAACC,GAAD,EAAMC,GAAN,CAAd;EAAA,CAAV,CAAf;AAAA,CAApB;;;;AAEA,IAAMK,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,EAAD;EAAA,OAClCA,EAAE,CAACC,gBAAH,CAAoB,0CAApB,KAAmE,EADjC;AAAA,CAA7B;;;;AAGA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACF,EAAD,EAAQ;EAChCA,EAAE,CAACG,KAAH;AACD,CAFM"}
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","names":["HvFooter","props","className","classes","name","copyright","Date","getFullYear","links","others","root","rightContainer","separator","propTypes","PropTypes","string","shape","isRequired","node","styles"],"sources":["../../src/Footer/Footer.js"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvTypography } from \"..\";\nimport styles from \"./styles\";\n\n/**\n * A Footer is a way of providing extra information at the end of a page.\n */\nconst HvFooter = (props) => {\n const {\n className,\n classes,\n name = \"Hitachi Vantara\",\n copyright = `© Hitachi Vantara Corporation ${new Date().getFullYear()}. All Rights Reserved.`,\n links,\n ...others\n } = props;\n\n return (\n <footer className={clsx(className, classes.root)} {...others}>\n <HvTypography variant=\"highlightText\" className={classes.name}>\n {name}\n </HvTypography>\n <div className={classes.rightContainer}>\n <HvTypography className={classes.copyright}>{copyright}</HvTypography>\n {links && <div className={classes.separator} />}\n {links}\n </div>\n </footer>\n );\n};\n\nHvFooter.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to name label on the left.\n */\n name: PropTypes.string,\n /**\n * Styles applied to right container, with copyright and links.\n */\n rightContainer: PropTypes.string,\n /**\n * Styles applied to copyright label on the right.\n */\n copyright: PropTypes.string,\n /**\n * Styles applied to the links node on the right\n */\n links: PropTypes.string,\n /**\n * Styles applied to the separator between copyright and links\n */\n separator: PropTypes.string,\n }).isRequired,\n name: PropTypes.node,\n copyright: PropTypes.node,\n links: PropTypes.node,\n};\n\nexport default withStyles(styles, { name: \"HvFooter\" })(HvFooter);\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA;AACA;AACA;AACA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAW;EAC1B,IACEC,SADF,GAOID,KAPJ,CACEC,SADF;EAAA,IAEEC,OAFF,GAOIF,KAPJ,CAEEE,OAFF;EAAA,kBAOIF,KAPJ,CAGEG,IAHF;EAAA,IAGEA,IAHF,4BAGS,iBAHT;EAAA,uBAOIH,KAPJ,CAIEI,SAJF;EAAA,IAIEA,SAJF,4EAI+C,IAAIC,IAAJ,GAAWC,WAAX,EAJ/C;EAAA,IAKEC,KALF,GAOIP,KAPJ,CAKEO,KALF;EAAA,IAMKC,MANL,0CAOIR,KAPJ;EASA,oBACE;IAAQ,SAAS,EAAE,mBAAKC,SAAL,EAAgBC,OAAO,CAACO,IAAxB;EAAnB,GAAsDD,MAAtD,gBACE,6BAAC,cAAD;IAAc,OAAO,EAAC,eAAtB;IAAsC,SAAS,EAAEN,OAAO,CAACC;EAAzD,GACGA,IADH,CADF,eAIE;IAAK,SAAS,EAAED,OAAO,CAACQ;EAAxB,gBACE,6BAAC,cAAD;IAAc,SAAS,EAAER,OAAO,CAACE;EAAjC,GAA6CA,SAA7C,CADF,EAEGG,KAAK,iBAAI;IAAK,SAAS,EAAEL,OAAO,CAACS;EAAxB,EAFZ,EAGGJ,KAHH,CAJF,CADF;AAYD,CAtBD;;AAwBA,wCAAAR,QAAQ,CAACa,SAAT,GAAqB;EACnB;AACF;AACA;EACEX,SAAS,EAAEY,mBAAUC,MAJF;;EAKnB;AACF;AACA;EACEZ,OAAO,EAAEW,mBAAUE,KAAV,CAAgB;IACvB;AACJ;AACA;IACIN,IAAI,EAAEI,mBAAUC,MAJO;;IAKvB;AACJ;AACA;IACIX,IAAI,EAAEU,mBAAUC,MARO;;IASvB;AACJ;AACA;IACIJ,cAAc,EAAEG,mBAAUC,MAZH;;IAavB;AACJ;AACA;IACIV,SAAS,EAAES,mBAAUC,MAhBE;;IAiBvB;AACJ;AACA;IACIP,KAAK,EAAEM,mBAAUC,MApBM;;IAqBvB;AACJ;AACA;IACIH,SAAS,EAAEE,mBAAUC;EAxBE,CAAhB,EAyBNE,UAjCgB;EAkCnBb,IAAI,EAAEU,mBAAUI,IAlCG;EAmCnBb,SAAS,EAAES,mBAAUI,IAnCF;EAoCnBV,KAAK,EAAEM,mBAAUI;AApCE,CAArB;;eAuCe,sBAAWC,eAAX,EAAmB;EAAEf,IAAI,EAAE;AAAR,CAAnB,EAAyCJ,QAAzC,C"}
1
+ {"version":3,"file":"Footer.js","names":["HvFooter","props","className","classes","name","copyright","Date","getFullYear","links","others","clsx","root","rightContainer","separator","propTypes","PropTypes","string","shape","isRequired","node","withStyles","styles"],"sources":["../../src/Footer/Footer.js"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvTypography } from \"..\";\nimport styles from \"./styles\";\n\n/**\n * A Footer is a way of providing extra information at the end of a page.\n */\nconst HvFooter = (props) => {\n const {\n className,\n classes,\n name = \"Hitachi Vantara\",\n copyright = `© Hitachi Vantara Corporation ${new Date().getFullYear()}. All Rights Reserved.`,\n links,\n ...others\n } = props;\n\n return (\n <footer className={clsx(className, classes.root)} {...others}>\n <HvTypography variant=\"highlightText\" className={classes.name}>\n {name}\n </HvTypography>\n <div className={classes.rightContainer}>\n <HvTypography className={classes.copyright}>{copyright}</HvTypography>\n {links && <div className={classes.separator} />}\n {links}\n </div>\n </footer>\n );\n};\n\nHvFooter.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the component root class.\n */\n root: PropTypes.string,\n /**\n * Styles applied to name label on the left.\n */\n name: PropTypes.string,\n /**\n * Styles applied to right container, with copyright and links.\n */\n rightContainer: PropTypes.string,\n /**\n * Styles applied to copyright label on the right.\n */\n copyright: PropTypes.string,\n /**\n * Styles applied to the links node on the right\n */\n links: PropTypes.string,\n /**\n * Styles applied to the separator between copyright and links\n */\n separator: PropTypes.string,\n }).isRequired,\n name: PropTypes.node,\n copyright: PropTypes.node,\n links: PropTypes.node,\n};\n\nexport default withStyles(styles, { name: \"HvFooter\" })(HvFooter);\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA;AACA;AACA;AACA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAW;EAC1B,IACEC,SADF,GAOID,KAPJ,CACEC,SADF;EAAA,IAEEC,OAFF,GAOIF,KAPJ,CAEEE,OAFF;EAAA,kBAOIF,KAPJ,CAGEG,IAHF;EAAA,IAGEA,IAHF,4BAGS,iBAHT;EAAA,uBAOIH,KAPJ,CAIEI,SAJF;EAAA,IAIEA,SAJF,4EAI+C,IAAIC,IAAJ,GAAWC,WAAX,EAJ/C;EAAA,IAKEC,KALF,GAOIP,KAPJ,CAKEO,KALF;EAAA,IAMKC,MANL,0CAOIR,KAPJ;EASA,oBACE;IAAQ,SAAS,EAAE,IAAAS,aAAA,EAAKR,SAAL,EAAgBC,OAAO,CAACQ,IAAxB;EAAnB,GAAsDF,MAAtD,gBACE,6BAAC,cAAD;IAAc,OAAO,EAAC,eAAtB;IAAsC,SAAS,EAAEN,OAAO,CAACC;EAAzD,GACGA,IADH,CADF,eAIE;IAAK,SAAS,EAAED,OAAO,CAACS;EAAxB,gBACE,6BAAC,cAAD;IAAc,SAAS,EAAET,OAAO,CAACE;EAAjC,GAA6CA,SAA7C,CADF,EAEGG,KAAK,iBAAI;IAAK,SAAS,EAAEL,OAAO,CAACU;EAAxB,EAFZ,EAGGL,KAHH,CAJF,CADF;AAYD,CAtBD;;AAwBA,wCAAAR,QAAQ,CAACc,SAAT,GAAqB;EACnB;AACF;AACA;EACEZ,SAAS,EAAEa,kBAAA,CAAUC,MAJF;;EAKnB;AACF;AACA;EACEb,OAAO,EAAEY,kBAAA,CAAUE,KAAV,CAAgB;IACvB;AACJ;AACA;IACIN,IAAI,EAAEI,kBAAA,CAAUC,MAJO;;IAKvB;AACJ;AACA;IACIZ,IAAI,EAAEW,kBAAA,CAAUC,MARO;;IASvB;AACJ;AACA;IACIJ,cAAc,EAAEG,kBAAA,CAAUC,MAZH;;IAavB;AACJ;AACA;IACIX,SAAS,EAAEU,kBAAA,CAAUC,MAhBE;;IAiBvB;AACJ;AACA;IACIR,KAAK,EAAEO,kBAAA,CAAUC,MApBM;;IAqBvB;AACJ;AACA;IACIH,SAAS,EAAEE,kBAAA,CAAUC;EAxBE,CAAhB,EAyBNE,UAjCgB;EAkCnBd,IAAI,EAAEW,kBAAA,CAAUI,IAlCG;EAmCnBd,SAAS,EAAEU,kBAAA,CAAUI,IAnCF;EAoCnBX,KAAK,EAAEO,kBAAA,CAAUI;AApCE,CAArB;;eAuCe,IAAAC,gBAAA,EAAWC,eAAX,EAAmB;EAAEjB,IAAI,EAAE;AAAR,CAAnB,EAAyCJ,QAAzC,C"}
@@ -1 +1 @@
1
- {"version":3,"file":"Adornment.js","names":["preventDefault","event","noop","HvAdornment","React","forwardRef","props","ref","id","classes","className","icon","showWhen","onClick","isVisible","undefined","others","HvFormElementContext","elementStatus","HvFormElementDescriptorsContext","input","displayIcon","isClickable","root","adornment","adornmentButton","hideIcon","adornmentIcon","propTypes","PropTypes","string","shape","iconAction","node","isRequired","oneOf","func","bool","styles","name"],"sources":["../../../src/Forms/Adornment/Adornment.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvFormElementContext, HvFormElementDescriptorsContext } from \"../FormElement\";\nimport styles from \"./styles\";\n\nconst preventDefault = (event) => event.preventDefault();\nconst noop = () => {};\n\n/**\n * Allows to add a decorative icon or an action to a form element, usually on the right side of an input.\n * E.g., the reveal password button.\n *\n * In addition to the showWhen feature, which uses the form element's context validation state to determine\n * its visibility, this component also ensures that it does not steal focus from the input and that it is\n * not accessible using the keyboard.\n *\n * As such, its functionality, if any, for accessibility purposes must be provided through an alternative mean,\n * or by using a regular icon button or toggle button instead.\n */\nconst HvAdornment = React.forwardRef((props, ref) => {\n const {\n id,\n classes,\n className,\n icon,\n showWhen = \"\",\n onClick,\n isVisible = undefined,\n ...others\n } = props;\n\n const { elementStatus = \"\" } = useContext(HvFormElementContext);\n\n const { input } = useContext(HvFormElementDescriptorsContext);\n\n const displayIcon = isVisible ?? (showWhen === \"\" || elementStatus === showWhen);\n\n const isClickable = !!onClick;\n\n return isClickable ? (\n <button\n id={id}\n ref={ref}\n type=\"button\"\n tabIndex={-1}\n aria-controls={input?.[0]?.id}\n className={clsx(className, classes.root, classes.adornment, classes.adornmentButton, {\n [classes.hideIcon]: !displayIcon,\n })}\n onClick={onClick}\n onMouseDown={preventDefault}\n onKeyDown={noop}\n {...others}\n >\n <div className={classes.icon}>{icon}</div>\n </button>\n ) : (\n <div\n id={id}\n ref={ref}\n className={clsx(className, classes.root, classes.adornment, classes.adornmentIcon, {\n [classes.hideIcon]: !displayIcon,\n })}\n role=\"presentation\"\n {...others}\n >\n <div className={classes.icon}>{icon}</div>\n </div>\n );\n});\n\nHvAdornment.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the root container of the input.\n */\n root: PropTypes.string,\n /**\n * Styles applied to all adornments\n */\n adornment: PropTypes.string,\n /**\n * Styles applied to the adornment when acting as a button.\n */\n adornmentIcon: PropTypes.string,\n /**\n * Styles applied to the adornment when acting as a button.\n */\n adornmentButton: PropTypes.string,\n /**\n * Styles applied to icon on action.\n */\n iconAction: PropTypes.string,\n /**\n * Styles applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Styles applied to the icon when it's supposed to be hidden.\n */\n hideIcon: PropTypes.string,\n }),\n /**\n * The icon to be added into the input.\n */\n icon: PropTypes.node.isRequired,\n /**\n * When the adornment should be displayed.\n */\n showWhen: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n /**\n * Function to be executed when this element is clicked.\n */\n onClick: PropTypes.func,\n /**\n * If this property is defined the adornment visibility will be exclusively controlled by this value.\n */\n isVisible: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvAdornment\" })(HvAdornment);\n"],"mappings":"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"}
1
+ {"version":3,"file":"Adornment.js","names":["preventDefault","event","noop","HvAdornment","React","forwardRef","props","ref","id","classes","className","icon","showWhen","onClick","isVisible","undefined","others","useContext","HvFormElementContext","elementStatus","HvFormElementDescriptorsContext","input","displayIcon","isClickable","clsx","root","adornment","adornmentButton","hideIcon","adornmentIcon","propTypes","PropTypes","string","shape","iconAction","node","isRequired","oneOf","func","bool","withStyles","styles","name"],"sources":["../../../src/Forms/Adornment/Adornment.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvFormElementContext, HvFormElementDescriptorsContext } from \"../FormElement\";\nimport styles from \"./styles\";\n\nconst preventDefault = (event) => event.preventDefault();\nconst noop = () => {};\n\n/**\n * Allows to add a decorative icon or an action to a form element, usually on the right side of an input.\n * E.g., the reveal password button.\n *\n * In addition to the showWhen feature, which uses the form element's context validation state to determine\n * its visibility, this component also ensures that it does not steal focus from the input and that it is\n * not accessible using the keyboard.\n *\n * As such, its functionality, if any, for accessibility purposes must be provided through an alternative mean,\n * or by using a regular icon button or toggle button instead.\n */\nconst HvAdornment = React.forwardRef((props, ref) => {\n const {\n id,\n classes,\n className,\n icon,\n showWhen = \"\",\n onClick,\n isVisible = undefined,\n ...others\n } = props;\n\n const { elementStatus = \"\" } = useContext(HvFormElementContext);\n\n const { input } = useContext(HvFormElementDescriptorsContext);\n\n const displayIcon = isVisible ?? (showWhen === \"\" || elementStatus === showWhen);\n\n const isClickable = !!onClick;\n\n return isClickable ? (\n <button\n id={id}\n ref={ref}\n type=\"button\"\n tabIndex={-1}\n aria-controls={input?.[0]?.id}\n className={clsx(className, classes.root, classes.adornment, classes.adornmentButton, {\n [classes.hideIcon]: !displayIcon,\n })}\n onClick={onClick}\n onMouseDown={preventDefault}\n onKeyDown={noop}\n {...others}\n >\n <div className={classes.icon}>{icon}</div>\n </button>\n ) : (\n <div\n id={id}\n ref={ref}\n className={clsx(className, classes.root, classes.adornment, classes.adornmentIcon, {\n [classes.hideIcon]: !displayIcon,\n })}\n role=\"presentation\"\n {...others}\n >\n <div className={classes.icon}>{icon}</div>\n </div>\n );\n});\n\nHvAdornment.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the root container of the input.\n */\n root: PropTypes.string,\n /**\n * Styles applied to all adornments\n */\n adornment: PropTypes.string,\n /**\n * Styles applied to the adornment when acting as a button.\n */\n adornmentIcon: PropTypes.string,\n /**\n * Styles applied to the adornment when acting as a button.\n */\n adornmentButton: PropTypes.string,\n /**\n * Styles applied to icon on action.\n */\n iconAction: PropTypes.string,\n /**\n * Styles applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Styles applied to the icon when it's supposed to be hidden.\n */\n hideIcon: PropTypes.string,\n }),\n /**\n * The icon to be added into the input.\n */\n icon: PropTypes.node.isRequired,\n /**\n * When the adornment should be displayed.\n */\n showWhen: PropTypes.oneOf([\"standBy\", \"valid\", \"invalid\"]),\n /**\n * Function to be executed when this element is clicked.\n */\n onClick: PropTypes.func,\n /**\n * If this property is defined the adornment visibility will be exclusively controlled by this value.\n */\n isVisible: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvAdornment\" })(HvAdornment);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CharCounter.js","names":["HvCharCounter","props","separator","maxCharQuantity","currentCharQuantity","classes","className","id","disabled","disableGutter","others","HvFormElementContext","elementId","elementDisabled","localDisabled","localId","currentId","maxQuantityId","isOverloaded","root","counterDisabled","gutter","overloaded","formElementType","propTypes","PropTypes","string","shape","isRequired","number","bool","styles","name"],"sources":["../../../src/Forms/CharCounter/CharCounter.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport { HvTypography } from \"../..\";\nimport { setId } from \"../../utils\";\nimport styles from \"./styles\";\n\n/**\n * Displays the capacity and current usage of a text input box (character count by default).\n *\n * Use the character counter when there is a character or word limit.\n * By itself it doesn't block the user from going above the limit.\n */\nconst HvCharCounter = (props) => {\n const {\n separator = \"/\",\n maxCharQuantity,\n currentCharQuantity = 0,\n classes,\n className,\n id,\n disabled,\n disableGutter = false,\n ...others\n } = props;\n const { elementId, elementDisabled } = useContext(HvFormElementContext);\n const localDisabled = disabled || elementDisabled;\n const localId = id ?? setId(elementId, \"counter\");\n const currentId = setId(localId, \"currentQuantity\");\n const maxQuantityId = setId(localId, \"maxQuantity\");\n const isOverloaded = currentCharQuantity > maxCharQuantity;\n\n return (\n <div\n id={localId}\n className={clsx(className, classes.root, {\n [classes.counterDisabled]: localDisabled,\n [classes.gutter]: !disableGutter,\n })}\n aria-live=\"polite\"\n aria-disabled={localDisabled}\n {...others}\n >\n <HvTypography\n id={currentId}\n className={clsx({\n [classes.overloaded]: isOverloaded && !localDisabled,\n [classes.counterDisabled]: localDisabled,\n })}\n variant=\"highlightText\"\n component=\"label\"\n >\n {currentCharQuantity}\n </HvTypography>\n <HvTypography\n id={maxQuantityId}\n className={clsx({\n [classes.overloaded]: isOverloaded && !localDisabled,\n [classes.counterDisabled]: localDisabled,\n })}\n variant=\"normalText\"\n component=\"label\"\n >\n {` ${separator} ${maxCharQuantity}`}\n </HvTypography>\n </div>\n );\n};\n\nHvCharCounter.formElementType = \"controlled\";\n\nHvCharCounter.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the char counter root container.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the char counter root container when the current char counter higher than the max.\n */\n overloaded: PropTypes.string,\n /**\n * Styles applied when the char counter is disabled.\n */\n counterDisabled: PropTypes.string,\n /**\n * Separation for the counter.\n */\n gutter: PropTypes.string,\n }).isRequired,\n /**\n * The string that separtes the current char quantity from the max quantity.\n */\n separator: PropTypes.string,\n /**\n * The maximum allowed length of the characters.\n */\n maxCharQuantity: PropTypes.number.isRequired,\n /**\n * The current char quantity to be rendered.\n */\n currentCharQuantity: PropTypes.number,\n /**\n * If `true` the counter is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true` the info message won't have margins.\n */\n disableGutter: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvCharCounter\" })(HvCharCounter);\n"],"mappings":"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"}
1
+ {"version":3,"file":"CharCounter.js","names":["HvCharCounter","props","separator","maxCharQuantity","currentCharQuantity","classes","className","id","disabled","disableGutter","others","useContext","HvFormElementContext","elementId","elementDisabled","localDisabled","localId","setId","currentId","maxQuantityId","isOverloaded","clsx","root","counterDisabled","gutter","overloaded","formElementType","propTypes","PropTypes","string","shape","isRequired","number","bool","withStyles","styles","name"],"sources":["../../../src/Forms/CharCounter/CharCounter.js"],"sourcesContent":["import React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { withStyles } from \"@material-ui/core\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport { HvTypography } from \"../..\";\nimport { setId } from \"../../utils\";\nimport styles from \"./styles\";\n\n/**\n * Displays the capacity and current usage of a text input box (character count by default).\n *\n * Use the character counter when there is a character or word limit.\n * By itself it doesn't block the user from going above the limit.\n */\nconst HvCharCounter = (props) => {\n const {\n separator = \"/\",\n maxCharQuantity,\n currentCharQuantity = 0,\n classes,\n className,\n id,\n disabled,\n disableGutter = false,\n ...others\n } = props;\n const { elementId, elementDisabled } = useContext(HvFormElementContext);\n const localDisabled = disabled || elementDisabled;\n const localId = id ?? setId(elementId, \"counter\");\n const currentId = setId(localId, \"currentQuantity\");\n const maxQuantityId = setId(localId, \"maxQuantity\");\n const isOverloaded = currentCharQuantity > maxCharQuantity;\n\n return (\n <div\n id={localId}\n className={clsx(className, classes.root, {\n [classes.counterDisabled]: localDisabled,\n [classes.gutter]: !disableGutter,\n })}\n aria-live=\"polite\"\n aria-disabled={localDisabled}\n {...others}\n >\n <HvTypography\n id={currentId}\n className={clsx({\n [classes.overloaded]: isOverloaded && !localDisabled,\n [classes.counterDisabled]: localDisabled,\n })}\n variant=\"highlightText\"\n component=\"label\"\n >\n {currentCharQuantity}\n </HvTypography>\n <HvTypography\n id={maxQuantityId}\n className={clsx({\n [classes.overloaded]: isOverloaded && !localDisabled,\n [classes.counterDisabled]: localDisabled,\n })}\n variant=\"normalText\"\n component=\"label\"\n >\n {` ${separator} ${maxCharQuantity}`}\n </HvTypography>\n </div>\n );\n};\n\nHvCharCounter.formElementType = \"controlled\";\n\nHvCharCounter.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Styles applied to the char counter root container.\n */\n root: PropTypes.string,\n /**\n * Styles applied to the char counter root container when the current char counter higher than the max.\n */\n overloaded: PropTypes.string,\n /**\n * Styles applied when the char counter is disabled.\n */\n counterDisabled: PropTypes.string,\n /**\n * Separation for the counter.\n */\n gutter: PropTypes.string,\n }).isRequired,\n /**\n * The string that separtes the current char quantity from the max quantity.\n */\n separator: PropTypes.string,\n /**\n * The maximum allowed length of the characters.\n */\n maxCharQuantity: PropTypes.number.isRequired,\n /**\n * The current char quantity to be rendered.\n */\n currentCharQuantity: PropTypes.number,\n /**\n * If `true` the counter is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * If `true` the info message won't have margins.\n */\n disableGutter: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvCharCounter\" })(HvCharCounter);\n"],"mappings":"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"}