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