@carbon/ibm-products 2.0.0-rc.29 → 2.0.0-rc.32
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +19 -17
- package/css/index-full-carbon.css +946 -325
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +4 -6
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +137 -147
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +2 -4
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +163 -163
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +4 -6
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +398 -207
- package/css/index.css.map +1 -1
- package/css/index.min.css +3 -5
- package/css/index.min.css.map +1 -1
- package/es/components/APIKeyModal/APIKeyDownloader.js +29 -41
- package/es/components/APIKeyModal/APIKeyModal.js +101 -185
- package/es/components/APIKeyModal/index.js +1 -0
- package/es/components/AboutModal/AboutModal.js +46 -59
- package/es/components/AboutModal/index.js +1 -0
- package/es/components/ActionBar/ActionBar.js +65 -68
- package/es/components/ActionBar/ActionBarItem.js +21 -22
- package/es/components/ActionBar/ActionBarOverflowItems.js +12 -12
- package/es/components/ActionBar/index.js +1 -0
- package/es/components/ActionSet/ActionSet.js +32 -42
- 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 +75 -102
- package/es/components/AddSelect/AddSelectBreadcrumbs.js +3 -4
- package/es/components/AddSelect/AddSelectColumn.js +32 -50
- package/es/components/AddSelect/AddSelectFilter.js +22 -35
- package/es/components/AddSelect/AddSelectFormControl.js +7 -17
- package/es/components/AddSelect/AddSelectList.js +6 -7
- package/es/components/AddSelect/AddSelectMetaPanel.js +4 -5
- package/es/components/AddSelect/AddSelectRow.js +25 -39
- package/es/components/AddSelect/AddSelectSidebar.js +15 -22
- package/es/components/AddSelect/AddSelectSort.js +9 -8
- package/es/components/AddSelect/add-select-utils.js +2 -23
- package/es/components/AddSelect/hooks/useFocus.js +3 -7
- package/es/components/AddSelect/hooks/useItemSort.js +7 -8
- package/es/components/AddSelect/hooks/useParentSelect.js +4 -6
- package/es/components/AddSelect/hooks/usePath.js +7 -22
- package/es/components/AddSelect/index.js +1 -0
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +67 -90
- package/es/components/BreadcrumbWithOverflow/index.js +2 -0
- package/es/components/ButtonMenu/ButtonMenu.js +35 -34
- package/es/components/ButtonMenu/ButtonMenuItem.js +10 -6
- package/es/components/ButtonMenu/index.js +1 -0
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +35 -53
- package/es/components/ButtonSetWithOverflow/index.js +1 -0
- package/es/components/Card/Card.js +55 -73
- 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 +65 -87
- 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 +66 -91
- 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 +47 -67
- 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 -224
- 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 +6 -8
- 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 +13 -13
- package/es/components/Datagrid/Datagrid/DatagridBody.js +4 -10
- package/es/components/Datagrid/Datagrid/DatagridContent.js +38 -51
- package/es/components/Datagrid/Datagrid/DatagridEmptyBody.js +10 -12
- 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 +1 -7
- package/es/components/Datagrid/Datagrid/DatagridRefBody.js +5 -8
- package/es/components/Datagrid/Datagrid/DatagridRow.js +6 -22
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +13 -23
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +29 -41
- package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +2 -7
- package/es/components/Datagrid/Datagrid/DatagridToolbar.js +27 -40
- package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +14 -25
- package/es/components/Datagrid/Datagrid/DraggableElement.js +75 -86
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -4
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -10
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +15 -25
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +52 -69
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +12 -15
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +6 -12
- 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/Filtering/FilterFlyout.js +61 -87
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +73 -89
- package/es/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +8 -16
- package/es/components/Datagrid/Datagrid/addons/Filtering/constants.js +4 -5
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +1 -0
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +39 -64
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +3 -8
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +8 -12
- package/es/components/Datagrid/Datagrid/addons/Filtering/hooks/useSubscribeToEventEmitter.js +2 -4
- package/es/components/Datagrid/Datagrid/addons/Filtering/utils.js +8 -14
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +11 -12
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +57 -109
- 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 +8 -12
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +18 -27
- 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/index.js +1 -0
- package/es/components/Datagrid/useActionsColumn.js +21 -39
- 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/useEditableCell.js +1 -2
- package/es/components/Datagrid/useExpandedRow.js +5 -15
- package/es/components/Datagrid/useFiltering.js +9 -19
- package/es/components/Datagrid/useFlexResize.js +0 -7
- package/es/components/Datagrid/useFloatingScroll.js +9 -22
- package/es/components/Datagrid/useInfiniteScroll.js +7 -16
- package/es/components/Datagrid/useInlineEdit.js +2 -10
- package/es/components/Datagrid/useNestedRowExpander.js +0 -6
- package/es/components/Datagrid/useNestedRows.js +1 -10
- package/es/components/Datagrid/useOnRowClick.js +4 -11
- 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 +14 -27
- package/es/components/Datagrid/useSelectRows.js +15 -34
- package/es/components/Datagrid/useSkeletonRows.js +1 -6
- package/es/components/Datagrid/useSortableColumns.js +3 -25
- package/es/components/Datagrid/useStickyColumn.js +5 -37
- package/es/components/Datagrid/utils/DatagridActions.js +19 -29
- 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/getAutoSizedColumnWidth.js +1 -3
- package/es/components/Datagrid/utils/getInlineEditColumns.js +1 -3
- package/es/components/Datagrid/utils/makeData.js +3 -18
- package/es/components/EditFullPage/EditFullPage.js +27 -20
- package/es/components/EditFullPage/index.js +1 -0
- package/es/components/EditInPlace/EditInPlace.js +33 -71
- package/es/components/EditInPlace/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 +35 -45
- package/es/components/EditTearsheet/EditTearsheetForm.js +19 -25
- package/es/components/EditTearsheet/index.js +1 -0
- package/es/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +37 -49
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +27 -20
- package/es/components/EditTearsheetNarrow/index.js +1 -0
- package/es/components/EditUpdateCards/EditUpdateCards.js +33 -35
- package/es/components/EditUpdateCards/index.js +1 -0
- package/es/components/EmptyStates/EmptyState.js +33 -36
- package/es/components/EmptyStates/EmptyStateContent.js +19 -18
- package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +28 -26
- package/es/components/EmptyStates/ErrorEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +28 -26
- package/es/components/EmptyStates/NoDataEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +28 -26
- package/es/components/EmptyStates/NoTagsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +28 -26
- package/es/components/EmptyStates/NotFoundEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +28 -26
- package/es/components/EmptyStates/NotificationsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +28 -26
- 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 +44 -57
- package/es/components/ExampleComponent/ExampleDeprecatedComponent.js +7 -3
- package/es/components/ExampleComponent/index.js +1 -0
- package/es/components/ExampleComponent/useExample.js +12 -14
- 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/FilterSummary/FilterSummary.js +8 -8
- 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 +82 -137
- package/es/components/ImportModal/index.js +1 -0
- package/es/components/MultiAddSelect/MultiAddSelect.js +1 -23
- package/es/components/MultiAddSelect/index.js +1 -0
- 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 +60 -89
- package/es/components/OptionsTile/index.js +1 -0
- package/es/components/PageHeader/PageHeader.js +119 -187
- 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 -24
- package/es/components/ProductiveCard/index.js +1 -0
- package/es/components/RemoveModal/RemoveModal.js +26 -49
- 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 +105 -151
- package/es/components/SidePanel/constants.js +1 -0
- package/es/components/SidePanel/index.js +1 -0
- package/es/components/SidePanel/motion/variants.js +1 -0
- package/es/components/SingleAddSelect/SingleAddSelect.js +1 -14
- package/es/components/SingleAddSelect/index.js +1 -0
- package/es/components/StatusIcon/StatusIcon.js +5 -12
- package/es/components/StatusIcon/index.js +1 -0
- package/es/components/TagSet/TagSet.js +57 -90
- package/es/components/TagSet/TagSetModal.js +19 -30
- package/es/components/TagSet/TagSetOverflow.js +14 -23
- package/es/components/TagSet/constants.js +1 -0
- package/es/components/TagSet/index.js +1 -0
- package/es/components/Tearsheet/Tearsheet.js +26 -35
- package/es/components/Tearsheet/TearsheetNarrow.js +22 -26
- 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 +8 -14
- 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 +44 -54
- 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 +1 -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/useControllableState.js +14 -23
- package/es/global/js/hooks/useCreateComponentFocus.js +16 -22
- package/es/global/js/hooks/useCreateComponentStepChange.js +94 -131
- package/es/global/js/hooks/usePreviousValue.js +2 -1
- package/es/global/js/hooks/useResetCreateComponent.js +11 -10
- package/es/global/js/hooks/useResizeObserver.js +14 -19
- 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 -15
- package/es/global/js/package-settings.js +5 -14
- 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/getNumberOfHiddenSteps.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 +6 -9
- package/es/global/js/utils/story-helper.js +31 -11
- package/es/global/js/utils/test-helper.js +39 -59
- package/es/global/js/utils/unwrap-if-fragment.js +9 -17
- 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 +22 -23
- package/lib/components/APIKeyModal/APIKeyDownloader.js +29 -54
- package/lib/components/APIKeyModal/APIKeyModal.js +106 -207
- package/lib/components/APIKeyModal/index.js +0 -1
- package/lib/components/AboutModal/AboutModal.js +48 -74
- package/lib/components/AboutModal/index.js +0 -1
- package/lib/components/ActionBar/ActionBar.js +66 -83
- package/lib/components/ActionBar/ActionBarItem.js +23 -29
- package/lib/components/ActionBar/ActionBarOverflowItems.js +10 -22
- package/lib/components/ActionBar/index.js +0 -2
- package/lib/components/ActionSet/ActionSet.js +37 -52
- package/lib/components/ActionSet/actions.js +1 -5
- package/lib/components/ActionSet/index.js +0 -1
- package/lib/components/AddSelect/AddSelect.js +8 -17
- package/lib/components/AddSelect/AddSelectBody.js +80 -129
- package/lib/components/AddSelect/AddSelectBreadcrumbs.js +3 -14
- package/lib/components/AddSelect/AddSelectColumn.js +37 -72
- package/lib/components/AddSelect/AddSelectFilter.js +27 -51
- package/lib/components/AddSelect/AddSelectFormControl.js +7 -27
- package/lib/components/AddSelect/AddSelectList.js +11 -22
- package/lib/components/AddSelect/AddSelectMetaPanel.js +4 -18
- package/lib/components/AddSelect/AddSelectRow.js +25 -55
- package/lib/components/AddSelect/AddSelectSidebar.js +20 -33
- package/lib/components/AddSelect/AddSelectSort.js +9 -19
- package/lib/components/AddSelect/add-select-utils.js +2 -33
- package/lib/components/AddSelect/hooks/useFocus.js +3 -10
- package/lib/components/AddSelect/hooks/useItemSort.js +7 -13
- package/lib/components/AddSelect/hooks/useParentSelect.js +4 -9
- package/lib/components/AddSelect/hooks/usePath.js +12 -24
- package/lib/components/AddSelect/index.js +0 -1
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +68 -103
- package/lib/components/BreadcrumbWithOverflow/index.js +0 -1
- package/lib/components/ButtonMenu/ButtonMenu.js +36 -38
- package/lib/components/ButtonMenu/ButtonMenuItem.js +9 -10
- package/lib/components/ButtonMenu/index.js +0 -2
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +39 -72
- package/lib/components/ButtonSetWithOverflow/index.js +0 -1
- package/lib/components/Card/Card.js +58 -85
- 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 +10 -31
- package/lib/components/Cascade/index.js +0 -1
- package/lib/components/ComboButton/ComboButton.js +29 -49
- package/lib/components/ComboButton/ComboButtonItem/index.js +2 -10
- package/lib/components/ComboButton/index.js +0 -2
- package/lib/components/CreateFullPage/CreateFullPage.js +69 -105
- package/lib/components/CreateFullPage/CreateFullPageStep.js +33 -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 +24 -39
- package/lib/components/CreateModal/index.js +0 -1
- package/lib/components/CreateSidePanel/CreateSidePanel.js +26 -46
- package/lib/components/CreateSidePanel/index.js +0 -1
- package/lib/components/CreateTearsheet/CreateTearsheet.js +71 -111
- package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +9 -14
- package/lib/components/CreateTearsheet/CreateTearsheetStep.js +36 -58
- package/lib/components/CreateTearsheet/index.js +0 -3
- package/lib/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +53 -80
- package/lib/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +41 -71
- package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +33 -47
- package/lib/components/CreateTearsheetNarrow/index.js +0 -1
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +138 -254
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +67 -136
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +30 -76
- 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 +39 -62
- 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 +25 -39
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +20 -33
- package/lib/components/DataSpreadsheet/utils/handleCellDeletion.js +6 -12
- package/lib/components/DataSpreadsheet/utils/handleEditSubmit.js +16 -25
- package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +22 -50
- package/lib/components/DataSpreadsheet/utils/handleMultipleKeys.js +45 -85
- 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 +12 -17
- package/lib/components/Datagrid/Datagrid/Datagrid.js +18 -28
- package/lib/components/Datagrid/Datagrid/DatagridBody.js +5 -16
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +38 -76
- package/lib/components/Datagrid/Datagrid/DatagridEmptyBody.js +10 -18
- package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -10
- package/lib/components/Datagrid/Datagrid/DatagridHead.js +6 -9
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +2 -15
- package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +12 -15
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +14 -31
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +21 -36
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +33 -55
- package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +9 -15
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +27 -53
- package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +21 -39
- package/lib/components/Datagrid/Datagrid/DraggableElement.js +76 -99
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -13
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +11 -21
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +15 -38
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsTearsheet.js +57 -83
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/DraggableItemsList.js +12 -27
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/TearsheetWrapper.js +10 -19
- 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/Filtering/FilterFlyout.js +61 -104
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterPanel.js +73 -109
- package/lib/components/Datagrid/Datagrid/addons/Filtering/FilterProvider.js +9 -25
- package/lib/components/Datagrid/Datagrid/addons/Filtering/constants.js +4 -6
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/index.js +0 -5
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useFilters.js +46 -76
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useInitialStateFromFilters.js +4 -12
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useShouldDisableButtons.js +6 -15
- package/lib/components/Datagrid/Datagrid/addons/Filtering/hooks/useSubscribeToEventEmitter.js +1 -6
- package/lib/components/Datagrid/Datagrid/addons/Filtering/index.js +0 -4
- package/lib/components/Datagrid/Datagrid/addons/Filtering/motion/variants.js +0 -3
- package/lib/components/Datagrid/Datagrid/addons/Filtering/utils.js +8 -16
- 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 +62 -130
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +12 -33
- 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 +14 -19
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +2 -5
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +34 -71
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +14 -27
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +13 -27
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +18 -38
- 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 -5
- package/lib/components/Datagrid/common-column-ids.js +1 -1
- package/lib/components/Datagrid/index.js +0 -22
- package/lib/components/Datagrid/useActionsColumn.js +28 -46
- package/lib/components/Datagrid/useColumnCenterAlign.js +7 -15
- package/lib/components/Datagrid/useColumnOrder.js +0 -2
- package/lib/components/Datagrid/useColumnRightAlign.js +7 -15
- package/lib/components/Datagrid/useCustomizeColumns.js +12 -21
- package/lib/components/Datagrid/useDatagrid.js +7 -21
- package/lib/components/Datagrid/useDefaultStringRenderer.js +7 -16
- package/lib/components/Datagrid/useDisableSelectRows.js +2 -11
- package/lib/components/Datagrid/useEditableCell.js +1 -4
- package/lib/components/Datagrid/useExpandedRow.js +12 -21
- package/lib/components/Datagrid/useFiltering.js +16 -25
- package/lib/components/Datagrid/useFlexResize.js +0 -9
- package/lib/components/Datagrid/useFloatingScroll.js +10 -27
- package/lib/components/Datagrid/useInfiniteScroll.js +8 -22
- package/lib/components/Datagrid/useInlineEdit.js +2 -19
- package/lib/components/Datagrid/useNestedRowExpander.js +1 -14
- package/lib/components/Datagrid/useNestedRows.js +2 -15
- package/lib/components/Datagrid/useOnRowClick.js +4 -12
- package/lib/components/Datagrid/useParentDimensions.js +7 -18
- package/lib/components/Datagrid/useResizeTable.js +2 -8
- package/lib/components/Datagrid/useRowExpander.js +1 -12
- package/lib/components/Datagrid/useRowIsMouseOver.js +12 -20
- package/lib/components/Datagrid/useRowRenderer.js +1 -7
- package/lib/components/Datagrid/useRowSize.js +14 -25
- package/lib/components/Datagrid/useSelectAllToggle.js +15 -38
- package/lib/components/Datagrid/useSelectRows.js +22 -51
- package/lib/components/Datagrid/useSkeletonRows.js +1 -8
- package/lib/components/Datagrid/useSortableColumns.js +8 -35
- package/lib/components/Datagrid/useStickyColumn.js +11 -45
- package/lib/components/Datagrid/utils/DatagridActions.js +19 -44
- 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/getAutoSizedColumnWidth.js +1 -6
- package/lib/components/Datagrid/utils/getInlineEditColumns.js +1 -9
- package/lib/components/Datagrid/utils/makeData.js +8 -28
- package/lib/components/EditFullPage/EditFullPage.js +30 -26
- package/lib/components/EditFullPage/index.js +0 -1
- package/lib/components/EditInPlace/EditInPlace.js +36 -89
- package/lib/components/EditInPlace/index.js +0 -1
- package/lib/components/EditSidePanel/EditSidePanel.js +40 -59
- package/lib/components/EditSidePanel/index.js +0 -1
- package/lib/components/EditTearsheet/EditTearsheet.js +39 -61
- package/lib/components/EditTearsheet/EditTearsheetForm.js +24 -39
- package/lib/components/EditTearsheet/index.js +0 -2
- package/lib/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +37 -62
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +30 -26
- package/lib/components/EditTearsheetNarrow/index.js +0 -1
- package/lib/components/EditUpdateCards/EditUpdateCards.js +35 -41
- package/lib/components/EditUpdateCards/index.js +0 -1
- package/lib/components/EmptyStates/EmptyState.js +36 -49
- package/lib/components/EmptyStates/EmptyStateContent.js +21 -27
- package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +31 -39
- package/lib/components/EmptyStates/ErrorEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +31 -39
- package/lib/components/EmptyStates/NoDataEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +31 -39
- package/lib/components/EmptyStates/NoTagsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +31 -39
- package/lib/components/EmptyStates/NotFoundEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +31 -39
- package/lib/components/EmptyStates/NotificationsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +31 -39
- package/lib/components/EmptyStates/UnauthorizedEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/assets/ErrorIllustration.js +10 -13
- package/lib/components/EmptyStates/assets/NoDataIllustration.js +10 -13
- package/lib/components/EmptyStates/assets/NoTagsIllustration.js +10 -13
- package/lib/components/EmptyStates/assets/NotFoundIllustration.js +10 -13
- package/lib/components/EmptyStates/assets/NotificationsIllustration.js +10 -13
- package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +10 -13
- package/lib/components/EmptyStates/index.js +0 -7
- package/lib/components/ExampleComponent/ExampleComponent.js +46 -69
- package/lib/components/ExampleComponent/ExampleDeprecatedComponent.js +7 -9
- package/lib/components/ExampleComponent/index.js +0 -1
- package/lib/components/ExampleComponent/useExample.js +13 -18
- package/lib/components/ExportModal/ExportModal.js +46 -96
- 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/FilterSummary/FilterSummary.js +9 -18
- package/lib/components/FilterSummary/index.js +0 -2
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +19 -27
- package/lib/components/HTTPErrors/HTTPError403/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +19 -27
- package/lib/components/HTTPErrors/HTTPError404/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPErrorContent.js +17 -24
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +19 -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 +87 -155
- package/lib/components/ImportModal/index.js +0 -1
- package/lib/components/MultiAddSelect/MultiAddSelect.js +1 -34
- package/lib/components/MultiAddSelect/index.js +0 -1
- package/lib/components/NotificationsPanel/NotificationsPanel.js +87 -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 +62 -106
- package/lib/components/OptionsTile/index.js +0 -1
- package/lib/components/PageHeader/PageHeader.js +122 -214
- package/lib/components/PageHeader/PageHeaderDemo.data.js +0 -3
- package/lib/components/PageHeader/PageHeaderTitle.js +17 -35
- package/lib/components/PageHeader/PageHeaderUtils.js +23 -59
- package/lib/components/PageHeader/index.js +0 -1
- package/lib/components/ProductiveCard/ProductiveCard.js +12 -38
- package/lib/components/ProductiveCard/index.js +0 -1
- package/lib/components/RemoveModal/RemoveModal.js +31 -66
- package/lib/components/RemoveModal/index.js +0 -1
- package/lib/components/Saving/Saving.js +20 -44
- package/lib/components/Saving/index.js +0 -1
- package/lib/components/SidePanel/SidePanel.js +109 -174
- package/lib/components/SidePanel/constants.js +1 -1
- package/lib/components/SidePanel/index.js +0 -1
- package/lib/components/SidePanel/motion/variants.js +1 -2
- package/lib/components/SingleAddSelect/SingleAddSelect.js +1 -26
- package/lib/components/SingleAddSelect/index.js +0 -1
- package/lib/components/StatusIcon/StatusIcon.js +11 -25
- package/lib/components/StatusIcon/index.js +0 -1
- package/lib/components/TagSet/TagSet.js +61 -110
- package/lib/components/TagSet/TagSetModal.js +23 -46
- package/lib/components/TagSet/TagSetOverflow.js +19 -42
- package/lib/components/TagSet/constants.js +1 -0
- package/lib/components/TagSet/index.js +0 -1
- package/lib/components/Tearsheet/Tearsheet.js +29 -44
- package/lib/components/Tearsheet/TearsheetNarrow.js +25 -35
- package/lib/components/Tearsheet/TearsheetShell.js +82 -113
- package/lib/components/Tearsheet/index.js +0 -2
- package/lib/components/Toolbar/Toolbar.js +18 -41
- package/lib/components/Toolbar/ToolbarButton.js +13 -27
- package/lib/components/Toolbar/ToolbarGroup.js +8 -16
- package/lib/components/Toolbar/index.js +0 -3
- package/lib/components/UserProfileImage/UserProfileImage.js +28 -48
- package/lib/components/UserProfileImage/index.js +0 -1
- package/lib/components/WebTerminal/WebTerminal.js +46 -70
- package/lib/components/WebTerminal/WebTerminalContentWrapper.js +17 -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 +14 -17
- package/lib/components/_Canary/index.js +0 -1
- package/lib/components/index.js +0 -37
- package/lib/global/js/hooks/index.js +0 -11
- package/lib/global/js/hooks/useActiveElement.js +4 -10
- package/lib/global/js/hooks/useClickOutside.js +1 -4
- package/lib/global/js/hooks/useControllableState.js +12 -26
- package/lib/global/js/hooks/useCreateComponentFocus.js +14 -27
- package/lib/global/js/hooks/useCreateComponentStepChange.js +94 -136
- package/lib/global/js/hooks/usePreviousValue.js +0 -3
- package/lib/global/js/hooks/useResetCreateComponent.js +9 -13
- package/lib/global/js/hooks/useResizeObserver.js +15 -23
- 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 +14 -22
- package/lib/global/js/hooks/useWindowScroll.js +5 -20
- package/lib/global/js/package-settings.js +10 -18
- 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 +16 -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/getNumberOfHiddenSteps.js +1 -3
- 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 +21 -58
- package/lib/global/js/utils/rangeWithCallback.js +1 -2
- package/lib/global/js/utils/scrollableAncestor.js +6 -13
- package/lib/global/js/utils/story-helper.js +31 -26
- package/lib/global/js/utils/test-helper.js +39 -87
- package/lib/global/js/utils/unwrap-if-fragment.js +8 -20
- 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 +22 -33
- package/package.json +25 -24
- package/scss/components/AboutModal/_about-modal.scss +3 -18
- package/scss/components/AboutModal/_storybook-styles.scss +10 -3
- package/scss/components/ActionSet/_action-set.scss +15 -5
- package/scss/components/AddSelect/_add-select.scss +21 -30
- package/scss/components/Datagrid/_storybook-styles.scss +1 -1
- package/scss/components/Datagrid/styles/_datagrid.scss +6 -6
- package/scss/components/Datagrid/styles/_useInlineEdit.scss +12 -4
- package/scss/components/EditTearsheet/_edit-tearsheet.scss +6 -4
- package/scss/components/EmptyStates/_empty-state.scss +20 -0
- package/scss/components/PageHeader/_page-header.scss +6 -2
- package/scss/components/SidePanel/_side-panel.scss +1 -4
- package/scss/components/TagSet/_tag-set.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 { pkg } from '../../settings';
|
@@ -39,12 +38,14 @@ import { selectAllCells } from './utils/selectAllCells';
|
|
39
38
|
import { handleEditSubmit } from './utils/handleEditSubmit';
|
40
39
|
import { handleActiveCellInSelectionEnter } from './utils/handleActiveCellInSelectionEnter';
|
41
40
|
import { handleActiveCellInSelectionTab } from './utils/handleActiveCellInSelectionTab';
|
42
|
-
import { handleCellDeletion } from './utils/handleCellDeletion';
|
43
|
-
//
|
41
|
+
import { handleCellDeletion } from './utils/handleCellDeletion';
|
42
|
+
// cspell:words rowcount colcount
|
44
43
|
|
44
|
+
// The block part of our conventional BEM class names (blockClass__E--M).
|
45
45
|
var blockClass = "".concat(pkg.prefix, "--data-spreadsheet");
|
46
|
-
var componentName = 'DataSpreadsheet';
|
46
|
+
var componentName = 'DataSpreadsheet';
|
47
47
|
|
48
|
+
// Default values for props
|
48
49
|
var defaults = {
|
49
50
|
cellSize: 'sm',
|
50
51
|
columns: Object.freeze([]),
|
@@ -55,102 +56,87 @@ var defaults = {
|
|
55
56
|
onSelectionAreaChange: Object.freeze(function () {}),
|
56
57
|
theme: 'light'
|
57
58
|
};
|
59
|
+
|
58
60
|
/**
|
59
61
|
* DataSpreadsheet: used to organize and display large amounts of structured data, separated by columns and rows in a grid-like format.
|
60
62
|
*/
|
61
|
-
|
62
63
|
export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
63
64
|
var _cx;
|
64
|
-
|
65
65
|
var _ref$cellSize = _ref.cellSize,
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
66
|
+
cellSize = _ref$cellSize === void 0 ? defaults.cellSize : _ref$cellSize,
|
67
|
+
className = _ref.className,
|
68
|
+
_ref$columns = _ref.columns,
|
69
|
+
columns = _ref$columns === void 0 ? defaults.columns : _ref$columns,
|
70
|
+
_ref$data = _ref.data,
|
71
|
+
data = _ref$data === void 0 ? defaults.data : _ref$data,
|
72
|
+
_ref$defaultEmptyRowC = _ref.defaultEmptyRowCount,
|
73
|
+
defaultEmptyRowCount = _ref$defaultEmptyRowC === void 0 ? defaults.defaultEmptyRowCount : _ref$defaultEmptyRowC,
|
74
|
+
_ref$onDataUpdate = _ref.onDataUpdate,
|
75
|
+
onDataUpdate = _ref$onDataUpdate === void 0 ? defaults.onDataUpdate : _ref$onDataUpdate,
|
76
|
+
id = _ref.id,
|
77
|
+
_ref$onActiveCellChan = _ref.onActiveCellChange,
|
78
|
+
onActiveCellChange = _ref$onActiveCellChan === void 0 ? defaults.onActiveCellChange : _ref$onActiveCellChan,
|
79
|
+
_ref$onSelectionAreaC = _ref.onSelectionAreaChange,
|
80
|
+
onSelectionAreaChange = _ref$onSelectionAreaC === void 0 ? defaults.onSelectionAreaChange : _ref$onSelectionAreaC,
|
81
|
+
selectAllAriaLabel = _ref.selectAllAriaLabel,
|
82
|
+
spreadsheetAriaLabel = _ref.spreadsheetAriaLabel,
|
83
|
+
theme = _ref.theme,
|
84
|
+
totalVisibleColumns = _ref.totalVisibleColumns,
|
85
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
87
86
|
var multiKeyTrackingRef = useRef();
|
88
87
|
var localRef = useRef();
|
89
88
|
var spreadsheetRef = ref || localRef;
|
90
89
|
var focusedElement = useActiveElement();
|
91
|
-
|
92
90
|
var _useState = useState(false),
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
91
|
+
_useState2 = _slicedToArray(_useState, 2),
|
92
|
+
containerHasFocus = _useState2[0],
|
93
|
+
setContainerHasFocus = _useState2[1];
|
97
94
|
var _useState3 = useState(null),
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
95
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
96
|
+
activeCellCoordinates = _useState4[0],
|
97
|
+
setActiveCellCoordinates = _useState4[1];
|
102
98
|
var _useState5 = useState([]),
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
99
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
100
|
+
selectionAreas = _useState6[0],
|
101
|
+
setSelectionAreas = _useState6[1];
|
107
102
|
var _useState7 = useState([]),
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
103
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
104
|
+
selectionAreaData = _useState8[0],
|
105
|
+
setSelectionAreaData = _useState8[1];
|
112
106
|
var _useState9 = useState(false),
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
107
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
108
|
+
clickAndHoldActive = _useState10[0],
|
109
|
+
setClickAndHoldActive = _useState10[1];
|
117
110
|
var _useState11 = useState(''),
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
111
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
112
|
+
currentMatcher = _useState12[0],
|
113
|
+
setCurrentMatcher = _useState12[1];
|
122
114
|
var _useState13 = useState(false),
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
115
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
116
|
+
isEditing = _useState14[0],
|
117
|
+
setIsEditing = _useState14[1];
|
127
118
|
var _useState15 = useState(''),
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
119
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
120
|
+
cellEditorValue = _useState16[0],
|
121
|
+
setCellEditorValue = _useState16[1];
|
132
122
|
var _useState17 = useState(false),
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
123
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
124
|
+
headerCellHoldActive = _useState18[0],
|
125
|
+
setHeaderCellHoldActive = _useState18[1];
|
137
126
|
var _useState19 = useState(false),
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
127
|
+
_useState20 = _slicedToArray(_useState19, 2),
|
128
|
+
activeCellInsideSelectionArea = _useState20[0],
|
129
|
+
setActiveCellInsideSelectionArea = _useState20[1];
|
142
130
|
var previousState = usePreviousValue({
|
143
131
|
activeCellCoordinates: activeCellCoordinates,
|
144
132
|
isEditing: isEditing
|
145
133
|
});
|
146
134
|
var cellSizeValue = getCellSize(cellSize);
|
147
135
|
var cellEditorRef = useRef();
|
148
|
-
|
149
136
|
var _useState21 = useState(),
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
137
|
+
_useState22 = _slicedToArray(_useState21, 2),
|
138
|
+
activeCellContent = _useState22[0],
|
139
|
+
setActiveCellContent = _useState22[1];
|
154
140
|
var activeCellRef = useRef();
|
155
141
|
var cellEditorRulerRef = useRef();
|
156
142
|
var defaultColumn = useMemo(function () {
|
@@ -160,46 +146,43 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
160
146
|
rowHeight: cellSizeValue
|
161
147
|
};
|
162
148
|
}, [cellSizeValue]);
|
163
|
-
|
164
149
|
var _useMultipleKeyTracki = useMultipleKeyTracking({
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
150
|
+
ref: multiKeyTrackingRef,
|
151
|
+
containerHasFocus: containerHasFocus,
|
152
|
+
isEditing: isEditing
|
153
|
+
}),
|
154
|
+
keysPressedList = _useMultipleKeyTracki.keysPressedList,
|
155
|
+
usingMac = _useMultipleKeyTracki.usingMac;
|
172
156
|
var scrollBarSize = useMemo(function () {
|
173
157
|
return getScrollbarWidth();
|
174
158
|
}, []);
|
175
|
-
|
176
159
|
var _useTable = useTable({
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
160
|
+
columns: columns,
|
161
|
+
data: data,
|
162
|
+
defaultColumn: defaultColumn
|
163
|
+
}, useBlockLayout, useColumnOrder),
|
164
|
+
getTableProps = _useTable.getTableProps,
|
165
|
+
getTableBodyProps = _useTable.getTableBodyProps,
|
166
|
+
headerGroups = _useTable.headerGroups,
|
167
|
+
rows = _useTable.rows,
|
168
|
+
totalColumnsWidth = _useTable.totalColumnsWidth,
|
169
|
+
prepareRow = _useTable.prepareRow,
|
170
|
+
setColumnOrder = _useTable.setColumnOrder,
|
171
|
+
visibleColumns = _useTable.visibleColumns;
|
172
|
+
|
173
|
+
// Update the spreadsheet data after editing a cell
|
191
174
|
var updateData = useCallback(function (rowIndex, columnId, newValue) {
|
192
175
|
onDataUpdate(function (prev) {
|
193
176
|
return prev.map(function (row, index) {
|
194
177
|
if (index === rowIndex) {
|
195
178
|
return _objectSpread(_objectSpread({}, prev[rowIndex]), {}, _defineProperty({}, columnId, cellEditorValue || newValue));
|
196
179
|
}
|
197
|
-
|
198
180
|
return row;
|
199
181
|
});
|
200
182
|
});
|
201
|
-
}, [cellEditorValue, onDataUpdate]);
|
183
|
+
}, [cellEditorValue, onDataUpdate]);
|
202
184
|
|
185
|
+
// Removes the active cell element
|
203
186
|
var removeActiveCell = useCallback(function () {
|
204
187
|
var activeCellHighlight = spreadsheetRef.current.querySelector(".".concat(blockClass, "__active-cell--highlight"));
|
205
188
|
activeCellHighlight.style.display = 'none';
|
@@ -208,25 +191,23 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
208
191
|
setCellEditorValue('');
|
209
192
|
setIsEditing(false);
|
210
193
|
cellEditorRef.current.style.display = 'none';
|
211
|
-
}, []);
|
212
|
-
// happen if you click on another cell while isEditing is true
|
194
|
+
}, []);
|
213
195
|
|
196
|
+
// Remove cell editor if the active cell coordinates change and save with new cell data, this will
|
197
|
+
// happen if you click on another cell while isEditing is true
|
214
198
|
useEffect(function () {
|
215
199
|
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
216
|
-
|
217
200
|
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) {
|
218
201
|
var cellProps = rows[prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row].cells[prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.column];
|
219
202
|
removeCellEditor();
|
220
203
|
updateData(prevCoords === null || prevCoords === void 0 ? void 0 : prevCoords.row, cellProps.column.id);
|
221
204
|
cellEditorRulerRef.current.textContent = '';
|
222
205
|
}
|
223
|
-
|
224
206
|
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)) {
|
225
207
|
if (activeCellCoordinates && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
226
208
|
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;
|
227
209
|
setActiveCellContent(activeCellFullData.render('Cell'));
|
228
210
|
}
|
229
|
-
|
230
211
|
if (activeCellCoordinates && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
231
212
|
setActiveCellContent(null);
|
232
213
|
}
|
@@ -234,13 +215,13 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
234
215
|
}, [activeCellCoordinates, previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates, updateData, rows, isEditing, removeCellEditor, activeCellContent]);
|
235
216
|
var createActiveCell = useCallback(function (_ref2) {
|
236
217
|
var placementElement = _ref2.placementElement,
|
237
|
-
|
238
|
-
|
239
|
-
|
218
|
+
coords = _ref2.coords,
|
219
|
+
_ref2$addToHeader = _ref2.addToHeader,
|
220
|
+
addToHeader = _ref2$addToHeader === void 0 ? false : _ref2$addToHeader;
|
240
221
|
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;
|
241
222
|
var activeCellValue = activeCellFullData ? Object.values(activeCellFullData.row.values)[coords === null || coords === void 0 ? void 0 : coords.column] : null;
|
242
|
-
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
243
|
-
|
223
|
+
var prevCoords = previousState === null || previousState === void 0 ? void 0 : previousState.activeCellCoordinates;
|
224
|
+
// Only create an active cell if the activeCellCoordinates have changed
|
244
225
|
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)) {
|
245
226
|
createActiveCellFn({
|
246
227
|
placementElement: placementElement,
|
@@ -280,30 +261,26 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
280
261
|
// If activeCellCoordinates is null then we need to set an initial value
|
281
262
|
// which will place the activeCell on the select all cell/button
|
282
263
|
setActiveCellInsideSelectionArea(false);
|
283
|
-
|
284
264
|
if (!activeCellCoordinates) {
|
285
265
|
setActiveCellCoordinates({
|
286
266
|
column: 'header',
|
287
267
|
row: 'header'
|
288
268
|
});
|
289
269
|
}
|
290
|
-
|
291
270
|
return;
|
292
271
|
}, [activeCellCoordinates]);
|
293
272
|
var updateActiveCellCoordinates = useCallback(function (_ref3) {
|
294
273
|
var _ref3$coords = _ref3.coords,
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
274
|
+
coords = _ref3$coords === void 0 ? _objectSpread({}, activeCellCoordinates) : _ref3$coords,
|
275
|
+
updatedValue = _ref3.updatedValue,
|
276
|
+
_ref3$optOutOfSelecti = _ref3.optOutOfSelectionAreaUpdate,
|
277
|
+
optOutOfSelectionAreaUpdate = _ref3$optOutOfSelecti === void 0 ? false : _ref3$optOutOfSelecti;
|
300
278
|
var newActiveCell = _objectSpread(_objectSpread({}, coords), updatedValue);
|
301
|
-
|
302
|
-
|
279
|
+
setActiveCellCoordinates(newActiveCell);
|
280
|
+
// Only run if the active cell is _not_ a header cell. This will add a point1 object
|
303
281
|
// to selectionAreas every time the active cell changes, allowing us to create cell
|
304
282
|
// selections using keyboard. Opting out of the selection area updates here means
|
305
283
|
// that the active cell is being moved within a selection area
|
306
|
-
|
307
284
|
if (newActiveCell.row !== 'header' && newActiveCell.column !== 'header' && !optOutOfSelectionAreaUpdate) {
|
308
285
|
var tempMatcher = uuidv4();
|
309
286
|
setSelectionAreas([{
|
@@ -315,9 +292,7 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
315
292
|
}, [activeCellCoordinates]);
|
316
293
|
var handleHomeEndKey = useCallback(function (_ref4) {
|
317
294
|
var type = _ref4.type;
|
318
|
-
|
319
295
|
var coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
320
|
-
|
321
296
|
updateActiveCellCoordinates({
|
322
297
|
coords: coordinatesClone,
|
323
298
|
updatedValue: {
|
@@ -330,26 +305,21 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
330
305
|
}, [activeCellCoordinates, updateActiveCellCoordinates, spreadsheetRef, columns.length]);
|
331
306
|
var handleKeyPress = useCallback(function (event) {
|
332
307
|
var key = event.key;
|
333
|
-
|
334
308
|
if (isEditing) {
|
335
309
|
return;
|
336
|
-
}
|
337
|
-
|
338
|
-
|
310
|
+
}
|
311
|
+
// Command keys need to be returned as there is default browser behavior with these keys
|
339
312
|
if (key === 'Meta' || key === 'Control') {
|
340
313
|
return;
|
341
|
-
}
|
342
|
-
|
343
|
-
|
314
|
+
}
|
315
|
+
// Prevent arrow keys, home key, and end key from scrolling the page when the data spreadsheet container has focus
|
344
316
|
if (['End', 'Home', 'ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].indexOf(key) > -1 && !isEditing) {
|
345
317
|
event.preventDefault();
|
346
318
|
}
|
347
|
-
|
348
319
|
if (['Tab'].indexOf(key) > -1 && isEditing) {
|
349
320
|
return;
|
350
|
-
}
|
351
|
-
|
352
|
-
|
321
|
+
}
|
322
|
+
// Clear out all cell selection areas if user uses any arrow key, except if the shift key is being held
|
353
323
|
if (['ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].indexOf(key) > -1) {
|
354
324
|
if (selectionAreas !== null && selectionAreas !== void 0 && selectionAreas.length && keysPressedList.length < 2 && !includesShift(keysPressedList)) {
|
355
325
|
setSelectionAreas([]);
|
@@ -359,7 +329,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
359
329
|
});
|
360
330
|
}
|
361
331
|
}
|
362
|
-
|
363
332
|
if (!isEditing && (keysPressedList === null || keysPressedList === void 0 ? void 0 : keysPressedList.length) > 1) {
|
364
333
|
handleMultipleKeys({
|
365
334
|
activeCellCoordinates: activeCellCoordinates,
|
@@ -378,7 +347,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
378
347
|
usingMac: usingMac
|
379
348
|
});
|
380
349
|
}
|
381
|
-
|
382
350
|
var deleteParams = {
|
383
351
|
selectionAreas: selectionAreas,
|
384
352
|
currentMatcher: currentMatcher,
|
@@ -386,9 +354,9 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
386
354
|
setActiveCellContent: setActiveCellContent,
|
387
355
|
updateData: updateData,
|
388
356
|
activeCellCoordinates: activeCellCoordinates
|
389
|
-
};
|
357
|
+
};
|
358
|
+
// Allow arrow key navigation if there are less than two activeKeys OR
|
390
359
|
// if one of the activeCellCoordinates is in a header position
|
391
|
-
|
392
360
|
if (keysPressedList.length < 2 && !includesShift(keysPressedList) || activeCellCoordinates.row === 'header' || activeCellCoordinates.column === 'header') {
|
393
361
|
switch (key) {
|
394
362
|
// Backspace
|
@@ -398,14 +366,12 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
398
366
|
break;
|
399
367
|
}
|
400
368
|
// Delete
|
401
|
-
|
402
369
|
case 'Delete':
|
403
370
|
{
|
404
371
|
handleCellDeletion(deleteParams);
|
405
372
|
break;
|
406
373
|
}
|
407
374
|
// Enter
|
408
|
-
|
409
375
|
case 'Enter':
|
410
376
|
{
|
411
377
|
handleActiveCellInSelectionEnter({
|
@@ -418,32 +384,27 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
418
384
|
break;
|
419
385
|
}
|
420
386
|
// HOME
|
421
|
-
|
422
387
|
case 'Home':
|
423
388
|
{
|
424
389
|
if (includesResourceKey(keysPressedList, usingMac)) {
|
425
390
|
return;
|
426
391
|
}
|
427
|
-
|
428
392
|
handleHomeEndKey({
|
429
393
|
type: 'home'
|
430
394
|
});
|
431
395
|
break;
|
432
396
|
}
|
433
|
-
|
434
397
|
case 'End':
|
435
398
|
{
|
436
399
|
if (includesResourceKey(keysPressedList, usingMac)) {
|
437
400
|
return;
|
438
401
|
}
|
439
|
-
|
440
402
|
handleHomeEndKey({
|
441
403
|
type: 'end'
|
442
404
|
});
|
443
405
|
break;
|
444
406
|
}
|
445
407
|
// Tab
|
446
|
-
|
447
408
|
case 'Tab':
|
448
409
|
{
|
449
410
|
if (activeCellInsideSelectionArea) {
|
@@ -456,7 +417,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
456
417
|
updateActiveCellCoordinates: updateActiveCellCoordinates
|
457
418
|
});
|
458
419
|
}
|
459
|
-
|
460
420
|
setSelectionAreas([]);
|
461
421
|
removeActiveCell();
|
462
422
|
removeCellEditor();
|
@@ -465,17 +425,13 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
465
425
|
break;
|
466
426
|
}
|
467
427
|
// Left
|
468
|
-
|
469
428
|
case 'ArrowLeft':
|
470
429
|
{
|
471
430
|
handleInitialArrowPress();
|
472
|
-
|
473
431
|
var coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
474
|
-
|
475
432
|
if (coordinatesClone.column === 'header') {
|
476
433
|
return;
|
477
434
|
}
|
478
|
-
|
479
435
|
if (typeof coordinatesClone.column === 'number') {
|
480
436
|
if (coordinatesClone.column === 0) {
|
481
437
|
updateActiveCellCoordinates({
|
@@ -486,7 +442,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
486
442
|
});
|
487
443
|
return;
|
488
444
|
}
|
489
|
-
|
490
445
|
updateActiveCellCoordinates({
|
491
446
|
coords: coordinatesClone,
|
492
447
|
updatedValue: {
|
@@ -494,21 +449,16 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
494
449
|
}
|
495
450
|
});
|
496
451
|
}
|
497
|
-
|
498
452
|
break;
|
499
453
|
}
|
500
454
|
// Up
|
501
|
-
|
502
455
|
case 'ArrowUp':
|
503
456
|
{
|
504
457
|
handleInitialArrowPress();
|
505
|
-
|
506
458
|
var _coordinatesClone = _objectSpread({}, activeCellCoordinates);
|
507
|
-
|
508
459
|
if (_coordinatesClone.row === 'header') {
|
509
460
|
return;
|
510
461
|
}
|
511
|
-
|
512
462
|
if (typeof _coordinatesClone.row === 'number') {
|
513
463
|
// set row back to header if we are at index 0
|
514
464
|
if (_coordinatesClone.row === 0) {
|
@@ -519,9 +469,8 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
519
469
|
}
|
520
470
|
});
|
521
471
|
return;
|
522
|
-
}
|
523
|
-
|
524
|
-
|
472
|
+
}
|
473
|
+
// if we are at any other index than 0, subtract 1 from current row index
|
525
474
|
updateActiveCellCoordinates({
|
526
475
|
coords: _coordinatesClone,
|
527
476
|
updatedValue: {
|
@@ -529,17 +478,13 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
529
478
|
}
|
530
479
|
});
|
531
480
|
}
|
532
|
-
|
533
481
|
break;
|
534
482
|
}
|
535
483
|
// Right
|
536
|
-
|
537
484
|
case 'ArrowRight':
|
538
485
|
{
|
539
486
|
handleInitialArrowPress();
|
540
|
-
|
541
487
|
var _coordinatesClone2 = _objectSpread({}, activeCellCoordinates);
|
542
|
-
|
543
488
|
if (_coordinatesClone2.column === 'header') {
|
544
489
|
updateActiveCellCoordinates({
|
545
490
|
coords: _coordinatesClone2,
|
@@ -548,14 +493,12 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
548
493
|
}
|
549
494
|
});
|
550
495
|
}
|
551
|
-
|
552
496
|
if (typeof _coordinatesClone2.column === 'number') {
|
553
497
|
// Prevent active cell coordinates from updating if the active
|
554
498
|
// cell is in the last column, ie we can't go any further to the right
|
555
499
|
if (columns.length - 1 === _coordinatesClone2.column) {
|
556
500
|
return;
|
557
501
|
}
|
558
|
-
|
559
502
|
updateActiveCellCoordinates({
|
560
503
|
coords: _coordinatesClone2,
|
561
504
|
updatedValue: {
|
@@ -563,17 +506,13 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
563
506
|
}
|
564
507
|
});
|
565
508
|
}
|
566
|
-
|
567
509
|
break;
|
568
510
|
}
|
569
511
|
// Down
|
570
|
-
|
571
512
|
case 'ArrowDown':
|
572
513
|
{
|
573
514
|
handleInitialArrowPress();
|
574
|
-
|
575
515
|
var _coordinatesClone3 = _objectSpread({}, activeCellCoordinates);
|
576
|
-
|
577
516
|
if (_coordinatesClone3.row === 'header') {
|
578
517
|
updateActiveCellCoordinates({
|
579
518
|
coords: _coordinatesClone3,
|
@@ -582,7 +521,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
582
521
|
}
|
583
522
|
});
|
584
523
|
}
|
585
|
-
|
586
524
|
if (typeof _coordinatesClone3.row === 'number') {
|
587
525
|
// Prevent active cell coordinates from updating if the active
|
588
526
|
// cell is in the last row, ie we can't go any further down since
|
@@ -590,7 +528,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
590
528
|
if (rows.length - 1 === _coordinatesClone3.row) {
|
591
529
|
return;
|
592
530
|
}
|
593
|
-
|
594
531
|
updateActiveCellCoordinates({
|
595
532
|
coords: _coordinatesClone3,
|
596
533
|
updatedValue: {
|
@@ -598,13 +535,11 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
598
535
|
}
|
599
536
|
});
|
600
537
|
}
|
601
|
-
|
602
538
|
break;
|
603
539
|
}
|
604
540
|
}
|
605
541
|
}
|
606
542
|
}, [activeCellInsideSelectionArea, updateActiveCellCoordinates, handleInitialArrowPress, activeCellCoordinates, removeActiveCell, columns, rows, spreadsheetRef, currentMatcher, isEditing, removeCellEditor, selectionAreas, handleHomeEndKey, keysPressedList, usingMac, updateData]);
|
607
|
-
|
608
543
|
var startEditMode = function startEditMode() {
|
609
544
|
setIsEditing(true);
|
610
545
|
setClickAndHoldActive(false);
|
@@ -613,40 +548,36 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
613
548
|
setCellEditorValue(activeCellValue);
|
614
549
|
cellEditorRulerRef.current.textContent = activeCellValue;
|
615
550
|
cellEditorRef.current.style.width = activeCellRef === null || activeCellRef === void 0 ? void 0 : activeCellRef.current.style.width;
|
616
|
-
};
|
617
|
-
// this is not done for us by default in Safari
|
618
|
-
|
551
|
+
};
|
619
552
|
|
553
|
+
// Sets the initial placement of the cell editor cursor at the end of the text area
|
554
|
+
// this is not done for us by default in Safari
|
620
555
|
useEffect(function () {
|
621
556
|
if (isEditing && !(previousState !== null && previousState !== void 0 && previousState.isEditing)) {
|
622
557
|
cellEditorRef.current.setSelectionRange(cellEditorRulerRef.current.textContent.length, cellEditorRulerRef.current.textContent.length);
|
623
558
|
cellEditorRef.current.focus();
|
624
559
|
}
|
625
560
|
}, [isEditing, previousState === null || previousState === void 0 ? void 0 : previousState.isEditing]);
|
626
|
-
|
627
561
|
var handleActiveCellClick = function handleActiveCellClick() {
|
628
562
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
629
563
|
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;
|
630
|
-
|
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
|
return;
|
633
566
|
}
|
634
|
-
|
635
567
|
handleRowColumnHeaderClick({
|
636
568
|
isKeyboard: false,
|
637
569
|
index: indexValue
|
638
570
|
});
|
639
571
|
}
|
640
|
-
|
641
572
|
return;
|
642
|
-
};
|
643
|
-
|
573
|
+
};
|
644
574
|
|
575
|
+
// Mouse up on active cell
|
645
576
|
var handleActiveCellMouseUp = function handleActiveCellMouseUp() {
|
646
577
|
setClickAndHoldActive(false);
|
647
|
-
};
|
648
|
-
|
578
|
+
};
|
649
579
|
|
580
|
+
// Mouse down on active cell
|
650
581
|
var handleActiveCellMouseDown = function handleActiveCellMouseDown() {
|
651
582
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
652
583
|
var tempMatcher = uuidv4();
|
@@ -662,19 +593,16 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
662
593
|
setSelectionAreaData([]);
|
663
594
|
setActiveCellInsideSelectionArea(false);
|
664
595
|
}
|
665
|
-
|
666
596
|
return;
|
667
|
-
};
|
668
|
-
|
597
|
+
};
|
669
598
|
|
599
|
+
// Go into edit mode if 'Enter' key is pressed on activeCellRef
|
670
600
|
var handleActiveCellKeyDown = function handleActiveCellKeyDown(event) {
|
671
601
|
var key = event.key;
|
672
|
-
|
673
602
|
if (key === 'Enter' && !activeCellInsideSelectionArea) {
|
674
603
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header') {
|
675
604
|
startEditMode();
|
676
605
|
}
|
677
|
-
|
678
606
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' || (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header') {
|
679
607
|
handleRowColumnHeaderClick({
|
680
608
|
isKeyboard: true
|
@@ -682,11 +610,10 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
682
610
|
}
|
683
611
|
}
|
684
612
|
};
|
685
|
-
|
686
613
|
var handleRowColumnHeaderClick = function handleRowColumnHeaderClick(_ref5) {
|
687
614
|
var isKeyboard = _ref5.isKeyboard,
|
688
|
-
|
689
|
-
|
615
|
+
_ref5$index = _ref5.index,
|
616
|
+
index = _ref5$index === void 0 ? null : _ref5$index;
|
690
617
|
var handleHeaderCellProps = {
|
691
618
|
activeCellCoordinates: activeCellCoordinates,
|
692
619
|
rows: rows,
|
@@ -699,21 +626,19 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
699
626
|
setSelectionAreaData: setSelectionAreaData,
|
700
627
|
index: index,
|
701
628
|
currentMatcher: currentMatcher
|
702
|
-
};
|
703
|
-
|
629
|
+
};
|
630
|
+
// Select an entire column
|
704
631
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) !== 'header') {
|
705
632
|
handleHeaderCellSelection(_objectSpread({
|
706
633
|
type: 'column'
|
707
634
|
}, handleHeaderCellProps));
|
708
|
-
}
|
709
|
-
|
710
|
-
|
635
|
+
}
|
636
|
+
// Select an entire row
|
711
637
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) !== 'header') {
|
712
638
|
handleHeaderCellSelection(_objectSpread({
|
713
639
|
type: 'row'
|
714
640
|
}, handleHeaderCellProps));
|
715
641
|
}
|
716
|
-
|
717
642
|
if ((activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.column) === 'header' && (activeCellCoordinates === null || activeCellCoordinates === void 0 ? void 0 : activeCellCoordinates.row) === 'header') {
|
718
643
|
selectAllCells({
|
719
644
|
ref: spreadsheetRef,
|
@@ -725,13 +650,12 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
725
650
|
updateActiveCellCoordinates: updateActiveCellCoordinates
|
726
651
|
});
|
727
652
|
}
|
728
|
-
};
|
729
|
-
|
653
|
+
};
|
730
654
|
|
655
|
+
// Go into edit mode if double click is detected on activeCellRef
|
731
656
|
var handleActiveCellDoubleClick = function handleActiveCellDoubleClick() {
|
732
657
|
startEditMode();
|
733
658
|
};
|
734
|
-
|
735
659
|
useSpreadsheetEdit({
|
736
660
|
isEditing: isEditing,
|
737
661
|
rows: rows,
|
@@ -745,27 +669,25 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
745
669
|
});
|
746
670
|
var handleActiveCellMouseEnter = useCallback(function () {
|
747
671
|
handleActiveCellMouseEnterCallback(selectionAreas, clickAndHoldActive);
|
748
|
-
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
672
|
+
}, [clickAndHoldActive, selectionAreas, handleActiveCellMouseEnterCallback]);
|
673
|
+
|
674
|
+
// Only update if there are cell selection areas
|
749
675
|
// Find point object that matches currentMatcher and remove the second point
|
750
676
|
// because hovering over the active cell while clicking and holding should
|
751
677
|
// remove the previously existing selection area
|
752
|
-
|
753
678
|
var handleActiveCellMouseEnterCallback = useCallback(function (areas, clickHold) {
|
754
679
|
if (!currentMatcher) {
|
755
680
|
return;
|
756
681
|
}
|
757
|
-
|
758
682
|
if (areas && areas.length && clickHold && currentMatcher) {
|
759
683
|
setSelectionAreas(function (prev) {
|
760
684
|
var selectionAreaClone = deepCloneObject(prev);
|
761
685
|
var indexOfItemToUpdate = selectionAreaClone.findIndex(function (item) {
|
762
686
|
return item.matcher === currentMatcher;
|
763
687
|
});
|
764
|
-
|
765
688
|
if (indexOfItemToUpdate === -1) {
|
766
689
|
return prev;
|
767
690
|
}
|
768
|
-
|
769
691
|
if (_typeof(selectionAreaClone[indexOfItemToUpdate].point2) === 'object' && selectionAreaClone[indexOfItemToUpdate].areaCreated) {
|
770
692
|
selectionAreaClone[indexOfItemToUpdate].point2 = selectionAreaClone[indexOfItemToUpdate].point1;
|
771
693
|
selectionAreaClone[indexOfItemToUpdate].areaCreated = false;
|
@@ -776,7 +698,6 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
776
698
|
});
|
777
699
|
return selectionAreaClone;
|
778
700
|
}
|
779
|
-
|
780
701
|
return prev;
|
781
702
|
});
|
782
703
|
}
|
@@ -886,26 +807,27 @@ export var DataSpreadsheet = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
886
807
|
ref: cellEditorRulerRef,
|
887
808
|
className: "".concat(blockClass, "__cell-editor-ruler")
|
888
809
|
})));
|
889
|
-
});
|
810
|
+
});
|
811
|
+
|
812
|
+
// Return a placeholder if not released and not enabled by feature flag
|
813
|
+
DataSpreadsheet = pkg.checkComponentEnabled(DataSpreadsheet, componentName);
|
890
814
|
|
891
|
-
|
815
|
+
// The display name of the component, used by React. Note that displayName
|
892
816
|
// is used in preference to relying on function.name.
|
817
|
+
DataSpreadsheet.displayName = componentName;
|
893
818
|
|
894
|
-
|
819
|
+
// The types and DocGen commentary for the component props,
|
895
820
|
// in alphabetical order (for consistency).
|
896
821
|
// See https://www.npmjs.com/package/prop-types#usage.
|
897
|
-
|
898
822
|
DataSpreadsheet.propTypes = {
|
899
823
|
/**
|
900
824
|
* Specifies the cell height
|
901
825
|
*/
|
902
826
|
cellSize: PropTypes.oneOf(['xs', 'sm', 'md', 'lg']),
|
903
|
-
|
904
827
|
/**
|
905
828
|
* Provide an optional class to be applied to the containing node.
|
906
829
|
*/
|
907
830
|
className: PropTypes.string,
|
908
|
-
|
909
831
|
/**
|
910
832
|
* The data that will build the column headers
|
911
833
|
*/
|
@@ -913,59 +835,49 @@ DataSpreadsheet.propTypes = {
|
|
913
835
|
Header: PropTypes.string,
|
914
836
|
accessor: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),
|
915
837
|
Cell: PropTypes.func // optional cell formatter
|
916
|
-
|
917
838
|
})),
|
918
839
|
|
919
840
|
/**
|
920
841
|
* The spreadsheet data that will be rendered in the body of the spreadsheet component
|
921
842
|
*/
|
922
843
|
data: PropTypes.arrayOf(PropTypes.shape),
|
923
|
-
|
924
844
|
/**
|
925
845
|
* Sets the number of empty rows to be created when there is no data provided
|
926
846
|
*/
|
927
847
|
defaultEmptyRowCount: PropTypes.number,
|
928
|
-
|
929
848
|
/**
|
930
849
|
* The spreadsheet id
|
931
850
|
*/
|
932
851
|
id: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
933
|
-
|
934
852
|
/**
|
935
853
|
* The event handler that is called when the active cell changes
|
936
854
|
*/
|
937
855
|
onActiveCellChange: PropTypes.func,
|
938
|
-
|
939
856
|
/**
|
940
857
|
* The setter fn for the data prop
|
941
858
|
*/
|
942
859
|
onDataUpdate: PropTypes.func,
|
943
|
-
|
944
860
|
/**
|
945
861
|
* The event handler that is called when the selection area values change
|
946
862
|
*/
|
947
863
|
onSelectionAreaChange: PropTypes.func,
|
948
|
-
|
949
864
|
/**
|
950
865
|
* The aria label applied to the Select all button
|
951
866
|
*/
|
952
867
|
selectAllAriaLabel: PropTypes.string.isRequired,
|
953
|
-
|
954
868
|
/**
|
955
869
|
* The aria label applied to the Data spreadsheet component
|
956
870
|
*/
|
957
871
|
spreadsheetAriaLabel: PropTypes.string.isRequired,
|
958
|
-
|
959
872
|
/**
|
960
873
|
* The theme the DataSpreadsheet should use (only used to render active cell/selection area colors on dark theme)
|
961
874
|
*/
|
962
875
|
theme: PropTypes.oneOf(['light', 'dark']),
|
963
|
-
|
964
876
|
/**
|
965
877
|
* The total number of columns to be initially visible, additional columns will be rendered and
|
966
878
|
* visible via horizontal scrollbar
|
967
879
|
*/
|
968
880
|
totalVisibleColumns: PropTypes.number
|
969
|
-
/* TODO: add types and DocGen for all props. */
|
970
881
|
|
882
|
+
/* TODO: add types and DocGen for all props. */
|
971
883
|
};
|