@carbon/ibm-products 2.65.0 → 2.66.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/index-full-carbon.css +482 -64
- 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 +14 -20
- 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 +29 -22
- 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 +123 -39
- 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/_rollupPluginBabelHelpers.js +1 -510
- package/es/components/APIKeyModal/APIKeyDownloader.js +32 -50
- package/es/components/APIKeyModal/APIKeyModal.js +164 -217
- package/es/components/AboutModal/AboutModal.js +50 -52
- package/es/components/ActionBar/ActionBar.js +62 -56
- package/es/components/ActionBar/ActionBarItem.js +25 -18
- package/es/components/ActionBar/ActionBarOverflowItems.js +21 -19
- package/es/components/ActionSet/ActionSet.js +92 -88
- package/es/components/AddSelect/AddSelect.js +22 -20
- package/es/components/AddSelect/AddSelectBody.js +143 -154
- package/es/components/AddSelect/AddSelectBreadcrumbs.js +21 -14
- package/es/components/AddSelect/AddSelectColumn.js +97 -123
- package/es/components/AddSelect/AddSelectFilter.js +72 -79
- package/es/components/AddSelect/AddSelectFormControl.js +41 -35
- package/es/components/AddSelect/AddSelectList.js +24 -26
- package/es/components/AddSelect/AddSelectMetaPanel.js +24 -26
- package/es/components/AddSelect/AddSelectRow.js +86 -83
- package/es/components/AddSelect/AddSelectSidebar.js +56 -59
- package/es/components/AddSelect/AddSelectSort.js +31 -31
- package/es/components/AddSelect/add-select-utils.js +46 -41
- package/es/components/AddSelect/hooks/useFocus.js +7 -11
- package/es/components/AddSelect/hooks/useItemSort.js +13 -14
- package/es/components/AddSelect/hooks/useParentSelect.js +10 -8
- package/es/components/AddSelect/hooks/usePath.js +33 -36
- package/es/components/BigNumbers/BigNumbers.js +43 -46
- package/es/components/BigNumbers/BigNumbersSkeleton.js +15 -12
- package/es/components/BigNumbers/constants.js +5 -5
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +112 -127
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +70 -74
- package/es/components/Card/Card.d.ts +15 -11
- package/es/components/Card/Card.js +187 -171
- package/es/components/Card/CardFooter.js +32 -33
- package/es/components/Card/CardHeader.js +59 -46
- package/es/components/Carousel/Carousel.js +102 -118
- package/es/components/Carousel/CarouselItem.js +9 -8
- package/es/components/Cascade/Cascade.js +30 -25
- package/es/components/Checklist/Checklist.js +64 -75
- package/es/components/Checklist/Checklist.types.js +2 -2
- package/es/components/Checklist/ChecklistChart.js +22 -31
- package/es/components/Checklist/ChecklistIcon.js +14 -15
- package/es/components/Coachmark/Coachmark.js +71 -89
- package/es/components/Coachmark/CoachmarkDragbar.js +30 -40
- package/es/components/Coachmark/CoachmarkHeader.js +18 -21
- package/es/components/Coachmark/CoachmarkOverlay.js +70 -79
- package/es/components/Coachmark/CoachmarkTagline.js +19 -21
- package/es/components/Coachmark/utils/constants.js +10 -9
- package/es/components/Coachmark/utils/context.js +2 -2
- package/es/components/Coachmark/utils/enums.js +2 -2
- package/es/components/Coachmark/utils/hooks.js +12 -12
- package/es/components/CoachmarkBeacon/CoachmarkBeacon.js +15 -15
- package/es/components/CoachmarkButton/CoachmarkButton.js +10 -9
- package/es/components/CoachmarkFixed/CoachmarkFixed.js +50 -68
- package/es/components/CoachmarkOverlayElement/CoachmarkOverlayElement.js +16 -15
- package/es/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +54 -72
- package/es/components/CoachmarkStack/CoachmarkStack.js +64 -82
- package/es/components/CoachmarkStack/CoachmarkStackHome.js +55 -62
- package/es/components/ComboButton/ComboButton.js +45 -52
- package/es/components/ComboButton/ComboButtonItem/index.js +4 -3
- package/es/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +106 -105
- package/es/components/ConditionBuilder/ConditionBuilder.js +34 -45
- package/es/components/ConditionBuilder/ConditionBuilder.types.d.ts +15 -2
- package/es/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +72 -92
- package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
- package/es/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +61 -38
- package/es/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +31 -27
- package/es/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +25 -24
- package/es/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +16 -16
- package/es/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +101 -108
- package/es/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +14 -20
- package/es/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +1 -1
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +59 -72
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +30 -39
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +18 -19
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +40 -51
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +59 -94
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +14 -13
- package/es/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +19 -30
- package/es/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +182 -200
- package/es/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +34 -33
- package/es/components/ConditionBuilder/utils/handleKeyboardEvents.js +52 -65
- package/es/components/ConditionBuilder/utils/useDataConfigs.js +11 -30
- package/es/components/ConditionBuilder/utils/useTranslations.js +7 -6
- package/es/components/ConditionBuilder/utils/util.js +27 -36
- package/es/components/CreateFullPage/CreateFullPage.d.ts +5 -1
- package/es/components/CreateFullPage/CreateFullPage.js +99 -151
- package/es/components/CreateFullPage/CreateFullPageStep.js +65 -59
- package/es/components/CreateInfluencer/CreateInfluencer.js +25 -29
- package/es/components/CreateModal/CreateModal.js +40 -36
- package/es/components/CreateSidePanel/CreateSidePanel.js +40 -39
- package/es/components/CreateTearsheet/CreateTearsheet.d.ts +1 -1
- package/es/components/CreateTearsheet/CreateTearsheet.js +113 -164
- package/es/components/CreateTearsheet/CreateTearsheetDivider.js +9 -7
- package/es/components/CreateTearsheet/CreateTearsheetStep.js +73 -69
- package/es/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +30 -30
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +296 -339
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +215 -215
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +122 -121
- package/es/components/DataSpreadsheet/hooks/useMoveActiveCell.js +15 -13
- package/es/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +35 -53
- package/es/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +10 -9
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +40 -46
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +29 -28
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +73 -88
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +16 -15
- package/es/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +10 -12
- package/es/components/DataSpreadsheet/utils/checkForHoldingKey.js +1 -1
- package/es/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +11 -12
- package/es/components/DataSpreadsheet/utils/commonEventHandlers.js +75 -124
- package/es/components/DataSpreadsheet/utils/createActiveCellFn.js +25 -25
- package/es/components/DataSpreadsheet/utils/createCellSelectionArea.js +32 -31
- package/es/components/DataSpreadsheet/utils/getCellSize.js +2 -4
- package/es/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +9 -9
- package/es/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +12 -14
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +40 -36
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +37 -34
- package/es/components/DataSpreadsheet/utils/handleCellDeletion.js +22 -23
- package/es/components/DataSpreadsheet/utils/handleEditSubmit.js +37 -34
- package/es/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +65 -76
- package/es/components/DataSpreadsheet/utils/handleMultipleKeys.js +94 -88
- package/es/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +29 -26
- package/es/components/DataSpreadsheet/utils/removeCellSelections.js +9 -11
- package/es/components/DataSpreadsheet/utils/selectAllCells.js +17 -14
- package/es/components/Datagrid/Datagrid/Datagrid.js +27 -24
- package/es/components/Datagrid/Datagrid/DatagridBody.js +7 -6
- package/es/components/Datagrid/Datagrid/DatagridContent.js +130 -112
- package/es/components/Datagrid/Datagrid/DatagridEmptyBody.js +19 -18
- package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +42 -43
- package/es/components/Datagrid/Datagrid/DatagridHead.js +9 -10
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +172 -125
- package/es/components/Datagrid/Datagrid/DatagridRefBody.js +18 -15
- package/es/components/Datagrid/Datagrid/DatagridRow.js +101 -91
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +63 -61
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +48 -57
- package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +18 -15
- package/es/components/Datagrid/Datagrid/DatagridToolbar.js +83 -96
- package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +74 -76
- package/es/components/Datagrid/Datagrid/DraggableElement.js +38 -29
- package/es/components/Datagrid/Datagrid/addons/AiLabel/DatagridAiLabel.js +6 -4
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +9 -7
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +18 -20
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +34 -36
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +56 -85
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +88 -106
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +27 -29
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -3
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +96 -104
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +125 -136
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +90 -106
- package/es/components/Datagrid/Datagrid/addons/Filtering/OverflowCheckboxes.js +41 -46
- package/es/components/Datagrid/Datagrid/addons/Filtering/constants.js +13 -13
- package/es/components/Datagrid/Datagrid/addons/Filtering/handleCheckboxChange.js +23 -30
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilterContext.js +2 -2
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +212 -219
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +13 -11
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useSubscribeToEventEmitter.js +4 -3
- package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +44 -42
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +28 -17
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +196 -191
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +41 -39
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +7 -9
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +18 -15
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +5 -3
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +84 -73
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +22 -26
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +24 -28
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +19 -18
- package/es/components/Datagrid/Datagrid/addons/stateReducer.js +211 -173
- package/es/components/Datagrid/common-column-ids.js +1 -1
- package/es/components/Datagrid/useActionsColumn.js +81 -61
- package/es/components/Datagrid/useColumnCenterAlign.js +17 -27
- package/es/components/Datagrid/useColumnRightAlign.js +17 -28
- package/es/components/Datagrid/useCustomizeColumns.js +18 -20
- package/es/components/Datagrid/useDatagrid.js +13 -18
- package/es/components/Datagrid/useDefaultStringRenderer.js +19 -20
- package/es/components/Datagrid/useDisableSelectRows.js +49 -57
- package/es/components/Datagrid/useEditableCell.js +1 -1
- package/es/components/Datagrid/useExpandedRow.js +20 -25
- package/es/components/Datagrid/useFiltering.js +53 -58
- package/es/components/Datagrid/useFlexResize.js +31 -29
- package/es/components/Datagrid/useFloatingScroll.js +40 -38
- package/es/components/Datagrid/useFocusRowExpander.js +16 -15
- package/es/components/Datagrid/useInfiniteScroll.js +22 -20
- package/es/components/Datagrid/useInitialColumnSort.js +22 -21
- package/es/components/Datagrid/useInlineEdit.js +24 -26
- package/es/components/Datagrid/useNestedRowExpander.js +63 -80
- package/es/components/Datagrid/useNestedRows.js +45 -45
- package/es/components/Datagrid/useOnRowClick.js +32 -26
- package/es/components/Datagrid/useParentDimensions.js +35 -37
- package/es/components/Datagrid/useResizeTable.js +11 -9
- package/es/components/Datagrid/useRowExpander.js +30 -27
- package/es/components/Datagrid/useRowIsMouseOver.js +22 -28
- package/es/components/Datagrid/useRowRenderer.js +25 -35
- package/es/components/Datagrid/useRowSize.js +27 -24
- package/es/components/Datagrid/useSelectAllToggle.js +47 -46
- package/es/components/Datagrid/useSelectRows.js +90 -107
- package/es/components/Datagrid/useSkeletonRows.js +14 -25
- package/es/components/Datagrid/useSortableColumns.js +61 -87
- package/es/components/Datagrid/useStickyColumn.js +84 -94
- package/es/components/Datagrid/utils/getAutoSizedColumnWidth.js +5 -16
- package/es/components/Decorator/Decorator.js +3 -3
- package/es/components/DecoratorBase/DecoratorBase.js +94 -88
- package/es/components/DecoratorBase/DecoratorIcon.js +15 -15
- package/es/components/DecoratorBase/utils.js +8 -6
- package/es/components/DecoratorDualButton/DecoratorDualButton.js +4 -4
- package/es/components/DecoratorLink/DecoratorLink.js +4 -4
- package/es/components/DecoratorSingleButton/DecoratorSingleButton.js +4 -4
- package/es/components/DelimitedList/DelimitedList.js +16 -15
- package/es/components/DescriptionList/DescriptionList.js +21 -17
- package/es/components/DescriptionList/DescriptionListBody.js +9 -9
- package/es/components/DescriptionList/DescriptionListCell.js +9 -9
- package/es/components/DescriptionList/DescriptionListRow.js +9 -9
- package/es/components/DescriptionList/constants.js +1 -1
- package/es/components/EditFullPage/EditFullPage.js +16 -10
- package/es/components/EditInPlace/EditInPlace.js +80 -78
- package/es/components/EditSidePanel/EditSidePanel.js +50 -47
- package/es/components/EditTearsheet/EditTearsheet.js +65 -99
- package/es/components/EditTearsheet/EditTearsheetForm.js +36 -28
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +15 -10
- package/es/components/EditUpdateCards/EditUpdateCards.d.ts +2 -9
- package/es/components/EditUpdateCards/EditUpdateCards.js +42 -31
- package/es/components/EmptyStates/EmptyState.js +38 -34
- package/es/components/EmptyStates/EmptyStateContent.js +29 -21
- package/es/components/EmptyStates/EmptyStateIllustration.js +15 -28
- package/es/components/EmptyStates/EmptyStateV2.js +34 -29
- package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +28 -25
- package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +28 -25
- package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +28 -25
- package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +28 -25
- package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +28 -25
- package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +28 -25
- package/es/components/EmptyStates/assets/ErrorIllustration.js +27 -26
- package/es/components/EmptyStates/assets/NoDataIllustration.js +25 -24
- package/es/components/EmptyStates/assets/NoTagsIllustration.js +54 -53
- package/es/components/EmptyStates/assets/NotFoundIllustration.js +38 -37
- package/es/components/EmptyStates/assets/NotificationsIllustration.js +43 -42
- package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +38 -37
- package/es/components/ExportModal/ExportModal.js +82 -94
- package/es/components/ExpressiveCard/ExpressiveCard.d.ts +2 -10
- package/es/components/ExpressiveCard/ExpressiveCard.js +11 -5
- package/es/components/FeatureFlags/index.js +33 -43
- package/es/components/FilterPanel/FilterPanel.js +12 -12
- package/es/components/FilterPanel/FilterPanelAccordion/FilterPanelAccordion.js +20 -20
- package/es/components/FilterPanel/FilterPanelAccordionItem/FilterPanelAccordionItem.js +21 -25
- package/es/components/FilterPanel/FilterPanelCheckbox/FilterPanelCheckbox.js +13 -13
- package/es/components/FilterPanel/FilterPanelCheckboxWithOverflow/FilterPanelCheckboxWithOverflow.js +54 -60
- package/es/components/FilterPanel/FilterPanelGroup/FilterPanelGroup.js +15 -15
- package/es/components/FilterPanel/FilterPanelLabel/FilterPanelLabel.js +13 -13
- package/es/components/FilterPanel/FilterPanelSearch/FilterPanelSearch.js +21 -25
- package/es/components/FilterSummary/FilterSummary.js +60 -67
- package/es/components/FullPageError/FullPageError.js +28 -26
- package/es/components/FullPageError/assets/Error403SVG.js +4 -2
- package/es/components/FullPageError/assets/Error404SVG.js +4 -2
- package/es/components/FullPageError/assets/ErrorGenericSVG.js +4 -2
- package/es/components/GetStartedCard/GetStartedCard.js +6 -6
- package/es/components/Guidebanner/Guidebanner.js +46 -63
- package/es/components/Guidebanner/GuidebannerElement.js +14 -14
- package/es/components/Guidebanner/GuidebannerElementButton.js +15 -17
- package/es/components/Guidebanner/GuidebannerElementLink.js +9 -9
- package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +18 -18
- package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +18 -18
- package/es/components/HTTPErrors/HTTPErrorContent.js +23 -22
- package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +18 -18
- package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +83 -81
- package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +87 -85
- package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +83 -81
- package/es/components/ImportModal/ImportModal.js +125 -162
- package/es/components/InlineTip/InlineTip.js +46 -61
- package/es/components/InlineTip/InlineTipButton.js +9 -9
- package/es/components/InlineTip/InlineTipLink.js +12 -13
- package/es/components/InlineTip/utils.js +9 -19
- package/es/components/InterstitialScreen/InterstitialScreen.js +62 -83
- package/es/components/InterstitialScreen/InterstitialScreenBody.js +56 -62
- package/es/components/InterstitialScreen/InterstitialScreenFooter.js +87 -118
- package/es/components/InterstitialScreen/InterstitialScreenHeader.js +29 -25
- package/es/components/MultiAddSelect/MultiAddSelect.js +5 -7
- package/es/components/Nav/Nav.js +39 -43
- package/es/components/Nav/NavItem.js +44 -51
- package/es/components/Nav/NavItemLink.js +9 -8
- package/es/components/Nav/NavList.js +57 -66
- package/es/components/NonLinearReading/NonLinearReading.js +18 -23
- package/es/components/NotificationsPanel/NotificationsPanel.js +178 -258
- package/es/components/NotificationsPanel/utils.js +26 -24
- package/es/components/OptionsTile/OptionsTile.js +90 -82
- package/es/components/PageHeader/PageHeader.js +293 -256
- package/es/components/PageHeader/PageHeaderTitle.js +43 -36
- package/es/components/PageHeader/PageHeaderUtils.js +31 -28
- package/es/components/ProductiveCard/ProductiveCard.d.ts +2 -13
- package/es/components/ProductiveCard/ProductiveCard.js +20 -14
- package/es/components/RemoveModal/RemoveModal.js +46 -49
- package/es/components/Saving/Saving.js +54 -59
- package/es/components/ScrollGradient/ScrollGradient.js +63 -66
- package/es/components/ScrollGradient/constants.js +13 -24
- package/es/components/SearchBar/SearchBar.d.ts +5 -6
- package/es/components/SearchBar/SearchBar.js +62 -68
- package/es/components/SidePanel/SidePanel.d.ts +2 -5
- package/es/components/SidePanel/SidePanel.js +242 -245
- package/es/components/SidePanel/constants.js +1 -1
- package/es/components/SimpleHeader/SimpleHeader.js +22 -25
- package/es/components/SingleAddSelect/SingleAddSelect.js +3 -3
- package/es/components/StatusIcon/StatusIcon.js +195 -281
- package/es/components/StatusIndicator/StatusIndicator.js +21 -24
- package/es/components/StatusIndicator/StatusIndicatorStep.js +18 -18
- package/es/components/StringFormatter/StringFormatter.js +62 -38
- package/es/components/StringFormatter/utils/enums.js +13 -13
- package/es/components/TagOverflow/TagOverflow.js +70 -74
- package/es/components/TagOverflow/TagOverflowModal.js +49 -52
- package/es/components/TagOverflow/TagOverflowPopover.js +63 -61
- package/es/components/TagOverflow/constants.js +1 -1
- package/es/components/TagSet/TagSet.js +104 -130
- package/es/components/TagSet/TagSetModal.js +48 -51
- package/es/components/TagSet/TagSetOverflow.js +54 -50
- package/es/components/Tearsheet/Tearsheet.js +22 -22
- package/es/components/Tearsheet/TearsheetNarrow.js +20 -19
- package/es/components/Tearsheet/TearsheetShell.js +160 -156
- package/es/components/Toolbar/Toolbar.js +44 -47
- package/es/components/Toolbar/ToolbarButton.js +25 -24
- package/es/components/Toolbar/ToolbarGroup.js +9 -8
- package/es/components/TooltipTrigger/TooltipTrigger.js +10 -9
- package/es/components/TruncatedList/TruncatedList.js +44 -61
- package/es/components/UserAvatar/UserAvatar.js +49 -48
- package/es/components/UserProfileImage/UserProfileImage.js +59 -74
- package/es/components/WebTerminal/WebTerminal.js +64 -67
- package/es/components/WebTerminal/WebTerminalContentWrapper.js +16 -11
- package/es/components/WebTerminal/hooks/index.js +21 -23
- package/es/components/_Canary/Canary.js +13 -8
- package/es/global/js/hooks/useActiveElement.js +5 -9
- package/es/global/js/hooks/useClickOutside.js +4 -4
- package/es/global/js/hooks/useControllableState.js +3 -7
- package/es/global/js/hooks/useCreateComponentFocus.js +16 -30
- package/es/global/js/hooks/useCreateComponentStepChange.js +99 -190
- package/es/global/js/hooks/useFocus.js +64 -85
- package/es/global/js/hooks/useIsomorphicEffect.js +1 -1
- package/es/global/js/hooks/useOverflowItems/useOverflowItems.js +48 -58
- package/es/global/js/hooks/useOverflowString.js +13 -24
- package/es/global/js/hooks/usePortalTarget.js +5 -11
- package/es/global/js/hooks/usePrefersReducedMotion.js +12 -12
- package/es/global/js/hooks/usePrefix.js +1 -3
- package/es/global/js/hooks/usePresence.js +8 -12
- package/es/global/js/hooks/usePreviousValue.js +3 -3
- package/es/global/js/hooks/useResetCreateComponent.js +15 -13
- package/es/global/js/hooks/useResizeObserver.js +26 -34
- package/es/global/js/hooks/useRetrieveFormTitles.js +10 -9
- package/es/global/js/hooks/useRetrieveStepData.js +21 -20
- package/es/global/js/hooks/useValidCreateStepCount.js +3 -3
- package/es/global/js/hooks/useWindowResize.js +23 -23
- package/es/global/js/hooks/useWindowScroll.js +15 -18
- package/es/global/js/package-settings.js +43 -56
- package/es/global/js/utils/Wrap.js +19 -18
- package/es/global/js/utils/clamp.js +1 -1
- package/es/global/js/utils/debounce.js +6 -6
- package/es/global/js/utils/deepCloneObject.js +7 -16
- package/es/global/js/utils/deepCompareObject.js +9 -18
- package/es/global/js/utils/devtools.js +3 -2
- package/es/global/js/utils/getFocusableElements.js +2 -13
- package/es/global/js/utils/getNodeTextContent.js +6 -15
- package/es/global/js/utils/getNumberOfHiddenSteps.js +3 -3
- package/es/global/js/utils/getScrollbarWidth.js +3 -3
- package/es/global/js/utils/getSupportedLocale.js +3 -3
- package/es/global/js/utils/lastIndexInArray.js +3 -4
- package/es/global/js/utils/pconsole.js +15 -22
- package/es/global/js/utils/props-helper.js +34 -40
- package/es/global/js/utils/rangeWithCallback.js +2 -2
- package/es/global/js/utils/scrollableAncestor.js +8 -17
- package/es/global/js/utils/throttle.js +4 -4
- package/es/global/js/utils/useId.js +11 -3
- package/es/global/js/utils/uuidv4.js +3 -7
- package/es/global/js/utils/wait.js +1 -3
- package/es/node_modules/@carbon/icons-react/es/Icon.js +17 -19
- package/es/node_modules/@carbon/icons-react/es/generated/bucket-10.js +1263 -1136
- package/es/node_modules/@carbon/icons-react/es/generated/bucket-3.js +1330 -1186
- package/es/node_modules/@carbon/icons-react/es/iconPropTypes-4cbeb95d.js +1 -1
- package/es/node_modules/@carbon/icons-react/node_modules/@carbon/icon-helpers/es/index.js +3 -5
- package/es/node_modules/prop-types/checkPropTypes.js +4 -5
- package/es/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
- package/es/node_modules/prop-types/factoryWithTypeCheckers.js +6 -7
- package/es/settings.js +15 -19
- package/lib/_virtual/_rollupPluginBabelHelpers.js +0 -530
- package/lib/components/APIKeyModal/APIKeyDownloader.js +31 -49
- package/lib/components/APIKeyModal/APIKeyModal.js +163 -216
- package/lib/components/AboutModal/AboutModal.js +49 -51
- package/lib/components/ActionBar/ActionBar.js +61 -55
- package/lib/components/ActionBar/ActionBarItem.js +24 -17
- package/lib/components/ActionBar/ActionBarOverflowItems.js +21 -19
- package/lib/components/ActionSet/ActionSet.js +91 -87
- package/lib/components/AddSelect/AddSelect.js +20 -18
- package/lib/components/AddSelect/AddSelectBody.js +140 -151
- package/lib/components/AddSelect/AddSelectBreadcrumbs.js +21 -14
- package/lib/components/AddSelect/AddSelectColumn.js +96 -122
- package/lib/components/AddSelect/AddSelectFilter.js +71 -78
- package/lib/components/AddSelect/AddSelectFormControl.js +41 -35
- package/lib/components/AddSelect/AddSelectList.js +23 -25
- package/lib/components/AddSelect/AddSelectMetaPanel.js +24 -26
- package/lib/components/AddSelect/AddSelectRow.js +85 -82
- package/lib/components/AddSelect/AddSelectSidebar.js +56 -59
- package/lib/components/AddSelect/AddSelectSort.js +30 -30
- package/lib/components/AddSelect/add-select-utils.js +46 -41
- package/lib/components/AddSelect/hooks/useFocus.js +7 -11
- package/lib/components/AddSelect/hooks/useItemSort.js +13 -14
- package/lib/components/AddSelect/hooks/useParentSelect.js +10 -8
- package/lib/components/AddSelect/hooks/usePath.js +33 -36
- package/lib/components/BigNumbers/BigNumbers.js +42 -45
- package/lib/components/BigNumbers/BigNumbersSkeleton.js +14 -11
- package/lib/components/BigNumbers/constants.js +5 -5
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +111 -126
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +69 -73
- package/lib/components/Card/Card.d.ts +15 -11
- package/lib/components/Card/Card.js +185 -169
- package/lib/components/Card/CardFooter.js +32 -33
- package/lib/components/Card/CardHeader.js +58 -45
- package/lib/components/Carousel/Carousel.js +101 -117
- package/lib/components/Carousel/CarouselItem.js +8 -7
- package/lib/components/Cascade/Cascade.js +30 -25
- package/lib/components/Checklist/Checklist.js +63 -74
- package/lib/components/Checklist/Checklist.types.js +2 -2
- package/lib/components/Checklist/ChecklistChart.js +21 -30
- package/lib/components/Checklist/ChecklistIcon.js +13 -14
- package/lib/components/Coachmark/Coachmark.js +70 -88
- package/lib/components/Coachmark/CoachmarkDragbar.js +29 -39
- package/lib/components/Coachmark/CoachmarkHeader.js +17 -20
- package/lib/components/Coachmark/CoachmarkOverlay.js +69 -78
- package/lib/components/Coachmark/CoachmarkTagline.js +18 -20
- package/lib/components/Coachmark/utils/constants.js +10 -9
- package/lib/components/Coachmark/utils/context.js +2 -2
- package/lib/components/Coachmark/utils/enums.js +2 -2
- package/lib/components/Coachmark/utils/hooks.js +12 -12
- package/lib/components/CoachmarkBeacon/CoachmarkBeacon.js +14 -14
- package/lib/components/CoachmarkButton/CoachmarkButton.js +9 -8
- package/lib/components/CoachmarkFixed/CoachmarkFixed.js +49 -67
- package/lib/components/CoachmarkOverlayElement/CoachmarkOverlayElement.js +15 -14
- package/lib/components/CoachmarkOverlayElements/CoachmarkOverlayElements.js +53 -71
- package/lib/components/CoachmarkStack/CoachmarkStack.js +63 -81
- package/lib/components/CoachmarkStack/CoachmarkStackHome.js +54 -61
- package/lib/components/ComboButton/ComboButton.js +44 -51
- package/lib/components/ComboButton/ComboButtonItem/index.js +4 -3
- package/lib/components/ConditionBuilder/ConditionBlock/ConditionBlock.js +105 -104
- package/lib/components/ConditionBuilder/ConditionBuilder.js +33 -44
- package/lib/components/ConditionBuilder/ConditionBuilder.types.d.ts +15 -2
- package/lib/components/ConditionBuilder/ConditionBuilderActions/ConditionBuilderActions.js +72 -92
- package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.d.ts +3 -1
- package/lib/components/ConditionBuilder/ConditionBuilderAdd/ConditionBuilderAdd.js +59 -36
- package/lib/components/ConditionBuilder/ConditionBuilderButton/ConditionBuilderButton.js +30 -26
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/ConditionConnector.js +24 -23
- package/lib/components/ConditionBuilder/ConditionBuilderConnector/GroupConnector.js +16 -16
- package/lib/components/ConditionBuilder/ConditionBuilderContent/ConditionBuilderContent.js +99 -106
- package/lib/components/ConditionBuilder/ConditionBuilderContext/ConditionBuilderProvider.js +14 -20
- package/lib/components/ConditionBuilder/ConditionBuilderContext/translationObject.js +1 -1
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItem.js +58 -71
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemDate/ConditionBuilderItemDate.js +29 -38
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemNumber/ConditionBuilderItemNumber.js +17 -18
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOption.js +40 -51
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemOption/ItemOptionForValueField.js +59 -94
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemText/ConditionBuilderItemText.js +14 -13
- package/lib/components/ConditionBuilder/ConditionBuilderItem/ConditionBuilderItemTime/ConditionBuilderItemTime.js +19 -30
- package/lib/components/ConditionBuilder/ConditionGroupBuilder/ConditionGroupBuilder.js +182 -200
- package/lib/components/ConditionBuilder/ConditionPreview/ConditionPreview.js +34 -33
- package/lib/components/ConditionBuilder/utils/handleKeyboardEvents.js +52 -65
- package/lib/components/ConditionBuilder/utils/useDataConfigs.js +11 -30
- package/lib/components/ConditionBuilder/utils/useTranslations.js +7 -6
- package/lib/components/ConditionBuilder/utils/util.js +27 -36
- package/lib/components/CreateFullPage/CreateFullPage.d.ts +5 -1
- package/lib/components/CreateFullPage/CreateFullPage.js +98 -150
- package/lib/components/CreateFullPage/CreateFullPageStep.js +64 -58
- package/lib/components/CreateInfluencer/CreateInfluencer.js +25 -29
- package/lib/components/CreateModal/CreateModal.js +39 -35
- package/lib/components/CreateSidePanel/CreateSidePanel.js +39 -38
- package/lib/components/CreateTearsheet/CreateTearsheet.d.ts +1 -1
- package/lib/components/CreateTearsheet/CreateTearsheet.js +112 -163
- package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +8 -6
- package/lib/components/CreateTearsheet/CreateTearsheetStep.js +72 -68
- package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +29 -29
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +292 -335
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +213 -213
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +121 -120
- package/lib/components/DataSpreadsheet/hooks/useMoveActiveCell.js +15 -13
- package/lib/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +35 -53
- package/lib/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +10 -9
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +40 -46
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +29 -28
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +72 -87
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +16 -15
- package/lib/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +9 -11
- package/lib/components/DataSpreadsheet/utils/checkForHoldingKey.js +1 -1
- package/lib/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +10 -11
- package/lib/components/DataSpreadsheet/utils/commonEventHandlers.js +73 -122
- package/lib/components/DataSpreadsheet/utils/createActiveCellFn.js +25 -25
- package/lib/components/DataSpreadsheet/utils/createCellSelectionArea.js +31 -30
- package/lib/components/DataSpreadsheet/utils/getCellSize.js +2 -4
- package/lib/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +9 -9
- package/lib/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +12 -14
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +40 -36
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +37 -34
- package/lib/components/DataSpreadsheet/utils/handleCellDeletion.js +21 -22
- package/lib/components/DataSpreadsheet/utils/handleEditSubmit.js +37 -34
- package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +64 -75
- package/lib/components/DataSpreadsheet/utils/handleMultipleKeys.js +93 -87
- package/lib/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +29 -26
- package/lib/components/DataSpreadsheet/utils/removeCellSelections.js +9 -11
- package/lib/components/DataSpreadsheet/utils/selectAllCells.js +17 -14
- package/lib/components/Datagrid/Datagrid/Datagrid.js +26 -23
- package/lib/components/Datagrid/Datagrid/DatagridBody.js +7 -6
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +129 -111
- package/lib/components/Datagrid/Datagrid/DatagridEmptyBody.js +19 -18
- package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +41 -42
- package/lib/components/Datagrid/Datagrid/DatagridHead.js +9 -10
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +170 -123
- package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +17 -14
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +99 -89
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +62 -60
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +47 -56
- package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +17 -14
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +83 -96
- package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +73 -75
- package/lib/components/Datagrid/Datagrid/DraggableElement.js +37 -28
- package/lib/components/Datagrid/Datagrid/addons/AiLabel/DatagridAiLabel.js +6 -4
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +9 -7
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +17 -19
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +34 -36
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +56 -85
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +86 -104
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +26 -28
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -3
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterFlyout.js +96 -104
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +124 -135
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +90 -106
- package/lib/components/Datagrid/Datagrid/addons/Filtering/OverflowCheckboxes.js +40 -45
- package/lib/components/Datagrid/Datagrid/addons/Filtering/constants.js +13 -13
- package/lib/components/Datagrid/Datagrid/addons/Filtering/handleCheckboxChange.js +23 -30
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilterContext.js +2 -2
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +211 -218
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +11 -9
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useSubscribeToEventEmitter.js +4 -3
- package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +44 -42
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +28 -17
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +195 -190
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +41 -39
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +7 -9
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +18 -15
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +5 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +84 -73
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +22 -26
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +23 -27
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +19 -18
- package/lib/components/Datagrid/Datagrid/addons/stateReducer.js +211 -173
- package/lib/components/Datagrid/common-column-ids.js +1 -1
- package/lib/components/Datagrid/useActionsColumn.js +80 -60
- package/lib/components/Datagrid/useColumnCenterAlign.js +17 -27
- package/lib/components/Datagrid/useColumnRightAlign.js +17 -28
- package/lib/components/Datagrid/useCustomizeColumns.js +17 -19
- package/lib/components/Datagrid/useDatagrid.js +12 -17
- package/lib/components/Datagrid/useDefaultStringRenderer.js +19 -20
- package/lib/components/Datagrid/useDisableSelectRows.js +49 -57
- package/lib/components/Datagrid/useEditableCell.js +1 -1
- package/lib/components/Datagrid/useExpandedRow.js +20 -25
- package/lib/components/Datagrid/useFiltering.js +51 -56
- package/lib/components/Datagrid/useFlexResize.js +31 -29
- package/lib/components/Datagrid/useFloatingScroll.js +40 -38
- package/lib/components/Datagrid/useFocusRowExpander.js +16 -15
- package/lib/components/Datagrid/useInfiniteScroll.js +22 -20
- package/lib/components/Datagrid/useInitialColumnSort.js +22 -21
- package/lib/components/Datagrid/useInlineEdit.js +24 -26
- package/lib/components/Datagrid/useNestedRowExpander.js +61 -78
- package/lib/components/Datagrid/useNestedRows.js +45 -45
- package/lib/components/Datagrid/useOnRowClick.js +32 -26
- package/lib/components/Datagrid/useParentDimensions.js +35 -37
- package/lib/components/Datagrid/useResizeTable.js +11 -9
- package/lib/components/Datagrid/useRowExpander.js +28 -25
- package/lib/components/Datagrid/useRowIsMouseOver.js +22 -28
- package/lib/components/Datagrid/useRowRenderer.js +25 -35
- package/lib/components/Datagrid/useRowSize.js +26 -23
- package/lib/components/Datagrid/useSelectAllToggle.js +47 -46
- package/lib/components/Datagrid/useSelectRows.js +89 -106
- package/lib/components/Datagrid/useSkeletonRows.js +14 -25
- package/lib/components/Datagrid/useSortableColumns.js +61 -87
- package/lib/components/Datagrid/useStickyColumn.js +84 -94
- package/lib/components/Datagrid/utils/getAutoSizedColumnWidth.js +5 -16
- package/lib/components/Decorator/Decorator.js +3 -3
- package/lib/components/DecoratorBase/DecoratorBase.js +93 -87
- package/lib/components/DecoratorBase/DecoratorIcon.js +14 -14
- package/lib/components/DecoratorBase/utils.js +8 -6
- package/lib/components/DecoratorDualButton/DecoratorDualButton.js +4 -4
- package/lib/components/DecoratorLink/DecoratorLink.js +4 -4
- package/lib/components/DecoratorSingleButton/DecoratorSingleButton.js +4 -4
- package/lib/components/DelimitedList/DelimitedList.js +15 -14
- package/lib/components/DescriptionList/DescriptionList.js +20 -16
- package/lib/components/DescriptionList/DescriptionListBody.js +8 -8
- package/lib/components/DescriptionList/DescriptionListCell.js +8 -8
- package/lib/components/DescriptionList/DescriptionListRow.js +8 -8
- package/lib/components/DescriptionList/constants.js +1 -1
- package/lib/components/EditFullPage/EditFullPage.js +15 -9
- package/lib/components/EditInPlace/EditInPlace.js +79 -77
- package/lib/components/EditSidePanel/EditSidePanel.js +49 -46
- package/lib/components/EditTearsheet/EditTearsheet.js +64 -98
- package/lib/components/EditTearsheet/EditTearsheetForm.js +35 -27
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +14 -9
- package/lib/components/EditUpdateCards/EditUpdateCards.d.ts +2 -9
- package/lib/components/EditUpdateCards/EditUpdateCards.js +41 -30
- package/lib/components/EmptyStates/EmptyState.js +37 -33
- package/lib/components/EmptyStates/EmptyStateContent.js +28 -20
- package/lib/components/EmptyStates/EmptyStateIllustration.js +14 -27
- package/lib/components/EmptyStates/EmptyStateV2.js +33 -28
- package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +27 -24
- package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +27 -24
- package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +27 -24
- package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +27 -24
- package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +27 -24
- package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +27 -24
- package/lib/components/EmptyStates/assets/ErrorIllustration.js +26 -25
- package/lib/components/EmptyStates/assets/NoDataIllustration.js +24 -23
- package/lib/components/EmptyStates/assets/NoTagsIllustration.js +53 -52
- package/lib/components/EmptyStates/assets/NotFoundIllustration.js +37 -36
- package/lib/components/EmptyStates/assets/NotificationsIllustration.js +42 -41
- package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +37 -36
- package/lib/components/ExportModal/ExportModal.js +81 -93
- package/lib/components/ExpressiveCard/ExpressiveCard.d.ts +2 -10
- package/lib/components/ExpressiveCard/ExpressiveCard.js +11 -5
- package/lib/components/FeatureFlags/index.js +33 -43
- package/lib/components/FilterPanel/FilterPanel.js +11 -11
- package/lib/components/FilterPanel/FilterPanelAccordion/FilterPanelAccordion.js +19 -19
- package/lib/components/FilterPanel/FilterPanelAccordionItem/FilterPanelAccordionItem.js +20 -24
- package/lib/components/FilterPanel/FilterPanelCheckbox/FilterPanelCheckbox.js +12 -12
- package/lib/components/FilterPanel/FilterPanelCheckboxWithOverflow/FilterPanelCheckboxWithOverflow.js +53 -59
- package/lib/components/FilterPanel/FilterPanelGroup/FilterPanelGroup.js +14 -14
- package/lib/components/FilterPanel/FilterPanelLabel/FilterPanelLabel.js +12 -12
- package/lib/components/FilterPanel/FilterPanelSearch/FilterPanelSearch.js +20 -24
- package/lib/components/FilterSummary/FilterSummary.js +59 -66
- package/lib/components/FullPageError/FullPageError.js +27 -25
- package/lib/components/FullPageError/assets/Error403SVG.js +4 -2
- package/lib/components/FullPageError/assets/Error404SVG.js +4 -2
- package/lib/components/FullPageError/assets/ErrorGenericSVG.js +4 -2
- package/lib/components/GetStartedCard/GetStartedCard.js +5 -5
- package/lib/components/Guidebanner/Guidebanner.js +45 -62
- package/lib/components/Guidebanner/GuidebannerElement.js +13 -13
- package/lib/components/Guidebanner/GuidebannerElementButton.js +14 -16
- package/lib/components/Guidebanner/GuidebannerElementLink.js +8 -8
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +17 -17
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +17 -17
- package/lib/components/HTTPErrors/HTTPErrorContent.js +22 -21
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +17 -17
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +83 -81
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +87 -85
- package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +83 -81
- package/lib/components/ImportModal/ImportModal.js +124 -161
- package/lib/components/InlineTip/InlineTip.js +44 -59
- package/lib/components/InlineTip/InlineTipButton.js +8 -8
- package/lib/components/InlineTip/InlineTipLink.js +11 -12
- package/lib/components/InlineTip/utils.js +9 -19
- package/lib/components/InterstitialScreen/InterstitialScreen.js +61 -82
- package/lib/components/InterstitialScreen/InterstitialScreenBody.js +55 -61
- package/lib/components/InterstitialScreen/InterstitialScreenFooter.js +86 -117
- package/lib/components/InterstitialScreen/InterstitialScreenHeader.js +29 -25
- package/lib/components/MultiAddSelect/MultiAddSelect.js +5 -7
- package/lib/components/Nav/Nav.js +38 -42
- package/lib/components/Nav/NavItem.js +43 -50
- package/lib/components/Nav/NavItemLink.js +9 -8
- package/lib/components/Nav/NavList.js +56 -65
- package/lib/components/NonLinearReading/NonLinearReading.js +17 -22
- package/lib/components/NotificationsPanel/NotificationsPanel.js +177 -257
- package/lib/components/NotificationsPanel/utils.js +26 -24
- package/lib/components/OptionsTile/OptionsTile.js +88 -80
- package/lib/components/PageHeader/PageHeader.js +292 -255
- package/lib/components/PageHeader/PageHeaderTitle.js +42 -35
- package/lib/components/PageHeader/PageHeaderUtils.js +31 -28
- package/lib/components/ProductiveCard/ProductiveCard.d.ts +2 -13
- package/lib/components/ProductiveCard/ProductiveCard.js +19 -13
- package/lib/components/RemoveModal/RemoveModal.js +45 -48
- package/lib/components/Saving/Saving.js +51 -56
- package/lib/components/ScrollGradient/ScrollGradient.js +62 -65
- package/lib/components/ScrollGradient/constants.js +13 -24
- package/lib/components/SearchBar/SearchBar.d.ts +5 -6
- package/lib/components/SearchBar/SearchBar.js +61 -67
- package/lib/components/SidePanel/SidePanel.d.ts +2 -5
- package/lib/components/SidePanel/SidePanel.js +243 -244
- package/lib/components/SidePanel/constants.js +1 -1
- package/lib/components/SimpleHeader/SimpleHeader.js +21 -24
- package/lib/components/SingleAddSelect/SingleAddSelect.js +3 -3
- package/lib/components/StatusIcon/StatusIcon.js +194 -280
- package/lib/components/StatusIndicator/StatusIndicator.js +20 -23
- package/lib/components/StatusIndicator/StatusIndicatorStep.js +17 -17
- package/lib/components/StringFormatter/StringFormatter.js +60 -36
- package/lib/components/StringFormatter/utils/enums.js +13 -13
- package/lib/components/TagOverflow/TagOverflow.js +69 -73
- package/lib/components/TagOverflow/TagOverflowModal.js +48 -51
- package/lib/components/TagOverflow/TagOverflowPopover.js +62 -60
- package/lib/components/TagOverflow/constants.js +1 -1
- package/lib/components/TagSet/TagSet.js +103 -129
- package/lib/components/TagSet/TagSetModal.js +47 -50
- package/lib/components/TagSet/TagSetOverflow.js +53 -49
- package/lib/components/Tearsheet/Tearsheet.js +21 -21
- package/lib/components/Tearsheet/TearsheetNarrow.js +19 -18
- package/lib/components/Tearsheet/TearsheetShell.js +156 -152
- package/lib/components/Toolbar/Toolbar.js +43 -46
- package/lib/components/Toolbar/ToolbarButton.js +24 -23
- package/lib/components/Toolbar/ToolbarGroup.js +8 -7
- package/lib/components/TooltipTrigger/TooltipTrigger.js +9 -8
- package/lib/components/TruncatedList/TruncatedList.js +43 -60
- package/lib/components/UserAvatar/UserAvatar.js +48 -47
- package/lib/components/UserProfileImage/UserProfileImage.js +58 -73
- package/lib/components/WebTerminal/WebTerminal.js +63 -66
- package/lib/components/WebTerminal/WebTerminalContentWrapper.js +15 -10
- package/lib/components/WebTerminal/hooks/index.js +21 -23
- package/lib/components/_Canary/Canary.js +12 -7
- package/lib/global/js/hooks/useActiveElement.js +5 -9
- package/lib/global/js/hooks/useClickOutside.js +4 -4
- package/lib/global/js/hooks/useControllableState.js +3 -7
- package/lib/global/js/hooks/useCreateComponentFocus.js +16 -30
- package/lib/global/js/hooks/useCreateComponentStepChange.js +99 -190
- package/lib/global/js/hooks/useFocus.js +64 -85
- package/lib/global/js/hooks/useIsomorphicEffect.js +1 -1
- package/lib/global/js/hooks/useOverflowItems/useOverflowItems.js +48 -58
- package/lib/global/js/hooks/useOverflowString.js +13 -24
- package/lib/global/js/hooks/usePortalTarget.js +5 -11
- package/lib/global/js/hooks/usePrefersReducedMotion.js +12 -12
- package/lib/global/js/hooks/usePrefix.js +1 -3
- package/lib/global/js/hooks/usePresence.js +8 -12
- package/lib/global/js/hooks/usePreviousValue.js +3 -3
- package/lib/global/js/hooks/useResetCreateComponent.js +15 -13
- package/lib/global/js/hooks/useResizeObserver.js +26 -34
- package/lib/global/js/hooks/useRetrieveFormTitles.js +10 -9
- package/lib/global/js/hooks/useRetrieveStepData.js +21 -20
- package/lib/global/js/hooks/useValidCreateStepCount.js +3 -3
- package/lib/global/js/hooks/useWindowResize.js +23 -23
- package/lib/global/js/hooks/useWindowScroll.js +15 -18
- package/lib/global/js/package-settings.js +43 -56
- package/lib/global/js/utils/Wrap.js +18 -17
- package/lib/global/js/utils/clamp.js +1 -1
- package/lib/global/js/utils/debounce.js +6 -6
- package/lib/global/js/utils/deepCloneObject.js +7 -16
- package/lib/global/js/utils/deepCompareObject.js +9 -18
- package/lib/global/js/utils/devtools.js +3 -2
- package/lib/global/js/utils/getFocusableElements.js +2 -13
- package/lib/global/js/utils/getNodeTextContent.js +6 -15
- package/lib/global/js/utils/getNumberOfHiddenSteps.js +3 -3
- package/lib/global/js/utils/getScrollbarWidth.js +3 -3
- package/lib/global/js/utils/getSupportedLocale.js +3 -3
- package/lib/global/js/utils/lastIndexInArray.js +3 -4
- package/lib/global/js/utils/pconsole.js +15 -22
- package/lib/global/js/utils/props-helper.js +34 -40
- package/lib/global/js/utils/rangeWithCallback.js +2 -2
- package/lib/global/js/utils/scrollableAncestor.js +8 -17
- package/lib/global/js/utils/throttle.js +4 -4
- package/lib/global/js/utils/useId.js +11 -3
- package/lib/global/js/utils/uuidv4.js +3 -7
- package/lib/global/js/utils/wait.js +1 -3
- package/lib/index.js +1 -4
- package/lib/node_modules/@carbon/icons-react/es/Icon.js +17 -19
- package/lib/node_modules/@carbon/icons-react/es/generated/bucket-10.js +1263 -1136
- package/lib/node_modules/@carbon/icons-react/es/generated/bucket-3.js +1330 -1186
- package/lib/node_modules/@carbon/icons-react/es/iconPropTypes-4cbeb95d.js +1 -1
- package/lib/node_modules/@carbon/icons-react/node_modules/@carbon/icon-helpers/es/index.js +3 -5
- package/lib/node_modules/prop-types/checkPropTypes.js +4 -5
- package/lib/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
- package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +6 -7
- package/lib/settings.js +15 -19
- package/package.json +13 -13
- package/scss/components/Datagrid/styles/_useSortableColumns.scss +3 -0
- package/scss/components/NotificationsPanel/_notifications-panel.scss +16 -4
- package/scss/components/StringFormatter/_string-formatter.scss +18 -2
- package/scss/components/Tearsheet/_tearsheet.scss +1 -22
- package/telemetry.yml +2 -3
- package/es/global/js/utils/checkForOverflow.js +0 -21
- package/lib/global/js/utils/checkForOverflow.js +0 -23
@@ -5,7 +5,7 @@
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
7
|
|
8
|
-
import {
|
8
|
+
import { extends as _extends } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
9
9
|
import React__default, { useContext, useState, useRef, useEffect, useCallback } from 'react';
|
10
10
|
import PropTypes from '../../../../../../_virtual/index.js';
|
11
11
|
import { Checkbox, TextInput, NumberInput, Dropdown, DatePicker, DatePickerInput } from '@carbon/react';
|
@@ -18,76 +18,64 @@ import { usePreviousValue } from '../../../../../../global/js/hooks/usePreviousV
|
|
18
18
|
import { useIsomorphicEffect } from '../../../../../../global/js/hooks/useIsomorphicEffect.js';
|
19
19
|
import { InlineEditButton } from '../InlineEditButton/InlineEditButton.js';
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
config
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
21
|
+
const blockClass = `${pkg.prefix}--datagrid`;
|
22
|
+
const InlineEditCell = _ref => {
|
23
|
+
let {
|
24
|
+
cell,
|
25
|
+
config,
|
26
|
+
disabledCell = false,
|
27
|
+
instance,
|
28
|
+
placeholder = '',
|
29
|
+
tabIndex,
|
30
|
+
value,
|
31
|
+
nonEditCell = false,
|
32
|
+
type
|
33
|
+
} = _ref;
|
34
|
+
const columnId = cell.column.id;
|
35
|
+
const columnIndex = instance.columns.findIndex(col => col.id === columnId);
|
36
|
+
const rowIndex = cell.row.index;
|
37
|
+
const cellId = `column-${columnIndex}-row-${rowIndex}`;
|
38
|
+
const {
|
39
|
+
state,
|
40
|
+
dispatch
|
41
|
+
} = useContext(InlineEditContext);
|
42
|
+
const [inEditMode, setInEditMode] = useState(false);
|
43
|
+
const [cellValue, setCellValue] = useState(value);
|
44
|
+
const [initialValue, setInitialValue] = useState();
|
45
|
+
const [cellLabel, setCellLabel] = useState();
|
46
|
+
const {
|
47
|
+
activeCellId,
|
48
|
+
editId
|
49
|
+
} = state;
|
50
|
+
const previousState = usePreviousValue({
|
51
|
+
editId,
|
52
|
+
activeCellId
|
39
53
|
});
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
var _useState5 = useState(),
|
54
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
55
|
-
initialValue = _useState6[0],
|
56
|
-
setInitialValue = _useState6[1];
|
57
|
-
var _useState7 = useState(),
|
58
|
-
_useState8 = _slicedToArray(_useState7, 2),
|
59
|
-
cellLabel = _useState8[0],
|
60
|
-
setCellLabel = _useState8[1];
|
61
|
-
var activeCellId = state.activeCellId,
|
62
|
-
editId = state.editId;
|
63
|
-
var previousState = usePreviousValue({
|
64
|
-
editId: editId,
|
65
|
-
activeCellId: activeCellId
|
66
|
-
});
|
67
|
-
var _ref2 = config || {},
|
68
|
-
inputProps = _ref2.inputProps;
|
69
|
-
var textInputRef = useRef(undefined);
|
70
|
-
var checkboxRef = useRef(undefined);
|
71
|
-
var numberInputRef = useRef(undefined);
|
72
|
-
var dropdownRef = useRef(undefined);
|
73
|
-
var outerButtonElement = useRef(undefined);
|
74
|
-
var rowSize = instance.rowSize,
|
75
|
-
onDataUpdate = instance.onDataUpdate;
|
76
|
-
var saveCellData;
|
54
|
+
const {
|
55
|
+
inputProps
|
56
|
+
} = config || {};
|
57
|
+
const textInputRef = useRef(undefined);
|
58
|
+
const checkboxRef = useRef(undefined);
|
59
|
+
const numberInputRef = useRef(undefined);
|
60
|
+
const dropdownRef = useRef(undefined);
|
61
|
+
const outerButtonElement = useRef(undefined);
|
62
|
+
const {
|
63
|
+
rowSize,
|
64
|
+
onDataUpdate
|
65
|
+
} = instance;
|
66
|
+
let saveCellData;
|
77
67
|
if (inEditMode) {
|
78
68
|
instance.cellEditing = {
|
79
|
-
cellId
|
80
|
-
columnIndex
|
81
|
-
rowIndex
|
69
|
+
cellId,
|
70
|
+
columnIndex,
|
71
|
+
rowIndex,
|
82
72
|
curCellValue: cellValue
|
83
73
|
};
|
84
74
|
}
|
85
|
-
useEffect(
|
75
|
+
useEffect(() => {
|
86
76
|
setInitialValue(value);
|
87
|
-
|
88
|
-
|
89
|
-
return item.id === columnId;
|
90
|
-
});
|
77
|
+
const columnId = cell.column.id;
|
78
|
+
const columnLabel = instance.columns.find(item => item.id === columnId);
|
91
79
|
setCellLabel(typeof columnLabel.Header === 'string' ? columnLabel.Header : 'Inline edit cell label');
|
92
80
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
93
81
|
}, []);
|
@@ -95,22 +83,23 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
95
83
|
// Reverts cellValue back to initialValue when exiting edit mode via clicking outside
|
96
84
|
// of the cell (either on a regular cell or clicking into another inline edit cell) and the
|
97
85
|
// edit input is in an invalid state
|
98
|
-
useEffect(
|
99
|
-
if (
|
100
|
-
|
101
|
-
validator
|
102
|
-
|
86
|
+
useEffect(() => {
|
87
|
+
if (previousState?.editId === cellId && !editId || previousState?.editId === cellId && cellId !== editId) {
|
88
|
+
const {
|
89
|
+
validator
|
90
|
+
} = config || {};
|
91
|
+
const isInvalid = validator?.(cellValue);
|
103
92
|
if (isInvalid) {
|
104
93
|
setCellValue(initialValue);
|
105
94
|
saveCellData(initialValue);
|
106
95
|
return;
|
107
96
|
}
|
108
97
|
}
|
109
|
-
}, [previousState
|
98
|
+
}, [previousState?.editId, editId, cellId, cellValue, config, initialValue, saveCellData]);
|
110
99
|
|
111
100
|
// If you are in edit mode and click outside of the cell,
|
112
101
|
// this changes the cell back to the InlineEditButton
|
113
|
-
useEffect(
|
102
|
+
useEffect(() => {
|
114
103
|
if (activeCellId !== cellId || !editId) {
|
115
104
|
setInEditMode(false);
|
116
105
|
}
|
@@ -119,31 +108,32 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
119
108
|
saveCellData(cellValue);
|
120
109
|
}
|
121
110
|
}, [activeCellId, cellId, nonEditCell, editId, cellValue, saveCellData]);
|
122
|
-
|
111
|
+
const openDropdown = type => {
|
123
112
|
// *****
|
124
113
|
// Only added this querySelector because v11 Datepicker isn't forwarding the ref which breaks how we were handling this in v10
|
125
114
|
// *****
|
126
|
-
|
127
|
-
|
115
|
+
const datePickerInputElement = document.querySelector(`#${blockClass}__inline-edit--date-picker--${cell.row.index}`);
|
116
|
+
const dropdownTrigger = type === 'selection' ? dropdownRef?.current : datePickerInputElement;
|
128
117
|
dropdownTrigger.click();
|
129
118
|
if (type === 'date') {
|
130
|
-
dropdownTrigger
|
119
|
+
dropdownTrigger?.focus();
|
131
120
|
}
|
132
121
|
};
|
133
122
|
|
134
123
|
// Re-initializes initialValue if clicking outside of a cell that was previously
|
135
124
|
// in edit mode, otherwise `initialValue` becomes stale
|
136
|
-
useEffect(
|
137
|
-
if (
|
138
|
-
|
139
|
-
validator
|
140
|
-
|
125
|
+
useEffect(() => {
|
126
|
+
if (previousState?.editId === cellId && previousState?.activeCellId === cellId && activeCellId !== cellId) {
|
127
|
+
const {
|
128
|
+
validator
|
129
|
+
} = config || {};
|
130
|
+
const isInvalid = validator?.(cellValue);
|
141
131
|
if (!isInvalid) {
|
142
132
|
setInitialValue(cellValue);
|
143
133
|
}
|
144
134
|
}
|
145
135
|
}, [previousState, cellId, cellValue, activeCellId, config]);
|
146
|
-
|
136
|
+
const handleInlineCellClick = () => {
|
147
137
|
if (!inEditMode) {
|
148
138
|
dispatch({
|
149
139
|
type: 'ENTER_EDIT_MODE',
|
@@ -153,7 +143,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
153
143
|
}
|
154
144
|
});
|
155
145
|
setInEditMode(true);
|
156
|
-
setTimeout(
|
146
|
+
setTimeout(() => {
|
157
147
|
if (type === 'selection' || type === 'date') {
|
158
148
|
openDropdown(type);
|
159
149
|
}
|
@@ -162,7 +152,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
162
152
|
};
|
163
153
|
|
164
154
|
// Auto focus text input when entering edit mode
|
165
|
-
useEffect(
|
155
|
+
useEffect(() => {
|
166
156
|
if (inEditMode) {
|
167
157
|
if (type === 'text') {
|
168
158
|
textInputRef.current.focus();
|
@@ -171,50 +161,52 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
171
161
|
numberInputRef.current.focus();
|
172
162
|
}
|
173
163
|
if (type === 'selection') {
|
174
|
-
|
175
|
-
dropdownRef === null || dropdownRef === void 0 || (_dropdownRef$current = dropdownRef.current) === null || _dropdownRef$current === void 0 || _dropdownRef$current.focus();
|
164
|
+
dropdownRef?.current?.focus();
|
176
165
|
}
|
177
166
|
}
|
178
167
|
}, [inEditMode, type]);
|
179
168
|
|
180
169
|
// Saves the new cell data, onDataUpdate is a required function to be
|
181
170
|
// passed to useDatagrid when using useInlineEdit
|
182
|
-
saveCellData = useCallback(
|
183
|
-
|
184
|
-
|
185
|
-
onDataUpdate(
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
}
|
192
|
-
|
171
|
+
saveCellData = useCallback(newValue => {
|
172
|
+
const columnId = cell.column.id;
|
173
|
+
const rowIndex = cell.row.index;
|
174
|
+
onDataUpdate(prev => prev.map((row, index) => {
|
175
|
+
if (index === rowIndex) {
|
176
|
+
return {
|
177
|
+
...prev[rowIndex],
|
178
|
+
[columnId]: newValue
|
179
|
+
};
|
180
|
+
}
|
181
|
+
return row;
|
182
|
+
}));
|
193
183
|
}, [cell, onDataUpdate]);
|
194
184
|
|
195
185
|
// Initialize cellValue from value prop
|
196
|
-
useEffect(
|
186
|
+
useEffect(() => {
|
197
187
|
setCellValue(value);
|
198
188
|
}, [value]);
|
199
|
-
|
189
|
+
const sendFocusBackToGrid = () => {
|
200
190
|
// Allows the onKeyDown listener to go back to the entire grid area
|
201
|
-
|
191
|
+
const inlineEditArea = document.querySelector(`#${instance.tableId} .${blockClass}__table-with-inline-edit`);
|
202
192
|
inlineEditArea.focus();
|
203
193
|
};
|
204
|
-
|
205
|
-
|
206
|
-
|
194
|
+
const getNewCellId = key => {
|
195
|
+
const totalRows = instance.rows.length;
|
196
|
+
const newCellId = key === 'Enter' ? `column-${columnIndex}-row-${cell.row.index < totalRows - 1 && type === 'checkbox' ? cell.row.index + 1 : cell.row.index}` : `column-${columnIndex < instance.columns.length - 1 ? columnIndex + 1 : columnIndex}-row-${cell.row.index}`;
|
207
197
|
return newCellId;
|
208
198
|
};
|
209
|
-
|
210
|
-
|
199
|
+
const handleKeyDown = event => {
|
200
|
+
const {
|
201
|
+
key
|
202
|
+
} = event;
|
211
203
|
switch (key) {
|
212
204
|
case 'ArrowRight':
|
213
205
|
case 'ArrowLeft':
|
214
206
|
case 'ArrowUp':
|
215
207
|
case 'ArrowDown':
|
216
208
|
if (inEditMode && event.target.type === 'checkbox') {
|
217
|
-
|
209
|
+
const newCellId = getNewCellId(key);
|
218
210
|
saveCellData(cellValue);
|
219
211
|
setInitialValue(cellValue);
|
220
212
|
dispatch({
|
@@ -231,10 +223,10 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
231
223
|
{
|
232
224
|
if (type === 'checkbox') {
|
233
225
|
// Since checkbox doesn't need to click into it to enter `inEditMode` we don't need to check for it
|
234
|
-
|
226
|
+
const newCellId = getNewCellId(key);
|
235
227
|
dispatch({
|
236
228
|
type: 'EXIT_EDIT_MODE',
|
237
|
-
payload:
|
229
|
+
payload: newCellId
|
238
230
|
});
|
239
231
|
setInEditMode(false);
|
240
232
|
sendFocusBackToGrid();
|
@@ -244,20 +236,21 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
244
236
|
if (type === 'selection' || type === 'date') {
|
245
237
|
return;
|
246
238
|
}
|
247
|
-
|
248
|
-
validator
|
249
|
-
|
239
|
+
const {
|
240
|
+
validator
|
241
|
+
} = config || {};
|
242
|
+
const isInvalid = validator?.(cellValue);
|
250
243
|
// If an invalid state is detected, Tab/Enter should not do anything
|
251
244
|
// until the input has a valid state once again
|
252
245
|
if (isInvalid) {
|
253
246
|
return;
|
254
247
|
}
|
255
|
-
|
248
|
+
const newCellId = getNewCellId(key);
|
256
249
|
saveCellData(cellValue);
|
257
250
|
setInitialValue(cellValue);
|
258
251
|
dispatch({
|
259
252
|
type: 'EXIT_EDIT_MODE',
|
260
|
-
payload:
|
253
|
+
payload: newCellId
|
261
254
|
});
|
262
255
|
setInEditMode(false);
|
263
256
|
sendFocusBackToGrid();
|
@@ -282,47 +275,47 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
282
275
|
return;
|
283
276
|
}
|
284
277
|
};
|
285
|
-
|
278
|
+
const addActiveState = () => {
|
286
279
|
dispatch({
|
287
280
|
type: 'UPDATE_ACTIVE_CELL_ID',
|
288
281
|
payload: cellId
|
289
282
|
});
|
290
283
|
};
|
291
|
-
|
292
|
-
|
284
|
+
const renderDropdownItem = item => {
|
285
|
+
const includesIcon = !!item?.icon;
|
293
286
|
return includesIcon ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(item.icon), /*#__PURE__*/React__default.createElement("span", {
|
294
|
-
className: cx(
|
295
|
-
}, item
|
287
|
+
className: cx(`${blockClass}__inline-edit--select-item`)
|
288
|
+
}, item?.text)) : item?.text;
|
296
289
|
};
|
297
|
-
|
298
|
-
return items
|
299
|
-
return renderDropdownItem(item);
|
300
|
-
} : null;
|
290
|
+
const handleTransformedItem = items => {
|
291
|
+
return items?.length && typeof items[0] === 'object' ? item => renderDropdownItem(item) : null;
|
301
292
|
};
|
302
|
-
useIsomorphicEffect(
|
293
|
+
useIsomorphicEffect(() => {
|
303
294
|
if (dropdownRef.current && dropdownRef.current.style) {
|
304
|
-
|
305
|
-
closestElement.style.width =
|
295
|
+
const closestElement = dropdownRef.current.closest(`.${blockClass}__inline-edit--select`);
|
296
|
+
closestElement.style.width = `${cell.column.totalWidth}px`;
|
306
297
|
}
|
307
298
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
308
299
|
}, [dropdownRef.current, cell.column.totalWidth]);
|
309
|
-
|
310
|
-
|
311
|
-
inputProps
|
300
|
+
const renderSelectCell = () => {
|
301
|
+
const {
|
302
|
+
inputProps
|
303
|
+
} = config || {};
|
312
304
|
return /*#__PURE__*/React__default.createElement(Dropdown, _extends({
|
313
305
|
id: cellId,
|
314
306
|
label: cellLabel || 'Dropdown menu options',
|
315
307
|
ariaLabel: cellLabel || 'Dropdown menu options'
|
316
308
|
}, inputProps, {
|
317
309
|
hideLabel: true,
|
318
|
-
className: cx(
|
319
|
-
|
310
|
+
className: cx(`${blockClass}__inline-edit--select`, {
|
311
|
+
[`${blockClass}__inline-edit--select-${rowSize}`]: rowSize
|
312
|
+
}),
|
313
|
+
items: inputProps?.items || [],
|
320
314
|
initialSelectedItem: cell.value,
|
321
|
-
itemToElement: handleTransformedItem(inputProps
|
322
|
-
renderSelectedItem: handleTransformedItem(inputProps
|
323
|
-
onChange:
|
324
|
-
|
325
|
-
var newCellId = getNewCellId('Enter');
|
315
|
+
itemToElement: handleTransformedItem(inputProps?.items),
|
316
|
+
renderSelectedItem: handleTransformedItem(inputProps?.items),
|
317
|
+
onChange: item => {
|
318
|
+
const newCellId = getNewCellId('Enter');
|
326
319
|
saveCellData(item.selectedItem);
|
327
320
|
setCellValue(item.selectedItem);
|
328
321
|
dispatch({
|
@@ -331,12 +324,13 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
331
324
|
});
|
332
325
|
setInEditMode(false);
|
333
326
|
sendFocusBackToGrid();
|
334
|
-
inputProps
|
327
|
+
inputProps?.onChange?.(item.selectedItem);
|
335
328
|
},
|
336
329
|
downshiftProps: {
|
337
|
-
onStateChange:
|
338
|
-
|
339
|
-
isOpen
|
330
|
+
onStateChange: downshiftState => {
|
331
|
+
const {
|
332
|
+
isOpen
|
333
|
+
} = downshiftState || {};
|
340
334
|
// !isOpen does not work in this case because a state change occurs on hover of the
|
341
335
|
// menu items and isOpen is changed to undefined which causes dispatch to be called unexpectedly
|
342
336
|
if (isOpen === false) {
|
@@ -353,7 +347,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
353
347
|
autoAlign: true
|
354
348
|
}));
|
355
349
|
};
|
356
|
-
|
350
|
+
const setRenderIcon = () => {
|
357
351
|
if (type === 'text') {
|
358
352
|
return Edit;
|
359
353
|
}
|
@@ -367,33 +361,33 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
367
361
|
return Calendar;
|
368
362
|
}
|
369
363
|
};
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
var datePickerInputProps = config === null || config === void 0 || (_config$inputProps = config.inputProps) === null || _config$inputProps === void 0 ? void 0 : _config$inputProps.datePickerInputProps;
|
364
|
+
const renderDateCell = () => {
|
365
|
+
const datePickerPreparedProps = prepareProps(config.inputProps, ['datePickerInputProps']);
|
366
|
+
const datePickerInputProps = config?.inputProps?.datePickerInputProps;
|
374
367
|
return /*#__PURE__*/React__default.createElement(DatePicker, _extends({}, datePickerPreparedProps, {
|
375
|
-
appendTo: outerButtonElement
|
376
|
-
ref:
|
368
|
+
appendTo: outerButtonElement?.current?.parentElement,
|
369
|
+
ref: el => {
|
377
370
|
if (el && el.style) {
|
378
|
-
el.style.width =
|
379
|
-
|
380
|
-
|
371
|
+
el.style.width = `${cell.column.totalWidth}px`;
|
372
|
+
const elementId = `${blockClass}__inline-edit--date-picker--${cell.row.index}`;
|
373
|
+
const element = el.querySelector(`input#${elementId}`);
|
381
374
|
if (element) {
|
382
375
|
element.style.position = 'static';
|
383
376
|
}
|
384
377
|
}
|
385
378
|
},
|
386
379
|
datePickerType: "single",
|
387
|
-
className: cx(
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
380
|
+
className: cx(`${blockClass}__inline-edit--date`, {
|
381
|
+
[`${blockClass}__inline-edit--date-${rowSize}`]: rowSize
|
382
|
+
}),
|
383
|
+
onChange: newDate => {
|
384
|
+
const newDateObj = newDate[0];
|
385
|
+
datePickerPreparedProps?.onChange?.(newDateObj, cell);
|
386
|
+
const newCellId = getNewCellId('Enter');
|
393
387
|
saveCellData(newDateObj);
|
394
388
|
setCellValue(newDateObj);
|
395
389
|
// To handle the interaction of the masked input when the DatePicker and updating
|
396
|
-
setTimeout(
|
390
|
+
setTimeout(() => {
|
397
391
|
setInEditMode(false);
|
398
392
|
sendFocusBackToGrid();
|
399
393
|
dispatch({
|
@@ -404,24 +398,23 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
404
398
|
},
|
405
399
|
value: cell.value
|
406
400
|
}), /*#__PURE__*/React__default.createElement(DatePickerInput, _extends({}, datePickerInputProps, {
|
407
|
-
placeholder:
|
408
|
-
labelText:
|
409
|
-
id:
|
401
|
+
placeholder: datePickerInputProps?.placeholder || 'mm/dd/yyyy',
|
402
|
+
labelText: datePickerInputProps?.labelText || cellLabel || 'Set date',
|
403
|
+
id: `${blockClass}__inline-edit--date-picker--${cell.row.index}`,
|
410
404
|
hideLabel: true
|
411
405
|
})));
|
412
406
|
};
|
413
407
|
|
414
408
|
// Ensures that months and days are all 2 digits, prefixes 0 if `num` is a single digit
|
415
|
-
|
409
|
+
const padTo2Digits = num => {
|
416
410
|
return num.toString().padStart(2, '0');
|
417
411
|
};
|
418
|
-
|
419
|
-
|
420
|
-
var dateFormat = config === null || config === void 0 || (_config$inputProps2 = config.inputProps) === null || _config$inputProps2 === void 0 ? void 0 : _config$inputProps2.dateFormat;
|
412
|
+
const buildDate = value => {
|
413
|
+
const dateFormat = config?.inputProps?.dateFormat;
|
421
414
|
if (value instanceof Date) {
|
422
|
-
|
423
|
-
|
424
|
-
|
415
|
+
const maskedFullYear = value.getFullYear();
|
416
|
+
const maskedMonth = padTo2Digits(value.getMonth() + 1);
|
417
|
+
const maskedDay = padTo2Digits(value.getDate());
|
425
418
|
if (dateFormat === 'm/d/Y' || value === 'm/d/y') {
|
426
419
|
return [maskedMonth, maskedDay, maskedFullYear].join('/');
|
427
420
|
}
|
@@ -433,9 +426,10 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
433
426
|
}
|
434
427
|
return null;
|
435
428
|
};
|
436
|
-
|
437
|
-
|
438
|
-
validator
|
429
|
+
const renderNumberInput = () => {
|
430
|
+
const {
|
431
|
+
validator
|
432
|
+
} = config || {};
|
439
433
|
return /*#__PURE__*/React__default.createElement(NumberInput, _extends({
|
440
434
|
placeholder: placeholder,
|
441
435
|
label: cellLabel
|
@@ -443,10 +437,12 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
443
437
|
id: cellId,
|
444
438
|
hideLabel: true,
|
445
439
|
defaultValue: cellValue,
|
446
|
-
invalid: validator
|
447
|
-
invalidText:
|
448
|
-
onChange:
|
449
|
-
|
440
|
+
invalid: validator?.(cellValue),
|
441
|
+
invalidText: inputProps?.invalidText || 'Provide missing invalidText',
|
442
|
+
onChange: (event, _ref2) => {
|
443
|
+
let {
|
444
|
+
value
|
445
|
+
} = _ref2;
|
450
446
|
setCellValue(value);
|
451
447
|
if (inputProps.onChange) {
|
452
448
|
inputProps.onChange(value);
|
@@ -455,16 +451,20 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
455
451
|
ref: numberInputRef
|
456
452
|
}));
|
457
453
|
};
|
458
|
-
|
454
|
+
const renderCheckBoxCell = () => {
|
459
455
|
return /*#__PURE__*/React__default.createElement(Checkbox, _extends({
|
460
456
|
labelText: cellLabel || 'Checkbox'
|
461
457
|
}, inputProps, {
|
462
|
-
className: cx(
|
458
|
+
className: cx(`${blockClass}__inline-edit--outer-cell-checkbox`, {
|
459
|
+
[`${blockClass}__inline-edit--outer-cell-checkbox-focus`]: activeCellId === cellId
|
460
|
+
}),
|
463
461
|
id: cellId,
|
464
462
|
hideLabel: true,
|
465
463
|
checked: cellValue,
|
466
|
-
onChange:
|
467
|
-
|
464
|
+
onChange: (event, _ref3) => {
|
465
|
+
let {
|
466
|
+
checked
|
467
|
+
} = _ref3;
|
468
468
|
setCellValue(checked);
|
469
469
|
if (inputProps.onChange) {
|
470
470
|
inputProps.onChange(checked);
|
@@ -473,10 +473,11 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
473
473
|
ref: checkboxRef
|
474
474
|
}));
|
475
475
|
};
|
476
|
-
|
477
|
-
|
478
|
-
validator
|
479
|
-
|
476
|
+
const renderTextInput = () => {
|
477
|
+
const {
|
478
|
+
validator
|
479
|
+
} = config || {};
|
480
|
+
const isInvalid = validator?.(cellValue);
|
480
481
|
return /*#__PURE__*/React__default.createElement(TextInput, _extends({
|
481
482
|
labelText: cellLabel,
|
482
483
|
placeholder: placeholder
|
@@ -485,8 +486,8 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
485
486
|
hideLabel: true,
|
486
487
|
defaultValue: cellValue,
|
487
488
|
invalid: isInvalid,
|
488
|
-
invalidText:
|
489
|
-
onChange:
|
489
|
+
invalidText: inputProps?.invalidText || 'Provide missing invalidText',
|
490
|
+
onChange: event => {
|
490
491
|
setCellValue(event.target.value);
|
491
492
|
if (inputProps.onChange) {
|
492
493
|
inputProps.onChange(event.target.value);
|
@@ -495,22 +496,21 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
495
496
|
ref: textInputRef
|
496
497
|
}));
|
497
498
|
};
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
return val === null || val === void 0 ? void 0 : val.value;
|
499
|
+
const getLabel = () => {
|
500
|
+
const checkStaticCell = val => {
|
501
|
+
if (typeof val === 'object' && val?.isStaticCell) {
|
502
|
+
return val?.value;
|
503
503
|
}
|
504
504
|
};
|
505
505
|
switch (type) {
|
506
506
|
case 'selection':
|
507
507
|
checkStaticCell(value);
|
508
|
-
return
|
508
|
+
return value?.text ?? value;
|
509
509
|
case 'date':
|
510
510
|
checkStaticCell(value);
|
511
511
|
return buildDate(value);
|
512
512
|
default:
|
513
|
-
return
|
513
|
+
return checkStaticCell(value) ?? value;
|
514
514
|
}
|
515
515
|
};
|
516
516
|
return (
|
@@ -525,13 +525,18 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
525
525
|
"data-inline-type": type,
|
526
526
|
onClick: !nonEditCell ? handleInlineCellClick : addActiveState,
|
527
527
|
onKeyDown: !nonEditCell ? handleKeyDown : null,
|
528
|
-
className: cx(
|
528
|
+
className: cx(`${blockClass}__inline-edit--outer-cell-button`, {
|
529
|
+
[`${blockClass}__inline-edit--outer-cell-button--${rowSize}`]: rowSize,
|
530
|
+
[`${blockClass}__inline-edit--outer-cell-button--lg`]: !rowSize,
|
531
|
+
[`${blockClass}__inline-edit--outer-cell-button--invalid`]: inEditMode && config?.validator?.(cellValue),
|
532
|
+
[`${blockClass}__static--outer-cell`]: !disabledCell
|
533
|
+
})
|
529
534
|
}, (!inEditMode || disabledCell) && type !== 'checkbox' && /*#__PURE__*/React__default.createElement(InlineEditButton, {
|
530
535
|
isActiveCell: cellId === activeCellId,
|
531
536
|
renderIcon: setRenderIcon(),
|
532
537
|
label: getLabel(),
|
533
538
|
disabledCell: disabledCell,
|
534
|
-
labelIcon:
|
539
|
+
labelIcon: value?.icon || null,
|
535
540
|
placeholder: placeholder,
|
536
541
|
tabIndex: tabIndex,
|
537
542
|
nonEditCell: nonEditCell,
|