@hitachivantara/uikit-react-core 5.0.0-next.8 → 5.0.0-next.9
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.
- package/dist/cjs/components/Accordion/Accordion.cjs +10 -37
- package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
- package/dist/cjs/components/ActionBar/ActionBar.cjs +2 -7
- package/dist/cjs/components/ActionBar/ActionBar.cjs.map +1 -1
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs +11 -39
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.cjs.map +1 -1
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.styles.cjs +2 -4
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.styles.cjs.map +1 -1
- package/dist/cjs/components/AppSwitcher/Action/Action.cjs +12 -54
- package/dist/cjs/components/AppSwitcher/Action/Action.cjs.map +1 -1
- package/dist/cjs/components/AppSwitcher/Action/Action.styles.cjs +2 -4
- package/dist/cjs/components/AppSwitcher/Action/Action.styles.cjs.map +1 -1
- package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs +15 -37
- package/dist/cjs/components/AppSwitcher/AppSwitcher.cjs.map +1 -1
- package/dist/cjs/components/AppSwitcher/TitleWithTooltip.cjs +2 -16
- package/dist/cjs/components/AppSwitcher/TitleWithTooltip.cjs.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.cjs +9 -38
- package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
- package/dist/cjs/components/Badge/Badge.cjs +6 -23
- package/dist/cjs/components/Badge/Badge.cjs.map +1 -1
- package/dist/cjs/components/Banner/Banner.cjs +7 -33
- package/dist/cjs/components/Banner/Banner.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.cjs +5 -27
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.cjs +2 -4
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs +12 -34
- package/dist/cjs/components/Banner/BannerContent/BannerContent.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/MessageContainer/MessageContainer.cjs +6 -20
- package/dist/cjs/components/Banner/BannerContent/MessageContainer/MessageContainer.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/MessageContainer/MessageContainer.styles.cjs +2 -4
- package/dist/cjs/components/Banner/BannerContent/MessageContainer/MessageContainer.styles.cjs.map +1 -1
- package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs +5 -36
- package/dist/cjs/components/BaseCheckBox/BaseCheckBox.cjs.map +1 -1
- package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs +57 -93
- package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs.map +1 -1
- package/dist/cjs/components/BaseInput/BaseInput.cjs +18 -47
- package/dist/cjs/components/BaseInput/BaseInput.cjs.map +1 -1
- package/dist/cjs/components/BaseRadio/BaseRadio.cjs +4 -30
- package/dist/cjs/components/BaseRadio/BaseRadio.cjs.map +1 -1
- package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs +9 -30
- package/dist/cjs/components/BaseSwitch/BaseSwitch.cjs.map +1 -1
- package/dist/cjs/components/Box/Box.cjs +2 -7
- package/dist/cjs/components/Box/Box.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs +14 -35
- package/dist/cjs/components/BreadCrumb/BreadCrumb.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/BreadCrumb.styles.cjs +2 -4
- package/dist/cjs/components/BreadCrumb/BreadCrumb.styles.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/Page/Page.cjs +4 -19
- package/dist/cjs/components/BreadCrumb/Page/Page.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/Page/Page.styles.cjs +3 -7
- package/dist/cjs/components/BreadCrumb/Page/Page.styles.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/PathElement/PathElement.cjs +5 -8
- package/dist/cjs/components/BreadCrumb/PathElement/PathElement.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/utils.cjs +2 -10
- package/dist/cjs/components/BreadCrumb/utils.cjs.map +1 -1
- package/dist/cjs/components/BulkActions/BulkActions.cjs +20 -54
- package/dist/cjs/components/BulkActions/BulkActions.cjs.map +1 -1
- package/dist/cjs/components/Button/Button.cjs +5 -25
- package/dist/cjs/components/Button/Button.cjs.map +1 -1
- package/dist/cjs/components/Card/Card.cjs +13 -20
- package/dist/cjs/components/Card/Card.cjs.map +1 -1
- package/dist/cjs/components/Card/Content/Content.cjs +2 -8
- package/dist/cjs/components/Card/Content/Content.cjs.map +1 -1
- package/dist/cjs/components/Card/Header/Header.cjs +14 -22
- package/dist/cjs/components/Card/Header/Header.cjs.map +1 -1
- package/dist/cjs/components/Card/Media/Media.cjs +5 -14
- package/dist/cjs/components/Card/Media/Media.cjs.map +1 -1
- package/dist/cjs/components/CheckBox/CheckBox.cjs +16 -55
- package/dist/cjs/components/CheckBox/CheckBox.cjs.map +1 -1
- package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs +17 -56
- package/dist/cjs/components/CheckBoxGroup/CheckBoxGroup.cjs.map +1 -1
- package/dist/cjs/components/Container/Container.cjs +11 -19
- package/dist/cjs/components/Container/Container.cjs.map +1 -1
- package/dist/cjs/components/Controls/Controls.cjs +15 -32
- package/dist/cjs/components/Controls/Controls.cjs.map +1 -1
- package/dist/cjs/components/Controls/LeftControl/LeftControl.cjs +5 -13
- package/dist/cjs/components/Controls/LeftControl/LeftControl.cjs.map +1 -1
- package/dist/cjs/components/Controls/RightControl/RightControl.cjs +2 -14
- package/dist/cjs/components/Controls/RightControl/RightControl.cjs.map +1 -1
- package/dist/cjs/components/Controls/RightControl/RightControl.styles.cjs +2 -4
- package/dist/cjs/components/Controls/RightControl/RightControl.styles.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Actions/Actions.cjs +5 -11
- package/dist/cjs/components/Dialog/Actions/Actions.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Content/Content.cjs +2 -7
- package/dist/cjs/components/Dialog/Content/Content.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Dialog.cjs +35 -68
- package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Title/Title.cjs +8 -17
- package/dist/cjs/components/Dialog/Title/Title.cjs.map +1 -1
- package/dist/cjs/components/DotPagination/DotPagination.cjs +9 -29
- package/dist/cjs/components/DotPagination/DotPagination.cjs.map +1 -1
- package/dist/cjs/components/DotPagination/DotPagination.styles.cjs +3 -7
- package/dist/cjs/components/DotPagination/DotPagination.styles.cjs.map +1 -1
- package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs +23 -63
- package/dist/cjs/components/DropDownMenu/DropDownMenu.cjs.map +1 -1
- package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs +2 -4
- package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.cjs +21 -97
- package/dist/cjs/components/Dropdown/Dropdown.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.styles.cjs +2 -4
- package/dist/cjs/components/Dropdown/Dropdown.styles.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/List/List.cjs +27 -83
- package/dist/cjs/components/Dropdown/List/List.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/List/List.styles.cjs +2 -4
- package/dist/cjs/components/Dropdown/List/List.styles.cjs.map +1 -1
- package/dist/cjs/components/EmptyState/EmptyState.cjs +10 -24
- package/dist/cjs/components/EmptyState/EmptyState.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/DropZone/DropZone.cjs +52 -101
- package/dist/cjs/components/FileUploader/DropZone/DropZone.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/File/File.cjs +21 -57
- package/dist/cjs/components/FileUploader/File/File.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/FileList/FileList.cjs +4 -14
- package/dist/cjs/components/FileUploader/FileList/FileList.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/FileUploader.cjs +4 -21
- package/dist/cjs/components/FileUploader/FileUploader.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/Preview/Preview.cjs +8 -14
- package/dist/cjs/components/FileUploader/Preview/Preview.cjs.map +1 -1
- package/dist/cjs/components/Focus/Focus.cjs +10 -15
- package/dist/cjs/components/Focus/Focus.cjs.map +1 -1
- package/dist/cjs/components/Footer/Footer.cjs +9 -23
- package/dist/cjs/components/Footer/Footer.cjs.map +1 -1
- package/dist/cjs/components/Forms/Adornment/Adornment.cjs +2 -29
- package/dist/cjs/components/Forms/Adornment/Adornment.cjs.map +1 -1
- package/dist/cjs/components/Forms/CharCounter/CharCounter.cjs +5 -27
- package/dist/cjs/components/Forms/CharCounter/CharCounter.cjs.map +1 -1
- package/dist/cjs/components/Forms/FormElement/FormElement.cjs +2 -16
- package/dist/cjs/components/Forms/FormElement/FormElement.cjs.map +1 -1
- package/dist/cjs/components/Forms/InfoMessage/InfoMessage.cjs +2 -11
- package/dist/cjs/components/Forms/InfoMessage/InfoMessage.cjs.map +1 -1
- package/dist/cjs/components/Forms/Label/Label.cjs +8 -17
- package/dist/cjs/components/Forms/Label/Label.cjs.map +1 -1
- package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs +5 -26
- package/dist/cjs/components/Forms/Suggestions/Suggestions.cjs.map +1 -1
- package/dist/cjs/components/Forms/WarningText/WarningText.cjs +6 -20
- package/dist/cjs/components/Forms/WarningText/WarningText.cjs.map +1 -1
- package/dist/cjs/components/GlobalActions/GlobalActions.cjs +7 -25
- package/dist/cjs/components/GlobalActions/GlobalActions.cjs.map +1 -1
- package/dist/cjs/components/Grid/Grid.cjs +5 -9
- package/dist/cjs/components/Grid/Grid.cjs.map +1 -1
- package/dist/cjs/components/Header/Actions/Actions.cjs +2 -6
- package/dist/cjs/components/Header/Actions/Actions.cjs.map +1 -1
- package/dist/cjs/components/Header/Brand/Brand.cjs +6 -11
- package/dist/cjs/components/Header/Brand/Brand.cjs.map +1 -1
- package/dist/cjs/components/Header/Header.cjs +2 -10
- package/dist/cjs/components/Header/Header.cjs.map +1 -1
- package/dist/cjs/components/Header/Navigation/MenuBar/MenuBar.cjs +3 -17
- package/dist/cjs/components/Header/Navigation/MenuBar/MenuBar.cjs.map +1 -1
- package/dist/cjs/components/Header/Navigation/MenuBar/MenuBar.styles.cjs +3 -7
- package/dist/cjs/components/Header/Navigation/MenuBar/MenuBar.styles.cjs.map +1 -1
- package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs +6 -24
- package/dist/cjs/components/Header/Navigation/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/cjs/components/Header/Navigation/Navigation.cjs +2 -15
- package/dist/cjs/components/Header/Navigation/Navigation.cjs.map +1 -1
- package/dist/cjs/components/Header/Navigation/utils/FocusContext.cjs +2 -5
- package/dist/cjs/components/Header/Navigation/utils/FocusContext.cjs.map +1 -1
- package/dist/cjs/components/Input/Input.cjs +42 -112
- package/dist/cjs/components/Input/Input.cjs.map +1 -1
- package/dist/cjs/components/Input/Input.styles.cjs +2 -4
- package/dist/cjs/components/Input/Input.styles.cjs.map +1 -1
- package/dist/cjs/components/Kpi/Kpi.cjs +16 -47
- package/dist/cjs/components/Kpi/Kpi.cjs.map +1 -1
- package/dist/cjs/components/Link/Link.cjs +2 -14
- package/dist/cjs/components/Link/Link.cjs.map +1 -1
- package/dist/cjs/components/List/List.cjs +32 -104
- package/dist/cjs/components/List/List.cjs.map +1 -1
- package/dist/cjs/components/List/List.styles.cjs +5 -13
- package/dist/cjs/components/List/List.styles.cjs.map +1 -1
- package/dist/cjs/components/ListContainer/ListContainer.cjs +2 -11
- package/dist/cjs/components/ListContainer/ListContainer.cjs.map +1 -1
- package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs +12 -32
- package/dist/cjs/components/ListContainer/ListItem/ListItem.cjs.map +1 -1
- package/dist/cjs/components/Loading/Loading.cjs +5 -18
- package/dist/cjs/components/Loading/Loading.cjs.map +1 -1
- package/dist/cjs/components/Login/Login.cjs +4 -13
- package/dist/cjs/components/Login/Login.cjs.map +1 -1
- package/dist/cjs/components/MultiButton/MultiButton.cjs +14 -19
- package/dist/cjs/components/MultiButton/MultiButton.cjs.map +1 -1
- package/dist/cjs/components/MultiButton/MultiButton.styles.cjs +2 -5
- package/dist/cjs/components/MultiButton/MultiButton.styles.cjs.map +1 -1
- package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs +3 -20
- package/dist/cjs/components/OverflowTooltip/OverflowTooltip.cjs.map +1 -1
- package/dist/cjs/components/OverflowTooltip/OverflowTooltip.styles.cjs +2 -4
- package/dist/cjs/components/OverflowTooltip/OverflowTooltip.styles.cjs.map +1 -1
- package/dist/cjs/components/Pagination/ButtonIconTooltip.cjs +1 -13
- package/dist/cjs/components/Pagination/ButtonIconTooltip.cjs.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.cjs +27 -127
- package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
- package/dist/cjs/components/Pagination/Select.cjs +8 -32
- package/dist/cjs/components/Pagination/Select.cjs.map +1 -1
- package/dist/cjs/components/Panel/Panel.cjs +2 -7
- package/dist/cjs/components/Panel/Panel.cjs.map +1 -1
- package/dist/cjs/components/ProgressBar/ProgressBar.cjs +9 -30
- package/dist/cjs/components/ProgressBar/ProgressBar.cjs.map +1 -1
- package/dist/cjs/components/Radio/Radio.cjs +16 -51
- package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.cjs +7 -36
- package/dist/cjs/components/RadioGroup/RadioGroup.cjs.map +1 -1
- package/dist/cjs/components/SelectionList/SelectionList.cjs +7 -41
- package/dist/cjs/components/SelectionList/SelectionList.cjs.map +1 -1
- package/dist/cjs/components/SelectionList/SelectionList.styles.cjs +4 -10
- package/dist/cjs/components/SelectionList/SelectionList.styles.cjs.map +1 -1
- package/dist/cjs/components/SimpleGrid/SimpleGrid.cjs +2 -8
- package/dist/cjs/components/SimpleGrid/SimpleGrid.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.cjs +14 -48
- package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs +9 -32
- package/dist/cjs/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs +4 -27
- package/dist/cjs/components/Snackbar/SnackbarProvider/SnackbarProvider.cjs.map +1 -1
- package/dist/cjs/components/Stack/Stack.cjs +8 -29
- package/dist/cjs/components/Stack/Stack.cjs.map +1 -1
- package/dist/cjs/components/Switch/Switch.cjs +13 -46
- package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
- package/dist/cjs/components/Tab/Tab.cjs +17 -14
- package/dist/cjs/components/Tab/Tab.cjs.map +1 -1
- package/dist/cjs/components/Table/Table.cjs +2 -13
- package/dist/cjs/components/Table/Table.cjs.map +1 -1
- package/dist/cjs/components/Table/TableBody/TableBody.cjs +6 -25
- package/dist/cjs/components/Table/TableBody/TableBody.cjs.map +1 -1
- package/dist/cjs/components/Table/TableCell/TableCell.cjs +2 -23
- package/dist/cjs/components/Table/TableCell/TableCell.cjs.map +1 -1
- package/dist/cjs/components/Table/TableContainer/TableContainer.cjs +2 -6
- package/dist/cjs/components/Table/TableContainer/TableContainer.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHead/TableHead.cjs +2 -11
- package/dist/cjs/components/Table/TableHead/TableHead.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHeader/TableHeader.cjs +6 -49
- package/dist/cjs/components/Table/TableHeader/TableHeader.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHeader/TableHeader.styles.cjs +8 -14
- package/dist/cjs/components/Table/TableHeader/TableHeader.styles.cjs.map +1 -1
- package/dist/cjs/components/Table/TableRow/TableRow.cjs +2 -15
- package/dist/cjs/components/Table/TableRow/TableRow.cjs.map +1 -1
- package/dist/cjs/components/Table/hooks/useRowExpand.cjs +5 -15
- package/dist/cjs/components/Table/hooks/useRowExpand.cjs.map +1 -1
- package/dist/cjs/components/Table/hooks/useRowSelection.cjs +2 -8
- package/dist/cjs/components/Table/hooks/useRowSelection.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/DateColumnCell/DateColumnCell.cjs +2 -4
- package/dist/cjs/components/Table/renderers/DateColumnCell/DateColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.cjs +3 -10
- package/dist/cjs/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.cjs +2 -10
- package/dist/cjs/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.cjs +6 -17
- package/dist/cjs/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/renderers.cjs +19 -60
- package/dist/cjs/components/Table/renderers/renderers.cjs.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.cjs +9 -13
- package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
- package/dist/cjs/components/Tag/Tag.cjs +25 -55
- package/dist/cjs/components/Tag/Tag.cjs.map +1 -1
- package/dist/cjs/components/TagsInput/TagsInput.cjs +45 -129
- package/dist/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
- package/dist/cjs/components/TagsInput/TagsInput.styles.cjs +11 -31
- package/dist/cjs/components/TagsInput/TagsInput.styles.cjs.map +1 -1
- package/dist/cjs/components/TextArea/TextArea.cjs +22 -69
- package/dist/cjs/components/TextArea/TextArea.cjs.map +1 -1
- package/dist/cjs/components/TextArea/TextArea.styles.cjs +5 -13
- package/dist/cjs/components/TextArea/TextArea.styles.cjs.map +1 -1
- package/dist/cjs/components/ToggleButton/ToggleButton.cjs +2 -10
- package/dist/cjs/components/ToggleButton/ToggleButton.cjs.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.cjs +8 -21
- package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/cjs/components/Typography/Typography.cjs +2 -11
- package/dist/cjs/components/Typography/Typography.cjs.map +1 -1
- package/dist/cjs/hocs/withId.cjs +2 -5
- package/dist/cjs/hocs/withId.cjs.map +1 -1
- package/dist/cjs/hocs/withTooltip.cjs +5 -24
- package/dist/cjs/hocs/withTooltip.cjs.map +1 -1
- package/dist/cjs/providers/Provider.cjs +5 -10
- package/dist/cjs/providers/Provider.cjs.map +1 -1
- package/dist/cjs/providers/ThemeProvider.cjs +2 -8
- package/dist/cjs/providers/ThemeProvider.cjs.map +1 -1
- package/dist/cjs/utils/iconVariant.cjs +5 -16
- package/dist/cjs/utils/iconVariant.cjs.map +1 -1
- package/dist/esm/components/Accordion/Accordion.js +10 -37
- package/dist/esm/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/ActionBar/ActionBar.js +2 -7
- package/dist/esm/components/ActionBar/ActionBar.js.map +1 -1
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.js +11 -39
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.js.map +1 -1
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.styles.js +2 -4
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.styles.js.map +1 -1
- package/dist/esm/components/AppSwitcher/Action/Action.js +12 -54
- package/dist/esm/components/AppSwitcher/Action/Action.js.map +1 -1
- package/dist/esm/components/AppSwitcher/Action/Action.styles.js +2 -4
- package/dist/esm/components/AppSwitcher/Action/Action.styles.js.map +1 -1
- package/dist/esm/components/AppSwitcher/AppSwitcher.js +15 -37
- package/dist/esm/components/AppSwitcher/AppSwitcher.js.map +1 -1
- package/dist/esm/components/AppSwitcher/TitleWithTooltip.js +2 -16
- package/dist/esm/components/AppSwitcher/TitleWithTooltip.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.js +9 -38
- package/dist/esm/components/Avatar/Avatar.js.map +1 -1
- package/dist/esm/components/Badge/Badge.js +6 -23
- package/dist/esm/components/Badge/Badge.js.map +1 -1
- package/dist/esm/components/Banner/Banner.js +7 -33
- package/dist/esm/components/Banner/Banner.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.js +5 -27
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.js +2 -4
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/BannerContent.js +12 -34
- package/dist/esm/components/Banner/BannerContent/BannerContent.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/MessageContainer/MessageContainer.js +6 -20
- package/dist/esm/components/Banner/BannerContent/MessageContainer/MessageContainer.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/MessageContainer/MessageContainer.styles.js +2 -4
- package/dist/esm/components/Banner/BannerContent/MessageContainer/MessageContainer.styles.js.map +1 -1
- package/dist/esm/components/BaseCheckBox/BaseCheckBox.js +5 -36
- package/dist/esm/components/BaseCheckBox/BaseCheckBox.js.map +1 -1
- package/dist/esm/components/BaseDropdown/BaseDropdown.js +57 -93
- package/dist/esm/components/BaseDropdown/BaseDropdown.js.map +1 -1
- package/dist/esm/components/BaseInput/BaseInput.js +18 -47
- package/dist/esm/components/BaseInput/BaseInput.js.map +1 -1
- package/dist/esm/components/BaseRadio/BaseRadio.js +4 -30
- package/dist/esm/components/BaseRadio/BaseRadio.js.map +1 -1
- package/dist/esm/components/BaseSwitch/BaseSwitch.js +9 -30
- package/dist/esm/components/BaseSwitch/BaseSwitch.js.map +1 -1
- package/dist/esm/components/Box/Box.js +2 -7
- package/dist/esm/components/Box/Box.js.map +1 -1
- package/dist/esm/components/BreadCrumb/BreadCrumb.js +14 -35
- package/dist/esm/components/BreadCrumb/BreadCrumb.js.map +1 -1
- package/dist/esm/components/BreadCrumb/BreadCrumb.styles.js +2 -4
- package/dist/esm/components/BreadCrumb/BreadCrumb.styles.js.map +1 -1
- package/dist/esm/components/BreadCrumb/Page/Page.js +4 -19
- package/dist/esm/components/BreadCrumb/Page/Page.js.map +1 -1
- package/dist/esm/components/BreadCrumb/Page/Page.styles.js +3 -7
- package/dist/esm/components/BreadCrumb/Page/Page.styles.js.map +1 -1
- package/dist/esm/components/BreadCrumb/PathElement/PathElement.js +5 -8
- package/dist/esm/components/BreadCrumb/PathElement/PathElement.js.map +1 -1
- package/dist/esm/components/BreadCrumb/utils.js +2 -10
- package/dist/esm/components/BreadCrumb/utils.js.map +1 -1
- package/dist/esm/components/BulkActions/BulkActions.js +20 -54
- package/dist/esm/components/BulkActions/BulkActions.js.map +1 -1
- package/dist/esm/components/Button/Button.js +5 -25
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Card/Card.js +13 -20
- package/dist/esm/components/Card/Card.js.map +1 -1
- package/dist/esm/components/Card/Content/Content.js +2 -8
- package/dist/esm/components/Card/Content/Content.js.map +1 -1
- package/dist/esm/components/Card/Header/Header.js +14 -22
- package/dist/esm/components/Card/Header/Header.js.map +1 -1
- package/dist/esm/components/Card/Media/Media.js +5 -14
- package/dist/esm/components/Card/Media/Media.js.map +1 -1
- package/dist/esm/components/CheckBox/CheckBox.js +16 -55
- package/dist/esm/components/CheckBox/CheckBox.js.map +1 -1
- package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js +17 -56
- package/dist/esm/components/CheckBoxGroup/CheckBoxGroup.js.map +1 -1
- package/dist/esm/components/Container/Container.js +11 -19
- package/dist/esm/components/Container/Container.js.map +1 -1
- package/dist/esm/components/Controls/Controls.js +15 -32
- package/dist/esm/components/Controls/Controls.js.map +1 -1
- package/dist/esm/components/Controls/LeftControl/LeftControl.js +5 -13
- package/dist/esm/components/Controls/LeftControl/LeftControl.js.map +1 -1
- package/dist/esm/components/Controls/RightControl/RightControl.js +2 -14
- package/dist/esm/components/Controls/RightControl/RightControl.js.map +1 -1
- package/dist/esm/components/Controls/RightControl/RightControl.styles.js +2 -4
- package/dist/esm/components/Controls/RightControl/RightControl.styles.js.map +1 -1
- package/dist/esm/components/Dialog/Actions/Actions.js +5 -11
- package/dist/esm/components/Dialog/Actions/Actions.js.map +1 -1
- package/dist/esm/components/Dialog/Content/Content.js +2 -7
- package/dist/esm/components/Dialog/Content/Content.js.map +1 -1
- package/dist/esm/components/Dialog/Dialog.js +35 -68
- package/dist/esm/components/Dialog/Dialog.js.map +1 -1
- package/dist/esm/components/Dialog/Title/Title.js +8 -17
- package/dist/esm/components/Dialog/Title/Title.js.map +1 -1
- package/dist/esm/components/DotPagination/DotPagination.js +9 -29
- package/dist/esm/components/DotPagination/DotPagination.js.map +1 -1
- package/dist/esm/components/DotPagination/DotPagination.styles.js +3 -7
- package/dist/esm/components/DotPagination/DotPagination.styles.js.map +1 -1
- package/dist/esm/components/DropDownMenu/DropDownMenu.js +23 -63
- package/dist/esm/components/DropDownMenu/DropDownMenu.js.map +1 -1
- package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js +2 -4
- package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js +21 -97
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.styles.js +2 -4
- package/dist/esm/components/Dropdown/Dropdown.styles.js.map +1 -1
- package/dist/esm/components/Dropdown/List/List.js +27 -83
- package/dist/esm/components/Dropdown/List/List.js.map +1 -1
- package/dist/esm/components/Dropdown/List/List.styles.js +2 -4
- package/dist/esm/components/Dropdown/List/List.styles.js.map +1 -1
- package/dist/esm/components/EmptyState/EmptyState.js +10 -24
- package/dist/esm/components/EmptyState/EmptyState.js.map +1 -1
- package/dist/esm/components/FileUploader/DropZone/DropZone.js +52 -101
- package/dist/esm/components/FileUploader/DropZone/DropZone.js.map +1 -1
- package/dist/esm/components/FileUploader/File/File.js +21 -57
- package/dist/esm/components/FileUploader/File/File.js.map +1 -1
- package/dist/esm/components/FileUploader/FileList/FileList.js +4 -14
- package/dist/esm/components/FileUploader/FileList/FileList.js.map +1 -1
- package/dist/esm/components/FileUploader/FileUploader.js +4 -21
- package/dist/esm/components/FileUploader/FileUploader.js.map +1 -1
- package/dist/esm/components/FileUploader/Preview/Preview.js +8 -14
- package/dist/esm/components/FileUploader/Preview/Preview.js.map +1 -1
- package/dist/esm/components/Focus/Focus.js +10 -15
- package/dist/esm/components/Focus/Focus.js.map +1 -1
- package/dist/esm/components/Footer/Footer.js +9 -23
- package/dist/esm/components/Footer/Footer.js.map +1 -1
- package/dist/esm/components/Forms/Adornment/Adornment.js +2 -29
- package/dist/esm/components/Forms/Adornment/Adornment.js.map +1 -1
- package/dist/esm/components/Forms/CharCounter/CharCounter.js +5 -27
- package/dist/esm/components/Forms/CharCounter/CharCounter.js.map +1 -1
- package/dist/esm/components/Forms/FormElement/FormElement.js +2 -16
- package/dist/esm/components/Forms/FormElement/FormElement.js.map +1 -1
- package/dist/esm/components/Forms/InfoMessage/InfoMessage.js +2 -11
- package/dist/esm/components/Forms/InfoMessage/InfoMessage.js.map +1 -1
- package/dist/esm/components/Forms/Label/Label.js +8 -17
- package/dist/esm/components/Forms/Label/Label.js.map +1 -1
- package/dist/esm/components/Forms/Suggestions/Suggestions.js +5 -26
- package/dist/esm/components/Forms/Suggestions/Suggestions.js.map +1 -1
- package/dist/esm/components/Forms/WarningText/WarningText.js +6 -20
- package/dist/esm/components/Forms/WarningText/WarningText.js.map +1 -1
- package/dist/esm/components/GlobalActions/GlobalActions.js +7 -25
- package/dist/esm/components/GlobalActions/GlobalActions.js.map +1 -1
- package/dist/esm/components/Grid/Grid.js +5 -9
- package/dist/esm/components/Grid/Grid.js.map +1 -1
- package/dist/esm/components/Header/Actions/Actions.js +2 -6
- package/dist/esm/components/Header/Actions/Actions.js.map +1 -1
- package/dist/esm/components/Header/Brand/Brand.js +6 -11
- package/dist/esm/components/Header/Brand/Brand.js.map +1 -1
- package/dist/esm/components/Header/Header.js +2 -10
- package/dist/esm/components/Header/Header.js.map +1 -1
- package/dist/esm/components/Header/Navigation/MenuBar/MenuBar.js +3 -17
- package/dist/esm/components/Header/Navigation/MenuBar/MenuBar.js.map +1 -1
- package/dist/esm/components/Header/Navigation/MenuBar/MenuBar.styles.js +3 -7
- package/dist/esm/components/Header/Navigation/MenuBar/MenuBar.styles.js.map +1 -1
- package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js +6 -24
- package/dist/esm/components/Header/Navigation/MenuItem/MenuItem.js.map +1 -1
- package/dist/esm/components/Header/Navigation/Navigation.js +2 -15
- package/dist/esm/components/Header/Navigation/Navigation.js.map +1 -1
- package/dist/esm/components/Header/Navigation/utils/FocusContext.js +2 -5
- package/dist/esm/components/Header/Navigation/utils/FocusContext.js.map +1 -1
- package/dist/esm/components/Input/Input.js +42 -112
- package/dist/esm/components/Input/Input.js.map +1 -1
- package/dist/esm/components/Input/Input.styles.js +2 -4
- package/dist/esm/components/Input/Input.styles.js.map +1 -1
- package/dist/esm/components/Kpi/Kpi.js +16 -47
- package/dist/esm/components/Kpi/Kpi.js.map +1 -1
- package/dist/esm/components/Link/Link.js +2 -14
- package/dist/esm/components/Link/Link.js.map +1 -1
- package/dist/esm/components/List/List.js +32 -104
- package/dist/esm/components/List/List.js.map +1 -1
- package/dist/esm/components/List/List.styles.js +5 -13
- package/dist/esm/components/List/List.styles.js.map +1 -1
- package/dist/esm/components/ListContainer/ListContainer.js +2 -11
- package/dist/esm/components/ListContainer/ListContainer.js.map +1 -1
- package/dist/esm/components/ListContainer/ListItem/ListItem.js +12 -32
- package/dist/esm/components/ListContainer/ListItem/ListItem.js.map +1 -1
- package/dist/esm/components/Loading/Loading.js +5 -18
- package/dist/esm/components/Loading/Loading.js.map +1 -1
- package/dist/esm/components/Login/Login.js +4 -13
- package/dist/esm/components/Login/Login.js.map +1 -1
- package/dist/esm/components/MultiButton/MultiButton.js +14 -19
- package/dist/esm/components/MultiButton/MultiButton.js.map +1 -1
- package/dist/esm/components/MultiButton/MultiButton.styles.js +2 -5
- package/dist/esm/components/MultiButton/MultiButton.styles.js.map +1 -1
- package/dist/esm/components/OverflowTooltip/OverflowTooltip.js +3 -20
- package/dist/esm/components/OverflowTooltip/OverflowTooltip.js.map +1 -1
- package/dist/esm/components/OverflowTooltip/OverflowTooltip.styles.js +2 -4
- package/dist/esm/components/OverflowTooltip/OverflowTooltip.styles.js.map +1 -1
- package/dist/esm/components/Pagination/ButtonIconTooltip.js +1 -13
- package/dist/esm/components/Pagination/ButtonIconTooltip.js.map +1 -1
- package/dist/esm/components/Pagination/Pagination.js +27 -127
- package/dist/esm/components/Pagination/Pagination.js.map +1 -1
- package/dist/esm/components/Pagination/Select.js +8 -32
- package/dist/esm/components/Pagination/Select.js.map +1 -1
- package/dist/esm/components/Panel/Panel.js +2 -7
- package/dist/esm/components/Panel/Panel.js.map +1 -1
- package/dist/esm/components/ProgressBar/ProgressBar.js +9 -30
- package/dist/esm/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/esm/components/Radio/Radio.js +16 -51
- package/dist/esm/components/Radio/Radio.js.map +1 -1
- package/dist/esm/components/RadioGroup/RadioGroup.js +7 -36
- package/dist/esm/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/esm/components/SelectionList/SelectionList.js +7 -41
- package/dist/esm/components/SelectionList/SelectionList.js.map +1 -1
- package/dist/esm/components/SelectionList/SelectionList.styles.js +4 -10
- package/dist/esm/components/SelectionList/SelectionList.styles.js.map +1 -1
- package/dist/esm/components/SimpleGrid/SimpleGrid.js +2 -8
- package/dist/esm/components/SimpleGrid/SimpleGrid.js.map +1 -1
- package/dist/esm/components/Snackbar/Snackbar.js +14 -48
- package/dist/esm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js +9 -32
- package/dist/esm/components/Snackbar/SnackbarContentWrapper/SnackbarContentWrapper.js.map +1 -1
- package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js +4 -27
- package/dist/esm/components/Snackbar/SnackbarProvider/SnackbarProvider.js.map +1 -1
- package/dist/esm/components/Stack/Stack.js +8 -29
- package/dist/esm/components/Stack/Stack.js.map +1 -1
- package/dist/esm/components/Switch/Switch.js +13 -46
- package/dist/esm/components/Switch/Switch.js.map +1 -1
- package/dist/esm/components/Tab/Tab.js +17 -14
- package/dist/esm/components/Tab/Tab.js.map +1 -1
- package/dist/esm/components/Table/Table.js +2 -13
- package/dist/esm/components/Table/Table.js.map +1 -1
- package/dist/esm/components/Table/TableBody/TableBody.js +6 -25
- package/dist/esm/components/Table/TableBody/TableBody.js.map +1 -1
- package/dist/esm/components/Table/TableCell/TableCell.js +2 -23
- package/dist/esm/components/Table/TableCell/TableCell.js.map +1 -1
- package/dist/esm/components/Table/TableContainer/TableContainer.js +2 -6
- package/dist/esm/components/Table/TableContainer/TableContainer.js.map +1 -1
- package/dist/esm/components/Table/TableHead/TableHead.js +2 -11
- package/dist/esm/components/Table/TableHead/TableHead.js.map +1 -1
- package/dist/esm/components/Table/TableHeader/TableHeader.js +6 -49
- package/dist/esm/components/Table/TableHeader/TableHeader.js.map +1 -1
- package/dist/esm/components/Table/TableHeader/TableHeader.styles.js +8 -14
- package/dist/esm/components/Table/TableHeader/TableHeader.styles.js.map +1 -1
- package/dist/esm/components/Table/TableRow/TableRow.js +2 -15
- package/dist/esm/components/Table/TableRow/TableRow.js.map +1 -1
- package/dist/esm/components/Table/hooks/useRowExpand.js +5 -15
- package/dist/esm/components/Table/hooks/useRowExpand.js.map +1 -1
- package/dist/esm/components/Table/hooks/useRowSelection.js +2 -8
- package/dist/esm/components/Table/hooks/useRowSelection.js.map +1 -1
- package/dist/esm/components/Table/renderers/DateColumnCell/DateColumnCell.js +2 -4
- package/dist/esm/components/Table/renderers/DateColumnCell/DateColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.js +3 -10
- package/dist/esm/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.js +2 -10
- package/dist/esm/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.js +6 -17
- package/dist/esm/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/renderers.js +19 -60
- package/dist/esm/components/Table/renderers/renderers.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +9 -13
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Tag/Tag.js +25 -55
- package/dist/esm/components/Tag/Tag.js.map +1 -1
- package/dist/esm/components/TagsInput/TagsInput.js +45 -129
- package/dist/esm/components/TagsInput/TagsInput.js.map +1 -1
- package/dist/esm/components/TagsInput/TagsInput.styles.js +11 -31
- package/dist/esm/components/TagsInput/TagsInput.styles.js.map +1 -1
- package/dist/esm/components/TextArea/TextArea.js +22 -69
- package/dist/esm/components/TextArea/TextArea.js.map +1 -1
- package/dist/esm/components/TextArea/TextArea.styles.js +5 -13
- package/dist/esm/components/TextArea/TextArea.styles.js.map +1 -1
- package/dist/esm/components/ToggleButton/ToggleButton.js +2 -10
- package/dist/esm/components/ToggleButton/ToggleButton.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js +8 -21
- package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/Typography/Typography.js +2 -11
- package/dist/esm/components/Typography/Typography.js.map +1 -1
- package/dist/esm/hocs/withId.js +2 -5
- package/dist/esm/hocs/withId.js.map +1 -1
- package/dist/esm/hocs/withTooltip.js +5 -24
- package/dist/esm/hocs/withTooltip.js.map +1 -1
- package/dist/esm/providers/Provider.js +5 -10
- package/dist/esm/providers/Provider.js.map +1 -1
- package/dist/esm/providers/ThemeProvider.js +2 -8
- package/dist/esm/providers/ThemeProvider.js.map +1 -1
- package/dist/esm/utils/iconVariant.js +5 -16
- package/dist/esm/utils/iconVariant.js.map +1 -1
- package/dist/types/components/Card/Card.d.ts +1 -1
- package/dist/types/components/Card/Card.d.ts.map +1 -1
- package/dist/types/components/Header/Navigation/MenuBar/MenuBar.styles.d.ts.map +1 -1
- package/dist/types/components/Table/hooks/index.d.ts.map +1 -1
- package/package.json +7 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableRow.js","sources":["../../../../../src/components/Table/TableRow/TableRow.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport styled from \"@emotion/styled\";\nimport { hexToRgb, alpha } from \"@mui/material\";\nimport { HvBaseProps } from \"../../../types/index\";\nimport { tableRowClasses, HvTableRowClasses } from \".\";\nimport { forwardRef, useContext, useMemo } from \"react\";\nimport TableContext from \"../TableContext\";\nimport { transientOptions } from \"utils/transientOptions\";\nimport TableSectionContext from \"../TableSectionContext\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { HvThemeContext } from \"providers\";\nimport { getBorderStyles } from \"../utils/utils\";\n\nexport type HvTableRowProps = Omit<HvBaseProps, \"children\"> & {\n /** Content to be rendered */\n children: React.ReactNode;\n /** The component used for the root node. Either a string to use a HTML element or a component. Defaults to tbody. */\n component?: React.ElementType;\n /** Whether the table row will shade on hover. */\n hover?: boolean;\n /** Whether the table row will have the selected shading. */\n selected?: boolean;\n /** Whether the table row is expanded. */\n expanded?: boolean;\n /** Whether the table row background is striped. */\n striped?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableRowClasses;\n};\n\nconst defaultComponent = \"tr\";\n\nconst StyledTableRow = (c: any) =>\n styled(\n c,\n transientOptions\n )(\n ({\n $hover,\n $selected,\n $expanded,\n $striped,\n $variantList,\n $variantListHead,\n $stripedColor,\n $type,\n }: {\n $hover: boolean;\n $selected: boolean;\n $expanded: boolean;\n $striped: boolean;\n $variantList: boolean;\n $variantListHead: boolean;\n $type: string;\n $stripedColor: string;\n }) => ({\n backgroundColor: theme.table.rowBackgroundColor,\n \":hover\": {\n ...($type === \"body\" && {\n backgroundColor: theme.table.rowHoverColor,\n }),\n },\n ...($hover && {\n transition: \"background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms\",\n \"&:hover\": {\n backgroundColor: theme.table.rowHoverColor,\n },\n }),\n ...($selected && {\n backgroundColor: theme.table.selectedRowBackgroundColor,\n }),\n ...($expanded && {\n \"& > *[role=cell]\": {\n borderBottom: \"none\",\n },\n [`&.${tableRowClasses.expanded}`]: {\n backgroundColor: theme.colors.atmo1,\n },\n }),\n ...($striped && {\n \"&:nth-of-type(even)\": {\n backgroundColor: $stripedColor,\n \"&:hover\": {\n backgroundColor: theme.table.rowHoverColor,\n },\n },\n }),\n\n // type\n ...($type === \"head\" && {\n backgroundColor: \"transparent\",\n \"&:first-of-type\": {\n height: 52,\n },\n\n \"tr&:first-of-type\": {\n height: 52,\n },\n }),\n\n ...($variantList && {\n borderBottom: 0,\n ...(!$selected && {\n backgroundColor: theme.colors.atmo1,\n }),\n height: 52,\n \"&:hover\": {\n ...getBorderStyles(\"row\", theme.table.rowHoverBorderColor),\n },\n [`&.${tableRowClasses.selected}`]: {\n ...getBorderStyles(\"row\", theme.colors.acce1),\n\n \"&:hover\": {\n ...getBorderStyles(\"row\", theme.table.rowHoverBorderColor),\n },\n },\n }),\n ...($variantListHead && {\n height: 16,\n \"&:first-of-type\": {\n height: 16,\n },\n\n \"tr&:first-of-type\": {\n height: 16,\n },\n }),\n })\n );\n\n/**\n * `HvTableRow` acts as a `tr` element and inherits styles from its context\n */\nexport const HvTableRow = forwardRef<HTMLElement, HvTableRowProps>(\n (\n {\n classes,\n className,\n component,\n hover = false,\n selected = false,\n expanded = false,\n striped = false,\n ...others\n },\n externalRef\n ) => {\n const { activeTheme, selectedMode } = useContext(HvThemeContext);\n const tableContext = useContext(TableContext);\n const tableSectionContext = useContext(TableSectionContext);\n\n const type = tableSectionContext?.type || \"body\";\n\n const isList = tableContext.variant === \"listrow\";\n\n const Component =\n component || tableContext?.components?.Tr || defaultComponent;\n\n const TableRow = useMemo(() => StyledTableRow(Component), [Component]);\n\n return (\n <TableRow\n ref={externalRef}\n className={clsx(\n className,\n tableSectionContext.filterClassName,\n tableRowClasses.root,\n classes?.root,\n tableRowClasses[type],\n classes?.[type],\n hover && clsx(tableRowClasses.hover, classes?.hover),\n selected && clsx(tableRowClasses.selected, classes?.selected),\n expanded && clsx(tableRowClasses.expanded, classes?.expanded),\n striped && clsx(tableRowClasses.striped, classes?.striped),\n isList &&\n type === \"body\" &&\n clsx(tableRowClasses.variantList, classes?.variantList),\n isList &&\n type === \"head\" &&\n clsx(tableRowClasses.variantListHead, classes?.variantListHead)\n )}\n role={Component === defaultComponent ? null : \"row\"}\n $hover={hover}\n $selected={selected}\n $expanded={expanded}\n $striped={striped}\n $variantList={isList && type === \"body\"}\n $variantListHead={isList && type === \"head\"}\n $type={type}\n $stripedColor={alpha(\n hexToRgb(\n activeTheme?.colors?.modes[selectedMode].atmo1 || theme.colors.atmo1\n ),\n 0.6\n )}\n {...others}\n />\n );\n }\n);\n"],"names":["defaultComponent","StyledTableRow","c","process","env","NODE_ENV","_extends","target","transientOptions","label","$hover","$selected","$expanded","$striped","$variantList","$variantListHead","$stripedColor","$type","backgroundColor","theme","table","rowBackgroundColor","rowHoverColor","transition","selectedRowBackgroundColor","borderBottom","tableRowClasses","expanded","colors","atmo1","height","getBorderStyles","rowHoverBorderColor","selected","acce1","HvTableRow","forwardRef","classes","className","component","hover","striped","others","externalRef","activeTheme","selectedMode","useContext","HvThemeContext","tableContext","TableContext","tableSectionContext","TableSectionContext","type","isList","variant","Component","components","Tr","TableRow","useMemo","
|
|
1
|
+
{"version":3,"file":"TableRow.js","sources":["../../../../../src/components/Table/TableRow/TableRow.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport styled from \"@emotion/styled\";\nimport { hexToRgb, alpha } from \"@mui/material\";\nimport { HvBaseProps } from \"../../../types/index\";\nimport { tableRowClasses, HvTableRowClasses } from \".\";\nimport { forwardRef, useContext, useMemo } from \"react\";\nimport TableContext from \"../TableContext\";\nimport { transientOptions } from \"utils/transientOptions\";\nimport TableSectionContext from \"../TableSectionContext\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport { HvThemeContext } from \"providers\";\nimport { getBorderStyles } from \"../utils/utils\";\n\nexport type HvTableRowProps = Omit<HvBaseProps, \"children\"> & {\n /** Content to be rendered */\n children: React.ReactNode;\n /** The component used for the root node. Either a string to use a HTML element or a component. Defaults to tbody. */\n component?: React.ElementType;\n /** Whether the table row will shade on hover. */\n hover?: boolean;\n /** Whether the table row will have the selected shading. */\n selected?: boolean;\n /** Whether the table row is expanded. */\n expanded?: boolean;\n /** Whether the table row background is striped. */\n striped?: boolean;\n /** A Jss Object used to override or extend the styles applied to the component. */\n classes?: HvTableRowClasses;\n};\n\nconst defaultComponent = \"tr\";\n\nconst StyledTableRow = (c: any) =>\n styled(\n c,\n transientOptions\n )(\n ({\n $hover,\n $selected,\n $expanded,\n $striped,\n $variantList,\n $variantListHead,\n $stripedColor,\n $type,\n }: {\n $hover: boolean;\n $selected: boolean;\n $expanded: boolean;\n $striped: boolean;\n $variantList: boolean;\n $variantListHead: boolean;\n $type: string;\n $stripedColor: string;\n }) => ({\n backgroundColor: theme.table.rowBackgroundColor,\n \":hover\": {\n ...($type === \"body\" && {\n backgroundColor: theme.table.rowHoverColor,\n }),\n },\n ...($hover && {\n transition: \"background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms\",\n \"&:hover\": {\n backgroundColor: theme.table.rowHoverColor,\n },\n }),\n ...($selected && {\n backgroundColor: theme.table.selectedRowBackgroundColor,\n }),\n ...($expanded && {\n \"& > *[role=cell]\": {\n borderBottom: \"none\",\n },\n [`&.${tableRowClasses.expanded}`]: {\n backgroundColor: theme.colors.atmo1,\n },\n }),\n ...($striped && {\n \"&:nth-of-type(even)\": {\n backgroundColor: $stripedColor,\n \"&:hover\": {\n backgroundColor: theme.table.rowHoverColor,\n },\n },\n }),\n\n // type\n ...($type === \"head\" && {\n backgroundColor: \"transparent\",\n \"&:first-of-type\": {\n height: 52,\n },\n\n \"tr&:first-of-type\": {\n height: 52,\n },\n }),\n\n ...($variantList && {\n borderBottom: 0,\n ...(!$selected && {\n backgroundColor: theme.colors.atmo1,\n }),\n height: 52,\n \"&:hover\": {\n ...getBorderStyles(\"row\", theme.table.rowHoverBorderColor),\n },\n [`&.${tableRowClasses.selected}`]: {\n ...getBorderStyles(\"row\", theme.colors.acce1),\n\n \"&:hover\": {\n ...getBorderStyles(\"row\", theme.table.rowHoverBorderColor),\n },\n },\n }),\n ...($variantListHead && {\n height: 16,\n \"&:first-of-type\": {\n height: 16,\n },\n\n \"tr&:first-of-type\": {\n height: 16,\n },\n }),\n })\n );\n\n/**\n * `HvTableRow` acts as a `tr` element and inherits styles from its context\n */\nexport const HvTableRow = forwardRef<HTMLElement, HvTableRowProps>(\n (\n {\n classes,\n className,\n component,\n hover = false,\n selected = false,\n expanded = false,\n striped = false,\n ...others\n },\n externalRef\n ) => {\n const { activeTheme, selectedMode } = useContext(HvThemeContext);\n const tableContext = useContext(TableContext);\n const tableSectionContext = useContext(TableSectionContext);\n\n const type = tableSectionContext?.type || \"body\";\n\n const isList = tableContext.variant === \"listrow\";\n\n const Component =\n component || tableContext?.components?.Tr || defaultComponent;\n\n const TableRow = useMemo(() => StyledTableRow(Component), [Component]);\n\n return (\n <TableRow\n ref={externalRef}\n className={clsx(\n className,\n tableSectionContext.filterClassName,\n tableRowClasses.root,\n classes?.root,\n tableRowClasses[type],\n classes?.[type],\n hover && clsx(tableRowClasses.hover, classes?.hover),\n selected && clsx(tableRowClasses.selected, classes?.selected),\n expanded && clsx(tableRowClasses.expanded, classes?.expanded),\n striped && clsx(tableRowClasses.striped, classes?.striped),\n isList &&\n type === \"body\" &&\n clsx(tableRowClasses.variantList, classes?.variantList),\n isList &&\n type === \"head\" &&\n clsx(tableRowClasses.variantListHead, classes?.variantListHead)\n )}\n role={Component === defaultComponent ? null : \"row\"}\n $hover={hover}\n $selected={selected}\n $expanded={expanded}\n $striped={striped}\n $variantList={isList && type === \"body\"}\n $variantListHead={isList && type === \"head\"}\n $type={type}\n $stripedColor={alpha(\n hexToRgb(\n activeTheme?.colors?.modes[selectedMode].atmo1 || theme.colors.atmo1\n ),\n 0.6\n )}\n {...others}\n />\n );\n }\n);\n"],"names":["defaultComponent","StyledTableRow","c","process","env","NODE_ENV","_extends","target","transientOptions","label","$hover","$selected","$expanded","$striped","$variantList","$variantListHead","$stripedColor","$type","backgroundColor","theme","table","rowBackgroundColor","rowHoverColor","transition","selectedRowBackgroundColor","borderBottom","tableRowClasses","expanded","colors","atmo1","height","getBorderStyles","rowHoverBorderColor","selected","acce1","HvTableRow","forwardRef","classes","className","component","hover","striped","others","externalRef","activeTheme","selectedMode","useContext","HvThemeContext","tableContext","TableContext","tableSectionContext","TableSectionContext","type","isList","variant","Component","components","Tr","TableRow","useMemo","clsx","filterClassName","root","variantList","variantListHead","alpha","hexToRgb","modes"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DropDownXS, DropRightXS } from "@hitachivantara/uikit-react-icons";
|
|
2
1
|
import { jsxs, Fragment, jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { DropDownXS, DropRightXS } from "@hitachivantara/uikit-react-icons";
|
|
3
3
|
import { useLabels } from "../../../hooks/useLabels.js";
|
|
4
4
|
import { HvButton } from "../../Button/Button.js";
|
|
5
5
|
import { HvTypography } from "../../Typography/Typography.js";
|
|
@@ -16,20 +16,10 @@ const CellWithExpandButton = ({
|
|
|
16
16
|
const {
|
|
17
17
|
onClick
|
|
18
18
|
} = row.getToggleRowExpandedProps();
|
|
19
|
-
return /* @__PURE__ */ jsxs(Fragment, {
|
|
20
|
-
children:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"aria-label": row.isExpanded ? labels.collapseRowButtonAriaLabel : labels.expandRowButtonAriaLabel,
|
|
24
|
-
"aria-expanded": row.isExpanded,
|
|
25
|
-
onClick,
|
|
26
|
-
children: row.isExpanded ? /* @__PURE__ */ jsx(DropDownXS, {}) : /* @__PURE__ */ jsx(DropRightXS, {})
|
|
27
|
-
}), (cell == null ? void 0 : cell.value) && /* @__PURE__ */ jsx(HvTypography, {
|
|
28
|
-
variant: "label",
|
|
29
|
-
component: "span",
|
|
30
|
-
children: cell.value
|
|
31
|
-
})]
|
|
32
|
-
});
|
|
19
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
20
|
+
/* @__PURE__ */ jsx(HvButton, { icon: true, variant: "secondaryGhost", "aria-label": row.isExpanded ? labels.collapseRowButtonAriaLabel : labels.expandRowButtonAriaLabel, "aria-expanded": row.isExpanded, onClick, children: row.isExpanded ? /* @__PURE__ */ jsx(DropDownXS, {}) : /* @__PURE__ */ jsx(DropRightXS, {}) }),
|
|
21
|
+
(cell == null ? void 0 : cell.value) && /* @__PURE__ */ jsx(HvTypography, { variant: "label", component: "span", children: cell.value })
|
|
22
|
+
] });
|
|
33
23
|
};
|
|
34
24
|
const visibleColumnsHook = (columns, {
|
|
35
25
|
instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRowExpand.js","sources":["../../../../../src/components/Table/hooks/useRowExpand.tsx"],"sourcesContent":["import { MouseEventHandler } from \"react\";\nimport {\n Hooks,\n TableExpandedToggleProps,\n UseExpandedRowProps,\n} from \"react-table\";\nimport { DropDownXS, DropRightXS } from \"@hitachivantara/uikit-react-icons\";\nimport { HvButton, HvTypography } from \"components\";\nimport { useLabels } from \"hooks\";\n\n// #region ##### TYPES #####\n\nexport interface UseHvRowExpandTableRowProps {\n expanded?: boolean;\n}\n\nexport type UseHvRowExpandTableOptions = {\n disableCreateExpandButton?: boolean;\n};\n\nexport interface UseHvRowExpandRowToggleProps extends TableExpandedToggleProps {\n onClick?: MouseEventHandler<unknown>;\n}\n\nexport interface UseHvRowExpandRowInstance<\n D extends object = Record<string, unknown>\n> extends UseExpandedRowProps<D> {\n getToggleRowExpandedProps: (\n props?: Partial<TableExpandedToggleProps>\n ) => UseHvRowExpandRowToggleProps;\n}\n\nexport type UseRowExpandProps = (<D extends object = Record<string, unknown>>(\n hooks: Hooks<D>\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\nconst DEFAULT_LABELS = {\n expandRowButtonAriaLabel: \"Expand this row\",\n collapseRowButtonAriaLabel: \"Collapse this row\",\n};\n\nexport const CellWithExpandButton = ({ row, cell, labels: labelsProp }) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const { onClick } = row.getToggleRowExpandedProps();\n\n return (\n <>\n <HvButton\n icon\n variant=\"secondaryGhost\"\n aria-label={\n row.isExpanded\n ? labels.collapseRowButtonAriaLabel\n : labels.expandRowButtonAriaLabel\n }\n aria-expanded={row.isExpanded}\n onClick={onClick}\n >\n {row.isExpanded ? <DropDownXS /> : <DropRightXS />}\n </HvButton>\n {cell?.value && (\n <HvTypography variant=\"label\" component=\"span\">\n {cell.value}\n </HvTypography>\n )}\n </>\n );\n};\n\nconst visibleColumnsHook = (columns, { instance }) => {\n if (instance.disableCreateExpandButton) {\n return columns;\n }\n\n // add a button to first data column, unless it has a custom renderer\n // if so, add an extra column instead\n const firstDataColumnIndex = columns.findIndex(\n (c) => c.id?.indexOf(\"_hv_\") !== 0\n );\n\n if (firstDataColumnIndex !== -1) {\n const firstDataColumn = columns[firstDataColumnIndex];\n\n if (firstDataColumn.Cell == null) {\n firstDataColumn.Cell = CellWithExpandButton;\n firstDataColumn.variant = \"expand\";\n\n return columns;\n }\n }\n\n const expandColumn = {\n id: \"_hv_expand\",\n variant: \"none\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithExpandButton,\n };\n\n const columnsCopy = [...columns];\n columnsCopy.splice(\n firstDataColumnIndex !== -1 ? firstDataColumnIndex : 0,\n 0,\n expandColumn\n );\n\n return columnsCopy;\n};\n\nconst getRowPropsHook = (props, { row }) => {\n const nextProps: UseHvRowExpandTableRowProps = {\n expanded: row.isExpanded,\n };\n\n return [props, nextProps];\n};\n\nconst useRowExpand: UseRowExpandProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n hooks.getRowProps.push(getRowPropsHook);\n};\nuseRowExpand.pluginName = \"useHvRowExpand\";\n\nexport default useRowExpand;\n"],"names":["DEFAULT_LABELS","expandRowButtonAriaLabel","collapseRowButtonAriaLabel","CellWithExpandButton","row","cell","labels","labelsProp","useLabels","onClick","getToggleRowExpandedProps","
|
|
1
|
+
{"version":3,"file":"useRowExpand.js","sources":["../../../../../src/components/Table/hooks/useRowExpand.tsx"],"sourcesContent":["import { MouseEventHandler } from \"react\";\nimport {\n Hooks,\n TableExpandedToggleProps,\n UseExpandedRowProps,\n} from \"react-table\";\nimport { DropDownXS, DropRightXS } from \"@hitachivantara/uikit-react-icons\";\nimport { HvButton, HvTypography } from \"components\";\nimport { useLabels } from \"hooks\";\n\n// #region ##### TYPES #####\n\nexport interface UseHvRowExpandTableRowProps {\n expanded?: boolean;\n}\n\nexport type UseHvRowExpandTableOptions = {\n disableCreateExpandButton?: boolean;\n};\n\nexport interface UseHvRowExpandRowToggleProps extends TableExpandedToggleProps {\n onClick?: MouseEventHandler<unknown>;\n}\n\nexport interface UseHvRowExpandRowInstance<\n D extends object = Record<string, unknown>\n> extends UseExpandedRowProps<D> {\n getToggleRowExpandedProps: (\n props?: Partial<TableExpandedToggleProps>\n ) => UseHvRowExpandRowToggleProps;\n}\n\nexport type UseRowExpandProps = (<D extends object = Record<string, unknown>>(\n hooks: Hooks<D>\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\nconst DEFAULT_LABELS = {\n expandRowButtonAriaLabel: \"Expand this row\",\n collapseRowButtonAriaLabel: \"Collapse this row\",\n};\n\nexport const CellWithExpandButton = ({ row, cell, labels: labelsProp }) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const { onClick } = row.getToggleRowExpandedProps();\n\n return (\n <>\n <HvButton\n icon\n variant=\"secondaryGhost\"\n aria-label={\n row.isExpanded\n ? labels.collapseRowButtonAriaLabel\n : labels.expandRowButtonAriaLabel\n }\n aria-expanded={row.isExpanded}\n onClick={onClick}\n >\n {row.isExpanded ? <DropDownXS /> : <DropRightXS />}\n </HvButton>\n {cell?.value && (\n <HvTypography variant=\"label\" component=\"span\">\n {cell.value}\n </HvTypography>\n )}\n </>\n );\n};\n\nconst visibleColumnsHook = (columns, { instance }) => {\n if (instance.disableCreateExpandButton) {\n return columns;\n }\n\n // add a button to first data column, unless it has a custom renderer\n // if so, add an extra column instead\n const firstDataColumnIndex = columns.findIndex(\n (c) => c.id?.indexOf(\"_hv_\") !== 0\n );\n\n if (firstDataColumnIndex !== -1) {\n const firstDataColumn = columns[firstDataColumnIndex];\n\n if (firstDataColumn.Cell == null) {\n firstDataColumn.Cell = CellWithExpandButton;\n firstDataColumn.variant = \"expand\";\n\n return columns;\n }\n }\n\n const expandColumn = {\n id: \"_hv_expand\",\n variant: \"none\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithExpandButton,\n };\n\n const columnsCopy = [...columns];\n columnsCopy.splice(\n firstDataColumnIndex !== -1 ? firstDataColumnIndex : 0,\n 0,\n expandColumn\n );\n\n return columnsCopy;\n};\n\nconst getRowPropsHook = (props, { row }) => {\n const nextProps: UseHvRowExpandTableRowProps = {\n expanded: row.isExpanded,\n };\n\n return [props, nextProps];\n};\n\nconst useRowExpand: UseRowExpandProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n hooks.getRowProps.push(getRowPropsHook);\n};\nuseRowExpand.pluginName = \"useHvRowExpand\";\n\nexport default useRowExpand;\n"],"names":["DEFAULT_LABELS","expandRowButtonAriaLabel","collapseRowButtonAriaLabel","CellWithExpandButton","row","cell","labels","labelsProp","useLabels","onClick","getToggleRowExpandedProps","isExpanded","value","visibleColumnsHook","columns","instance","disableCreateExpandButton","firstDataColumnIndex","findIndex","c","id","indexOf","firstDataColumn","Cell","variant","expandColumn","width","sticky","columnsCopy","splice","getRowPropsHook","props","nextProps","expanded","useRowExpand","hooks","visibleColumns","push","getRowProps","pluginName"],"mappings":";;;;;AAsCA,MAAMA,iBAAiB;AAAA,EACrBC,0BAA0B;AAAA,EAC1BC,4BAA4B;AAC9B;AAEO,MAAMC,uBAAuBA,CAAC;AAAA,EAAEC;AAAAA,EAAKC;AAAAA,EAAMC,QAAQC;AAAW,MAAM;AACnED,QAAAA,SAASE,UAAUR,gBAAgBO,UAAU;AAE7C,QAAA;AAAA,IAAEE;AAAAA,EAAAA,IAAYL,IAAIM;AAExB,SAEI,qBAAA,UAAA,EAAA,UAAA;AAAA,IAAC,oBAAA,UAAA,EACC,MAAI,MACJ,SAAQ,kBACR,cACEN,IAAIO,aACAL,OAAOJ,6BACPI,OAAOL,0BAEb,iBAAeG,IAAIO,YACnB,SAECP,UAAIO,IAAAA,iCAAc,YAAa,CAAA,CAAA,IAAI,oBAAA,aAAA,CAAA,CAAc,EACpD,CAAA;AAAA,KACCN,6BAAMO,UACJ,oBAAA,cAAA,EAAa,SAAQ,SAAQ,WAAU,QACrCP,UAAAA,KAAKO,MACR,CAAA;AAAA,EAEJ,EAAA,CAAA;AAEJ;AAEA,MAAMC,qBAAqBA,CAACC,SAAS;AAAA,EAAEC;AAAS,MAAM;AACpD,MAAIA,SAASC,2BAA2B;AAC/BF,WAAAA;AAAAA,EACT;AAIMG,QAAAA,uBAAuBH,QAAQI,UAClCC,CAAAA,MAAAA;;AAAMA,oBAAEC,OAAFD,mBAAME,QAAQ,aAAY;AAAA,GAAC;AAGpC,MAAIJ,yBAAyB,IAAI;AAC/B,UAAMK,kBAAkBR,QAAQG;AAE5BK,QAAAA,gBAAgBC,QAAQ,MAAM;AAChCD,sBAAgBC,OAAOpB;AACvBmB,sBAAgBE,UAAU;AAEnBV,aAAAA;AAAAA,IACT;AAAA,EACF;AAEA,QAAMW,eAAe;AAAA,IACnBL,IAAI;AAAA,IACJI,SAAS;AAAA,IAETE,OAAO;AAAA,IAIPC,QAAQ;AAAA,IAERJ,MAAMpB;AAAAA,EAAAA;AAGFyB,QAAAA,cAAc,CAAC,GAAGd,OAAO;AAC/Bc,cAAYC,OACVZ,yBAAyB,KAAKA,uBAAuB,GACrD,GACAQ,YAAY;AAGPG,SAAAA;AACT;AAEA,MAAME,kBAAkBA,CAACC,OAAO;AAAA,EAAE3B;AAAI,MAAM;AAC1C,QAAM4B,YAAyC;AAAA,IAC7CC,UAAU7B,IAAIO;AAAAA,EAAAA;AAGT,SAAA,CAACoB,OAAOC,SAAS;AAC1B;AAEA,MAAME,eAAmCC,CAAU,UAAA;AAC3CC,QAAAA,eAAeC,KAAKxB,kBAAkB;AACtCyB,QAAAA,YAAYD,KAAKP,eAAe;AACxC;AACAI,aAAaK,aAAa;AAE1B,MAAA,iBAAeL;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
1
2
|
import { useMemo, useCallback } from "react";
|
|
2
3
|
import { actions, ensurePluginOrder, useGetLatest, useMountedLayoutEffect, makePropGetter } from "react-table";
|
|
3
|
-
import { jsx } from "@emotion/react/jsx-runtime";
|
|
4
4
|
import { useLabels } from "../../../hooks/useLabels.js";
|
|
5
5
|
import { HvCheckBox } from "../../CheckBox/CheckBox.js";
|
|
6
6
|
actions.resetSelectedRows = "resetSelectedRows";
|
|
@@ -23,13 +23,7 @@ const CellWithCheckBox = ({
|
|
|
23
23
|
disabled,
|
|
24
24
|
indeterminate
|
|
25
25
|
} = row.getToggleRowSelectedProps();
|
|
26
|
-
return /* @__PURE__ */ jsx(HvCheckBox, {
|
|
27
|
-
onChange,
|
|
28
|
-
checked,
|
|
29
|
-
disabled,
|
|
30
|
-
indeterminate,
|
|
31
|
-
"aria-label": labels.selectRowCheckBoxAriaLabel
|
|
32
|
-
});
|
|
26
|
+
return /* @__PURE__ */ jsx(HvCheckBox, { onChange, checked, disabled, indeterminate, "aria-label": labels.selectRowCheckBoxAriaLabel });
|
|
33
27
|
};
|
|
34
28
|
const visibleColumnsHook = (columns) => {
|
|
35
29
|
const selectionColumn = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRowSelection.js","sources":["../../../../../src/components/Table/hooks/useRowSelection.tsx"],"sourcesContent":["import { ChangeEvent, useCallback, useMemo } from \"react\";\nimport {\n Hooks,\n IdType,\n PropGetter,\n Row,\n actions,\n ensurePluginOrder,\n useGetLatest,\n useMountedLayoutEffect,\n makePropGetter,\n} from \"react-table\";\nimport { useLabels } from \"hooks\";\nimport { HvCheckBox } from \"components\";\n\n// #region ##### TYPES #####\n\n// getRowProps:\nexport interface UseHvRowSelectionTableRowProps {\n selected?: boolean;\n}\n\nexport interface UseHvRowSelectionRowCheckboxProps {\n onChange?: (e: ChangeEvent, checked?: boolean) => void;\n checked?: boolean;\n disabled?: boolean;\n indeterminate?: boolean;\n}\n\nexport interface UseHvRowSelectionBulkCheckboxProps {\n onChange?: (e: ChangeEvent, checked?: boolean) => void;\n checked?: boolean;\n indeterminate?: boolean;\n}\n\nexport type UseHvRowSelectionTableOptions = Partial<{\n autoResetSelectedRows: boolean;\n autoResetLockedSelectionRows: boolean;\n selectSubRows: boolean;\n manualRowSelectedKey: string;\n applyToggleAllRowsSelectedToPrefilteredRows: boolean;\n}>;\n\nexport interface UseHvRowSelectionHooks<D extends object> {\n getToggleRowSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionRowCheckboxProps>\n >;\n getToggleAllRowsSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionBulkCheckboxProps>\n >;\n getToggleAllPageRowsSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionBulkCheckboxProps>\n >;\n}\n\nexport interface UseHvRowSelectionState<D extends object> {\n selectedRowIds: Record<IdType<D>, boolean>;\n lockedSelectionRowIds: Record<IdType<D>, boolean>;\n}\n\nexport interface UseHvRowSelectionTableInstance<D extends object> {\n toggleRowSelected: (rowId: IdType<D>, set?: boolean) => void;\n toggleAllRowsSelected: (value?: boolean) => void;\n toggleAllPageRowsSelected: (value?: boolean) => void;\n getToggleAllRowsSelectedProps: (\n props?: Partial<UseHvRowSelectionBulkCheckboxProps>\n ) => UseHvRowSelectionBulkCheckboxProps;\n getToggleAllPageRowsSelectedProps: (\n props?: Partial<UseHvRowSelectionBulkCheckboxProps>\n ) => UseHvRowSelectionBulkCheckboxProps;\n\n isNoRowsSelected: boolean;\n isNoPageRowsSelected: boolean;\n isAllRowsSelected: boolean;\n isAllPageRowsSelected: boolean;\n isAllSelectableRowsSelected: boolean;\n isAllSelectablePageRowsSelected: boolean;\n isAllSelectableRowsUnselected: boolean;\n isAllSelectablePageRowsUnselected: boolean;\n\n selectedFlatRows: Array<Row<D>>;\n}\n\nexport interface UseHvRowSelectionRowInstance {\n isSelected: boolean;\n isSomeSelected: boolean;\n toggleRowSelected: (set?: boolean) => void;\n getToggleRowSelectedProps: (\n props?: Partial<UseHvRowSelectionRowCheckboxProps>\n ) => UseHvRowSelectionRowCheckboxProps;\n}\n\nexport type UseRowSelectionProps = (<\n D extends object = Record<string, unknown>\n>(\n hooks: Hooks<D>\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\n// Actions\nactions.resetSelectedRows = \"resetSelectedRows\";\nactions.toggleAllRowsSelected = \"toggleAllRowsSelected\";\nactions.toggleRowSelected = \"toggleRowSelected\";\nactions.toggleAllPageRowsSelected = \"toggleAllPageRowsSelected\";\n\nactions.resetLockedSelectionRows = \"resetLockedSelectionRows\";\nactions.toggleRowLockedSelection = \"toggleRowLockedSelection\";\n\nconst DEFAULT_LABELS = {\n selectRowCheckBoxAriaLabel: \"Select this row\",\n};\n\nexport const CellWithCheckBox = ({ row, labels: labelsProp }) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const { onChange, checked, disabled, indeterminate } =\n row.getToggleRowSelectedProps();\n\n return (\n <HvCheckBox\n onChange={onChange}\n checked={checked}\n disabled={disabled}\n indeterminate={indeterminate}\n aria-label={labels.selectRowCheckBoxAriaLabel}\n />\n );\n};\n\nconst visibleColumnsHook = (columns) => {\n const selectionColumn = {\n id: \"_hv_selection\",\n variant: \"checkbox\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithCheckBox,\n };\n\n return [selectionColumn, ...columns];\n};\n\nconst getRowPropsHook = (props, { row }) => {\n const nextProps: UseHvRowSelectionTableRowProps = {\n selected: row.isSelected,\n };\n\n return [props, nextProps];\n};\n\nexport const defaultGetToggleRowSelectedProps = (props, { instance, row }) => {\n const { manualRowSelectedKey = \"isSelected\" } = instance;\n let checked = false;\n\n if (row.original && row.original[manualRowSelectedKey]) {\n checked = true;\n } else {\n checked = row.isSelected;\n }\n\n return [\n props,\n {\n onChange: (e, check) => {\n row.toggleRowSelected(check ?? e?.target?.checked);\n },\n disabled: row.isSelectionLocked,\n checked,\n indeterminate: row.isSomeSelected,\n },\n ];\n};\n\nexport const defaultGetToggleAllRowsSelectedProps = (props, { instance }) => [\n props,\n {\n onChange: (e) => {\n instance.toggleAllRowsSelected(e.target.checked);\n },\n checked: instance.isAllRowsSelected,\n indeterminate: Boolean(\n !instance.isAllRowsSelected &&\n Object.keys(instance.state.selectedRowIds).length\n ),\n },\n];\n\nexport const defaultGetToggleAllPageRowsSelectedProps = (\n props,\n { instance }\n) => [\n props,\n {\n onChange(e) {\n instance.toggleAllPageRowsSelected(e.target.checked);\n },\n checked: instance.isAllPageRowsSelected,\n indeterminate: Boolean(\n !instance.isAllPageRowsSelected &&\n instance.page.some(({ id }) => instance.state.selectedRowIds[id])\n ),\n },\n];\n\nexport function reducer(state, action, previousState, instance) {\n if (action.type === actions.init) {\n return {\n selectedRowIds: {},\n lockedSelectionRowIds: {},\n ...state,\n };\n }\n\n if (action.type === actions.resetSelectedRows) {\n return {\n ...state,\n selectedRowIds: instance.initialState.selectedRowIds || {},\n };\n }\n\n if (action.type === actions.toggleAllRowsSelected) {\n const { value: setSelected } = action;\n const {\n isAllRowsSelected,\n rowsById,\n initialRowsById,\n nonGroupedRowsById = rowsById,\n applyToggleAllRowsSelectedToPrefilteredRows,\n } = instance;\n\n const rowsToSelect = applyToggleAllRowsSelectedToPrefilteredRows\n ? initialRowsById\n : nonGroupedRowsById;\n\n const selectAll =\n typeof setSelected !== \"undefined\" ? setSelected : !isAllRowsSelected;\n\n // Only remove/add the rows that are visible on the screen\n // Leave all the other rows that are selected alone.\n const selectedRowIds = { ...state.selectedRowIds };\n\n if (selectAll) {\n Object.keys(rowsToSelect).forEach((rowId) => {\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n if (!isSelectionLocked) {\n selectedRowIds[rowId] = true;\n }\n });\n } else {\n Object.keys(rowsToSelect).forEach((rowId) => {\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n if (!isSelectionLocked) {\n delete selectedRowIds[rowId];\n }\n });\n }\n\n return {\n ...state,\n selectedRowIds,\n };\n }\n\n if (action.type === actions.toggleRowSelected) {\n const { id, value: setSelected } = action;\n const isSelectionLocked = state.lockedSelectionRowIds[id];\n if (isSelectionLocked) {\n return state;\n }\n\n const { rowsById, selectSubRows = true, getSubRows } = instance;\n const isSelected = state.selectedRowIds[id];\n const shouldExist =\n typeof setSelected !== \"undefined\" ? setSelected : !isSelected;\n\n if (isSelected === shouldExist) {\n return state;\n }\n\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n\n if (!row.isGrouped) {\n if (shouldExist) {\n newSelectedRowIds[rowId] = true;\n } else {\n delete newSelectedRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n handleRowById(id);\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n\n if (action.type === actions.toggleAllPageRowsSelected) {\n const { value: setSelected } = action;\n const {\n page,\n rowsById,\n selectSubRows = true,\n isAllPageRowsSelected,\n getSubRows,\n } = instance;\n\n const selectAll =\n typeof setSelected !== \"undefined\" ? setSelected : !isAllPageRowsSelected;\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n\n if (!isSelectionLocked && !row.isGrouped) {\n if (selectAll) {\n newSelectedRowIds[rowId] = true;\n } else {\n delete newSelectedRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n page.forEach((row) => handleRowById(row.id));\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n\n if (action.type === actions.resetLockedSelectionRows) {\n return {\n ...state,\n lockedSelectionRowIds: instance.initialState.lockedSelectionRowIds || {},\n };\n }\n\n if (action.type === actions.toggleRowLockedSelection) {\n const { id, value: setLockedSelection } = action;\n const { rowsById, selectSubRows = true, getSubRows } = instance;\n const isLockedSelection = state.lockedSelectionRowIds[id];\n const shouldExist =\n typeof setLockedSelection !== \"undefined\"\n ? setLockedSelection\n : !isLockedSelection;\n\n if (isLockedSelection === shouldExist) {\n return state;\n }\n\n const newLockedSelectionRowIds = { ...state.lockedSelectionRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n\n if (!row.isGrouped) {\n if (shouldExist) {\n newLockedSelectionRowIds[rowId] = true;\n } else {\n delete newLockedSelectionRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n handleRowById(id);\n\n return {\n ...state,\n lockedSelectionRowIds: newLockedSelectionRowIds,\n };\n }\n\n return state;\n}\n\nfunction getRowIsSelected(row, selectedRowIds, getSubRows) {\n if (selectedRowIds[row.id]) {\n return true;\n }\n\n const subRows = getSubRows(row);\n\n if (subRows && subRows.length) {\n let allChildrenSelected = true;\n let someSelected = false;\n\n subRows.forEach((subRow) => {\n // Bail out early if we know both of these\n if (someSelected && !allChildrenSelected) {\n return;\n }\n\n if (getRowIsSelected(subRow, selectedRowIds, getSubRows)) {\n someSelected = true;\n } else {\n allChildrenSelected = false;\n }\n });\n\n if (allChildrenSelected) {\n return true;\n }\n\n if (someSelected) {\n return null;\n }\n }\n\n return false;\n}\n\nexport function useInstance(instance) {\n const {\n data,\n rows,\n getHooks,\n plugins,\n rowsById,\n initialRowsById,\n nonGroupedRowsById = rowsById,\n autoResetSelectedRows = true,\n autoResetLockedSelectionRows = true,\n state: { selectedRowIds, lockedSelectionRowIds },\n selectSubRows = true,\n dispatch,\n page,\n getSubRows,\n applyToggleAllRowsSelectedToPrefilteredRows,\n } = instance;\n\n ensurePluginOrder(\n plugins,\n [\"useFilters\", \"useGroupBy\", \"useSortBy\", \"useExpanded\", \"usePagination\"],\n \"useHvRowSelection\"\n );\n\n const rowsToSelect = applyToggleAllRowsSelectedToPrefilteredRows\n ? initialRowsById\n : nonGroupedRowsById;\n\n const selectedFlatRows = useMemo(() => {\n const selectedRows: any[] = [];\n\n rows.forEach((row) => {\n const isSelected = selectSubRows\n ? getRowIsSelected(row, selectedRowIds, getSubRows)\n : !!selectedRowIds[row.id];\n row.isSelected = !!isSelected;\n row.isSomeSelected = isSelected === null;\n\n if (isSelected) {\n selectedRows.push(row);\n }\n });\n\n return selectedRows;\n }, [rows, selectSubRows, selectedRowIds, getSubRows]);\n\n const existsLockedRows = !!Object.keys(lockedSelectionRowIds).length;\n\n const isNoRowsSelected = !(\n Object.keys(rowsToSelect).length && selectedFlatRows.length\n );\n\n let isNoPageRowsSelected;\n let isAllRowsSelected;\n let isAllPageRowsSelected;\n\n let isAllSelectableRowsUnselected;\n let isAllSelectablePageRowsUnselected;\n let isAllSelectableRowsSelected;\n let isAllSelectablePageRowsSelected;\n\n if (isNoRowsSelected) {\n isAllRowsSelected = false;\n isAllPageRowsSelected = false;\n\n isAllSelectableRowsSelected =\n existsLockedRows &&\n !Object.keys(rowsToSelect).some((id) => !lockedSelectionRowIds[id]);\n isAllSelectablePageRowsSelected = isAllSelectableRowsSelected;\n\n isAllSelectableRowsUnselected = isAllSelectableRowsSelected;\n isAllSelectablePageRowsUnselected = isAllSelectableRowsSelected;\n\n isNoPageRowsSelected = true;\n } else {\n isAllRowsSelected = !Object.keys(rowsToSelect).some(\n (id) => !selectedRowIds[id]\n );\n\n if (isAllRowsSelected) {\n isAllSelectableRowsSelected = true;\n isAllSelectablePageRowsSelected = true;\n\n isAllSelectableRowsUnselected =\n existsLockedRows &&\n Object.keys(rowsToSelect).filter((id) => !lockedSelectionRowIds[id])\n .length === 0;\n isAllSelectablePageRowsUnselected = isAllSelectableRowsUnselected;\n\n isNoPageRowsSelected = false;\n isAllPageRowsSelected = true;\n } else {\n isAllSelectableRowsSelected =\n existsLockedRows &&\n !Object.keys(rowsToSelect)\n .filter((id) => !lockedSelectionRowIds[id])\n .some((id) => !selectedRowIds[id]);\n\n isAllSelectableRowsUnselected =\n !existsLockedRows ||\n !Object.keys(rowsToSelect)\n .filter((id) => !lockedSelectionRowIds[id])\n .some((id) => selectedRowIds[id]);\n\n isAllPageRowsSelected = !(\n page &&\n page.length &&\n page.some(({ id }) => !selectedRowIds[id])\n );\n\n if (isAllPageRowsSelected) {\n isAllSelectablePageRowsSelected = true;\n\n isAllSelectablePageRowsUnselected =\n existsLockedRows &&\n page &&\n page.length &&\n page.filter(({ id }) => !lockedSelectionRowIds[id]).length === 0;\n\n isNoPageRowsSelected = false;\n } else {\n isAllSelectablePageRowsSelected =\n existsLockedRows &&\n !(\n page &&\n page.length &&\n page\n .filter(({ id }) => !lockedSelectionRowIds[id])\n .some(({ id }) => !selectedRowIds[id])\n );\n\n isAllSelectablePageRowsUnselected =\n !existsLockedRows ||\n !(\n page &&\n page.length &&\n page\n .filter(({ id }) => !lockedSelectionRowIds[id])\n .some(({ id }) => selectedRowIds[id])\n );\n\n isNoPageRowsSelected = !(\n page &&\n page.length &&\n page.some(({ id }) => selectedRowIds[id])\n );\n }\n }\n }\n\n const getAutoResetSelectedRows = useGetLatest(autoResetSelectedRows);\n\n const getAutoResetLockedSelectionRows = useGetLatest(\n autoResetLockedSelectionRows\n );\n\n useMountedLayoutEffect(() => {\n if (getAutoResetSelectedRows()) {\n dispatch({ type: actions.resetSelectedRows });\n }\n if (getAutoResetLockedSelectionRows()) {\n dispatch({ type: actions.resetLockedSelectionRows });\n }\n }, [dispatch, data]);\n\n const toggleAllRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllRowsSelected, value }),\n [dispatch]\n );\n\n const toggleAllPageRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllPageRowsSelected, value }),\n [dispatch]\n );\n\n const toggleRowSelected = useCallback(\n (id, value) => dispatch({ type: actions.toggleRowSelected, id, value }),\n [dispatch]\n );\n\n const getInstance = useGetLatest(instance);\n\n const getToggleAllRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllRowsSelectedProps,\n {\n instance: getInstance(),\n }\n );\n\n const getToggleAllPageRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllPageRowsSelectedProps,\n { instance: getInstance() }\n );\n\n const toggleRowLockedSelection = useCallback(\n (id, value) =>\n dispatch({ type: actions.toggleRowLockedSelection, id, value }),\n [dispatch]\n );\n\n Object.assign(instance, {\n selectedFlatRows,\n isNoRowsSelected,\n isNoPageRowsSelected,\n isAllRowsSelected,\n isAllPageRowsSelected,\n isAllSelectableRowsSelected,\n isAllSelectablePageRowsSelected,\n isAllSelectableRowsUnselected,\n isAllSelectablePageRowsUnselected,\n toggleRowSelected,\n toggleAllRowsSelected,\n getToggleAllRowsSelectedProps,\n getToggleAllPageRowsSelectedProps,\n toggleAllPageRowsSelected,\n toggleRowLockedSelection,\n });\n}\n\nexport function prepareRow(row, { instance }) {\n row.toggleRowSelected = (set) => instance.toggleRowSelected(row.id, set);\n row.getToggleRowSelectedProps = makePropGetter(\n instance.getHooks().getToggleRowSelectedProps,\n {\n instance,\n row,\n }\n );\n\n row.toggleRowLockedSelection = (set) =>\n instance.toggleRowLockedSelection(row.id, set);\n row.isSelectionLocked =\n instance.state?.lockedSelectionRowIds?.[row.id] || false;\n}\n\nconst useRowSelection: UseRowSelectionProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n\n hooks.getRowProps.push(getRowPropsHook);\n\n hooks.getToggleRowSelectedProps = [defaultGetToggleRowSelectedProps];\n hooks.getToggleAllRowsSelectedProps = [defaultGetToggleAllRowsSelectedProps];\n hooks.getToggleAllPageRowsSelectedProps = [\n defaultGetToggleAllPageRowsSelectedProps,\n ];\n\n hooks.stateReducers.push(reducer);\n hooks.useInstance.push(useInstance);\n hooks.prepareRow.push(prepareRow);\n};\n\nuseRowSelection.pluginName = \"useHvRowSelection\";\n\nexport default useRowSelection;\n"],"names":["actions","resetSelectedRows","toggleAllRowsSelected","toggleRowSelected","toggleAllPageRowsSelected","resetLockedSelectionRows","toggleRowLockedSelection","DEFAULT_LABELS","selectRowCheckBoxAriaLabel","CellWithCheckBox","row","labels","labelsProp","useLabels","onChange","checked","disabled","indeterminate","getToggleRowSelectedProps","HvCheckBox","visibleColumnsHook","columns","selectionColumn","id","variant","width","sticky","Cell","getRowPropsHook","props","nextProps","selected","isSelected","defaultGetToggleRowSelectedProps","instance","manualRowSelectedKey","original","e","check","target","isSelectionLocked","isSomeSelected","defaultGetToggleAllRowsSelectedProps","isAllRowsSelected","Boolean","Object","keys","state","selectedRowIds","length","defaultGetToggleAllPageRowsSelectedProps","isAllPageRowsSelected","page","some","reducer","action","previousState","type","init","lockedSelectionRowIds","initialState","value","setSelected","rowsById","initialRowsById","nonGroupedRowsById","applyToggleAllRowsSelectedToPrefilteredRows","rowsToSelect","selectAll","forEach","rowId","selectSubRows","getSubRows","shouldExist","newSelectedRowIds","handleRowById","isGrouped","subrow","setLockedSelection","isLockedSelection","newLockedSelectionRowIds","getRowIsSelected","subRows","allChildrenSelected","someSelected","subRow","useInstance","data","rows","getHooks","plugins","autoResetSelectedRows","autoResetLockedSelectionRows","dispatch","selectedFlatRows","useMemo","selectedRows","push","existsLockedRows","isNoRowsSelected","isNoPageRowsSelected","isAllSelectableRowsUnselected","isAllSelectablePageRowsUnselected","isAllSelectableRowsSelected","isAllSelectablePageRowsSelected","filter","getAutoResetSelectedRows","useGetLatest","getAutoResetLockedSelectionRows","useMountedLayoutEffect","useCallback","getInstance","getToggleAllRowsSelectedProps","makePropGetter","getToggleAllPageRowsSelectedProps","assign","prepareRow","set","useRowSelection","hooks","visibleColumns","getRowProps","stateReducers","pluginName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useRowSelection.js","sources":["../../../../../src/components/Table/hooks/useRowSelection.tsx"],"sourcesContent":["import { ChangeEvent, useCallback, useMemo } from \"react\";\nimport {\n Hooks,\n IdType,\n PropGetter,\n Row,\n actions,\n ensurePluginOrder,\n useGetLatest,\n useMountedLayoutEffect,\n makePropGetter,\n} from \"react-table\";\nimport { useLabels } from \"hooks\";\nimport { HvCheckBox } from \"components\";\n\n// #region ##### TYPES #####\n\n// getRowProps:\nexport interface UseHvRowSelectionTableRowProps {\n selected?: boolean;\n}\n\nexport interface UseHvRowSelectionRowCheckboxProps {\n onChange?: (e: ChangeEvent, checked?: boolean) => void;\n checked?: boolean;\n disabled?: boolean;\n indeterminate?: boolean;\n}\n\nexport interface UseHvRowSelectionBulkCheckboxProps {\n onChange?: (e: ChangeEvent, checked?: boolean) => void;\n checked?: boolean;\n indeterminate?: boolean;\n}\n\nexport type UseHvRowSelectionTableOptions = Partial<{\n autoResetSelectedRows: boolean;\n autoResetLockedSelectionRows: boolean;\n selectSubRows: boolean;\n manualRowSelectedKey: string;\n applyToggleAllRowsSelectedToPrefilteredRows: boolean;\n}>;\n\nexport interface UseHvRowSelectionHooks<D extends object> {\n getToggleRowSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionRowCheckboxProps>\n >;\n getToggleAllRowsSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionBulkCheckboxProps>\n >;\n getToggleAllPageRowsSelectedProps: Array<\n PropGetter<D, UseHvRowSelectionBulkCheckboxProps>\n >;\n}\n\nexport interface UseHvRowSelectionState<D extends object> {\n selectedRowIds: Record<IdType<D>, boolean>;\n lockedSelectionRowIds: Record<IdType<D>, boolean>;\n}\n\nexport interface UseHvRowSelectionTableInstance<D extends object> {\n toggleRowSelected: (rowId: IdType<D>, set?: boolean) => void;\n toggleAllRowsSelected: (value?: boolean) => void;\n toggleAllPageRowsSelected: (value?: boolean) => void;\n getToggleAllRowsSelectedProps: (\n props?: Partial<UseHvRowSelectionBulkCheckboxProps>\n ) => UseHvRowSelectionBulkCheckboxProps;\n getToggleAllPageRowsSelectedProps: (\n props?: Partial<UseHvRowSelectionBulkCheckboxProps>\n ) => UseHvRowSelectionBulkCheckboxProps;\n\n isNoRowsSelected: boolean;\n isNoPageRowsSelected: boolean;\n isAllRowsSelected: boolean;\n isAllPageRowsSelected: boolean;\n isAllSelectableRowsSelected: boolean;\n isAllSelectablePageRowsSelected: boolean;\n isAllSelectableRowsUnselected: boolean;\n isAllSelectablePageRowsUnselected: boolean;\n\n selectedFlatRows: Array<Row<D>>;\n}\n\nexport interface UseHvRowSelectionRowInstance {\n isSelected: boolean;\n isSomeSelected: boolean;\n toggleRowSelected: (set?: boolean) => void;\n getToggleRowSelectedProps: (\n props?: Partial<UseHvRowSelectionRowCheckboxProps>\n ) => UseHvRowSelectionRowCheckboxProps;\n}\n\nexport type UseRowSelectionProps = (<\n D extends object = Record<string, unknown>\n>(\n hooks: Hooks<D>\n) => void) & { pluginName: string };\n\n// #endregion ##### TYPES #####\n\n// Actions\nactions.resetSelectedRows = \"resetSelectedRows\";\nactions.toggleAllRowsSelected = \"toggleAllRowsSelected\";\nactions.toggleRowSelected = \"toggleRowSelected\";\nactions.toggleAllPageRowsSelected = \"toggleAllPageRowsSelected\";\n\nactions.resetLockedSelectionRows = \"resetLockedSelectionRows\";\nactions.toggleRowLockedSelection = \"toggleRowLockedSelection\";\n\nconst DEFAULT_LABELS = {\n selectRowCheckBoxAriaLabel: \"Select this row\",\n};\n\nexport const CellWithCheckBox = ({ row, labels: labelsProp }) => {\n const labels = useLabels(DEFAULT_LABELS, labelsProp);\n\n const { onChange, checked, disabled, indeterminate } =\n row.getToggleRowSelectedProps();\n\n return (\n <HvCheckBox\n onChange={onChange}\n checked={checked}\n disabled={disabled}\n indeterminate={indeterminate}\n aria-label={labels.selectRowCheckBoxAriaLabel}\n />\n );\n};\n\nconst visibleColumnsHook = (columns) => {\n const selectionColumn = {\n id: \"_hv_selection\",\n variant: \"checkbox\",\n\n width: 32,\n\n // this will only work when using useHvTableSticky\n // but ensures it stays left of any sticky column\n sticky: \"left\",\n\n Cell: CellWithCheckBox,\n };\n\n return [selectionColumn, ...columns];\n};\n\nconst getRowPropsHook = (props, { row }) => {\n const nextProps: UseHvRowSelectionTableRowProps = {\n selected: row.isSelected,\n };\n\n return [props, nextProps];\n};\n\nexport const defaultGetToggleRowSelectedProps = (props, { instance, row }) => {\n const { manualRowSelectedKey = \"isSelected\" } = instance;\n let checked = false;\n\n if (row.original && row.original[manualRowSelectedKey]) {\n checked = true;\n } else {\n checked = row.isSelected;\n }\n\n return [\n props,\n {\n onChange: (e, check) => {\n row.toggleRowSelected(check ?? e?.target?.checked);\n },\n disabled: row.isSelectionLocked,\n checked,\n indeterminate: row.isSomeSelected,\n },\n ];\n};\n\nexport const defaultGetToggleAllRowsSelectedProps = (props, { instance }) => [\n props,\n {\n onChange: (e) => {\n instance.toggleAllRowsSelected(e.target.checked);\n },\n checked: instance.isAllRowsSelected,\n indeterminate: Boolean(\n !instance.isAllRowsSelected &&\n Object.keys(instance.state.selectedRowIds).length\n ),\n },\n];\n\nexport const defaultGetToggleAllPageRowsSelectedProps = (\n props,\n { instance }\n) => [\n props,\n {\n onChange(e) {\n instance.toggleAllPageRowsSelected(e.target.checked);\n },\n checked: instance.isAllPageRowsSelected,\n indeterminate: Boolean(\n !instance.isAllPageRowsSelected &&\n instance.page.some(({ id }) => instance.state.selectedRowIds[id])\n ),\n },\n];\n\nexport function reducer(state, action, previousState, instance) {\n if (action.type === actions.init) {\n return {\n selectedRowIds: {},\n lockedSelectionRowIds: {},\n ...state,\n };\n }\n\n if (action.type === actions.resetSelectedRows) {\n return {\n ...state,\n selectedRowIds: instance.initialState.selectedRowIds || {},\n };\n }\n\n if (action.type === actions.toggleAllRowsSelected) {\n const { value: setSelected } = action;\n const {\n isAllRowsSelected,\n rowsById,\n initialRowsById,\n nonGroupedRowsById = rowsById,\n applyToggleAllRowsSelectedToPrefilteredRows,\n } = instance;\n\n const rowsToSelect = applyToggleAllRowsSelectedToPrefilteredRows\n ? initialRowsById\n : nonGroupedRowsById;\n\n const selectAll =\n typeof setSelected !== \"undefined\" ? setSelected : !isAllRowsSelected;\n\n // Only remove/add the rows that are visible on the screen\n // Leave all the other rows that are selected alone.\n const selectedRowIds = { ...state.selectedRowIds };\n\n if (selectAll) {\n Object.keys(rowsToSelect).forEach((rowId) => {\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n if (!isSelectionLocked) {\n selectedRowIds[rowId] = true;\n }\n });\n } else {\n Object.keys(rowsToSelect).forEach((rowId) => {\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n if (!isSelectionLocked) {\n delete selectedRowIds[rowId];\n }\n });\n }\n\n return {\n ...state,\n selectedRowIds,\n };\n }\n\n if (action.type === actions.toggleRowSelected) {\n const { id, value: setSelected } = action;\n const isSelectionLocked = state.lockedSelectionRowIds[id];\n if (isSelectionLocked) {\n return state;\n }\n\n const { rowsById, selectSubRows = true, getSubRows } = instance;\n const isSelected = state.selectedRowIds[id];\n const shouldExist =\n typeof setSelected !== \"undefined\" ? setSelected : !isSelected;\n\n if (isSelected === shouldExist) {\n return state;\n }\n\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n\n if (!row.isGrouped) {\n if (shouldExist) {\n newSelectedRowIds[rowId] = true;\n } else {\n delete newSelectedRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n handleRowById(id);\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n\n if (action.type === actions.toggleAllPageRowsSelected) {\n const { value: setSelected } = action;\n const {\n page,\n rowsById,\n selectSubRows = true,\n isAllPageRowsSelected,\n getSubRows,\n } = instance;\n\n const selectAll =\n typeof setSelected !== \"undefined\" ? setSelected : !isAllPageRowsSelected;\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n const isSelectionLocked = state.lockedSelectionRowIds[rowId];\n\n if (!isSelectionLocked && !row.isGrouped) {\n if (selectAll) {\n newSelectedRowIds[rowId] = true;\n } else {\n delete newSelectedRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n page.forEach((row) => handleRowById(row.id));\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n\n if (action.type === actions.resetLockedSelectionRows) {\n return {\n ...state,\n lockedSelectionRowIds: instance.initialState.lockedSelectionRowIds || {},\n };\n }\n\n if (action.type === actions.toggleRowLockedSelection) {\n const { id, value: setLockedSelection } = action;\n const { rowsById, selectSubRows = true, getSubRows } = instance;\n const isLockedSelection = state.lockedSelectionRowIds[id];\n const shouldExist =\n typeof setLockedSelection !== \"undefined\"\n ? setLockedSelection\n : !isLockedSelection;\n\n if (isLockedSelection === shouldExist) {\n return state;\n }\n\n const newLockedSelectionRowIds = { ...state.lockedSelectionRowIds };\n\n const handleRowById = (rowId) => {\n const row = rowsById[rowId];\n\n if (!row.isGrouped) {\n if (shouldExist) {\n newLockedSelectionRowIds[rowId] = true;\n } else {\n delete newLockedSelectionRowIds[rowId];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((subrow) => {\n handleRowById(subrow.id);\n });\n }\n };\n\n handleRowById(id);\n\n return {\n ...state,\n lockedSelectionRowIds: newLockedSelectionRowIds,\n };\n }\n\n return state;\n}\n\nfunction getRowIsSelected(row, selectedRowIds, getSubRows) {\n if (selectedRowIds[row.id]) {\n return true;\n }\n\n const subRows = getSubRows(row);\n\n if (subRows && subRows.length) {\n let allChildrenSelected = true;\n let someSelected = false;\n\n subRows.forEach((subRow) => {\n // Bail out early if we know both of these\n if (someSelected && !allChildrenSelected) {\n return;\n }\n\n if (getRowIsSelected(subRow, selectedRowIds, getSubRows)) {\n someSelected = true;\n } else {\n allChildrenSelected = false;\n }\n });\n\n if (allChildrenSelected) {\n return true;\n }\n\n if (someSelected) {\n return null;\n }\n }\n\n return false;\n}\n\nexport function useInstance(instance) {\n const {\n data,\n rows,\n getHooks,\n plugins,\n rowsById,\n initialRowsById,\n nonGroupedRowsById = rowsById,\n autoResetSelectedRows = true,\n autoResetLockedSelectionRows = true,\n state: { selectedRowIds, lockedSelectionRowIds },\n selectSubRows = true,\n dispatch,\n page,\n getSubRows,\n applyToggleAllRowsSelectedToPrefilteredRows,\n } = instance;\n\n ensurePluginOrder(\n plugins,\n [\"useFilters\", \"useGroupBy\", \"useSortBy\", \"useExpanded\", \"usePagination\"],\n \"useHvRowSelection\"\n );\n\n const rowsToSelect = applyToggleAllRowsSelectedToPrefilteredRows\n ? initialRowsById\n : nonGroupedRowsById;\n\n const selectedFlatRows = useMemo(() => {\n const selectedRows: any[] = [];\n\n rows.forEach((row) => {\n const isSelected = selectSubRows\n ? getRowIsSelected(row, selectedRowIds, getSubRows)\n : !!selectedRowIds[row.id];\n row.isSelected = !!isSelected;\n row.isSomeSelected = isSelected === null;\n\n if (isSelected) {\n selectedRows.push(row);\n }\n });\n\n return selectedRows;\n }, [rows, selectSubRows, selectedRowIds, getSubRows]);\n\n const existsLockedRows = !!Object.keys(lockedSelectionRowIds).length;\n\n const isNoRowsSelected = !(\n Object.keys(rowsToSelect).length && selectedFlatRows.length\n );\n\n let isNoPageRowsSelected;\n let isAllRowsSelected;\n let isAllPageRowsSelected;\n\n let isAllSelectableRowsUnselected;\n let isAllSelectablePageRowsUnselected;\n let isAllSelectableRowsSelected;\n let isAllSelectablePageRowsSelected;\n\n if (isNoRowsSelected) {\n isAllRowsSelected = false;\n isAllPageRowsSelected = false;\n\n isAllSelectableRowsSelected =\n existsLockedRows &&\n !Object.keys(rowsToSelect).some((id) => !lockedSelectionRowIds[id]);\n isAllSelectablePageRowsSelected = isAllSelectableRowsSelected;\n\n isAllSelectableRowsUnselected = isAllSelectableRowsSelected;\n isAllSelectablePageRowsUnselected = isAllSelectableRowsSelected;\n\n isNoPageRowsSelected = true;\n } else {\n isAllRowsSelected = !Object.keys(rowsToSelect).some(\n (id) => !selectedRowIds[id]\n );\n\n if (isAllRowsSelected) {\n isAllSelectableRowsSelected = true;\n isAllSelectablePageRowsSelected = true;\n\n isAllSelectableRowsUnselected =\n existsLockedRows &&\n Object.keys(rowsToSelect).filter((id) => !lockedSelectionRowIds[id])\n .length === 0;\n isAllSelectablePageRowsUnselected = isAllSelectableRowsUnselected;\n\n isNoPageRowsSelected = false;\n isAllPageRowsSelected = true;\n } else {\n isAllSelectableRowsSelected =\n existsLockedRows &&\n !Object.keys(rowsToSelect)\n .filter((id) => !lockedSelectionRowIds[id])\n .some((id) => !selectedRowIds[id]);\n\n isAllSelectableRowsUnselected =\n !existsLockedRows ||\n !Object.keys(rowsToSelect)\n .filter((id) => !lockedSelectionRowIds[id])\n .some((id) => selectedRowIds[id]);\n\n isAllPageRowsSelected = !(\n page &&\n page.length &&\n page.some(({ id }) => !selectedRowIds[id])\n );\n\n if (isAllPageRowsSelected) {\n isAllSelectablePageRowsSelected = true;\n\n isAllSelectablePageRowsUnselected =\n existsLockedRows &&\n page &&\n page.length &&\n page.filter(({ id }) => !lockedSelectionRowIds[id]).length === 0;\n\n isNoPageRowsSelected = false;\n } else {\n isAllSelectablePageRowsSelected =\n existsLockedRows &&\n !(\n page &&\n page.length &&\n page\n .filter(({ id }) => !lockedSelectionRowIds[id])\n .some(({ id }) => !selectedRowIds[id])\n );\n\n isAllSelectablePageRowsUnselected =\n !existsLockedRows ||\n !(\n page &&\n page.length &&\n page\n .filter(({ id }) => !lockedSelectionRowIds[id])\n .some(({ id }) => selectedRowIds[id])\n );\n\n isNoPageRowsSelected = !(\n page &&\n page.length &&\n page.some(({ id }) => selectedRowIds[id])\n );\n }\n }\n }\n\n const getAutoResetSelectedRows = useGetLatest(autoResetSelectedRows);\n\n const getAutoResetLockedSelectionRows = useGetLatest(\n autoResetLockedSelectionRows\n );\n\n useMountedLayoutEffect(() => {\n if (getAutoResetSelectedRows()) {\n dispatch({ type: actions.resetSelectedRows });\n }\n if (getAutoResetLockedSelectionRows()) {\n dispatch({ type: actions.resetLockedSelectionRows });\n }\n }, [dispatch, data]);\n\n const toggleAllRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllRowsSelected, value }),\n [dispatch]\n );\n\n const toggleAllPageRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllPageRowsSelected, value }),\n [dispatch]\n );\n\n const toggleRowSelected = useCallback(\n (id, value) => dispatch({ type: actions.toggleRowSelected, id, value }),\n [dispatch]\n );\n\n const getInstance = useGetLatest(instance);\n\n const getToggleAllRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllRowsSelectedProps,\n {\n instance: getInstance(),\n }\n );\n\n const getToggleAllPageRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllPageRowsSelectedProps,\n { instance: getInstance() }\n );\n\n const toggleRowLockedSelection = useCallback(\n (id, value) =>\n dispatch({ type: actions.toggleRowLockedSelection, id, value }),\n [dispatch]\n );\n\n Object.assign(instance, {\n selectedFlatRows,\n isNoRowsSelected,\n isNoPageRowsSelected,\n isAllRowsSelected,\n isAllPageRowsSelected,\n isAllSelectableRowsSelected,\n isAllSelectablePageRowsSelected,\n isAllSelectableRowsUnselected,\n isAllSelectablePageRowsUnselected,\n toggleRowSelected,\n toggleAllRowsSelected,\n getToggleAllRowsSelectedProps,\n getToggleAllPageRowsSelectedProps,\n toggleAllPageRowsSelected,\n toggleRowLockedSelection,\n });\n}\n\nexport function prepareRow(row, { instance }) {\n row.toggleRowSelected = (set) => instance.toggleRowSelected(row.id, set);\n row.getToggleRowSelectedProps = makePropGetter(\n instance.getHooks().getToggleRowSelectedProps,\n {\n instance,\n row,\n }\n );\n\n row.toggleRowLockedSelection = (set) =>\n instance.toggleRowLockedSelection(row.id, set);\n row.isSelectionLocked =\n instance.state?.lockedSelectionRowIds?.[row.id] || false;\n}\n\nconst useRowSelection: UseRowSelectionProps = (hooks) => {\n hooks.visibleColumns.push(visibleColumnsHook);\n\n hooks.getRowProps.push(getRowPropsHook);\n\n hooks.getToggleRowSelectedProps = [defaultGetToggleRowSelectedProps];\n hooks.getToggleAllRowsSelectedProps = [defaultGetToggleAllRowsSelectedProps];\n hooks.getToggleAllPageRowsSelectedProps = [\n defaultGetToggleAllPageRowsSelectedProps,\n ];\n\n hooks.stateReducers.push(reducer);\n hooks.useInstance.push(useInstance);\n hooks.prepareRow.push(prepareRow);\n};\n\nuseRowSelection.pluginName = \"useHvRowSelection\";\n\nexport default useRowSelection;\n"],"names":["actions","resetSelectedRows","toggleAllRowsSelected","toggleRowSelected","toggleAllPageRowsSelected","resetLockedSelectionRows","toggleRowLockedSelection","DEFAULT_LABELS","selectRowCheckBoxAriaLabel","CellWithCheckBox","row","labels","labelsProp","useLabels","onChange","checked","disabled","indeterminate","getToggleRowSelectedProps","visibleColumnsHook","columns","selectionColumn","id","variant","width","sticky","Cell","getRowPropsHook","props","nextProps","selected","isSelected","defaultGetToggleRowSelectedProps","instance","manualRowSelectedKey","original","e","check","target","isSelectionLocked","isSomeSelected","defaultGetToggleAllRowsSelectedProps","isAllRowsSelected","Boolean","Object","keys","state","selectedRowIds","length","defaultGetToggleAllPageRowsSelectedProps","isAllPageRowsSelected","page","some","reducer","action","previousState","type","init","lockedSelectionRowIds","initialState","value","setSelected","rowsById","initialRowsById","nonGroupedRowsById","applyToggleAllRowsSelectedToPrefilteredRows","rowsToSelect","selectAll","forEach","rowId","selectSubRows","getSubRows","shouldExist","newSelectedRowIds","handleRowById","isGrouped","subrow","setLockedSelection","isLockedSelection","newLockedSelectionRowIds","getRowIsSelected","subRows","allChildrenSelected","someSelected","subRow","useInstance","data","rows","getHooks","plugins","autoResetSelectedRows","autoResetLockedSelectionRows","dispatch","selectedFlatRows","useMemo","selectedRows","push","existsLockedRows","isNoRowsSelected","isNoPageRowsSelected","isAllSelectableRowsUnselected","isAllSelectablePageRowsUnselected","isAllSelectableRowsSelected","isAllSelectablePageRowsSelected","filter","getAutoResetSelectedRows","useGetLatest","getAutoResetLockedSelectionRows","useMountedLayoutEffect","useCallback","getInstance","getToggleAllRowsSelectedProps","makePropGetter","getToggleAllPageRowsSelectedProps","assign","prepareRow","set","useRowSelection","hooks","visibleColumns","getRowProps","stateReducers","pluginName"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
1
2
|
import { useMemo } from "react";
|
|
2
3
|
import dayjs from "dayjs";
|
|
3
|
-
import { jsx } from "@emotion/react/jsx-runtime";
|
|
4
4
|
import { HvOverflowTooltip } from "../../../OverflowTooltip/OverflowTooltip.js";
|
|
5
5
|
const HvDateColumnCell = ({
|
|
6
6
|
date,
|
|
@@ -11,9 +11,7 @@ const HvDateColumnCell = ({
|
|
|
11
11
|
return dayjs(date).format(dateFormat !== "ISO8601" ? dateFormat : void 0);
|
|
12
12
|
return "\u2014";
|
|
13
13
|
}, [date, dateFormat]);
|
|
14
|
-
return /* @__PURE__ */ jsx(HvOverflowTooltip, {
|
|
15
|
-
data: formattedDate
|
|
16
|
-
});
|
|
14
|
+
return /* @__PURE__ */ jsx(HvOverflowTooltip, { data: formattedDate });
|
|
17
15
|
};
|
|
18
16
|
const DateColumnCell = HvDateColumnCell;
|
|
19
17
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateColumnCell.js","sources":["../../../../../../src/components/Table/renderers/DateColumnCell/DateColumnCell.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport dayjs from \"dayjs\";\nimport { HvOverflowTooltip } from \"components\";\n\nexport interface HvDateColumnCellProp {\n /** The date's text representation format. */\n dateFormat?: string;\n /** Date to render. */\n date?: string;\n}\n\nconst HvDateColumnCell = ({\n date,\n dateFormat,\n}: HvDateColumnCellProp): JSX.Element | null => {\n const formattedDate = useMemo(() => {\n if (date)\n return dayjs(date).format(\n dateFormat !== \"ISO8601\" ? dateFormat : undefined\n );\n return \"—\";\n }, [date, dateFormat]);\n\n return <HvOverflowTooltip data={formattedDate} />;\n};\n\nexport default HvDateColumnCell;\n"],"names":["HvDateColumnCell","date","dateFormat","formattedDate","useMemo","dayjs","format","undefined"
|
|
1
|
+
{"version":3,"file":"DateColumnCell.js","sources":["../../../../../../src/components/Table/renderers/DateColumnCell/DateColumnCell.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport dayjs from \"dayjs\";\nimport { HvOverflowTooltip } from \"components\";\n\nexport interface HvDateColumnCellProp {\n /** The date's text representation format. */\n dateFormat?: string;\n /** Date to render. */\n date?: string;\n}\n\nconst HvDateColumnCell = ({\n date,\n dateFormat,\n}: HvDateColumnCellProp): JSX.Element | null => {\n const formattedDate = useMemo(() => {\n if (date)\n return dayjs(date).format(\n dateFormat !== \"ISO8601\" ? dateFormat : undefined\n );\n return \"—\";\n }, [date, dateFormat]);\n\n return <HvOverflowTooltip data={formattedDate} />;\n};\n\nexport default HvDateColumnCell;\n"],"names":["HvDateColumnCell","date","dateFormat","formattedDate","useMemo","dayjs","format","undefined"],"mappings":";;;;AAWA,MAAMA,mBAAmBA,CAAC;AAAA,EACxBC;AAAAA,EACAC;AACoB,MAA0B;AACxCC,QAAAA,gBAAgBC,QAAQ,MAAM;AAC9BH,QAAAA;AACF,aAAOI,MAAMJ,IAAI,EAAEK,OACjBJ,eAAe,YAAYA,aAAaK,MAAS;AAE9C,WAAA;AAAA,EAAA,GACN,CAACN,MAAMC,UAAU,CAAC;AAEd,SAAA,oBAAC,mBAAkB,EAAA,MAAMC,cAAiB,CAAA;AACnD;AAEA,MAAA,iBAAeH;"}
|
|
@@ -7,16 +7,9 @@ const HvDateColumnCell = ({
|
|
|
7
7
|
placeholder,
|
|
8
8
|
dropdownProps
|
|
9
9
|
}) => {
|
|
10
|
-
return /* @__PURE__ */ jsx(HvDropdown, {
|
|
11
|
-
onChange: (item)
|
|
12
|
-
|
|
13
|
-
},
|
|
14
|
-
placeholder,
|
|
15
|
-
disabled,
|
|
16
|
-
values,
|
|
17
|
-
disablePortal: true,
|
|
18
|
-
...dropdownProps
|
|
19
|
-
});
|
|
10
|
+
return /* @__PURE__ */ jsx(HvDropdown, { onChange: (item) => {
|
|
11
|
+
onChange == null ? void 0 : onChange(item);
|
|
12
|
+
}, placeholder, disabled, values, disablePortal: true, ...dropdownProps });
|
|
20
13
|
};
|
|
21
14
|
const DropdownColumnCell = HvDateColumnCell;
|
|
22
15
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownColumnCell.js","sources":["../../../../../../src/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.tsx"],"sourcesContent":["import { HvDropdownProps, HvDropdown, HvListValue } from \"components\";\n\nexport interface HvDropdownColumnCellProp {\n /** Values to render in the dropdown. */\n values: HvListValue[];\n /** Placeholder text for when the dropdown is empty. */\n placeholder: string;\n /** The whether the dropdown is disabled. */\n disabled: boolean;\n /** Function called when there is change on the dropdown. */\n onChange?: (value: HvListValue) => void;\n /** Extra props to be passed onto the dropdown. */\n dropdownProps?: HvDropdownProps;\n}\n\nconst HvDateColumnCell = ({\n values,\n disabled,\n onChange,\n placeholder,\n dropdownProps,\n}: HvDropdownColumnCellProp): JSX.Element | null => {\n return (\n <HvDropdown\n onChange={(item) => {\n onChange?.(item as HvListValue);\n }}\n placeholder={placeholder}\n disabled={disabled}\n values={values}\n disablePortal\n {...dropdownProps}\n />\n );\n};\n\nexport default HvDateColumnCell;\n"],"names":["HvDateColumnCell","values","disabled","onChange","placeholder","dropdownProps","
|
|
1
|
+
{"version":3,"file":"DropdownColumnCell.js","sources":["../../../../../../src/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.tsx"],"sourcesContent":["import { HvDropdownProps, HvDropdown, HvListValue } from \"components\";\n\nexport interface HvDropdownColumnCellProp {\n /** Values to render in the dropdown. */\n values: HvListValue[];\n /** Placeholder text for when the dropdown is empty. */\n placeholder: string;\n /** The whether the dropdown is disabled. */\n disabled: boolean;\n /** Function called when there is change on the dropdown. */\n onChange?: (value: HvListValue) => void;\n /** Extra props to be passed onto the dropdown. */\n dropdownProps?: HvDropdownProps;\n}\n\nconst HvDateColumnCell = ({\n values,\n disabled,\n onChange,\n placeholder,\n dropdownProps,\n}: HvDropdownColumnCellProp): JSX.Element | null => {\n return (\n <HvDropdown\n onChange={(item) => {\n onChange?.(item as HvListValue);\n }}\n placeholder={placeholder}\n disabled={disabled}\n values={values}\n disablePortal\n {...dropdownProps}\n />\n );\n};\n\nexport default HvDateColumnCell;\n"],"names":["HvDateColumnCell","values","disabled","onChange","placeholder","dropdownProps","item"],"mappings":";;AAeA,MAAMA,mBAAmBA,CAAC;AAAA,EACxBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACwB,MAA0B;AAEhD,SAAA,oBAAC,YACC,EAAA,UAAWC,CAAS,SAAA;AAClBH,yCAAWG;AAAAA,EAAoB,GAEjC,aACA,UACA,QACA,eAAa,MACb,GAAID,cACJ,CAAA;AAEN;AAEA,MAAA,qBAAeL;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { StyledRoot, StyledContainer, StyledLinearProgress } from "./ProgressColumnCell.styles.js";
|
|
2
1
|
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { StyledRoot, StyledContainer, StyledLinearProgress } from "./ProgressColumnCell.styles.js";
|
|
3
3
|
const normalizeProgressBar = (value, max) => {
|
|
4
4
|
return max > 0 ? Math.floor(value * 100 / max) : 0;
|
|
5
5
|
};
|
|
@@ -9,15 +9,7 @@ const HvProgressColumnCell = ({
|
|
|
9
9
|
color = "primary"
|
|
10
10
|
}) => {
|
|
11
11
|
const percentage = normalizeProgressBar(partial, total);
|
|
12
|
-
return /* @__PURE__ */ jsx(StyledRoot, {
|
|
13
|
-
children: /* @__PURE__ */ jsx(StyledContainer, {
|
|
14
|
-
children: /* @__PURE__ */ jsx(StyledLinearProgress, {
|
|
15
|
-
color,
|
|
16
|
-
variant: "determinate",
|
|
17
|
-
value: percentage
|
|
18
|
-
})
|
|
19
|
-
})
|
|
20
|
-
});
|
|
12
|
+
return /* @__PURE__ */ jsx(StyledRoot, { children: /* @__PURE__ */ jsx(StyledContainer, { children: /* @__PURE__ */ jsx(StyledLinearProgress, { color, variant: "determinate", value: percentage }) }) });
|
|
21
13
|
};
|
|
22
14
|
const ProgressColumnCell = HvProgressColumnCell;
|
|
23
15
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgressColumnCell.js","sources":["../../../../../../src/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.tsx"],"sourcesContent":["import {\n StyledRoot,\n StyledContainer,\n StyledLinearProgress,\n} from \"./ProgressColumnCell.styles\";\n\nexport interface HvProgressColumnCellProp {\n /** Current value of the bar. */\n partial: number;\n /** Maximum value of the bar. */\n total: number;\n /** The color of the bar. */\n color?: \"primary\" | \"secondary\";\n}\n\nexport const normalizeProgressBar = (value: number, max: number) => {\n return max > 0 ? Math.floor((value * 100) / max) : 0;\n};\n\nconst HvProgressColumnCell = ({\n partial,\n total,\n color = \"primary\",\n}: HvProgressColumnCellProp): JSX.Element | null => {\n const percentage = normalizeProgressBar(partial, total);\n\n return (\n <StyledRoot>\n <StyledContainer>\n <StyledLinearProgress\n color={color}\n variant=\"determinate\"\n value={percentage}\n />\n </StyledContainer>\n </StyledRoot>\n );\n};\n\nexport default HvProgressColumnCell;\n"],"names":["normalizeProgressBar","value","max","Math","floor","HvProgressColumnCell","partial","total","color","percentage"
|
|
1
|
+
{"version":3,"file":"ProgressColumnCell.js","sources":["../../../../../../src/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.tsx"],"sourcesContent":["import {\n StyledRoot,\n StyledContainer,\n StyledLinearProgress,\n} from \"./ProgressColumnCell.styles\";\n\nexport interface HvProgressColumnCellProp {\n /** Current value of the bar. */\n partial: number;\n /** Maximum value of the bar. */\n total: number;\n /** The color of the bar. */\n color?: \"primary\" | \"secondary\";\n}\n\nexport const normalizeProgressBar = (value: number, max: number) => {\n return max > 0 ? Math.floor((value * 100) / max) : 0;\n};\n\nconst HvProgressColumnCell = ({\n partial,\n total,\n color = \"primary\",\n}: HvProgressColumnCellProp): JSX.Element | null => {\n const percentage = normalizeProgressBar(partial, total);\n\n return (\n <StyledRoot>\n <StyledContainer>\n <StyledLinearProgress\n color={color}\n variant=\"determinate\"\n value={percentage}\n />\n </StyledContainer>\n </StyledRoot>\n );\n};\n\nexport default HvProgressColumnCell;\n"],"names":["normalizeProgressBar","value","max","Math","floor","HvProgressColumnCell","partial","total","color","percentage"],"mappings":";;AAeaA,MAAAA,uBAAuBA,CAACC,OAAeC,QAAgB;AAClE,SAAOA,MAAM,IAAIC,KAAKC,MAAOH,QAAQ,MAAOC,GAAG,IAAI;AACrD;AAEA,MAAMG,uBAAuBA,CAAC;AAAA,EAC5BC;AAAAA,EACAC;AAAAA,EACAC,QAAQ;AACgB,MAA0B;AAC5CC,QAAAA,aAAaT,qBAAqBM,SAASC,KAAK;AAEtD,SACG,oBAAA,YAAA,EACC,UAAC,oBAAA,iBAAA,EACC,UAAC,oBAAA,sBAAA,EACC,OACA,SAAQ,eACR,OAAOE,YAAW,EAAA,CAEtB,EACF,CAAA;AAEJ;AAEA,MAAA,qBAAeJ;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { StyledNo, StyledYes } from "./SwitchColumnCell.styles.js";
|
|
2
1
|
import { jsxs, Fragment, jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { StyledNo, StyledYes } from "./SwitchColumnCell.styles.js";
|
|
3
3
|
import { HvBaseSwitch } from "../../../BaseSwitch/BaseSwitch.js";
|
|
4
4
|
const HvSwitchColumnCell = ({
|
|
5
5
|
checked,
|
|
@@ -9,22 +9,11 @@ const HvSwitchColumnCell = ({
|
|
|
9
9
|
trueLabel,
|
|
10
10
|
switchProps
|
|
11
11
|
}) => {
|
|
12
|
-
return /* @__PURE__ */ jsxs(Fragment, {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}), /* @__PURE__ */ jsx(HvBaseSwitch, {
|
|
18
|
-
"aria-label": switchLabel,
|
|
19
|
-
checked,
|
|
20
|
-
value,
|
|
21
|
-
...switchProps
|
|
22
|
-
}), trueLabel != null && /* @__PURE__ */ jsx(StyledYes, {
|
|
23
|
-
"aria-hidden": "true",
|
|
24
|
-
variant: "body",
|
|
25
|
-
children: trueLabel
|
|
26
|
-
})]
|
|
27
|
-
});
|
|
12
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
13
|
+
falseLabel != null && /* @__PURE__ */ jsx(StyledNo, { "aria-hidden": "true", variant: "body", children: falseLabel }),
|
|
14
|
+
/* @__PURE__ */ jsx(HvBaseSwitch, { "aria-label": switchLabel, checked, value, ...switchProps }),
|
|
15
|
+
trueLabel != null && /* @__PURE__ */ jsx(StyledYes, { "aria-hidden": "true", variant: "body", children: trueLabel })
|
|
16
|
+
] });
|
|
28
17
|
};
|
|
29
18
|
const SwitchColumnCell = HvSwitchColumnCell;
|
|
30
19
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwitchColumnCell.js","sources":["../../../../../../src/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.tsx"],"sourcesContent":["import { HvBaseSwitch, HvBaseSwitchProps } from \"components\";\nimport { StyledYes, StyledNo } from \"./SwitchColumnCell.styles\";\n\nexport interface HvSwitchColumnCellProp {\n /** Whether the switch is checked or not. */\n checked: boolean;\n /** The switch label. */\n value: number | string | undefined;\n /** The value of the switch. */\n switchLabel: string;\n /** The right switch label. */\n falseLabel?: string;\n /** The left switch label. */\n trueLabel?: string;\n /** Extra props to be passed to the switch. */\n switchProps?: HvBaseSwitchProps;\n}\n\nconst HvSwitchColumnCell = ({\n checked,\n value,\n switchLabel,\n falseLabel,\n trueLabel,\n switchProps,\n}: HvSwitchColumnCellProp): JSX.Element | null => {\n return (\n <>\n {falseLabel != null && (\n <StyledNo aria-hidden=\"true\" variant=\"body\">\n {falseLabel}\n </StyledNo>\n )}\n <HvBaseSwitch\n aria-label={switchLabel}\n checked={checked}\n value={value}\n {...switchProps}\n />\n {trueLabel != null && (\n <StyledYes aria-hidden=\"true\" variant=\"body\">\n {trueLabel}\n </StyledYes>\n )}\n </>\n );\n};\n\nexport default HvSwitchColumnCell;\n"],"names":["HvSwitchColumnCell","checked","value","switchLabel","falseLabel","trueLabel","switchProps"
|
|
1
|
+
{"version":3,"file":"SwitchColumnCell.js","sources":["../../../../../../src/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.tsx"],"sourcesContent":["import { HvBaseSwitch, HvBaseSwitchProps } from \"components\";\nimport { StyledYes, StyledNo } from \"./SwitchColumnCell.styles\";\n\nexport interface HvSwitchColumnCellProp {\n /** Whether the switch is checked or not. */\n checked: boolean;\n /** The switch label. */\n value: number | string | undefined;\n /** The value of the switch. */\n switchLabel: string;\n /** The right switch label. */\n falseLabel?: string;\n /** The left switch label. */\n trueLabel?: string;\n /** Extra props to be passed to the switch. */\n switchProps?: HvBaseSwitchProps;\n}\n\nconst HvSwitchColumnCell = ({\n checked,\n value,\n switchLabel,\n falseLabel,\n trueLabel,\n switchProps,\n}: HvSwitchColumnCellProp): JSX.Element | null => {\n return (\n <>\n {falseLabel != null && (\n <StyledNo aria-hidden=\"true\" variant=\"body\">\n {falseLabel}\n </StyledNo>\n )}\n <HvBaseSwitch\n aria-label={switchLabel}\n checked={checked}\n value={value}\n {...switchProps}\n />\n {trueLabel != null && (\n <StyledYes aria-hidden=\"true\" variant=\"body\">\n {trueLabel}\n </StyledYes>\n )}\n </>\n );\n};\n\nexport default HvSwitchColumnCell;\n"],"names":["HvSwitchColumnCell","checked","value","switchLabel","falseLabel","trueLabel","switchProps"],"mappings":";;;AAkBA,MAAMA,qBAAqBA,CAAC;AAAA,EAC1BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AACsB,MAA0B;AAChD,SAEKF,qBAAAA,UAAAA,EAAAA,UAAAA;AAAAA,IAAAA,cAAc,QACZ,oBAAA,UAAA,EAAS,eAAY,QAAO,SAAQ,QAClCA,UACH,WAAA,CAAA;AAAA,wBAED,cACC,EAAA,cAAYD,aACZ,SACA,OACIG,GAAAA,aAAY;AAAA,IAEjBD,aAAa,QACX,oBAAA,WAAA,EAAU,eAAY,QAAO,SAAQ,QACnCA,UACH,UAAA,CAAA;AAAA,EAEJ,EAAA,CAAA;AAEJ;AAEA,MAAA,mBAAeL;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DropDownXS, DropRightXS } from "@hitachivantara/uikit-react-icons";
|
|
2
1
|
import { jsx, jsxs, Fragment } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { DropDownXS, DropRightXS } from "@hitachivantara/uikit-react-icons";
|
|
3
3
|
import { hvStringFallback, hvNumberFallback } from "../utils/fallbacks.js";
|
|
4
4
|
import DateColumnCell from "./DateColumnCell/DateColumnCell.js";
|
|
5
5
|
import SwitchColumnCell from "./SwitchColumnCell/SwitchColumnCell.js";
|
|
@@ -12,9 +12,7 @@ import { HvTypography } from "../../Typography/Typography.js";
|
|
|
12
12
|
import { setId } from "../../../utils/setId.js";
|
|
13
13
|
function hvTextColumn(col) {
|
|
14
14
|
return {
|
|
15
|
-
Cell: (cellProps) => /* @__PURE__ */ jsx(HvOverflowTooltip, {
|
|
16
|
-
data: hvStringFallback(cellProps == null ? void 0 : cellProps.value)
|
|
17
|
-
}),
|
|
15
|
+
Cell: (cellProps) => /* @__PURE__ */ jsx(HvOverflowTooltip, { data: hvStringFallback(cellProps == null ? void 0 : cellProps.value) }),
|
|
18
16
|
sortType: "alphanumeric",
|
|
19
17
|
...col
|
|
20
18
|
};
|
|
@@ -31,10 +29,7 @@ function hvNumberColumn(col) {
|
|
|
31
29
|
}
|
|
32
30
|
function hvDateColumn(col, dateFormat) {
|
|
33
31
|
return {
|
|
34
|
-
Cell: (cellProps) => /* @__PURE__ */ jsx(DateColumnCell, {
|
|
35
|
-
date: cellProps == null ? void 0 : cellProps.value,
|
|
36
|
-
dateFormat
|
|
37
|
-
}),
|
|
32
|
+
Cell: (cellProps) => /* @__PURE__ */ jsx(DateColumnCell, { date: cellProps == null ? void 0 : cellProps.value, dateFormat }),
|
|
38
33
|
sortType: "alphanumeric",
|
|
39
34
|
sortDescFirst: true,
|
|
40
35
|
...col
|
|
@@ -52,23 +47,14 @@ function hvExpandColumn(col, expandRowButtonAriaLabel, collapseRowButtonAriaLabe
|
|
|
52
47
|
onClick
|
|
53
48
|
} = row.getToggleRowExpandedProps();
|
|
54
49
|
const hasContent = (_a = getCanRowExpand == null ? void 0 : getCanRowExpand(row)) != null ? _a : true;
|
|
55
|
-
return /* @__PURE__ */ jsxs(Fragment, {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
position: "absolute",
|
|
64
|
-
left: 0,
|
|
65
|
-
top: 0
|
|
66
|
-
},
|
|
67
|
-
children: row.isExpanded ? /* @__PURE__ */ jsx(DropDownXS, {}) : /* @__PURE__ */ jsx(DropRightXS, {})
|
|
68
|
-
}), /* @__PURE__ */ jsx(HvOverflowTooltip, {
|
|
69
|
-
data: hvStringFallback(value)
|
|
70
|
-
})]
|
|
71
|
-
});
|
|
50
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
51
|
+
hasContent && /* @__PURE__ */ jsx(HvButton, { icon: true, variant: "secondaryGhost", "aria-label": row.isExpanded ? collapseRowButtonAriaLabel : expandRowButtonAriaLabel, "aria-expanded": row.isExpanded, onClick, style: {
|
|
52
|
+
position: "absolute",
|
|
53
|
+
left: 0,
|
|
54
|
+
top: 0
|
|
55
|
+
}, children: row.isExpanded ? /* @__PURE__ */ jsx(DropDownXS, {}) : /* @__PURE__ */ jsx(DropRightXS, {}) }),
|
|
56
|
+
/* @__PURE__ */ jsx(HvOverflowTooltip, { data: hvStringFallback(value) })
|
|
57
|
+
] });
|
|
72
58
|
},
|
|
73
59
|
sortType: "alphanumeric",
|
|
74
60
|
cellStyle: {
|
|
@@ -92,19 +78,9 @@ function hvTagColumn(col, valueDataKey, colorDataKey, textColorDataKey, fromRowD
|
|
|
92
78
|
[colorDataKey]: color,
|
|
93
79
|
[textColorDataKey]: textColor
|
|
94
80
|
} = fromRowData ? row.original : value;
|
|
95
|
-
return /* @__PURE__ */ jsx(HvTag, {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
children: name
|
|
99
|
-
}),
|
|
100
|
-
type: "semantic",
|
|
101
|
-
color,
|
|
102
|
-
style: textColor != null ? {
|
|
103
|
-
color: textColor
|
|
104
|
-
} : {},
|
|
105
|
-
tabIndex: -1,
|
|
106
|
-
...tagProps
|
|
107
|
-
});
|
|
81
|
+
return /* @__PURE__ */ jsx(HvTag, { label: /* @__PURE__ */ jsx(HvTypography, { variant: "body", children: name }), type: "semantic", color, style: textColor != null ? {
|
|
82
|
+
color: textColor
|
|
83
|
+
} : {}, tabIndex: -1, ...tagProps });
|
|
108
84
|
},
|
|
109
85
|
cellStyle: {
|
|
110
86
|
paddingTop: 0,
|
|
@@ -120,14 +96,7 @@ function hvSwitchColumn(col, switchLabel, falseLabel, trueLabel, switchProps) {
|
|
|
120
96
|
value,
|
|
121
97
|
row
|
|
122
98
|
} = cellProps;
|
|
123
|
-
return /* @__PURE__ */ jsx(SwitchColumnCell, {
|
|
124
|
-
checked: value,
|
|
125
|
-
value: row.id,
|
|
126
|
-
switchLabel,
|
|
127
|
-
falseLabel,
|
|
128
|
-
trueLabel,
|
|
129
|
-
switchProps
|
|
130
|
-
});
|
|
99
|
+
return /* @__PURE__ */ jsx(SwitchColumnCell, { checked: value, value: row.id, switchLabel, falseLabel, trueLabel, switchProps });
|
|
131
100
|
},
|
|
132
101
|
cellStyle: {
|
|
133
102
|
paddingTop: 0,
|
|
@@ -145,15 +114,9 @@ function hvDropdownColumn(col, id, placeholder, disabledPlaceholder, onChange) {
|
|
|
145
114
|
column
|
|
146
115
|
} = cellProps;
|
|
147
116
|
const dsbld = value.length < 1;
|
|
148
|
-
return /* @__PURE__ */ jsx(DropdownColumnCell, {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
onChange: (val) => onChange == null ? void 0 : onChange(row.id, val),
|
|
152
|
-
disabled: dsbld,
|
|
153
|
-
dropdownProps: {
|
|
154
|
-
"aria-labelledby": setId(id, column.id)
|
|
155
|
-
}
|
|
156
|
-
});
|
|
117
|
+
return /* @__PURE__ */ jsx(DropdownColumnCell, { values: value, placeholder: dsbld ? disabledPlaceholder : placeholder, onChange: (val) => onChange == null ? void 0 : onChange(row.id, val), disabled: dsbld, dropdownProps: {
|
|
118
|
+
"aria-labelledby": setId(id, column.id)
|
|
119
|
+
} });
|
|
157
120
|
},
|
|
158
121
|
cellStyle: {
|
|
159
122
|
paddingTop: 0,
|
|
@@ -171,11 +134,7 @@ function hvProgressColumn(col, getPartial, getTotal, color) {
|
|
|
171
134
|
const partial = getPartial == null ? void 0 : getPartial(row);
|
|
172
135
|
const total = getTotal == null ? void 0 : getTotal(row);
|
|
173
136
|
if (total) {
|
|
174
|
-
return /* @__PURE__ */ jsx(ProgressColumnCell, {
|
|
175
|
-
partial,
|
|
176
|
-
total,
|
|
177
|
-
color
|
|
178
|
-
});
|
|
137
|
+
return /* @__PURE__ */ jsx(ProgressColumnCell, { partial, total, color });
|
|
179
138
|
}
|
|
180
139
|
return "\u2014";
|
|
181
140
|
},
|