@hitachivantara/uikit-react-core 5.22.1 → 5.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/dist/cjs/components/Accordion/Accordion.cjs +17 -15
  2. package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
  3. package/dist/cjs/components/ActionBar/ActionBar.cjs +2 -1
  4. package/dist/cjs/components/ActionBar/ActionBar.cjs.map +1 -1
  5. package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs +13 -11
  6. package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs.map +1 -1
  7. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs +16 -14
  8. package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs.map +1 -1
  9. package/dist/cjs/components/Avatar/Avatar.cjs +22 -20
  10. package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
  11. package/dist/cjs/components/Badge/Badge.cjs +2 -1
  12. package/dist/cjs/components/Badge/Badge.cjs.map +1 -1
  13. package/dist/cjs/components/Banner/Banner.cjs +22 -20
  14. package/dist/cjs/components/Banner/Banner.cjs.map +1 -1
  15. package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs +1 -1
  16. package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs.map +1 -1
  17. package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs +21 -19
  18. package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs.map +1 -1
  19. package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs +26 -24
  20. package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs.map +1 -1
  21. package/dist/cjs/components/BaseInput/BaseInput.cjs +23 -21
  22. package/dist/cjs/components/BaseInput/BaseInput.cjs.map +1 -1
  23. package/dist/cjs/components/BaseRadio/BaseRadio.cjs +2 -1
  24. package/dist/cjs/components/BaseRadio/BaseRadio.cjs.map +1 -1
  25. package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs +2 -1
  26. package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs.map +1 -1
  27. package/dist/cjs/components/Box/Box.cjs +9 -8
  28. package/dist/cjs/components/Box/Box.cjs.map +1 -1
  29. package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs +14 -12
  30. package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs.map +1 -1
  31. package/dist/cjs/components/BulkActions/BulkActions.cjs +22 -20
  32. package/dist/cjs/components/BulkActions/BulkActions.cjs.map +1 -1
  33. package/dist/cjs/components/Button/Button.cjs +4 -3
  34. package/dist/cjs/components/Button/Button.cjs.map +1 -1
  35. package/dist/cjs/components/Calendar/Calendar.cjs +20 -18
  36. package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -1
  37. package/dist/cjs/components/Card/Card.cjs +13 -11
  38. package/dist/cjs/components/Card/Card.cjs.map +1 -1
  39. package/dist/cjs/components/Carousel/Carousel.cjs +2 -2
  40. package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -1
  41. package/dist/cjs/components/Carousel/CarouselControls.cjs +2 -3
  42. package/dist/cjs/components/Carousel/CarouselControls.cjs.map +1 -1
  43. package/dist/cjs/components/Carousel/CarouselSlide/CarouselSlide.cjs +1 -1
  44. package/dist/cjs/components/Carousel/CarouselSlide/CarouselSlide.cjs.map +1 -1
  45. package/dist/cjs/components/CheckBox/CheckBox.cjs +29 -27
  46. package/dist/cjs/components/CheckBox/CheckBox.cjs.map +1 -1
  47. package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs +28 -26
  48. package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs.map +1 -1
  49. package/dist/cjs/components/ColorPicker/ColorPicker.cjs +34 -32
  50. package/dist/cjs/components/ColorPicker/ColorPicker.cjs.map +1 -1
  51. package/dist/cjs/components/Container/Container.cjs +9 -7
  52. package/dist/cjs/components/Container/Container.cjs.map +1 -1
  53. package/dist/cjs/components/Controls/Controls.cjs +14 -12
  54. package/dist/cjs/components/Controls/Controls.cjs.map +1 -1
  55. package/dist/cjs/components/DatePicker/DatePicker.cjs +39 -37
  56. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  57. package/dist/cjs/components/Dialog/Actions/Actions.cjs +9 -7
  58. package/dist/cjs/components/Dialog/Actions/Actions.cjs.map +1 -1
  59. package/dist/cjs/components/Dialog/Content/Content.cjs +8 -6
  60. package/dist/cjs/components/Dialog/Content/Content.cjs.map +1 -1
  61. package/dist/cjs/components/Dialog/Dialog.cjs +16 -14
  62. package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
  63. package/dist/cjs/components/Dialog/Title/Title.cjs +11 -9
  64. package/dist/cjs/components/Dialog/Title/Title.cjs.map +1 -1
  65. package/dist/cjs/components/DotPagination/DotPagination.cjs +14 -12
  66. package/dist/cjs/components/DotPagination/DotPagination.cjs.map +1 -1
  67. package/dist/cjs/components/Drawer/Drawer.cjs +13 -11
  68. package/dist/cjs/components/Drawer/Drawer.cjs.map +1 -1
  69. package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs +20 -17
  70. package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs.map +1 -1
  71. package/dist/cjs/components/Dropdown/Dropdown.cjs +2 -1
  72. package/dist/cjs/components/Dropdown/Dropdown.cjs.map +1 -1
  73. package/dist/cjs/components/EmptyState/EmptyState.cjs +2 -1
  74. package/dist/cjs/components/EmptyState/EmptyState.cjs.map +1 -1
  75. package/dist/cjs/components/FileUploader/File/File.cjs +0 -1
  76. package/dist/cjs/components/FileUploader/File/File.cjs.map +1 -1
  77. package/dist/cjs/components/FileUploader/FileUploader.cjs +17 -15
  78. package/dist/cjs/components/FileUploader/FileUploader.cjs.map +1 -1
  79. package/dist/cjs/components/FileUploader/Preview/Preview.cjs +0 -1
  80. package/dist/cjs/components/FileUploader/Preview/Preview.cjs.map +1 -1
  81. package/dist/cjs/components/FilterGroup/FilterGroup.cjs +30 -28
  82. package/dist/cjs/components/FilterGroup/FilterGroup.cjs.map +1 -1
  83. package/dist/cjs/components/FilterGroup/FilterGroupContext.cjs +8 -6
  84. package/dist/cjs/components/FilterGroup/FilterGroupContext.cjs.map +1 -1
  85. package/dist/cjs/components/Footer/Footer.cjs +2 -1
  86. package/dist/cjs/components/Footer/Footer.cjs.map +1 -1
  87. package/dist/cjs/components/Forms/CharCounter/CharCounter.cjs +13 -11
  88. package/dist/cjs/components/Forms/CharCounter/CharCounter.cjs.map +1 -1
  89. package/dist/cjs/components/Forms/FormElement/FormElement.cjs +15 -13
  90. package/dist/cjs/components/Forms/FormElement/FormElement.cjs.map +1 -1
  91. package/dist/cjs/components/Forms/InfoMessage/InfoMessage.cjs +11 -9
  92. package/dist/cjs/components/Forms/InfoMessage/InfoMessage.cjs.map +1 -1
  93. package/dist/cjs/components/Forms/Label/Label.cjs +13 -11
  94. package/dist/cjs/components/Forms/Label/Label.cjs.map +1 -1
  95. package/dist/cjs/components/Forms/WarningText/WarningText.cjs +16 -14
  96. package/dist/cjs/components/Forms/WarningText/WarningText.cjs.map +1 -1
  97. package/dist/cjs/components/GlobalActions/GlobalActions.cjs +13 -11
  98. package/dist/cjs/components/GlobalActions/GlobalActions.cjs.map +1 -1
  99. package/dist/cjs/components/Grid/Grid.cjs +10 -8
  100. package/dist/cjs/components/Grid/Grid.cjs.map +1 -1
  101. package/dist/cjs/components/Header/Actions/Actions.cjs +8 -6
  102. package/dist/cjs/components/Header/Actions/Actions.cjs.map +1 -1
  103. package/dist/cjs/components/Header/Brand/Brand.cjs +9 -7
  104. package/dist/cjs/components/Header/Brand/Brand.cjs.map +1 -1
  105. package/dist/cjs/components/Header/Header.cjs +2 -1
  106. package/dist/cjs/components/Header/Header.cjs.map +1 -1
  107. package/dist/cjs/components/Header/Navigation/Navigation.cjs +11 -9
  108. package/dist/cjs/components/Header/Navigation/Navigation.cjs.map +1 -1
  109. package/dist/cjs/components/InlineEditor/InlineEditor.cjs +18 -16
  110. package/dist/cjs/components/InlineEditor/InlineEditor.cjs.map +1 -1
  111. package/dist/cjs/components/Input/Input.cjs +2 -1
  112. package/dist/cjs/components/Input/Input.cjs.map +1 -1
  113. package/dist/cjs/components/Kpi/Kpi.cjs +13 -11
  114. package/dist/cjs/components/Kpi/Kpi.cjs.map +1 -1
  115. package/dist/cjs/components/Link/Link.cjs +11 -9
  116. package/dist/cjs/components/Link/Link.cjs.map +1 -1
  117. package/dist/cjs/components/List/List.cjs +21 -19
  118. package/dist/cjs/components/List/List.cjs.map +1 -1
  119. package/dist/cjs/components/ListContainer/ListContainer.cjs +12 -10
  120. package/dist/cjs/components/ListContainer/ListContainer.cjs.map +1 -1
  121. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs +20 -18
  122. package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs.map +1 -1
  123. package/dist/cjs/components/Loading/Loading.cjs +2 -1
  124. package/dist/cjs/components/Loading/Loading.cjs.map +1 -1
  125. package/dist/cjs/components/Login/Login.cjs +10 -8
  126. package/dist/cjs/components/Login/Login.cjs.map +1 -1
  127. package/dist/cjs/components/MultiButton/MultiButton.cjs +11 -9
  128. package/dist/cjs/components/MultiButton/MultiButton.cjs.map +1 -1
  129. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs +12 -10
  130. package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs.map +1 -1
  131. package/dist/cjs/components/Pagination/ButtonIconTooltip.cjs +0 -1
  132. package/dist/cjs/components/Pagination/ButtonIconTooltip.cjs.map +1 -1
  133. package/dist/cjs/components/Pagination/Pagination.cjs +22 -20
  134. package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
  135. package/dist/cjs/components/Pagination/Select.cjs +1 -1
  136. package/dist/cjs/components/Pagination/Select.cjs.map +1 -1
  137. package/dist/cjs/components/Panel/Panel.cjs +9 -7
  138. package/dist/cjs/components/Panel/Panel.cjs.map +1 -1
  139. package/dist/cjs/components/ProgressBar/ProgressBar.cjs +2 -1
  140. package/dist/cjs/components/ProgressBar/ProgressBar.cjs.map +1 -1
  141. package/dist/cjs/components/QueryBuilder/QueryBuilder.cjs +13 -11
  142. package/dist/cjs/components/QueryBuilder/QueryBuilder.cjs.map +1 -1
  143. package/dist/cjs/components/QueryBuilder/Rule/Rule.cjs +0 -1
  144. package/dist/cjs/components/QueryBuilder/Rule/Rule.cjs.map +1 -1
  145. package/dist/cjs/components/QueryBuilder/RuleGroup/RuleGroup.cjs +1 -2
  146. package/dist/cjs/components/QueryBuilder/RuleGroup/RuleGroup.cjs.map +1 -1
  147. package/dist/cjs/components/Radio/Radio.cjs +2 -1
  148. package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
  149. package/dist/cjs/components/RadioGroup/RadioGroup.cjs +25 -23
  150. package/dist/cjs/components/RadioGroup/RadioGroup.cjs.map +1 -1
  151. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs +18 -16
  152. package/dist/cjs/components/ScrollTo/Horizontal/ScrollToHorizontal.cjs.map +1 -1
  153. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs +19 -17
  154. package/dist/cjs/components/ScrollTo/Vertical/ScrollToVertical.cjs.map +1 -1
  155. package/dist/cjs/components/SelectionList/SelectionList.cjs +27 -25
  156. package/dist/cjs/components/SelectionList/SelectionList.cjs.map +1 -1
  157. package/dist/cjs/components/SimpleGrid/SimpleGrid.cjs +9 -7
  158. package/dist/cjs/components/SimpleGrid/SimpleGrid.cjs.map +1 -1
  159. package/dist/cjs/components/Slider/Slider.cjs +37 -35
  160. package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
  161. package/dist/cjs/components/Snackbar/Snackbar.cjs +1 -1
  162. package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
  163. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs +1 -1
  164. package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs.map +1 -1
  165. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs +2 -2
  166. package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs.map +1 -1
  167. package/dist/cjs/components/Stack/Stack.cjs +13 -11
  168. package/dist/cjs/components/Stack/Stack.cjs.map +1 -1
  169. package/dist/cjs/components/Switch/Switch.cjs +2 -1
  170. package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
  171. package/dist/cjs/components/Tab/Tab.cjs +8 -6
  172. package/dist/cjs/components/Tab/Tab.cjs.map +1 -1
  173. package/dist/cjs/components/Table/Table.cjs +12 -10
  174. package/dist/cjs/components/Table/Table.cjs.map +1 -1
  175. package/dist/cjs/components/Table/TableHeader/TableHeader.cjs +2 -3
  176. package/dist/cjs/components/Table/TableHeader/TableHeader.cjs.map +1 -1
  177. package/dist/cjs/components/Table/hooks/useRowExpand.cjs +0 -1
  178. package/dist/cjs/components/Table/hooks/useRowExpand.cjs.map +1 -1
  179. package/dist/cjs/components/Table/renderers/renderers.cjs +0 -1
  180. package/dist/cjs/components/Table/renderers/renderers.cjs.map +1 -1
  181. package/dist/cjs/components/Tabs/Tabs.cjs +6 -4
  182. package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
  183. package/dist/cjs/components/Tag/Tag.cjs +18 -16
  184. package/dist/cjs/components/Tag/Tag.cjs.map +1 -1
  185. package/dist/cjs/components/TagsInput/TagsInput.cjs +39 -37
  186. package/dist/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  187. package/dist/cjs/components/TextArea/TextArea.cjs +2 -1
  188. package/dist/cjs/components/TextArea/TextArea.cjs.map +1 -1
  189. package/dist/cjs/components/TimeAgo/TimeAgo.cjs +14 -12
  190. package/dist/cjs/components/TimeAgo/TimeAgo.cjs.map +1 -1
  191. package/dist/cjs/components/TimePicker/TimePicker.cjs +3 -2
  192. package/dist/cjs/components/TimePicker/TimePicker.cjs.map +1 -1
  193. package/dist/cjs/components/ToggleButton/ToggleButton.cjs +2 -2
  194. package/dist/cjs/components/ToggleButton/ToggleButton.cjs.map +1 -1
  195. package/dist/cjs/components/Tooltip/Tooltip.cjs +2 -1
  196. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  197. package/dist/cjs/components/Typography/Typography.cjs +2 -1
  198. package/dist/cjs/components/Typography/Typography.cjs.map +1 -1
  199. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs +0 -2
  200. package/dist/cjs/components/VerticalNavigation/Header/Header.cjs.map +1 -1
  201. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.cjs +0 -1
  202. package/dist/cjs/components/VerticalNavigation/NavigationSlider/NavigationSlider.cjs.map +1 -1
  203. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs +12 -10
  204. package/dist/cjs/components/VerticalNavigation/VerticalNavigation.cjs.map +1 -1
  205. package/dist/cjs/hooks/useDefaultProps.cjs +41 -0
  206. package/dist/cjs/hooks/useDefaultProps.cjs.map +1 -0
  207. package/dist/cjs/index.cjs +5 -0
  208. package/dist/cjs/index.cjs.map +1 -1
  209. package/dist/esm/components/Accordion/Accordion.js +17 -15
  210. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  211. package/dist/esm/components/ActionBar/ActionBar.js +2 -1
  212. package/dist/esm/components/ActionBar/ActionBar.js.map +1 -1
  213. package/dist/esm/components/ActionsGeneric/ActionsGeneric.js +13 -11
  214. package/dist/esm/components/ActionsGeneric/ActionsGeneric.js.map +1 -1
  215. package/dist/esm/components/AppSwitcher/AppSwitcher.js +16 -14
  216. package/dist/esm/components/AppSwitcher/AppSwitcher.js.map +1 -1
  217. package/dist/esm/components/Avatar/Avatar.js +22 -20
  218. package/dist/esm/components/Avatar/Avatar.js.map +1 -1
  219. package/dist/esm/components/Badge/Badge.js +2 -1
  220. package/dist/esm/components/Badge/Badge.js.map +1 -1
  221. package/dist/esm/components/Banner/Banner.js +22 -20
  222. package/dist/esm/components/Banner/Banner.js.map +1 -1
  223. package/dist/esm/components/Banner/BannerContent/BannerContent.js +1 -1
  224. package/dist/esm/components/Banner/BannerContent/BannerContent.js.map +1 -1
  225. package/dist/esm/components/BaseCheckBox/BaseCheckBox.js +21 -19
  226. package/dist/esm/components/BaseCheckBox/BaseCheckBox.js.map +1 -1
  227. package/dist/esm/components/BaseDropdown/BaseDropdown.js +26 -24
  228. package/dist/esm/components/BaseDropdown/BaseDropdown.js.map +1 -1
  229. package/dist/esm/components/BaseInput/BaseInput.js +23 -21
  230. package/dist/esm/components/BaseInput/BaseInput.js.map +1 -1
  231. package/dist/esm/components/BaseRadio/BaseRadio.js +2 -1
  232. package/dist/esm/components/BaseRadio/BaseRadio.js.map +1 -1
  233. package/dist/esm/components/BaseSwitch/BaseSwitch.js +2 -1
  234. package/dist/esm/components/BaseSwitch/BaseSwitch.js.map +1 -1
  235. package/dist/esm/components/Box/Box.js +9 -8
  236. package/dist/esm/components/Box/Box.js.map +1 -1
  237. package/dist/esm/components/BreadCrumb/BreadCrumb.js +14 -12
  238. package/dist/esm/components/BreadCrumb/BreadCrumb.js.map +1 -1
  239. package/dist/esm/components/BulkActions/BulkActions.js +22 -20
  240. package/dist/esm/components/BulkActions/BulkActions.js.map +1 -1
  241. package/dist/esm/components/Button/Button.js +4 -3
  242. package/dist/esm/components/Button/Button.js.map +1 -1
  243. package/dist/esm/components/Calendar/Calendar.js +20 -18
  244. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  245. package/dist/esm/components/Card/Card.js +13 -11
  246. package/dist/esm/components/Card/Card.js.map +1 -1
  247. package/dist/esm/components/Carousel/Carousel.js +2 -2
  248. package/dist/esm/components/Carousel/Carousel.js.map +1 -1
  249. package/dist/esm/components/Carousel/CarouselControls.js +2 -3
  250. package/dist/esm/components/Carousel/CarouselControls.js.map +1 -1
  251. package/dist/esm/components/Carousel/CarouselSlide/CarouselSlide.js +1 -1
  252. package/dist/esm/components/Carousel/CarouselSlide/CarouselSlide.js.map +1 -1
  253. package/dist/esm/components/CheckBox/CheckBox.js +29 -27
  254. package/dist/esm/components/CheckBox/CheckBox.js.map +1 -1
  255. package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js +28 -26
  256. package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
  257. package/dist/esm/components/ColorPicker/ColorPicker.js +34 -32
  258. package/dist/esm/components/ColorPicker/ColorPicker.js.map +1 -1
  259. package/dist/esm/components/Container/Container.js +9 -7
  260. package/dist/esm/components/Container/Container.js.map +1 -1
  261. package/dist/esm/components/Controls/Controls.js +14 -12
  262. package/dist/esm/components/Controls/Controls.js.map +1 -1
  263. package/dist/esm/components/DatePicker/DatePicker.js +39 -37
  264. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  265. package/dist/esm/components/Dialog/Actions/Actions.js +9 -7
  266. package/dist/esm/components/Dialog/Actions/Actions.js.map +1 -1
  267. package/dist/esm/components/Dialog/Content/Content.js +8 -6
  268. package/dist/esm/components/Dialog/Content/Content.js.map +1 -1
  269. package/dist/esm/components/Dialog/Dialog.js +16 -14
  270. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  271. package/dist/esm/components/Dialog/Title/Title.js +11 -9
  272. package/dist/esm/components/Dialog/Title/Title.js.map +1 -1
  273. package/dist/esm/components/DotPagination/DotPagination.js +14 -12
  274. package/dist/esm/components/DotPagination/DotPagination.js.map +1 -1
  275. package/dist/esm/components/Drawer/Drawer.js +13 -11
  276. package/dist/esm/components/Drawer/Drawer.js.map +1 -1
  277. package/dist/esm/components/DropDownMenu/DropDownMenu.js +20 -17
  278. package/dist/esm/components/DropDownMenu/DropDownMenu.js.map +1 -1
  279. package/dist/esm/components/Dropdown/Dropdown.js +2 -1
  280. package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
  281. package/dist/esm/components/EmptyState/EmptyState.js +2 -1
  282. package/dist/esm/components/EmptyState/EmptyState.js.map +1 -1
  283. package/dist/esm/components/FileUploader/File/File.js +0 -1
  284. package/dist/esm/components/FileUploader/File/File.js.map +1 -1
  285. package/dist/esm/components/FileUploader/FileUploader.js +17 -15
  286. package/dist/esm/components/FileUploader/FileUploader.js.map +1 -1
  287. package/dist/esm/components/FileUploader/Preview/Preview.js +0 -1
  288. package/dist/esm/components/FileUploader/Preview/Preview.js.map +1 -1
  289. package/dist/esm/components/FilterGroup/FilterGroup.js +30 -28
  290. package/dist/esm/components/FilterGroup/FilterGroup.js.map +1 -1
  291. package/dist/esm/components/FilterGroup/FilterGroupContext.js +8 -6
  292. package/dist/esm/components/FilterGroup/FilterGroupContext.js.map +1 -1
  293. package/dist/esm/components/Footer/Footer.js +2 -1
  294. package/dist/esm/components/Footer/Footer.js.map +1 -1
  295. package/dist/esm/components/Forms/CharCounter/CharCounter.js +13 -11
  296. package/dist/esm/components/Forms/CharCounter/CharCounter.js.map +1 -1
  297. package/dist/esm/components/Forms/FormElement/FormElement.js +15 -13
  298. package/dist/esm/components/Forms/FormElement/FormElement.js.map +1 -1
  299. package/dist/esm/components/Forms/InfoMessage/InfoMessage.js +11 -9
  300. package/dist/esm/components/Forms/InfoMessage/InfoMessage.js.map +1 -1
  301. package/dist/esm/components/Forms/Label/Label.js +13 -11
  302. package/dist/esm/components/Forms/Label/Label.js.map +1 -1
  303. package/dist/esm/components/Forms/WarningText/WarningText.js +16 -14
  304. package/dist/esm/components/Forms/WarningText/WarningText.js.map +1 -1
  305. package/dist/esm/components/GlobalActions/GlobalActions.js +13 -11
  306. package/dist/esm/components/GlobalActions/GlobalActions.js.map +1 -1
  307. package/dist/esm/components/Grid/Grid.js +10 -8
  308. package/dist/esm/components/Grid/Grid.js.map +1 -1
  309. package/dist/esm/components/Header/Actions/Actions.js +8 -6
  310. package/dist/esm/components/Header/Actions/Actions.js.map +1 -1
  311. package/dist/esm/components/Header/Brand/Brand.js +9 -7
  312. package/dist/esm/components/Header/Brand/Brand.js.map +1 -1
  313. package/dist/esm/components/Header/Header.js +2 -1
  314. package/dist/esm/components/Header/Header.js.map +1 -1
  315. package/dist/esm/components/Header/Navigation/Navigation.js +11 -9
  316. package/dist/esm/components/Header/Navigation/Navigation.js.map +1 -1
  317. package/dist/esm/components/InlineEditor/InlineEditor.js +18 -16
  318. package/dist/esm/components/InlineEditor/InlineEditor.js.map +1 -1
  319. package/dist/esm/components/Input/Input.js +2 -1
  320. package/dist/esm/components/Input/Input.js.map +1 -1
  321. package/dist/esm/components/Kpi/Kpi.js +13 -11
  322. package/dist/esm/components/Kpi/Kpi.js.map +1 -1
  323. package/dist/esm/components/Link/Link.js +11 -9
  324. package/dist/esm/components/Link/Link.js.map +1 -1
  325. package/dist/esm/components/List/List.js +21 -19
  326. package/dist/esm/components/List/List.js.map +1 -1
  327. package/dist/esm/components/ListContainer/ListContainer.js +12 -10
  328. package/dist/esm/components/ListContainer/ListContainer.js.map +1 -1
  329. package/dist/esm/components/ListContainer/ListItem/ListItem.js +20 -18
  330. package/dist/esm/components/ListContainer/ListItem/ListItem.js.map +1 -1
  331. package/dist/esm/components/Loading/Loading.js +2 -1
  332. package/dist/esm/components/Loading/Loading.js.map +1 -1
  333. package/dist/esm/components/Login/Login.js +10 -8
  334. package/dist/esm/components/Login/Login.js.map +1 -1
  335. package/dist/esm/components/MultiButton/MultiButton.js +11 -9
  336. package/dist/esm/components/MultiButton/MultiButton.js.map +1 -1
  337. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js +12 -10
  338. package/dist/esm/components/OverflowTooltip/OverflowTooltip.js.map +1 -1
  339. package/dist/esm/components/Pagination/ButtonIconTooltip.js +0 -1
  340. package/dist/esm/components/Pagination/ButtonIconTooltip.js.map +1 -1
  341. package/dist/esm/components/Pagination/Pagination.js +22 -20
  342. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  343. package/dist/esm/components/Pagination/Select.js +1 -1
  344. package/dist/esm/components/Pagination/Select.js.map +1 -1
  345. package/dist/esm/components/Panel/Panel.js +9 -7
  346. package/dist/esm/components/Panel/Panel.js.map +1 -1
  347. package/dist/esm/components/ProgressBar/ProgressBar.js +2 -1
  348. package/dist/esm/components/ProgressBar/ProgressBar.js.map +1 -1
  349. package/dist/esm/components/QueryBuilder/QueryBuilder.js +13 -11
  350. package/dist/esm/components/QueryBuilder/QueryBuilder.js.map +1 -1
  351. package/dist/esm/components/QueryBuilder/Rule/Rule.js +0 -1
  352. package/dist/esm/components/QueryBuilder/Rule/Rule.js.map +1 -1
  353. package/dist/esm/components/QueryBuilder/RuleGroup/RuleGroup.js +1 -2
  354. package/dist/esm/components/QueryBuilder/RuleGroup/RuleGroup.js.map +1 -1
  355. package/dist/esm/components/Radio/Radio.js +2 -1
  356. package/dist/esm/components/Radio/Radio.js.map +1 -1
  357. package/dist/esm/components/RadioGroup/RadioGroup.js +25 -23
  358. package/dist/esm/components/RadioGroup/RadioGroup.js.map +1 -1
  359. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js +18 -16
  360. package/dist/esm/components/ScrollTo/Horizontal/ScrollToHorizontal.js.map +1 -1
  361. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js +19 -17
  362. package/dist/esm/components/ScrollTo/Vertical/ScrollToVertical.js.map +1 -1
  363. package/dist/esm/components/SelectionList/SelectionList.js +27 -25
  364. package/dist/esm/components/SelectionList/SelectionList.js.map +1 -1
  365. package/dist/esm/components/SimpleGrid/SimpleGrid.js +9 -7
  366. package/dist/esm/components/SimpleGrid/SimpleGrid.js.map +1 -1
  367. package/dist/esm/components/Slider/Slider.js +37 -35
  368. package/dist/esm/components/Slider/Slider.js.map +1 -1
  369. package/dist/esm/components/Snackbar/Snackbar.js +1 -1
  370. package/dist/esm/components/Snackbar/Snackbar.js.map +1 -1
  371. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js +1 -1
  372. package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js.map +1 -1
  373. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js +2 -2
  374. package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js.map +1 -1
  375. package/dist/esm/components/Stack/Stack.js +13 -11
  376. package/dist/esm/components/Stack/Stack.js.map +1 -1
  377. package/dist/esm/components/Switch/Switch.js +2 -1
  378. package/dist/esm/components/Switch/Switch.js.map +1 -1
  379. package/dist/esm/components/Tab/Tab.js +8 -6
  380. package/dist/esm/components/Tab/Tab.js.map +1 -1
  381. package/dist/esm/components/Table/Table.js +12 -10
  382. package/dist/esm/components/Table/Table.js.map +1 -1
  383. package/dist/esm/components/Table/TableHeader/TableHeader.js +2 -3
  384. package/dist/esm/components/Table/TableHeader/TableHeader.js.map +1 -1
  385. package/dist/esm/components/Table/hooks/useRowExpand.js +0 -1
  386. package/dist/esm/components/Table/hooks/useRowExpand.js.map +1 -1
  387. package/dist/esm/components/Table/renderers/renderers.js +0 -1
  388. package/dist/esm/components/Table/renderers/renderers.js.map +1 -1
  389. package/dist/esm/components/Tabs/Tabs.js +6 -4
  390. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  391. package/dist/esm/components/Tag/Tag.js +18 -16
  392. package/dist/esm/components/Tag/Tag.js.map +1 -1
  393. package/dist/esm/components/TagsInput/TagsInput.js +39 -37
  394. package/dist/esm/components/TagsInput/TagsInput.js.map +1 -1
  395. package/dist/esm/components/TextArea/TextArea.js +2 -1
  396. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  397. package/dist/esm/components/TimeAgo/TimeAgo.js +14 -12
  398. package/dist/esm/components/TimeAgo/TimeAgo.js.map +1 -1
  399. package/dist/esm/components/TimePicker/TimePicker.js +3 -2
  400. package/dist/esm/components/TimePicker/TimePicker.js.map +1 -1
  401. package/dist/esm/components/ToggleButton/ToggleButton.js +2 -2
  402. package/dist/esm/components/ToggleButton/ToggleButton.js.map +1 -1
  403. package/dist/esm/components/Tooltip/Tooltip.js +2 -1
  404. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  405. package/dist/esm/components/Typography/Typography.js +2 -1
  406. package/dist/esm/components/Typography/Typography.js.map +1 -1
  407. package/dist/esm/components/VerticalNavigation/Header/Header.js +0 -2
  408. package/dist/esm/components/VerticalNavigation/Header/Header.js.map +1 -1
  409. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.js +0 -1
  410. package/dist/esm/components/VerticalNavigation/NavigationSlider/NavigationSlider.js.map +1 -1
  411. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js +12 -10
  412. package/dist/esm/components/VerticalNavigation/VerticalNavigation.js.map +1 -1
  413. package/dist/esm/hooks/useDefaultProps.js +41 -0
  414. package/dist/esm/hooks/useDefaultProps.js.map +1 -0
  415. package/dist/esm/index.js +5 -0
  416. package/dist/esm/index.js.map +1 -1
  417. package/dist/types/index.d.ts +76 -59
  418. package/package.json +5 -5
