@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
@@ -1,32 +1,29 @@
|
|
1
1
|
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
2
|
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
3
3
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
4
|
-
|
5
4
|
//
|
6
5
|
// Copyright IBM Corp. 2021, 2021
|
7
6
|
//
|
8
7
|
// This source code is licensed under the Apache-2.0 license found in the
|
9
8
|
// LICENSE file in the root directory of this source tree.
|
10
9
|
//
|
11
|
-
var _require = require('child_process'),
|
12
|
-
execFileSync = _require.execFileSync;
|
13
10
|
|
11
|
+
var _require = require('child_process'),
|
12
|
+
execFileSync = _require.execFileSync;
|
14
13
|
var _require2 = require('path'),
|
15
|
-
|
16
|
-
|
14
|
+
resolve = _require2.resolve;
|
17
15
|
var r = function r(file) {
|
18
16
|
return resolve(__dirname, file);
|
19
17
|
};
|
20
|
-
|
21
18
|
var loadPath1 = r('../../../../node_modules');
|
22
19
|
var loadPath2 = r('../../../../../../node_modules');
|
20
|
+
|
23
21
|
/**
|
24
22
|
* Check that an SCSS file compiles correctly. This function does not return
|
25
23
|
* a value, but if the SCSS file does not compile it will throw an Error
|
26
24
|
* containing details of the compilation failure.
|
27
25
|
* @param {string} file fully qualified file name of the SCSS file to check.
|
28
26
|
*/
|
29
|
-
|
30
27
|
export var scssCheck = function scssCheck(file) {
|
31
28
|
// We use the sass cli because this is currently much faster than using
|
32
29
|
// the API owing to the overhead of @import resolution through the API.
|
@@ -36,16 +33,17 @@ export var scssCheck = function scssCheck(file) {
|
|
36
33
|
stdio: ['ignore', 'ignore', 'pipe']
|
37
34
|
});
|
38
35
|
};
|
36
|
+
|
39
37
|
/**
|
40
38
|
* Compile an SCSS file, and return the compiled CSS as a String. If the SCSS
|
41
39
|
* file does not compile this function will throw an Error containing details
|
42
40
|
* of the compilation failure.
|
43
41
|
* @param {string} file fully qualified file name of the SCSS file to compile.
|
44
42
|
*/
|
45
|
-
|
46
43
|
export var scssCompile = function scssCompile(file) {
|
47
44
|
var compressed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
48
|
-
return (
|
45
|
+
return (
|
46
|
+
// We use the sass cli because this is currently much faster than using
|
49
47
|
// the API owing to the overhead of @import resolution through the API.
|
50
48
|
// When the sass API is revised it may be feasible to switch back to
|
51
49
|
// using the API for SCSS compilation and checking.
|
@@ -55,6 +53,7 @@ export var scssCompile = function scssCompile(file) {
|
|
55
53
|
}).toString()
|
56
54
|
);
|
57
55
|
};
|
56
|
+
|
58
57
|
/**
|
59
58
|
* A helper function to mock properties of the HTML element prototype.
|
60
59
|
* @param {*} options An object containing one or more properties, being the
|
@@ -69,19 +68,17 @@ export var scssCompile = function scssCompile(file) {
|
|
69
68
|
* This function should be called after tests in order not to pollute other
|
70
69
|
* tests with the installed mocks.
|
71
70
|
*/
|
72
|
-
|
73
71
|
var hep = HTMLElement.prototype;
|
74
72
|
export var mockHTMLElement = function mockHTMLElement(options) {
|
75
73
|
var originals = {};
|
76
|
-
|
77
74
|
for (var option in options) {
|
78
75
|
originals[option] = Object.getOwnPropertyDescriptor(hep, option);
|
79
|
-
Object.defineProperty(hep, option,
|
76
|
+
Object.defineProperty(hep, option,
|
77
|
+
// Ensure we'll be able to restore or delete the property later
|
80
78
|
Object.assign({}, options[option], {
|
81
79
|
configurable: true
|
82
80
|
}));
|
83
81
|
}
|
84
|
-
|
85
82
|
return {
|
86
83
|
mockRestore: function mockRestore() {
|
87
84
|
for (var _option in options) {
|
@@ -93,20 +90,22 @@ export var mockHTMLElement = function mockHTMLElement(options) {
|
|
93
90
|
}
|
94
91
|
}
|
95
92
|
};
|
96
|
-
};
|
97
|
-
// match element to an expect matcher
|
93
|
+
};
|
98
94
|
|
95
|
+
// a utility function used by expectWarn/Error to convert an argument
|
96
|
+
// match element to an expect matcher
|
99
97
|
var makeMatcher = function makeMatcher(arg) {
|
100
98
|
return typeof arg === 'string' ? expect.stringContaining(arg) : arg instanceof RegExp ? expect.stringMatching(arg) : arg;
|
101
|
-
};
|
102
|
-
// match or an array of argument matches to an array of expect matchers
|
103
|
-
|
99
|
+
};
|
104
100
|
|
101
|
+
// a utility function used by expectWarn/Error to convert a single argument
|
102
|
+
// match or an array of argument matches to an array of expect matchers
|
105
103
|
var makeMatcherArray = function makeMatcherArray(args) {
|
106
104
|
return Array.isArray(args) ? args.map(function (arg) {
|
107
105
|
return makeMatcher(arg);
|
108
106
|
}) : [makeMatcher(args)];
|
109
107
|
};
|
108
|
+
|
110
109
|
/**
|
111
110
|
* A helper function to enable a test to expect a single call to
|
112
111
|
* console.warn, for example when intentionally using a deprecated prop
|
@@ -120,57 +119,45 @@ var makeMatcherArray = function makeMatcherArray(args) {
|
|
120
119
|
* @param {Function} test the test function to call, during which the call to
|
121
120
|
* console.warn will be expected.
|
122
121
|
*/
|
123
|
-
|
124
|
-
|
125
122
|
export var expectWarn = function expectWarn(message, test) {
|
126
123
|
var _expect;
|
127
|
-
|
128
124
|
var warn = jest.spyOn(console, 'warn').mockImplementation(jest.fn());
|
129
125
|
var result = test();
|
130
126
|
expect(warn).toBeCalledTimes(1);
|
131
|
-
|
132
127
|
(_expect = expect(warn)).toHaveBeenCalledWith.apply(_expect, _toConsumableArray(makeMatcherArray(message)));
|
133
|
-
|
134
128
|
warn.mockRestore();
|
135
129
|
return result;
|
136
130
|
};
|
131
|
+
|
137
132
|
/**
|
138
133
|
* An async version of expectWarn which awaits the test function and expects the call
|
139
134
|
* to console.warn to have been made.
|
140
135
|
*/
|
141
|
-
|
142
136
|
export var expectWarnAsync = /*#__PURE__*/function () {
|
143
137
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(message, test) {
|
144
138
|
var _expect2;
|
145
|
-
|
146
139
|
var warn;
|
147
140
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
148
|
-
while (1) {
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
warn.mockRestore();
|
161
|
-
|
162
|
-
case 6:
|
163
|
-
case "end":
|
164
|
-
return _context.stop();
|
165
|
-
}
|
141
|
+
while (1) switch (_context.prev = _context.next) {
|
142
|
+
case 0:
|
143
|
+
warn = jest.spyOn(console, 'warn').mockImplementation(jest.fn());
|
144
|
+
_context.next = 3;
|
145
|
+
return test();
|
146
|
+
case 3:
|
147
|
+
expect(warn).toBeCalledTimes(1);
|
148
|
+
(_expect2 = expect(warn)).toHaveBeenCalledWith.apply(_expect2, _toConsumableArray(makeMatcherArray(message)));
|
149
|
+
warn.mockRestore();
|
150
|
+
case 6:
|
151
|
+
case "end":
|
152
|
+
return _context.stop();
|
166
153
|
}
|
167
154
|
}, _callee);
|
168
155
|
}));
|
169
|
-
|
170
156
|
return function expectWarnAsync(_x, _x2) {
|
171
157
|
return _ref.apply(this, arguments);
|
172
158
|
};
|
173
159
|
}();
|
160
|
+
|
174
161
|
/**
|
175
162
|
* A helper function to enable a test to expect multiple calls to
|
176
163
|
* console.warn, for example when intentionally using a deprecated prop
|
@@ -185,29 +172,25 @@ export var expectWarnAsync = /*#__PURE__*/function () {
|
|
185
172
|
* @param {Function} test the test function to call, during which the calls to
|
186
173
|
* console.warn will be expected.
|
187
174
|
*/
|
188
|
-
|
189
175
|
export var expectMultipleWarn = function expectMultipleWarn(messages, test) {
|
190
176
|
var warn = jest.spyOn(console, 'warn').mockImplementation(jest.fn());
|
191
177
|
var result = test();
|
192
178
|
expect(warn).toBeCalledTimes(messages.length);
|
193
179
|
messages.forEach(function (args, index) {
|
194
180
|
var _expect3;
|
195
|
-
|
196
181
|
return (_expect3 = expect(warn)).toHaveBeenNthCalledWith.apply(_expect3, [index + 1].concat(_toConsumableArray(makeMatcherArray(args))));
|
197
182
|
});
|
198
183
|
warn.mockRestore();
|
199
184
|
return result;
|
200
185
|
};
|
201
|
-
|
202
186
|
var checkLogging = function checkLogging(mock, message) {
|
203
187
|
if (message) {
|
204
188
|
var _expect4;
|
205
|
-
|
206
189
|
expect(mock).toBeCalled();
|
207
|
-
|
208
190
|
(_expect4 = expect(mock)).toHaveBeenCalledWith.apply(_expect4, _toConsumableArray(makeMatcherArray(message)));
|
209
191
|
}
|
210
192
|
};
|
193
|
+
|
211
194
|
/**
|
212
195
|
* A helper function to enable a test to expect a single call to
|
213
196
|
* console.error, for example when intentionally omitting a required prop
|
@@ -221,11 +204,9 @@ var checkLogging = function checkLogging(mock, message) {
|
|
221
204
|
* @param {Function} test the test function to call, during which the call to
|
222
205
|
* console.error will be expected.
|
223
206
|
*/
|
224
|
-
|
225
|
-
|
226
207
|
export var expectLogging = function expectLogging(_ref2, test) {
|
227
208
|
var errors = _ref2.errors,
|
228
|
-
|
209
|
+
warnings = _ref2.warnings;
|
229
210
|
var error = jest.spyOn(console, 'error').mockImplementation(jest.fn());
|
230
211
|
var warn = jest.spyOn(console, 'warn').mockImplementation(jest.fn());
|
231
212
|
var result = test();
|
@@ -235,6 +216,7 @@ export var expectLogging = function expectLogging(_ref2, test) {
|
|
235
216
|
warn.mockRestore();
|
236
217
|
return result;
|
237
218
|
};
|
219
|
+
|
238
220
|
/**
|
239
221
|
* A helper function to enable a test to expect a single call to
|
240
222
|
* console.error, for example when intentionally omitting a required prop
|
@@ -248,7 +230,6 @@ export var expectLogging = function expectLogging(_ref2, test) {
|
|
248
230
|
* @param {Function} test the test function to call, during which the call to
|
249
231
|
* console.error will be expected.
|
250
232
|
*/
|
251
|
-
|
252
233
|
export var expectError = function expectError(message, test) {
|
253
234
|
var error = jest.spyOn(console, 'error').mockImplementation(jest.fn());
|
254
235
|
var result = test();
|
@@ -256,6 +237,7 @@ export var expectError = function expectError(message, test) {
|
|
256
237
|
error.mockRestore();
|
257
238
|
return result;
|
258
239
|
};
|
240
|
+
|
259
241
|
/**
|
260
242
|
* A helper function to enable a test to expect multiple calls to
|
261
243
|
* console.warn, for example when intentionally using a deprecated prop
|
@@ -270,51 +252,50 @@ export var expectError = function expectError(message, test) {
|
|
270
252
|
* @param {Function} test the test function to call, during which the calls to
|
271
253
|
* console.error will be expected.
|
272
254
|
*/
|
273
|
-
|
274
255
|
export var expectMultipleError = function expectMultipleError(messages, test) {
|
275
256
|
var error = jest.spyOn(console, 'error').mockImplementation(jest.fn());
|
276
257
|
var result = test();
|
277
258
|
expect(error).toBeCalledTimes(messages.length);
|
278
259
|
messages.forEach(function (args, index) {
|
279
260
|
var _expect5;
|
280
|
-
|
281
261
|
return (_expect5 = expect(error)).toHaveBeenNthCalledWith.apply(_expect5, [index + 1].concat(_toConsumableArray(makeMatcherArray(args))));
|
282
262
|
});
|
283
263
|
error.mockRestore();
|
284
264
|
return result;
|
285
265
|
};
|
266
|
+
|
286
267
|
/**
|
287
268
|
* Return an expect matcher for a prop deprecation, suitable to pass to expectWarn
|
288
269
|
* or expectMultipleWarn.
|
289
270
|
* @param {string} propName the prop name that is deprecated, or a matching regex
|
290
271
|
* @param {string} componentName the component name on which the prop is defined, or a matching regex
|
291
272
|
*/
|
292
|
-
|
293
273
|
export var deprecated = function deprecated(propName, componentName) {
|
294
274
|
var additionalInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
295
275
|
return expect.stringMatching(new RegExp("^The prop `".concat(propName, "` of `").concat(componentName, "` has been deprecated and will soon be removed. ").concat(additionalInfo)));
|
296
276
|
};
|
277
|
+
|
297
278
|
/**
|
298
279
|
* Return an expect matcher for a prop usage deprecation, suitable to pass to expectWarn
|
299
280
|
* or expectMultipleWarn.
|
300
281
|
* @param {string} propName the prop name whose usage has changed
|
301
282
|
* @param {string} componentName the component name on which the prop is defined
|
302
283
|
*/
|
303
|
-
|
304
284
|
export var deprecatedUsage = function deprecatedUsage(propName, componentName) {
|
305
285
|
var additionalInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
306
286
|
return expect.stringMatching(new RegExp("^The usage of the prop `".concat(propName, "` of `").concat(componentName, "` has been changed and support for the old usage will soon be removed. ").concat(additionalInfo)));
|
307
287
|
};
|
288
|
+
|
308
289
|
/**
|
309
290
|
* Return an expect matcher for a missing required prop, suitable to pass to expectError
|
310
291
|
* or expectMultipleError.
|
311
292
|
* @param {string} propName the prop name that is required, or a matching regex
|
312
293
|
* @param {string} componentName the component name on which the prop is defined, or a matching regex
|
313
294
|
*/
|
314
|
-
|
315
295
|
export var required = function required(propName, componentName) {
|
316
296
|
return expect.stringMatching(new RegExp("^Warning: Failed prop type: The prop `".concat(propName, "` is marked as required in `").concat(componentName, "`, but its value is `(.*)`.")));
|
317
297
|
};
|
298
|
+
|
318
299
|
/**
|
319
300
|
* Return an expect matcher for an invalid prop, suitable to pass to expectError
|
320
301
|
* or expectMultipleError.
|
@@ -323,7 +304,6 @@ export var required = function required(propName, componentName) {
|
|
323
304
|
* @param {string} suppliedType the type that is being supplied, or a matching regex
|
324
305
|
* @param {string} expectedType the type that is expected, or a matching regex
|
325
306
|
*/
|
326
|
-
|
327
307
|
export var invalid = function invalid(propName, componentName, suppliedType, expectedType) {
|
328
308
|
return expect.stringMatching(new RegExp("^Warning: Failed prop type: Invalid prop `".concat(propName, "` of type `").concat(suppliedType, "` supplied to `").concat(componentName, "`, expected `").concat(expectedType, "`.")));
|
329
309
|
};
|
@@ -1,15 +1,12 @@
|
|
1
1
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
2
|
-
|
3
2
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
4
|
-
|
5
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
6
|
-
|
3
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
7
4
|
import React from 'react';
|
5
|
+
|
8
6
|
/**
|
9
7
|
* unwrapIfFragment - walks the passed children unwrapping fragments
|
10
8
|
* to create a flat array of all children
|
11
9
|
*/
|
12
|
-
|
13
10
|
var unwrapIfFragment = function unwrapIfFragment(children) {
|
14
11
|
// When passed one of the following
|
15
12
|
// - A fragment with zero or more children *1
|
@@ -18,19 +15,15 @@ var unwrapIfFragment = function unwrapIfFragment(children) {
|
|
18
15
|
// *1 - The children of the above can be any of the above
|
19
16
|
// Outputs - A flat array of child nodes
|
20
17
|
var newChildArray = [];
|
21
|
-
|
22
18
|
var isFragment = function isFragment(item) {
|
23
19
|
return item && item.type === React.Fragment;
|
24
20
|
};
|
25
|
-
|
26
21
|
var addChildren = function addChildren(children) {
|
27
22
|
var loopOver = function loopOver(children) {
|
28
23
|
// children may be a single item
|
29
24
|
var _children = Array.isArray(children) ? children : [children];
|
30
|
-
|
31
25
|
var _iterator = _createForOfIteratorHelper(_children),
|
32
|
-
|
33
|
-
|
26
|
+
_step;
|
34
27
|
try {
|
35
28
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
36
29
|
var child = _step.value;
|
@@ -41,13 +34,12 @@ var unwrapIfFragment = function unwrapIfFragment(children) {
|
|
41
34
|
} finally {
|
42
35
|
_iterator.f();
|
43
36
|
}
|
44
|
-
};
|
45
|
-
|
37
|
+
};
|
46
38
|
|
39
|
+
// children is nothing, one fragment, array with one or more children, or a single item
|
47
40
|
if (!children) {
|
48
41
|
return;
|
49
42
|
}
|
50
|
-
|
51
43
|
if (isFragment(children)) {
|
52
44
|
loopOver(children.props.children);
|
53
45
|
} else {
|
@@ -57,15 +49,15 @@ var unwrapIfFragment = function unwrapIfFragment(children) {
|
|
57
49
|
newChildArray.push(children);
|
58
50
|
}
|
59
51
|
}
|
60
|
-
};
|
61
|
-
|
52
|
+
};
|
62
53
|
|
63
|
-
|
54
|
+
// nothing, one fragment, array with one or more children, or a single item
|
55
|
+
addChildren(children);
|
64
56
|
|
57
|
+
// wrapping with React.Children caters for any missing keys
|
65
58
|
var keyedChildren = React.Children.map(newChildArray, function (child) {
|
66
59
|
return child;
|
67
60
|
});
|
68
61
|
return keyedChildren;
|
69
62
|
};
|
70
|
-
|
71
63
|
export default unwrapIfFragment;
|
@@ -1,12 +1,11 @@
|
|
1
1
|
// https://stackoverflow.com/a/2117523
|
2
|
+
|
2
3
|
function uuidv4() {
|
3
4
|
var randomValues = function randomValues(c) {
|
4
5
|
return typeof crypto !== 'undefined' ? crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4 : Math.random() * 16 >> c / 4;
|
5
6
|
};
|
6
|
-
|
7
7
|
return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
|
8
8
|
return (c ^ randomValues(c)).toString(16);
|
9
9
|
});
|
10
10
|
}
|
11
|
-
|
12
11
|
export default uuidv4;
|
@@ -5,7 +5,7 @@ describe('uuidv4', function () {
|
|
5
5
|
});
|
6
6
|
it('Uses Math.random when window is not defined', function () {
|
7
7
|
var _window = window,
|
8
|
-
|
8
|
+
crypto = _window.crypto;
|
9
9
|
delete window.crypto;
|
10
10
|
var mockMath = Object.create(global.Math);
|
11
11
|
var mockMathRandom = jest.fn().mockReturnValue(0.5);
|
@@ -4,23 +4,24 @@
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
6
6
|
*/
|
7
|
+
|
7
8
|
import { DOCUMENT_POSITION_BROAD_PRECEDING, DOCUMENT_POSITION_BROAD_FOLLOWING, selectorTabbable } from './keyboardNavigation';
|
8
9
|
import { carbon } from '../../../settings';
|
10
|
+
|
9
11
|
/**
|
10
12
|
* @param {Node} node A DOM node.
|
11
13
|
* @param {string[]} selectorsFloatingMenus The CSS selectors that matches floating menus.
|
12
14
|
* @returns {boolean} `true` of the given `node` is in a floating menu.
|
13
15
|
*/
|
14
|
-
|
15
16
|
function elementOrParentIsFloatingMenu(node) {
|
16
17
|
var selectorsFloatingMenus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [".".concat(carbon.prefix, "--overflow-menu-options"), ".".concat(carbon.prefix, "--tooltip"), '.flatpickr-calendar'];
|
17
|
-
|
18
18
|
if (node && typeof node.closest === 'function') {
|
19
19
|
return selectorsFloatingMenus.some(function (selector) {
|
20
20
|
return node.closest(selector);
|
21
21
|
});
|
22
22
|
}
|
23
23
|
}
|
24
|
+
|
24
25
|
/**
|
25
26
|
* Ensures the focus is kept in the given `modalNode`, implementing "focus-wrap" behavior.
|
26
27
|
* @param {object} options The options.
|
@@ -31,26 +32,21 @@ function elementOrParentIsFloatingMenu(node) {
|
|
31
32
|
* @param {Node} options.oldActiveNode The DOM node that previously had focus.
|
32
33
|
* @param {Node} [options.selectorsFloatingMenus] The CSS selectors that matches floating menus
|
33
34
|
*/
|
34
|
-
|
35
|
-
|
36
35
|
function wrapFocus(_ref) {
|
37
36
|
var bodyNode = _ref.bodyNode,
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
37
|
+
startTrapNode = _ref.startTrapNode,
|
38
|
+
endTrapNode = _ref.endTrapNode,
|
39
|
+
currentActiveNode = _ref.currentActiveNode,
|
40
|
+
oldActiveNode = _ref.oldActiveNode,
|
41
|
+
selectorsFloatingMenus = _ref.selectorsFloatingMenus;
|
44
42
|
if (bodyNode && currentActiveNode && oldActiveNode && !bodyNode.contains(currentActiveNode) && !elementOrParentIsFloatingMenu(currentActiveNode, selectorsFloatingMenus)) {
|
45
43
|
var comparisonResult = oldActiveNode.compareDocumentPosition(currentActiveNode);
|
46
|
-
|
47
44
|
if (currentActiveNode === startTrapNode || comparisonResult & DOCUMENT_POSITION_BROAD_PRECEDING) {
|
48
45
|
var arrayNodes = Array.from(bodyNode.querySelectorAll(selectorTabbable));
|
49
46
|
arrayNodes.reverse();
|
50
47
|
var tabbable = arrayNodes.find(function (elem) {
|
51
48
|
return Boolean(elem.offsetParent);
|
52
49
|
});
|
53
|
-
|
54
50
|
if (tabbable) {
|
55
51
|
tabbable.focus();
|
56
52
|
} else if (bodyNode !== oldActiveNode) {
|
@@ -60,7 +56,6 @@ function wrapFocus(_ref) {
|
|
60
56
|
var _tabbable = Array.prototype.find.call(bodyNode.querySelectorAll(selectorTabbable), function (elem) {
|
61
57
|
return Boolean(elem.offsetParent);
|
62
58
|
});
|
63
|
-
|
64
59
|
if (_tabbable) {
|
65
60
|
_tabbable.focus();
|
66
61
|
} else if (bodyNode !== oldActiveNode) {
|
@@ -69,6 +64,5 @@ function wrapFocus(_ref) {
|
|
69
64
|
}
|
70
65
|
}
|
71
66
|
}
|
72
|
-
|
73
67
|
export { elementOrParentIsFloatingMenu };
|
74
68
|
export default wrapFocus;
|
package/es/index.js
CHANGED
package/es/settings.js
CHANGED
@@ -7,74 +7,73 @@ export var carbon = {
|
|
7
7
|
get themes() {
|
8
8
|
return themes;
|
9
9
|
},
|
10
|
-
|
11
10
|
prefix: 'cds'
|
12
11
|
};
|
13
|
-
|
14
12
|
var componentDeprecatedWarning = function componentDeprecatedWarning(name, details) {
|
15
13
|
return "Carbon for IBM Products (WARNING): Component \"".concat(name, "\" is deprecated. ").concat(details);
|
16
14
|
};
|
17
|
-
|
18
15
|
pkgSettings.logDeprecated = function (component, name) {
|
19
16
|
if (component !== null && component !== void 0 && component.deprecated) {
|
20
17
|
var _pconsole$level;
|
21
|
-
|
22
18
|
var _component$deprecated = component.deprecated,
|
23
|
-
|
24
|
-
|
19
|
+
level = _component$deprecated.level,
|
20
|
+
details = _component$deprecated.details;
|
25
21
|
var logUsing = (_pconsole$level = pconsole === null || pconsole === void 0 ? void 0 : pconsole[level]) !== null && _pconsole$level !== void 0 ? _pconsole$level : pconsole.error;
|
26
22
|
logUsing(componentDeprecatedWarning(name || component.displayName, details));
|
27
23
|
}
|
28
|
-
};
|
24
|
+
};
|
25
|
+
|
26
|
+
// Check that a component is enabled. This function returns a stub which checks
|
29
27
|
// the component status on first use and then renders as the component or as
|
30
28
|
// a Canary placeholder initialized with the name of the replaced component.
|
31
29
|
// Note that the returned stub carries any other properties which had already
|
32
30
|
// been assigned (eg propTypes, displayName, etc).
|
33
|
-
|
34
|
-
|
35
31
|
pkgSettings.checkComponentEnabled = function (component, name) {
|
36
32
|
if (component.render) {
|
37
33
|
// The component is a forward-ref, so make a stub forward-ref.
|
38
34
|
var forward = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
39
35
|
pkgSettings.logDeprecated(component, name); // may log don't care about result
|
40
36
|
// Replace the stub's render fn so this test only happens once.
|
41
|
-
|
42
|
-
|
37
|
+
return (forward.render = pkgSettings.isComponentEnabled(name) || !pkgSettings.isComponentPublic(name) ?
|
38
|
+
// If the component is enabled, or if it's not a public component,
|
43
39
|
// replace the stub's render fn with the component's render fn.
|
44
|
-
component.render :
|
40
|
+
component.render :
|
41
|
+
// Note that Canary is a direct render fn (not a forward-ref) and
|
45
42
|
// will ignore the passed props and ref (if any)
|
46
43
|
Canary.bind(undefined, {
|
47
44
|
componentName: name
|
48
|
-
}))(
|
45
|
+
}))(
|
46
|
+
// Call it now (after this it will be directly called).
|
49
47
|
props, ref);
|
50
|
-
});
|
48
|
+
});
|
49
|
+
|
50
|
+
// Transfer object properties already assigned (eg propTypes, displayName)
|
51
51
|
// then merge in the stub forward-ref which checks the component status
|
52
52
|
// when first used.
|
53
|
-
|
54
53
|
return Object.assign({}, component, forward);
|
55
54
|
} else {
|
56
55
|
// The component is a direct render fn, so make a stub render fn.
|
57
56
|
var _render = function render(props) {
|
58
57
|
pkgSettings.logDeprecated(component, name); // may log don't care about result
|
59
58
|
// Replace the stub render fn so this test only happens once.
|
60
|
-
|
61
|
-
|
59
|
+
return (_render = pkgSettings.isComponentEnabled(name) || !pkgSettings.isComponentPublic(name) ?
|
60
|
+
// If the component is enabled, or if it's not a public component,
|
62
61
|
// replace the stub render fn with the component render fn.
|
63
|
-
component :
|
62
|
+
component :
|
63
|
+
// Replace the stub render fn with the Canary render fn, which will
|
64
64
|
// ignore the passed props.
|
65
65
|
Canary.bind(undefined, {
|
66
66
|
componentName: name
|
67
|
-
}))(
|
67
|
+
}))(
|
68
|
+
// Call it now (after this it will be directly called).
|
68
69
|
props);
|
69
|
-
};
|
70
|
+
};
|
71
|
+
// Transfer object properties already assigned (eg propTypes, displayName)
|
70
72
|
// to a function which calls the stub render fn which checks the component
|
71
73
|
// status when first used.
|
72
|
-
|
73
|
-
|
74
74
|
return Object.assign(function (props) {
|
75
75
|
return _render(props);
|
76
76
|
}, component);
|
77
77
|
}
|
78
78
|
};
|
79
|
-
|
80
79
|
export var pkg = pkgSettings;
|