@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
@@ -20,76 +20,64 @@ var usePreviousValue = require('../../../../../../global/js/hooks/usePreviousVal
|
|
20
20
|
var useIsomorphicEffect = require('../../../../../../global/js/hooks/useIsomorphicEffect.js');
|
21
21
|
var InlineEditButton = require('../InlineEditButton/InlineEditButton.js');
|
22
22
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
config
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
23
|
+
const blockClass = `${settings.pkg.prefix}--datagrid`;
|
24
|
+
const InlineEditCell = _ref => {
|
25
|
+
let {
|
26
|
+
cell,
|
27
|
+
config,
|
28
|
+
disabledCell = false,
|
29
|
+
instance,
|
30
|
+
placeholder = '',
|
31
|
+
tabIndex,
|
32
|
+
value,
|
33
|
+
nonEditCell = false,
|
34
|
+
type
|
35
|
+
} = _ref;
|
36
|
+
const columnId = cell.column.id;
|
37
|
+
const columnIndex = instance.columns.findIndex(col => col.id === columnId);
|
38
|
+
const rowIndex = cell.row.index;
|
39
|
+
const cellId = `column-${columnIndex}-row-${rowIndex}`;
|
40
|
+
const {
|
41
|
+
state,
|
42
|
+
dispatch
|
43
|
+
} = React.useContext(InlineEditContext.InlineEditContext);
|
44
|
+
const [inEditMode, setInEditMode] = React.useState(false);
|
45
|
+
const [cellValue, setCellValue] = React.useState(value);
|
46
|
+
const [initialValue, setInitialValue] = React.useState();
|
47
|
+
const [cellLabel, setCellLabel] = React.useState();
|
48
|
+
const {
|
49
|
+
activeCellId,
|
50
|
+
editId
|
51
|
+
} = state;
|
52
|
+
const previousState = usePreviousValue.usePreviousValue({
|
53
|
+
editId,
|
54
|
+
activeCellId
|
41
55
|
});
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
var _useState5 = React.useState(),
|
56
|
-
_useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
|
57
|
-
initialValue = _useState6[0],
|
58
|
-
setInitialValue = _useState6[1];
|
59
|
-
var _useState7 = React.useState(),
|
60
|
-
_useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
|
61
|
-
cellLabel = _useState8[0],
|
62
|
-
setCellLabel = _useState8[1];
|
63
|
-
var activeCellId = state.activeCellId,
|
64
|
-
editId = state.editId;
|
65
|
-
var previousState = usePreviousValue.usePreviousValue({
|
66
|
-
editId: editId,
|
67
|
-
activeCellId: activeCellId
|
68
|
-
});
|
69
|
-
var _ref2 = config || {},
|
70
|
-
inputProps = _ref2.inputProps;
|
71
|
-
var textInputRef = React.useRef(undefined);
|
72
|
-
var checkboxRef = React.useRef(undefined);
|
73
|
-
var numberInputRef = React.useRef(undefined);
|
74
|
-
var dropdownRef = React.useRef(undefined);
|
75
|
-
var outerButtonElement = React.useRef(undefined);
|
76
|
-
var rowSize = instance.rowSize,
|
77
|
-
onDataUpdate = instance.onDataUpdate;
|
78
|
-
var saveCellData;
|
56
|
+
const {
|
57
|
+
inputProps
|
58
|
+
} = config || {};
|
59
|
+
const textInputRef = React.useRef(undefined);
|
60
|
+
const checkboxRef = React.useRef(undefined);
|
61
|
+
const numberInputRef = React.useRef(undefined);
|
62
|
+
const dropdownRef = React.useRef(undefined);
|
63
|
+
const outerButtonElement = React.useRef(undefined);
|
64
|
+
const {
|
65
|
+
rowSize,
|
66
|
+
onDataUpdate
|
67
|
+
} = instance;
|
68
|
+
let saveCellData;
|
79
69
|
if (inEditMode) {
|
80
70
|
instance.cellEditing = {
|
81
|
-
cellId
|
82
|
-
columnIndex
|
83
|
-
rowIndex
|
71
|
+
cellId,
|
72
|
+
columnIndex,
|
73
|
+
rowIndex,
|
84
74
|
curCellValue: cellValue
|
85
75
|
};
|
86
76
|
}
|
87
|
-
React.useEffect(
|
77
|
+
React.useEffect(() => {
|
88
78
|
setInitialValue(value);
|
89
|
-
|
90
|
-
|
91
|
-
return item.id === columnId;
|
92
|
-
});
|
79
|
+
const columnId = cell.column.id;
|
80
|
+
const columnLabel = instance.columns.find(item => item.id === columnId);
|
93
81
|
setCellLabel(typeof columnLabel.Header === 'string' ? columnLabel.Header : 'Inline edit cell label');
|
94
82
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
95
83
|
}, []);
|
@@ -97,22 +85,23 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
97
85
|
// Reverts cellValue back to initialValue when exiting edit mode via clicking outside
|
98
86
|
// of the cell (either on a regular cell or clicking into another inline edit cell) and the
|
99
87
|
// edit input is in an invalid state
|
100
|
-
React.useEffect(
|
101
|
-
if (
|
102
|
-
|
103
|
-
validator
|
104
|
-
|
88
|
+
React.useEffect(() => {
|
89
|
+
if (previousState?.editId === cellId && !editId || previousState?.editId === cellId && cellId !== editId) {
|
90
|
+
const {
|
91
|
+
validator
|
92
|
+
} = config || {};
|
93
|
+
const isInvalid = validator?.(cellValue);
|
105
94
|
if (isInvalid) {
|
106
95
|
setCellValue(initialValue);
|
107
96
|
saveCellData(initialValue);
|
108
97
|
return;
|
109
98
|
}
|
110
99
|
}
|
111
|
-
}, [previousState
|
100
|
+
}, [previousState?.editId, editId, cellId, cellValue, config, initialValue, saveCellData]);
|
112
101
|
|
113
102
|
// If you are in edit mode and click outside of the cell,
|
114
103
|
// this changes the cell back to the InlineEditButton
|
115
|
-
React.useEffect(
|
104
|
+
React.useEffect(() => {
|
116
105
|
if (activeCellId !== cellId || !editId) {
|
117
106
|
setInEditMode(false);
|
118
107
|
}
|
@@ -121,31 +110,32 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
121
110
|
saveCellData(cellValue);
|
122
111
|
}
|
123
112
|
}, [activeCellId, cellId, nonEditCell, editId, cellValue, saveCellData]);
|
124
|
-
|
113
|
+
const openDropdown = type => {
|
125
114
|
// *****
|
126
115
|
// Only added this querySelector because v11 Datepicker isn't forwarding the ref which breaks how we were handling this in v10
|
127
116
|
// *****
|
128
|
-
|
129
|
-
|
117
|
+
const datePickerInputElement = document.querySelector(`#${blockClass}__inline-edit--date-picker--${cell.row.index}`);
|
118
|
+
const dropdownTrigger = type === 'selection' ? dropdownRef?.current : datePickerInputElement;
|
130
119
|
dropdownTrigger.click();
|
131
120
|
if (type === 'date') {
|
132
|
-
dropdownTrigger
|
121
|
+
dropdownTrigger?.focus();
|
133
122
|
}
|
134
123
|
};
|
135
124
|
|
136
125
|
// Re-initializes initialValue if clicking outside of a cell that was previously
|
137
126
|
// in edit mode, otherwise `initialValue` becomes stale
|
138
|
-
React.useEffect(
|
139
|
-
if (
|
140
|
-
|
141
|
-
validator
|
142
|
-
|
127
|
+
React.useEffect(() => {
|
128
|
+
if (previousState?.editId === cellId && previousState?.activeCellId === cellId && activeCellId !== cellId) {
|
129
|
+
const {
|
130
|
+
validator
|
131
|
+
} = config || {};
|
132
|
+
const isInvalid = validator?.(cellValue);
|
143
133
|
if (!isInvalid) {
|
144
134
|
setInitialValue(cellValue);
|
145
135
|
}
|
146
136
|
}
|
147
137
|
}, [previousState, cellId, cellValue, activeCellId, config]);
|
148
|
-
|
138
|
+
const handleInlineCellClick = () => {
|
149
139
|
if (!inEditMode) {
|
150
140
|
dispatch({
|
151
141
|
type: 'ENTER_EDIT_MODE',
|
@@ -155,7 +145,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
155
145
|
}
|
156
146
|
});
|
157
147
|
setInEditMode(true);
|
158
|
-
setTimeout(
|
148
|
+
setTimeout(() => {
|
159
149
|
if (type === 'selection' || type === 'date') {
|
160
150
|
openDropdown(type);
|
161
151
|
}
|
@@ -164,7 +154,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
164
154
|
};
|
165
155
|
|
166
156
|
// Auto focus text input when entering edit mode
|
167
|
-
React.useEffect(
|
157
|
+
React.useEffect(() => {
|
168
158
|
if (inEditMode) {
|
169
159
|
if (type === 'text') {
|
170
160
|
textInputRef.current.focus();
|
@@ -173,50 +163,52 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
173
163
|
numberInputRef.current.focus();
|
174
164
|
}
|
175
165
|
if (type === 'selection') {
|
176
|
-
|
177
|
-
dropdownRef === null || dropdownRef === void 0 || (_dropdownRef$current = dropdownRef.current) === null || _dropdownRef$current === void 0 || _dropdownRef$current.focus();
|
166
|
+
dropdownRef?.current?.focus();
|
178
167
|
}
|
179
168
|
}
|
180
169
|
}, [inEditMode, type]);
|
181
170
|
|
182
171
|
// Saves the new cell data, onDataUpdate is a required function to be
|
183
172
|
// passed to useDatagrid when using useInlineEdit
|
184
|
-
saveCellData = React.useCallback(
|
185
|
-
|
186
|
-
|
187
|
-
onDataUpdate(
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
}
|
194
|
-
|
173
|
+
saveCellData = React.useCallback(newValue => {
|
174
|
+
const columnId = cell.column.id;
|
175
|
+
const rowIndex = cell.row.index;
|
176
|
+
onDataUpdate(prev => prev.map((row, index) => {
|
177
|
+
if (index === rowIndex) {
|
178
|
+
return {
|
179
|
+
...prev[rowIndex],
|
180
|
+
[columnId]: newValue
|
181
|
+
};
|
182
|
+
}
|
183
|
+
return row;
|
184
|
+
}));
|
195
185
|
}, [cell, onDataUpdate]);
|
196
186
|
|
197
187
|
// Initialize cellValue from value prop
|
198
|
-
React.useEffect(
|
188
|
+
React.useEffect(() => {
|
199
189
|
setCellValue(value);
|
200
190
|
}, [value]);
|
201
|
-
|
191
|
+
const sendFocusBackToGrid = () => {
|
202
192
|
// Allows the onKeyDown listener to go back to the entire grid area
|
203
|
-
|
193
|
+
const inlineEditArea = document.querySelector(`#${instance.tableId} .${blockClass}__table-with-inline-edit`);
|
204
194
|
inlineEditArea.focus();
|
205
195
|
};
|
206
|
-
|
207
|
-
|
208
|
-
|
196
|
+
const getNewCellId = key => {
|
197
|
+
const totalRows = instance.rows.length;
|
198
|
+
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}`;
|
209
199
|
return newCellId;
|
210
200
|
};
|
211
|
-
|
212
|
-
|
201
|
+
const handleKeyDown = event => {
|
202
|
+
const {
|
203
|
+
key
|
204
|
+
} = event;
|
213
205
|
switch (key) {
|
214
206
|
case 'ArrowRight':
|
215
207
|
case 'ArrowLeft':
|
216
208
|
case 'ArrowUp':
|
217
209
|
case 'ArrowDown':
|
218
210
|
if (inEditMode && event.target.type === 'checkbox') {
|
219
|
-
|
211
|
+
const newCellId = getNewCellId(key);
|
220
212
|
saveCellData(cellValue);
|
221
213
|
setInitialValue(cellValue);
|
222
214
|
dispatch({
|
@@ -233,10 +225,10 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
233
225
|
{
|
234
226
|
if (type === 'checkbox') {
|
235
227
|
// Since checkbox doesn't need to click into it to enter `inEditMode` we don't need to check for it
|
236
|
-
|
228
|
+
const newCellId = getNewCellId(key);
|
237
229
|
dispatch({
|
238
230
|
type: 'EXIT_EDIT_MODE',
|
239
|
-
payload:
|
231
|
+
payload: newCellId
|
240
232
|
});
|
241
233
|
setInEditMode(false);
|
242
234
|
sendFocusBackToGrid();
|
@@ -246,20 +238,21 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
246
238
|
if (type === 'selection' || type === 'date') {
|
247
239
|
return;
|
248
240
|
}
|
249
|
-
|
250
|
-
validator
|
251
|
-
|
241
|
+
const {
|
242
|
+
validator
|
243
|
+
} = config || {};
|
244
|
+
const isInvalid = validator?.(cellValue);
|
252
245
|
// If an invalid state is detected, Tab/Enter should not do anything
|
253
246
|
// until the input has a valid state once again
|
254
247
|
if (isInvalid) {
|
255
248
|
return;
|
256
249
|
}
|
257
|
-
|
250
|
+
const newCellId = getNewCellId(key);
|
258
251
|
saveCellData(cellValue);
|
259
252
|
setInitialValue(cellValue);
|
260
253
|
dispatch({
|
261
254
|
type: 'EXIT_EDIT_MODE',
|
262
|
-
payload:
|
255
|
+
payload: newCellId
|
263
256
|
});
|
264
257
|
setInEditMode(false);
|
265
258
|
sendFocusBackToGrid();
|
@@ -284,47 +277,47 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
284
277
|
return;
|
285
278
|
}
|
286
279
|
};
|
287
|
-
|
280
|
+
const addActiveState = () => {
|
288
281
|
dispatch({
|
289
282
|
type: 'UPDATE_ACTIVE_CELL_ID',
|
290
283
|
payload: cellId
|
291
284
|
});
|
292
285
|
};
|
293
|
-
|
294
|
-
|
286
|
+
const renderDropdownItem = item => {
|
287
|
+
const includesIcon = !!item?.icon;
|
295
288
|
return includesIcon ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(item.icon), /*#__PURE__*/React.createElement("span", {
|
296
|
-
className: cx(
|
297
|
-
}, item
|
289
|
+
className: cx(`${blockClass}__inline-edit--select-item`)
|
290
|
+
}, item?.text)) : item?.text;
|
298
291
|
};
|
299
|
-
|
300
|
-
return items
|
301
|
-
return renderDropdownItem(item);
|
302
|
-
} : null;
|
292
|
+
const handleTransformedItem = items => {
|
293
|
+
return items?.length && typeof items[0] === 'object' ? item => renderDropdownItem(item) : null;
|
303
294
|
};
|
304
|
-
useIsomorphicEffect.useIsomorphicEffect(
|
295
|
+
useIsomorphicEffect.useIsomorphicEffect(() => {
|
305
296
|
if (dropdownRef.current && dropdownRef.current.style) {
|
306
|
-
|
307
|
-
closestElement.style.width =
|
297
|
+
const closestElement = dropdownRef.current.closest(`.${blockClass}__inline-edit--select`);
|
298
|
+
closestElement.style.width = `${cell.column.totalWidth}px`;
|
308
299
|
}
|
309
300
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
310
301
|
}, [dropdownRef.current, cell.column.totalWidth]);
|
311
|
-
|
312
|
-
|
313
|
-
inputProps
|
302
|
+
const renderSelectCell = () => {
|
303
|
+
const {
|
304
|
+
inputProps
|
305
|
+
} = config || {};
|
314
306
|
return /*#__PURE__*/React.createElement(react.Dropdown, _rollupPluginBabelHelpers.extends({
|
315
307
|
id: cellId,
|
316
308
|
label: cellLabel || 'Dropdown menu options',
|
317
309
|
ariaLabel: cellLabel || 'Dropdown menu options'
|
318
310
|
}, inputProps, {
|
319
311
|
hideLabel: true,
|
320
|
-
className: cx(
|
321
|
-
|
312
|
+
className: cx(`${blockClass}__inline-edit--select`, {
|
313
|
+
[`${blockClass}__inline-edit--select-${rowSize}`]: rowSize
|
314
|
+
}),
|
315
|
+
items: inputProps?.items || [],
|
322
316
|
initialSelectedItem: cell.value,
|
323
|
-
itemToElement: handleTransformedItem(inputProps
|
324
|
-
renderSelectedItem: handleTransformedItem(inputProps
|
325
|
-
onChange:
|
326
|
-
|
327
|
-
var newCellId = getNewCellId('Enter');
|
317
|
+
itemToElement: handleTransformedItem(inputProps?.items),
|
318
|
+
renderSelectedItem: handleTransformedItem(inputProps?.items),
|
319
|
+
onChange: item => {
|
320
|
+
const newCellId = getNewCellId('Enter');
|
328
321
|
saveCellData(item.selectedItem);
|
329
322
|
setCellValue(item.selectedItem);
|
330
323
|
dispatch({
|
@@ -333,12 +326,13 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
333
326
|
});
|
334
327
|
setInEditMode(false);
|
335
328
|
sendFocusBackToGrid();
|
336
|
-
inputProps
|
329
|
+
inputProps?.onChange?.(item.selectedItem);
|
337
330
|
},
|
338
331
|
downshiftProps: {
|
339
|
-
onStateChange:
|
340
|
-
|
341
|
-
isOpen
|
332
|
+
onStateChange: downshiftState => {
|
333
|
+
const {
|
334
|
+
isOpen
|
335
|
+
} = downshiftState || {};
|
342
336
|
// !isOpen does not work in this case because a state change occurs on hover of the
|
343
337
|
// menu items and isOpen is changed to undefined which causes dispatch to be called unexpectedly
|
344
338
|
if (isOpen === false) {
|
@@ -355,7 +349,7 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
355
349
|
autoAlign: true
|
356
350
|
}));
|
357
351
|
};
|
358
|
-
|
352
|
+
const setRenderIcon = () => {
|
359
353
|
if (type === 'text') {
|
360
354
|
return icons.Edit;
|
361
355
|
}
|
@@ -369,33 +363,33 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
369
363
|
return icons.Calendar;
|
370
364
|
}
|
371
365
|
};
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
var datePickerInputProps = config === null || config === void 0 || (_config$inputProps = config.inputProps) === null || _config$inputProps === void 0 ? void 0 : _config$inputProps.datePickerInputProps;
|
366
|
+
const renderDateCell = () => {
|
367
|
+
const datePickerPreparedProps = propsHelper.prepareProps(config.inputProps, ['datePickerInputProps']);
|
368
|
+
const datePickerInputProps = config?.inputProps?.datePickerInputProps;
|
376
369
|
return /*#__PURE__*/React.createElement(react.DatePicker, _rollupPluginBabelHelpers.extends({}, datePickerPreparedProps, {
|
377
|
-
appendTo: outerButtonElement
|
378
|
-
ref:
|
370
|
+
appendTo: outerButtonElement?.current?.parentElement,
|
371
|
+
ref: el => {
|
379
372
|
if (el && el.style) {
|
380
|
-
el.style.width =
|
381
|
-
|
382
|
-
|
373
|
+
el.style.width = `${cell.column.totalWidth}px`;
|
374
|
+
const elementId = `${blockClass}__inline-edit--date-picker--${cell.row.index}`;
|
375
|
+
const element = el.querySelector(`input#${elementId}`);
|
383
376
|
if (element) {
|
384
377
|
element.style.position = 'static';
|
385
378
|
}
|
386
379
|
}
|
387
380
|
},
|
388
381
|
datePickerType: "single",
|
389
|
-
className: cx(
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
382
|
+
className: cx(`${blockClass}__inline-edit--date`, {
|
383
|
+
[`${blockClass}__inline-edit--date-${rowSize}`]: rowSize
|
384
|
+
}),
|
385
|
+
onChange: newDate => {
|
386
|
+
const newDateObj = newDate[0];
|
387
|
+
datePickerPreparedProps?.onChange?.(newDateObj, cell);
|
388
|
+
const newCellId = getNewCellId('Enter');
|
395
389
|
saveCellData(newDateObj);
|
396
390
|
setCellValue(newDateObj);
|
397
391
|
// To handle the interaction of the masked input when the DatePicker and updating
|
398
|
-
setTimeout(
|
392
|
+
setTimeout(() => {
|
399
393
|
setInEditMode(false);
|
400
394
|
sendFocusBackToGrid();
|
401
395
|
dispatch({
|
@@ -406,24 +400,23 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
406
400
|
},
|
407
401
|
value: cell.value
|
408
402
|
}), /*#__PURE__*/React.createElement(react.DatePickerInput, _rollupPluginBabelHelpers.extends({}, datePickerInputProps, {
|
409
|
-
placeholder:
|
410
|
-
labelText:
|
411
|
-
id:
|
403
|
+
placeholder: datePickerInputProps?.placeholder || 'mm/dd/yyyy',
|
404
|
+
labelText: datePickerInputProps?.labelText || cellLabel || 'Set date',
|
405
|
+
id: `${blockClass}__inline-edit--date-picker--${cell.row.index}`,
|
412
406
|
hideLabel: true
|
413
407
|
})));
|
414
408
|
};
|
415
409
|
|
416
410
|
// Ensures that months and days are all 2 digits, prefixes 0 if `num` is a single digit
|
417
|
-
|
411
|
+
const padTo2Digits = num => {
|
418
412
|
return num.toString().padStart(2, '0');
|
419
413
|
};
|
420
|
-
|
421
|
-
|
422
|
-
var dateFormat = config === null || config === void 0 || (_config$inputProps2 = config.inputProps) === null || _config$inputProps2 === void 0 ? void 0 : _config$inputProps2.dateFormat;
|
414
|
+
const buildDate = value => {
|
415
|
+
const dateFormat = config?.inputProps?.dateFormat;
|
423
416
|
if (value instanceof Date) {
|
424
|
-
|
425
|
-
|
426
|
-
|
417
|
+
const maskedFullYear = value.getFullYear();
|
418
|
+
const maskedMonth = padTo2Digits(value.getMonth() + 1);
|
419
|
+
const maskedDay = padTo2Digits(value.getDate());
|
427
420
|
if (dateFormat === 'm/d/Y' || value === 'm/d/y') {
|
428
421
|
return [maskedMonth, maskedDay, maskedFullYear].join('/');
|
429
422
|
}
|
@@ -435,9 +428,10 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
435
428
|
}
|
436
429
|
return null;
|
437
430
|
};
|
438
|
-
|
439
|
-
|
440
|
-
validator
|
431
|
+
const renderNumberInput = () => {
|
432
|
+
const {
|
433
|
+
validator
|
434
|
+
} = config || {};
|
441
435
|
return /*#__PURE__*/React.createElement(react.NumberInput, _rollupPluginBabelHelpers.extends({
|
442
436
|
placeholder: placeholder,
|
443
437
|
label: cellLabel
|
@@ -445,10 +439,12 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
445
439
|
id: cellId,
|
446
440
|
hideLabel: true,
|
447
441
|
defaultValue: cellValue,
|
448
|
-
invalid: validator
|
449
|
-
invalidText:
|
450
|
-
onChange:
|
451
|
-
|
442
|
+
invalid: validator?.(cellValue),
|
443
|
+
invalidText: inputProps?.invalidText || 'Provide missing invalidText',
|
444
|
+
onChange: (event, _ref2) => {
|
445
|
+
let {
|
446
|
+
value
|
447
|
+
} = _ref2;
|
452
448
|
setCellValue(value);
|
453
449
|
if (inputProps.onChange) {
|
454
450
|
inputProps.onChange(value);
|
@@ -457,16 +453,20 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
457
453
|
ref: numberInputRef
|
458
454
|
}));
|
459
455
|
};
|
460
|
-
|
456
|
+
const renderCheckBoxCell = () => {
|
461
457
|
return /*#__PURE__*/React.createElement(react.Checkbox, _rollupPluginBabelHelpers.extends({
|
462
458
|
labelText: cellLabel || 'Checkbox'
|
463
459
|
}, inputProps, {
|
464
|
-
className: cx(
|
460
|
+
className: cx(`${blockClass}__inline-edit--outer-cell-checkbox`, {
|
461
|
+
[`${blockClass}__inline-edit--outer-cell-checkbox-focus`]: activeCellId === cellId
|
462
|
+
}),
|
465
463
|
id: cellId,
|
466
464
|
hideLabel: true,
|
467
465
|
checked: cellValue,
|
468
|
-
onChange:
|
469
|
-
|
466
|
+
onChange: (event, _ref3) => {
|
467
|
+
let {
|
468
|
+
checked
|
469
|
+
} = _ref3;
|
470
470
|
setCellValue(checked);
|
471
471
|
if (inputProps.onChange) {
|
472
472
|
inputProps.onChange(checked);
|
@@ -475,10 +475,11 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
475
475
|
ref: checkboxRef
|
476
476
|
}));
|
477
477
|
};
|
478
|
-
|
479
|
-
|
480
|
-
validator
|
481
|
-
|
478
|
+
const renderTextInput = () => {
|
479
|
+
const {
|
480
|
+
validator
|
481
|
+
} = config || {};
|
482
|
+
const isInvalid = validator?.(cellValue);
|
482
483
|
return /*#__PURE__*/React.createElement(react.TextInput, _rollupPluginBabelHelpers.extends({
|
483
484
|
labelText: cellLabel,
|
484
485
|
placeholder: placeholder
|
@@ -487,8 +488,8 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
487
488
|
hideLabel: true,
|
488
489
|
defaultValue: cellValue,
|
489
490
|
invalid: isInvalid,
|
490
|
-
invalidText:
|
491
|
-
onChange:
|
491
|
+
invalidText: inputProps?.invalidText || 'Provide missing invalidText',
|
492
|
+
onChange: event => {
|
492
493
|
setCellValue(event.target.value);
|
493
494
|
if (inputProps.onChange) {
|
494
495
|
inputProps.onChange(event.target.value);
|
@@ -497,22 +498,21 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
497
498
|
ref: textInputRef
|
498
499
|
}));
|
499
500
|
};
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
return val === null || val === void 0 ? void 0 : val.value;
|
501
|
+
const getLabel = () => {
|
502
|
+
const checkStaticCell = val => {
|
503
|
+
if (typeof val === 'object' && val?.isStaticCell) {
|
504
|
+
return val?.value;
|
505
505
|
}
|
506
506
|
};
|
507
507
|
switch (type) {
|
508
508
|
case 'selection':
|
509
509
|
checkStaticCell(value);
|
510
|
-
return
|
510
|
+
return value?.text ?? value;
|
511
511
|
case 'date':
|
512
512
|
checkStaticCell(value);
|
513
513
|
return buildDate(value);
|
514
514
|
default:
|
515
|
-
return
|
515
|
+
return checkStaticCell(value) ?? value;
|
516
516
|
}
|
517
517
|
};
|
518
518
|
return (
|
@@ -527,13 +527,18 @@ var InlineEditCell = function InlineEditCell(_ref) {
|
|
527
527
|
"data-inline-type": type,
|
528
528
|
onClick: !nonEditCell ? handleInlineCellClick : addActiveState,
|
529
529
|
onKeyDown: !nonEditCell ? handleKeyDown : null,
|
530
|
-
className: cx(
|
530
|
+
className: cx(`${blockClass}__inline-edit--outer-cell-button`, {
|
531
|
+
[`${blockClass}__inline-edit--outer-cell-button--${rowSize}`]: rowSize,
|
532
|
+
[`${blockClass}__inline-edit--outer-cell-button--lg`]: !rowSize,
|
533
|
+
[`${blockClass}__inline-edit--outer-cell-button--invalid`]: inEditMode && config?.validator?.(cellValue),
|
534
|
+
[`${blockClass}__static--outer-cell`]: !disabledCell
|
535
|
+
})
|
531
536
|
}, (!inEditMode || disabledCell) && type !== 'checkbox' && /*#__PURE__*/React.createElement(InlineEditButton.InlineEditButton, {
|
532
537
|
isActiveCell: cellId === activeCellId,
|
533
538
|
renderIcon: setRenderIcon(),
|
534
539
|
label: getLabel(),
|
535
540
|
disabledCell: disabledCell,
|
536
|
-
labelIcon:
|
541
|
+
labelIcon: value?.icon || null,
|
537
542
|
placeholder: placeholder,
|
538
543
|
tabIndex: tabIndex,
|
539
544
|
nonEditCell: nonEditCell,
|