@carbon/ibm-products 1.34.1 → 1.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/index-full-carbon.css +46 -13
- package/css/index-full-carbon.css.map +1 -1
- package/css/index-full-carbon.min.css +2 -8
- package/css/index-full-carbon.min.css.map +1 -1
- package/css/index-without-carbon-released-only.css +2 -9
- package/css/index-without-carbon-released-only.css.map +1 -1
- package/css/index-without-carbon-released-only.min.css +1 -7
- package/css/index-without-carbon-released-only.min.css.map +1 -1
- package/css/index-without-carbon.css +46 -13
- package/css/index-without-carbon.css.map +1 -1
- package/css/index-without-carbon.min.css +2 -8
- package/css/index-without-carbon.min.css.map +1 -1
- package/css/index.css +46 -13
- package/css/index.css.map +1 -1
- package/css/index.min.css +2 -8
- package/css/index.min.css.map +1 -1
- package/es/components/APIKeyModal/APIKeyDownloader.js +8 -18
- package/es/components/APIKeyModal/APIKeyModal.js +58 -140
- package/es/components/APIKeyModal/index.js +1 -0
- package/es/components/AboutModal/AboutModal.js +40 -45
- package/es/components/AboutModal/index.js +1 -0
- package/es/components/ActionBar/ActionBar.js +69 -82
- package/es/components/ActionBar/ActionBarItem.js +19 -20
- package/es/components/ActionBar/ActionBarOverflowItems.js +10 -10
- package/es/components/ActionBar/index.js +1 -0
- package/es/components/ActionSet/ActionSet.js +30 -39
- package/es/components/ActionSet/actions.js +1 -2
- package/es/components/ActionSet/index.js +1 -0
- package/es/components/AddSelect/AddSelect.js +3 -4
- package/es/components/AddSelect/AddSelectBody.js +67 -87
- package/es/components/AddSelect/AddSelectBreadcrumbs.js +3 -4
- package/es/components/AddSelect/AddSelectColumn.js +27 -45
- package/es/components/AddSelect/AddSelectFilter.js +21 -34
- package/es/components/AddSelect/AddSelectList.js +19 -33
- package/es/components/AddSelect/AddSelectMetaPanel.js +3 -5
- package/es/components/AddSelect/AddSelectSidebar.js +14 -21
- package/es/components/AddSelect/AddSelectSort.js +6 -5
- package/es/components/AddSelect/add-select-utils.js +2 -23
- package/es/components/AddSelect/hooks/useItemSort.js +6 -8
- package/es/components/AddSelect/hooks/useParentSelect.js +3 -6
- package/es/components/AddSelect/hooks/usePath.js +6 -20
- package/es/components/AddSelect/index.js +1 -0
- package/es/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +62 -88
- package/es/components/BreadcrumbWithOverflow/index.js +2 -0
- package/es/components/ButtonMenu/ButtonMenu.js +32 -30
- package/es/components/ButtonMenu/ButtonMenuItem.js +10 -6
- package/es/components/ButtonMenu/index.js +1 -0
- package/es/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +34 -52
- package/es/components/ButtonSetWithOverflow/index.js +1 -0
- package/es/components/Card/Card.js +53 -71
- package/es/components/Card/CardFooter.js +19 -18
- package/es/components/Card/CardHeader.js +13 -13
- package/es/components/Card/index.js +1 -0
- package/es/components/Cascade/Cascade.js +5 -14
- package/es/components/ComboButton/ComboButton.js +24 -35
- package/es/components/ComboButton/ComboButtonItem/index.js +4 -8
- package/es/components/ComboButton/index.js +1 -0
- package/es/components/CreateFullPage/CreateFullPage.js +64 -85
- package/es/components/CreateFullPage/CreateFullPageStep.js +28 -40
- package/es/components/CreateFullPage/index.js +1 -0
- package/es/components/CreateInfluencer/CreateInfluencer.js +14 -15
- package/es/components/CreateInfluencer/index.js +1 -0
- package/es/components/CreateModal/CreateModal.js +19 -31
- package/es/components/CreateModal/index.js +2 -0
- package/es/components/CreateSidePanel/CreateSidePanel.js +24 -37
- package/es/components/CreateSidePanel/index.js +1 -0
- package/es/components/CreateTearsheet/CreateTearsheet.js +65 -88
- package/es/components/CreateTearsheet/CreateTearsheetDivider.js +4 -4
- package/es/components/CreateTearsheet/CreateTearsheetStep.js +31 -42
- package/es/components/CreateTearsheet/index.js +1 -0
- package/es/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +46 -66
- package/es/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +41 -57
- package/es/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +30 -39
- package/es/components/CreateTearsheetNarrow/index.js +1 -0
- package/es/components/DataSpreadsheet/DataSpreadsheet.js +136 -225
- package/es/components/DataSpreadsheet/DataSpreadsheetBody.js +62 -113
- package/es/components/DataSpreadsheet/DataSpreadsheetHeader.js +25 -56
- package/es/components/DataSpreadsheet/hooks/index.js +1 -0
- package/es/components/DataSpreadsheet/hooks/useMoveActiveCell.js +6 -5
- package/es/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +23 -44
- package/es/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +5 -5
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +18 -30
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +10 -14
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +34 -54
- package/es/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +10 -10
- package/es/components/DataSpreadsheet/index.js +1 -0
- package/es/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +4 -8
- package/es/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +3 -4
- package/es/components/DataSpreadsheet/utils/createActiveCellFn.js +15 -19
- package/es/components/DataSpreadsheet/utils/createCellSelectionArea.js +15 -17
- package/es/components/DataSpreadsheet/utils/generateData.js +4 -13
- package/es/components/DataSpreadsheet/utils/getCellSize.js +1 -6
- package/es/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +1 -0
- package/es/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +7 -9
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +20 -34
- package/es/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +20 -30
- package/es/components/DataSpreadsheet/utils/handleCellDeletion.js +5 -4
- package/es/components/DataSpreadsheet/utils/handleEditSubmit.js +13 -20
- package/es/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +22 -44
- package/es/components/DataSpreadsheet/utils/handleMultipleKeys.js +40 -75
- package/es/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +6 -8
- package/es/components/DataSpreadsheet/utils/removeCellSelections.js +6 -8
- package/es/components/DataSpreadsheet/utils/selectAllCells.js +7 -11
- package/es/components/Datagrid/Datagrid/Datagrid.js +12 -12
- package/es/components/Datagrid/Datagrid/DatagridBody.js +4 -10
- package/es/components/Datagrid/Datagrid/DatagridContent.js +30 -40
- package/es/components/Datagrid/Datagrid/DatagridEmptyBody.js +7 -10
- package/es/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -6
- package/es/components/Datagrid/Datagrid/DatagridHead.js +6 -6
- package/es/components/Datagrid/Datagrid/DatagridHeaderRow.js +2 -9
- package/es/components/Datagrid/Datagrid/DatagridRefBody.js +5 -8
- package/es/components/Datagrid/Datagrid/DatagridRow.js +4 -12
- package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +10 -18
- package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +24 -34
- package/es/components/Datagrid/Datagrid/DatagridSimpleBody.js +2 -7
- package/es/components/Datagrid/Datagrid/DatagridToolbar.js +26 -38
- package/es/components/Datagrid/Datagrid/DatagridVirtualBody.js +15 -21
- package/es/components/Datagrid/Datagrid/DraggableElement.js +74 -85
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -5
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +6 -10
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +14 -26
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsModal.js +54 -71
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/ModalWrapper.js +6 -13
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +1 -0
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +11 -12
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +56 -106
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +7 -21
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +1 -1
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +9 -14
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +2 -3
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +29 -63
- package/es/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +14 -21
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +6 -11
- package/es/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +21 -34
- package/es/components/Datagrid/Datagrid/addons/RowSize/index.js +1 -0
- package/es/components/Datagrid/Datagrid/index.js +1 -0
- package/es/components/Datagrid/Datagrid.stories/StickyActionsColumnStory.js +10 -0
- package/es/components/Datagrid/Datagrid.stories/common.js +2 -11
- package/es/components/Datagrid/common-column-ids.js +1 -0
- package/es/components/Datagrid/useActionsColumn.js +15 -31
- package/es/components/Datagrid/useColumnCenterAlign.js +0 -8
- package/es/components/Datagrid/useColumnOrder.js +1 -0
- package/es/components/Datagrid/useColumnRightAlign.js +0 -8
- package/es/components/Datagrid/useCustomizeColumns.js +5 -13
- package/es/components/Datagrid/useDatagrid.js +0 -7
- package/es/components/Datagrid/useDefaultStringRenderer.js +0 -9
- package/es/components/Datagrid/useDisableSelectRows.js +2 -10
- package/es/components/Datagrid/useExpandedRow.js +5 -15
- package/es/components/Datagrid/useFlexResize.js +0 -7
- package/es/components/Datagrid/useFloatingScroll.js +9 -22
- package/es/components/Datagrid/useInfiniteScroll.js +10 -16
- package/es/components/Datagrid/useInlineEdit.js +1 -9
- package/es/components/Datagrid/useNestedRowExpander.js +0 -6
- package/es/components/Datagrid/useNestedRows.js +1 -7
- package/es/components/Datagrid/useOnRowClick.js +4 -9
- package/es/components/Datagrid/useParentDimensions.js +6 -16
- package/es/components/Datagrid/useResizeTable.js +1 -7
- package/es/components/Datagrid/useRowExpander.js +0 -5
- package/es/components/Datagrid/useRowIsMouseOver.js +6 -15
- package/es/components/Datagrid/useRowRenderer.js +0 -5
- package/es/components/Datagrid/useRowSize.js +8 -20
- package/es/components/Datagrid/useSelectAllToggle.js +11 -22
- package/es/components/Datagrid/useSelectRows.js +11 -27
- package/es/components/Datagrid/useSkeletonRows.js +1 -6
- package/es/components/Datagrid/useSortableColumns.js +2 -23
- package/es/components/Datagrid/useStickyColumn.js +2 -31
- package/es/components/Datagrid/utils/DatagridActions.js +7 -11
- package/es/components/Datagrid/utils/DatagridPagination.js +5 -6
- package/es/components/Datagrid/utils/Wrapper.js +1 -1
- package/es/components/Datagrid/utils/getArgTypes.js +1 -0
- package/es/components/Datagrid/utils/getInlineEditColumns.js +1 -2
- package/es/components/Datagrid/utils/makeData.js +1 -15
- package/es/components/EditFullPage/EditFullPage.js +27 -20
- package/es/components/EditFullPage/index.js +1 -0
- package/es/components/EditSidePanel/EditSidePanel.js +38 -51
- package/es/components/EditSidePanel/index.js +1 -0
- package/es/components/EditTearsheet/EditTearsheet.js +32 -42
- package/es/components/EditTearsheet/EditTearsheetForm.js +13 -19
- package/es/components/EditTearsheet/index.js +1 -0
- package/es/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +34 -48
- package/es/components/EditTearsheetNarrow/EditTearsheetNarrow.js +27 -20
- package/es/components/EditTearsheetNarrow/index.js +1 -0
- package/es/components/EditUpdateCards/EditUpdateCards.js +142 -0
- package/es/components/EditUpdateCards/index.js +8 -0
- package/es/components/EmptyStates/EmptyState.js +18 -25
- package/es/components/EmptyStates/EmptyStateContent.js +16 -17
- package/es/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +20 -24
- package/es/components/EmptyStates/ErrorEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +20 -24
- package/es/components/EmptyStates/NoDataEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +20 -24
- package/es/components/EmptyStates/NoTagsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +20 -24
- package/es/components/EmptyStates/NotFoundEmptyState/index.js +1 -0
- package/es/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +20 -24
- package/es/components/EmptyStates/NotificationsEmptyState/index.js +1 -0
- package/es/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +20 -24
- package/es/components/EmptyStates/UnauthorizedEmptyState/index.js +1 -0
- package/es/components/EmptyStates/assets/ErrorIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NoDataIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NoTagsIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NotFoundIllustration.js +7 -6
- package/es/components/EmptyStates/assets/NotificationsIllustration.js +7 -6
- package/es/components/EmptyStates/assets/UnauthorizedIllustration.js +7 -6
- package/es/components/EmptyStates/index.js +1 -0
- package/es/components/ExampleComponent/ExampleComponent.js +36 -44
- package/es/components/ExampleComponent/index.js +1 -0
- package/es/components/ExportModal/ExportModal.js +41 -80
- package/es/components/ExportModal/index.js +1 -0
- package/es/components/ExpressiveCard/ExpressiveCard.js +3 -20
- package/es/components/ExpressiveCard/index.js +1 -0
- package/es/components/HTTPErrors/HTTPError403/HTTPError403.js +16 -18
- package/es/components/HTTPErrors/HTTPError403/index.js +1 -0
- package/es/components/HTTPErrors/HTTPError404/HTTPError404.js +16 -18
- package/es/components/HTTPErrors/HTTPError404/index.js +1 -0
- package/es/components/HTTPErrors/HTTPErrorContent.js +15 -18
- package/es/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +16 -18
- package/es/components/HTTPErrors/HTTPErrorOther/index.js +1 -0
- package/es/components/HTTPErrors/assets/HTTPErrorSvg403.js +6 -3
- package/es/components/HTTPErrors/assets/HTTPErrorSvg404.js +6 -3
- package/es/components/HTTPErrors/assets/HTTPErrorSvgOther.js +6 -3
- package/es/components/HTTPErrors/index.js +1 -0
- package/es/components/ImportModal/ImportModal.js +40 -92
- package/es/components/ImportModal/index.js +1 -0
- package/es/components/InlineEdit/InlineEdit.js +68 -98
- package/es/components/InlineEdit/index.js +1 -0
- package/es/components/InlineEditV2/InlineEditV2.js +29 -57
- package/es/components/ModifiedTabs/ModifiedTabLabelNew.js +1 -1
- package/es/components/ModifiedTabs/ModifiedTabLabelWithClose.js +6 -9
- package/es/components/ModifiedTabs/ModifiedTabs.js +14 -19
- package/es/components/MultiAddSelect/MultiAddSelect.js +0 -23
- package/es/components/NotificationsPanel/NotificationsPanel.js +85 -126
- package/es/components/NotificationsPanel/NotificationsPanel_data.js +1 -0
- package/es/components/NotificationsPanel/index.js +1 -0
- package/es/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +1 -2
- package/es/components/NotificationsPanel/utils.js +13 -19
- package/es/components/OptionsTile/OptionsTile.js +52 -80
- package/es/components/OptionsTile/index.js +1 -0
- package/es/components/PageHeader/PageHeader.js +119 -186
- package/es/components/PageHeader/PageHeaderDemo.data.js +0 -1
- package/es/components/PageHeader/PageHeaderTitle.js +18 -23
- package/es/components/PageHeader/PageHeaderUtils.js +18 -45
- package/es/components/PageHeader/index.js +1 -0
- package/es/components/ProductiveCard/ProductiveCard.js +7 -23
- package/es/components/ProductiveCard/index.js +1 -0
- package/es/components/RemoveModal/RemoveModal.js +25 -45
- package/es/components/RemoveModal/index.js +1 -0
- package/es/components/Saving/Saving.js +15 -30
- package/es/components/Saving/index.js +1 -0
- package/es/components/SidePanel/SidePanel.js +103 -150
- package/es/components/SidePanel/constants.js +1 -0
- package/es/components/SidePanel/index.js +1 -0
- package/es/components/SingleAddSelect/SingleAddSelect.js +0 -14
- package/es/components/StatusIcon/StatusIcon.js +5 -12
- package/es/components/StatusIcon/index.js +1 -0
- package/es/components/TagSet/TagSet.js +59 -93
- package/es/components/TagSet/TagSetModal.js +19 -30
- package/es/components/TagSet/TagSetOverflow.js +16 -25
- package/es/components/TagSet/index.js +1 -0
- package/es/components/Tearsheet/Tearsheet.js +26 -33
- package/es/components/Tearsheet/TearsheetNarrow.js +22 -25
- package/es/components/Tearsheet/TearsheetShell.js +80 -91
- package/es/components/Tearsheet/index.js +1 -0
- package/es/components/Toolbar/Toolbar.js +13 -27
- package/es/components/Toolbar/ToolbarButton.js +5 -9
- package/es/components/Toolbar/ToolbarGroup.js +4 -6
- package/es/components/Toolbar/index.js +1 -0
- package/es/components/UserProfileImage/UserProfileImage.js +26 -40
- package/es/components/UserProfileImage/index.js +2 -0
- package/es/components/WebTerminal/WebTerminal.js +41 -51
- package/es/components/WebTerminal/WebTerminalContentWrapper.js +14 -11
- package/es/components/WebTerminal/hooks/index.js +8 -7
- package/es/components/WebTerminal/index.js +1 -0
- package/es/components/WebTerminal/preview-components/Navigation.js +2 -4
- package/es/components/WebTerminal/preview-components/documentationLinks.js +1 -0
- package/es/components/_Canary/Canary.js +13 -13
- package/es/components/_Canary/index.js +1 -0
- package/es/components/index.js +2 -0
- package/es/global/js/hooks/index.js +1 -0
- package/es/global/js/hooks/useActiveElement.js +4 -6
- package/es/global/js/hooks/useClickOutside.js +1 -1
- package/es/global/js/hooks/useCreateComponentFocus.js +6 -5
- package/es/global/js/hooks/useCreateComponentStepChange.js +23 -54
- package/es/global/js/hooks/usePreviousValue.js +2 -1
- package/es/global/js/hooks/useResetCreateComponent.js +10 -9
- package/es/global/js/hooks/useRetrieveStepData.js +7 -10
- package/es/global/js/hooks/useValidCreateStepCount.js +2 -1
- package/es/global/js/hooks/useWindowResize.js +8 -16
- package/es/global/js/hooks/useWindowScroll.js +4 -14
- package/es/global/js/package-settings.js +6 -11
- package/es/global/js/utils/ClickListener.js +5 -10
- package/es/global/js/utils/DisplayBox.js +3 -2
- package/es/global/js/utils/Wrap.js +14 -17
- package/es/global/js/utils/deepCloneObject.js +5 -8
- package/es/global/js/utils/devtools.js +1 -4
- package/es/global/js/utils/getBezierValues.js +1 -2
- package/es/global/js/utils/getFocusableElements.js +1 -1
- package/es/global/js/utils/getScrollbarWidth.js +1 -0
- package/es/global/js/utils/keyboardNavigation.js +7 -5
- package/es/global/js/utils/lastIndexInArray.js +0 -2
- package/es/global/js/utils/motionConstants.js +2 -3
- package/es/global/js/utils/pconsole.js +1 -3
- package/es/global/js/utils/props-helper.js +19 -35
- package/es/global/js/utils/rangeWithCallback.js +1 -0
- package/es/global/js/utils/scrollableAncestor.js +5 -8
- package/es/global/js/utils/story-helper.js +9 -8
- package/es/global/js/utils/test-helper.js +25 -42
- package/es/global/js/utils/unwrap-if-fragment.js +8 -16
- package/es/global/js/utils/uuidv4.js +1 -2
- package/es/global/js/utils/uuidv4.spec.js +1 -1
- package/es/global/js/utils/wait.js +1 -1
- package/es/global/js/utils/wrapFocus.js +8 -14
- package/es/index.js +1 -0
- package/es/settings.js +24 -18
- package/lib/components/APIKeyModal/APIKeyDownloader.js +8 -31
- package/lib/components/APIKeyModal/APIKeyModal.js +57 -161
- package/lib/components/APIKeyModal/index.js +0 -1
- package/lib/components/AboutModal/AboutModal.js +33 -60
- package/lib/components/AboutModal/index.js +0 -1
- package/lib/components/ActionBar/ActionBar.js +62 -97
- package/lib/components/ActionBar/ActionBarItem.js +12 -26
- package/lib/components/ActionBar/ActionBarOverflowItems.js +8 -20
- package/lib/components/ActionBar/index.js +0 -2
- package/lib/components/ActionSet/ActionSet.js +26 -49
- package/lib/components/ActionSet/actions.js +1 -5
- package/lib/components/ActionSet/index.js +0 -1
- package/lib/components/AddSelect/AddSelect.js +2 -16
- package/lib/components/AddSelect/AddSelectBody.js +66 -117
- package/lib/components/AddSelect/AddSelectBreadcrumbs.js +3 -14
- package/lib/components/AddSelect/AddSelectColumn.js +26 -67
- package/lib/components/AddSelect/AddSelectFilter.js +20 -48
- package/lib/components/AddSelect/AddSelectList.js +19 -45
- package/lib/components/AddSelect/AddSelectMetaPanel.js +3 -17
- package/lib/components/AddSelect/AddSelectSidebar.js +13 -31
- package/lib/components/AddSelect/AddSelectSort.js +6 -15
- package/lib/components/AddSelect/add-select-utils.js +2 -33
- package/lib/components/AddSelect/hooks/useItemSort.js +6 -13
- package/lib/components/AddSelect/hooks/useParentSelect.js +3 -9
- package/lib/components/AddSelect/hooks/usePath.js +6 -21
- package/lib/components/AddSelect/index.js +0 -1
- package/lib/components/BreadcrumbWithOverflow/BreadcrumbWithOverflow.js +55 -102
- package/lib/components/BreadcrumbWithOverflow/index.js +0 -1
- package/lib/components/ButtonMenu/ButtonMenu.js +25 -35
- package/lib/components/ButtonMenu/ButtonMenuItem.js +9 -10
- package/lib/components/ButtonMenu/index.js +0 -2
- package/lib/components/ButtonSetWithOverflow/ButtonSetWithOverflow.js +33 -71
- package/lib/components/ButtonSetWithOverflow/index.js +0 -1
- package/lib/components/Card/Card.js +52 -84
- package/lib/components/Card/CardFooter.js +19 -28
- package/lib/components/Card/CardHeader.js +13 -23
- package/lib/components/Card/index.js +0 -3
- package/lib/components/Cascade/Cascade.js +4 -30
- package/lib/components/Cascade/index.js +0 -1
- package/lib/components/ComboButton/ComboButton.js +23 -49
- package/lib/components/ComboButton/ComboButtonItem/index.js +2 -10
- package/lib/components/ComboButton/index.js +0 -2
- package/lib/components/CreateFullPage/CreateFullPage.js +59 -103
- package/lib/components/CreateFullPage/CreateFullPageStep.js +27 -56
- package/lib/components/CreateFullPage/index.js +0 -2
- package/lib/components/CreateInfluencer/CreateInfluencer.js +13 -24
- package/lib/components/CreateInfluencer/index.js +0 -1
- package/lib/components/CreateModal/CreateModal.js +16 -39
- package/lib/components/CreateModal/index.js +0 -1
- package/lib/components/CreateSidePanel/CreateSidePanel.js +17 -46
- package/lib/components/CreateSidePanel/index.js +0 -1
- package/lib/components/CreateTearsheet/CreateTearsheet.js +64 -107
- package/lib/components/CreateTearsheet/CreateTearsheetDivider.js +3 -14
- package/lib/components/CreateTearsheet/CreateTearsheetStep.js +30 -58
- package/lib/components/CreateTearsheet/index.js +0 -3
- package/lib/components/CreateTearsheet/preview-components/MultiStepTearsheet.js +45 -79
- package/lib/components/CreateTearsheet/preview-components/MultiStepWithIntro.js +41 -71
- package/lib/components/CreateTearsheetNarrow/CreateTearsheetNarrow.js +25 -47
- package/lib/components/CreateTearsheetNarrow/index.js +0 -1
- package/lib/components/DataSpreadsheet/DataSpreadsheet.js +131 -256
- package/lib/components/DataSpreadsheet/DataSpreadsheetBody.js +61 -135
- package/lib/components/DataSpreadsheet/DataSpreadsheetHeader.js +24 -75
- package/lib/components/DataSpreadsheet/hooks/index.js +0 -7
- package/lib/components/DataSpreadsheet/hooks/useMoveActiveCell.js +4 -7
- package/lib/components/DataSpreadsheet/hooks/useMultipleKeyTracking.js +23 -48
- package/lib/components/DataSpreadsheet/hooks/useResetSpreadsheetFocus.js +5 -9
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetEdit.js +18 -37
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseMove.js +7 -18
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetMouseUp.js +33 -61
- package/lib/components/DataSpreadsheet/hooks/useSpreadsheetOutsideClick.js +8 -14
- package/lib/components/DataSpreadsheet/index.js +0 -1
- package/lib/components/DataSpreadsheet/utils/checkActiveHeaderCell.js +1 -9
- package/lib/components/DataSpreadsheet/utils/checkSelectedHeaderCell.js +3 -7
- package/lib/components/DataSpreadsheet/utils/createActiveCellFn.js +15 -23
- package/lib/components/DataSpreadsheet/utils/createCellSelectionArea.js +15 -22
- package/lib/components/DataSpreadsheet/utils/generateData.js +4 -16
- package/lib/components/DataSpreadsheet/utils/getCellSize.js +1 -8
- package/lib/components/DataSpreadsheet/utils/getSelectionAreaPoints.js +1 -2
- package/lib/components/DataSpreadsheet/utils/getSpreadsheetWidth.js +7 -12
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionEnter.js +19 -38
- package/lib/components/DataSpreadsheet/utils/handleActiveCellInSelectionTab.js +20 -33
- package/lib/components/DataSpreadsheet/utils/handleCellDeletion.js +5 -8
- package/lib/components/DataSpreadsheet/utils/handleEditSubmit.js +10 -24
- package/lib/components/DataSpreadsheet/utils/handleHeaderCellSelection.js +22 -50
- package/lib/components/DataSpreadsheet/utils/handleMultipleKeys.js +39 -84
- package/lib/components/DataSpreadsheet/utils/moveColumnIndicatorLine.js +6 -12
- package/lib/components/DataSpreadsheet/utils/removeCellSelections.js +4 -10
- package/lib/components/DataSpreadsheet/utils/selectAllCells.js +6 -16
- package/lib/components/Datagrid/Datagrid/Datagrid.js +11 -26
- package/lib/components/Datagrid/Datagrid/DatagridBody.js +5 -16
- package/lib/components/Datagrid/Datagrid/DatagridContent.js +31 -64
- package/lib/components/Datagrid/Datagrid/DatagridEmptyBody.js +8 -16
- package/lib/components/Datagrid/Datagrid/DatagridExpandedRow.js +4 -10
- package/lib/components/Datagrid/Datagrid/DatagridHead.js +6 -10
- package/lib/components/Datagrid/Datagrid/DatagridHeaderRow.js +3 -17
- package/lib/components/Datagrid/Datagrid/DatagridRefBody.js +4 -13
- package/lib/components/Datagrid/Datagrid/DatagridRow.js +4 -26
- package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +10 -26
- package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +23 -48
- package/lib/components/Datagrid/Datagrid/DatagridSimpleBody.js +2 -14
- package/lib/components/Datagrid/Datagrid/DatagridToolbar.js +26 -51
- package/lib/components/Datagrid/Datagrid/DatagridVirtualBody.js +15 -31
- package/lib/components/Datagrid/Datagrid/DraggableElement.js +75 -98
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Actions.js +3 -14
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ButtonWrapper.js +5 -21
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/Columns.js +14 -41
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/CustomizeColumnsModal.js +54 -84
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/ModalWrapper.js +5 -21
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/common.js +1 -5
- package/lib/components/Datagrid/Datagrid/addons/CustomizeColumns/index.js +0 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/InlineEditButton.js +11 -20
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditButton/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/InlineEditCell.js +55 -125
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditCell/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/InlineEditContext.js +6 -32
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/getCellIdAsObject.js +1 -3
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/index.js +0 -1
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/InlineEditContext/returnUpdatedActiveCell.js +8 -18
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridFocus.js +2 -5
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleGridKeyPress.js +28 -70
- package/lib/components/Datagrid/Datagrid/addons/InlineEdit/handleMultipleKeys.js +14 -27
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeDropdown.js +5 -26
- package/lib/components/Datagrid/Datagrid/addons/RowSize/RowSizeRadioGroup.js +21 -44
- package/lib/components/Datagrid/Datagrid/addons/RowSize/index.js +0 -2
- package/lib/components/Datagrid/Datagrid/index.js +0 -1
- package/lib/components/Datagrid/Datagrid.stories/StickyActionsColumnStory.js +10 -0
- package/lib/components/Datagrid/Datagrid.stories/common.js +2 -17
- package/lib/components/Datagrid/Datagrid.stories/index.js +0 -6
- package/lib/components/Datagrid/common-column-ids.js +1 -1
- package/lib/components/Datagrid/index.js +0 -19
- package/lib/components/Datagrid/useActionsColumn.js +15 -37
- package/lib/components/Datagrid/useColumnCenterAlign.js +0 -14
- package/lib/components/Datagrid/useColumnOrder.js +1 -4
- package/lib/components/Datagrid/useColumnRightAlign.js +0 -14
- package/lib/components/Datagrid/useCustomizeColumns.js +4 -20
- package/lib/components/Datagrid/useDatagrid.js +0 -20
- package/lib/components/Datagrid/useDefaultStringRenderer.js +0 -15
- package/lib/components/Datagrid/useDisableSelectRows.js +2 -11
- package/lib/components/Datagrid/useExpandedRow.js +5 -20
- package/lib/components/Datagrid/useFlexResize.js +0 -9
- package/lib/components/Datagrid/useFloatingScroll.js +10 -27
- package/lib/components/Datagrid/useInfiniteScroll.js +11 -21
- package/lib/components/Datagrid/useInlineEdit.js +2 -15
- package/lib/components/Datagrid/useNestedRowExpander.js +1 -13
- package/lib/components/Datagrid/useNestedRows.js +2 -11
- package/lib/components/Datagrid/useOnRowClick.js +4 -10
- package/lib/components/Datagrid/useParentDimensions.js +7 -18
- package/lib/components/Datagrid/useResizeTable.js +2 -8
- package/lib/components/Datagrid/useRowExpander.js +1 -8
- package/lib/components/Datagrid/useRowIsMouseOver.js +5 -19
- package/lib/components/Datagrid/useRowRenderer.js +1 -7
- package/lib/components/Datagrid/useRowSize.js +7 -24
- package/lib/components/Datagrid/useSelectAllToggle.js +12 -29
- package/lib/components/Datagrid/useSelectRows.js +11 -39
- package/lib/components/Datagrid/useSkeletonRows.js +1 -8
- package/lib/components/Datagrid/useSortableColumns.js +2 -29
- package/lib/components/Datagrid/useStickyColumn.js +1 -37
- package/lib/components/Datagrid/utils/DatagridActions.js +7 -21
- package/lib/components/Datagrid/utils/DatagridPagination.js +5 -11
- package/lib/components/Datagrid/utils/Wrapper.js +1 -5
- package/lib/components/Datagrid/utils/getArgTypes.js +1 -1
- package/lib/components/Datagrid/utils/getInlineEditColumns.js +1 -6
- package/lib/components/Datagrid/utils/makeData.js +0 -24
- package/lib/components/EditFullPage/EditFullPage.js +22 -24
- package/lib/components/EditFullPage/index.js +0 -1
- package/lib/components/EditSidePanel/EditSidePanel.js +31 -59
- package/lib/components/EditSidePanel/index.js +0 -1
- package/lib/components/EditTearsheet/EditTearsheet.js +31 -59
- package/lib/components/EditTearsheet/EditTearsheetForm.js +12 -33
- package/lib/components/EditTearsheet/index.js +0 -2
- package/lib/components/EditTearsheet/preview-components/MultiFormEditTearsheet.js +34 -61
- package/lib/components/EditTearsheetNarrow/EditTearsheetNarrow.js +22 -24
- package/lib/components/EditTearsheetNarrow/index.js +0 -1
- package/lib/components/EditUpdateCards/EditUpdateCards.js +140 -0
- package/lib/components/EditUpdateCards/index.js +12 -0
- package/lib/components/EmptyStates/EmptyState.js +13 -38
- package/lib/components/EmptyStates/EmptyStateContent.js +10 -25
- package/lib/components/EmptyStates/ErrorEmptyState/ErrorEmptyState.js +15 -37
- package/lib/components/EmptyStates/ErrorEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoDataEmptyState/NoDataEmptyState.js +15 -37
- package/lib/components/EmptyStates/NoDataEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NoTagsEmptyState/NoTagsEmptyState.js +15 -37
- package/lib/components/EmptyStates/NoTagsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotFoundEmptyState/NotFoundEmptyState.js +15 -37
- package/lib/components/EmptyStates/NotFoundEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/NotificationsEmptyState/NotificationsEmptyState.js +15 -37
- package/lib/components/EmptyStates/NotificationsEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/UnauthorizedEmptyState/UnauthorizedEmptyState.js +15 -37
- package/lib/components/EmptyStates/UnauthorizedEmptyState/index.js +0 -1
- package/lib/components/EmptyStates/assets/ErrorIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NoDataIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NoTagsIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NotFoundIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/NotificationsIllustration.js +2 -13
- package/lib/components/EmptyStates/assets/UnauthorizedIllustration.js +2 -13
- package/lib/components/EmptyStates/index.js +0 -7
- package/lib/components/ExampleComponent/ExampleComponent.js +29 -51
- package/lib/components/ExampleComponent/index.js +0 -1
- package/lib/components/ExportModal/ExportModal.js +40 -95
- package/lib/components/ExportModal/index.js +0 -1
- package/lib/components/ExpressiveCard/ExpressiveCard.js +3 -32
- package/lib/components/ExpressiveCard/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPError403/HTTPError403.js +11 -27
- package/lib/components/HTTPErrors/HTTPError403/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPError404/HTTPError404.js +11 -27
- package/lib/components/HTTPErrors/HTTPError404/index.js +0 -1
- package/lib/components/HTTPErrors/HTTPErrorContent.js +9 -23
- package/lib/components/HTTPErrors/HTTPErrorOther/HTTPErrorOther.js +11 -27
- package/lib/components/HTTPErrors/HTTPErrorOther/index.js +0 -1
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg403.js +6 -7
- package/lib/components/HTTPErrors/assets/HTTPErrorSvg404.js +6 -7
- package/lib/components/HTTPErrors/assets/HTTPErrorSvgOther.js +6 -7
- package/lib/components/HTTPErrors/index.js +0 -3
- package/lib/components/ImportModal/ImportModal.js +39 -110
- package/lib/components/ImportModal/index.js +0 -1
- package/lib/components/InlineEdit/InlineEdit.js +61 -111
- package/lib/components/InlineEdit/index.js +0 -1
- package/lib/components/InlineEditV2/InlineEditV2.js +29 -74
- package/lib/components/InlineEditV2/index.js +0 -1
- package/lib/components/ModifiedTabs/ModifiedTabLabelNew.js +1 -7
- package/lib/components/ModifiedTabs/ModifiedTabLabelWithClose.js +6 -15
- package/lib/components/ModifiedTabs/ModifiedTabs.js +14 -32
- package/lib/components/ModifiedTabs/index.js +0 -1
- package/lib/components/MultiAddSelect/MultiAddSelect.js +0 -34
- package/lib/components/MultiAddSelect/index.js +0 -1
- package/lib/components/NotificationsPanel/NotificationsPanel.js +78 -143
- package/lib/components/NotificationsPanel/NotificationsPanel_data.js +1 -4
- package/lib/components/NotificationsPanel/index.js +0 -1
- package/lib/components/NotificationsPanel/preview-components/UnreadNotificationBell.js +1 -4
- package/lib/components/NotificationsPanel/utils.js +13 -21
- package/lib/components/OptionsTile/OptionsTile.js +45 -96
- package/lib/components/OptionsTile/index.js +0 -1
- package/lib/components/PageHeader/PageHeader.js +116 -212
- package/lib/components/PageHeader/PageHeaderDemo.data.js +0 -3
- package/lib/components/PageHeader/PageHeaderTitle.js +17 -35
- package/lib/components/PageHeader/PageHeaderUtils.js +17 -58
- package/lib/components/PageHeader/index.js +0 -1
- package/lib/components/ProductiveCard/ProductiveCard.js +6 -36
- package/lib/components/ProductiveCard/index.js +0 -1
- package/lib/components/RemoveModal/RemoveModal.js +24 -61
- package/lib/components/RemoveModal/index.js +0 -1
- package/lib/components/Saving/Saving.js +14 -44
- package/lib/components/Saving/index.js +0 -1
- package/lib/components/SidePanel/SidePanel.js +98 -173
- package/lib/components/SidePanel/constants.js +1 -1
- package/lib/components/SidePanel/index.js +0 -1
- package/lib/components/SidePanel/motion/variants.js +0 -2
- package/lib/components/SingleAddSelect/SingleAddSelect.js +0 -26
- package/lib/components/SingleAddSelect/index.js +0 -1
- package/lib/components/StatusIcon/StatusIcon.js +5 -23
- package/lib/components/StatusIcon/index.js +0 -1
- package/lib/components/TagSet/TagSet.js +58 -113
- package/lib/components/TagSet/TagSetModal.js +18 -46
- package/lib/components/TagSet/TagSetOverflow.js +15 -43
- package/lib/components/TagSet/index.js +0 -1
- package/lib/components/Tearsheet/Tearsheet.js +20 -42
- package/lib/components/Tearsheet/TearsheetNarrow.js +16 -34
- package/lib/components/Tearsheet/TearsheetShell.js +73 -114
- package/lib/components/Tearsheet/index.js +0 -2
- package/lib/components/Toolbar/Toolbar.js +12 -40
- package/lib/components/Toolbar/ToolbarButton.js +4 -22
- package/lib/components/Toolbar/ToolbarGroup.js +2 -16
- package/lib/components/Toolbar/index.js +0 -3
- package/lib/components/UserProfileImage/UserProfileImage.js +19 -48
- package/lib/components/UserProfileImage/index.js +0 -1
- package/lib/components/WebTerminal/WebTerminal.js +34 -67
- package/lib/components/WebTerminal/WebTerminalContentWrapper.js +9 -20
- package/lib/components/WebTerminal/hooks/index.js +8 -19
- package/lib/components/WebTerminal/index.js +0 -3
- package/lib/components/WebTerminal/preview-components/Navigation.js +2 -9
- package/lib/components/WebTerminal/preview-components/documentationLinks.js +1 -0
- package/lib/components/WebTerminal/preview-components/index.js +0 -2
- package/lib/components/_Canary/Canary.js +4 -17
- package/lib/components/_Canary/index.js +0 -1
- package/lib/components/index.js +7 -38
- package/lib/global/js/hooks/index.js +0 -10
- package/lib/global/js/hooks/useActiveElement.js +4 -10
- package/lib/global/js/hooks/useClickOutside.js +1 -4
- package/lib/global/js/hooks/useCreateComponentFocus.js +4 -8
- package/lib/global/js/hooks/useCreateComponentStepChange.js +23 -59
- package/lib/global/js/hooks/usePreviousValue.js +0 -3
- package/lib/global/js/hooks/useResetCreateComponent.js +8 -11
- package/lib/global/js/hooks/useRetrieveStepData.js +5 -12
- package/lib/global/js/hooks/useValidCreateStepCount.js +0 -3
- package/lib/global/js/hooks/useWindowResize.js +8 -21
- package/lib/global/js/hooks/useWindowScroll.js +4 -20
- package/lib/global/js/package-settings.js +5 -14
- package/lib/global/js/utils/ClickListener.js +3 -16
- package/lib/global/js/utils/DisplayBox.js +3 -9
- package/lib/global/js/utils/Wrap.js +8 -22
- package/lib/global/js/utils/deepCloneObject.js +5 -11
- package/lib/global/js/utils/devtools.js +1 -6
- package/lib/global/js/utils/getBezierValues.js +1 -5
- package/lib/global/js/utils/getFocusableElements.js +1 -4
- package/lib/global/js/utils/getScrollbarWidth.js +1 -2
- package/lib/global/js/utils/keyboardNavigation.js +7 -6
- package/lib/global/js/utils/lastIndexInArray.js +0 -4
- package/lib/global/js/utils/motionConstants.js +1 -5
- package/lib/global/js/utils/pconsole.js +1 -7
- package/lib/global/js/utils/props-helper.js +15 -57
- package/lib/global/js/utils/rangeWithCallback.js +1 -2
- package/lib/global/js/utils/scrollableAncestor.js +5 -12
- package/lib/global/js/utils/story-helper.js +7 -21
- package/lib/global/js/utils/test-helper.js +25 -69
- package/lib/global/js/utils/unwrap-if-fragment.js +7 -19
- package/lib/global/js/utils/uuidv4.js +1 -3
- package/lib/global/js/utils/uuidv4.spec.js +1 -3
- package/lib/global/js/utils/wait.js +1 -2
- package/lib/global/js/utils/wrapFocus.js +6 -16
- package/lib/index.js +0 -3
- package/lib/settings.js +24 -27
- package/package.json +8 -8
- package/scss/components/EditUpdateCards/_edit-update-cards.scss +87 -0
- package/scss/components/EditUpdateCards/_index.scss +8 -0
- package/scss/components/EditUpdateCards/_storybook-styles.scss +56 -0
- package/scss/components/InlineEditV2/_inline-edit-v2.scss +11 -8
- package/scss/components/InlineEditV2/_storybook-styles.scss +3 -0
- package/scss/components/SidePanel/_side-panel.scss +2 -3
- package/scss/components/_index.scss +1 -1
|
@@ -1,69 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.SidePanel = void 0;
|
|
11
|
-
|
|
12
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
-
|
|
14
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
11
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
-
|
|
18
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
19
|
-
|
|
20
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
-
|
|
22
14
|
var _framerMotion = require("framer-motion");
|
|
23
|
-
|
|
24
15
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
25
|
-
|
|
26
16
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
27
|
-
|
|
28
17
|
var _reactResizeDetector = require("react-resize-detector");
|
|
29
|
-
|
|
30
18
|
var _motion = require("@carbon/motion");
|
|
31
|
-
|
|
32
19
|
var _devtools = require("../../global/js/utils/devtools");
|
|
33
|
-
|
|
34
20
|
var _propsHelper = require("../../global/js/utils/props-helper");
|
|
35
|
-
|
|
36
21
|
var _wrapFocus = _interopRequireDefault(require("../../global/js/utils/wrapFocus"));
|
|
37
|
-
|
|
38
22
|
var _settings = require("../../settings");
|
|
39
|
-
|
|
40
23
|
var _constants = require("./constants");
|
|
41
|
-
|
|
42
24
|
var _hooks = require("../../global/js/hooks");
|
|
43
|
-
|
|
44
25
|
var _carbonComponentsReact = require("carbon-components-react");
|
|
45
|
-
|
|
46
26
|
var _iconsReact = require("@carbon/icons-react");
|
|
47
|
-
|
|
48
27
|
var _ActionSet = require("../ActionSet");
|
|
49
|
-
|
|
50
28
|
var _variants = require("./motion/variants");
|
|
51
|
-
|
|
52
29
|
var _excluded = ["actionToolbarButtons", "actions", "animateTitle", "children", "className", "closeIconDescription", "condensedActions", "currentStep", "includeOverlay", "labelText", "navigationBackIconDescription", "onNavigationBack", "onRequestClose", "onUnmount", "open", "placement", "preventCloseOnClickOutside", "selectorPageContent", "selectorPrimaryFocus", "size", "slideIn", "subtitle", "title"],
|
|
53
|
-
|
|
54
|
-
|
|
30
|
+
_excluded2 = ["label", "kind", "icon", "leading", "disabled", "className", "onClick"];
|
|
55
31
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
56
|
-
|
|
57
32
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
58
|
-
|
|
59
33
|
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; }
|
|
60
|
-
|
|
61
34
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
62
|
-
|
|
63
35
|
var blockClass = "".concat(_settings.pkg.prefix, "--side-panel");
|
|
64
|
-
var componentName = 'SidePanel';
|
|
65
|
-
|
|
36
|
+
var componentName = 'SidePanel';
|
|
37
|
+
|
|
38
|
+
// NOTE: the component SCSS is not imported here: it is rolled up separately.
|
|
66
39
|
|
|
40
|
+
// Default values for props
|
|
67
41
|
var defaults = {
|
|
68
42
|
animateTitle: true,
|
|
69
43
|
closeIconDescription: 'Close',
|
|
@@ -72,54 +46,50 @@ var defaults = {
|
|
|
72
46
|
placement: 'right',
|
|
73
47
|
size: 'md'
|
|
74
48
|
};
|
|
49
|
+
|
|
75
50
|
/**
|
|
76
51
|
* Side panels keep users in-context of a page while performing tasks like navigating, editing, viewing details, or configuring something new.
|
|
77
52
|
*/
|
|
78
|
-
|
|
79
53
|
var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
80
54
|
var _window, _ref4, _cx4;
|
|
81
|
-
|
|
82
55
|
var actionToolbarButtons = _ref.actionToolbarButtons,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
56
|
+
actions = _ref.actions,
|
|
57
|
+
_ref$animateTitle = _ref.animateTitle,
|
|
58
|
+
animateTitle = _ref$animateTitle === void 0 ? defaults.animateTitle : _ref$animateTitle,
|
|
59
|
+
children = _ref.children,
|
|
60
|
+
className = _ref.className,
|
|
61
|
+
_ref$closeIconDescrip = _ref.closeIconDescription,
|
|
62
|
+
closeIconDescription = _ref$closeIconDescrip === void 0 ? defaults.closeIconDescription : _ref$closeIconDescrip,
|
|
63
|
+
condensedActions = _ref.condensedActions,
|
|
64
|
+
_ref$currentStep = _ref.currentStep,
|
|
65
|
+
currentStep = _ref$currentStep === void 0 ? defaults.currentStep : _ref$currentStep,
|
|
66
|
+
includeOverlay = _ref.includeOverlay,
|
|
67
|
+
labelText = _ref.labelText,
|
|
68
|
+
_ref$navigationBackIc = _ref.navigationBackIconDescription,
|
|
69
|
+
navigationBackIconDescription = _ref$navigationBackIc === void 0 ? defaults.navigationBackIconDescription : _ref$navigationBackIc,
|
|
70
|
+
onNavigationBack = _ref.onNavigationBack,
|
|
71
|
+
onRequestClose = _ref.onRequestClose,
|
|
72
|
+
onUnmount = _ref.onUnmount,
|
|
73
|
+
open = _ref.open,
|
|
74
|
+
_ref$placement = _ref.placement,
|
|
75
|
+
placement = _ref$placement === void 0 ? defaults.placement : _ref$placement,
|
|
76
|
+
preventCloseOnClickOutside = _ref.preventCloseOnClickOutside,
|
|
77
|
+
selectorPageContent = _ref.selectorPageContent,
|
|
78
|
+
selectorPrimaryFocus = _ref.selectorPrimaryFocus,
|
|
79
|
+
_ref$size = _ref.size,
|
|
80
|
+
size = _ref$size === void 0 ? defaults.size : _ref$size,
|
|
81
|
+
slideIn = _ref.slideIn,
|
|
82
|
+
subtitle = _ref.subtitle,
|
|
83
|
+
title = _ref.title,
|
|
84
|
+
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
113
85
|
var _useState = (0, _react.useState)(false),
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
86
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
87
|
+
animationComplete = _useState2[0],
|
|
88
|
+
setAnimationComplete = _useState2[1];
|
|
118
89
|
var _useState3 = (0, _react.useState)(0),
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
90
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
91
|
+
panelHeight = _useState4[0],
|
|
92
|
+
setPanelHeight = _useState4[1];
|
|
123
93
|
var sidePanelRef = (0, _react.useRef)();
|
|
124
94
|
var sidePanelOverlayRef = (0, _react.useRef)();
|
|
125
95
|
var startTrapRef = (0, _react.useRef)();
|
|
@@ -132,47 +102,43 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
132
102
|
});
|
|
133
103
|
var reducedMotion = typeof window !== 'undefined' && (_window = window) !== null && _window !== void 0 && _window.matchMedia ? window.matchMedia('(prefers-reduced-motion: reduce)') : {
|
|
134
104
|
matches: true
|
|
135
|
-
};
|
|
105
|
+
};
|
|
136
106
|
|
|
107
|
+
// scroll panel to top going between steps
|
|
137
108
|
(0, _react.useEffect)(function () {
|
|
138
109
|
var panelRef = ref || sidePanelRef;
|
|
139
|
-
|
|
140
110
|
if (panelRef && panelRef.current) {
|
|
141
111
|
var _document$querySelect;
|
|
142
|
-
|
|
143
112
|
var scrollableSection = panelRef.current.querySelector(".".concat(blockClass, "__inner-content"));
|
|
144
113
|
var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
145
114
|
var initialTitleHeight = (_document$querySelect = document.querySelector(".".concat(blockClass, "__title-container"))) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.offsetHeight;
|
|
146
|
-
scrollableSection.scrollTop = 0;
|
|
115
|
+
scrollableSection.scrollTop = 0;
|
|
116
|
+
// The size of the panel has changed while it is still opened
|
|
147
117
|
// so we need to scroll it to the top and reset the title container
|
|
148
118
|
// height css custom property
|
|
149
|
-
|
|
150
119
|
if ((previousState === null || previousState === void 0 ? void 0 : previousState.size) !== size) {
|
|
151
120
|
var _sidePanelOuter$style;
|
|
152
|
-
|
|
153
121
|
scrollableSection.scrollTop = 0;
|
|
154
122
|
sidePanelOuter === null || sidePanelOuter === void 0 ? void 0 : (_sidePanelOuter$style = sidePanelOuter.style) === null || _sidePanelOuter$style === void 0 ? void 0 : _sidePanelOuter$style.setProperty("--".concat(blockClass, "--title-container-height"), "".concat(Number(initialTitleHeight), "px"));
|
|
155
123
|
}
|
|
156
124
|
}
|
|
157
|
-
}, [currentStep, ref, size, previousState === null || previousState === void 0 ? void 0 : previousState.size]);
|
|
125
|
+
}, [currentStep, ref, size, previousState === null || previousState === void 0 ? void 0 : previousState.size]);
|
|
158
126
|
|
|
127
|
+
// set initial focus when side panel opens
|
|
159
128
|
(0, _react.useEffect)(function () {
|
|
160
129
|
var initialFocus = function initialFocus(focusContainerElement) {
|
|
161
130
|
var containerElement = focusContainerElement;
|
|
162
131
|
var primaryFocusElement = containerElement && containerElement.querySelector(selectorPrimaryFocus);
|
|
163
|
-
|
|
164
132
|
if (primaryFocusElement) {
|
|
165
133
|
return primaryFocusElement;
|
|
166
134
|
} else {
|
|
167
135
|
return sidePanelCloseRef && sidePanelCloseRef.current;
|
|
168
136
|
}
|
|
169
137
|
};
|
|
170
|
-
|
|
171
138
|
var focusButton = function focusButton(focusContainerElement) {
|
|
172
139
|
var target = initialFocus(focusContainerElement);
|
|
173
140
|
target === null || target === void 0 ? void 0 : target.focus();
|
|
174
141
|
};
|
|
175
|
-
|
|
176
142
|
if (open && animationComplete) {
|
|
177
143
|
focusButton(sidePanelInnerRef.current);
|
|
178
144
|
}
|
|
@@ -180,46 +146,41 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
180
146
|
(0, _react.useEffect)(function () {
|
|
181
147
|
if (open && actions && actions.length && animationComplete) {
|
|
182
148
|
var _sidePanelOuter$style2;
|
|
183
|
-
|
|
184
149
|
var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
185
150
|
var actionsContainer = getActionsContainerElement();
|
|
186
151
|
var actionsHeight = (actionsContainer === null || actionsContainer === void 0 ? void 0 : actionsContainer.offsetHeight) + 16; // add additional 1rem spacing to bottom padding
|
|
187
|
-
|
|
188
152
|
actionsHeight = "".concat(Math.round(actionsHeight / 16), "rem");
|
|
189
153
|
sidePanelOuter === null || sidePanelOuter === void 0 ? void 0 : (_sidePanelOuter$style2 = sidePanelOuter.style) === null || _sidePanelOuter$style2 === void 0 ? void 0 : _sidePanelOuter$style2.setProperty("--".concat(blockClass, "--content-bottom-padding"), actionsHeight);
|
|
190
154
|
}
|
|
191
|
-
}, [actions, condensedActions, open, animationComplete]);
|
|
192
|
-
// This combination is not allowed.
|
|
155
|
+
}, [actions, condensedActions, open, animationComplete]);
|
|
193
156
|
|
|
157
|
+
// Add console warning if labelText is provided without a title.
|
|
158
|
+
// This combination is not allowed.
|
|
194
159
|
(0, _react.useEffect)(function () {
|
|
195
160
|
if (!title && labelText) {
|
|
196
161
|
console.warn("".concat(componentName, ": The prop `labelText` was provided without a `title`. It is required to have a `title` when using the `labelText` prop."));
|
|
197
162
|
}
|
|
198
163
|
}, [labelText, title]);
|
|
199
|
-
/* istanbul ignore next */
|
|
200
164
|
|
|
165
|
+
/* istanbul ignore next */
|
|
201
166
|
var handleResize = function handleResize(width, height) {
|
|
202
167
|
var _sidePanelOuter$style3;
|
|
203
|
-
|
|
204
168
|
setPanelHeight(height);
|
|
205
169
|
var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
206
170
|
var actionsContainer = getActionsContainerElement();
|
|
207
171
|
var actionsHeight = (actionsContainer === null || actionsContainer === void 0 ? void 0 : actionsContainer.offsetHeight) + 16; // add additional 1rem spacing to bottom padding
|
|
208
|
-
|
|
209
172
|
actionsHeight = "".concat(Math.round(actionsHeight / 16), "rem");
|
|
210
173
|
sidePanelOuter === null || sidePanelOuter === void 0 ? void 0 : (_sidePanelOuter$style3 = sidePanelOuter.style) === null || _sidePanelOuter$style3 === void 0 ? void 0 : _sidePanelOuter$style3.setProperty("--".concat(blockClass, "--content-bottom-padding"), actionsHeight);
|
|
211
174
|
};
|
|
212
|
-
|
|
213
175
|
var getActionsContainerElement = function getActionsContainerElement() {
|
|
214
176
|
var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
215
177
|
return sidePanelOuter && sidePanelOuter.querySelector(".".concat(blockClass, "__actions-container"));
|
|
216
|
-
};
|
|
217
|
-
|
|
178
|
+
};
|
|
218
179
|
|
|
180
|
+
// Title and subtitle scroll animation
|
|
219
181
|
(0, _react.useEffect)(function () {
|
|
220
182
|
if (open && animateTitle && animationComplete && title && title.length && !reducedMotion.matches) {
|
|
221
183
|
var _document$querySelect2, _document$querySelect3, _document$querySelect4;
|
|
222
|
-
|
|
223
184
|
var sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
224
185
|
var sidePanelScrollArea = document.querySelector("#".concat(blockClass, "-outer .").concat(blockClass, "__inner-content"));
|
|
225
186
|
var sidePanelTitleElement = document.querySelector(".".concat(blockClass, "__title-text"));
|
|
@@ -231,50 +192,54 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
231
192
|
var scrollSectionHeight = (_document$querySelect2 = document.querySelector(".".concat(blockClass, "__body-content"))) === null || _document$querySelect2 === void 0 ? void 0 : _document$querySelect2.offsetHeight;
|
|
232
193
|
var titleContainerHeight = (_document$querySelect3 = document.querySelector(".".concat(blockClass, "__title-container"))) === null || _document$querySelect3 === void 0 ? void 0 : _document$querySelect3.offsetHeight;
|
|
233
194
|
var labelTextHeight = (_document$querySelect4 = document.querySelector(".".concat(blockClass, "__label-text"))) === null || _document$querySelect4 === void 0 ? void 0 : _document$querySelect4.offsetHeight;
|
|
234
|
-
var totalScrollingContentHeight = titleContainerHeight + sidePanelSubtitleElementHeight + scrollSectionHeight;
|
|
195
|
+
var totalScrollingContentHeight = titleContainerHeight + sidePanelSubtitleElementHeight + scrollSectionHeight;
|
|
196
|
+
// if the difference between the total scrolling height and the panel height is less than
|
|
235
197
|
// the subtitleElement height OR if the subtitle element height is 0, use that difference
|
|
236
198
|
// as the length of the scroll animation (otherwise the animation will not be able to complete
|
|
237
199
|
// because there is not enough scrolling distance to complete it).
|
|
238
|
-
|
|
239
200
|
sidePanelSubtitleElementHeight = totalScrollingContentHeight - panelOuterHeight < sidePanelSubtitleElementHeight ? totalScrollingContentHeight - panelOuterHeight : sidePanelSubtitleElementHeight === 0 ? 16 : sidePanelSubtitleElementHeight;
|
|
240
201
|
sidePanelSubtitleElementHeight = sidePanelSubtitleElementHeight < 0 ? (sidePanelScrollArea === null || sidePanelScrollArea === void 0 ? void 0 : sidePanelScrollArea.scrollHeight) - (sidePanelScrollArea === null || sidePanelScrollArea === void 0 ? void 0 : sidePanelScrollArea.clientHeight) : sidePanelSubtitleElementHeight;
|
|
241
202
|
/* istanbul ignore next */
|
|
242
|
-
|
|
243
203
|
sidePanelScrollArea && sidePanelScrollArea.addEventListener('scroll', function () {
|
|
244
|
-
var scrollTop = sidePanelScrollArea.scrollTop;
|
|
245
|
-
|
|
204
|
+
var scrollTop = sidePanelScrollArea.scrollTop;
|
|
205
|
+
// if scrolling has occurred
|
|
246
206
|
if (scrollTop > 0) {
|
|
247
|
-
sidePanelOuter.classList.add("".concat(blockClass, "__with-condensed-header"));
|
|
207
|
+
sidePanelOuter.classList.add("".concat(blockClass, "__with-condensed-header"));
|
|
208
|
+
// Set subtitle opacity calculation here
|
|
248
209
|
// as scroll progresses
|
|
249
|
-
|
|
250
210
|
var titleOpacity = Math.min(1, (sidePanelSubtitleElementHeight - scrollTop) / sidePanelSubtitleElementHeight);
|
|
251
211
|
titleOpacity = titleOpacity < 0 ? 0 : titleOpacity;
|
|
252
|
-
sidePanelOuter.style.setProperty("--".concat(blockClass, "--subtitle-opacity"), titleOpacity);
|
|
212
|
+
sidePanelOuter.style.setProperty("--".concat(blockClass, "--subtitle-opacity"), titleOpacity);
|
|
213
|
+
|
|
214
|
+
// Calculate divider opacity to avoid border
|
|
253
215
|
// abruptly appearing when scrolling starts.
|
|
254
216
|
// This approach uses a pseudo element and sets
|
|
255
217
|
// the opacity as scroll progresses.
|
|
256
|
-
|
|
257
218
|
var dividerOpacity = Math.min(scrollTop / sidePanelSubtitleElementHeight, 1);
|
|
258
|
-
sidePanelOuter.style.setProperty("--".concat(blockClass, "--divider-opacity"), "".concat(Math.min(1, dividerOpacity)));
|
|
219
|
+
sidePanelOuter.style.setProperty("--".concat(blockClass, "--divider-opacity"), "".concat(Math.min(1, dividerOpacity)));
|
|
220
|
+
|
|
221
|
+
// We need to know the height of the title element
|
|
259
222
|
// so that we know how far to place the action toolbar
|
|
260
223
|
// from the top since it is sticky
|
|
261
|
-
|
|
262
224
|
var titleTextHeight = Math.max(sidePanelTitleElement.offsetHeight);
|
|
263
|
-
sidePanelOuter.style.setProperty("--".concat(blockClass, "--title-height"), "".concat(titleTextHeight + 16, "px"));
|
|
225
|
+
sidePanelOuter.style.setProperty("--".concat(blockClass, "--title-height"), "".concat(titleTextHeight + 16, "px"));
|
|
264
226
|
|
|
227
|
+
// Set title y positioning
|
|
265
228
|
var titleYPosition = Math.min(scrollTop / sidePanelSubtitleElementHeight, 1);
|
|
266
|
-
sidePanelOuter.style.setProperty("--".concat(blockClass, "--title-y-position"), "".concat(-Math.abs(titleYPosition), "rem"));
|
|
229
|
+
sidePanelOuter.style.setProperty("--".concat(blockClass, "--title-y-position"), "".concat(-Math.abs(titleYPosition), "rem"));
|
|
267
230
|
|
|
231
|
+
// mark title with aria-hidden={true} if opacity reaches 0
|
|
268
232
|
if (titleOpacity === 0) {
|
|
269
233
|
sidePanelTitleElement.setAttribute('aria-hidden', 'true');
|
|
270
234
|
sidePanelCollapsedTitleElement.setAttribute('aria-hidden', 'false');
|
|
271
|
-
}
|
|
272
|
-
|
|
235
|
+
}
|
|
273
236
|
|
|
237
|
+
// Set collapsed title y positioning
|
|
274
238
|
var collapsedTitleYPosition = Math.min(1, (sidePanelSubtitleElementHeight - scrollTop) / sidePanelSubtitleElementHeight);
|
|
275
239
|
collapsedTitleYPosition = collapsedTitleYPosition < 0 ? 0 : collapsedTitleYPosition;
|
|
276
|
-
sidePanelOuter.style.setProperty("--".concat(blockClass, "--collapsed-title-y-position"), "".concat(collapsedTitleYPosition, "rem"));
|
|
240
|
+
sidePanelOuter.style.setProperty("--".concat(blockClass, "--collapsed-title-y-position"), "".concat(collapsedTitleYPosition, "rem"));
|
|
277
241
|
|
|
242
|
+
// Set label text height
|
|
278
243
|
var scrollAnimationProgress = dividerOpacity;
|
|
279
244
|
var reduceTitleContainerHeightAmount = labelTextHeight * scrollAnimationProgress / titleContainerHeight * 100;
|
|
280
245
|
sidePanelOuter.style.setProperty("--".concat(blockClass, "--label-text-height"), "".concat(Math.trunc(reduceTitleContainerHeightAmount), "px"));
|
|
@@ -291,20 +256,13 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
291
256
|
}
|
|
292
257
|
});
|
|
293
258
|
}
|
|
294
|
-
|
|
295
259
|
if (open && !animateTitle) {
|
|
296
260
|
var _sidePanelOuter = document.querySelector("#".concat(blockClass, "-outer"));
|
|
297
|
-
|
|
298
261
|
var _sidePanelTitleElement = document.querySelector(".".concat(blockClass, "__title-container .").concat(blockClass, "__title-text"));
|
|
299
|
-
|
|
300
262
|
var _sidePanelSubtitleElement = document.querySelector(".".concat(blockClass, "__subtitle-text"));
|
|
301
|
-
|
|
302
263
|
var actionToolbarElement = document.querySelector(".".concat(blockClass, "__action-toolbar"));
|
|
303
|
-
|
|
304
264
|
var _labelText = document.querySelector(".".concat(blockClass, "__label-text"));
|
|
305
|
-
|
|
306
265
|
var _sidePanelSubtitleElementHeight = (_sidePanelSubtitleElement === null || _sidePanelSubtitleElement === void 0 ? void 0 : _sidePanelSubtitleElement.offsetHeight) || 0;
|
|
307
|
-
|
|
308
266
|
var sidePanelActionBarElementHeight = (actionToolbarElement === null || actionToolbarElement === void 0 ? void 0 : actionToolbarElement.offsetHeight) || 0;
|
|
309
267
|
var titleHeight = (_sidePanelTitleElement === null || _sidePanelTitleElement === void 0 ? void 0 : _sidePanelTitleElement.offsetHeight) + 24;
|
|
310
268
|
var labelHeight = (_labelText === null || _labelText === void 0 ? void 0 : _labelText.offsetHeight) || 0;
|
|
@@ -313,59 +271,55 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
313
271
|
_sidePanelOuter === null || _sidePanelOuter === void 0 ? void 0 : _sidePanelOuter.style.setProperty("--".concat(blockClass, "--action-bar-container-height"), "".concat(sidePanelActionBarElementHeight, "px"));
|
|
314
272
|
_sidePanelOuter === null || _sidePanelOuter === void 0 ? void 0 : _sidePanelOuter.style.setProperty("--".concat(blockClass, "--label-text-height"), "".concat(labelHeight, "px"));
|
|
315
273
|
}
|
|
316
|
-
}, [open, animateTitle, animationComplete, panelHeight, title, size, reducedMotion.matches]);
|
|
274
|
+
}, [open, animateTitle, animationComplete, panelHeight, title, size, reducedMotion.matches]);
|
|
317
275
|
|
|
276
|
+
// click outside functionality if `includeOverlay` prop is set
|
|
318
277
|
(0, _react.useEffect)(function () {
|
|
319
278
|
var handleOutsideClick = function handleOutsideClick(event) {
|
|
320
279
|
var panelRef = ref || sidePanelRef;
|
|
321
|
-
|
|
322
280
|
if (panelRef.current && sidePanelOverlayRef.current && sidePanelOverlayRef.current.contains(event.target) && onRequestClose) {
|
|
323
281
|
onRequestClose();
|
|
324
282
|
}
|
|
325
283
|
};
|
|
326
|
-
|
|
327
284
|
var bodyElement = document.body;
|
|
328
|
-
|
|
329
285
|
if (includeOverlay && open) {
|
|
330
286
|
bodyElement.style.overflow = 'hidden';
|
|
331
287
|
} else if (includeOverlay && !open) {
|
|
332
288
|
bodyElement.style.overflow = 'initial';
|
|
333
289
|
}
|
|
334
|
-
|
|
335
290
|
if (includeOverlay && !preventCloseOnClickOutside) {
|
|
336
291
|
document.addEventListener('click', handleOutsideClick);
|
|
337
292
|
}
|
|
338
|
-
|
|
339
293
|
return function () {
|
|
340
294
|
document.removeEventListener('click', handleOutsideClick);
|
|
341
295
|
};
|
|
342
|
-
}, [includeOverlay, onRequestClose, open, preventCloseOnClickOutside, ref, onUnmount]);
|
|
296
|
+
}, [includeOverlay, onRequestClose, open, preventCloseOnClickOutside, ref, onUnmount]);
|
|
343
297
|
|
|
298
|
+
// initializes the side panel to close
|
|
344
299
|
var onAnimationEnd = function onAnimationEnd() {
|
|
345
300
|
if (!open) {
|
|
346
301
|
onUnmount === null || onUnmount === void 0 ? void 0 : onUnmount();
|
|
347
302
|
}
|
|
348
|
-
|
|
349
303
|
setAnimationComplete(true);
|
|
350
|
-
};
|
|
351
|
-
// prefers reduced motion is true
|
|
352
|
-
|
|
304
|
+
};
|
|
353
305
|
|
|
306
|
+
// Set the internal state `animationComplete` to true if
|
|
307
|
+
// prefers reduced motion is true
|
|
354
308
|
(0, _react.useEffect)(function () {
|
|
355
309
|
if (reducedMotion.matches) {
|
|
356
310
|
setAnimationComplete(true);
|
|
357
311
|
}
|
|
358
|
-
}, [reducedMotion.matches]);
|
|
312
|
+
}, [reducedMotion.matches]);
|
|
359
313
|
|
|
314
|
+
// initializes the side panel to open
|
|
360
315
|
var _onAnimationStart = function onAnimationStart() {
|
|
361
316
|
setAnimationComplete(false);
|
|
362
|
-
};
|
|
363
|
-
|
|
317
|
+
};
|
|
364
318
|
|
|
319
|
+
// used to reset margins of the slide in panel when closed/closing
|
|
365
320
|
(0, _react.useEffect)(function () {
|
|
366
321
|
if (!open && slideIn) {
|
|
367
322
|
var pageContentElement = document.querySelector(selectorPageContent);
|
|
368
|
-
|
|
369
323
|
if (placement && placement === 'right' && pageContentElement) {
|
|
370
324
|
pageContentElement.style.marginRight = 0;
|
|
371
325
|
} else if (pageContentElement) {
|
|
@@ -377,12 +331,12 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
377
331
|
if (!open && previousState !== null && previousState !== void 0 && previousState.open && reducedMotion.matches) {
|
|
378
332
|
onUnmount === null || onUnmount === void 0 ? void 0 : onUnmount();
|
|
379
333
|
}
|
|
380
|
-
}, [open, onUnmount, reducedMotion.matches, previousState === null || previousState === void 0 ? void 0 : previousState.open]);
|
|
334
|
+
}, [open, onUnmount, reducedMotion.matches, previousState === null || previousState === void 0 ? void 0 : previousState.open]);
|
|
381
335
|
|
|
336
|
+
// used to set margins of content for slide in panel version
|
|
382
337
|
(0, _react.useEffect)(function () {
|
|
383
338
|
if (open && slideIn) {
|
|
384
339
|
var pageContentElement = document.querySelector(selectorPageContent);
|
|
385
|
-
|
|
386
340
|
if (placement && placement === 'right' && pageContentElement) {
|
|
387
341
|
pageContentElement.style.marginRight = 0;
|
|
388
342
|
pageContentElement.style.transition = !reducedMotion.matches ? "margin-right ".concat(_motion.moderate02) : null;
|
|
@@ -393,14 +347,13 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
393
347
|
pageContentElement.style.marginLeft = _constants.SIDE_PANEL_SIZES[size];
|
|
394
348
|
}
|
|
395
349
|
}
|
|
396
|
-
}, [slideIn, selectorPageContent, placement, size, reducedMotion.matches, open]);
|
|
350
|
+
}, [slideIn, selectorPageContent, placement, size, reducedMotion.matches, open]);
|
|
397
351
|
|
|
352
|
+
// adds focus trap functionality
|
|
398
353
|
/* istanbul ignore next */
|
|
399
|
-
|
|
400
354
|
var handleBlur = function handleBlur(_ref2) {
|
|
401
355
|
var oldActiveNode = _ref2.target,
|
|
402
|
-
|
|
403
|
-
|
|
356
|
+
currentActiveNode = _ref2.relatedTarget;
|
|
404
357
|
// focus trap should only be set if the side panel is a `slideOver` type
|
|
405
358
|
if (open && sidePanelInnerRef && !slideIn) {
|
|
406
359
|
(0, _wrapFocus.default)({
|
|
@@ -412,13 +365,10 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
412
365
|
});
|
|
413
366
|
}
|
|
414
367
|
};
|
|
415
|
-
|
|
416
368
|
var primaryActionContainerClassNames = (0, _classnames.default)(["".concat(blockClass, "__actions-container"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__actions-container-condensed"), condensedActions)]);
|
|
417
369
|
var mainPanelClassNames = (0, _classnames.default)([blockClass, className, "".concat(blockClass, "__container"), "".concat(blockClass, "__container--").concat(size), (_ref4 = {}, (0, _defineProperty2.default)(_ref4, "".concat(blockClass, "__container-right-placement"), placement === 'right'), (0, _defineProperty2.default)(_ref4, "".concat(blockClass, "__container-left-placement"), placement === 'left'), (0, _defineProperty2.default)(_ref4, "".concat(blockClass, "__container-with-action-toolbar"), actionToolbarButtons && actionToolbarButtons.length), (0, _defineProperty2.default)(_ref4, "".concat(blockClass, "__container-without-overlay"), !includeOverlay && !slideIn), (0, _defineProperty2.default)(_ref4, "".concat(blockClass, "__container-is-animating"), !animationComplete || !open), _ref4)]);
|
|
418
|
-
|
|
419
370
|
var renderHeader = function renderHeader() {
|
|
420
371
|
var _cx, _cx2;
|
|
421
|
-
|
|
422
372
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
423
373
|
className: (0, _classnames.default)("".concat(blockClass, "__title-container"), (_cx = {}, (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__on-detail-step"), currentStep > 0), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__on-detail-step-without-title"), currentStep > 0 && !title), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container--no-title-animation"), !animateTitle), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container-is-animating"), !animationComplete || !open), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container-without-title"), !title), (0, _defineProperty2.default)(_cx, "".concat(blockClass, "__title-container--reduced-motion"), reducedMotion.matches), _cx))
|
|
424
374
|
}, currentStep > 0 && /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Button, {
|
|
@@ -447,15 +397,14 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
447
397
|
className: (0, _classnames.default)("".concat(blockClass, "__action-toolbar"), (0, _defineProperty2.default)({}, "".concat(blockClass, "__action-toolbar-no-animation"), !animateTitle))
|
|
448
398
|
}, actionToolbarButtons.map(function (_ref5) {
|
|
449
399
|
var _ref6;
|
|
450
|
-
|
|
451
400
|
var label = _ref5.label,
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
401
|
+
kind = _ref5.kind,
|
|
402
|
+
icon = _ref5.icon,
|
|
403
|
+
leading = _ref5.leading,
|
|
404
|
+
disabled = _ref5.disabled,
|
|
405
|
+
className = _ref5.className,
|
|
406
|
+
onClick = _ref5.onClick,
|
|
407
|
+
rest = (0, _objectWithoutProperties2.default)(_ref5, _excluded2);
|
|
459
408
|
return /*#__PURE__*/_react.default.createElement(_carbonComponentsReact.Button, (0, _extends2.default)({}, rest, {
|
|
460
409
|
key: label,
|
|
461
410
|
kind: kind || 'ghost',
|
|
@@ -471,7 +420,6 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
471
420
|
}), leading && label);
|
|
472
421
|
})));
|
|
473
422
|
};
|
|
474
|
-
|
|
475
423
|
var renderTitle = function renderTitle() {
|
|
476
424
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, title && title.length && /*#__PURE__*/_react.default.createElement("h2", {
|
|
477
425
|
className: "".concat(blockClass, "__title-text"),
|
|
@@ -483,7 +431,6 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
483
431
|
"aria-hidden": true
|
|
484
432
|
}, title));
|
|
485
433
|
};
|
|
486
|
-
|
|
487
434
|
var contentRef = ref || sidePanelRef;
|
|
488
435
|
(0, _reactResizeDetector.useResizeDetector)({
|
|
489
436
|
handleHeight: true,
|
|
@@ -533,9 +480,9 @@ var SidePanel = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
|
|
|
533
480
|
ref: sidePanelOverlayRef,
|
|
534
481
|
className: "".concat(blockClass, "__overlay")
|
|
535
482
|
}))));
|
|
536
|
-
});
|
|
537
|
-
|
|
483
|
+
});
|
|
538
484
|
|
|
485
|
+
// Return a placeholder if not released and not enabled by feature flag
|
|
539
486
|
exports.SidePanel = SidePanel;
|
|
540
487
|
exports.SidePanel = SidePanel = _settings.pkg.checkComponentEnabled(SidePanel, componentName);
|
|
541
488
|
SidePanel.propTypes = {
|
|
@@ -549,7 +496,6 @@ SidePanel.propTypes = {
|
|
|
549
496
|
onClick: _propTypes.default.func,
|
|
550
497
|
kind: _propTypes.default.oneOf(['ghost', 'tertiary', 'secondary', 'primary'])
|
|
551
498
|
})),
|
|
552
|
-
|
|
553
499
|
/**
|
|
554
500
|
* The primary actions to be shown in the side panel. Each action is
|
|
555
501
|
* specified as an object with optional fields: 'label' to supply the button
|
|
@@ -570,84 +516,68 @@ SidePanel.propTypes = {
|
|
|
570
516
|
// we duplicate this Button prop to improve the DocGen here
|
|
571
517
|
onClick: _carbonComponentsReact.Button.propTypes.onClick
|
|
572
518
|
})))]),
|
|
573
|
-
|
|
574
519
|
/**
|
|
575
520
|
* Determines if the title will animate on scroll
|
|
576
521
|
*/
|
|
577
522
|
animateTitle: _propTypes.default.bool,
|
|
578
|
-
|
|
579
523
|
/**
|
|
580
524
|
* Sets the body content of the side panel
|
|
581
525
|
*/
|
|
582
526
|
children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired,
|
|
583
|
-
|
|
584
527
|
/**
|
|
585
528
|
* Sets an optional className to be added to the side panel outermost element
|
|
586
529
|
*/
|
|
587
530
|
className: _propTypes.default.string,
|
|
588
|
-
|
|
589
531
|
/**
|
|
590
532
|
* Sets the close button icon description
|
|
591
533
|
*/
|
|
592
534
|
closeIconDescription: _propTypes.default.string,
|
|
593
|
-
|
|
594
535
|
/**
|
|
595
536
|
* Determines whether the side panel should render the condensed version (affects action buttons primarily)
|
|
596
537
|
*/
|
|
597
538
|
condensedActions: _propTypes.default.bool,
|
|
598
|
-
|
|
599
539
|
/**
|
|
600
540
|
* Sets the current step of the side panel
|
|
601
541
|
*/
|
|
602
542
|
currentStep: _propTypes.default.number,
|
|
603
|
-
|
|
604
543
|
/**
|
|
605
544
|
* Determines whether the side panel should render with an overlay
|
|
606
545
|
*/
|
|
607
546
|
includeOverlay: _propTypes.default.bool,
|
|
608
|
-
|
|
609
547
|
/**
|
|
610
548
|
* Sets the label text which will display above the title text
|
|
611
549
|
*/
|
|
612
550
|
labelText: _propTypes.default.string,
|
|
613
|
-
|
|
614
551
|
/**
|
|
615
552
|
* Sets the icon description for the navigation back icon button
|
|
616
553
|
*/
|
|
617
554
|
navigationBackIconDescription: _propTypes.default.string,
|
|
618
|
-
|
|
619
555
|
/**
|
|
620
556
|
* Changes the current side panel page to the previous page
|
|
621
557
|
*/
|
|
622
558
|
onNavigationBack: _propTypes.default.func,
|
|
623
|
-
|
|
624
559
|
/**
|
|
625
560
|
* Specify a handler for closing the side panel.
|
|
626
561
|
* This handler closes the modal, e.g. changing `open` prop.
|
|
627
562
|
*/
|
|
628
563
|
onRequestClose: _propTypes.default.func,
|
|
629
|
-
|
|
630
564
|
/**
|
|
631
565
|
* Optional function called when the side panel exit animation is complete.
|
|
632
566
|
* This handler can be used for any state cleanup needed before the panel is removed from the DOM.
|
|
633
567
|
*/
|
|
634
568
|
onUnmount: _propTypes.default.func,
|
|
635
|
-
|
|
636
569
|
/**
|
|
637
570
|
* Determines whether the side panel should render or not
|
|
638
571
|
*/
|
|
639
572
|
open: _propTypes.default.bool.isRequired,
|
|
640
|
-
|
|
641
573
|
/**
|
|
642
574
|
* Determines if the side panel is on the right or left
|
|
643
575
|
*/
|
|
644
576
|
placement: _propTypes.default.oneOf(['left', 'right']),
|
|
645
|
-
|
|
646
577
|
/**
|
|
647
578
|
* Prevent closing on click outside of the panel
|
|
648
579
|
*/
|
|
649
580
|
preventCloseOnClickOutside: _propTypes.default.bool,
|
|
650
|
-
|
|
651
581
|
/**
|
|
652
582
|
* This is the selector to the element that contains all of the page content that will shrink if the panel is a slide in.
|
|
653
583
|
* This prop is required when using the `slideIn` variant of the side panel.
|
|
@@ -656,28 +586,23 @@ SidePanel.propTypes = {
|
|
|
656
586
|
var slideIn = _ref7.slideIn;
|
|
657
587
|
return slideIn;
|
|
658
588
|
}),
|
|
659
|
-
|
|
660
589
|
/**
|
|
661
590
|
* Specify a CSS selector that matches the DOM element that should
|
|
662
591
|
* be focused when the side panel opens
|
|
663
592
|
*/
|
|
664
593
|
selectorPrimaryFocus: _propTypes.default.string,
|
|
665
|
-
|
|
666
594
|
/**
|
|
667
595
|
* Sets the size of the side panel
|
|
668
596
|
*/
|
|
669
597
|
size: _propTypes.default.oneOf(['xs', 'sm', 'md', 'lg', 'max']),
|
|
670
|
-
|
|
671
598
|
/**
|
|
672
599
|
* Determines if this panel slides in
|
|
673
600
|
*/
|
|
674
601
|
slideIn: _propTypes.default.bool,
|
|
675
|
-
|
|
676
602
|
/**
|
|
677
603
|
* Sets the subtitle text
|
|
678
604
|
*/
|
|
679
605
|
subtitle: _propTypes.default.node,
|
|
680
|
-
|
|
681
606
|
/**
|
|
682
607
|
* Sets the title text
|
|
683
608
|
*/
|