@carbon/ibm-products 1.34.1 → 1.35.0
Sign up to get free protection for your applications and to get access to all the features.
- package/css/index-full-carbon.css +46 -13
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +2 -8
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +2 -9
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -7
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +46 -13
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +2 -8
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +46 -13
- package/css/index.css.map +1 -1
- package/css/index.min.css +2 -8
- package/css/index.min.css.map +1 -1
- package/es/components/APIKeyModal/APIKeyDownloader.js +8 -18
- package/es/components/APIKeyModal/APIKeyModal.js +58 -140
- package/es/components/APIKeyModal/index.js +1 -0
- package/es/components/AboutModal/AboutModal.js +40 -45
- package/es/components/AboutModal/index.js +1 -0
- package/es/components/ActionBar/ActionBar.js +69 -82
- package/es/components/ActionBar/ActionBarItem.js +19 -20
- package/es/components/ActionBar/ActionBarOverflowItems.js +10 -10
- package/es/components/ActionBar/index.js +1 -0
- package/es/components/ActionSet/ActionSet.js +30 -39
- package/es/components/ActionSet/actions.js +1 -2
- package/es/components/ActionSet/index.js +1 -0
- package/es/components/AddSelect/AddSelect.js +3 -4
- package/es/components/AddSelect/AddSelectBody.js +67 -87
- package/es/components/AddSelect/AddSelectBreadcrumbs.js +3 -4
- package/es/components/AddSelect/AddSelectColumn.js +27 -45
- package/es/components/AddSelect/AddSelectFilter.js +21 -34
- package/es/components/AddSelect/AddSelectList.js +19 -33
- package/es/components/AddSelect/AddSelectMetaPanel.js +3 -5
- package/es/components/AddSelect/AddSelectSidebar.js +14 -21
- package/es/components/AddSelect/AddSelectSort.js +6 -5
- package/es/components/AddSelect/add-select-utils.js +2 -23
- package/es/components/AddSelect/hooks/useItemSort.js +6 -8
- package/es/components/AddSelect/hooks/useParentSelect.js +3 -6
- package/es/components/AddSelect/hooks/usePath.js +6 -20
- package/es/components/AddSelect/index.js +1 -0
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +62 -88
- package/es/components/BreadcrumbWithOverflow/index.js +2 -0
- package/es/components/ButtonMenu/ButtonMenu.js +32 -30
- package/es/components/ButtonMenu/ButtonMenuItem.js +10 -6
- package/es/components/ButtonMenu/index.js +1 -0
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +34 -52
- package/es/components/ButtonSetWithOverflow/index.js +1 -0
- package/es/components/Card/Card.js +53 -71
- package/es/components/Card/CardFooter.js +19 -18
- package/es/components/Card/CardHeader.js +13 -13
- package/es/components/Card/index.js +1 -0
- package/es/components/Cascade/Cascade.js +5 -14
- package/es/components/ComboButton/ComboButton.js +24 -35
- package/es/components/ComboButton/ComboButtonItem/index.js +4 -8
- package/es/components/ComboButton/index.js +1 -0
- package/es/components/CreateFullPage/CreateFullPage.js +64 -85
- package/es/components/CreateFullPage/CreateFullPageStep.js +28 -40
- package/es/components/CreateFullPage/index.js +1 -0
- package/es/components/CreateInfluencer/CreateInfluencer.js +14 -15
- package/es/components/CreateInfluencer/index.js +1 -0
- package/es/components/CreateModal/CreateModal.js +19 -31
- package/es/components/CreateModal/index.js +2 -0
- package/es/components/CreateSidePanel/CreateSidePanel.js +24 -37
- package/es/components/CreateSidePanel/index.js +1 -0
- package/es/components/CreateTearsheet/CreateTearsheet.js +65 -88
- package/es/components/CreateTearsheet/CreateTearsheetDivider.js +4 -4
- package/es/components/CreateTearsheet/CreateTearsheetStep.js +31 -42
- package/es/components/CreateTearsheet/index.js +1 -0
- package/es/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +46 -66
- package/es/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +41 -57
- package/es/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +30 -39
- package/es/components/CreateTearsheetNarrow/index.js +1 -0
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +136 -225
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +62 -113
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +25 -56
- package/es/components/DataSpreadsheet/hooks/index.js +1 -0
- package/es/components/DataSpreadsheet/hooks/useMoveActiveCell.js +6 -5
- package/es/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +23 -44
- package/es/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +5 -5
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +18 -30
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +10 -14
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +34 -54
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +10 -10
- package/es/components/DataSpreadsheet/index.js +1 -0
- package/es/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +4 -8
- package/es/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +3 -4
- package/es/components/DataSpreadsheet/utils/createActiveCellFn.js +15 -19
- package/es/components/DataSpreadsheet/utils/createCellSelectionArea.js +15 -17
- package/es/components/DataSpreadsheet/utils/generateData.js +4 -13
- package/es/components/DataSpreadsheet/utils/getCellSize.js +1 -6
- package/es/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +1 -0
- package/es/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +7 -9
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +20 -34
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +20 -30
- package/es/components/DataSpreadsheet/utils/handleCellDeletion.js +5 -4
- package/es/components/DataSpreadsheet/utils/handleEditSubmit.js +13 -20
- package/es/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +22 -44
- package/es/components/DataSpreadsheet/utils/handleMultipleKeys.js +40 -75
- package/es/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +6 -8
- package/es/components/DataSpreadsheet/utils/removeCellSelections.js +6 -8
- package/es/components/DataSpreadsheet/utils/selectAllCells.js +7 -11
- package/es/components/Datagrid/Datagrid/Datagrid.js +12 -12
- package/es/components/Datagrid/Datagrid/DatagridBody.js +4 -10
- package/es/components/Datagrid/Datagrid/DatagridContent.js +30 -40
- package/es/components/Datagrid/Datagrid/DatagridEmptyBody.js +7 -10
- package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -6
- package/es/components/Datagrid/Datagrid/DatagridHead.js +6 -6
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +2 -9
- package/es/components/Datagrid/Datagrid/DatagridRefBody.js +5 -8
- package/es/components/Datagrid/Datagrid/DatagridRow.js +4 -12
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +10 -18
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +24 -34
- package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +2 -7
- package/es/components/Datagrid/Datagrid/DatagridToolbar.js +26 -38
- package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +15 -21
- package/es/components/Datagrid/Datagrid/DraggableElement.js +74 -85
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -5
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -10
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +14 -26
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsModal.js +54 -71
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ModalWrapper.js +6 -13
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +1 -0
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +11 -12
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +56 -106
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +7 -21
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +9 -14
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +2 -3
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +29 -63
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +14 -21
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +6 -11
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +21 -34
- package/es/components/Datagrid/Datagrid/addons/RowSize/index.js +1 -0
- package/es/components/Datagrid/Datagrid/index.js +1 -0
- package/es/components/Datagrid/Datagrid.stories/StickyActionsColumnStory.js +10 -0
- package/es/components/Datagrid/Datagrid.stories/common.js +2 -11
- package/es/components/Datagrid/common-column-ids.js +1 -0
- package/es/components/Datagrid/useActionsColumn.js +15 -31
- package/es/components/Datagrid/useColumnCenterAlign.js +0 -8
- package/es/components/Datagrid/useColumnOrder.js +1 -0
- package/es/components/Datagrid/useColumnRightAlign.js +0 -8
- package/es/components/Datagrid/useCustomizeColumns.js +5 -13
- package/es/components/Datagrid/useDatagrid.js +0 -7
- package/es/components/Datagrid/useDefaultStringRenderer.js +0 -9
- package/es/components/Datagrid/useDisableSelectRows.js +2 -10
- package/es/components/Datagrid/useExpandedRow.js +5 -15
- package/es/components/Datagrid/useFlexResize.js +0 -7
- package/es/components/Datagrid/useFloatingScroll.js +9 -22
- package/es/components/Datagrid/useInfiniteScroll.js +10 -16
- package/es/components/Datagrid/useInlineEdit.js +1 -9
- package/es/components/Datagrid/useNestedRowExpander.js +0 -6
- package/es/components/Datagrid/useNestedRows.js +1 -7
- package/es/components/Datagrid/useOnRowClick.js +4 -9
- package/es/components/Datagrid/useParentDimensions.js +6 -16
- package/es/components/Datagrid/useResizeTable.js +1 -7
- package/es/components/Datagrid/useRowExpander.js +0 -5
- package/es/components/Datagrid/useRowIsMouseOver.js +6 -15
- package/es/components/Datagrid/useRowRenderer.js +0 -5
- package/es/components/Datagrid/useRowSize.js +8 -20
- package/es/components/Datagrid/useSelectAllToggle.js +11 -22
- package/es/components/Datagrid/useSelectRows.js +11 -27
- package/es/components/Datagrid/useSkeletonRows.js +1 -6
- package/es/components/Datagrid/useSortableColumns.js +2 -23
- package/es/components/Datagrid/useStickyColumn.js +2 -31
- package/es/components/Datagrid/utils/DatagridActions.js +7 -11
- package/es/components/Datagrid/utils/DatagridPagination.js +5 -6
- package/es/components/Datagrid/utils/Wrapper.js +1 -1
- package/es/components/Datagrid/utils/getArgTypes.js +1 -0
- package/es/components/Datagrid/utils/getInlineEditColumns.js +1 -2
- package/es/components/Datagrid/utils/makeData.js +1 -15
- package/es/components/EditFullPage/EditFullPage.js +27 -20
- package/es/components/EditFullPage/index.js +1 -0
- package/es/components/EditSidePanel/EditSidePanel.js +38 -51
- package/es/components/EditSidePanel/index.js +1 -0
- package/es/components/EditTearsheet/EditTearsheet.js +32 -42
- package/es/components/EditTearsheet/EditTearsheetForm.js +13 -19
- package/es/components/EditTearsheet/index.js +1 -0
- package/es/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +34 -48
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +27 -20
- package/es/components/EditTearsheetNarrow/index.js +1 -0
- package/es/components/EditUpdateCards/EditUpdateCards.js +142 -0
- package/es/components/EditUpdateCards/index.js +8 -0
- package/es/components/EmptyStates/EmptyState.js +18 -25
- package/es/components/EmptyStates/EmptyStateContent.js +16 -17
- package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +20 -24
- package/es/components/EmptyStates/ErrorEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +20 -24
- package/es/components/EmptyStates/NoDataEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +20 -24
- package/es/components/EmptyStates/NoTagsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +20 -24
- package/es/components/EmptyStates/NotFoundEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +20 -24
- package/es/components/EmptyStates/NotificationsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +20 -24
- package/es/components/EmptyStates/UnauthorizedEmptyState/index.js +1 -0
- package/es/components/EmptyStates/assets/ErrorIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NoDataIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NoTagsIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NotFoundIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NotificationsIllustration.js +7 -6
- package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +7 -6
- package/es/components/EmptyStates/index.js +1 -0
- package/es/components/ExampleComponent/ExampleComponent.js +36 -44
- package/es/components/ExampleComponent/index.js +1 -0
- package/es/components/ExportModal/ExportModal.js +41 -80
- package/es/components/ExportModal/index.js +1 -0
- package/es/components/ExpressiveCard/ExpressiveCard.js +3 -20
- package/es/components/ExpressiveCard/index.js +1 -0
- package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +16 -18
- package/es/components/HTTPErrors/HTTPError403/index.js +1 -0
- package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +16 -18
- package/es/components/HTTPErrors/HTTPError404/index.js +1 -0
- package/es/components/HTTPErrors/HTTPErrorContent.js +15 -18
- package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +16 -18
- package/es/components/HTTPErrors/HTTPErrorOther/index.js +1 -0
- package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +6 -3
- package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +6 -3
- package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +6 -3
- package/es/components/HTTPErrors/index.js +1 -0
- package/es/components/ImportModal/ImportModal.js +40 -92
- package/es/components/ImportModal/index.js +1 -0
- package/es/components/InlineEdit/InlineEdit.js +68 -98
- package/es/components/InlineEdit/index.js +1 -0
- package/es/components/InlineEditV2/InlineEditV2.js +29 -57
- package/es/components/ModifiedTabs/ModifiedTabLabelNew.js +1 -1
- package/es/components/ModifiedTabs/ModifiedTabLabelWithClose.js +6 -9
- package/es/components/ModifiedTabs/ModifiedTabs.js +14 -19
- package/es/components/MultiAddSelect/MultiAddSelect.js +0 -23
- package/es/components/NotificationsPanel/NotificationsPanel.js +85 -126
- package/es/components/NotificationsPanel/NotificationsPanel_data.js +1 -0
- package/es/components/NotificationsPanel/index.js +1 -0
- package/es/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +1 -2
- package/es/components/NotificationsPanel/utils.js +13 -19
- package/es/components/OptionsTile/OptionsTile.js +52 -80
- package/es/components/OptionsTile/index.js +1 -0
- package/es/components/PageHeader/PageHeader.js +119 -186
- package/es/components/PageHeader/PageHeaderDemo.data.js +0 -1
- package/es/components/PageHeader/PageHeaderTitle.js +18 -23
- package/es/components/PageHeader/PageHeaderUtils.js +18 -45
- package/es/components/PageHeader/index.js +1 -0
- package/es/components/ProductiveCard/ProductiveCard.js +7 -23
- package/es/components/ProductiveCard/index.js +1 -0
- package/es/components/RemoveModal/RemoveModal.js +25 -45
- package/es/components/RemoveModal/index.js +1 -0
- package/es/components/Saving/Saving.js +15 -30
- package/es/components/Saving/index.js +1 -0
- package/es/components/SidePanel/SidePanel.js +103 -150
- package/es/components/SidePanel/constants.js +1 -0
- package/es/components/SidePanel/index.js +1 -0
- package/es/components/SingleAddSelect/SingleAddSelect.js +0 -14
- package/es/components/StatusIcon/StatusIcon.js +5 -12
- package/es/components/StatusIcon/index.js +1 -0
- package/es/components/TagSet/TagSet.js +59 -93
- package/es/components/TagSet/TagSetModal.js +19 -30
- package/es/components/TagSet/TagSetOverflow.js +16 -25
- package/es/components/TagSet/index.js +1 -0
- package/es/components/Tearsheet/Tearsheet.js +26 -33
- package/es/components/Tearsheet/TearsheetNarrow.js +22 -25
- package/es/components/Tearsheet/TearsheetShell.js +80 -91
- package/es/components/Tearsheet/index.js +1 -0
- package/es/components/Toolbar/Toolbar.js +13 -27
- package/es/components/Toolbar/ToolbarButton.js +5 -9
- package/es/components/Toolbar/ToolbarGroup.js +4 -6
- package/es/components/Toolbar/index.js +1 -0
- package/es/components/UserProfileImage/UserProfileImage.js +26 -40
- package/es/components/UserProfileImage/index.js +2 -0
- package/es/components/WebTerminal/WebTerminal.js +41 -51
- package/es/components/WebTerminal/WebTerminalContentWrapper.js +14 -11
- package/es/components/WebTerminal/hooks/index.js +8 -7
- package/es/components/WebTerminal/index.js +1 -0
- package/es/components/WebTerminal/preview-components/Navigation.js +2 -4
- package/es/components/WebTerminal/preview-components/documentationLinks.js +1 -0
- package/es/components/_Canary/Canary.js +13 -13
- package/es/components/_Canary/index.js +1 -0
- package/es/components/index.js +2 -0
- package/es/global/js/hooks/index.js +1 -0
- package/es/global/js/hooks/useActiveElement.js +4 -6
- package/es/global/js/hooks/useClickOutside.js +1 -1
- package/es/global/js/hooks/useCreateComponentFocus.js +6 -5
- package/es/global/js/hooks/useCreateComponentStepChange.js +23 -54
- package/es/global/js/hooks/usePreviousValue.js +2 -1
- package/es/global/js/hooks/useResetCreateComponent.js +10 -9
- package/es/global/js/hooks/useRetrieveStepData.js +7 -10
- package/es/global/js/hooks/useValidCreateStepCount.js +2 -1
- package/es/global/js/hooks/useWindowResize.js +8 -16
- package/es/global/js/hooks/useWindowScroll.js +4 -14
- package/es/global/js/package-settings.js +6 -11
- package/es/global/js/utils/ClickListener.js +5 -10
- package/es/global/js/utils/DisplayBox.js +3 -2
- package/es/global/js/utils/Wrap.js +14 -17
- package/es/global/js/utils/deepCloneObject.js +5 -8
- package/es/global/js/utils/devtools.js +1 -4
- package/es/global/js/utils/getBezierValues.js +1 -2
- package/es/global/js/utils/getFocusableElements.js +1 -1
- package/es/global/js/utils/getScrollbarWidth.js +1 -0
- package/es/global/js/utils/keyboardNavigation.js +7 -5
- package/es/global/js/utils/lastIndexInArray.js +0 -2
- package/es/global/js/utils/motionConstants.js +2 -3
- package/es/global/js/utils/pconsole.js +1 -3
- package/es/global/js/utils/props-helper.js +19 -35
- package/es/global/js/utils/rangeWithCallback.js +1 -0
- package/es/global/js/utils/scrollableAncestor.js +5 -8
- package/es/global/js/utils/story-helper.js +9 -8
- package/es/global/js/utils/test-helper.js +25 -42
- package/es/global/js/utils/unwrap-if-fragment.js +8 -16
- package/es/global/js/utils/uuidv4.js +1 -2
- package/es/global/js/utils/uuidv4.spec.js +1 -1
- package/es/global/js/utils/wait.js +1 -1
- package/es/global/js/utils/wrapFocus.js +8 -14
- package/es/index.js +1 -0
- package/es/settings.js +24 -18
- package/lib/components/APIKeyModal/APIKeyDownloader.js +8 -31
- package/lib/components/APIKeyModal/APIKeyModal.js +57 -161
- package/lib/components/APIKeyModal/index.js +0 -1
- package/lib/components/AboutModal/AboutModal.js +33 -60
- package/lib/components/AboutModal/index.js +0 -1
- package/lib/components/ActionBar/ActionBar.js +62 -97
- package/lib/components/ActionBar/ActionBarItem.js +12 -26
- package/lib/components/ActionBar/ActionBarOverflowItems.js +8 -20
- package/lib/components/ActionBar/index.js +0 -2
- package/lib/components/ActionSet/ActionSet.js +26 -49
- package/lib/components/ActionSet/actions.js +1 -5
- package/lib/components/ActionSet/index.js +0 -1
- package/lib/components/AddSelect/AddSelect.js +2 -16
- package/lib/components/AddSelect/AddSelectBody.js +66 -117
- package/lib/components/AddSelect/AddSelectBreadcrumbs.js +3 -14
- package/lib/components/AddSelect/AddSelectColumn.js +26 -67
- package/lib/components/AddSelect/AddSelectFilter.js +20 -48
- package/lib/components/AddSelect/AddSelectList.js +19 -45
- package/lib/components/AddSelect/AddSelectMetaPanel.js +3 -17
- package/lib/components/AddSelect/AddSelectSidebar.js +13 -31
- package/lib/components/AddSelect/AddSelectSort.js +6 -15
- package/lib/components/AddSelect/add-select-utils.js +2 -33
- package/lib/components/AddSelect/hooks/useItemSort.js +6 -13
- package/lib/components/AddSelect/hooks/useParentSelect.js +3 -9
- package/lib/components/AddSelect/hooks/usePath.js +6 -21
- package/lib/components/AddSelect/index.js +0 -1
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +55 -102
- package/lib/components/BreadcrumbWithOverflow/index.js +0 -1
- package/lib/components/ButtonMenu/ButtonMenu.js +25 -35
- package/lib/components/ButtonMenu/ButtonMenuItem.js +9 -10
- package/lib/components/ButtonMenu/index.js +0 -2
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +33 -71
- package/lib/components/ButtonSetWithOverflow/index.js +0 -1
- package/lib/components/Card/Card.js +52 -84
- package/lib/components/Card/CardFooter.js +19 -28
- package/lib/components/Card/CardHeader.js +13 -23
- package/lib/components/Card/index.js +0 -3
- package/lib/components/Cascade/Cascade.js +4 -30
- package/lib/components/Cascade/index.js +0 -1
- package/lib/components/ComboButton/ComboButton.js +23 -49
- package/lib/components/ComboButton/ComboButtonItem/index.js +2 -10
- package/lib/components/ComboButton/index.js +0 -2
- package/lib/components/CreateFullPage/CreateFullPage.js +59 -103
- package/lib/components/CreateFullPage/CreateFullPageStep.js +27 -56
- package/lib/components/CreateFullPage/index.js +0 -2
- package/lib/components/CreateInfluencer/CreateInfluencer.js +13 -24
- package/lib/components/CreateInfluencer/index.js +0 -1
- package/lib/components/CreateModal/CreateModal.js +16 -39
- package/lib/components/CreateModal/index.js +0 -1
- package/lib/components/CreateSidePanel/CreateSidePanel.js +17 -46
- package/lib/components/CreateSidePanel/index.js +0 -1
- package/lib/components/CreateTearsheet/CreateTearsheet.js +64 -107
- package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +3 -14
- package/lib/components/CreateTearsheet/CreateTearsheetStep.js +30 -58
- package/lib/components/CreateTearsheet/index.js +0 -3
- package/lib/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +45 -79
- package/lib/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +41 -71
- package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +25 -47
- package/lib/components/CreateTearsheetNarrow/index.js +0 -1
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +131 -256
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +61 -135
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +24 -75
- package/lib/components/DataSpreadsheet/hooks/index.js +0 -7
- package/lib/components/DataSpreadsheet/hooks/useMoveActiveCell.js +4 -7
- package/lib/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +23 -48
- package/lib/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +5 -9
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +18 -37
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +7 -18
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +33 -61
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +8 -14
- package/lib/components/DataSpreadsheet/index.js +0 -1
- package/lib/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +1 -9
- package/lib/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +3 -7
- package/lib/components/DataSpreadsheet/utils/createActiveCellFn.js +15 -23
- package/lib/components/DataSpreadsheet/utils/createCellSelectionArea.js +15 -22
- package/lib/components/DataSpreadsheet/utils/generateData.js +4 -16
- package/lib/components/DataSpreadsheet/utils/getCellSize.js +1 -8
- package/lib/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +1 -2
- package/lib/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +7 -12
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +19 -38
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +20 -33
- package/lib/components/DataSpreadsheet/utils/handleCellDeletion.js +5 -8
- package/lib/components/DataSpreadsheet/utils/handleEditSubmit.js +10 -24
- package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +22 -50
- package/lib/components/DataSpreadsheet/utils/handleMultipleKeys.js +39 -84
- package/lib/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +6 -12
- package/lib/components/DataSpreadsheet/utils/removeCellSelections.js +4 -10
- package/lib/components/DataSpreadsheet/utils/selectAllCells.js +6 -16
- package/lib/components/Datagrid/Datagrid/Datagrid.js +11 -26
- package/lib/components/Datagrid/Datagrid/DatagridBody.js +5 -16
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +31 -64
- package/lib/components/Datagrid/Datagrid/DatagridEmptyBody.js +8 -16
- package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -10
- package/lib/components/Datagrid/Datagrid/DatagridHead.js +6 -10
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +3 -17
- package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +4 -13
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +4 -26
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +10 -26
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +23 -48
- package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +2 -14
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +26 -51
- package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +15 -31
- package/lib/components/Datagrid/Datagrid/DraggableElement.js +75 -98
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -14
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +5 -21
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +14 -41
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsModal.js +54 -84
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ModalWrapper.js +5 -21
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -5
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +0 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +11 -20
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +55 -125
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +6 -32
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +1 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +8 -18
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +2 -5
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +28 -70
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +14 -27
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +5 -26
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +21 -44
- package/lib/components/Datagrid/Datagrid/addons/RowSize/index.js +0 -2
- package/lib/components/Datagrid/Datagrid/index.js +0 -1
- package/lib/components/Datagrid/Datagrid.stories/StickyActionsColumnStory.js +10 -0
- package/lib/components/Datagrid/Datagrid.stories/common.js +2 -17
- package/lib/components/Datagrid/Datagrid.stories/index.js +0 -6
- package/lib/components/Datagrid/common-column-ids.js +1 -1
- package/lib/components/Datagrid/index.js +0 -19
- package/lib/components/Datagrid/useActionsColumn.js +15 -37
- package/lib/components/Datagrid/useColumnCenterAlign.js +0 -14
- package/lib/components/Datagrid/useColumnOrder.js +1 -4
- package/lib/components/Datagrid/useColumnRightAlign.js +0 -14
- package/lib/components/Datagrid/useCustomizeColumns.js +4 -20
- package/lib/components/Datagrid/useDatagrid.js +0 -20
- package/lib/components/Datagrid/useDefaultStringRenderer.js +0 -15
- package/lib/components/Datagrid/useDisableSelectRows.js +2 -11
- package/lib/components/Datagrid/useExpandedRow.js +5 -20
- package/lib/components/Datagrid/useFlexResize.js +0 -9
- package/lib/components/Datagrid/useFloatingScroll.js +10 -27
- package/lib/components/Datagrid/useInfiniteScroll.js +11 -21
- package/lib/components/Datagrid/useInlineEdit.js +2 -15
- package/lib/components/Datagrid/useNestedRowExpander.js +1 -13
- package/lib/components/Datagrid/useNestedRows.js +2 -11
- package/lib/components/Datagrid/useOnRowClick.js +4 -10
- package/lib/components/Datagrid/useParentDimensions.js +7 -18
- package/lib/components/Datagrid/useResizeTable.js +2 -8
- package/lib/components/Datagrid/useRowExpander.js +1 -8
- package/lib/components/Datagrid/useRowIsMouseOver.js +5 -19
- package/lib/components/Datagrid/useRowRenderer.js +1 -7
- package/lib/components/Datagrid/useRowSize.js +7 -24
- package/lib/components/Datagrid/useSelectAllToggle.js +12 -29
- package/lib/components/Datagrid/useSelectRows.js +11 -39
- package/lib/components/Datagrid/useSkeletonRows.js +1 -8
- package/lib/components/Datagrid/useSortableColumns.js +2 -29
- package/lib/components/Datagrid/useStickyColumn.js +1 -37
- package/lib/components/Datagrid/utils/DatagridActions.js +7 -21
- package/lib/components/Datagrid/utils/DatagridPagination.js +5 -11
- package/lib/components/Datagrid/utils/Wrapper.js +1 -5
- package/lib/components/Datagrid/utils/getArgTypes.js +1 -1
- package/lib/components/Datagrid/utils/getInlineEditColumns.js +1 -6
- package/lib/components/Datagrid/utils/makeData.js +0 -24
- package/lib/components/EditFullPage/EditFullPage.js +22 -24
- package/lib/components/EditFullPage/index.js +0 -1
- package/lib/components/EditSidePanel/EditSidePanel.js +31 -59
- package/lib/components/EditSidePanel/index.js +0 -1
- package/lib/components/EditTearsheet/EditTearsheet.js +31 -59
- package/lib/components/EditTearsheet/EditTearsheetForm.js +12 -33
- package/lib/components/EditTearsheet/index.js +0 -2
- package/lib/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +34 -61
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +22 -24
- package/lib/components/EditTearsheetNarrow/index.js +0 -1
- package/lib/components/EditUpdateCards/EditUpdateCards.js +140 -0
- package/lib/components/EditUpdateCards/index.js +12 -0
- package/lib/components/EmptyStates/EmptyState.js +13 -38
- package/lib/components/EmptyStates/EmptyStateContent.js +10 -25
- package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +15 -37
- package/lib/components/EmptyStates/ErrorEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +15 -37
- package/lib/components/EmptyStates/NoDataEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +15 -37
- package/lib/components/EmptyStates/NoTagsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +15 -37
- package/lib/components/EmptyStates/NotFoundEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +15 -37
- package/lib/components/EmptyStates/NotificationsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +15 -37
- package/lib/components/EmptyStates/UnauthorizedEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/assets/ErrorIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NoDataIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NoTagsIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NotFoundIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NotificationsIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +2 -13
- package/lib/components/EmptyStates/index.js +0 -7
- package/lib/components/ExampleComponent/ExampleComponent.js +29 -51
- package/lib/components/ExampleComponent/index.js +0 -1
- package/lib/components/ExportModal/ExportModal.js +40 -95
- package/lib/components/ExportModal/index.js +0 -1
- package/lib/components/ExpressiveCard/ExpressiveCard.js +3 -32
- package/lib/components/ExpressiveCard/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +11 -27
- package/lib/components/HTTPErrors/HTTPError403/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +11 -27
- package/lib/components/HTTPErrors/HTTPError404/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPErrorContent.js +9 -23
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +11 -27
- package/lib/components/HTTPErrors/HTTPErrorOther/index.js +0 -1
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +6 -7
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +6 -7
- package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +6 -7
- package/lib/components/HTTPErrors/index.js +0 -3
- package/lib/components/ImportModal/ImportModal.js +39 -110
- package/lib/components/ImportModal/index.js +0 -1
- package/lib/components/InlineEdit/InlineEdit.js +61 -111
- package/lib/components/InlineEdit/index.js +0 -1
- package/lib/components/InlineEditV2/InlineEditV2.js +29 -74
- package/lib/components/InlineEditV2/index.js +0 -1
- package/lib/components/ModifiedTabs/ModifiedTabLabelNew.js +1 -7
- package/lib/components/ModifiedTabs/ModifiedTabLabelWithClose.js +6 -15
- package/lib/components/ModifiedTabs/ModifiedTabs.js +14 -32
- package/lib/components/ModifiedTabs/index.js +0 -1
- package/lib/components/MultiAddSelect/MultiAddSelect.js +0 -34
- package/lib/components/MultiAddSelect/index.js +0 -1
- package/lib/components/NotificationsPanel/NotificationsPanel.js +78 -143
- package/lib/components/NotificationsPanel/NotificationsPanel_data.js +1 -4
- package/lib/components/NotificationsPanel/index.js +0 -1
- package/lib/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +1 -4
- package/lib/components/NotificationsPanel/utils.js +13 -21
- package/lib/components/OptionsTile/OptionsTile.js +45 -96
- package/lib/components/OptionsTile/index.js +0 -1
- package/lib/components/PageHeader/PageHeader.js +116 -212
- package/lib/components/PageHeader/PageHeaderDemo.data.js +0 -3
- package/lib/components/PageHeader/PageHeaderTitle.js +17 -35
- package/lib/components/PageHeader/PageHeaderUtils.js +17 -58
- package/lib/components/PageHeader/index.js +0 -1
- package/lib/components/ProductiveCard/ProductiveCard.js +6 -36
- package/lib/components/ProductiveCard/index.js +0 -1
- package/lib/components/RemoveModal/RemoveModal.js +24 -61
- package/lib/components/RemoveModal/index.js +0 -1
- package/lib/components/Saving/Saving.js +14 -44
- package/lib/components/Saving/index.js +0 -1
- package/lib/components/SidePanel/SidePanel.js +98 -173
- package/lib/components/SidePanel/constants.js +1 -1
- package/lib/components/SidePanel/index.js +0 -1
- package/lib/components/SidePanel/motion/variants.js +0 -2
- package/lib/components/SingleAddSelect/SingleAddSelect.js +0 -26
- package/lib/components/SingleAddSelect/index.js +0 -1
- package/lib/components/StatusIcon/StatusIcon.js +5 -23
- package/lib/components/StatusIcon/index.js +0 -1
- package/lib/components/TagSet/TagSet.js +58 -113
- package/lib/components/TagSet/TagSetModal.js +18 -46
- package/lib/components/TagSet/TagSetOverflow.js +15 -43
- package/lib/components/TagSet/index.js +0 -1
- package/lib/components/Tearsheet/Tearsheet.js +20 -42
- package/lib/components/Tearsheet/TearsheetNarrow.js +16 -34
- package/lib/components/Tearsheet/TearsheetShell.js +73 -114
- package/lib/components/Tearsheet/index.js +0 -2
- package/lib/components/Toolbar/Toolbar.js +12 -40
- package/lib/components/Toolbar/ToolbarButton.js +4 -22
- package/lib/components/Toolbar/ToolbarGroup.js +2 -16
- package/lib/components/Toolbar/index.js +0 -3
- package/lib/components/UserProfileImage/UserProfileImage.js +19 -48
- package/lib/components/UserProfileImage/index.js +0 -1
- package/lib/components/WebTerminal/WebTerminal.js +34 -67
- package/lib/components/WebTerminal/WebTerminalContentWrapper.js +9 -20
- package/lib/components/WebTerminal/hooks/index.js +8 -19
- package/lib/components/WebTerminal/index.js +0 -3
- package/lib/components/WebTerminal/preview-components/Navigation.js +2 -9
- package/lib/components/WebTerminal/preview-components/documentationLinks.js +1 -0
- package/lib/components/WebTerminal/preview-components/index.js +0 -2
- package/lib/components/_Canary/Canary.js +4 -17
- package/lib/components/_Canary/index.js +0 -1
- package/lib/components/index.js +7 -38
- package/lib/global/js/hooks/index.js +0 -10
- package/lib/global/js/hooks/useActiveElement.js +4 -10
- package/lib/global/js/hooks/useClickOutside.js +1 -4
- package/lib/global/js/hooks/useCreateComponentFocus.js +4 -8
- package/lib/global/js/hooks/useCreateComponentStepChange.js +23 -59
- package/lib/global/js/hooks/usePreviousValue.js +0 -3
- package/lib/global/js/hooks/useResetCreateComponent.js +8 -11
- package/lib/global/js/hooks/useRetrieveStepData.js +5 -12
- package/lib/global/js/hooks/useValidCreateStepCount.js +0 -3
- package/lib/global/js/hooks/useWindowResize.js +8 -21
- package/lib/global/js/hooks/useWindowScroll.js +4 -20
- package/lib/global/js/package-settings.js +5 -14
- package/lib/global/js/utils/ClickListener.js +3 -16
- package/lib/global/js/utils/DisplayBox.js +3 -9
- package/lib/global/js/utils/Wrap.js +8 -22
- package/lib/global/js/utils/deepCloneObject.js +5 -11
- package/lib/global/js/utils/devtools.js +1 -6
- package/lib/global/js/utils/getBezierValues.js +1 -5
- package/lib/global/js/utils/getFocusableElements.js +1 -4
- package/lib/global/js/utils/getScrollbarWidth.js +1 -2
- package/lib/global/js/utils/keyboardNavigation.js +7 -6
- package/lib/global/js/utils/lastIndexInArray.js +0 -4
- package/lib/global/js/utils/motionConstants.js +1 -5
- package/lib/global/js/utils/pconsole.js +1 -7
- package/lib/global/js/utils/props-helper.js +15 -57
- package/lib/global/js/utils/rangeWithCallback.js +1 -2
- package/lib/global/js/utils/scrollableAncestor.js +5 -12
- package/lib/global/js/utils/story-helper.js +7 -21
- package/lib/global/js/utils/test-helper.js +25 -69
- package/lib/global/js/utils/unwrap-if-fragment.js +7 -19
- package/lib/global/js/utils/uuidv4.js +1 -3
- package/lib/global/js/utils/uuidv4.spec.js +1 -3
- package/lib/global/js/utils/wait.js +1 -2
- package/lib/global/js/utils/wrapFocus.js +6 -16
- package/lib/index.js +0 -3
- package/lib/settings.js +24 -27
- package/package.json +8 -8
- package/scss/components/EditUpdateCards/_edit-update-cards.scss +87 -0
- package/scss/components/EditUpdateCards/_index.scss +8 -0
- package/scss/components/EditUpdateCards/_storybook-styles.scss +56 -0
- package/scss/components/InlineEditV2/_inline-edit-v2.scss +11 -8
- package/scss/components/InlineEditV2/_storybook-styles.scss +3 -0
- package/scss/components/SidePanel/_side-panel.scss +2 -3
- package/scss/components/_index.scss +1 -1
@@ -1,17 +1,15 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
3
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
4
|
-
|
5
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
6
|
-
|
7
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
8
|
-
|
9
6
|
/**
|
10
7
|
* Copyright IBM Corp. 2022, 2022
|
11
8
|
*
|
12
9
|
* This source code is licensed under the Apache-2.0 license found in the
|
13
10
|
* LICENSE file in the root directory of this source tree.
|
14
11
|
*/
|
12
|
+
|
15
13
|
import React, { forwardRef, useEffect, useState } from 'react';
|
16
14
|
import PropTypes from 'prop-types';
|
17
15
|
import cx from 'classnames';
|
@@ -27,49 +25,44 @@ import { useSpreadsheetMouseMove } from './hooks';
|
|
27
25
|
var blockClass = "".concat(pkg.prefix, "--data-spreadsheet");
|
28
26
|
export var DataSpreadsheetHeader = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
29
27
|
var activeCellCoordinates = _ref.activeCellCoordinates,
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
28
|
+
cellSize = _ref.cellSize,
|
29
|
+
columns = _ref.columns,
|
30
|
+
currentMatcher = _ref.currentMatcher,
|
31
|
+
defaultColumn = _ref.defaultColumn,
|
32
|
+
headerGroups = _ref.headerGroups,
|
33
|
+
scrollBarSize = _ref.scrollBarSize,
|
34
|
+
selectionAreas = _ref.selectionAreas,
|
35
|
+
setActiveCellCoordinates = _ref.setActiveCellCoordinates,
|
36
|
+
setCurrentMatcher = _ref.setCurrentMatcher,
|
37
|
+
setSelectionAreas = _ref.setSelectionAreas,
|
38
|
+
setSelectionAreaData = _ref.setSelectionAreaData,
|
39
|
+
rows = _ref.rows,
|
40
|
+
totalVisibleColumns = _ref.totalVisibleColumns,
|
41
|
+
updateActiveCellCoordinates = _ref.updateActiveCellCoordinates,
|
42
|
+
setHeaderCellHoldActive = _ref.setHeaderCellHoldActive,
|
43
|
+
headerCellHoldActive = _ref.headerCellHoldActive,
|
44
|
+
selectAllAriaLabel = _ref.selectAllAriaLabel,
|
45
|
+
visibleColumns = _ref.visibleColumns;
|
49
46
|
var _useState = useState(0),
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
47
|
+
_useState2 = _slicedToArray(_useState, 2),
|
48
|
+
scrollBarSizeValue = _useState2[0],
|
49
|
+
setScrollBarSizeValue = _useState2[1];
|
54
50
|
var _useState3 = useState(false),
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
51
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
52
|
+
selectedHeaderReorderActive = _useState4[0],
|
53
|
+
setSelectedHeaderReorderActive = _useState4[1];
|
59
54
|
var previousState = usePreviousValue({
|
60
55
|
cellSize: cellSize
|
61
56
|
});
|
62
57
|
useEffect(function () {
|
63
58
|
if ((previousState === null || previousState === void 0 ? void 0 : previousState.cellSize) !== cellSize) {
|
64
59
|
var _ref$current;
|
65
|
-
|
66
60
|
var scrollContainer = ref === null || ref === void 0 ? void 0 : (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.querySelector(".".concat(blockClass, "__list--container"));
|
67
61
|
var hasScrollBar = (scrollContainer === null || scrollContainer === void 0 ? void 0 : scrollContainer.scrollHeight) > (scrollContainer === null || scrollContainer === void 0 ? void 0 : scrollContainer.clientHeight);
|
68
62
|
var scrollBarValue = hasScrollBar ? 0 : scrollBarSize;
|
69
63
|
setScrollBarSizeValue(scrollBarValue);
|
70
64
|
}
|
71
65
|
}, [cellSize, ref, scrollBarSize, previousState === null || previousState === void 0 ? void 0 : previousState.cellSize]);
|
72
|
-
|
73
66
|
var handleColumnHeaderClick = function handleColumnHeaderClick(index) {
|
74
67
|
return function (event) {
|
75
68
|
var isHoldingCommandKey = event.metaKey || event.ctrlKey;
|
@@ -91,7 +84,6 @@ export var DataSpreadsheetHeader = /*#__PURE__*/forwardRef(function (_ref, ref)
|
|
91
84
|
});
|
92
85
|
};
|
93
86
|
};
|
94
|
-
|
95
87
|
var handleSelectAllClick = function handleSelectAllClick() {
|
96
88
|
selectAllCells({
|
97
89
|
ref: ref,
|
@@ -103,16 +95,13 @@ export var DataSpreadsheetHeader = /*#__PURE__*/forwardRef(function (_ref, ref)
|
|
103
95
|
updateActiveCellCoordinates: updateActiveCellCoordinates
|
104
96
|
});
|
105
97
|
};
|
106
|
-
|
107
98
|
var handleHeaderMouseDown = function handleHeaderMouseDown(index) {
|
108
99
|
return function (event) {
|
109
100
|
var _selectionAreaToClone;
|
110
|
-
|
111
101
|
if (event.shiftKey) {
|
112
102
|
// Remove columns, need to call handleHeaderCellSelection
|
113
103
|
return;
|
114
104
|
}
|
115
|
-
|
116
105
|
setSelectedHeaderReorderActive(true);
|
117
106
|
var selectionAreaToClone = selectionAreas.filter(function (item) {
|
118
107
|
return (item === null || item === void 0 ? void 0 : item.matcher) === currentMatcher;
|
@@ -138,7 +127,6 @@ export var DataSpreadsheetHeader = /*#__PURE__*/forwardRef(function (_ref, ref)
|
|
138
127
|
setHeaderCellHoldActive(true);
|
139
128
|
};
|
140
129
|
};
|
141
|
-
|
142
130
|
useSpreadsheetMouseMove({
|
143
131
|
ref: ref,
|
144
132
|
headerCellHoldActive: headerCellHoldActive,
|
@@ -181,7 +169,6 @@ export var DataSpreadsheetHeader = /*#__PURE__*/forwardRef(function (_ref, ref)
|
|
181
169
|
className: cx("".concat(blockClass, "__th"), "".concat(blockClass, "--interactive-cell-element"), "".concat(blockClass, "__th--select-all"), _defineProperty({}, "".concat(blockClass, "__th--active-header"), (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header'))
|
182
170
|
}, "\xA0")), headerGroup.headers.map(function (column, index) {
|
183
171
|
var _cx2;
|
184
|
-
|
185
172
|
var selectedHeader = checkSelectedHeaderCell(index, selectionAreas, 'column', rows);
|
186
173
|
return /*#__PURE__*/React.createElement("div", _extends({
|
187
174
|
key: "column_".concat(index),
|
@@ -215,22 +202,18 @@ DataSpreadsheetHeader.propTypes = {
|
|
215
202
|
row: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
216
203
|
column: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
|
217
204
|
}),
|
218
|
-
|
219
205
|
/**
|
220
206
|
* Specifies the cell height
|
221
207
|
*/
|
222
208
|
cellSize: PropTypes.oneOf(['xs', 'sm', 'md', 'lg']),
|
223
|
-
|
224
209
|
/**
|
225
210
|
* All of the spreadsheet columns
|
226
211
|
*/
|
227
212
|
columns: PropTypes.array,
|
228
|
-
|
229
213
|
/**
|
230
214
|
* uuid that corresponds to the current selection area
|
231
215
|
*/
|
232
216
|
currentMatcher: PropTypes.string,
|
233
|
-
|
234
217
|
/**
|
235
218
|
* Default spreadsheet sizing values
|
236
219
|
*/
|
@@ -239,73 +222,59 @@ DataSpreadsheetHeader.propTypes = {
|
|
239
222
|
rowHeaderWidth: PropTypes.number,
|
240
223
|
width: PropTypes.number
|
241
224
|
}),
|
242
|
-
|
243
225
|
/**
|
244
226
|
* Whether or not a click/hold is active on a header cell
|
245
227
|
*/
|
246
228
|
headerCellHoldActive: PropTypes.bool,
|
247
|
-
|
248
229
|
/**
|
249
230
|
* Headers provided from useTable hook
|
250
231
|
*/
|
251
232
|
headerGroups: PropTypes.arrayOf(PropTypes.object),
|
252
|
-
|
253
233
|
/**
|
254
234
|
* All of the spreadsheet row data
|
255
235
|
*/
|
256
236
|
rows: PropTypes.arrayOf(PropTypes.object),
|
257
|
-
|
258
237
|
/**
|
259
238
|
* The scrollbar width
|
260
239
|
*/
|
261
240
|
scrollBarSize: PropTypes.number,
|
262
|
-
|
263
241
|
/**
|
264
242
|
* The aria label applied to the Select all button
|
265
243
|
*/
|
266
244
|
selectAllAriaLabel: PropTypes.string.isRequired,
|
267
|
-
|
268
245
|
/**
|
269
246
|
* All of the cell selection area items
|
270
247
|
*/
|
271
248
|
selectionAreas: PropTypes.arrayOf(PropTypes.object),
|
272
|
-
|
273
249
|
/**
|
274
250
|
* Setter fn for activeCellCoordinates value
|
275
251
|
*/
|
276
252
|
setActiveCellCoordinates: PropTypes.func,
|
277
|
-
|
278
253
|
/**
|
279
254
|
* Setter fn for currentMatcher value
|
280
255
|
*/
|
281
256
|
setCurrentMatcher: PropTypes.func,
|
282
|
-
|
283
257
|
/**
|
284
258
|
* Setter fn for header cell hold active value
|
285
259
|
*/
|
286
260
|
setHeaderCellHoldActive: PropTypes.func,
|
287
|
-
|
288
261
|
/**
|
289
262
|
* Setter fn for selectionAreaData state value
|
290
263
|
*/
|
291
264
|
setSelectionAreaData: PropTypes.func,
|
292
|
-
|
293
265
|
/**
|
294
266
|
* Setter fn for selectionAreas value
|
295
267
|
*/
|
296
268
|
setSelectionAreas: PropTypes.func,
|
297
|
-
|
298
269
|
/**
|
299
270
|
* The total number of columns to be initially visible, additional columns will be rendered and
|
300
271
|
* visible via horizontal scrollbar
|
301
272
|
*/
|
302
273
|
totalVisibleColumns: PropTypes.number,
|
303
|
-
|
304
274
|
/**
|
305
275
|
* Function used to update the active cell coordinates
|
306
276
|
*/
|
307
277
|
updateActiveCellCoordinates: PropTypes.func,
|
308
|
-
|
309
278
|
/**
|
310
279
|
* Array of visible columns provided by react-table useTable hook
|
311
280
|
*/
|
@@ -4,6 +4,7 @@
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
+
|
7
8
|
export { useMoveActiveCell } from './useMoveActiveCell';
|
8
9
|
export { useMultipleKeyTracking } from './useMultipleKeyTracking';
|
9
10
|
export { useResetSpreadsheetFocus } from './useResetSpreadsheetFocus';
|
@@ -4,18 +4,19 @@
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
-
import { useEffect } from 'react'; // Moves the placement of the active cell
|
8
7
|
|
8
|
+
import { useEffect } from 'react';
|
9
|
+
|
10
|
+
// Moves the placement of the active cell
|
9
11
|
export var useMoveActiveCell = function useMoveActiveCell(_ref) {
|
10
12
|
var spreadsheetRef = _ref.spreadsheetRef,
|
11
|
-
|
12
|
-
|
13
|
-
|
13
|
+
activeCellCoordinates = _ref.activeCellCoordinates,
|
14
|
+
containerHasFocus = _ref.containerHasFocus,
|
15
|
+
createActiveCell = _ref.createActiveCell;
|
14
16
|
useEffect(function () {
|
15
17
|
var activeCellPlacementElement = spreadsheetRef === null || spreadsheetRef === void 0 ? void 0 : spreadsheetRef.current.querySelector("[data-row-index=\"".concat(activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row, "\"][data-column-index=\"").concat(activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column, "\"]"));
|
16
18
|
var shouldPlaceActiveCellInHeader = (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' && true;
|
17
19
|
var selectAllElement = spreadsheetRef === null || spreadsheetRef === void 0 ? void 0 : spreadsheetRef.current.querySelector("[data-row-index=\"header\"][data-column-index=\"header\"]");
|
18
|
-
|
19
20
|
if (containerHasFocus) {
|
20
21
|
createActiveCell({
|
21
22
|
placementElement: activeCellCoordinates ? activeCellPlacementElement : selectAllElement,
|
@@ -1,66 +1,56 @@
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
3
|
-
|
4
3
|
/**
|
5
4
|
* Copyright IBM Corp. 2022, 2022
|
6
5
|
*
|
7
6
|
* This source code is licensed under the Apache-2.0 license found in the
|
8
7
|
* LICENSE file in the root directory of this source tree.
|
9
8
|
*/
|
9
|
+
|
10
10
|
import { useEffect, useState } from 'react';
|
11
11
|
import { usePreviousValue } from '../../../global/js/hooks';
|
12
12
|
import { includesResourceKey } from '../utils/handleMultipleKeys';
|
13
|
-
|
14
13
|
var hasFocus = function hasFocus() {
|
15
14
|
return typeof document !== 'undefined' && document.hasFocus();
|
16
15
|
};
|
17
|
-
|
18
16
|
export var useMultipleKeyTracking = function useMultipleKeyTracking(_ref) {
|
19
17
|
var ref = _ref.ref,
|
20
|
-
|
21
|
-
|
22
|
-
|
18
|
+
containerHasFocus = _ref.containerHasFocus,
|
19
|
+
isEditing = _ref.isEditing;
|
23
20
|
var _useState = useState(''),
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
21
|
+
_useState2 = _slicedToArray(_useState, 2),
|
22
|
+
usingMac = _useState2[0],
|
23
|
+
setUsingMac = _useState2[1];
|
28
24
|
var _useState3 = useState(hasFocus),
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
25
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
26
|
+
windowFocused = _useState4[0],
|
27
|
+
setWindowFocused = _useState4[1];
|
33
28
|
var _useState5 = useState([]),
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
29
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
30
|
+
keysPressedList = _useState6[0],
|
31
|
+
setKeysPressedList = _useState6[1];
|
38
32
|
var previousState = usePreviousValue({
|
39
33
|
isEditing: isEditing,
|
40
34
|
windowFocused: windowFocused,
|
41
35
|
containerHasFocus: containerHasFocus
|
42
|
-
});
|
43
|
-
// we need to clear out the keysPressedList
|
36
|
+
});
|
44
37
|
|
38
|
+
// useEffect to check for window focus, if window loses focus
|
39
|
+
// we need to clear out the keysPressedList
|
45
40
|
useEffect(function () {
|
46
41
|
var userAgentString = window.navigator.userAgent;
|
47
|
-
|
48
42
|
if (userAgentString.includes('Macintosh')) {
|
49
43
|
setUsingMac(true);
|
50
44
|
} else {
|
51
45
|
setUsingMac(false);
|
52
46
|
}
|
53
|
-
|
54
47
|
setWindowFocused(hasFocus());
|
55
|
-
|
56
48
|
var onWindowFocus = function onWindowFocus() {
|
57
49
|
return setWindowFocused(true);
|
58
50
|
};
|
59
|
-
|
60
51
|
var onWindowBlur = function onWindowBlur() {
|
61
52
|
return setWindowFocused(false);
|
62
53
|
};
|
63
|
-
|
64
54
|
window.addEventListener('focus', onWindowFocus);
|
65
55
|
window.addEventListener('blur', onWindowBlur);
|
66
56
|
return function () {
|
@@ -76,57 +66,46 @@ export var useMultipleKeyTracking = function useMultipleKeyTracking(_ref) {
|
|
76
66
|
// Prevent multiple keys of the same type being added to our keysPressedList array
|
77
67
|
if (keysPressedList.includes(event.code)) {
|
78
68
|
return;
|
79
|
-
}
|
69
|
+
}
|
70
|
+
// Because keyup events are lost when using the Command key
|
80
71
|
// we need to remove the previously pressed keys so that we
|
81
72
|
// do not have keys in the pressed list that should not be
|
82
|
-
|
83
|
-
|
84
73
|
if (includesResourceKey(keysPressedList, usingMac) && keysPressedList.length > 1) {
|
85
74
|
var clonedKeys = _toConsumableArray(keysPressedList);
|
86
|
-
|
87
75
|
var filteredClonedKeys = clonedKeys.filter(function (item) {
|
88
76
|
return item === 'MetaLeft' || item === 'MetaRight';
|
89
77
|
});
|
90
78
|
filteredClonedKeys.push(event.code);
|
91
79
|
return setKeysPressedList(_toConsumableArray(new Set(filteredClonedKeys)));
|
92
80
|
}
|
93
|
-
|
94
81
|
var tempKeys = _toConsumableArray(keysPressedList);
|
95
|
-
|
96
82
|
tempKeys.push(event.code);
|
97
83
|
setKeysPressedList(_toConsumableArray(new Set(tempKeys)));
|
98
|
-
}
|
99
|
-
|
100
|
-
|
84
|
+
}
|
85
|
+
// If keyup, we will remove the key from the keysPressedList array
|
101
86
|
if (event.type === 'keyup') {
|
102
87
|
var _tempKeys = _toConsumableArray(keysPressedList);
|
103
|
-
|
104
88
|
var filteredClone = _tempKeys.filter(function (item) {
|
105
89
|
return item !== event.code;
|
106
|
-
});
|
90
|
+
});
|
91
|
+
// Keyup events are lost on all other keys if a Meta key is used
|
107
92
|
// so to work around this behavior, we empty out all other keys
|
108
93
|
// from the keysPressedList array if we detect a Meta keyup event
|
109
|
-
|
110
|
-
|
111
94
|
if (event.code === 'MetaLeft' || event.code === 'MetaRight') {
|
112
95
|
return setKeysPressedList([]);
|
113
96
|
}
|
114
|
-
|
115
97
|
setKeysPressedList(_toConsumableArray(new Set(filteredClone)));
|
116
98
|
}
|
117
99
|
};
|
118
100
|
}
|
119
|
-
|
120
101
|
if (previousState !== null && previousState !== void 0 && previousState.windowFocused && !windowFocused) {
|
121
102
|
setKeysPressedList([]);
|
122
|
-
}
|
103
|
+
}
|
104
|
+
// Remove handlers if the spreadsheet container loses focus
|
123
105
|
// or is currently in edit mode
|
124
|
-
|
125
|
-
|
126
106
|
if (ref && !containerHasFocus || isEditing) {
|
127
107
|
ref.current.onkeydown = undefined;
|
128
108
|
ref.current.onkeyup = undefined;
|
129
|
-
|
130
109
|
if (!(previousState !== null && previousState !== void 0 && previousState.isEditing) && isEditing || previousState !== null && previousState !== void 0 && previousState.containerHasFocus && !containerHasFocus) {
|
131
110
|
setKeysPressedList([]);
|
132
111
|
}
|
@@ -4,21 +4,21 @@
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
+
|
7
8
|
import { useEffect } from 'react';
|
8
9
|
import { pkg } from '../../../settings';
|
9
10
|
export var useResetSpreadsheetFocus = function useResetSpreadsheetFocus(_ref) {
|
10
11
|
var _ref$blockClass = _ref.blockClass,
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
blockClass = _ref$blockClass === void 0 ? "".concat(pkg.prefix, "--data-spreadsheet") : _ref$blockClass,
|
13
|
+
focusedElement = _ref.focusedElement,
|
14
|
+
removeActiveCell = _ref.removeActiveCell,
|
15
|
+
setContainerHasFocus = _ref.setContainerHasFocus;
|
15
16
|
// Reset everything when spreadsheet loses focus
|
16
17
|
useEffect(function () {
|
17
18
|
if (!focusedElement.classList.contains("".concat(blockClass, "--interactive-cell-element"))) {
|
18
19
|
setContainerHasFocus(false);
|
19
20
|
removeActiveCell();
|
20
21
|
}
|
21
|
-
|
22
22
|
if (focusedElement.classList.contains(blockClass) || focusedElement.classList.contains("".concat(blockClass, "--interactive-cell-element"))) {
|
23
23
|
setContainerHasFocus(true);
|
24
24
|
}
|
@@ -1,33 +1,31 @@
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
2
|
-
|
3
2
|
/**
|
4
3
|
* Copyright IBM Corp. 2022, 2022
|
5
4
|
*
|
6
5
|
* This source code is licensed under the Apache-2.0 license found in the
|
7
6
|
* LICENSE file in the root directory of this source tree.
|
8
7
|
*/
|
8
|
+
|
9
9
|
import { useEffect, useState } from 'react';
|
10
10
|
import { px } from '@carbon/layout';
|
11
11
|
import { pkg } from '../../../settings';
|
12
12
|
import { usePreviousValue } from '../../../global/js/hooks';
|
13
13
|
export var useSpreadsheetEdit = function useSpreadsheetEdit(_ref) {
|
14
14
|
var isEditing = _ref.isEditing,
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
15
|
+
rows = _ref.rows,
|
16
|
+
activeCellCoordinates = _ref.activeCellCoordinates,
|
17
|
+
activeCellRef = _ref.activeCellRef,
|
18
|
+
cellEditorRef = _ref.cellEditorRef,
|
19
|
+
cellEditorRulerRef = _ref.cellEditorRulerRef,
|
20
|
+
visibleColumns = _ref.visibleColumns,
|
21
|
+
defaultColumn = _ref.defaultColumn,
|
22
|
+
cellEditorValue = _ref.cellEditorValue,
|
23
|
+
_ref$blockClass = _ref.blockClass,
|
24
|
+
blockClass = _ref$blockClass === void 0 ? "".concat(pkg.prefix, "--data-spreadsheet") : _ref$blockClass;
|
26
25
|
var _useState = useState(null),
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
26
|
+
_useState2 = _slicedToArray(_useState, 2),
|
27
|
+
nextIndex = _useState2[0],
|
28
|
+
setNextIndex = _useState2[1];
|
31
29
|
var previousState = usePreviousValue({
|
32
30
|
nextIndex: nextIndex
|
33
31
|
});
|
@@ -39,10 +37,8 @@ export var useSpreadsheetEdit = function useSpreadsheetEdit(_ref) {
|
|
39
37
|
useEffect(function () {
|
40
38
|
var rulerWidth = cellEditorRulerRef.current.offsetWidth;
|
41
39
|
var cellEditorCurrentWidth = parseInt(cellEditorRef.current.style.width);
|
42
|
-
|
43
40
|
if (isEditing) {
|
44
41
|
var _rows$activeCellCoord, _cellProps$column, _cellEditorRef$curren;
|
45
|
-
|
46
42
|
var cellProps = (_rows$activeCellCoord = rows[activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row]) === null || _rows$activeCellCoord === void 0 ? void 0 : _rows$activeCellCoord.cells[activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column];
|
47
43
|
var activeCellLeftPosition = activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.left;
|
48
44
|
var activeCellTopPosition = activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.top;
|
@@ -51,36 +47,30 @@ export var useSpreadsheetEdit = function useSpreadsheetEdit(_ref) {
|
|
51
47
|
cellEditorRef.current.style.display = 'block';
|
52
48
|
cellEditorRef.current.style.height = activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.height;
|
53
49
|
cellEditorRef.current.style.paddingTop = "".concat((parseInt(activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.height) - 16) / 2 - 1, "px"); // calculate paddingTop based on cellHeight which could be variable depending on the cellSize prop
|
54
|
-
|
55
50
|
cellEditorRef.current.style.textAlign = (cellProps === null || cellProps === void 0 ? void 0 : (_cellProps$column = cellProps.column) === null || _cellProps$column === void 0 ? void 0 : _cellProps$column.placement) === 'right' ? 'right' : 'left';
|
56
51
|
(_cellEditorRef$curren = cellEditorRef.current) === null || _cellEditorRef$curren === void 0 ? void 0 : _cellEditorRef$curren.focus();
|
57
|
-
|
58
52
|
if (rulerWidth < cellEditorCurrentWidth) {
|
59
53
|
var _visibleColumns$nextI;
|
60
|
-
|
61
|
-
|
62
|
-
|
54
|
+
var currentColumnWidth = ((_visibleColumns$nextI = visibleColumns[nextIndex]) === null || _visibleColumns$nextI === void 0 ? void 0 : _visibleColumns$nextI.width) || (defaultColumn === null || defaultColumn === void 0 ? void 0 : defaultColumn.width);
|
55
|
+
// If the contents of the cell editor is deleted past the point of the next column
|
63
56
|
if (rulerWidth < cellEditorCurrentWidth - currentColumnWidth) {
|
64
57
|
cellEditorRef.current.style.width = px(parseInt(cellEditorRef.current.style.width) - currentColumnWidth);
|
65
58
|
setNextIndex(function (prev) {
|
66
59
|
if (prev === 0) {
|
67
60
|
return prev;
|
68
61
|
}
|
69
|
-
|
70
62
|
return prev - 1;
|
71
63
|
});
|
72
|
-
}
|
73
|
-
|
64
|
+
}
|
65
|
+
// Decrease cell editor width by increment of current column width
|
74
66
|
}
|
75
67
|
|
76
68
|
if (rulerWidth >= cellEditorCurrentWidth) {
|
77
69
|
var _visibleColumns;
|
78
|
-
|
79
70
|
setNextIndex(function (prev) {
|
80
71
|
if (prev === visibleColumns.length - 1) {
|
81
72
|
return prev;
|
82
73
|
}
|
83
|
-
|
84
74
|
return prev + 1;
|
85
75
|
});
|
86
76
|
var onLastColumnIndex = nextIndex + 1 === visibleColumns.length;
|
@@ -94,7 +84,6 @@ export var useSpreadsheetEdit = function useSpreadsheetEdit(_ref) {
|
|
94
84
|
// Cell editor has reached max height, we need to add the scrolling back.
|
95
85
|
// We also need to subtract 1 to account for the fact that the cell editor
|
96
86
|
// is placed one pixel below the cell being edited to account for the border
|
97
|
-
|
98
87
|
if (cellEditorRef.current.clientHeight === totalCellEditorMaxHeight - 1) {
|
99
88
|
cellEditorRef.current.style.overflow = 'auto';
|
100
89
|
} else {
|
@@ -102,7 +91,6 @@ export var useSpreadsheetEdit = function useSpreadsheetEdit(_ref) {
|
|
102
91
|
}
|
103
92
|
}
|
104
93
|
}
|
105
|
-
|
106
94
|
if (!isEditing) {
|
107
95
|
cellEditorRef.current.style.overflow = 'hidden';
|
108
96
|
cellEditorRef.current.style.display = 'none';
|
@@ -4,26 +4,26 @@
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
+
|
7
8
|
import { useEffect } from 'react';
|
8
9
|
import { px } from '@carbon/layout';
|
9
10
|
import { pkg } from '../../../settings';
|
10
|
-
import { moveColumnIndicatorLine } from '../utils/moveColumnIndicatorLine';
|
11
|
-
// cloned selection area to follow the position of the cursor
|
11
|
+
import { moveColumnIndicatorLine } from '../utils/moveColumnIndicatorLine';
|
12
12
|
|
13
|
+
// Used specifically for reordering columns, will move the position of the
|
14
|
+
// cloned selection area to follow the position of the cursor
|
13
15
|
export var useSpreadsheetMouseMove = function useSpreadsheetMouseMove(_ref) {
|
14
16
|
var ref = _ref.ref,
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
17
|
+
_ref$blockClass = _ref.blockClass,
|
18
|
+
blockClass = _ref$blockClass === void 0 ? "".concat(pkg.prefix, "--data-spreadsheet") : _ref$blockClass,
|
19
|
+
headerCellHoldActive = _ref.headerCellHoldActive,
|
20
|
+
defaultColumn = _ref.defaultColumn;
|
19
21
|
useEffect(function () {
|
20
22
|
var handleMouseMove = function handleMouseMove(event) {
|
21
23
|
var clonedSelectionElement = ref.current.querySelector(".".concat(blockClass, "__selection-area--element-cloned"));
|
22
|
-
|
23
24
|
if (clonedSelectionElement) {
|
24
25
|
ref.current.addEventListener('mousemove', handleMouseMove);
|
25
26
|
}
|
26
|
-
|
27
27
|
var spreadsheetCoords = ref.current.getBoundingClientRect();
|
28
28
|
var listContainer = ref.current.querySelector(".".concat(blockClass, "__list--container"));
|
29
29
|
var scrollAmount = listContainer.scrollLeft;
|
@@ -39,22 +39,18 @@ export var useSpreadsheetMouseMove = function useSpreadsheetMouseMove(_ref) {
|
|
39
39
|
var offsetXValue = clonedSelectionElement === null || clonedSelectionElement === void 0 ? void 0 : clonedSelectionElement.getAttribute('data-clone-offset-x');
|
40
40
|
var totalSpreadsheetScrollingWidth = listContainer.scrollWidth;
|
41
41
|
var clonedSelectionWidth = clonedSelectionElement.offsetWidth;
|
42
|
-
var clonePlacement = Math.max(xPositionRelativeToSpreadsheet - offsetXValue, defaultColumn === null || defaultColumn === void 0 ? void 0 : defaultColumn.rowHeaderWidth);
|
42
|
+
var clonePlacement = Math.max(xPositionRelativeToSpreadsheet - offsetXValue, defaultColumn === null || defaultColumn === void 0 ? void 0 : defaultColumn.rowHeaderWidth);
|
43
|
+
// Moves the position of the cloned selection area to follow mouse, and
|
43
44
|
// add the amount horizontally scrolled
|
44
|
-
|
45
45
|
clonedSelectionElement.style.left = px(totalSpreadsheetScrollingWidth - clonedSelectionWidth >= clonePlacement ? clonePlacement + scrollAmount : totalSpreadsheetScrollingWidth - clonedSelectionWidth);
|
46
46
|
};
|
47
|
-
|
48
47
|
if (headerCellHoldActive) {
|
49
48
|
ref.current.addEventListener('mousemove', handleMouseMove);
|
50
49
|
}
|
51
|
-
|
52
50
|
var spreadsheetRef = ref.current;
|
53
|
-
|
54
51
|
if (!headerCellHoldActive) {
|
55
52
|
spreadsheetRef === null || spreadsheetRef === void 0 ? void 0 : spreadsheetRef.removeEventListener('mousemove', handleMouseMove);
|
56
53
|
}
|
57
|
-
|
58
54
|
return function () {
|
59
55
|
spreadsheetRef === null || spreadsheetRef === void 0 ? void 0 : spreadsheetRef.removeEventListener('mousemove', handleMouseMove);
|
60
56
|
};
|