@@ -87,7 +87,6 @@ const HvFile = ({
87
87
  "aria-label": removeFileButtonLabel,
88
88
  className: clsx.clsx(classes == null ? void 0 : classes.removeButton, fileClasses.default.removeButton),
89
89
  onClick: () => onFileRemoved == null ? void 0 : onFileRemoved(data),
90
- variant: "secondaryGhost",
91
90
  icon: true,
92
91
  children: /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.Close, {
93
92
  iconSize: "XS"
@@ -1 +1 @@
1
- {"version":3,"file":"File.cjs","sources":["../../../../../src/components/FileUploader/File/File.tsx"],"sourcesContent":["import { Close } from \"@hitachivantara/uikit-react-icons\";\n\nimport { clsx } from \"clsx\";\n\nimport { setId } from \"@core/utils/setId\";\nimport { HvTypography } from \"@core/components/Typography\";\n\nimport fileClasses, { HvFileClasses } from \"./fileClasses\";\nimport { convertUnits } from \"../utils\";\nimport {\n StyledFail,\n StyledErrorMessage,\n StyledSuccess,\n StyledProgressBarBack,\n StyledProgressBar,\n StyledNameText,\n StyledProgressTextContainer,\n StyledPreviewContainer,\n StyledIconButton,\n StyledEmptyIcon,\n} from \"./File.styles\";\n\nexport interface HvFileData extends Omit<File, \"name\" | \"size\"> {\n /**\n * The file id.\n */\n id?: string;\n /**\n * The file name.\n */\n name?: string;\n /**\n * The upload status.\n */\n status?: \"progress\" | \"success\" | \"fail\";\n /**\n * The file size in bytes.\n */\n size?: number;\n /**\n * Upload progress in bytes.\n */\n progress?: number;\n /**\n * Optional node representing a preview of the uploaded file.\n */\n preview?: React.ReactNode;\n /**\n * Error message when the upload failed.\n */\n errorMessage?: string;\n}\n\nexport type HvFilesAddedEvent = (files: HvFileData[]) => void;\n\nexport type HvFileRemovedEvent = (file: HvFileData) => void;\n\nexport type HvFileProps = {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * File information to be displayed.\n */\n data: HvFileData;\n /**\n * Callback fired when file is removed from list.\n */\n onFileRemoved?: HvFileRemovedEvent;\n /**\n * Value of aria-label to apply to remove file button in file list.\n * */\n removeFileButtonLabel?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvFileClasses;\n};\n\nconst getStatusIcon = (\n classes?: HvFileClasses,\n status?: HvFileData[\"status\"]\n) => {\n switch (status) {\n case \"success\":\n return (\n <StyledSuccess\n className={clsx(classes?.icon, fileClasses.icon)}\n color=\"positive\"\n />\n );\n case \"fail\":\n return (\n <StyledFail\n className={clsx(classes?.icon, fileClasses.icon)}\n color=\"negative\"\n />\n );\n default:\n return (\n <StyledEmptyIcon className={clsx(classes?.icon, fileClasses.icon)} />\n );\n }\n};\n\nconst getProgressText = (data: HvFileData, classes?: HvFileClasses) => {\n const hasFailed = data.status === \"fail\";\n const inProgress = data.status === \"progress\";\n\n return (\n <>\n {data.progress || data.size || data.errorMessage ? `\\xa0|\\xa0` : null}\n\n {inProgress && data.progress != null && (\n <HvTypography variant=\"label\">\n {`${convertUnits(data.progress)}\\xa0/\\xa0`}\n </HvTypography>\n )}\n\n {!hasFailed && data.size && (\n <HvTypography>{`${convertUnits(data.size)}`}</HvTypography>\n )}\n\n {hasFailed && data.errorMessage && (\n <StyledErrorMessage className={clsx(classes?.fail, fileClasses.fail)}>\n {data.errorMessage}\n </StyledErrorMessage>\n )}\n </>\n );\n};\n\nconst getProgressBarWith = ({ size, progress }: HvFileData) => {\n const width =\n progress != null && size != null ? Math.round((progress * 100) / size) : 0;\n\n return width;\n};\n\nexport const HvFile = ({\n id,\n classes,\n data,\n onFileRemoved,\n removeFileButtonLabel,\n}: HvFileProps) => {\n const hasError = data.status === \"fail\";\n\n const inProgress = data.status === \"progress\";\n\n const progressText = getProgressText(data, classes);\n\n const statusIcon = getStatusIcon(classes, data.status);\n\n const currentProgress = getProgressBarWith(data);\n\n return (\n <li className={clsx(classes?.root, fileClasses.root)}>\n {!hasError && inProgress && (\n <StyledProgressBarBack\n className={clsx(\n classes?.progressbarBack,\n fileClasses.progressbarBack\n )}\n />\n )}\n\n {!hasError && inProgress && (\n <StyledProgressBar\n className={clsx(classes?.progressbar, fileClasses.progressbar)}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-valuenow={currentProgress}\n style={{ width: `${currentProgress}%` }}\n />\n )}\n\n {statusIcon}\n\n <StyledNameText\n className={clsx(classes?.nameText, fileClasses.nameText)}\n variant=\"label\"\n >\n {data.name}\n </StyledNameText>\n\n <StyledProgressTextContainer\n className={clsx(\n classes?.progressTextContainer,\n fileClasses.progressTextContainer\n )}\n >\n {progressText}\n </StyledProgressTextContainer>\n\n {data.preview && (\n <StyledPreviewContainer\n className={clsx(\n classes?.previewContainer,\n fileClasses.previewContainer\n )}\n >\n {data.preview}\n </StyledPreviewContainer>\n )}\n\n <StyledIconButton\n id={setId(id, \"remove-button\")}\n aria-label={removeFileButtonLabel}\n className={clsx(classes?.removeButton, fileClasses.removeButton)}\n onClick={() => onFileRemoved?.(data)}\n variant=\"secondaryGhost\"\n icon\n >\n <Close iconSize=\"XS\" />\n </StyledIconButton>\n </li>\n );\n};\n"],"names":["getStatusIcon","classes","status","StyledSuccess","className","clsx","icon","fileClasses","color","StyledFail","StyledEmptyIcon","getProgressText","data","hasFailed","inProgress","_Fragment","children","progress","size","errorMessage","HvTypography","variant","convertUnits","StyledErrorMessage","fail","getProgressBarWith","width","Math","round","HvFile","id","onFileRemoved","removeFileButtonLabel","hasError","progressText","statusIcon","currentProgress","root","StyledProgressBarBack","progressbarBack","StyledProgressBar","progressbar","style","_jsx","StyledNameText","nameText","name","StyledProgressTextContainer","progressTextContainer","preview","StyledPreviewContainer","previewContainer","StyledIconButton","setId","removeButton","onClick","Close","iconSize"],"mappings":"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"}
1
+ {"version":3,"file":"File.cjs","sources":["../../../../../src/components/FileUploader/File/File.tsx"],"sourcesContent":["import { Close } from \"@hitachivantara/uikit-react-icons\";\n\nimport { clsx } from \"clsx\";\n\nimport { setId } from \"@core/utils/setId\";\nimport { HvTypography } from \"@core/components/Typography\";\n\nimport fileClasses, { HvFileClasses } from \"./fileClasses\";\nimport { convertUnits } from \"../utils\";\nimport {\n StyledFail,\n StyledErrorMessage,\n StyledSuccess,\n StyledProgressBarBack,\n StyledProgressBar,\n StyledNameText,\n StyledProgressTextContainer,\n StyledPreviewContainer,\n StyledIconButton,\n StyledEmptyIcon,\n} from \"./File.styles\";\n\nexport interface HvFileData extends Omit<File, \"name\" | \"size\"> {\n /**\n * The file id.\n */\n id?: string;\n /**\n * The file name.\n */\n name?: string;\n /**\n * The upload status.\n */\n status?: \"progress\" | \"success\" | \"fail\";\n /**\n * The file size in bytes.\n */\n size?: number;\n /**\n * Upload progress in bytes.\n */\n progress?: number;\n /**\n * Optional node representing a preview of the uploaded file.\n */\n preview?: React.ReactNode;\n /**\n * Error message when the upload failed.\n */\n errorMessage?: string;\n}\n\nexport type HvFilesAddedEvent = (files: HvFileData[]) => void;\n\nexport type HvFileRemovedEvent = (file: HvFileData) => void;\n\nexport type HvFileProps = {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * File information to be displayed.\n */\n data: HvFileData;\n /**\n * Callback fired when file is removed from list.\n */\n onFileRemoved?: HvFileRemovedEvent;\n /**\n * Value of aria-label to apply to remove file button in file list.\n * */\n removeFileButtonLabel?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvFileClasses;\n};\n\nconst getStatusIcon = (\n classes?: HvFileClasses,\n status?: HvFileData[\"status\"]\n) => {\n switch (status) {\n case \"success\":\n return (\n <StyledSuccess\n className={clsx(classes?.icon, fileClasses.icon)}\n color=\"positive\"\n />\n );\n case \"fail\":\n return (\n <StyledFail\n className={clsx(classes?.icon, fileClasses.icon)}\n color=\"negative\"\n />\n );\n default:\n return (\n <StyledEmptyIcon className={clsx(classes?.icon, fileClasses.icon)} />\n );\n }\n};\n\nconst getProgressText = (data: HvFileData, classes?: HvFileClasses) => {\n const hasFailed = data.status === \"fail\";\n const inProgress = data.status === \"progress\";\n\n return (\n <>\n {data.progress || data.size || data.errorMessage ? `\\xa0|\\xa0` : null}\n\n {inProgress && data.progress != null && (\n <HvTypography variant=\"label\">\n {`${convertUnits(data.progress)}\\xa0/\\xa0`}\n </HvTypography>\n )}\n\n {!hasFailed && data.size && (\n <HvTypography>{`${convertUnits(data.size)}`}</HvTypography>\n )}\n\n {hasFailed && data.errorMessage && (\n <StyledErrorMessage className={clsx(classes?.fail, fileClasses.fail)}>\n {data.errorMessage}\n </StyledErrorMessage>\n )}\n </>\n );\n};\n\nconst getProgressBarWith = ({ size, progress }: HvFileData) => {\n const width =\n progress != null && size != null ? Math.round((progress * 100) / size) : 0;\n\n return width;\n};\n\nexport const HvFile = ({\n id,\n classes,\n data,\n onFileRemoved,\n removeFileButtonLabel,\n}: HvFileProps) => {\n const hasError = data.status === \"fail\";\n\n const inProgress = data.status === \"progress\";\n\n const progressText = getProgressText(data, classes);\n\n const statusIcon = getStatusIcon(classes, data.status);\n\n const currentProgress = getProgressBarWith(data);\n\n return (\n <li className={clsx(classes?.root, fileClasses.root)}>\n {!hasError && inProgress && (\n <StyledProgressBarBack\n className={clsx(\n classes?.progressbarBack,\n fileClasses.progressbarBack\n )}\n />\n )}\n\n {!hasError && inProgress && (\n <StyledProgressBar\n className={clsx(classes?.progressbar, fileClasses.progressbar)}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-valuenow={currentProgress}\n style={{ width: `${currentProgress}%` }}\n />\n )}\n\n {statusIcon}\n\n <StyledNameText\n className={clsx(classes?.nameText, fileClasses.nameText)}\n variant=\"label\"\n >\n {data.name}\n </StyledNameText>\n\n <StyledProgressTextContainer\n className={clsx(\n classes?.progressTextContainer,\n fileClasses.progressTextContainer\n )}\n >\n {progressText}\n </StyledProgressTextContainer>\n\n {data.preview && (\n <StyledPreviewContainer\n className={clsx(\n classes?.previewContainer,\n fileClasses.previewContainer\n )}\n >\n {data.preview}\n </StyledPreviewContainer>\n )}\n\n <StyledIconButton\n id={setId(id, \"remove-button\")}\n aria-label={removeFileButtonLabel}\n className={clsx(classes?.removeButton, fileClasses.removeButton)}\n onClick={() => onFileRemoved?.(data)}\n icon\n >\n <Close iconSize=\"XS\" />\n </StyledIconButton>\n </li>\n );\n};\n"],"names":["getStatusIcon","classes","status","StyledSuccess","className","clsx","icon","fileClasses","color","StyledFail","StyledEmptyIcon","getProgressText","data","hasFailed","inProgress","_Fragment","children","progress","size","errorMessage","HvTypography","variant","convertUnits","StyledErrorMessage","fail","getProgressBarWith","width","Math","round","HvFile","id","onFileRemoved","removeFileButtonLabel","hasError","progressText","statusIcon","currentProgress","root","StyledProgressBarBack","progressbarBack","StyledProgressBar","progressbar","style","_jsx","StyledNameText","nameText","name","StyledProgressTextContainer","progressTextContainer","preview","StyledPreviewContainer","previewContainer","StyledIconButton","setId","removeButton","onClick","Close","iconSize"],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const useLabels = require("../../hooks/useLabels.cjs");
4
4
  const setId = require("../../utils/setId.cjs");
5
+ const useDefaultProps = require("../../hooks/useDefaultProps.cjs");
5
6
  const jsxRuntime = require("@emotion/react/jsx-runtime");
6
7
  const DropZone = require("./DropZone/DropZone.cjs");
7
8
  const FileList = require("./FileList/FileList.cjs");
@@ -15,21 +16,22 @@ const DEFAULT_LABELS = {
15
16
  fileTypeError: "File type not allowed for upload",
16
17
  removeFileButtonLabel: "Remove File"
17
18
  };
18
- const HvFileUploader = ({
19
- id,
20
- className,
21
- labels: labelsProp,
22
- fileList,
23
- multiple = true,
24
- disabled = false,
25
- hideLabels = false,
26
- maxFileSize = Infinity,
27
- inputProps = {},
28
- acceptedFiles = [],
29
- onFilesAdded,
30
- onFileRemoved,
31
- ...others
32
- }) => {
19
+ const HvFileUploader = (props) => {
20
+ const {
21
+ id,
22
+ className,
23
+ labels: labelsProp,
24
+ fileList,
25
+ multiple = true,
26
+ disabled = false,
27
+ hideLabels = false,
28
+ maxFileSize = Infinity,
29
+ inputProps = {},
30
+ acceptedFiles = [],
31
+ onFilesAdded,
32
+ onFileRemoved,
33
+ ...others
34
+ } = useDefaultProps.useDefaultProps("HvFileUploader", props);
33
35
  const labels = useLabels.useLabels(DEFAULT_LABELS, labelsProp);
34
36
  return /* @__PURE__ */ jsxRuntime.jsxs("div", {
35
37
  id,
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploader.cjs","sources":["../../../../src/components/FileUploader/FileUploader.tsx"],"sourcesContent":["import { useLabels } from \"@core/hooks/useLabels\";\nimport { setId } from \"@core/utils/setId\";\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { HvDropZone, HvDropZoneLabels } from \"./DropZone\";\nimport { HvFileData, HvFileRemovedEvent, HvFilesAddedEvent } from \"./File\";\nimport { HvFileList } from \"./FileList\";\n\nexport interface HvFileUploaderLabels extends HvDropZoneLabels {\n /**\n * Value of aria-label to apply to remove file button in FileList\n * */\n removeFileButtonLabel?: string;\n}\n\nexport interface HvFileUploaderProps extends HvBaseProps {\n /**\n * An object containing all the labels.\n */\n labels?: HvFileUploaderLabels;\n /**\n * The files to upload.\n */\n fileList?: HvFileData[];\n /**\n * Whether the Dropzone should accept multiple files at once.\n */\n multiple?: boolean;\n /**\n * If the input is disabled or not\n */\n disabled?: boolean;\n /**\n * Max upload size\n * */\n maxFileSize?: number;\n /**\n * Files extensions accepted for upload.\n */\n acceptedFiles?: string[];\n /**\n * Callback fired when files are added.\n */\n onFilesAdded?: HvFilesAddedEvent;\n /**\n * Callback fired when file is removed from list.\n */\n onFileRemoved?: HvFileRemovedEvent;\n /**\n * Whether the DropZone should hide labels or not.\n */\n hideLabels?: boolean;\n /**\n * Attributes applied to the input element.\n */\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n}\n\n// TODO: This component needs to adopt the Form element shape and deprecate its way of composing labels\n\nconst DEFAULT_LABELS: HvFileUploaderLabels = {\n dropzone: \"Label\",\n sizeWarning: \"Max. file size:\",\n drag: \"Drop files here or\",\n selectFiles: \"click to upload\",\n dropFiles: \"Drop files here\",\n fileSizeError: \"The file exceeds the maximum upload size\",\n fileTypeError: \"File type not allowed for upload\",\n removeFileButtonLabel: \"Remove File\",\n};\n\n/**\n * Lets the user choose one or more files from their device storage. Once chosen,\n * the files can be uploaded to a server or manipulated on the client side.\n *\n * Accepted file types follow the format of the html input accept attribute. Please check https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file for more details.\n */\nexport const HvFileUploader = ({\n id,\n className,\n labels: labelsProp,\n fileList,\n multiple = true,\n disabled = false,\n hideLabels = false,\n maxFileSize = Infinity,\n inputProps = {},\n acceptedFiles = [],\n onFilesAdded,\n onFileRemoved,\n ...others\n}: HvFileUploaderProps) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n return (\n <div id={id} className={className} {...others}>\n <HvDropZone\n id={setId(id, \"dropzone\")}\n labels={labels}\n multiple={multiple}\n disabled={disabled}\n acceptedFiles={acceptedFiles}\n maxFileSize={maxFileSize}\n onFilesAdded={onFilesAdded}\n inputProps={inputProps}\n hideLabels={hideLabels}\n />\n <HvFileList\n id={setId(id, \"filelist\")}\n list={fileList}\n onFileRemoved={onFileRemoved}\n removeFileButtonLabel={labels?.removeFileButtonLabel}\n />\n </div>\n );\n};\n"],"names":["DEFAULT_LABELS","dropzone","sizeWarning","drag","selectFiles","dropFiles","fileSizeError","fileTypeError","removeFileButtonLabel","HvFileUploader","id","className","labels","labelsProp","fileList","multiple","disabled","hideLabels","maxFileSize","Infinity","inputProps","acceptedFiles","onFilesAdded","onFileRemoved","others","useLabels","children","_jsx","HvDropZone","setId","HvFileList","list"],"mappings":";;;;;;;AA4DA,MAAMA,iBAAuC;AAAA,EAC3CC,UAAU;AAAA,EACVC,aAAa;AAAA,EACbC,MAAM;AAAA,EACNC,aAAa;AAAA,EACbC,WAAW;AAAA,EACXC,eAAe;AAAA,EACfC,eAAe;AAAA,EACfC,uBAAuB;AACzB;AAQO,MAAMC,iBAAiBA,CAAC;AAAA,EAC7BC;AAAAA,EACAC;AAAAA,EACAC,QAAQC;AAAAA,EACRC;AAAAA,EACAC,WAAW;AAAA,EACXC,WAAW;AAAA,EACXC,aAAa;AAAA,EACbC,cAAcC;AAAAA,EACdC,aAAa,CAAC;AAAA,EACdC,gBAAgB,CAAE;AAAA,EAClBC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACgB,MAAM;AACnBZ,QAAAA,SAASa,UAAAA,UAAUzB,gBAAgBa,UAAU;AAEnD,yCACE,OAAA;AAAA,IAAKH;AAAAA,IAAQC;AAAAA,IAAqB,GAAKa;AAAAA,IAAME,UAAA,CAC3CC,2BAAAA,IAACC,qBAAU;AAAA,MACTlB,IAAImB,MAAAA,MAAMnB,IAAI,UAAU;AAAA,MACxBE;AAAAA,MACAG;AAAAA,MACAC;AAAAA,MACAK;AAAAA,MACAH;AAAAA,MACAI;AAAAA,MACAF;AAAAA,MACAH;AAAAA,IAAAA,CACD,GACDU,2BAAAA,IAACG,qBAAU;AAAA,MACTpB,IAAImB,MAAAA,MAAMnB,IAAI,UAAU;AAAA,MACxBqB,MAAMjB;AAAAA,MACNS;AAAAA,MACAf,uBAAuBI,iCAAQJ;AAAAA,IAAAA,CAChC,CAAC;AAAA,EAAA,CACC;AAET;;"}
1
+ {"version":3,"file":"FileUploader.cjs","sources":["../../../../src/components/FileUploader/FileUploader.tsx"],"sourcesContent":["import { useLabels } from \"@core/hooks/useLabels\";\nimport { setId } from \"@core/utils/setId\";\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\nimport { HvDropZone, HvDropZoneLabels } from \"./DropZone\";\nimport { HvFileData, HvFileRemovedEvent, HvFilesAddedEvent } from \"./File\";\nimport { HvFileList } from \"./FileList\";\n\nexport interface HvFileUploaderLabels extends HvDropZoneLabels {\n /**\n * Value of aria-label to apply to remove file button in FileList\n * */\n removeFileButtonLabel?: string;\n}\n\nexport interface HvFileUploaderProps extends HvBaseProps {\n /**\n * An object containing all the labels.\n */\n labels?: HvFileUploaderLabels;\n /**\n * The files to upload.\n */\n fileList?: HvFileData[];\n /**\n * Whether the Dropzone should accept multiple files at once.\n */\n multiple?: boolean;\n /**\n * If the input is disabled or not\n */\n disabled?: boolean;\n /**\n * Max upload size\n * */\n maxFileSize?: number;\n /**\n * Files extensions accepted for upload.\n */\n acceptedFiles?: string[];\n /**\n * Callback fired when files are added.\n */\n onFilesAdded?: HvFilesAddedEvent;\n /**\n * Callback fired when file is removed from list.\n */\n onFileRemoved?: HvFileRemovedEvent;\n /**\n * Whether the DropZone should hide labels or not.\n */\n hideLabels?: boolean;\n /**\n * Attributes applied to the input element.\n */\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n}\n\n// TODO: This component needs to adopt the Form element shape and deprecate its way of composing labels\n\nconst DEFAULT_LABELS: HvFileUploaderLabels = {\n dropzone: \"Label\",\n sizeWarning: \"Max. file size:\",\n drag: \"Drop files here or\",\n selectFiles: \"click to upload\",\n dropFiles: \"Drop files here\",\n fileSizeError: \"The file exceeds the maximum upload size\",\n fileTypeError: \"File type not allowed for upload\",\n removeFileButtonLabel: \"Remove File\",\n};\n\n/**\n * Lets the user choose one or more files from their device storage. Once chosen,\n * the files can be uploaded to a server or manipulated on the client side.\n *\n * Accepted file types follow the format of the html input accept attribute. Please check https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file for more details.\n */\nexport const HvFileUploader = (props: HvFileUploaderProps) => {\n const {\n id,\n className,\n labels: labelsProp,\n fileList,\n multiple = true,\n disabled = false,\n hideLabels = false,\n maxFileSize = Infinity,\n inputProps = {},\n acceptedFiles = [],\n onFilesAdded,\n onFileRemoved,\n ...others\n } = useDefaultProps(\"HvFileUploader\", props);\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n return (\n <div id={id} className={className} {...others}>\n <HvDropZone\n id={setId(id, \"dropzone\")}\n labels={labels}\n multiple={multiple}\n disabled={disabled}\n acceptedFiles={acceptedFiles}\n maxFileSize={maxFileSize}\n onFilesAdded={onFilesAdded}\n inputProps={inputProps}\n hideLabels={hideLabels}\n />\n <HvFileList\n id={setId(id, \"filelist\")}\n list={fileList}\n onFileRemoved={onFileRemoved}\n removeFileButtonLabel={labels?.removeFileButtonLabel}\n />\n </div>\n );\n};\n"],"names":["DEFAULT_LABELS","dropzone","sizeWarning","drag","selectFiles","dropFiles","fileSizeError","fileTypeError","removeFileButtonLabel","HvFileUploader","props","id","className","labels","labelsProp","fileList","multiple","disabled","hideLabels","maxFileSize","Infinity","inputProps","acceptedFiles","onFilesAdded","onFileRemoved","others","useDefaultProps","useLabels","children","_jsx","HvDropZone","setId","HvFileList","list"],"mappings":";;;;;;;;AA6DA,MAAMA,iBAAuC;AAAA,EAC3CC,UAAU;AAAA,EACVC,aAAa;AAAA,EACbC,MAAM;AAAA,EACNC,aAAa;AAAA,EACbC,WAAW;AAAA,EACXC,eAAe;AAAA,EACfC,eAAe;AAAA,EACfC,uBAAuB;AACzB;AAQaC,MAAAA,iBAAiBA,CAACC,UAA+B;AACtD,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC,QAAQC;AAAAA,IACRC;AAAAA,IACAC,WAAW;AAAA,IACXC,WAAW;AAAA,IACXC,aAAa;AAAA,IACbC,cAAcC;AAAAA,IACdC,aAAa,CAAC;AAAA,IACdC,gBAAgB,CAAE;AAAA,IAClBC;AAAAA,IACAC;AAAAA,IACA,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,gBAAA,kBAAkBhB,KAAK;AACrCG,QAAAA,SAASc,UAAAA,UAAU3B,gBAAgBc,UAAU;AAEnD,yCACE,OAAA;AAAA,IAAKH;AAAAA,IAAQC;AAAAA,IAAqB,GAAKa;AAAAA,IAAMG,UAAA,CAC3CC,2BAAAA,IAACC,qBAAU;AAAA,MACTnB,IAAIoB,MAAAA,MAAMpB,IAAI,UAAU;AAAA,MACxBE;AAAAA,MACAG;AAAAA,MACAC;AAAAA,MACAK;AAAAA,MACAH;AAAAA,MACAI;AAAAA,MACAF;AAAAA,MACAH;AAAAA,IAAAA,CACD,GACDW,2BAAAA,IAACG,qBAAU;AAAA,MACTrB,IAAIoB,MAAAA,MAAMpB,IAAI,UAAU;AAAA,MACxBsB,MAAMlB;AAAAA,MACNS;AAAAA,MACAhB,uBAAuBK,iCAAQL;AAAAA,IAAAA,CAChC,CAAC;AAAA,EAAA,CACC;AAET;;"}
@@ -24,7 +24,6 @@ const HvFileUploaderPreview = ({
24
24
  icon: true,
25
25
  className: clsx.clsx(className, classes == null ? void 0 : classes.previewButton, previewClasses.default.previewButton),
26
26
  onClick,
27
- variant: "secondaryGhost",
28
27
  ...others,
29
28
  children: [children, !disableOverlay && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
30
29
  children: [/* @__PURE__ */ jsxRuntime.jsx(Preview_styles.StyledOverlay, {
@@ -1 +1 @@
1
- {"version":3,"file":"Preview.cjs","sources":["../../../../../src/components/FileUploader/Preview/Preview.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\n\nimport { useEffect } from \"react\";\n\nimport { HvButtonProps } from \"@core/components/Button\";\n\nimport fileUploaderPreviewClasses, {\n HvFileUploaderPreviewClasses,\n} from \"./previewClasses\";\nimport {\n StyledButton,\n StyledOverlay,\n StyledPreviewIcon,\n} from \"./Preview.styles\";\n\nexport interface HvFileUploaderPreviewProps\n extends Omit<HvButtonProps, \"children\" | \"classes\"> {\n /**\n * Content that represents the preview of an uploaded file.\n */\n children: React.ReactElement;\n /**\n * Callback executed when the preview is unmounted.\n *\n * Should be used for cleaning up client-side image URLs created by `URL.createObjectURL()`.\n */\n onUnload?: () => void;\n /**\n * If `true`, doesn't show an overlay on top of the preview when hovering.\n *\n * Only applies when `onClick` is set.\n */\n disableOverlay?: boolean;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvFileUploaderPreviewClasses;\n}\n\n/**\n * The `HvFileUploaderPreview` component is available to facilitate the styling\n * of the button (when clickable) and the detection of image unloading.\n */\nexport const HvFileUploaderPreview = ({\n className,\n children,\n classes,\n disableOverlay = false,\n onUnload,\n onClick,\n ...others\n}: HvFileUploaderPreviewProps) => {\n useEffect(() => {\n return () => {\n onUnload?.();\n };\n }, [onUnload]);\n\n if (onClick) {\n return (\n <StyledButton\n icon\n className={clsx(\n className,\n classes?.previewButton,\n fileUploaderPreviewClasses.previewButton\n )}\n onClick={onClick}\n variant=\"secondaryGhost\"\n {...others}\n >\n {children}\n {!disableOverlay && (\n <>\n <StyledOverlay\n className={clsx(\n classes?.overlay,\n fileUploaderPreviewClasses.overlay\n )}\n aria-hidden=\"true\"\n />\n <StyledPreviewIcon />\n </>\n )}\n </StyledButton>\n );\n }\n\n return children;\n};\n"],"names":["HvFileUploaderPreview","className","children","classes","disableOverlay","onUnload","onClick","others","useEffect","StyledButton","icon","clsx","previewButton","fileUploaderPreviewClasses","variant","_Fragment","_jsx","StyledOverlay","overlay","StyledPreviewIcon"],"mappings":";;;;;;;AA2CO,MAAMA,wBAAwBA,CAAC;AAAA,EACpCC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,iBAAiB;AAAA,EACjBC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACuB,MAAM;AAChCC,QAAAA,UAAU,MAAM;AACd,WAAO,MAAM;AACA;AAAA,IAAA;AAAA,EACb,GACC,CAACH,QAAQ,CAAC;AAEb,MAAIC,SAAS;AACX,2CACGG,eAAAA,cAAY;AAAA,MACXC,MAAI;AAAA,MACJT,WAAWU,KACTV,KAAAA,WACAE,mCAASS,eACTC,uBAA2BD,aAC7B;AAAA,MACAN;AAAAA,MACAQ,SAAQ;AAAA,MAAgB,GACpBP;AAAAA,MAAML,UAAA,CAETA,UACA,CAACE,kDACAW,WAAAA,UAAA;AAAA,QAAAb,UAAA,CACEc,2BAAAA,IAACC,8BAAa;AAAA,UACZhB,WAAWU,KAAAA,KACTR,mCAASe,SACTL,eAAAA,QAA2BK,OAC7B;AAAA,UACA,eAAY;AAAA,QACb,CAAA,GACDF,2BAAAA,IAACG,oCAAmB,CAAC;AAAA,MAAA,CACrB,CACH;AAAA,IAAA,CACW;AAAA,EAElB;AAEOjB,SAAAA;AACT;;"}
1
+ {"version":3,"file":"Preview.cjs","sources":["../../../../../src/components/FileUploader/Preview/Preview.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\n\nimport { useEffect } from \"react\";\n\nimport { HvButtonProps } from \"@core/components/Button\";\n\nimport fileUploaderPreviewClasses, {\n HvFileUploaderPreviewClasses,\n} from \"./previewClasses\";\nimport {\n StyledButton,\n StyledOverlay,\n StyledPreviewIcon,\n} from \"./Preview.styles\";\n\nexport interface HvFileUploaderPreviewProps\n extends Omit<HvButtonProps, \"children\" | \"classes\"> {\n /**\n * Content that represents the preview of an uploaded file.\n */\n children: React.ReactElement;\n /**\n * Callback executed when the preview is unmounted.\n *\n * Should be used for cleaning up client-side image URLs created by `URL.createObjectURL()`.\n */\n onUnload?: () => void;\n /**\n * If `true`, doesn't show an overlay on top of the preview when hovering.\n *\n * Only applies when `onClick` is set.\n */\n disableOverlay?: boolean;\n /**\n * A Jss Object used to override or extend the styles applied to the component.\n */\n classes?: HvFileUploaderPreviewClasses;\n}\n\n/**\n * The `HvFileUploaderPreview` component is available to facilitate the styling\n * of the button (when clickable) and the detection of image unloading.\n */\nexport const HvFileUploaderPreview = ({\n className,\n children,\n classes,\n disableOverlay = false,\n onUnload,\n onClick,\n ...others\n}: HvFileUploaderPreviewProps) => {\n useEffect(() => {\n return () => {\n onUnload?.();\n };\n }, [onUnload]);\n\n if (onClick) {\n return (\n <StyledButton\n icon\n className={clsx(\n className,\n classes?.previewButton,\n fileUploaderPreviewClasses.previewButton\n )}\n onClick={onClick}\n {...others}\n >\n {children}\n {!disableOverlay && (\n <>\n <StyledOverlay\n className={clsx(\n classes?.overlay,\n fileUploaderPreviewClasses.overlay\n )}\n aria-hidden=\"true\"\n />\n <StyledPreviewIcon />\n </>\n )}\n </StyledButton>\n );\n }\n\n return children;\n};\n"],"names":["HvFileUploaderPreview","className","children","classes","disableOverlay","onUnload","onClick","others","useEffect","StyledButton","icon","clsx","previewButton","fileUploaderPreviewClasses","_Fragment","_jsx","StyledOverlay","overlay","StyledPreviewIcon"],"mappings":";;;;;;;AA2CO,MAAMA,wBAAwBA,CAAC;AAAA,EACpCC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,iBAAiB;AAAA,EACjBC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACuB,MAAM;AAChCC,QAAAA,UAAU,MAAM;AACd,WAAO,MAAM;AACA;AAAA,IAAA;AAAA,EACb,GACC,CAACH,QAAQ,CAAC;AAEb,MAAIC,SAAS;AACX,2CACGG,eAAAA,cAAY;AAAA,MACXC,MAAI;AAAA,MACJT,WAAWU,KACTV,KAAAA,WACAE,mCAASS,eACTC,uBAA2BD,aAC7B;AAAA,MACAN;AAAAA,MAAiB,GACbC;AAAAA,MAAML,UAAA,CAETA,UACA,CAACE,kDACAU,WAAAA,UAAA;AAAA,QAAAZ,UAAA,CACEa,2BAAAA,IAACC,8BAAa;AAAA,UACZf,WAAWU,KAAAA,KACTR,mCAASc,SACTJ,eAAAA,QAA2BI,OAC7B;AAAA,UACA,eAAY;AAAA,QACb,CAAA,GACDF,2BAAAA,IAACG,oCAAmB,CAAC;AAAA,MAAA,CACrB,CACH;AAAA,IAAA,CACW;AAAA,EAElB;AAEOhB,SAAAA;AACT;;"}
@@ -4,6 +4,7 @@ const useLabels = require("../../hooks/useLabels.cjs");
4
4
  const useUniqueId = require("../../hooks/useUniqueId.cjs");
5
5
  const useControlled = require("../../hooks/useControlled.cjs");
6
6
  const setId = require("../../utils/setId.cjs");
7
+ const useDefaultProps = require("../../hooks/useDefaultProps.cjs");
7
8
  const FilterGroup_styles = require("./FilterGroup.styles.cjs");
8
9
  const FilterGroupContext = require("./FilterGroupContext.cjs");
9
10
  const jsxRuntime = require("@emotion/react/jsx-runtime");
@@ -21,34 +22,35 @@ const DEFAULT_LABELS = {
21
22
  selectAll: "All",
22
23
  multiSelectionConjunction: "/"
23
24
  };
24
- const HvFilterGroup = ({
25
- className,
26
- id,
27
- name,
28
- required = false,
29
- disabled = false,
30
- label,
31
- "aria-label": ariaLabel,
32
- "aria-labelledby": ariaLabelledBy,
33
- description,
34
- "aria-describedby": ariaDescribedBy,
35
- onChange,
36
- onCancel,
37
- onClear,
38
- status,
39
- statusMessage,
40
- labels: labelsProp,
41
- defaultValue,
42
- value,
43
- filters,
44
- horizontalPlacement = "right",
45
- disablePortal = true,
46
- escapeWithReference = true,
47
- height = 350,
48
- filterContentProps,
49
- classes: classesProp,
50
- ...others
51
- }) => {
25
+ const HvFilterGroup = (props) => {
26
+ const {
27
+ className,
28
+ id,
29
+ name,
30
+ required = false,
31
+ disabled = false,
32
+ label,
33
+ "aria-label": ariaLabel,
34
+ "aria-labelledby": ariaLabelledBy,
35
+ description,
36
+ "aria-describedby": ariaDescribedBy,
37
+ onChange,
38
+ onCancel,
39
+ onClear,
40
+ status,
41
+ statusMessage,
42
+ labels: labelsProp,
43
+ defaultValue,
44
+ value,
45
+ filters,
46
+ horizontalPlacement = "right",
47
+ disablePortal = true,
48
+ escapeWithReference = true,
49
+ height = 350,
50
+ filterContentProps,
51
+ classes: classesProp,
52
+ ...others
53
+ } = useDefaultProps.useDefaultProps("HvFilterGroup", props);
52
54
  const {
53
55
  classes,
54
56
  cx
@@ -1 +1 @@
1
- {"version":3,"file":"FilterGroup.cjs","sources":["../../../../src/components/FilterGroup/FilterGroup.tsx"],"sourcesContent":["import {\n HvFormElement,\n HvFormElementProps,\n HvFormStatus,\n HvInfoMessage,\n HvLabel,\n HvWarningText,\n} from \"@core/components/Forms\";\nimport { useLabels } from \"@core/hooks/useLabels\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useControlled } from \"@core/hooks/useControlled\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { setId } from \"@core/utils/setId\";\n\nimport {\n HvFilterGroupContent,\n HvFilterGroupContentProps,\n} from \"./FilterContent\";\nimport { staticClasses, useClasses } from \"./FilterGroup.styles\";\nimport { HvFilterGroupProvider } from \"./FilterGroupContext\";\nimport {\n HvFilterGroupFilters,\n HvFilterGroupHorizontalPlacement,\n HvFilterGroupLabels,\n HvFilterGroupValue,\n} from \"./types\";\n\nexport { staticClasses as filterGroupClasses };\n\nexport type HvFilterGroupClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvFilterGroupProps\n extends Omit<\n HvFormElementProps,\n \"classes\" | \"onChange\" | \"defaultValue\" | \"statusMessage\"\n > {\n /** The initial value of the input when in single calendar mode. */\n filters: HvFilterGroupFilters;\n /** The form element name. */\n name?: string;\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?: React.ReactNode;\n /** Provide additional descriptive text for the form element. */\n description?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** Indicates that user input is required on the form element. */\n required?: boolean;\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?: HvFormStatus;\n /** The error message to show when `status` is \"invalid\". Defaults to \"Required\". */\n statusMessage?: React.ReactNode;\n /** The callback fired when the cancel button is clicked. */\n onCancel?: (event: React.MouseEvent<HTMLButtonElement> | Event) => void;\n /** The callback fired when the clear filters button is clicked. */\n onClear?: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /** The callback fired when the value changes. */\n onChange?: (\n event: React.MouseEvent<HTMLButtonElement>,\n value?: HvFilterGroupValue\n ) => void;\n /** An Object containing the various text associated with the input. */\n labels?: HvFilterGroupLabels;\n /** The placeholder value when nothing is selected. */\n placeholder?: string;\n /** The default value of the filter group. If defined the clear action will reset to it. */\n defaultValue?: HvFilterGroupValue;\n /** The value of the filter group. */\n value?: HvFilterGroupValue;\n /** The placement where the filter group should be placed according to the input. Options are `left` or `right`. */\n horizontalPlacement?: HvFilterGroupHorizontalPlacement;\n /** Disable the portal behavior. The children stay within it's parent DOM hierarchy. */\n disablePortal?: boolean;\n /** Sets if the filter container should be out of the screen or stay visible. */\n escapeWithReference?: boolean;\n /** The height of the filter panel, between 295 and 425. Defaults to 350 */\n height?: number | string;\n /** The filter content props */\n filterContentProps?: Partial<HvFilterGroupContentProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFilterGroupClasses;\n}\n\nconst DEFAULT_LABELS: HvFilterGroupLabels = {\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 */\nexport const HvFilterGroup = ({\n className,\n id,\n name,\n required = false,\n disabled = false,\n label,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n onChange,\n onCancel,\n onClear,\n status,\n statusMessage,\n labels: labelsProp,\n defaultValue,\n value,\n filters,\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n height = 350,\n filterContentProps,\n classes: classesProp,\n ...others\n}: HvFilterGroupProps) => {\n const { classes, cx } = useClasses(classesProp);\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\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={cx(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\n id={setId(elementId, \"description\")}\n className={classes.description}\n >\n {description}\n </HvInfoMessage>\n )}\n </div>\n )}\n <HvFilterGroupProvider\n defaultValue={defaultValue}\n value={value}\n filters={filters}\n >\n <HvFilterGroupContent\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\n id={setId(elementId, \"error\")}\n disableBorder\n className={classes.error}\n >\n {validationMessage}\n </HvWarningText>\n )}\n </HvFilterGroupProvider>\n </HvFormElement>\n );\n};\n"],"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","labels","labelsProp","defaultValue","value","filters","horizontalPlacement","disablePortal","escapeWithReference","height","filterContentProps","classes","classesProp","others","cx","useClasses","validationMessage","useControlled","elementId","useUniqueId","useLabels","hasLabel","hasDescription","canShowError","undefined","HvFormElement","root","children","labelContainer","_jsx","HvLabel","setId","htmlFor","HvInfoMessage","_jsxs","HvFilterGroupProvider","HvFilterGroupContent","variableWidth","placement","HvWarningText","disableBorder","error"],"mappings":";;;;;;;;;;;;;;AA+FA,MAAMA,iBAAsC;AAAA,EAC1CC,YAAY;AAAA,EACZC,aAAa;AAAA,EACbC,YAAY;AAAA,EACZC,aAAa;AAAA,EACbC,sBAAsB;AAAA,EACtBC,WAAW;AAAA,EACXC,2BAA2B;AAC7B;AAOO,MAAMC,gBAAgBA,CAAC;AAAA,EAC5BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,WAAW;AAAA,EACXC,WAAW;AAAA,EACXC;AAAAA,EACA,cAAcC;AAAAA,EACd,mBAAmBC;AAAAA,EACnBC;AAAAA,EACA,oBAAoBC;AAAAA,EACpBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,QAAQC;AAAAA,EACRC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,sBAAsB;AAAA,EACtBC,gBAAgB;AAAA,EAChBC,sBAAsB;AAAA,EACtBC,SAAS;AAAA,EACTC;AAAAA,EACAC,SAASC;AAAAA,EACT,GAAGC;AACe,MAAM;AAClB,QAAA;AAAA,IAAEF;AAAAA,IAASG;AAAAA,EAAAA,IAAOC,mBAAAA,WAAWH,WAAW;AAC9C,QAAM,CAACI,iBAAiB,IAAIC,cAAAA,cAAcjB,eAAe,UAAU;AAE7DkB,QAAAA,YAAYC,YAAAA,YAAYhC,IAAI,eAAe;AAE3Cc,QAAAA,SAASmB,UAAAA,UAAU3C,gBAAgByB,UAAU;AAEnD,QAAMmB,WAAW9B,SAAS;AAE1B,QAAM+B,iBAAiB5B,eAAe;AAIhC6B,QAAAA,eAAexB,WAAWyB,UAAanC;AAE7C,yCACGoC,YAAAA,eAAa;AAAA,IACZtC;AAAAA,IACAC;AAAAA,IACAgB;AAAAA,IACAL;AAAAA,IACAT;AAAAA,IACAD;AAAAA,IACAH,WAAW4B,GAAG5B,WAAWyB,QAAQe,IAAI;AAAA,IAAE,GACnCb;AAAAA,IAAMc,YAERN,YAAYC,mDACZ,OAAA;AAAA,MAAKpC,WAAWyB,QAAQiB;AAAAA,MAAeD,UACpCN,CAAAA,YACCQ,2BAAAA,IAACC,eAAO;AAAA,QACN3C,IAAI4C,MAAAA,MAAMb,WAAW,OAAO;AAAA,QAC5Bc,SAASD,MAAAA,MAAMb,WAAW,OAAO;AAAA,QACjC3B;AAAAA,QACAL,WAAWyB,QAAQpB;AAAAA,MAAAA,CACpB,GAGF+B,kBACCO,2BAAAA,IAACI,2BAAa;AAAA,QACZ9C,IAAI4C,MAAAA,MAAMb,WAAW,aAAa;AAAA,QAClChC,WAAWyB,QAAQjB;AAAAA,QAAYiC,UAE9BjC;AAAAA,MAAAA,CACY,CAChB;AAAA,IAAA,CACE,GAEPwC,2BAAAA,KAACC,0CAAqB;AAAA,MACpBhC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,MAAiBsB,UAAA,CAEjBE,2BAAAA,IAACO,oCAAoB;AAAA,QACnBjD,IAAI+B;AAAAA,QACJ5B;AAAAA,QACAiB;AAAAA,QACA8B,eAAa;AAAA,QACbC,WAAWhC;AAAAA,QACXE;AAAAA,QACA,cAAYhB;AAAAA,QACZ,mBAAiBC;AAAAA,QACjBM;AAAAA,QACAH;AAAAA,QACAC;AAAAA,QACAC;AAAAA,QACAG;AAAAA,QACAQ;AAAAA,QAAe,GACXC;AAAAA,MAAAA,CACL,GACAa,gBACCM,2BAAAA,IAACU,2BAAa;AAAA,QACZpD,IAAI4C,MAAAA,MAAMb,WAAW,OAAO;AAAA,QAC5BsB,eAAa;AAAA,QACbtD,WAAWyB,QAAQ8B;AAAAA,QAAMd,UAExBX;AAAAA,MAAAA,CACY,CAChB;AAAA,IAAA,CACoB,CAAC;AAAA,EAAA,CACX;AAEnB;;;"}
1
+ {"version":3,"file":"FilterGroup.cjs","sources":["../../../../src/components/FilterGroup/FilterGroup.tsx"],"sourcesContent":["import {\n HvFormElement,\n HvFormElementProps,\n HvFormStatus,\n HvInfoMessage,\n HvLabel,\n HvWarningText,\n} from \"@core/components/Forms\";\nimport { useLabels } from \"@core/hooks/useLabels\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\nimport { useControlled } from \"@core/hooks/useControlled\";\nimport { ExtractNames } from \"@core/utils/classes\";\nimport { setId } from \"@core/utils/setId\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport {\n HvFilterGroupContent,\n HvFilterGroupContentProps,\n} from \"./FilterContent\";\nimport { staticClasses, useClasses } from \"./FilterGroup.styles\";\nimport { HvFilterGroupProvider } from \"./FilterGroupContext\";\nimport {\n HvFilterGroupFilters,\n HvFilterGroupHorizontalPlacement,\n HvFilterGroupLabels,\n HvFilterGroupValue,\n} from \"./types\";\n\nexport { staticClasses as filterGroupClasses };\n\nexport type HvFilterGroupClasses = ExtractNames<typeof useClasses>;\n\nexport interface HvFilterGroupProps\n extends Omit<\n HvFormElementProps,\n \"classes\" | \"onChange\" | \"defaultValue\" | \"statusMessage\"\n > {\n /** The initial value of the input when in single calendar mode. */\n filters: HvFilterGroupFilters;\n /** The form element name. */\n name?: string;\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?: React.ReactNode;\n /** Provide additional descriptive text for the form element. */\n description?: React.ReactNode;\n /** Indicates that the form element is disabled. */\n disabled?: boolean;\n /** Indicates that user input is required on the form element. */\n required?: boolean;\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?: HvFormStatus;\n /** The error message to show when `status` is \"invalid\". Defaults to \"Required\". */\n statusMessage?: React.ReactNode;\n /** The callback fired when the cancel button is clicked. */\n onCancel?: (event: React.MouseEvent<HTMLButtonElement> | Event) => void;\n /** The callback fired when the clear filters button is clicked. */\n onClear?: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /** The callback fired when the value changes. */\n onChange?: (\n event: React.MouseEvent<HTMLButtonElement>,\n value?: HvFilterGroupValue\n ) => void;\n /** An Object containing the various text associated with the input. */\n labels?: HvFilterGroupLabels;\n /** The placeholder value when nothing is selected. */\n placeholder?: string;\n /** The default value of the filter group. If defined the clear action will reset to it. */\n defaultValue?: HvFilterGroupValue;\n /** The value of the filter group. */\n value?: HvFilterGroupValue;\n /** The placement where the filter group should be placed according to the input. Options are `left` or `right`. */\n horizontalPlacement?: HvFilterGroupHorizontalPlacement;\n /** Disable the portal behavior. The children stay within it's parent DOM hierarchy. */\n disablePortal?: boolean;\n /** Sets if the filter container should be out of the screen or stay visible. */\n escapeWithReference?: boolean;\n /** The height of the filter panel, between 295 and 425. Defaults to 350 */\n height?: number | string;\n /** The filter content props */\n filterContentProps?: Partial<HvFilterGroupContentProps>;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFilterGroupClasses;\n}\n\nconst DEFAULT_LABELS: HvFilterGroupLabels = {\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 */\nexport const HvFilterGroup = (props: HvFilterGroupProps) => {\n const {\n className,\n id,\n name,\n required = false,\n disabled = false,\n label,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n description,\n \"aria-describedby\": ariaDescribedBy,\n onChange,\n onCancel,\n onClear,\n status,\n statusMessage,\n labels: labelsProp,\n defaultValue,\n value,\n filters,\n horizontalPlacement = \"right\",\n disablePortal = true,\n escapeWithReference = true,\n height = 350,\n filterContentProps,\n classes: classesProp,\n ...others\n } = useDefaultProps(\"HvFilterGroup\", props);\n\n const { classes, cx } = useClasses(classesProp);\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\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={cx(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\n id={setId(elementId, \"description\")}\n className={classes.description}\n >\n {description}\n </HvInfoMessage>\n )}\n </div>\n )}\n <HvFilterGroupProvider\n defaultValue={defaultValue}\n value={value}\n filters={filters}\n >\n <HvFilterGroupContent\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\n id={setId(elementId, \"error\")}\n disableBorder\n className={classes.error}\n >\n {validationMessage}\n </HvWarningText>\n )}\n </HvFilterGroupProvider>\n </HvFormElement>\n );\n};\n"],"names":["DEFAULT_LABELS","applyLabel","cancelLabel","clearLabel","placeholder","searchBoxPlaceholder","selectAll","multiSelectionConjunction","HvFilterGroup","props","className","id","name","required","disabled","label","ariaLabel","ariaLabelledBy","description","ariaDescribedBy","onChange","onCancel","onClear","status","statusMessage","labels","labelsProp","defaultValue","value","filters","horizontalPlacement","disablePortal","escapeWithReference","height","filterContentProps","classes","classesProp","others","useDefaultProps","cx","useClasses","validationMessage","useControlled","elementId","useUniqueId","useLabels","hasLabel","hasDescription","canShowError","undefined","HvFormElement","root","children","labelContainer","_jsx","HvLabel","setId","htmlFor","HvInfoMessage","_jsxs","HvFilterGroupProvider","HvFilterGroupContent","variableWidth","placement","HvWarningText","disableBorder","error"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const React = require("react");
4
+ const useDefaultProps = require("../../hooks/useDefaultProps.cjs");
4
5
  const isEqual = require("lodash/isEqual");
5
6
  const useSavedState = require("../../utils/useSavedState.cjs");
6
7
  const jsxRuntime = require("@emotion/react/jsx-runtime");
@@ -25,12 +26,13 @@ const HvFilterGroupContext = React.createContext({
25
26
  defaultValue: void 0
26
27
  });
27
28
  const groups = (filters) => filters.map(() => []);
28
- const HvFilterGroupProvider = ({
29
- defaultValue,
30
- value,
31
- filters,
32
- children
33
- }) => {
29
+ const HvFilterGroupProvider = (props) => {
30
+ const {
31
+ defaultValue,
32
+ value,
33
+ filters,
34
+ children
35
+ } = useDefaultProps.useDefaultProps("HvFilterGroupProvider", props);
34
36
  const [group, setActiveGroup] = React.useState(0);
35
37
  const [filterValues, setFilterValues, rollbackFilters, appliedFilters] = useSavedState.useSavedState(value || groups(filters));
36
38
  const [applyDisabled, setApplyDisabled] = React.useState(false);
@@ -1 +1 @@
1
- {"version":3,"file":"FilterGroupContext.cjs","sources":["../../../../src/components/FilterGroup/FilterGroupContext.tsx"],"sourcesContent":["import {\n Dispatch,\n SetStateAction,\n createContext,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\nimport isEqual from \"lodash/isEqual\";\n\nimport { useSavedState } from \"@core/utils/useSavedState\";\n\nimport { HvFilterGroupFilters, HvFilterGroupValue } from \"./types\";\n\ninterface HvFilterGroupContextValue {\n activeGroup: number;\n setActiveGroup: Dispatch<SetStateAction<number>>;\n filterOptions: HvFilterGroupFilters;\n setFilterValues: (value?: HvFilterGroupValue, save?: boolean) => void;\n rollbackFilters: () => void;\n clearFilters: () => void;\n applyFilters: () => void;\n applyDisabled: boolean;\n appliedFilters?: HvFilterGroupValue;\n defaultValue?: HvFilterGroupValue;\n filterValues?: HvFilterGroupValue;\n}\n\nexport const HvFilterGroupContext = createContext<HvFilterGroupContextValue>({\n activeGroup: 0,\n setActiveGroup: () => {},\n filterOptions: [],\n setFilterValues: () => {},\n rollbackFilters: () => {},\n clearFilters: () => {},\n applyFilters: () => {},\n applyDisabled: false,\n filterValues: [],\n appliedFilters: undefined,\n defaultValue: undefined,\n});\n\nconst groups = (filters: HvFilterGroupFilters) => filters.map(() => []);\n\ninterface HvFilterGroupProviderProps {\n children: React.ReactNode;\n filters: HvFilterGroupFilters;\n defaultValue?: HvFilterGroupValue;\n value?: HvFilterGroupValue;\n}\n\nexport const HvFilterGroupProvider = ({\n defaultValue,\n value,\n filters,\n children,\n}: HvFilterGroupProviderProps) => {\n const [group, setActiveGroup] = useState<number>(0);\n const [filterValues, setFilterValues, rollbackFilters, appliedFilters] =\n useSavedState<HvFilterGroupValue>(value || groups(filters));\n const [applyDisabled, setApplyDisabled] = useState<boolean>(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: HvFilterGroupContextValue = 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 (\n <HvFilterGroupContext.Provider value={contextValue}>\n {children}\n </HvFilterGroupContext.Provider>\n );\n};\n"],"names":["HvFilterGroupContext","createContext","activeGroup","setActiveGroup","filterOptions","setFilterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","filterValues","appliedFilters","undefined","defaultValue","groups","filters","map","HvFilterGroupProvider","value","children","group","useState","useSavedState","setApplyDisabled","useEffect","isEqual","useCallback","contextValue","useMemo","_jsx","Provider"],"mappings":";;;;;;;;AA8BO,MAAMA,uBAAuBC,MAAAA,cAAyC;AAAA,EAC3EC,aAAa;AAAA,EACbC,gBAAgBA,MAAM;AAAA,EAAC;AAAA,EACvBC,eAAe,CAAE;AAAA,EACjBC,iBAAiBA,MAAM;AAAA,EAAC;AAAA,EACxBC,iBAAiBA,MAAM;AAAA,EAAC;AAAA,EACxBC,cAAcA,MAAM;AAAA,EAAC;AAAA,EACrBC,cAAcA,MAAM;AAAA,EAAC;AAAA,EACrBC,eAAe;AAAA,EACfC,cAAc,CAAE;AAAA,EAChBC,gBAAgBC;AAAAA,EAChBC,cAAcD;AAChB,CAAC;AAED,MAAME,SAASA,CAACC,YAAkCA,QAAQC,IAAI,MAAM,CAAE,CAAA;AAS/D,MAAMC,wBAAwBA,CAAC;AAAA,EACpCJ;AAAAA,EACAK;AAAAA,EACAH;AAAAA,EACAI;AAC0B,MAAM;AAChC,QAAM,CAACC,OAAOjB,cAAc,IAAIkB,eAAiB,CAAC;AAC5C,QAAA,CAACX,cAAcL,iBAAiBC,iBAAiBK,cAAc,IACnEW,cAAkCJ,cAAAA,SAASJ,OAAOC,OAAO,CAAC;AAC5D,QAAM,CAACN,eAAec,gBAAgB,IAAIF,eAAkB,KAAK;AAEjEG,QAAAA,UAAU,MAAM;AACdnB,oBAAgBa,OAAO,IAAI;AAAA,EAAA,GAC1B,CAACA,OAAOb,eAAe,CAAC;AAE3BmB,QAAAA,UAAU,MAAM;AACGC,qBAAAA,iBAAAA,QAAQf,cAAcC,cAAc,CAAC;AAAA,EAAA,GACrD,CAACD,cAAcC,cAAc,CAAC;AAE3BJ,QAAAA,eAAemB,MAAAA,YAAY,MAAM;AACrBb,oBAAAA,gBAAgBC,OAAOC,OAAO,CAAC;AAAA,EAC9C,GAAA,CAACA,SAASV,iBAAiBQ,YAAY,CAAC;AAErCL,QAAAA,eAAekB,MAAAA,YAAY,MAAM;AACrCrB,oBAAgBK,cAAc,IAAI;AAAA,EAAA,GACjC,CAACA,cAAcL,eAAe,CAAC;AAE5BsB,QAAAA,eAA0CC,MAAAA,QAC9C,OAAO;AAAA,IACL1B,aAAakB;AAAAA,IACbjB;AAAAA,IACAC,eAAeW;AAAAA,IACfL;AAAAA,IACAL;AAAAA,IACAM;AAAAA,IACAL;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAI;AAAAA,EAEF,IAAA,CACEF,gBACAF,eACAD,cACAD,cACAG,cACAK,SACAK,OACAd,iBACAD,iBACAQ,YAAY,CAEhB;AAGEgB,SAAAA,2BAAAA,IAAC7B,qBAAqB8B,UAAQ;AAAA,IAACZ,OAAOS;AAAAA,IAAaR;AAAAA,EAAAA,CAEpB;AAEnC;;;"}
1
+ {"version":3,"file":"FilterGroupContext.cjs","sources":["../../../../src/components/FilterGroup/FilterGroupContext.tsx"],"sourcesContent":["import {\n Dispatch,\n SetStateAction,\n createContext,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport isEqual from \"lodash/isEqual\";\n\nimport { useSavedState } from \"@core/utils/useSavedState\";\n\nimport { HvFilterGroupFilters, HvFilterGroupValue } from \"./types\";\n\ninterface HvFilterGroupContextValue {\n activeGroup: number;\n setActiveGroup: Dispatch<SetStateAction<number>>;\n filterOptions: HvFilterGroupFilters;\n setFilterValues: (value?: HvFilterGroupValue, save?: boolean) => void;\n rollbackFilters: () => void;\n clearFilters: () => void;\n applyFilters: () => void;\n applyDisabled: boolean;\n appliedFilters?: HvFilterGroupValue;\n defaultValue?: HvFilterGroupValue;\n filterValues?: HvFilterGroupValue;\n}\n\nexport const HvFilterGroupContext = createContext<HvFilterGroupContextValue>({\n activeGroup: 0,\n setActiveGroup: () => {},\n filterOptions: [],\n setFilterValues: () => {},\n rollbackFilters: () => {},\n clearFilters: () => {},\n applyFilters: () => {},\n applyDisabled: false,\n filterValues: [],\n appliedFilters: undefined,\n defaultValue: undefined,\n});\n\nconst groups = (filters: HvFilterGroupFilters) => filters.map(() => []);\n\ninterface HvFilterGroupProviderProps {\n children: React.ReactNode;\n filters: HvFilterGroupFilters;\n defaultValue?: HvFilterGroupValue;\n value?: HvFilterGroupValue;\n}\n\nexport const HvFilterGroupProvider = (props: HvFilterGroupProviderProps) => {\n const { defaultValue, value, filters, children } = useDefaultProps(\n \"HvFilterGroupProvider\",\n props\n );\n\n const [group, setActiveGroup] = useState<number>(0);\n const [filterValues, setFilterValues, rollbackFilters, appliedFilters] =\n useSavedState<HvFilterGroupValue>(value || groups(filters));\n const [applyDisabled, setApplyDisabled] = useState<boolean>(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: HvFilterGroupContextValue = 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 (\n <HvFilterGroupContext.Provider value={contextValue}>\n {children}\n </HvFilterGroupContext.Provider>\n );\n};\n"],"names":["HvFilterGroupContext","createContext","activeGroup","setActiveGroup","filterOptions","setFilterValues","rollbackFilters","clearFilters","applyFilters","applyDisabled","filterValues","appliedFilters","undefined","defaultValue","groups","filters","map","HvFilterGroupProvider","props","value","children","useDefaultProps","group","useState","useSavedState","setApplyDisabled","useEffect","isEqual","useCallback","contextValue","useMemo","_jsx","Provider"],"mappings":";;;;;;;;;AA+BO,MAAMA,uBAAuBC,MAAAA,cAAyC;AAAA,EAC3EC,aAAa;AAAA,EACbC,gBAAgBA,MAAM;AAAA,EAAC;AAAA,EACvBC,eAAe,CAAE;AAAA,EACjBC,iBAAiBA,MAAM;AAAA,EAAC;AAAA,EACxBC,iBAAiBA,MAAM;AAAA,EAAC;AAAA,EACxBC,cAAcA,MAAM;AAAA,EAAC;AAAA,EACrBC,cAAcA,MAAM;AAAA,EAAC;AAAA,EACrBC,eAAe;AAAA,EACfC,cAAc,CAAE;AAAA,EAChBC,gBAAgBC;AAAAA,EAChBC,cAAcD;AAChB,CAAC;AAED,MAAME,SAASA,CAACC,YAAkCA,QAAQC,IAAI,MAAM,CAAE,CAAA;AASzDC,MAAAA,wBAAwBA,CAACC,UAAsC;AACpE,QAAA;AAAA,IAAEL;AAAAA,IAAcM;AAAAA,IAAOJ;AAAAA,IAASK;AAAAA,EAAAA,IAAaC,gBACjD,gBAAA,yBACAH,KACF;AAEA,QAAM,CAACI,OAAOnB,cAAc,IAAIoB,eAAiB,CAAC;AAC5C,QAAA,CAACb,cAAcL,iBAAiBC,iBAAiBK,cAAc,IACnEa,cAAkCL,cAAAA,SAASL,OAAOC,OAAO,CAAC;AAC5D,QAAM,CAACN,eAAegB,gBAAgB,IAAIF,eAAkB,KAAK;AAEjEG,QAAAA,UAAU,MAAM;AACdrB,oBAAgBc,OAAO,IAAI;AAAA,EAAA,GAC1B,CAACA,OAAOd,eAAe,CAAC;AAE3BqB,QAAAA,UAAU,MAAM;AACGC,qBAAAA,iBAAAA,QAAQjB,cAAcC,cAAc,CAAC;AAAA,EAAA,GACrD,CAACD,cAAcC,cAAc,CAAC;AAE3BJ,QAAAA,eAAeqB,MAAAA,YAAY,MAAM;AACrBf,oBAAAA,gBAAgBC,OAAOC,OAAO,CAAC;AAAA,EAC9C,GAAA,CAACA,SAASV,iBAAiBQ,YAAY,CAAC;AAErCL,QAAAA,eAAeoB,MAAAA,YAAY,MAAM;AACrCvB,oBAAgBK,cAAc,IAAI;AAAA,EAAA,GACjC,CAACA,cAAcL,eAAe,CAAC;AAE5BwB,QAAAA,eAA0CC,MAAAA,QAC9C,OAAO;AAAA,IACL5B,aAAaoB;AAAAA,IACbnB;AAAAA,IACAC,eAAeW;AAAAA,IACfL;AAAAA,IACAL;AAAAA,IACAM;AAAAA,IACAL;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAI;AAAAA,EAEF,IAAA,CACEF,gBACAF,eACAD,cACAD,cACAG,cACAK,SACAO,OACAhB,iBACAD,iBACAQ,YAAY,CAEhB;AAGEkB,SAAAA,2BAAAA,IAAC/B,qBAAqBgC,UAAQ;AAAA,IAACb,OAAOU;AAAAA,IAAaT;AAAAA,EAAAA,CAEpB;AAEnC;;;"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const styles = require("@mui/material/styles");
4
+ const useDefaultProps = require("../../hooks/useDefaultProps.cjs");
4
5
  const clsx = require("clsx");
5
6
  const footerClasses = require("./footerClasses.cjs");
6
7
  const Footer_styles = require("./Footer.styles.cjs");
@@ -13,7 +14,7 @@ const HvFooter = (props) => {
13
14
  classes,
14
15
  className,
15
16
  ...others
16
- } = props;
17
+ } = useDefaultProps.useDefaultProps("HvFooter", props);
17
18
  const muiTheme = styles.useTheme();
18
19
  return /* @__PURE__ */ jsxRuntime.jsxs(Footer_styles.StyledRoot, {
19
20
  $breakpoints: muiTheme.breakpoints,
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.cjs","sources":["../../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import { useTheme } from \"@mui/material/styles\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport footerClasses, { HvFooterClasses } from \"./footerClasses\";\nimport {\n StyledCopyright,\n StyledName,\n StyledRightContainer,\n StyledRoot,\n StyledSeparator,\n} from \"./Footer.styles\";\n\nexport interface HvFooterProps extends HvBaseProps {\n name?: React.ReactNode;\n copyright?: React.ReactNode;\n links?: React.ReactNode;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFooterClasses;\n}\n\n/**\n * A Footer is a way of providing extra information at the end of a page.\n */\nexport const HvFooter = (props: HvFooterProps) => {\n const {\n name = \"Hitachi Vantara\",\n copyright = `© Hitachi Vantara Corporation ${new Date().getFullYear()}. All Rights Reserved.`,\n links,\n classes,\n className,\n ...others\n } = props;\n const muiTheme = useTheme();\n\n return (\n <StyledRoot\n $breakpoints={muiTheme.breakpoints}\n className={clsx(className, footerClasses.root, classes?.root)}\n {...others}\n >\n <StyledName\n $breakpoints={muiTheme.breakpoints}\n variant=\"label\"\n className={clsx(footerClasses.name, classes?.name)}\n >\n {name}\n </StyledName>\n <StyledRightContainer\n className={clsx(footerClasses.rightContainer, classes?.rightContainer)}\n $breakpoints={muiTheme.breakpoints}\n >\n <StyledCopyright\n $breakpoints={muiTheme.breakpoints}\n className={clsx(footerClasses.copyright, classes?.copyright)}\n >\n {copyright}\n </StyledCopyright>\n {links && (\n <StyledSeparator\n $breakpoints={muiTheme.breakpoints}\n className={clsx(footerClasses.separator, classes?.separator)}\n />\n )}\n {links}\n </StyledRightContainer>\n </StyledRoot>\n );\n};\n"],"names":["HvFooter","props","name","copyright","Date","getFullYear","links","classes","className","others","muiTheme","useTheme","StyledRoot","$breakpoints","breakpoints","clsx","footerClasses","root","children","_jsx","StyledName","variant","_jsxs","StyledRightContainer","rightContainer","StyledCopyright","StyledSeparator","separator"],"mappings":";;;;;;;AA0BaA,MAAAA,WAAWA,CAACC,UAAyB;AAC1C,QAAA;AAAA,IACJC,OAAO;AAAA,IACPC,YAAa,kCAAoCC,oBAAAA,QAAOC,YAAY;AAAA,IACpEC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACA,GAAGC;AAAAA,EACDR,IAAAA;AACJ,QAAMS,WAAWC,OAAAA;AAEjB,yCACGC,cAAAA,YAAU;AAAA,IACTC,cAAcH,SAASI;AAAAA,IACvBN,WAAWO,KAAKP,KAAAA,WAAWQ,cAAcC,QAAAA,MAAMV,mCAASU,IAAI;AAAA,IAAE,GAC1DR;AAAAA,IAAMS,UAAA,CAEVC,2BAAAA,IAACC,0BAAU;AAAA,MACTP,cAAcH,SAASI;AAAAA,MACvBO,SAAQ;AAAA,MACRb,WAAWO,KAAAA,KAAKC,cAAAA,QAAcd,MAAMK,mCAASL,IAAI;AAAA,MAAEgB,UAElDhB;AAAAA,IAAAA,CACS,GACZoB,2BAAAA,KAACC,oCAAoB;AAAA,MACnBf,WAAWO,KAAAA,KAAKC,cAAAA,QAAcQ,gBAAgBjB,mCAASiB,cAAc;AAAA,MACrEX,cAAcH,SAASI;AAAAA,MAAYI,UAAA,CAEnCC,2BAAAA,IAACM,+BAAe;AAAA,QACdZ,cAAcH,SAASI;AAAAA,QACvBN,WAAWO,KAAAA,KAAKC,cAAAA,QAAcb,WAAWI,mCAASJ,SAAS;AAAA,QAAEe,UAE5Df;AAAAA,MAAAA,CACc,GAChBG,SACCa,2BAAAA,IAACO,+BAAe;AAAA,QACdb,cAAcH,SAASI;AAAAA,QACvBN,WAAWO,KAAAA,KAAKC,cAAAA,QAAcW,WAAWpB,mCAASoB,SAAS;AAAA,MAC5D,CAAA,GAEFrB,KAAK;AAAA,IAAA,CACc,CAAC;AAAA,EAAA,CACb;AAEhB;;"}
1
+ {"version":3,"file":"Footer.cjs","sources":["../../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import { useTheme } from \"@mui/material/styles\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport footerClasses, { HvFooterClasses } from \"./footerClasses\";\nimport {\n StyledCopyright,\n StyledName,\n StyledRightContainer,\n StyledRoot,\n StyledSeparator,\n} from \"./Footer.styles\";\n\nexport interface HvFooterProps extends HvBaseProps {\n name?: React.ReactNode;\n copyright?: React.ReactNode;\n links?: React.ReactNode;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFooterClasses;\n}\n\n/**\n * A Footer is a way of providing extra information at the end of a page.\n */\nexport const HvFooter = (props: HvFooterProps) => {\n const {\n name = \"Hitachi Vantara\",\n copyright = `© Hitachi Vantara Corporation ${new Date().getFullYear()}. All Rights Reserved.`,\n links,\n classes,\n className,\n ...others\n } = useDefaultProps(\"HvFooter\", props);\n const muiTheme = useTheme();\n\n return (\n <StyledRoot\n $breakpoints={muiTheme.breakpoints}\n className={clsx(className, footerClasses.root, classes?.root)}\n {...others}\n >\n <StyledName\n $breakpoints={muiTheme.breakpoints}\n variant=\"label\"\n className={clsx(footerClasses.name, classes?.name)}\n >\n {name}\n </StyledName>\n <StyledRightContainer\n className={clsx(footerClasses.rightContainer, classes?.rightContainer)}\n $breakpoints={muiTheme.breakpoints}\n >\n <StyledCopyright\n $breakpoints={muiTheme.breakpoints}\n className={clsx(footerClasses.copyright, classes?.copyright)}\n >\n {copyright}\n </StyledCopyright>\n {links && (\n <StyledSeparator\n $breakpoints={muiTheme.breakpoints}\n className={clsx(footerClasses.separator, classes?.separator)}\n />\n )}\n {links}\n </StyledRightContainer>\n </StyledRoot>\n );\n};\n"],"names":["HvFooter","props","name","copyright","Date","getFullYear","links","classes","className","others","useDefaultProps","muiTheme","useTheme","StyledRoot","$breakpoints","breakpoints","clsx","footerClasses","root","children","_jsx","StyledName","variant","_jsxs","StyledRightContainer","rightContainer","StyledCopyright","StyledSeparator","separator"],"mappings":";;;;;;;;AA2BaA,MAAAA,WAAWA,CAACC,UAAyB;AAC1C,QAAA;AAAA,IACJC,OAAO;AAAA,IACPC,YAAa,kCAAoCC,oBAAAA,QAAOC,YAAY;AAAA,IACpEC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACA,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,gBAAA,YAAYT,KAAK;AACrC,QAAMU,WAAWC,OAAAA;AAEjB,yCACGC,cAAAA,YAAU;AAAA,IACTC,cAAcH,SAASI;AAAAA,IACvBP,WAAWQ,KAAKR,KAAAA,WAAWS,cAAcC,QAAAA,MAAMX,mCAASW,IAAI;AAAA,IAAE,GAC1DT;AAAAA,IAAMU,UAAA,CAEVC,2BAAAA,IAACC,0BAAU;AAAA,MACTP,cAAcH,SAASI;AAAAA,MACvBO,SAAQ;AAAA,MACRd,WAAWQ,KAAAA,KAAKC,cAAAA,QAAcf,MAAMK,mCAASL,IAAI;AAAA,MAAEiB,UAElDjB;AAAAA,IAAAA,CACS,GACZqB,2BAAAA,KAACC,oCAAoB;AAAA,MACnBhB,WAAWQ,KAAAA,KAAKC,cAAAA,QAAcQ,gBAAgBlB,mCAASkB,cAAc;AAAA,MACrEX,cAAcH,SAASI;AAAAA,MAAYI,UAAA,CAEnCC,2BAAAA,IAACM,+BAAe;AAAA,QACdZ,cAAcH,SAASI;AAAAA,QACvBP,WAAWQ,KAAAA,KAAKC,cAAAA,QAAcd,WAAWI,mCAASJ,SAAS;AAAA,QAAEgB,UAE5DhB;AAAAA,MAAAA,CACc,GAChBG,SACCc,2BAAAA,IAACO,+BAAe;AAAA,QACdb,cAAcH,SAASI;AAAAA,QACvBP,WAAWQ,KAAAA,KAAKC,cAAAA,QAAcW,WAAWrB,mCAASqB,SAAS;AAAA,MAC5D,CAAA,GAEFtB,KAAK;AAAA,IAAA,CACc,CAAC;AAAA,EAAA,CACb;AAEhB;;"}
@@ -1,23 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const React = require("react");
4
+ const useDefaultProps = require("../../../hooks/useDefaultProps.cjs");
4
5
  const clsx = require("clsx");
5
6
  const setId = require("../../../utils/setId.cjs");
6
7
  const CharCounter_styles = require("./CharCounter.styles.cjs");
7
8
  const charCounterClasses = require("./charCounterClasses.cjs");
8
9
  const jsxRuntime = require("@emotion/react/jsx-runtime");
9
10
  const FormElementContext = require("../FormElement/context/FormElementContext.cjs");
10
- const HvCharCounter = ({
11
- separator = "/",
12
- maxCharQuantity,
13
- currentCharQuantity = 0,
14
- classes,
15
- className,
16
- id,
17
- disabled,
18
- disableGutter = false,
19
- ...others
20
- }) => {
11
+ const HvCharCounter = (props) => {
12
+ const {
13
+ separator = "/",
14
+ maxCharQuantity,
15
+ currentCharQuantity = 0,
16
+ classes,
17
+ className,
18
+ id,
19
+ disabled,
20
+ disableGutter = false,
21
+ ...others
22
+ } = useDefaultProps.useDefaultProps("HvCharCounter", props);
21
23
  const {
22
24
  elementId,
23
25
  elementDisabled
@@ -1 +1 @@
1
- {"version":3,"file":"CharCounter.cjs","sources":["../../../../../src/components/Forms/CharCounter/CharCounter.tsx"],"sourcesContent":["import { useContext } from \"react\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { setId } from \"@core/utils/setId\";\n\nimport { StyledRoot, StyledTypography } from \"./CharCounter.styles\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport charCounterClasses, { HvCharCounterClasses } from \"./charCounterClasses\";\n\nexport interface HvCharCounterProps extends HvBaseProps {\n /** The string that separates the current char quantity from the max quantity. */\n separator?: string;\n /** The maximum allowed length of the characters. */\n maxCharQuantity: number;\n /** The current char quantity to be rendered. */\n currentCharQuantity?: number;\n /** If `true` the counter is disabled. */\n disabled?: boolean;\n /** If `true` the info message won't have margins. */\n disableGutter?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvCharCounterClasses;\n}\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 */\nexport const HvCharCounter = ({\n separator = \"/\",\n maxCharQuantity,\n currentCharQuantity = 0,\n classes,\n className,\n id,\n disabled,\n disableGutter = false,\n ...others\n}: HvCharCounterProps) => {\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 <StyledRoot\n id={localId}\n className={clsx(\n className,\n charCounterClasses.root,\n classes?.root,\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled),\n !disableGutter && clsx(charCounterClasses.gutter, classes?.gutter)\n )}\n $counterDisabled={!!localDisabled}\n $gutter={!disableGutter}\n aria-live=\"polite\"\n aria-disabled={localDisabled}\n {...others}\n >\n <StyledTypography\n id={currentId}\n className={clsx(\n isOverloaded &&\n !localDisabled &&\n clsx(charCounterClasses.overloaded, classes?.overloaded),\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled)\n )}\n variant=\"label\"\n component=\"label\"\n $overloaded={isOverloaded && !localDisabled}\n $counterDisabled={!!localDisabled}\n >\n {currentCharQuantity}\n </StyledTypography>\n <StyledTypography\n id={maxQuantityId}\n className={clsx(\n isOverloaded &&\n !localDisabled &&\n clsx(charCounterClasses.overloaded, classes?.overloaded),\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled)\n )}\n variant=\"body\"\n component=\"label\"\n $overloaded={isOverloaded && !localDisabled}\n $counterDisabled={!!localDisabled}\n >\n {` ${separator} ${maxCharQuantity}`}\n </StyledTypography>\n </StyledRoot>\n );\n};\n"],"names":["HvCharCounter","separator","maxCharQuantity","currentCharQuantity","classes","className","id","disabled","disableGutter","others","elementId","elementDisabled","useContext","HvFormElementContext","localDisabled","localId","setId","currentId","maxQuantityId","isOverloaded","StyledRoot","clsx","charCounterClasses","root","counterDisabled","gutter","$counterDisabled","$gutter","children","_jsx","StyledTypography","overloaded","variant","component","$overloaded"],"mappings":";;;;;;;;;AAgCO,MAAMA,gBAAgBA,CAAC;AAAA,EAC5BC,YAAY;AAAA,EACZC;AAAAA,EACAC,sBAAsB;AAAA,EACtBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,gBAAgB;AAAA,EAChB,GAAGC;AACe,MAAM;AAClB,QAAA;AAAA,IAAEC;AAAAA,IAAWC;AAAAA,EAAAA,IAAoBC,MAAAA,WAAWC,mBAAAA,oBAAoB;AACtE,QAAMC,gBAAgBP,YAAYI;AAClC,QAAMI,UAAUT,MAAMU,MAAMN,MAAAA,WAAW,SAAS;AAC1CO,QAAAA,YAAYD,MAAAA,MAAMD,SAAS,iBAAiB;AAC5CG,QAAAA,gBAAgBF,MAAAA,MAAMD,SAAS,aAAa;AAClD,QAAMI,eAAehB,sBAAsBD;AAE3C,yCACGkB,mBAAAA,YAAU;AAAA,IACTd,IAAIS;AAAAA,IACJV,WAAWgB,KAAAA,KACThB,WACAiB,2BAAmBC,MACnBnB,mCAASmB,MACTT,iBACEO,KAAAA,KAAKC,mBAAAA,QAAmBE,iBAAiBpB,mCAASoB,eAAe,GACnE,CAAChB,iBAAiBa,KAAAA,KAAKC,mBAAAA,QAAmBG,QAAQrB,mCAASqB,MAAM,CACnE;AAAA,IACAC,kBAAkB,CAAC,CAACZ;AAAAA,IACpBa,SAAS,CAACnB;AAAAA,IACV,aAAU;AAAA,IACV,iBAAeM;AAAAA,IAAc,GACzBL;AAAAA,IAAMmB,UAAA,CAEVC,2BAAAA,IAACC,qCAAgB;AAAA,MACfxB,IAAIW;AAAAA,MACJZ,WAAWgB,KACTF,KAAAA,gBACE,CAACL,iBACDO,UAAKC,mBAAmBS,QAAAA,YAAY3B,mCAAS2B,UAAU,GACzDjB,iBACEO,UAAKC,mBAAAA,QAAmBE,iBAAiBpB,mCAASoB,eAAe,CACrE;AAAA,MACAQ,SAAQ;AAAA,MACRC,WAAU;AAAA,MACVC,aAAaf,gBAAgB,CAACL;AAAAA,MAC9BY,kBAAkB,CAAC,CAACZ;AAAAA,MAAcc,UAEjCzB;AAAAA,IAAAA,CACe,GAClB0B,2BAAAA,IAACC,qCAAgB;AAAA,MACfxB,IAAIY;AAAAA,MACJb,WAAWgB,KACTF,KAAAA,gBACE,CAACL,iBACDO,UAAKC,mBAAmBS,QAAAA,YAAY3B,mCAAS2B,UAAU,GACzDjB,iBACEO,UAAKC,mBAAAA,QAAmBE,iBAAiBpB,mCAASoB,eAAe,CACrE;AAAA,MACAQ,SAAQ;AAAA,MACRC,WAAU;AAAA,MACVC,aAAaf,gBAAgB,CAACL;AAAAA,MAC9BY,kBAAkB,CAAC,CAACZ;AAAAA,MAAcc,UAEhC,IAAG3B,aAAaC;AAAAA,IAAAA,CACF,CAAC;AAAA,EAAA,CACT;AAEhB;;"}
1
+ {"version":3,"file":"CharCounter.cjs","sources":["../../../../../src/components/Forms/CharCounter/CharCounter.tsx"],"sourcesContent":["import { useContext } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { setId } from \"@core/utils/setId\";\n\nimport { StyledRoot, StyledTypography } from \"./CharCounter.styles\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport charCounterClasses, { HvCharCounterClasses } from \"./charCounterClasses\";\n\nexport interface HvCharCounterProps extends HvBaseProps {\n /** The string that separates the current char quantity from the max quantity. */\n separator?: string;\n /** The maximum allowed length of the characters. */\n maxCharQuantity: number;\n /** The current char quantity to be rendered. */\n currentCharQuantity?: number;\n /** If `true` the counter is disabled. */\n disabled?: boolean;\n /** If `true` the info message won't have margins. */\n disableGutter?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvCharCounterClasses;\n}\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 */\nexport const HvCharCounter = (props: HvCharCounterProps) => {\n const {\n separator = \"/\",\n maxCharQuantity,\n currentCharQuantity = 0,\n classes,\n className,\n id,\n disabled,\n disableGutter = false,\n ...others\n } = useDefaultProps(\"HvCharCounter\", props);\n\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 <StyledRoot\n id={localId}\n className={clsx(\n className,\n charCounterClasses.root,\n classes?.root,\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled),\n !disableGutter && clsx(charCounterClasses.gutter, classes?.gutter)\n )}\n $counterDisabled={!!localDisabled}\n $gutter={!disableGutter}\n aria-live=\"polite\"\n aria-disabled={localDisabled}\n {...others}\n >\n <StyledTypography\n id={currentId}\n className={clsx(\n isOverloaded &&\n !localDisabled &&\n clsx(charCounterClasses.overloaded, classes?.overloaded),\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled)\n )}\n variant=\"label\"\n component=\"label\"\n $overloaded={isOverloaded && !localDisabled}\n $counterDisabled={!!localDisabled}\n >\n {currentCharQuantity}\n </StyledTypography>\n <StyledTypography\n id={maxQuantityId}\n className={clsx(\n isOverloaded &&\n !localDisabled &&\n clsx(charCounterClasses.overloaded, classes?.overloaded),\n localDisabled &&\n clsx(charCounterClasses.counterDisabled, classes?.counterDisabled)\n )}\n variant=\"body\"\n component=\"label\"\n $overloaded={isOverloaded && !localDisabled}\n $counterDisabled={!!localDisabled}\n >\n {` ${separator} ${maxCharQuantity}`}\n </StyledTypography>\n </StyledRoot>\n );\n};\n"],"names":["HvCharCounter","props","separator","maxCharQuantity","currentCharQuantity","classes","className","id","disabled","disableGutter","others","useDefaultProps","elementId","elementDisabled","useContext","HvFormElementContext","localDisabled","localId","setId","currentId","maxQuantityId","isOverloaded","StyledRoot","clsx","charCounterClasses","root","counterDisabled","gutter","$counterDisabled","$gutter","children","_jsx","StyledTypography","overloaded","variant","component","$overloaded"],"mappings":";;;;;;;;;;AAiCaA,MAAAA,gBAAgBA,CAACC,UAA8B;AACpD,QAAA;AAAA,IACJC,YAAY;AAAA,IACZC;AAAAA,IACAC,sBAAsB;AAAA,IACtBC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,gBAAgB;AAAA,IAChB,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,gBAAA,iBAAiBV,KAAK;AAEpC,QAAA;AAAA,IAAEW;AAAAA,IAAWC;AAAAA,EAAAA,IAAoBC,MAAAA,WAAWC,mBAAAA,oBAAoB;AACtE,QAAMC,gBAAgBR,YAAYK;AAClC,QAAMI,UAAUV,MAAMW,MAAMN,MAAAA,WAAW,SAAS;AAC1CO,QAAAA,YAAYD,MAAAA,MAAMD,SAAS,iBAAiB;AAC5CG,QAAAA,gBAAgBF,MAAAA,MAAMD,SAAS,aAAa;AAClD,QAAMI,eAAejB,sBAAsBD;AAE3C,yCACGmB,mBAAAA,YAAU;AAAA,IACTf,IAAIU;AAAAA,IACJX,WAAWiB,KAAAA,KACTjB,WACAkB,2BAAmBC,MACnBpB,mCAASoB,MACTT,iBACEO,KAAAA,KAAKC,mBAAAA,QAAmBE,iBAAiBrB,mCAASqB,eAAe,GACnE,CAACjB,iBAAiBc,KAAAA,KAAKC,mBAAAA,QAAmBG,QAAQtB,mCAASsB,MAAM,CACnE;AAAA,IACAC,kBAAkB,CAAC,CAACZ;AAAAA,IACpBa,SAAS,CAACpB;AAAAA,IACV,aAAU;AAAA,IACV,iBAAeO;AAAAA,IAAc,GACzBN;AAAAA,IAAMoB,UAAA,CAEVC,2BAAAA,IAACC,qCAAgB;AAAA,MACfzB,IAAIY;AAAAA,MACJb,WAAWiB,KACTF,KAAAA,gBACE,CAACL,iBACDO,UAAKC,mBAAmBS,QAAAA,YAAY5B,mCAAS4B,UAAU,GACzDjB,iBACEO,UAAKC,mBAAAA,QAAmBE,iBAAiBrB,mCAASqB,eAAe,CACrE;AAAA,MACAQ,SAAQ;AAAA,MACRC,WAAU;AAAA,MACVC,aAAaf,gBAAgB,CAACL;AAAAA,MAC9BY,kBAAkB,CAAC,CAACZ;AAAAA,MAAcc,UAEjC1B;AAAAA,IAAAA,CACe,GAClB2B,2BAAAA,IAACC,qCAAgB;AAAA,MACfzB,IAAIa;AAAAA,MACJd,WAAWiB,KACTF,KAAAA,gBACE,CAACL,iBACDO,UAAKC,mBAAmBS,QAAAA,YAAY5B,mCAAS4B,UAAU,GACzDjB,iBACEO,UAAKC,mBAAAA,QAAmBE,iBAAiBrB,mCAASqB,eAAe,CACrE;AAAA,MACAQ,SAAQ;AAAA,MACRC,WAAU;AAAA,MACVC,aAAaf,gBAAgB,CAACL;AAAAA,MAC9BY,kBAAkB,CAAC,CAACZ;AAAAA,MAAcc,UAEhC,IAAG5B,aAAaC;AAAAA,IAAAA,CACF,CAAC;AAAA,EAAA,CACT;AAEhB;;"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const React = require("react");
4
+ const useDefaultProps = require("../../../hooks/useDefaultProps.cjs");
4
5
  const clsx = require("clsx");
5
6
  const useUniqueId = require("../../../hooks/useUniqueId.cjs");
6
7
  const FormUtils = require("./utils/FormUtils.cjs");
@@ -9,19 +10,20 @@ const FormElementValueContext = require("./context/FormElementValueContext.cjs")
9
10
  const FormElementDescriptorsContext = require("./context/FormElementDescriptorsContext.cjs");
10
11
  const formElementClasses = require("./formElementClasses.cjs");
11
12
  const jsxRuntime = require("@emotion/react/jsx-runtime");
12
- const HvFormElement = ({
13
- classes,
14
- className,
15
- children,
16
- id,
17
- name,
18
- value,
19
- disabled = false,
20
- required = false,
21
- readOnly = false,
22
- status = "standBy",
23
- ...others
24
- }) => {
13
+ const HvFormElement = (props) => {
14
+ const {
15
+ classes,
16
+ className,
17
+ children,
18
+ id,
19
+ name,
20
+ value,
21
+ disabled = false,
22
+ required = false,
23
+ readOnly = false,
24
+ status = "standBy",
25
+ ...others
26
+ } = useDefaultProps.useDefaultProps("HvFormElement", props);
25
27
  const elementId = useUniqueId.useUniqueId(id, "hvformelement");
26
28
  const contextValue = React.useMemo(() => ({
27
29
  elementId,
@@ -1 +1 @@
1
- {"version":3,"file":"FormElement.cjs","sources":["../../../../../src/components/Forms/FormElement/FormElement.tsx"],"sourcesContent":["import { useMemo } from \"react\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\n\nimport { findDescriptors } from \"./utils/FormUtils\";\nimport { HvFormElementContextProvider } from \"./context/FormElementContext\";\nimport { HvFormElementValueContextProvider } from \"./context/FormElementValueContext\";\nimport { HvFormElementDescriptorsContextProvider } from \"./context/FormElementDescriptorsContext\";\nimport formElementClasses, { HvFormElementClasses } from \"./formElementClasses\";\n\nexport type HvFormStatus = \"standBy\" | \"valid\" | \"invalid\" | \"empty\";\n\nexport interface HvFormElementProps\n extends HvBaseProps<HTMLDivElement, \"onChange\"> {\n /**\n * Name of the form element.\n *\n * Part of a name/value pair, should be the name property of the underling native input.\n */\n name?: string;\n /**\n * Current value of the form element.\n *\n * Part of a name/value pair, should be the value property of the underling native input.\n */\n value?: any;\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?: React.ReactNode;\n /** Provide additional descriptive text for the form element. */\n description?: React.ReactNode;\n /** Whether the form element is disabled. */\n disabled?: boolean;\n /** Indicates that the form element is not editable. */\n readOnly?: boolean;\n /** Indicates that user input is required on the form element. */\n required?: boolean;\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?: HvFormStatus;\n /** The error message to show when `status` is \"invalid\". */\n statusMessage?: string;\n /** The callback fired when the value changes. */\n onChange?: (event: React.FormEvent<HTMLDivElement>) => void;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFormElementClasses;\n}\n\nexport const HvFormElement = ({\n classes,\n className,\n children,\n id,\n name,\n value,\n disabled = false,\n required = false,\n readOnly = false,\n status = \"standBy\",\n ...others\n}: HvFormElementProps) => {\n const elementId = useUniqueId(id, \"hvformelement\");\n\n const contextValue = useMemo(\n () => ({\n elementId,\n elementName: name,\n elementStatus: status,\n elementDisabled: disabled,\n elementRequired: required,\n elementReadOnly: readOnly,\n }),\n [disabled, elementId, name, readOnly, required, status]\n );\n\n const descriptors = useMemo(() => findDescriptors(children), [children]);\n\n return (\n <div\n id={id}\n className={clsx(className, formElementClasses.root, classes?.root)}\n {...others}\n >\n <HvFormElementContextProvider value={contextValue}>\n <HvFormElementValueContextProvider value={value}>\n <HvFormElementDescriptorsContextProvider value={descriptors}>\n {children}\n </HvFormElementDescriptorsContextProvider>\n </HvFormElementValueContextProvider>\n </HvFormElementContextProvider>\n </div>\n );\n};\n\nHvFormElement.formElementType = \"formelement\";\n"],"names":["HvFormElement","classes","className","children","id","name","value","disabled","required","readOnly","status","others","elementId","useUniqueId","contextValue","useMemo","elementName","elementStatus","elementDisabled","elementRequired","elementReadOnly","descriptors","findDescriptors","clsx","formElementClasses","root","HvFormElementContextProvider","HvFormElementValueContextProvider","HvFormElementDescriptorsContextProvider","formElementType"],"mappings":";;;;;;;;;;;AA6DO,MAAMA,gBAAgBA,CAAC;AAAA,EAC5BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,WAAW;AAAA,EACXC,WAAW;AAAA,EACXC,WAAW;AAAA,EACXC,SAAS;AAAA,EACT,GAAGC;AACe,MAAM;AAClBC,QAAAA,YAAYC,YAAAA,YAAYT,IAAI,eAAe;AAE3CU,QAAAA,eAAeC,MAAAA,QACnB,OAAO;AAAA,IACLH;AAAAA,IACAI,aAAaX;AAAAA,IACbY,eAAeP;AAAAA,IACfQ,iBAAiBX;AAAAA,IACjBY,iBAAiBX;AAAAA,IACjBY,iBAAiBX;AAAAA,EAAAA,IAEnB,CAACF,UAAUK,WAAWP,MAAMI,UAAUD,UAAUE,MAAM,CACxD;AAEMW,QAAAA,cAAcN,MAAAA,QAAQ,MAAMO,UAAAA,gBAAgBnB,QAAQ,GAAG,CAACA,QAAQ,CAAC;AAEvE,wCACE,OAAA;AAAA,IACEC;AAAAA,IACAF,WAAWqB,KAAKrB,KAAAA,WAAWsB,mBAAmBC,QAAAA,MAAMxB,mCAASwB,IAAI;AAAA,IAAE,GAC/Dd;AAAAA,IAAMR,yCAETuB,iDAA4B;AAAA,MAACpB,OAAOQ;AAAAA,MAAaX,yCAC/CwB,2DAAiC;AAAA,QAACrB;AAAAA,QAAaH,yCAC7CyB,uEAAuC;AAAA,UAACtB,OAAOe;AAAAA,UAAYlB;AAAAA,QAAAA,CAEnB;AAAA,MAAA,CACR;AAAA,IAAA,CACP;AAAA,EAAA,CAC3B;AAET;AAEAH,cAAc6B,kBAAkB;;"}
1
+ {"version":3,"file":"FormElement.cjs","sources":["../../../../../src/components/Forms/FormElement/FormElement.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { clsx } from \"clsx\";\n\nimport { HvBaseProps } from \"@core/types/generic\";\nimport { useUniqueId } from \"@core/hooks/useUniqueId\";\n\nimport { findDescriptors } from \"./utils/FormUtils\";\nimport { HvFormElementContextProvider } from \"./context/FormElementContext\";\nimport { HvFormElementValueContextProvider } from \"./context/FormElementValueContext\";\nimport { HvFormElementDescriptorsContextProvider } from \"./context/FormElementDescriptorsContext\";\nimport formElementClasses, { HvFormElementClasses } from \"./formElementClasses\";\n\nexport type HvFormStatus = \"standBy\" | \"valid\" | \"invalid\" | \"empty\";\n\nexport interface HvFormElementProps\n extends HvBaseProps<HTMLDivElement, \"onChange\"> {\n /**\n * Name of the form element.\n *\n * Part of a name/value pair, should be the name property of the underling native input.\n */\n name?: string;\n /**\n * Current value of the form element.\n *\n * Part of a name/value pair, should be the value property of the underling native input.\n */\n value?: any;\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?: React.ReactNode;\n /** Provide additional descriptive text for the form element. */\n description?: React.ReactNode;\n /** Whether the form element is disabled. */\n disabled?: boolean;\n /** Indicates that the form element is not editable. */\n readOnly?: boolean;\n /** Indicates that user input is required on the form element. */\n required?: boolean;\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?: HvFormStatus;\n /** The error message to show when `status` is \"invalid\". */\n statusMessage?: string;\n /** The callback fired when the value changes. */\n onChange?: (event: React.FormEvent<HTMLDivElement>) => void;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvFormElementClasses;\n}\n\nexport const HvFormElement = (props: HvFormElementProps) => {\n const {\n classes,\n className,\n children,\n id,\n name,\n value,\n disabled = false,\n required = false,\n readOnly = false,\n status = \"standBy\",\n ...others\n } = useDefaultProps(\"HvFormElement\", props);\n\n const elementId = useUniqueId(id, \"hvformelement\");\n\n const contextValue = useMemo(\n () => ({\n elementId,\n elementName: name,\n elementStatus: status,\n elementDisabled: disabled,\n elementRequired: required,\n elementReadOnly: readOnly,\n }),\n [disabled, elementId, name, readOnly, required, status]\n );\n\n const descriptors = useMemo(() => findDescriptors(children), [children]);\n\n return (\n <div\n id={id}\n className={clsx(className, formElementClasses.root, classes?.root)}\n {...others}\n >\n <HvFormElementContextProvider value={contextValue}>\n <HvFormElementValueContextProvider value={value}>\n <HvFormElementDescriptorsContextProvider value={descriptors}>\n {children}\n </HvFormElementDescriptorsContextProvider>\n </HvFormElementValueContextProvider>\n </HvFormElementContextProvider>\n </div>\n );\n};\n\nHvFormElement.formElementType = \"formelement\";\n"],"names":["HvFormElement","props","classes","className","children","id","name","value","disabled","required","readOnly","status","others","useDefaultProps","elementId","useUniqueId","contextValue","useMemo","elementName","elementStatus","elementDisabled","elementRequired","elementReadOnly","descriptors","findDescriptors","clsx","formElementClasses","root","HvFormElementContextProvider","HvFormElementValueContextProvider","HvFormElementDescriptorsContextProvider","formElementType"],"mappings":";;;;;;;;;;;;AA8DaA,MAAAA,gBAAgBA,CAACC,UAA8B;AACpD,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,WAAW;AAAA,IACXC,WAAW;AAAA,IACXC,WAAW;AAAA,IACXC,SAAS;AAAA,IACT,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,gBAAA,iBAAiBZ,KAAK;AAEpCa,QAAAA,YAAYC,YAAAA,YAAYV,IAAI,eAAe;AAE3CW,QAAAA,eAAeC,MAAAA,QACnB,OAAO;AAAA,IACLH;AAAAA,IACAI,aAAaZ;AAAAA,IACba,eAAeR;AAAAA,IACfS,iBAAiBZ;AAAAA,IACjBa,iBAAiBZ;AAAAA,IACjBa,iBAAiBZ;AAAAA,EAAAA,IAEnB,CAACF,UAAUM,WAAWR,MAAMI,UAAUD,UAAUE,MAAM,CACxD;AAEMY,QAAAA,cAAcN,MAAAA,QAAQ,MAAMO,UAAAA,gBAAgBpB,QAAQ,GAAG,CAACA,QAAQ,CAAC;AAEvE,wCACE,OAAA;AAAA,IACEC;AAAAA,IACAF,WAAWsB,KAAKtB,KAAAA,WAAWuB,mBAAmBC,QAAAA,MAAMzB,mCAASyB,IAAI;AAAA,IAAE,GAC/Df;AAAAA,IAAMR,yCAETwB,iDAA4B;AAAA,MAACrB,OAAOS;AAAAA,MAAaZ,yCAC/CyB,2DAAiC;AAAA,QAACtB;AAAAA,QAAaH,yCAC7C0B,uEAAuC;AAAA,UAACvB,OAAOgB;AAAAA,UAAYnB;AAAAA,QAAAA,CAEnB;AAAA,MAAA,CACR;AAAA,IAAA,CACP;AAAA,EAAA,CAC3B;AAET;AAEAJ,cAAc+B,kBAAkB;;"}
@@ -1,21 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const clsx = require("clsx");
4
+ const useDefaultProps = require("../../../hooks/useDefaultProps.cjs");
4
5
  const React = require("react");
5
6
  const setId = require("../../../utils/setId.cjs");
6
7
  const InfoMessage_styles = require("./InfoMessage.styles.cjs");
7
8
  const infoMessageClasses = require("./infoMessageClasses.cjs");
8
9
  const jsxRuntime = require("@emotion/react/jsx-runtime");
9
10
  const FormElementContext = require("../FormElement/context/FormElementContext.cjs");
10
- const HvInfoMessage = ({
11
- id,
12
- classes,
13
- className,
14
- children,
15
- disabled,
16
- disableGutter = false,
17
- ...others
18
- }) => {
11
+ const HvInfoMessage = (props) => {
12
+ const {
13
+ id,
14
+ classes,
15
+ className,
16
+ children,
17
+ disabled,
18
+ disableGutter = false,
19
+ ...others
20
+ } = useDefaultProps.useDefaultProps("HvInfoMessage", props);
19
21
  const {
20
22
  elementId,
21
23
  elementDisabled
@@ -1 +1 @@
1
- {"version":3,"file":"InfoMessage.cjs","sources":["../../../../../src/components/Forms/InfoMessage/InfoMessage.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\n\nimport { useContext } from \"react\";\n\nimport { setId } from \"@core/utils/setId\";\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { StyledTypography } from \"./InfoMessage.styles\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport infoMessageClasses, { HvInfoMessageClasses } from \"./infoMessageClasses\";\n\nexport interface HvInfoMessageProps extends HvBaseProps {\n /** If `true` the label is disabled. */\n disabled?: boolean;\n /** If `true` the info message won't have margins. */\n disableGutter?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvInfoMessageClasses;\n}\n\n/**\n * Provides the user with additional descriptive text for the form element.\n */\nexport const HvInfoMessage = ({\n id,\n classes,\n className,\n children,\n disabled,\n disableGutter = false,\n ...others\n}: HvInfoMessageProps) => {\n const { elementId, elementDisabled } = useContext(HvFormElementContext);\n const localDisabled = disabled || elementDisabled;\n const localId = id ?? setId(elementId, \"description\");\n\n return (\n <StyledTypography\n id={localId}\n className={clsx(\n className,\n infoMessageClasses.root,\n classes?.root,\n localDisabled &&\n clsx(infoMessageClasses.infoDisabled, classes?.infoDisabled),\n !disableGutter && clsx(infoMessageClasses.gutter, classes?.gutter)\n )}\n variant=\"body\"\n component=\"label\"\n $infoDisabled={!!localDisabled}\n $gutter={!disableGutter}\n {...others}\n >\n {children}\n </StyledTypography>\n );\n};\n"],"names":["HvInfoMessage","id","classes","className","children","disabled","disableGutter","others","elementId","elementDisabled","useContext","HvFormElementContext","localDisabled","localId","setId","StyledTypography","clsx","infoMessageClasses","root","infoDisabled","gutter","variant","component","$infoDisabled","$gutter"],"mappings":";;;;;;;;;AAuBO,MAAMA,gBAAgBA,CAAC;AAAA,EAC5BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,gBAAgB;AAAA,EAChB,GAAGC;AACe,MAAM;AAClB,QAAA;AAAA,IAAEC;AAAAA,IAAWC;AAAAA,EAAAA,IAAoBC,MAAAA,WAAWC,mBAAAA,oBAAoB;AACtE,QAAMC,gBAAgBP,YAAYI;AAClC,QAAMI,UAAUZ,MAAMa,MAAMN,MAAAA,WAAW,aAAa;AAEpD,wCACGO,mBAAAA,kBAAgB;AAAA,IACfd,IAAIY;AAAAA,IACJV,WAAWa,KAAAA,KACTb,WACAc,2BAAmBC,MACnBhB,mCAASgB,MACTN,iBACEI,KAAAA,KAAKC,mBAAAA,QAAmBE,cAAcjB,mCAASiB,YAAY,GAC7D,CAACb,iBAAiBU,KAAAA,KAAKC,mBAAAA,QAAmBG,QAAQlB,mCAASkB,MAAM,CACnE;AAAA,IACAC,SAAQ;AAAA,IACRC,WAAU;AAAA,IACVC,eAAe,CAAC,CAACX;AAAAA,IACjBY,SAAS,CAAClB;AAAAA,IAAc,GACpBC;AAAAA,IAAMH;AAAAA,EAAAA,CAGM;AAEtB;;"}
1
+ {"version":3,"file":"InfoMessage.cjs","sources":["../../../../../src/components/Forms/InfoMessage/InfoMessage.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { useDefaultProps } from \"@core/hooks/useDefaultProps\";\n\nimport { useContext } from \"react\";\n\nimport { setId } from \"@core/utils/setId\";\nimport { HvBaseProps } from \"@core/types/generic\";\n\nimport { StyledTypography } from \"./InfoMessage.styles\";\nimport { HvFormElementContext } from \"../FormElement\";\nimport infoMessageClasses, { HvInfoMessageClasses } from \"./infoMessageClasses\";\n\nexport interface HvInfoMessageProps extends HvBaseProps {\n /** If `true` the label is disabled. */\n disabled?: boolean;\n /** If `true` the info message won't have margins. */\n disableGutter?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvInfoMessageClasses;\n}\n\n/**\n * Provides the user with additional descriptive text for the form element.\n */\nexport const HvInfoMessage = (props: HvInfoMessageProps) => {\n const {\n id,\n classes,\n className,\n children,\n disabled,\n disableGutter = false,\n ...others\n } = useDefaultProps(\"HvInfoMessage\", props);\n\n const { elementId, elementDisabled } = useContext(HvFormElementContext);\n const localDisabled = disabled || elementDisabled;\n const localId = id ?? setId(elementId, \"description\");\n\n return (\n <StyledTypography\n id={localId}\n className={clsx(\n className,\n infoMessageClasses.root,\n classes?.root,\n localDisabled &&\n clsx(infoMessageClasses.infoDisabled, classes?.infoDisabled),\n !disableGutter && clsx(infoMessageClasses.gutter, classes?.gutter)\n )}\n variant=\"body\"\n component=\"label\"\n $infoDisabled={!!localDisabled}\n $gutter={!disableGutter}\n {...others}\n >\n {children}\n </StyledTypography>\n );\n};\n"],"names":["HvInfoMessage","props","id","classes","className","children","disabled","disableGutter","others","useDefaultProps","elementId","elementDisabled","useContext","HvFormElementContext","localDisabled","localId","setId","StyledTypography","clsx","infoMessageClasses","root","infoDisabled","gutter","variant","component","$infoDisabled","$gutter"],"mappings":";;;;;;;;;;AAwBaA,MAAAA,gBAAgBA,CAACC,UAA8B;AACpD,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC;AAAAA,IACAC,gBAAgB;AAAA,IAChB,GAAGC;AAAAA,EAAAA,IACDC,gBAAgB,gBAAA,iBAAiBR,KAAK;AAEpC,QAAA;AAAA,IAAES;AAAAA,IAAWC;AAAAA,EAAAA,IAAoBC,MAAAA,WAAWC,mBAAAA,oBAAoB;AACtE,QAAMC,gBAAgBR,YAAYK;AAClC,QAAMI,UAAUb,MAAMc,MAAMN,MAAAA,WAAW,aAAa;AAEpD,wCACGO,mBAAAA,kBAAgB;AAAA,IACff,IAAIa;AAAAA,IACJX,WAAWc,KAAAA,KACTd,WACAe,2BAAmBC,MACnBjB,mCAASiB,MACTN,iBACEI,KAAAA,KAAKC,mBAAAA,QAAmBE,cAAclB,mCAASkB,YAAY,GAC7D,CAACd,iBAAiBW,KAAAA,KAAKC,mBAAAA,QAAmBG,QAAQnB,mCAASmB,MAAM,CACnE;AAAA,IACAC,SAAQ;AAAA,IACRC,WAAU;AAAA,IACVC,eAAe,CAAC,CAACX;AAAAA,IACjBY,SAAS,CAACnB;AAAAA,IAAc,GACpBC;AAAAA,IAAMH;AAAAA,EAAAA,CAGM;AAEtB;;"}