@carbon/ibm-products 2.26.0 → 2.28.0-alpha.4
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +700 -163
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +1 -1
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +85 -22
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -1
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +700 -163
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +1 -1
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +660 -152
- package/css/index.css.map +1 -1
- package/css/index.min.css +1 -1
- package/css/index.min.css.map +1 -1
- package/es/_virtual/index.js +2 -2
- package/es/components/APIKeyModal/APIKeyModal.js +1 -1
- package/es/components/AboutModal/AboutModal.js +1 -1
- package/es/components/ActionBar/ActionBar.js +1 -1
- package/es/components/ActionBar/ActionBarItem.js +1 -1
- package/es/components/ActionBar/ActionBarOverflowItems.js +1 -1
- package/es/components/ActionSet/ActionSet.js +1 -1
- package/es/components/AddSelect/AddSelectBody.js +1 -1
- package/es/components/AddSelect/AddSelectBreadcrumbs.js +1 -1
- package/es/components/AddSelect/AddSelectFilter.js +1 -1
- package/es/components/AddSelect/AddSelectList.js +1 -1
- package/es/components/AddSelect/AddSelectRow.js +1 -1
- package/es/components/BigNumbers/BigNumbers.d.ts +11 -0
- package/es/components/BigNumbers/BigNumbers.js +238 -0
- package/es/components/BigNumbers/constants.d.ts +13 -0
- package/es/components/BigNumbers/constants.js +67 -0
- package/es/components/BigNumbers/index.d.ts +1 -0
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +1 -1
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +1 -1
- package/es/components/Card/Card.js +1 -1
- package/es/components/Card/CardFooter.js +1 -1
- package/es/components/Card/CardHeader.js +1 -1
- package/es/components/Carousel/Carousel.js +1 -1
- package/es/components/Carousel/CarouselItem.js +1 -1
- package/es/components/Cascade/Cascade.js +1 -1
- package/es/components/Checklist/Checklist.js +1 -1
- package/es/components/Checklist/ChecklistChart.js +1 -1
- package/es/components/Checklist/ChecklistIcon.js +1 -1
- package/es/components/Coachmark/Coachmark.js +1 -1
- package/es/components/Coachmark/CoachmarkDragbar.js +1 -1
- package/es/components/Coachmark/CoachmarkHeader.js +1 -1
- package/es/components/Coachmark/CoachmarkOverlay.js +1 -1
- package/es/components/Coachmark/CoachmarkTagline.js +1 -1
- package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +1 -1
- package/es/components/CoachmarkButton/CoachmarkButton.js +1 -1
- package/es/components/CoachmarkFixed/CoachmarkFixed.js +1 -1
- package/es/components/CoachmarkOverlayElement/CoachmarkOverlayElement.js +1 -1
- package/es/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +1 -1
- package/es/components/CoachmarkStack/CoachmarkStack.js +1 -1
- package/es/components/CoachmarkStack/CoachmarkStackHome.js +1 -1
- package/es/components/ComboButton/ComboButton.js +1 -1
- package/es/components/CreateFullPage/CreateFullPage.js +1 -1
- package/es/components/CreateFullPage/CreateFullPageStep.js +1 -1
- package/es/components/CreateInfluencer/CreateInfluencer.js +1 -1
- package/es/components/CreateModal/CreateModal.js +1 -1
- package/es/components/CreateSidePanel/CreateSidePanel.js +1 -1
- package/es/components/CreateTearsheet/CreateTearsheet.js +8 -2
- package/es/components/CreateTearsheet/CreateTearsheetDivider.js +1 -1
- package/es/components/CreateTearsheet/CreateTearsheetStep.js +1 -1
- package/es/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +1 -1
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +1 -1
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +5 -4
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +4 -3
- package/es/components/DataSpreadsheet/utils/checkForHoldingKey.d.ts +1 -0
- package/es/components/DataSpreadsheet/utils/checkForHoldingKey.js +17 -0
- package/es/components/Datagrid/Datagrid/Datagrid.js +10 -3
- package/es/components/Datagrid/Datagrid/DatagridContent.d.ts +3 -1
- package/es/components/Datagrid/Datagrid/DatagridContent.js +7 -3
- package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +8 -4
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +9 -5
- package/es/components/Datagrid/Datagrid/DatagridRefBody.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridRow.js +19 -15
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +1 -1
- package/es/components/Datagrid/Datagrid/DatagridToolbar.d.ts +10 -1
- package/es/components/Datagrid/Datagrid/DatagridToolbar.js +22 -5
- package/es/components/Datagrid/Datagrid/DraggableElement.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +39 -16
- package/es/components/Datagrid/Datagrid/addons/Filtering/constants.d.ts +4 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/constants.js +5 -1
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +102 -6
- package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +12 -1
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/stateReducer.js +1 -1
- package/es/components/Datagrid/useActionsColumn.js +1 -1
- package/es/components/Datagrid/useColumnCenterAlign.js +1 -1
- package/es/components/Datagrid/useColumnRightAlign.js +1 -1
- package/es/components/Datagrid/useDefaultStringRenderer.js +1 -1
- package/es/components/Datagrid/useFiltering.js +48 -47
- package/es/components/Datagrid/useFloatingScroll.js +1 -1
- package/es/components/Datagrid/useInlineEdit.js +1 -1
- package/es/components/Datagrid/useNestedRowExpander.js +1 -1
- package/es/components/Datagrid/useNestedRows.js +1 -1
- package/es/components/Datagrid/useRowExpander.js +1 -1
- package/es/components/Datagrid/useSelectAllToggle.js +6 -4
- package/es/components/Datagrid/useSelectRows.js +2 -2
- package/es/components/Datagrid/useSortableColumns.js +1 -1
- package/es/components/Datagrid/useStickyColumn.js +1 -1
- package/es/components/DelimitedList/DelimitedList.js +1 -1
- package/es/components/EditFullPage/EditFullPage.js +1 -1
- package/es/components/EditInPlace/EditInPlace.js +1 -1
- package/es/components/EditSidePanel/EditSidePanel.js +1 -1
- package/es/components/EditTearsheet/EditTearsheet.js +1 -1
- package/es/components/EditTearsheet/EditTearsheetForm.js +1 -1
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +1 -1
- package/es/components/EditUpdateCards/EditUpdateCards.js +1 -1
- package/es/components/EmptyStates/EmptyState.js +1 -1
- package/es/components/EmptyStates/EmptyStateContent.js +1 -1
- package/es/components/EmptyStates/EmptyStateV2.js +1 -1
- package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +1 -1
- package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +1 -1
- package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +1 -1
- package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +1 -1
- package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +1 -1
- package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +1 -1
- package/es/components/EmptyStates/assets/ErrorIllustration.js +1 -1
- package/es/components/EmptyStates/assets/NoDataIllustration.js +1 -1
- package/es/components/EmptyStates/assets/NoTagsIllustration.js +1 -1
- package/es/components/EmptyStates/assets/NotFoundIllustration.js +1 -1
- package/es/components/EmptyStates/assets/NotificationsIllustration.js +1 -1
- package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +1 -1
- package/es/components/ExportModal/ExportModal.js +1 -1
- package/es/components/FilterSummary/FilterSummary.js +1 -1
- package/es/components/FullPageError/FullPageError.js +1 -1
- package/es/components/Guidebanner/Guidebanner.js +1 -1
- package/es/components/Guidebanner/GuidebannerElement.js +1 -1
- package/es/components/Guidebanner/GuidebannerElementButton.js +1 -1
- package/es/components/Guidebanner/GuidebannerElementLink.js +1 -1
- package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +1 -1
- package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +1 -1
- package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +1 -1
- package/es/components/ImportModal/ImportModal.js +1 -1
- package/es/components/InlineTip/InlineTip.js +1 -1
- package/es/components/InlineTip/InlineTipButton.js +1 -1
- package/es/components/InlineTip/InlineTipLink.js +1 -1
- package/es/components/InterstitialScreen/InterstitialScreen.js +1 -1
- package/es/components/InterstitialScreenView/InterstitialScreenView.js +1 -1
- package/es/components/InterstitialScreenViewModule/InterstitialScreenViewModule.js +1 -1
- package/es/components/NonLinearReading/NonLinearReading.js +1 -1
- package/es/components/NotificationsPanel/NotificationsPanel.js +1 -1
- package/es/components/OptionsTile/OptionsTile.js +1 -1
- package/es/components/PageHeader/PageHeader.js +1 -1
- package/es/components/PageHeader/PageHeaderTitle.js +1 -1
- package/es/components/PageHeader/PageHeaderUtils.js +1 -1
- package/es/components/RemoveModal/RemoveModal.js +1 -1
- package/es/components/Saving/Saving.js +1 -1
- package/es/components/SearchBar/SearchBar.js +1 -1
- package/es/components/SidePanel/SidePanel.js +14 -7
- package/es/components/SidePanel/motion/variants.d.ts +39 -12
- package/es/components/SidePanel/motion/variants.js +42 -11
- package/es/components/SimpleHeader/SimpleHeader.js +1 -1
- package/es/components/StatusIcon/StatusIcon.js +1 -1
- package/es/components/SteppedAnimatedMedia/SteppedAnimatedMedia.js +1 -1
- package/es/components/StringFormatter/StringFormatter.d.ts +6 -0
- package/es/components/StringFormatter/StringFormatter.js +79 -0
- package/es/components/StringFormatter/index.d.ts +1 -0
- package/es/components/StringFormatter/utils/enums.d.ts +14 -0
- package/es/components/StringFormatter/utils/enums.js +23 -0
- package/es/components/TagSet/TagSet.js +1 -1
- package/es/components/TagSet/TagSetModal.js +1 -1
- package/es/components/TagSet/TagSetOverflow.js +1 -1
- package/es/components/Tearsheet/TearsheetShell.js +13 -8
- package/es/components/Toolbar/Toolbar.js +1 -1
- package/es/components/Toolbar/ToolbarButton.js +1 -1
- package/es/components/Toolbar/ToolbarGroup.js +1 -1
- package/es/components/TooltipTrigger/TooltipTrigger.js +1 -1
- package/es/components/TruncatedList/TruncatedList.js +1 -1
- package/es/components/UserAvatar/UserAvatar.js +59 -43
- package/es/components/UserProfileImage/UserProfileImage.js +1 -1
- package/es/components/WebTerminal/WebTerminal.js +1 -1
- package/es/components/WebTerminal/WebTerminalContentWrapper.js +1 -1
- package/es/components/_Canary/Canary.js +1 -1
- package/es/components/index.d.ts +2 -0
- package/es/global/js/hooks/index.d.ts +1 -0
- package/es/global/js/hooks/useIsomorphicEffect.d.ts +2 -0
- package/es/global/js/hooks/useIsomorphicEffect.js +14 -0
- package/es/global/js/package-settings.d.ts +2 -0
- package/es/global/js/package-settings.js +2 -0
- package/es/index.js +2 -0
- package/es/node_modules/prop-types/index.js +1 -1
- package/es/settings.d.ts +2 -0
- package/lib/_virtual/index.js +2 -2
- package/lib/components/APIKeyModal/APIKeyModal.js +50 -49
- package/lib/components/AboutModal/AboutModal.js +17 -16
- package/lib/components/ActionBar/ActionBar.js +16 -15
- package/lib/components/ActionBar/ActionBarItem.js +8 -7
- package/lib/components/ActionBar/ActionBarOverflowItems.js +9 -8
- package/lib/components/ActionSet/ActionSet.js +4 -3
- package/lib/components/AddSelect/AddSelectBody.js +67 -66
- package/lib/components/AddSelect/AddSelectBreadcrumbs.js +7 -6
- package/lib/components/AddSelect/AddSelectFilter.js +19 -18
- package/lib/components/AddSelect/AddSelectList.js +7 -6
- package/lib/components/AddSelect/AddSelectRow.js +33 -32
- package/lib/components/BigNumbers/BigNumbers.d.ts +11 -0
- package/lib/components/BigNumbers/BigNumbers.js +245 -0
- package/lib/components/BigNumbers/constants.d.ts +13 -0
- package/lib/components/BigNumbers/constants.js +76 -0
- package/lib/components/BigNumbers/index.d.ts +1 -0
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +20 -19
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +3 -2
- package/lib/components/Card/Card.js +5 -4
- package/lib/components/Card/CardFooter.js +22 -21
- package/lib/components/Card/CardHeader.js +27 -26
- package/lib/components/Carousel/Carousel.js +13 -12
- package/lib/components/Carousel/CarouselItem.js +6 -5
- package/lib/components/Cascade/Cascade.js +9 -8
- package/lib/components/Checklist/Checklist.js +33 -32
- package/lib/components/Checklist/ChecklistChart.js +7 -6
- package/lib/components/Checklist/ChecklistIcon.js +7 -6
- package/lib/components/Coachmark/Coachmark.js +21 -20
- package/lib/components/Coachmark/CoachmarkDragbar.js +10 -9
- package/lib/components/Coachmark/CoachmarkHeader.js +8 -7
- package/lib/components/Coachmark/CoachmarkOverlay.js +10 -9
- package/lib/components/Coachmark/CoachmarkTagline.js +8 -7
- package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +7 -6
- package/lib/components/CoachmarkButton/CoachmarkButton.js +6 -5
- package/lib/components/CoachmarkFixed/CoachmarkFixed.js +11 -10
- package/lib/components/CoachmarkOverlayElement/CoachmarkOverlayElement.js +8 -7
- package/lib/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +16 -15
- package/lib/components/CoachmarkStack/CoachmarkStack.js +20 -19
- package/lib/components/CoachmarkStack/CoachmarkStackHome.js +17 -16
- package/lib/components/ComboButton/ComboButton.js +7 -6
- package/lib/components/CreateFullPage/CreateFullPage.js +29 -28
- package/lib/components/CreateFullPage/CreateFullPageStep.js +18 -17
- package/lib/components/CreateInfluencer/CreateInfluencer.js +13 -12
- package/lib/components/CreateModal/CreateModal.js +16 -15
- package/lib/components/CreateSidePanel/CreateSidePanel.js +21 -20
- package/lib/components/CreateTearsheet/CreateTearsheet.js +27 -20
- package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +5 -4
- package/lib/components/CreateTearsheet/CreateTearsheetStep.js +19 -18
- package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +21 -20
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +22 -21
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +60 -58
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +42 -40
- package/lib/components/DataSpreadsheet/utils/checkForHoldingKey.d.ts +1 -0
- package/lib/components/DataSpreadsheet/utils/checkForHoldingKey.js +21 -0
- package/lib/components/Datagrid/Datagrid/Datagrid.js +15 -7
- package/lib/components/Datagrid/Datagrid/DatagridContent.d.ts +3 -1
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +37 -32
- package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +8 -3
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +14 -9
- package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +3 -2
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +20 -15
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +4 -3
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +14 -13
- package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +3 -2
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.d.ts +10 -1
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +24 -6
- package/lib/components/Datagrid/Datagrid/DraggableElement.js +13 -12
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +15 -14
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +25 -24
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +27 -26
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +37 -14
- package/lib/components/Datagrid/Datagrid/addons/Filtering/constants.d.ts +4 -1
- package/lib/components/Datagrid/Datagrid/addons/Filtering/constants.js +6 -0
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +98 -2
- package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +11 -0
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +15 -14
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +20 -19
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +9 -8
- package/lib/components/Datagrid/Datagrid/addons/stateReducer.js +1 -1
- package/lib/components/Datagrid/useActionsColumn.js +7 -6
- package/lib/components/Datagrid/useColumnCenterAlign.js +3 -2
- package/lib/components/Datagrid/useColumnRightAlign.js +3 -2
- package/lib/components/Datagrid/useDefaultStringRenderer.js +4 -3
- package/lib/components/Datagrid/useFiltering.js +46 -45
- package/lib/components/Datagrid/useFloatingScroll.js +6 -2
- package/lib/components/Datagrid/useInlineEdit.js +4 -3
- package/lib/components/Datagrid/useNestedRowExpander.js +4 -3
- package/lib/components/Datagrid/useNestedRows.js +6 -2
- package/lib/components/Datagrid/useRowExpander.js +3 -2
- package/lib/components/Datagrid/useSelectAllToggle.js +7 -4
- package/lib/components/Datagrid/useSelectRows.js +5 -4
- package/lib/components/Datagrid/useSortableColumns.js +3 -2
- package/lib/components/Datagrid/useStickyColumn.js +4 -3
- package/lib/components/DelimitedList/DelimitedList.js +8 -7
- package/lib/components/EditFullPage/EditFullPage.js +6 -5
- package/lib/components/EditInPlace/EditInPlace.js +23 -22
- package/lib/components/EditSidePanel/EditSidePanel.js +23 -22
- package/lib/components/EditTearsheet/EditTearsheet.js +18 -17
- package/lib/components/EditTearsheet/EditTearsheetForm.js +11 -10
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +6 -5
- package/lib/components/EditUpdateCards/EditUpdateCards.js +31 -30
- package/lib/components/EmptyStates/EmptyState.js +20 -19
- package/lib/components/EmptyStates/EmptyStateContent.js +16 -15
- package/lib/components/EmptyStates/EmptyStateV2.js +20 -19
- package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +18 -17
- package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +18 -17
- package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +18 -17
- package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +18 -17
- package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +18 -17
- package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +18 -17
- package/lib/components/EmptyStates/assets/ErrorIllustration.js +7 -6
- package/lib/components/EmptyStates/assets/NoDataIllustration.js +7 -6
- package/lib/components/EmptyStates/assets/NoTagsIllustration.js +7 -6
- package/lib/components/EmptyStates/assets/NotFoundIllustration.js +7 -6
- package/lib/components/EmptyStates/assets/NotificationsIllustration.js +7 -6
- package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +7 -6
- package/lib/components/ExportModal/ExportModal.js +30 -29
- package/lib/components/FilterSummary/FilterSummary.js +13 -12
- package/lib/components/FullPageError/FullPageError.js +13 -12
- package/lib/components/Guidebanner/Guidebanner.js +20 -19
- package/lib/components/Guidebanner/GuidebannerElement.js +8 -7
- package/lib/components/Guidebanner/GuidebannerElementButton.js +8 -7
- package/lib/components/Guidebanner/GuidebannerElementLink.js +6 -5
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +11 -10
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +11 -10
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +11 -10
- package/lib/components/ImportModal/ImportModal.js +32 -31
- package/lib/components/InlineTip/InlineTip.js +21 -20
- package/lib/components/InlineTip/InlineTipButton.js +6 -5
- package/lib/components/InlineTip/InlineTipLink.js +6 -5
- package/lib/components/InterstitialScreen/InterstitialScreen.js +13 -12
- package/lib/components/InterstitialScreenView/InterstitialScreenView.js +7 -6
- package/lib/components/InterstitialScreenViewModule/InterstitialScreenViewModule.js +7 -6
- package/lib/components/NonLinearReading/NonLinearReading.js +9 -8
- package/lib/components/NotificationsPanel/NotificationsPanel.js +59 -58
- package/lib/components/OptionsTile/OptionsTile.js +21 -20
- package/lib/components/PageHeader/PageHeader.js +74 -73
- package/lib/components/PageHeader/PageHeaderTitle.js +21 -20
- package/lib/components/PageHeader/PageHeaderUtils.js +3 -2
- package/lib/components/RemoveModal/RemoveModal.js +22 -21
- package/lib/components/Saving/Saving.js +18 -17
- package/lib/components/SearchBar/SearchBar.js +20 -19
- package/lib/components/SidePanel/SidePanel.js +58 -50
- package/lib/components/SidePanel/motion/variants.d.ts +39 -12
- package/lib/components/SidePanel/motion/variants.js +42 -10
- package/lib/components/SimpleHeader/SimpleHeader.js +17 -16
- package/lib/components/StatusIcon/StatusIcon.js +9 -8
- package/lib/components/SteppedAnimatedMedia/SteppedAnimatedMedia.js +7 -6
- package/lib/components/StringFormatter/StringFormatter.d.ts +6 -0
- package/lib/components/StringFormatter/StringFormatter.js +86 -0
- package/lib/components/StringFormatter/index.d.ts +1 -0
- package/lib/components/StringFormatter/utils/enums.d.ts +14 -0
- package/lib/components/StringFormatter/utils/enums.js +27 -0
- package/lib/components/TagSet/TagSet.js +21 -20
- package/lib/components/TagSet/TagSetModal.js +13 -12
- package/lib/components/TagSet/TagSetOverflow.js +18 -17
- package/lib/components/Tearsheet/TearsheetShell.js +42 -36
- package/lib/components/Toolbar/Toolbar.js +7 -6
- package/lib/components/Toolbar/ToolbarButton.js +9 -8
- package/lib/components/Toolbar/ToolbarGroup.js +6 -5
- package/lib/components/TooltipTrigger/TooltipTrigger.js +6 -5
- package/lib/components/TruncatedList/TruncatedList.js +14 -13
- package/lib/components/UserAvatar/UserAvatar.js +61 -44
- package/lib/components/UserProfileImage/UserProfileImage.js +3 -2
- package/lib/components/WebTerminal/WebTerminal.js +14 -13
- package/lib/components/WebTerminal/WebTerminalContentWrapper.js +5 -4
- package/lib/components/_Canary/Canary.js +6 -5
- package/lib/components/index.d.ts +2 -0
- package/lib/global/js/hooks/index.d.ts +1 -0
- package/lib/global/js/hooks/useIsomorphicEffect.d.ts +2 -0
- package/lib/global/js/hooks/useIsomorphicEffect.js +18 -0
- package/lib/global/js/package-settings.d.ts +2 -0
- package/lib/global/js/package-settings.js +2 -0
- package/lib/index.js +10 -0
- package/lib/node_modules/prop-types/index.js +1 -1
- package/lib/settings.d.ts +2 -0
- package/package.json +8 -7
- package/scss/components/BigNumbers/_big-numbers.scss +151 -0
- package/scss/components/BigNumbers/_carbon-imports.scss +11 -0
- package/scss/components/BigNumbers/_index-with-carbon.scss +9 -0
- package/scss/components/BigNumbers/_index.scss +8 -0
- package/scss/components/BreadcrumbWithOverflow/_breadcrumb-with-overflow.scss +0 -1
- package/scss/components/Datagrid/styles/_datagrid.scss +61 -4
- package/scss/components/FullPageError/_full-page-error.scss +2 -2
- package/scss/components/SidePanel/_side-panel.scss +9 -2
- package/scss/components/StringFormatter/_carbon-imports.scss +10 -0
- package/scss/components/StringFormatter/_index-with-carbon.scss +9 -0
- package/scss/components/StringFormatter/_index.scss +8 -0
- package/scss/components/StringFormatter/_string-formatter.scss +97 -0
- package/scss/components/Tearsheet/_tearsheet.scss +38 -7
- package/scss/components/UserAvatar/_user-avatar.scss +40 -0
- package/scss/components/_index-with-carbon.scss +2 -0
- package/scss/components/_index.scss +2 -0
- package/es/_virtual/index2.js +0 -10
- package/es/node_modules/classnames/index.js +0 -70
- package/lib/_virtual/index2.js +0 -14
- package/lib/node_modules/classnames/index.js +0 -74
@@ -8,7 +8,7 @@
|
|
8
8
|
import { extends as _extends, objectSpread2 as _objectSpread2 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
10
|
import { TableBody } from '@carbon/react';
|
11
|
-
import cx from '
|
11
|
+
import cx from 'classnames';
|
12
12
|
import { pkg } from '../../../settings.js';
|
13
13
|
|
14
14
|
var blockClass = "".concat(pkg.prefix, "--datagrid");
|
@@ -1,2 +1,11 @@
|
|
1
1
|
export default DatagridToolbar;
|
2
|
-
declare function DatagridToolbar(datagridState
|
2
|
+
declare function DatagridToolbar({ ariaToolbarLabel, ...datagridState }: {
|
3
|
+
[x: string]: any;
|
4
|
+
ariaToolbarLabel: any;
|
5
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
6
|
+
declare namespace DatagridToolbar {
|
7
|
+
namespace propTypes {
|
8
|
+
let ariaToolbarLabel: PropTypes.Requireable<string>;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
import PropTypes from 'prop-types';
|
@@ -5,14 +5,16 @@
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
7
|
|
8
|
-
import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
8
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default, { useRef, useState, useEffect } from 'react';
|
10
|
+
import PropTypes from '../../../node_modules/prop-types/index.js';
|
10
11
|
import { TableToolbar, TableBatchActions, TableBatchAction, MenuButton, MenuItem } from '@carbon/react';
|
11
12
|
import { useResizeObserver } from '../../../global/js/hooks/useResizeObserver.js';
|
12
13
|
import { pkg, carbon } from '../../../settings.js';
|
13
|
-
import cx from '
|
14
|
+
import cx from 'classnames';
|
14
15
|
import { handleSelectAllRowData } from './addons/stateReducer.js';
|
15
16
|
|
17
|
+
var _excluded = ["ariaToolbarLabel"];
|
16
18
|
var blockClass = "".concat(pkg.prefix, "--datagrid__table-toolbar");
|
17
19
|
var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridState, width, ref) {
|
18
20
|
var _useState = useState(false),
|
@@ -107,6 +109,12 @@ var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridS
|
|
107
109
|
}
|
108
110
|
};
|
109
111
|
var onCancelHandler = function onCancelHandler() {
|
112
|
+
handleSelectAllRowData({
|
113
|
+
dispatch: dispatch,
|
114
|
+
rows: [],
|
115
|
+
getRowId: getRowId,
|
116
|
+
isChecked: false
|
117
|
+
});
|
110
118
|
toggleAllRowsSelected(false);
|
111
119
|
setGlobalFilter(null);
|
112
120
|
};
|
@@ -144,7 +152,9 @@ var DatagridBatchActionsToolbar = function DatagridBatchActionsToolbar(datagridS
|
|
144
152
|
}
|
145
153
|
})), renderBatchActionOverflow());
|
146
154
|
};
|
147
|
-
var DatagridToolbar = function DatagridToolbar(
|
155
|
+
var DatagridToolbar = function DatagridToolbar(_ref2) {
|
156
|
+
var ariaToolbarLabel = _ref2.ariaToolbarLabel,
|
157
|
+
datagridState = _objectWithoutProperties(_ref2, _excluded);
|
148
158
|
var ref = useRef(null);
|
149
159
|
var _useResizeObserver = useResizeObserver(ref),
|
150
160
|
width = _useResizeObserver.width;
|
@@ -156,9 +166,16 @@ var DatagridToolbar = function DatagridToolbar(datagridState) {
|
|
156
166
|
return batchActions && DatagridActions ? /*#__PURE__*/React__default.createElement("div", {
|
157
167
|
ref: ref,
|
158
168
|
className: cx([blockClass, "".concat(blockClass, "--").concat(getRowHeight)])
|
159
|
-
}, /*#__PURE__*/React__default.createElement(TableToolbar,
|
169
|
+
}, /*#__PURE__*/React__default.createElement(TableToolbar, {
|
170
|
+
"aria-label": ariaToolbarLabel
|
171
|
+
}, DatagridActions && /*#__PURE__*/React__default.createElement(DatagridActions, datagridState), DatagridBatchActionsToolbar && DatagridBatchActionsToolbar(datagridState, width, ref))) : DatagridActions ? /*#__PURE__*/React__default.createElement("div", {
|
160
172
|
className: blockClass
|
161
|
-
}, /*#__PURE__*/React__default.createElement(TableToolbar,
|
173
|
+
}, /*#__PURE__*/React__default.createElement(TableToolbar, {
|
174
|
+
"aria-label": ariaToolbarLabel
|
175
|
+
}, DatagridActions && /*#__PURE__*/React__default.createElement(DatagridActions, datagridState), DatagridBatchActions && DatagridBatchActions(datagridState))) : null;
|
176
|
+
};
|
177
|
+
DatagridToolbar.propTypes = {
|
178
|
+
ariaToolbarLabel: PropTypes.string
|
162
179
|
};
|
163
180
|
var DatagridToolbar$1 = DatagridToolbar;
|
164
181
|
|
@@ -9,7 +9,7 @@ import { extends as _extends, defineProperty as _defineProperty } from '../../..
|
|
9
9
|
import React__default from 'react';
|
10
10
|
import PropTypes from '../../../node_modules/prop-types/index.js';
|
11
11
|
import { Locked, Draggable } from '@carbon/react/icons';
|
12
|
-
import cx from '
|
12
|
+
import cx from 'classnames';
|
13
13
|
import { pkg } from '../../../settings.js';
|
14
14
|
import { CSS } from '@dnd-kit/utilities';
|
15
15
|
import { useSortable } from '@dnd-kit/sortable';
|
@@ -11,7 +11,7 @@ import PropTypes from '../../../../../node_modules/prop-types/index.js';
|
|
11
11
|
import { Checkbox } from '@carbon/react';
|
12
12
|
import update from 'immutability-helper';
|
13
13
|
import { pkg } from '../../../../../settings.js';
|
14
|
-
import cx from '
|
14
|
+
import cx from 'classnames';
|
15
15
|
import { DraggableItemsList } from './DraggableItemsList.js';
|
16
16
|
import uuidv4 from '../../../../../global/js/utils/uuidv4.js';
|
17
17
|
|
@@ -8,7 +8,7 @@
|
|
8
8
|
import { slicedToArray as _slicedToArray, defineProperty as _defineProperty } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import { Filter } from '@carbon/react/icons';
|
10
10
|
import { usePrefix, IconButton } from '@carbon/react';
|
11
|
-
import cx from '
|
11
|
+
import cx from 'classnames';
|
12
12
|
import PropTypes from '../../../../../node_modules/prop-types/index.js';
|
13
13
|
import React__default, { useState, useRef, useEffect } from 'react';
|
14
14
|
import { pkg } from '../../../../../settings.js';
|
@@ -13,7 +13,7 @@ import { panelVariants, innerContainerVariants, actionSetVariants } from './moti
|
|
13
13
|
import { Close } from '@carbon/react/icons';
|
14
14
|
import { FilterContext } from './FilterProvider.js';
|
15
15
|
import PropTypes from '../../../../../node_modules/prop-types/index.js';
|
16
|
-
import cx from '
|
16
|
+
import cx from 'classnames';
|
17
17
|
import { motion, useReducedMotion } from 'framer-motion';
|
18
18
|
import { pkg } from '../../../../../settings.js';
|
19
19
|
import { rem } from '@carbon/layout';
|
@@ -6,9 +6,9 @@
|
|
6
6
|
*/
|
7
7
|
|
8
8
|
import { slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, toConsumableArray as _toConsumableArray } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
|
-
import React__default, { createContext, useState } from 'react';
|
9
|
+
import React__default, { createContext, useState, useReducer } from 'react';
|
10
10
|
import PropTypes from '../../../../../node_modules/prop-types/index.js';
|
11
|
-
import { DROPDOWN, RADIO, NUMBER, DATE, CHECKBOX, CLEAR_SINGLE_FILTER } from './constants.js';
|
11
|
+
import { DROPDOWN, RADIO, NUMBER, DATE, CHECKBOX, MULTISELECT, SAVED_FILTERS, CLEAR_SINGLE_FILTER } from './constants.js';
|
12
12
|
|
13
13
|
var FilterContext = /*#__PURE__*/createContext();
|
14
14
|
var EventEmitter = {
|
@@ -33,7 +33,7 @@ var removeFilterItem = function removeFilterItem(state, index) {
|
|
33
33
|
return state.splice(index, 1);
|
34
34
|
};
|
35
35
|
var updateFilterState = function updateFilterState(state, type, value) {
|
36
|
-
if (type === CHECKBOX) {
|
36
|
+
if (type === CHECKBOX || type === MULTISELECT) {
|
37
37
|
return;
|
38
38
|
}
|
39
39
|
if (type === DATE) {
|
@@ -56,7 +56,7 @@ var clearSingleFilter = function clearSingleFilter(_ref, setAllFilters, state) {
|
|
56
56
|
var filterValues = f.value;
|
57
57
|
var filterType = f.type;
|
58
58
|
updateFilterState(tempState, filterType, value);
|
59
|
-
if (filterType === CHECKBOX) {
|
59
|
+
if (filterType === CHECKBOX || filterType === MULTISELECT) {
|
60
60
|
/**
|
61
61
|
When all checkboxes of a group are all unselected the value still exists in the filtersObjectArray
|
62
62
|
This checks if all the checkboxes are selected = false and removes it from the array
|
@@ -122,15 +122,15 @@ var prepareFiltersForTags = function prepareFiltersForTags(filters, renderDateLa
|
|
122
122
|
key: id,
|
123
123
|
value: (_renderDateLabel = renderDateLabel === null || renderDateLabel === void 0 ? void 0 : renderDateLabel(startDate, endDate)) !== null && _renderDateLabel !== void 0 ? _renderDateLabel : formatDateRange(startDate, endDate)
|
124
124
|
}, sharedFilterProps));
|
125
|
-
} else if (type === CHECKBOX) {
|
126
|
-
value.forEach(function (
|
127
|
-
if (
|
125
|
+
} else if (type === CHECKBOX || type === MULTISELECT) {
|
126
|
+
value.forEach(function (option) {
|
127
|
+
if (option.selected) {
|
128
128
|
tags.push(_objectSpread2(_objectSpread2({
|
129
129
|
key: id,
|
130
|
-
value:
|
130
|
+
value: option.value
|
131
131
|
}, sharedFilterProps), {}, {
|
132
132
|
onClose: function onClose() {
|
133
|
-
return handleSingleFilterRemoval(id,
|
133
|
+
return handleSingleFilterRemoval(id, option.value);
|
134
134
|
}
|
135
135
|
}));
|
136
136
|
}
|
@@ -139,22 +139,45 @@ var prepareFiltersForTags = function prepareFiltersForTags(filters, renderDateLa
|
|
139
139
|
});
|
140
140
|
return tags;
|
141
141
|
};
|
142
|
-
var
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
142
|
+
var filteringReducer = function filteringReducer(state, action) {
|
143
|
+
switch (action.type) {
|
144
|
+
case SAVED_FILTERS:
|
145
|
+
{
|
146
|
+
var _ref3 = action.payload || {},
|
147
|
+
savedFilters = _ref3.savedFilters;
|
148
|
+
return _objectSpread2(_objectSpread2({}, state), {}, {
|
149
|
+
savedFilters: savedFilters
|
150
|
+
});
|
151
|
+
}
|
152
|
+
default:
|
153
|
+
return state;
|
154
|
+
}
|
155
|
+
};
|
156
|
+
var FilterProvider = function FilterProvider(_ref4) {
|
157
|
+
var children = _ref4.children,
|
158
|
+
filters = _ref4.filters,
|
159
|
+
filterProps = _ref4.filterProps;
|
160
|
+
var _ref5 = filterProps || {},
|
161
|
+
renderDateLabel = _ref5.renderDateLabel;
|
148
162
|
var filterTags = prepareFiltersForTags(filters, renderDateLabel);
|
149
163
|
var _useState = useState(false),
|
150
164
|
_useState2 = _slicedToArray(_useState, 2),
|
151
165
|
panelOpen = _useState2[0],
|
152
166
|
setPanelOpen = _useState2[1];
|
167
|
+
var initialState = {
|
168
|
+
savedFilters: []
|
169
|
+
};
|
170
|
+
var _useReducer = useReducer(filteringReducer, initialState),
|
171
|
+
_useReducer2 = _slicedToArray(_useReducer, 2),
|
172
|
+
state = _useReducer2[0],
|
173
|
+
dispatch = _useReducer2[1];
|
153
174
|
var value = {
|
154
175
|
filterTags: filterTags,
|
155
176
|
EventEmitter: EventEmitter,
|
156
177
|
panelOpen: panelOpen,
|
157
|
-
setPanelOpen: setPanelOpen
|
178
|
+
setPanelOpen: setPanelOpen,
|
179
|
+
state: state,
|
180
|
+
dispatch: dispatch
|
158
181
|
};
|
159
182
|
return /*#__PURE__*/React__default.createElement(FilterContext.Provider, {
|
160
183
|
value: value
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/**
|
2
|
-
* Copyright IBM Corp. 2022,
|
2
|
+
* Copyright IBM Corp. 2022, 2024
|
3
3
|
*
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
@@ -16,9 +16,12 @@ export const NUMBER: "number";
|
|
16
16
|
export const CHECKBOX: "checkbox";
|
17
17
|
export const RADIO: "radio";
|
18
18
|
export const DROPDOWN: "dropdown";
|
19
|
+
export const MULTISELECT: "multiSelect";
|
19
20
|
/** Constants for event emitters */
|
20
21
|
export const CLEAR_FILTERS: "clearFilters";
|
21
22
|
export const CLEAR_SINGLE_FILTER: "clearSingleFilter";
|
22
23
|
/** Constants for panel dimensions */
|
23
24
|
export const PANEL_WIDTH: 320;
|
24
25
|
export const ACTION_SET_HEIGHT: 64;
|
26
|
+
/** Constants for local reducer */
|
27
|
+
export const SAVED_FILTERS: "savedFilters";
|
@@ -19,6 +19,7 @@ var NUMBER = 'number';
|
|
19
19
|
var CHECKBOX = 'checkbox';
|
20
20
|
var RADIO = 'radio';
|
21
21
|
var DROPDOWN = 'dropdown';
|
22
|
+
var MULTISELECT = 'multiSelect';
|
22
23
|
|
23
24
|
/** Constants for event emitters */
|
24
25
|
var CLEAR_FILTERS = 'clearFilters';
|
@@ -28,4 +29,7 @@ var CLEAR_SINGLE_FILTER = 'clearSingleFilter';
|
|
28
29
|
var PANEL_WIDTH = 320;
|
29
30
|
var ACTION_SET_HEIGHT = 64;
|
30
31
|
|
31
|
-
|
32
|
+
/** Constants for local reducer */
|
33
|
+
var SAVED_FILTERS = 'savedFilters';
|
34
|
+
|
35
|
+
export { ACTION_SET_HEIGHT, BATCH, CHECKBOX, CLEAR_FILTERS, CLEAR_SINGLE_FILTER, DATE, DROPDOWN, FLYOUT, INSTANT, MULTISELECT, NUMBER, PANEL, PANEL_WIDTH, RADIO, SAVED_FILTERS };
|
@@ -5,12 +5,13 @@
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
7
|
|
8
|
-
import { slicedToArray as _slicedToArray, extends as _extends,
|
9
|
-
import { DROPDOWN, RADIO, CHECKBOX, NUMBER, DATE, BATCH, INSTANT, PANEL } from '../constants.js';
|
10
|
-
import { Dropdown, FormGroup, RadioButtonGroup, RadioButton, NumberInput, DatePicker, DatePickerInput, Layer, Checkbox } from '@carbon/react';
|
11
|
-
import React__default, { useState, useRef, useCallback, useEffect } from 'react';
|
8
|
+
import { slicedToArray as _slicedToArray, extends as _extends, objectSpread2 as _objectSpread2, defineProperty as _defineProperty, toConsumableArray as _toConsumableArray } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
|
+
import { MULTISELECT, DROPDOWN, RADIO, CHECKBOX, NUMBER, DATE, BATCH, SAVED_FILTERS, INSTANT, PANEL } from '../constants.js';
|
10
|
+
import { MultiSelect, Dropdown, FormGroup, RadioButtonGroup, RadioButton, NumberInput, DatePicker, DatePickerInput, Layer, Checkbox } from '@carbon/react';
|
11
|
+
import React__default, { useContext, useState, useRef, useCallback, useEffect } from 'react';
|
12
12
|
import OverflowCheckboxes from '../OverflowCheckboxes.js';
|
13
13
|
import { getInitialStateFromFilters } from '../utils.js';
|
14
|
+
import { FilterContext } from '../FilterProvider.js';
|
14
15
|
import { handleCheckboxChange } from '../handleCheckboxChange.js';
|
15
16
|
import { usePreviousValue } from '../../../../../../global/js/hooks/usePreviousValue.js';
|
16
17
|
|
@@ -25,6 +26,10 @@ var useFilters = function useFilters(_ref) {
|
|
25
26
|
panelOpen = _ref.panelOpen,
|
26
27
|
autoHideFilters = _ref.autoHideFilters,
|
27
28
|
isFetching = _ref.isFetching;
|
29
|
+
var _useContext = useContext(FilterContext),
|
30
|
+
state = _useContext.state,
|
31
|
+
localDispatch = _useContext.dispatch;
|
32
|
+
var savedFilters = state.savedFilters;
|
28
33
|
/** State */
|
29
34
|
var _useState = useState(getInitialStateFromFilters(filters, variation, reactTableFiltersState)),
|
30
35
|
_useState2 = _slicedToArray(_useState, 2),
|
@@ -110,7 +115,7 @@ var useFilters = function useFilters(_ref) {
|
|
110
115
|
var id = _ref3.id;
|
111
116
|
return id === column;
|
112
117
|
});
|
113
|
-
var clearCheckbox = type === CHECKBOX && filterCopy[index].value.every(function (_ref4) {
|
118
|
+
var clearCheckbox = (type === CHECKBOX || type === MULTISELECT) && filterCopy[index].value.every(function (_ref4) {
|
114
119
|
var selected = _ref4.selected;
|
115
120
|
return selected === false;
|
116
121
|
});
|
@@ -122,6 +127,16 @@ var useFilters = function useFilters(_ref) {
|
|
122
127
|
filterCopy.splice(index, 1);
|
123
128
|
}
|
124
129
|
setFiltersObjectArray(filterCopy);
|
130
|
+
|
131
|
+
// Dispatch action from local filter context to track filters in order
|
132
|
+
// to keep history if `isFetching` becomes true. If so, react-table
|
133
|
+
// clears all filter history
|
134
|
+
localDispatch({
|
135
|
+
type: SAVED_FILTERS,
|
136
|
+
payload: {
|
137
|
+
savedFilters: filterCopy
|
138
|
+
}
|
139
|
+
});
|
125
140
|
if (updateMethod === INSTANT) {
|
126
141
|
setAllFilters(filterCopy);
|
127
142
|
}
|
@@ -272,6 +287,70 @@ var useFilters = function useFilters(_ref) {
|
|
272
287
|
}
|
273
288
|
}));
|
274
289
|
break;
|
290
|
+
case MULTISELECT:
|
291
|
+
{
|
292
|
+
var _filtersState$column5;
|
293
|
+
var isStringArray = components.MultiSelect.items.length && typeof components.MultiSelect.items[0] === 'string';
|
294
|
+
var selectedFilters = (_filtersState$column5 = filtersState[column]) === null || _filtersState$column5 === void 0 ? void 0 : _filtersState$column5.value.filter(function (i) {
|
295
|
+
return i.selected;
|
296
|
+
});
|
297
|
+
var filteredItems = components.MultiSelect.items.map(function (item) {
|
298
|
+
if (selectedFilters.filter(function (a) {
|
299
|
+
return isStringArray ? a.id === item : a.id === item.id;
|
300
|
+
}).length) {
|
301
|
+
return item;
|
302
|
+
}
|
303
|
+
return null;
|
304
|
+
}).filter(Boolean);
|
305
|
+
filter = /*#__PURE__*/React__default.createElement(MultiSelect, _extends({}, components.MultiSelect, {
|
306
|
+
selectedItems: filteredItems,
|
307
|
+
onChange: function onChange(_ref9) {
|
308
|
+
var _components$MultiSele, _components$MultiSele2;
|
309
|
+
var selectedItems = _ref9.selectedItems;
|
310
|
+
var allOptions = filtersState[column].value;
|
311
|
+
// Find selected items from list of options
|
312
|
+
var foundItems = selectedItems.map(function (item) {
|
313
|
+
if (allOptions.filter(function (option) {
|
314
|
+
return isStringArray ? option.id === item : option.id === item.id;
|
315
|
+
})) {
|
316
|
+
return allOptions.filter(function (option) {
|
317
|
+
return isStringArray ? option.id === item : option.id === item.id;
|
318
|
+
})[0];
|
319
|
+
}
|
320
|
+
return null;
|
321
|
+
}).filter(Boolean);
|
322
|
+
|
323
|
+
// Change selected state for those items that have been selected
|
324
|
+
allOptions.map(function (a) {
|
325
|
+
return a.selected = false;
|
326
|
+
});
|
327
|
+
foundItems.map(function (item) {
|
328
|
+
var foundOriginalItem = allOptions.filter(function (a) {
|
329
|
+
return isStringArray ? a === item : a.id === item.id;
|
330
|
+
});
|
331
|
+
if (foundOriginalItem && foundOriginalItem.length) {
|
332
|
+
foundOriginalItem[0].selected = true;
|
333
|
+
}
|
334
|
+
});
|
335
|
+
if (!selectedItems.length) {
|
336
|
+
allOptions.map(function (a) {
|
337
|
+
return a.selected = false;
|
338
|
+
});
|
339
|
+
}
|
340
|
+
setFiltersState(_objectSpread2(_objectSpread2({}, filtersState), {}, _defineProperty({}, column, {
|
341
|
+
value: allOptions,
|
342
|
+
type: type
|
343
|
+
})));
|
344
|
+
applyFilters({
|
345
|
+
column: column,
|
346
|
+
value: _toConsumableArray(filtersState[column].value),
|
347
|
+
type: type
|
348
|
+
});
|
349
|
+
(_components$MultiSele = components.MultiSelect) === null || _components$MultiSele === void 0 || (_components$MultiSele2 = _components$MultiSele.onChange) === null || _components$MultiSele2 === void 0 || _components$MultiSele2.call(_components$MultiSele, selectedItems);
|
350
|
+
}
|
351
|
+
}));
|
352
|
+
break;
|
353
|
+
}
|
275
354
|
}
|
276
355
|
if (isPanel) {
|
277
356
|
return /*#__PURE__*/React__default.createElement(Layer, {
|
@@ -312,10 +391,27 @@ var useFilters = function useFilters(_ref) {
|
|
312
391
|
setAllFilters(JSON.parse(prevFiltersObjectArrayRef.current));
|
313
392
|
setFetchingReset(true);
|
314
393
|
}
|
394
|
+
if (isFetching && fetchingReset) {
|
395
|
+
var cleanFilters = function cleanFilters(originalFilterState) {
|
396
|
+
var copy = _objectSpread2({}, originalFilterState);
|
397
|
+
var updatedFilters = savedFilters.map(function (f) {
|
398
|
+
if (Object.hasOwn(copy, f.id)) {
|
399
|
+
copy[f.id] = f;
|
400
|
+
return copy;
|
401
|
+
}
|
402
|
+
return copy;
|
403
|
+
});
|
404
|
+
return updatedFilters[0];
|
405
|
+
};
|
406
|
+
setFiltersObjectArray(savedFilters);
|
407
|
+
var filterStateCopy = cleanFilters(filtersState);
|
408
|
+
setFiltersState(filterStateCopy);
|
409
|
+
}
|
315
410
|
if (!isFetching) {
|
316
411
|
setFetchingReset(false);
|
317
412
|
}
|
318
|
-
|
413
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
414
|
+
}, [isFetching, reactTableFiltersState, setAllFilters, fetchingReset, savedFilters, filtersObjectArray]);
|
319
415
|
var cancel = function cancel() {
|
320
416
|
// Reverting to previous filters only applies when using batch actions
|
321
417
|
if (updateMethod === BATCH) {
|
@@ -6,7 +6,7 @@
|
|
6
6
|
*/
|
7
7
|
|
8
8
|
import { objectWithoutProperties as _objectWithoutProperties, objectSpread2 as _objectSpread2 } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
|
-
import { FLYOUT, PANEL, CHECKBOX, DATE, NUMBER, RADIO, DROPDOWN } from './constants.js';
|
9
|
+
import { FLYOUT, PANEL, CHECKBOX, DATE, NUMBER, RADIO, DROPDOWN, MULTISELECT } from './constants.js';
|
10
10
|
|
11
11
|
var _excluded = ["id", "labelText", "value"];
|
12
12
|
var applyInitialFilters = function applyInitialFilters(filterState, initialFilters) {
|
@@ -63,6 +63,17 @@ var getInitialStateFromFilters = function getInitialStateFromFilters(filters, va
|
|
63
63
|
value: '',
|
64
64
|
type: type
|
65
65
|
};
|
66
|
+
} else if (type === MULTISELECT) {
|
67
|
+
initialFilterState[column] = {
|
68
|
+
value: props.MultiSelect.items.map(function (item) {
|
69
|
+
return {
|
70
|
+
id: typeof item === 'string' ? item : item.id,
|
71
|
+
value: typeof item === 'string' ? item : item.text,
|
72
|
+
selected: false
|
73
|
+
};
|
74
|
+
}),
|
75
|
+
type: type
|
76
|
+
};
|
66
77
|
}
|
67
78
|
};
|
68
79
|
if (variation === FLYOUT) {
|
package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { defineProperty as _defineProperty } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
|
-
import cx from '
|
10
|
+
import cx from 'classnames';
|
11
11
|
import PropTypes from '../../../../../../node_modules/prop-types/index.js';
|
12
12
|
import { pkg } from '../../../../../../settings.js';
|
13
13
|
|
@@ -11,7 +11,7 @@ import PropTypes from '../../../../../../node_modules/prop-types/index.js';
|
|
11
11
|
import { Dropdown, DatePicker, DatePickerInput, NumberInput, TextInput } from '@carbon/react';
|
12
12
|
import { Edit, CaretSort, ChevronDown, Calendar } from '@carbon/react/icons';
|
13
13
|
import { pkg } from '../../../../../../settings.js';
|
14
|
-
import cx from '
|
14
|
+
import cx from 'classnames';
|
15
15
|
import { prepareProps } from '../../../../../../global/js/utils/props-helper.js';
|
16
16
|
import { InlineEditContext } from '../InlineEditContext/InlineEditContext.js';
|
17
17
|
import { usePreviousValue } from '../../../../../../global/js/hooks/usePreviousValue.js';
|
@@ -10,7 +10,7 @@ import React__default, { useRef, useEffect } from 'react';
|
|
10
10
|
import PropTypes from '../../../../../node_modules/prop-types/index.js';
|
11
11
|
import { Settings } from '@carbon/react/icons';
|
12
12
|
import { Popover, IconButton, PopoverContent, Layer } from '@carbon/react';
|
13
|
-
import cx from '
|
13
|
+
import cx from 'classnames';
|
14
14
|
import RowSizeRadioGroup from './RowSizeRadioGroup.js';
|
15
15
|
import { pkg, carbon } from '../../../../../settings.js';
|
16
16
|
|
@@ -116,7 +116,7 @@ var stateReducer = function stateReducer(newState, action) {
|
|
116
116
|
var dataWithRemovedRow = Object.fromEntries(Object.entries(newData).filter(function (_ref5) {
|
117
117
|
var _ref6 = _slicedToArray(_ref5, 1),
|
118
118
|
key = _ref6[0];
|
119
|
-
return parseInt(key) !== parseInt(rowData.index);
|
119
|
+
return parseInt(key) !== parseInt(_getRowId(rowData.original, rowData.index));
|
120
120
|
}));
|
121
121
|
return _objectSpread2(_objectSpread2({}, newState), {}, {
|
122
122
|
selectedRowData: dataWithRemovedRow
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
|
-
import cx from '
|
10
|
+
import cx from 'classnames';
|
11
11
|
import { IconSkeleton, IconButton, OverflowMenu, OverflowMenuItem } from '@carbon/react';
|
12
12
|
import { pkg } from '../../settings.js';
|
13
13
|
import { prepareProps } from '../../global/js/utils/props-helper.js';
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { objectSpread2 as _objectSpread2, toConsumableArray as _toConsumableArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
|
-
import cx from '
|
10
|
+
import cx from 'classnames';
|
11
11
|
import { pkg } from '../../settings.js';
|
12
12
|
|
13
13
|
var blockClass = "".concat(pkg.prefix, "--datagrid");
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { objectSpread2 as _objectSpread2, toConsumableArray as _toConsumableArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
|
-
import cx from '
|
10
|
+
import cx from 'classnames';
|
11
11
|
import { pkg } from '../../settings.js';
|
12
12
|
|
13
13
|
var blockClass = "".concat(pkg.prefix, "--datagrid");
|
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
import { objectSpread2 as _objectSpread2, toConsumableArray as _toConsumableArray, defineProperty as _defineProperty } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default from 'react';
|
10
|
-
import cx from '
|
10
|
+
import cx from 'classnames';
|
11
11
|
import { pkg } from '../../settings.js';
|
12
12
|
|
13
13
|
var blockClass = "".concat(pkg.prefix, "--datagrid");
|
@@ -5,61 +5,62 @@
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
7
|
|
8
|
-
import { slicedToArray as _slicedToArray, typeof as _typeof, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
8
|
+
import { defineProperty as _defineProperty, slicedToArray as _slicedToArray, typeof as _typeof, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import { useMemo } from 'react';
|
10
|
-
import { BATCH } from './Datagrid/addons/Filtering/constants.js';
|
10
|
+
import { DATE, NUMBER, CHECKBOX, BATCH, MULTISELECT } from './Datagrid/addons/Filtering/constants.js';
|
11
11
|
import FilterFlyout from './Datagrid/addons/Filtering/FilterFlyout.js';
|
12
12
|
|
13
|
+
var handleMultiFilter = function handleMultiFilter(rows, id, value) {
|
14
|
+
// gets all the items that are selected and returns their value
|
15
|
+
var selectedItems = value.filter(function (item) {
|
16
|
+
return item.selected;
|
17
|
+
}).map(function (item) {
|
18
|
+
return item.value;
|
19
|
+
});
|
20
|
+
|
21
|
+
// if the user removed all checkboxes then display all rows
|
22
|
+
if (selectedItems.length === 0) {
|
23
|
+
return rows;
|
24
|
+
}
|
25
|
+
return rows.filter(function (row) {
|
26
|
+
var rowValue = row.values[id];
|
27
|
+
return selectedItems.includes(rowValue);
|
28
|
+
});
|
29
|
+
};
|
13
30
|
var useFiltering = function useFiltering(hooks) {
|
14
31
|
/* istanbul ignore next */
|
15
32
|
var filterTypes = useMemo(function () {
|
16
|
-
return {
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
return false;
|
32
|
-
}
|
33
|
-
});
|
34
|
-
},
|
35
|
-
number: function number(rows, id, value) {
|
36
|
-
if (value === '') {
|
37
|
-
return rows;
|
38
|
-
}
|
39
|
-
var parsedValue = parseInt(value);
|
40
|
-
return rows.filter(function (row) {
|
41
|
-
var rowValue = row.values[id];
|
42
|
-
return rowValue === parsedValue;
|
43
|
-
});
|
44
|
-
},
|
45
|
-
checkbox: function checkbox(rows, id, value) {
|
46
|
-
// gets all the items that are selected and returns their value
|
47
|
-
var selectedItems = value.filter(function (item) {
|
48
|
-
return item.selected;
|
49
|
-
}).map(function (item) {
|
50
|
-
return item.value;
|
51
|
-
});
|
52
|
-
|
53
|
-
// if the user removed all checkboxes then display all rows
|
54
|
-
if (selectedItems.length === 0) {
|
55
|
-
return rows;
|
33
|
+
return _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, DATE, function (rows, id, _ref) {
|
34
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
35
|
+
startDate = _ref2[0],
|
36
|
+
endDate = _ref2[1];
|
37
|
+
return rows.filter(function (row) {
|
38
|
+
var rowValue = row.values[id];
|
39
|
+
var startDateObj = _typeof(startDate) === 'object' ? startDate : new Date(startDate);
|
40
|
+
var endDateObj = _typeof(endDate) === 'object' ? endDate : new Date(endDate);
|
41
|
+
var rowValueDateObj = _typeof(rowValue) === 'object' ? rowValue : new Date(rowValue);
|
42
|
+
if (rowValueDateObj.getTime() <= endDateObj.getTime() && rowValueDateObj.getTime() >= startDateObj.getTime()) {
|
43
|
+
// In date range
|
44
|
+
return true;
|
45
|
+
} else {
|
46
|
+
// Not in date range
|
47
|
+
return false;
|
56
48
|
}
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
49
|
+
});
|
50
|
+
}), NUMBER, function (rows, id, value) {
|
51
|
+
if (value === '') {
|
52
|
+
return rows;
|
61
53
|
}
|
62
|
-
|
54
|
+
var parsedValue = parseInt(value);
|
55
|
+
return rows.filter(function (row) {
|
56
|
+
var rowValue = row.values[id];
|
57
|
+
return rowValue === parsedValue;
|
58
|
+
});
|
59
|
+
}), CHECKBOX, function (rows, id, value) {
|
60
|
+
return handleMultiFilter(rows, id, value);
|
61
|
+
}), MULTISELECT, function (rows, id, value) {
|
62
|
+
return handleMultiFilter(rows, id, value);
|
63
|
+
});
|
63
64
|
}, []);
|
64
65
|
hooks.useInstance.push(function (instance) {
|
65
66
|
var filterProps = instance.filterProps,
|