@carbon/ibm-products 1.34.1 → 1.35.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 +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,87 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.DataSpreadsheet = void 0;
|
|
11
|
-
|
|
12
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
-
|
|
14
10
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
15
|
-
|
|
16
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
-
|
|
18
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
19
|
-
|
|
20
13
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
21
|
-
|
|
22
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
23
|
-
|
|
24
15
|
var _reactTable = require("react-table");
|
|
25
|
-
|
|
26
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
17
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
29
|
-
|
|
30
18
|
var _carbonComponentsReact = require("carbon-components-react");
|
|
31
|
-
|
|
32
19
|
var _settings = require("../../settings");
|
|
33
|
-
|
|
34
20
|
var _DataSpreadsheetBody = require("./DataSpreadsheetBody");
|
|
35
|
-
|
|
36
21
|
var _DataSpreadsheetHeader = require("./DataSpreadsheetHeader");
|
|
37
|
-
|
|
38
22
|
var _devtools = require("../../global/js/utils/devtools");
|
|
39
|
-
|
|
40
23
|
var _getScrollbarWidth = require("../../global/js/utils/getScrollbarWidth");
|
|
41
|
-
|
|
42
24
|
var _hooks = require("../../global/js/hooks");
|
|
43
|
-
|
|
44
25
|
var _uuidv = _interopRequireDefault(require("../../global/js/utils/uuidv4"));
|
|
45
|
-
|
|
46
26
|
var _deepCloneObject = require("../../global/js/utils/deepCloneObject");
|
|
47
|
-
|
|
48
27
|
var _hooks2 = require("./hooks");
|
|
49
|
-
|
|
50
28
|
var _createActiveCellFn = require("./utils/createActiveCellFn");
|
|
51
|
-
|
|
52
29
|
var _getCellSize = require("./utils/getCellSize");
|
|
53
|
-
|
|
54
30
|
var _handleMultipleKeys = require("./utils/handleMultipleKeys");
|
|
55
|
-
|
|
56
31
|
var _handleHeaderCellSelection = require("./utils/handleHeaderCellSelection");
|
|
57
|
-
|
|
58
32
|
var _removeCellSelections = require("./utils/removeCellSelections");
|
|
59
|
-
|
|
60
33
|
var _selectAllCells = require("./utils/selectAllCells");
|
|
61
|
-
|
|
62
34
|
var _handleEditSubmit = require("./utils/handleEditSubmit");
|
|
63
|
-
|
|
64
35
|
var _handleActiveCellInSelectionEnter = require("./utils/handleActiveCellInSelectionEnter");
|
|
65
|
-
|
|
66
36
|
var _handleActiveCellInSelectionTab = require("./utils/handleActiveCellInSelectionTab");
|
|
67
|
-
|
|
68
37
|
var _handleCellDeletion = require("./utils/handleCellDeletion");
|
|
69
|
-
|
|
70
38
|
var _excluded = ["cellSize", "className", "columns", "data", "defaultEmptyRowCount", "onDataUpdate", "id", "onActiveCellChange", "onSelectionAreaChange", "selectAllAriaLabel", "spreadsheetAriaLabel", "theme", "totalVisibleColumns"];
|
|
71
|
-
|
|
72
39
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
73
|
-
|
|
74
40
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
75
|
-
|
|
76
41
|
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; }
|
|
77
|
-
|
|
78
42
|
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) { (0, _defineProperty2.default)(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; }
|
|
79
|
-
|
|
80
43
|
// cspell:words rowcount colcount
|
|
44
|
+
|
|
81
45
|
// The block part of our conventional BEM class names (blockClass__E--M).
|
|
82
46
|
var blockClass = "".concat(_settings.pkg.prefix, "--data-spreadsheet");
|
|
83
|
-
var componentName = 'DataSpreadsheet';
|
|
47
|
+
var componentName = 'DataSpreadsheet';
|
|
84
48
|
|
|
49
|
+
// Default values for props
|
|
85
50
|
var defaults = {
|
|
86
51
|
cellSize: 'sm',
|
|
87
52
|
columns: Object.freeze([]),
|
|
@@ -92,101 +57,87 @@ var defaults = {
|
|
|
92
57
|
onSelectionAreaChange: Object.freeze(function () {}),
|
|
93
58
|
theme: 'light'
|
|
94
59
|
};
|
|
60
|
+
|
|
95
61
|
/**
|
|
96
62
|
* DataSpreadsheet: used to organize and display large amounts of structured data, separated by columns and rows in a grid-like format.
|
|
97
63
|
*/
|
|
98
|
-
|
|
99
64
|
var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
100
65
|
var _cx;
|
|
101
|
-
|
|
102
66
|
var _ref$cellSize = _ref.cellSize,
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
67
|
+
cellSize = _ref$cellSize === void 0 ? defaults.cellSize : _ref$cellSize,
|
|
68
|
+
className = _ref.className,
|
|
69
|
+
_ref$columns = _ref.columns,
|
|
70
|
+
columns = _ref$columns === void 0 ? defaults.columns : _ref$columns,
|
|
71
|
+
_ref$data = _ref.data,
|
|
72
|
+
data = _ref$data === void 0 ? defaults.data : _ref$data,
|
|
73
|
+
_ref$defaultEmptyRowC = _ref.defaultEmptyRowCount,
|
|
74
|
+
defaultEmptyRowCount = _ref$defaultEmptyRowC === void 0 ? defaults.defaultEmptyRowCount : _ref$defaultEmptyRowC,
|
|
75
|
+
_ref$onDataUpdate = _ref.onDataUpdate,
|
|
76
|
+
onDataUpdate = _ref$onDataUpdate === void 0 ? defaults.onDataUpdate : _ref$onDataUpdate,
|
|
77
|
+
id = _ref.id,
|
|
78
|
+
_ref$onActiveCellChan = _ref.onActiveCellChange,
|
|
79
|
+
onActiveCellChange = _ref$onActiveCellChan === void 0 ? defaults.onActiveCellChange : _ref$onActiveCellChan,
|
|
80
|
+
_ref$onSelectionAreaC = _ref.onSelectionAreaChange,
|
|
81
|
+
onSelectionAreaChange = _ref$onSelectionAreaC === void 0 ? defaults.onSelectionAreaChange : _ref$onSelectionAreaC,
|
|
82
|
+
selectAllAriaLabel = _ref.selectAllAriaLabel,
|
|
83
|
+
spreadsheetAriaLabel = _ref.spreadsheetAriaLabel,
|
|
84
|
+
theme = _ref.theme,
|
|
85
|
+
totalVisibleColumns = _ref.totalVisibleColumns,
|
|
86
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
123
87
|
var multiKeyTrackingRef = (0, _react.useRef)();
|
|
124
88
|
var localRef = (0, _react.useRef)();
|
|
125
89
|
var spreadsheetRef = ref || localRef;
|
|
126
90
|
var focusedElement = (0, _hooks.useActiveElement)();
|
|
127
|
-
|
|
128
91
|
var _useState = (0, _react.useState)(false),
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
92
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
93
|
+
containerHasFocus = _useState2[0],
|
|
94
|
+
setContainerHasFocus = _useState2[1];
|
|
133
95
|
var _useState3 = (0, _react.useState)(null),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
96
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
97
|
+
activeCellCoordinates = _useState4[0],
|
|
98
|
+
setActiveCellCoordinates = _useState4[1];
|
|
138
99
|
var _useState5 = (0, _react.useState)([]),
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
100
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
101
|
+
selectionAreas = _useState6[0],
|
|
102
|
+
setSelectionAreas = _useState6[1];
|
|
143
103
|
var _useState7 = (0, _react.useState)([]),
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
104
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
105
|
+
selectionAreaData = _useState8[0],
|
|
106
|
+
setSelectionAreaData = _useState8[1];
|
|
148
107
|
var _useState9 = (0, _react.useState)(false),
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
108
|
+
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
|
109
|
+
clickAndHoldActive = _useState10[0],
|
|
110
|
+
setClickAndHoldActive = _useState10[1];
|
|
153
111
|
var _useState11 = (0, _react.useState)(''),
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
112
|
+
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
113
|
+
currentMatcher = _useState12[0],
|
|
114
|
+
setCurrentMatcher = _useState12[1];
|
|
158
115
|
var _useState13 = (0, _react.useState)(false),
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
116
|
+
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
117
|
+
isEditing = _useState14[0],
|
|
118
|
+
setIsEditing = _useState14[1];
|
|
163
119
|
var _useState15 = (0, _react.useState)(''),
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
120
|
+
_useState16 = (0, _slicedToArray2.default)(_useState15, 2),
|
|
121
|
+
cellEditorValue = _useState16[0],
|
|
122
|
+
setCellEditorValue = _useState16[1];
|
|
168
123
|
var _useState17 = (0, _react.useState)(false),
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
124
|
+
_useState18 = (0, _slicedToArray2.default)(_useState17, 2),
|
|
125
|
+
headerCellHoldActive = _useState18[0],
|
|
126
|
+
setHeaderCellHoldActive = _useState18[1];
|
|
173
127
|
var _useState19 = (0, _react.useState)(false),
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
128
|
+
_useState20 = (0, _slicedToArray2.default)(_useState19, 2),
|
|
129
|
+
activeCellInsideSelectionArea = _useState20[0],
|
|
130
|
+
setActiveCellInsideSelectionArea = _useState20[1];
|
|
178
131
|
var previousState = (0, _hooks.usePreviousValue)({
|
|
179
132
|
activeCellCoordinates: activeCellCoordinates,
|
|
180
133
|
isEditing: isEditing
|
|
181
134
|
});
|
|
182
135
|
var cellSizeValue = (0, _getCellSize.getCellSize)(cellSize);
|
|
183
136
|
var cellEditorRef = (0, _react.useRef)();
|
|
184
|
-
|
|
185
137
|
var _useState21 = (0, _react.useState)(),
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
138
|
+
_useState22 = (0, _slicedToArray2.default)(_useState21, 2),
|
|
139
|
+
activeCellContent = _useState22[0],
|
|
140
|
+
setActiveCellContent = _useState22[1];
|
|
190
141
|
var activeCellRef = (0, _react.useRef)();
|
|
191
142
|
var cellEditorRulerRef = (0, _react.useRef)();
|
|
192
143
|
var defaultColumn = (0, _react.useMemo)(function () {
|
|
@@ -196,49 +147,45 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
196
147
|
rowHeight: cellSizeValue
|
|
197
148
|
};
|
|
198
149
|
}, [cellSizeValue]);
|
|
199
|
-
|
|
200
150
|
var _useMultipleKeyTracki = (0, _hooks2.useMultipleKeyTracking)({
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
151
|
+
ref: multiKeyTrackingRef,
|
|
152
|
+
containerHasFocus: containerHasFocus,
|
|
153
|
+
isEditing: isEditing
|
|
154
|
+
}),
|
|
155
|
+
keysPressedList = _useMultipleKeyTracki.keysPressedList,
|
|
156
|
+
usingMac = _useMultipleKeyTracki.usingMac;
|
|
208
157
|
var scrollBarSize = (0, _react.useMemo)(function () {
|
|
209
158
|
return (0, _getScrollbarWidth.getScrollbarWidth)();
|
|
210
159
|
}, []);
|
|
211
|
-
|
|
212
160
|
var _useTable = (0, _reactTable.useTable)({
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
161
|
+
columns: columns,
|
|
162
|
+
data: data,
|
|
163
|
+
defaultColumn: defaultColumn
|
|
164
|
+
}, _reactTable.useBlockLayout, _reactTable.useColumnOrder),
|
|
165
|
+
getTableProps = _useTable.getTableProps,
|
|
166
|
+
getTableBodyProps = _useTable.getTableBodyProps,
|
|
167
|
+
headerGroups = _useTable.headerGroups,
|
|
168
|
+
rows = _useTable.rows,
|
|
169
|
+
totalColumnsWidth = _useTable.totalColumnsWidth,
|
|
170
|
+
prepareRow = _useTable.prepareRow,
|
|
171
|
+
setColumnOrder = _useTable.setColumnOrder,
|
|
172
|
+
visibleColumns = _useTable.visibleColumns;
|
|
173
|
+
|
|
174
|
+
// Update the spreadsheet data after editing a cell
|
|
227
175
|
var updateData = (0, _react.useCallback)(function (rowIndex, columnId, newValue) {
|
|
228
176
|
onDataUpdate(function (prev) {
|
|
229
177
|
return prev.map(function (row, index) {
|
|
230
178
|
if (index === rowIndex) {
|
|
231
179
|
return _objectSpread(_objectSpread({}, prev[rowIndex]), {}, (0, _defineProperty2.default)({}, columnId, cellEditorValue || newValue));
|
|
232
180
|
}
|
|
233
|
-
|
|
234
181
|
return row;
|
|
235
182
|
});
|
|
236
183
|
});
|
|
237
|
-
}, [cellEditorValue, onDataUpdate]);
|
|
184
|
+
}, [cellEditorValue, onDataUpdate]);
|
|
238
185
|
|
|
186
|
+
// Removes the active cell element
|
|
239
187
|
var removeActiveCell = (0, _react.useCallback)(function () {
|
|
240
188
|
var activeCellHighlight = spreadsheetRef.current.querySelector(".".concat(blockClass, "__active-cell--highlight"));
|
|
241
|
-
|
|
242
189
|
if (activeCellHighlight) {
|
|
243
190
|
activeCellHighlight.style.display = 'none';
|
|
244
191
|
}
|
|
@@ -247,25 +194,23 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
247
194
|
setCellEditorValue('');
|
|
248
195
|
setIsEditing(false);
|
|
249
196
|
cellEditorRef.current.style.display = 'none';
|
|
250
|
-
}, []);
|
|
251
|
-
// happen if you click on another cell while isEditing is true
|
|
197
|
+
}, []);
|
|
252
198
|
|
|
199
|
+
// Remove cell editor if the active cell coordinates change and save with new cell data, this will
|
|
200
|
+
// happen if you click on another cell while isEditing is true
|
|
253
201
|
(0, _react.useEffect)(function () {
|
|
254
202
|
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
|
255
|
-
|
|
256
203
|
if (((prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row) !== (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) || (prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.column) !== (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column)) && isEditing) {
|
|
257
204
|
var cellProps = rows[prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row].cells[prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.column];
|
|
258
205
|
removeCellEditor();
|
|
259
206
|
updateData(prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row, cellProps.column.id);
|
|
260
207
|
cellEditorRulerRef.current.textContent = '';
|
|
261
208
|
}
|
|
262
|
-
|
|
263
209
|
if ((prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row) !== (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) || (prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.column) !== (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column)) {
|
|
264
210
|
if (activeCellCoordinates && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
|
265
211
|
var activeCellFullData = typeof (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'number' && typeof (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'number' ? rows[activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row].cells[activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column] : null;
|
|
266
212
|
setActiveCellContent(activeCellFullData.render('Cell'));
|
|
267
213
|
}
|
|
268
|
-
|
|
269
214
|
if (activeCellCoordinates && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
|
270
215
|
setActiveCellContent(null);
|
|
271
216
|
}
|
|
@@ -273,13 +218,13 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
273
218
|
}, [activeCellCoordinates, previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates, updateData, rows, isEditing, removeCellEditor, activeCellContent]);
|
|
274
219
|
var createActiveCell = (0, _react.useCallback)(function (_ref2) {
|
|
275
220
|
var placementElement = _ref2.placementElement,
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
221
|
+
coords = _ref2.coords,
|
|
222
|
+
_ref2$addToHeader = _ref2.addToHeader,
|
|
223
|
+
addToHeader = _ref2$addToHeader === void 0 ? false : _ref2$addToHeader;
|
|
279
224
|
var activeCellFullData = typeof (coords === null || coords === void 0 ? void 0 : coords.column) === 'number' && typeof (coords === null || coords === void 0 ? void 0 : coords.row) === 'number' ? rows[coords === null || coords === void 0 ? void 0 : coords.row].cells[coords === null || coords === void 0 ? void 0 : coords.column] : null;
|
|
280
225
|
var activeCellValue = activeCellFullData ? Object.values(activeCellFullData.row.values)[coords === null || coords === void 0 ? void 0 : coords.column] : null;
|
|
281
|
-
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
|
282
|
-
|
|
226
|
+
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
|
227
|
+
// Only create an active cell if the activeCellCoordinates have changed
|
|
283
228
|
if ((prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row) !== (coords === null || coords === void 0 ? void 0 : coords.row) || (prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.column) !== (coords === null || coords === void 0 ? void 0 : coords.column)) {
|
|
284
229
|
(0, _createActiveCellFn.createActiveCellFn)({
|
|
285
230
|
placementElement: placementElement,
|
|
@@ -319,30 +264,26 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
319
264
|
// If activeCellCoordinates is null then we need to set an initial value
|
|
320
265
|
// which will place the activeCell on the select all cell/button
|
|
321
266
|
setActiveCellInsideSelectionArea(false);
|
|
322
|
-
|
|
323
267
|
if (!activeCellCoordinates) {
|
|
324
268
|
setActiveCellCoordinates({
|
|
325
269
|
column: 'header',
|
|
326
270
|
row: 'header'
|
|
327
271
|
});
|
|
328
272
|
}
|
|
329
|
-
|
|
330
273
|
return;
|
|
331
274
|
}, [activeCellCoordinates]);
|
|
332
275
|
var updateActiveCellCoordinates = (0, _react.useCallback)(function (_ref3) {
|
|
333
276
|
var _ref3$coords = _ref3.coords,
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
277
|
+
coords = _ref3$coords === void 0 ? _objectSpread({}, activeCellCoordinates) : _ref3$coords,
|
|
278
|
+
updatedValue = _ref3.updatedValue,
|
|
279
|
+
_ref3$optOutOfSelecti = _ref3.optOutOfSelectionAreaUpdate,
|
|
280
|
+
optOutOfSelectionAreaUpdate = _ref3$optOutOfSelecti === void 0 ? false : _ref3$optOutOfSelecti;
|
|
339
281
|
var newActiveCell = _objectSpread(_objectSpread({}, coords), updatedValue);
|
|
340
|
-
|
|
341
|
-
|
|
282
|
+
setActiveCellCoordinates(newActiveCell);
|
|
283
|
+
// Only run if the active cell is _not_ a header cell. This will add a point1 object
|
|
342
284
|
// to selectionAreas every time the active cell changes, allowing us to create cell
|
|
343
285
|
// selections using keyboard. Opting out of the selection area updates here means
|
|
344
286
|
// that the active cell is being moved within a selection area
|
|
345
|
-
|
|
346
287
|
if (newActiveCell.row !== 'header' && newActiveCell.column !== 'header' && !optOutOfSelectionAreaUpdate) {
|
|
347
288
|
var tempMatcher = (0, _uuidv.default)();
|
|
348
289
|
setSelectionAreas([{
|
|
@@ -354,9 +295,7 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
354
295
|
}, [activeCellCoordinates]);
|
|
355
296
|
var handleHomeEndKey = (0, _react.useCallback)(function (_ref4) {
|
|
356
297
|
var type = _ref4.type;
|
|
357
|
-
|
|
358
298
|
var coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
|
359
|
-
|
|
360
299
|
updateActiveCellCoordinates({
|
|
361
300
|
coords: coordinatesClone,
|
|
362
301
|
updatedValue: {
|
|
@@ -369,26 +308,21 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
369
308
|
}, [activeCellCoordinates, updateActiveCellCoordinates, spreadsheetRef, columns.length]);
|
|
370
309
|
var handleKeyPress = (0, _react.useCallback)(function (event) {
|
|
371
310
|
var key = event.key;
|
|
372
|
-
|
|
373
311
|
if (isEditing) {
|
|
374
312
|
return;
|
|
375
|
-
}
|
|
376
|
-
|
|
377
|
-
|
|
313
|
+
}
|
|
314
|
+
// Command keys need to be returned as there is default browser behavior with these keys
|
|
378
315
|
if (key === 'Meta' || key === 'Control') {
|
|
379
316
|
return;
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
|
|
317
|
+
}
|
|
318
|
+
// Prevent arrow keys, home key, and end key from scrolling the page when the data spreadsheet container has focus
|
|
383
319
|
if (['End', 'Home', 'ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].indexOf(key) > -1 && !isEditing) {
|
|
384
320
|
event.preventDefault();
|
|
385
321
|
}
|
|
386
|
-
|
|
387
322
|
if (['Tab'].indexOf(key) > -1 && isEditing) {
|
|
388
323
|
return;
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
|
|
324
|
+
}
|
|
325
|
+
// Clear out all cell selection areas if user uses any arrow key, except if the shift key is being held
|
|
392
326
|
if (['ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].indexOf(key) > -1) {
|
|
393
327
|
if (selectionAreas !== null && selectionAreas !== void 0 && selectionAreas.length && keysPressedList.length < 2 && !(0, _handleMultipleKeys.includesShift)(keysPressedList)) {
|
|
394
328
|
setSelectionAreas([]);
|
|
@@ -398,7 +332,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
398
332
|
});
|
|
399
333
|
}
|
|
400
334
|
}
|
|
401
|
-
|
|
402
335
|
if (!isEditing && (keysPressedList === null || keysPressedList === void 0 ? void 0 : keysPressedList.length) > 1) {
|
|
403
336
|
(0, _handleMultipleKeys.handleMultipleKeys)({
|
|
404
337
|
activeCellCoordinates: activeCellCoordinates,
|
|
@@ -417,16 +350,15 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
417
350
|
usingMac: usingMac
|
|
418
351
|
});
|
|
419
352
|
}
|
|
420
|
-
|
|
421
353
|
var deleteParams = {
|
|
422
354
|
selectionAreas: selectionAreas,
|
|
423
355
|
currentMatcher: currentMatcher,
|
|
424
356
|
rows: rows,
|
|
425
357
|
setActiveCellContent: setActiveCellContent,
|
|
426
358
|
updateData: updateData
|
|
427
|
-
};
|
|
359
|
+
};
|
|
360
|
+
// Allow arrow key navigation if there are less than two activeKeys OR
|
|
428
361
|
// if one of the activeCellCoordinates is in a header position
|
|
429
|
-
|
|
430
362
|
if (keysPressedList.length < 2 && !(0, _handleMultipleKeys.includesShift)(keysPressedList) || activeCellCoordinates.row === 'header' || activeCellCoordinates.column === 'header') {
|
|
431
363
|
switch (key) {
|
|
432
364
|
// Backspace
|
|
@@ -436,14 +368,12 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
436
368
|
break;
|
|
437
369
|
}
|
|
438
370
|
// Delete
|
|
439
|
-
|
|
440
371
|
case 'Delete':
|
|
441
372
|
{
|
|
442
373
|
(0, _handleCellDeletion.handleCellDeletion)(deleteParams);
|
|
443
374
|
break;
|
|
444
375
|
}
|
|
445
376
|
// Enter
|
|
446
|
-
|
|
447
377
|
case 'Enter':
|
|
448
378
|
{
|
|
449
379
|
(0, _handleActiveCellInSelectionEnter.handleActiveCellInSelectionEnter)({
|
|
@@ -456,32 +386,27 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
456
386
|
break;
|
|
457
387
|
}
|
|
458
388
|
// HOME
|
|
459
|
-
|
|
460
389
|
case 'Home':
|
|
461
390
|
{
|
|
462
391
|
if ((0, _handleMultipleKeys.includesResourceKey)(keysPressedList, usingMac)) {
|
|
463
392
|
return;
|
|
464
393
|
}
|
|
465
|
-
|
|
466
394
|
handleHomeEndKey({
|
|
467
395
|
type: 'home'
|
|
468
396
|
});
|
|
469
397
|
break;
|
|
470
398
|
}
|
|
471
|
-
|
|
472
399
|
case 'End':
|
|
473
400
|
{
|
|
474
401
|
if ((0, _handleMultipleKeys.includesResourceKey)(keysPressedList, usingMac)) {
|
|
475
402
|
return;
|
|
476
403
|
}
|
|
477
|
-
|
|
478
404
|
handleHomeEndKey({
|
|
479
405
|
type: 'end'
|
|
480
406
|
});
|
|
481
407
|
break;
|
|
482
408
|
}
|
|
483
409
|
// Tab
|
|
484
|
-
|
|
485
410
|
case 'Tab':
|
|
486
411
|
{
|
|
487
412
|
if (activeCellInsideSelectionArea) {
|
|
@@ -494,7 +419,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
494
419
|
updateActiveCellCoordinates: updateActiveCellCoordinates
|
|
495
420
|
});
|
|
496
421
|
}
|
|
497
|
-
|
|
498
422
|
setSelectionAreas([]);
|
|
499
423
|
removeActiveCell();
|
|
500
424
|
removeCellEditor();
|
|
@@ -503,17 +427,13 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
503
427
|
break;
|
|
504
428
|
}
|
|
505
429
|
// Left
|
|
506
|
-
|
|
507
430
|
case 'ArrowLeft':
|
|
508
431
|
{
|
|
509
432
|
handleInitialArrowPress();
|
|
510
|
-
|
|
511
433
|
var coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
|
512
|
-
|
|
513
434
|
if (coordinatesClone.column === 'header') {
|
|
514
435
|
return;
|
|
515
436
|
}
|
|
516
|
-
|
|
517
437
|
if (typeof coordinatesClone.column === 'number') {
|
|
518
438
|
if (coordinatesClone.column === 0) {
|
|
519
439
|
updateActiveCellCoordinates({
|
|
@@ -524,7 +444,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
524
444
|
});
|
|
525
445
|
return;
|
|
526
446
|
}
|
|
527
|
-
|
|
528
447
|
updateActiveCellCoordinates({
|
|
529
448
|
coords: coordinatesClone,
|
|
530
449
|
updatedValue: {
|
|
@@ -532,21 +451,16 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
532
451
|
}
|
|
533
452
|
});
|
|
534
453
|
}
|
|
535
|
-
|
|
536
454
|
break;
|
|
537
455
|
}
|
|
538
456
|
// Up
|
|
539
|
-
|
|
540
457
|
case 'ArrowUp':
|
|
541
458
|
{
|
|
542
459
|
handleInitialArrowPress();
|
|
543
|
-
|
|
544
460
|
var _coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
|
545
|
-
|
|
546
461
|
if (_coordinatesClone.row === 'header') {
|
|
547
462
|
return;
|
|
548
463
|
}
|
|
549
|
-
|
|
550
464
|
if (typeof _coordinatesClone.row === 'number') {
|
|
551
465
|
// set row back to header if we are at index 0
|
|
552
466
|
if (_coordinatesClone.row === 0) {
|
|
@@ -557,9 +471,8 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
557
471
|
}
|
|
558
472
|
});
|
|
559
473
|
return;
|
|
560
|
-
}
|
|
561
|
-
|
|
562
|
-
|
|
474
|
+
}
|
|
475
|
+
// if we are at any other index than 0, subtract 1 from current row index
|
|
563
476
|
updateActiveCellCoordinates({
|
|
564
477
|
coords: _coordinatesClone,
|
|
565
478
|
updatedValue: {
|
|
@@ -567,17 +480,13 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
567
480
|
}
|
|
568
481
|
});
|
|
569
482
|
}
|
|
570
|
-
|
|
571
483
|
break;
|
|
572
484
|
}
|
|
573
485
|
// Right
|
|
574
|
-
|
|
575
486
|
case 'ArrowRight':
|
|
576
487
|
{
|
|
577
488
|
handleInitialArrowPress();
|
|
578
|
-
|
|
579
489
|
var _coordinatesClone2 = _objectSpread({}, activeCellCoordinates);
|
|
580
|
-
|
|
581
490
|
if (_coordinatesClone2.column === 'header') {
|
|
582
491
|
updateActiveCellCoordinates({
|
|
583
492
|
coords: _coordinatesClone2,
|
|
@@ -586,14 +495,12 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
586
495
|
}
|
|
587
496
|
});
|
|
588
497
|
}
|
|
589
|
-
|
|
590
498
|
if (typeof _coordinatesClone2.column === 'number') {
|
|
591
499
|
// Prevent active cell coordinates from updating if the active
|
|
592
500
|
// cell is in the last column, ie we can't go any further to the right
|
|
593
501
|
if (columns.length - 1 === _coordinatesClone2.column) {
|
|
594
502
|
return;
|
|
595
503
|
}
|
|
596
|
-
|
|
597
504
|
updateActiveCellCoordinates({
|
|
598
505
|
coords: _coordinatesClone2,
|
|
599
506
|
updatedValue: {
|
|
@@ -601,17 +508,13 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
601
508
|
}
|
|
602
509
|
});
|
|
603
510
|
}
|
|
604
|
-
|
|
605
511
|
break;
|
|
606
512
|
}
|
|
607
513
|
// Down
|
|
608
|
-
|
|
609
514
|
case 'ArrowDown':
|
|
610
515
|
{
|
|
611
516
|
handleInitialArrowPress();
|
|
612
|
-
|
|
613
517
|
var _coordinatesClone3 = _objectSpread({}, activeCellCoordinates);
|
|
614
|
-
|
|
615
518
|
if (_coordinatesClone3.row === 'header') {
|
|
616
519
|
updateActiveCellCoordinates({
|
|
617
520
|
coords: _coordinatesClone3,
|
|
@@ -620,7 +523,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
620
523
|
}
|
|
621
524
|
});
|
|
622
525
|
}
|
|
623
|
-
|
|
624
526
|
if (typeof _coordinatesClone3.row === 'number') {
|
|
625
527
|
// Prevent active cell coordinates from updating if the active
|
|
626
528
|
// cell is in the last row, ie we can't go any further down since
|
|
@@ -628,7 +530,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
628
530
|
if (rows.length - 1 === _coordinatesClone3.row) {
|
|
629
531
|
return;
|
|
630
532
|
}
|
|
631
|
-
|
|
632
533
|
updateActiveCellCoordinates({
|
|
633
534
|
coords: _coordinatesClone3,
|
|
634
535
|
updatedValue: {
|
|
@@ -636,13 +537,11 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
636
537
|
}
|
|
637
538
|
});
|
|
638
539
|
}
|
|
639
|
-
|
|
640
540
|
break;
|
|
641
541
|
}
|
|
642
542
|
}
|
|
643
543
|
}
|
|
644
544
|
}, [activeCellInsideSelectionArea, updateActiveCellCoordinates, handleInitialArrowPress, activeCellCoordinates, removeActiveCell, columns, rows, spreadsheetRef, currentMatcher, isEditing, removeCellEditor, selectionAreas, handleHomeEndKey, keysPressedList, usingMac, updateData]);
|
|
645
|
-
|
|
646
545
|
var startEditMode = function startEditMode() {
|
|
647
546
|
setIsEditing(true);
|
|
648
547
|
setClickAndHoldActive(false);
|
|
@@ -651,40 +550,36 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
651
550
|
setCellEditorValue(activeCellValue);
|
|
652
551
|
cellEditorRulerRef.current.textContent = activeCellValue;
|
|
653
552
|
cellEditorRef.current.style.width = activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.width;
|
|
654
|
-
};
|
|
655
|
-
// this is not done for us by default in Safari
|
|
656
|
-
|
|
553
|
+
};
|
|
657
554
|
|
|
555
|
+
// Sets the initial placement of the cell editor cursor at the end of the text area
|
|
556
|
+
// this is not done for us by default in Safari
|
|
658
557
|
(0, _react.useEffect)(function () {
|
|
659
558
|
if (isEditing && !(previousState !== null && previousState !== void 0 && previousState.isEditing)) {
|
|
660
559
|
cellEditorRef.current.setSelectionRange(cellEditorRulerRef.current.textContent.length, cellEditorRulerRef.current.textContent.length);
|
|
661
560
|
cellEditorRef.current.focus();
|
|
662
561
|
}
|
|
663
562
|
}, [isEditing, previousState === null || previousState === void 0 ? void 0 : previousState.isEditing]);
|
|
664
|
-
|
|
665
563
|
var handleActiveCellClick = function handleActiveCellClick() {
|
|
666
564
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
|
667
565
|
var indexValue = (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' ? activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column : activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row;
|
|
668
|
-
|
|
669
566
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
|
670
567
|
return;
|
|
671
568
|
}
|
|
672
|
-
|
|
673
569
|
handleRowColumnHeaderClick({
|
|
674
570
|
isKeyboard: false,
|
|
675
571
|
index: indexValue
|
|
676
572
|
});
|
|
677
573
|
}
|
|
678
|
-
|
|
679
574
|
return;
|
|
680
|
-
};
|
|
681
|
-
|
|
575
|
+
};
|
|
682
576
|
|
|
577
|
+
// Mouse up on active cell
|
|
683
578
|
var handleActiveCellMouseUp = function handleActiveCellMouseUp() {
|
|
684
579
|
setClickAndHoldActive(false);
|
|
685
|
-
};
|
|
686
|
-
|
|
580
|
+
};
|
|
687
581
|
|
|
582
|
+
// Mouse down on active cell
|
|
688
583
|
var handleActiveCellMouseDown = function handleActiveCellMouseDown() {
|
|
689
584
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
|
690
585
|
var tempMatcher = (0, _uuidv.default)();
|
|
@@ -700,19 +595,16 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
700
595
|
setSelectionAreaData([]);
|
|
701
596
|
setActiveCellInsideSelectionArea(false);
|
|
702
597
|
}
|
|
703
|
-
|
|
704
598
|
return;
|
|
705
|
-
};
|
|
706
|
-
|
|
599
|
+
};
|
|
707
600
|
|
|
601
|
+
// Go into edit mode if 'Enter' key is pressed on activeCellRef
|
|
708
602
|
var handleActiveCellKeyDown = function handleActiveCellKeyDown(event) {
|
|
709
603
|
var key = event.key;
|
|
710
|
-
|
|
711
604
|
if (key === 'Enter' && !activeCellInsideSelectionArea) {
|
|
712
605
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header') {
|
|
713
606
|
startEditMode();
|
|
714
607
|
}
|
|
715
|
-
|
|
716
608
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
|
717
609
|
handleRowColumnHeaderClick({
|
|
718
610
|
isKeyboard: true
|
|
@@ -720,11 +612,10 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
720
612
|
}
|
|
721
613
|
}
|
|
722
614
|
};
|
|
723
|
-
|
|
724
615
|
var handleRowColumnHeaderClick = function handleRowColumnHeaderClick(_ref5) {
|
|
725
616
|
var isKeyboard = _ref5.isKeyboard,
|
|
726
|
-
|
|
727
|
-
|
|
617
|
+
_ref5$index = _ref5.index,
|
|
618
|
+
index = _ref5$index === void 0 ? null : _ref5$index;
|
|
728
619
|
var handleHeaderCellProps = {
|
|
729
620
|
activeCellCoordinates: activeCellCoordinates,
|
|
730
621
|
rows: rows,
|
|
@@ -737,21 +628,19 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
737
628
|
setSelectionAreaData: setSelectionAreaData,
|
|
738
629
|
index: index,
|
|
739
630
|
currentMatcher: currentMatcher
|
|
740
|
-
};
|
|
741
|
-
|
|
631
|
+
};
|
|
632
|
+
// Select an entire column
|
|
742
633
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
|
743
634
|
(0, _handleHeaderCellSelection.handleHeaderCellSelection)(_objectSpread({
|
|
744
635
|
type: 'column'
|
|
745
636
|
}, handleHeaderCellProps));
|
|
746
|
-
}
|
|
747
|
-
|
|
748
|
-
|
|
637
|
+
}
|
|
638
|
+
// Select an entire row
|
|
749
639
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header') {
|
|
750
640
|
(0, _handleHeaderCellSelection.handleHeaderCellSelection)(_objectSpread({
|
|
751
641
|
type: 'row'
|
|
752
642
|
}, handleHeaderCellProps));
|
|
753
643
|
}
|
|
754
|
-
|
|
755
644
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header') {
|
|
756
645
|
(0, _selectAllCells.selectAllCells)({
|
|
757
646
|
ref: spreadsheetRef,
|
|
@@ -763,13 +652,12 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
763
652
|
updateActiveCellCoordinates: updateActiveCellCoordinates
|
|
764
653
|
});
|
|
765
654
|
}
|
|
766
|
-
};
|
|
767
|
-
|
|
655
|
+
};
|
|
768
656
|
|
|
657
|
+
// Go into edit mode if double click is detected on activeCellRef
|
|
769
658
|
var handleActiveCellDoubleClick = function handleActiveCellDoubleClick() {
|
|
770
659
|
startEditMode();
|
|
771
660
|
};
|
|
772
|
-
|
|
773
661
|
(0, _hooks2.useSpreadsheetEdit)({
|
|
774
662
|
isEditing: isEditing,
|
|
775
663
|
rows: rows,
|
|
@@ -783,27 +671,25 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
783
671
|
});
|
|
784
672
|
var handleActiveCellMouseEnter = (0, _react.useCallback)(function () {
|
|
785
673
|
handleActiveCellMouseEnterCallback(selectionAreas, clickAndHoldActive);
|
|
786
|
-
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
|
674
|
+
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
|
675
|
+
|
|
676
|
+
// Only update if there are cell selection areas
|
|
787
677
|
// Find point object that matches currentMatcher and remove the second point
|
|
788
678
|
// because hovering over the active cell while clicking and holding should
|
|
789
679
|
// remove the previously existing selection area
|
|
790
|
-
|
|
791
680
|
var handleActiveCellMouseEnterCallback = (0, _react.useCallback)(function (areas, clickHold) {
|
|
792
681
|
if (!currentMatcher) {
|
|
793
682
|
return;
|
|
794
683
|
}
|
|
795
|
-
|
|
796
684
|
if (areas && areas.length && clickHold && currentMatcher) {
|
|
797
685
|
setSelectionAreas(function (prev) {
|
|
798
686
|
var selectionAreaClone = (0, _deepCloneObject.deepCloneObject)(prev);
|
|
799
687
|
var indexOfItemToUpdate = selectionAreaClone.findIndex(function (item) {
|
|
800
688
|
return item.matcher === currentMatcher;
|
|
801
689
|
});
|
|
802
|
-
|
|
803
690
|
if (indexOfItemToUpdate === -1) {
|
|
804
691
|
return prev;
|
|
805
692
|
}
|
|
806
|
-
|
|
807
693
|
if ((0, _typeof2.default)(selectionAreaClone[indexOfItemToUpdate].point2) === 'object' && selectionAreaClone[indexOfItemToUpdate].areaCreated) {
|
|
808
694
|
selectionAreaClone[indexOfItemToUpdate].point2 = selectionAreaClone[indexOfItemToUpdate].point1;
|
|
809
695
|
selectionAreaClone[indexOfItemToUpdate].areaCreated = false;
|
|
@@ -814,7 +700,6 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
814
700
|
});
|
|
815
701
|
return selectionAreaClone;
|
|
816
702
|
}
|
|
817
|
-
|
|
818
703
|
return prev;
|
|
819
704
|
});
|
|
820
705
|
}
|
|
@@ -925,28 +810,28 @@ var DataSpreadsheet = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref
|
|
|
925
810
|
ref: cellEditorRulerRef,
|
|
926
811
|
className: "".concat(blockClass, "__cell-editor-ruler")
|
|
927
812
|
})));
|
|
928
|
-
});
|
|
929
|
-
|
|
813
|
+
});
|
|
930
814
|
|
|
815
|
+
// Return a placeholder if not released and not enabled by feature flag
|
|
931
816
|
exports.DataSpreadsheet = DataSpreadsheet;
|
|
932
|
-
exports.DataSpreadsheet = DataSpreadsheet = _settings.pkg.checkComponentEnabled(DataSpreadsheet, componentName);
|
|
817
|
+
exports.DataSpreadsheet = DataSpreadsheet = _settings.pkg.checkComponentEnabled(DataSpreadsheet, componentName);
|
|
818
|
+
|
|
819
|
+
// The display name of the component, used by React. Note that displayName
|
|
933
820
|
// is used in preference to relying on function.name.
|
|
821
|
+
DataSpreadsheet.displayName = componentName;
|
|
934
822
|
|
|
935
|
-
|
|
823
|
+
// The types and DocGen commentary for the component props,
|
|
936
824
|
// in alphabetical order (for consistency).
|
|
937
825
|
// See https://www.npmjs.com/package/prop-types#usage.
|
|
938
|
-
|
|
939
826
|
DataSpreadsheet.propTypes = {
|
|
940
827
|
/**
|
|
941
828
|
* Specifies the cell height
|
|
942
829
|
*/
|
|
943
830
|
cellSize: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg']),
|
|
944
|
-
|
|
945
831
|
/**
|
|
946
832
|
* Provide an optional class to be applied to the containing node.
|
|
947
833
|
*/
|
|
948
834
|
className: _propTypes.default.string,
|
|
949
|
-
|
|
950
835
|
/**
|
|
951
836
|
* The data that will build the column headers
|
|
952
837
|
*/
|
|
@@ -954,59 +839,49 @@ DataSpreadsheet.propTypes = {
|
|
|
954
839
|
Header: _propTypes.default.string,
|
|
955
840
|
accessor: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func]),
|
|
956
841
|
Cell: _propTypes.default.func // optional cell formatter
|
|
957
|
-
|
|
958
842
|
})),
|
|
959
843
|
|
|
960
844
|
/**
|
|
961
845
|
* The spreadsheet data that will be rendered in the body of the spreadsheet component
|
|
962
846
|
*/
|
|
963
847
|
data: _propTypes.default.arrayOf(_propTypes.default.shape),
|
|
964
|
-
|
|
965
848
|
/**
|
|
966
849
|
* Sets the number of empty rows to be created when there is no data provided
|
|
967
850
|
*/
|
|
968
851
|
defaultEmptyRowCount: _propTypes.default.number,
|
|
969
|
-
|
|
970
852
|
/**
|
|
971
853
|
* The spreadsheet id
|
|
972
854
|
*/
|
|
973
855
|
id: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
|
|
974
|
-
|
|
975
856
|
/**
|
|
976
857
|
* The event handler that is called when the active cell changes
|
|
977
858
|
*/
|
|
978
859
|
onActiveCellChange: _propTypes.default.func,
|
|
979
|
-
|
|
980
860
|
/**
|
|
981
861
|
* The setter fn for the data prop
|
|
982
862
|
*/
|
|
983
863
|
onDataUpdate: _propTypes.default.func,
|
|
984
|
-
|
|
985
864
|
/**
|
|
986
865
|
* The event handler that is called when the selection area values change
|
|
987
866
|
*/
|
|
988
867
|
onSelectionAreaChange: _propTypes.default.func,
|
|
989
|
-
|
|
990
868
|
/**
|
|
991
869
|
* The aria label applied to the Select all button
|
|
992
870
|
*/
|
|
993
871
|
selectAllAriaLabel: _propTypes.default.string.isRequired,
|
|
994
|
-
|
|
995
872
|
/**
|
|
996
873
|
* The aria label applied to the Data spreadsheet component
|
|
997
874
|
*/
|
|
998
875
|
spreadsheetAriaLabel: _propTypes.default.string.isRequired,
|
|
999
|
-
|
|
1000
876
|
/**
|
|
1001
877
|
* The theme the DataSpreadsheet should use (only used to render active cell/selection area colors on dark theme)
|
|
1002
878
|
*/
|
|
1003
879
|
theme: _propTypes.default.oneOf(['light', 'dark']),
|
|
1004
|
-
|
|
1005
880
|
/**
|
|
1006
881
|
* The total number of columns to be initially visible, additional columns will be rendered and
|
|
1007
882
|
* visible via horizontal scrollbar
|
|
1008
883
|
*/
|
|
1009
884
|
totalVisibleColumns: _propTypes.default.number
|
|
1010
|
-
/* TODO: add types and DocGen for all props. */
|
|
1011
885
|
|
|
886
|
+
/* TODO: add types and DocGen for all props. */
|
|
1012
887
|
};
|