diff --git a/packages/react-core/src/components/Nav/NavExpandable.tsx b/packages/react-core/src/components/Nav/NavExpandable.tsx index c79e8d2f4f1..74ec1e523fe 100644 --- a/packages/react-core/src/components/Nav/NavExpandable.tsx +++ b/packages/react-core/src/components/Nav/NavExpandable.tsx @@ -125,13 +125,13 @@ export class NavExpandable extends React.Component - {({ isNavOpen }) => ( + {({ isSidebarOpen }) => ( @@ -136,7 +136,7 @@ export class NavList extends React.Component { aria-label={ariaRightScroll} onClick={this.scrollRight} disabled={scrollViewAtEnd} - tabIndex={isNavOpen ? null : -1} + tabIndex={isSidebarOpen ? null : -1} > diff --git a/packages/react-core/src/components/Page/Page.tsx b/packages/react-core/src/components/Page/Page.tsx index 86f5bf07cf6..8128a04df0f 100644 --- a/packages/react-core/src/components/Page/Page.tsx +++ b/packages/react-core/src/components/Page/Page.tsx @@ -40,8 +40,8 @@ export interface PageProps extends React.HTMLProps { /** tabIndex to use for the [role="main"] element, null to unset it */ mainTabIndex?: number | null; /** - * If true, manages the sidebar open/close state and there is no need to pass the isNavOpen boolean into - * the sidebar component or add a callback onNavToggle function into the Masthead component + * If true, manages the sidebar open/close state and there is no need to pass the isSidebarOpen boolean into + * the sidebar component or add a callback onSidebarToggle function into the Masthead component */ isManagedSidebar?: boolean; /** Flag indicating if tertiary nav width should be limited */ @@ -51,7 +51,7 @@ export interface PageProps extends React.HTMLProps { */ defaultManagedSidebarIsOpen?: boolean; /** - * Can add callback to be notified when resize occurs, for example to set the sidebar isNav prop to false for a width < 768px + * Can add callback to be notified when resize occurs, for example to set the sidebar isSidebarOpen prop to false for a width < 768px * Returns object { mobileView: boolean, windowSize: number } */ onPageResize?: ((object: any) => void) | null; @@ -88,8 +88,8 @@ export interface PageProps extends React.HTMLProps { } export interface PageState { - desktopIsNavOpen: boolean; - mobileIsNavOpen: boolean; + desktopIsSidebarOpen: boolean; + mobileIsSidebarOpen: boolean; mobileView: boolean; width: number; height: number; @@ -117,8 +117,8 @@ export class Page extends React.Component { const { isManagedSidebar, defaultManagedSidebarIsOpen } = props; const managedSidebarOpen = !isManagedSidebar ? true : defaultManagedSidebarIsOpen; this.state = { - desktopIsNavOpen: managedSidebarOpen, - mobileIsNavOpen: false, + desktopIsSidebarOpen: managedSidebarOpen, + mobileIsSidebarOpen: false, mobileView: false, width: null, height: null @@ -188,20 +188,20 @@ export class Page extends React.Component { handleResize = debounce(this.resize, 250); handleMainClick = () => { - if (this.isMobile() && this.state.mobileIsNavOpen && this.mainRef.current) { - this.setState({ mobileIsNavOpen: false }); + if (this.isMobile() && this.state.mobileIsSidebarOpen && this.mainRef.current) { + this.setState({ mobileIsSidebarOpen: false }); } }; - onNavToggleMobile = () => { - this.setState(prevState => ({ - mobileIsNavOpen: !prevState.mobileIsNavOpen + onSidebarToggleMobile = () => { + this.setState((prevState) => ({ + mobileIsSidebarOpen: !prevState.mobileIsSidebarOpen })); }; - onNavToggleDesktop = () => { - this.setState(prevState => ({ - desktopIsNavOpen: !prevState.desktopIsNavOpen + onSidebarToggleDesktop = () => { + this.setState((prevState) => ({ + desktopIsSidebarOpen: !prevState.desktopIsSidebarOpen })); }; @@ -237,12 +237,12 @@ export class Page extends React.Component { breadcrumbProps, ...rest } = this.props; - const { mobileView, mobileIsNavOpen, desktopIsNavOpen, width, height } = this.state; + const { mobileView, mobileIsSidebarOpen, desktopIsSidebarOpen, width, height } = this.state; const context = { isManagedSidebar, - onNavToggle: mobileView ? this.onNavToggleMobile : this.onNavToggleDesktop, - isNavOpen: mobileView ? mobileIsNavOpen : desktopIsNavOpen, + onSidebarToggle: mobileView ? this.onSidebarToggleMobile : this.onSidebarToggleDesktop, + isSidebarOpen: mobileView ? mobileIsSidebarOpen : desktopIsSidebarOpen, width, height, getBreakpoint, diff --git a/packages/react-core/src/components/Page/PageContext.tsx b/packages/react-core/src/components/Page/PageContext.tsx index 50765ab888c..c3d17dd4489 100644 --- a/packages/react-core/src/components/Page/PageContext.tsx +++ b/packages/react-core/src/components/Page/PageContext.tsx @@ -3,8 +3,8 @@ import { getBreakpoint, getVerticalBreakpoint } from '../../helpers/util'; export interface PageContextProps { isManagedSidebar: boolean; - onNavToggle: () => void; - isNavOpen: boolean; + onSidebarToggle: () => void; + isSidebarOpen: boolean; width: number; height: number; getBreakpoint: (width: number | null) => 'default' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'; @@ -13,8 +13,8 @@ export interface PageContextProps { export const pageContextDefaults: PageContextProps = { isManagedSidebar: false, - isNavOpen: false, - onNavToggle: () => null, + isSidebarOpen: false, + onSidebarToggle: () => null, width: null, height: null, getBreakpoint, diff --git a/packages/react-core/src/components/Page/PageSidebar.tsx b/packages/react-core/src/components/Page/PageSidebar.tsx index e7572fbff72..8e5f6a610a9 100644 --- a/packages/react-core/src/components/Page/PageSidebar.tsx +++ b/packages/react-core/src/components/Page/PageSidebar.tsx @@ -6,15 +6,15 @@ import { PageContextConsumer } from './PageContext'; export interface PageSidebarProps extends React.HTMLProps { /** Additional classes added to the page sidebar */ className?: string; - /** Component to render the side navigation (e.g. ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; @@ -140,6 +146,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text @@ -199,7 +206,11 @@ class PageLayoutGroupsNav extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-group-nav'; const PageSkipToContent = Skip to Content; @@ -249,6 +260,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text @@ -318,7 +330,11 @@ class PageLayoutExpandableNav extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-expandable-nav'; const PageSkipToContent = Skip to content; @@ -591,6 +607,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text @@ -644,7 +661,11 @@ class VerticalNavWithSubnav extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; @@ -995,7 +1016,6 @@ import { Page, PageSection, PageSectionVariants, - PageSidebar, SkipToContent, TextContent, Text @@ -1099,6 +1119,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text @@ -1144,7 +1165,11 @@ class PageLayoutLightNav extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-simple-nav'; const PageSkipToContent = Skip to Content; @@ -1204,6 +1229,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text @@ -1389,7 +1415,11 @@ class PageLayoutManualNav extends React.Component { isNavOpen={isMobileView ? isNavOpenMobile : isNavOpenDesktop} /> ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-manual-nav'; const PageSkipToContent = Skip to Content; @@ -1439,6 +1469,7 @@ import { NavList, NavItem, PageSidebar, + PageSidebarBody, PageSection, PageSectionVariants, Menu, @@ -1446,10 +1477,7 @@ import { MenuList, MenuItem } from '@patternfly/react-core'; -import { - PageHeader, - PageHeaderTools, -}from '@patternfly/react-core'; +import { PageHeader, PageHeaderTools } from '@patternfly/react-core'; import DashboardHeader from '@patternfly/react-core/src/demos/examples/DashboardHeader'; class VerticalPage extends React.Component { @@ -1500,8 +1528,8 @@ class VerticalPage extends React.Component { const { activeItem } = this.state; const Sidebar = ( - + - } - /> + + ); return ( diff --git a/packages/react-core/src/demos/NotificationDrawer/NotificationDrawer.md b/packages/react-core/src/demos/NotificationDrawer/NotificationDrawer.md index 226f41334ba..86b8c441560 100644 --- a/packages/react-core/src/demos/NotificationDrawer/NotificationDrawer.md +++ b/packages/react-core/src/demos/NotificationDrawer/NotificationDrawer.md @@ -62,6 +62,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, TextContent, Text, @@ -334,7 +335,11 @@ class BasicNotificationDrawer extends React.Component { {headerToolbar} ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; @@ -605,6 +610,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, SkipToContent, Title, TextContent, @@ -930,7 +936,11 @@ class GroupedNotificationDrawer extends React.Component { {headerToolbar} ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; diff --git a/packages/react-core/src/demos/Wizard/WizardDemo.md b/packages/react-core/src/demos/Wizard/WizardDemo.md index 9b29701b12c..e6c8de0f6bc 100644 --- a/packages/react-core/src/demos/Wizard/WizardDemo.md +++ b/packages/react-core/src/demos/Wizard/WizardDemo.md @@ -34,7 +34,7 @@ class BasicWizardDemo extends React.Component { this.state = { activeItem: 0 }; - this.onNavSelect = result => { + this.onNavSelect = (result) => { this.setState({ activeItem: result.itemId }); @@ -578,7 +578,7 @@ class FullPageWizard extends React.Component { this.state = { activeItem: 0 }; - this.onNavSelect = result => { + this.onNavSelect = (result) => { this.setState({ activeItem: result.itemId }); @@ -645,6 +645,7 @@ import { PageSectionTypes, PageSectionVariants, PageSidebar, + PageSidebarBody, Progress, SkipToContent, Text, @@ -685,7 +686,7 @@ class FullPageWizard extends React.Component { isDrawerExpanded: false }); }; - this.onNavSelect = result => { + this.onNavSelect = (result) => { this.setState({ activeItem: result.itemId }); @@ -728,7 +729,11 @@ class FullPageWizard extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; const PageBreadcrumb = ( @@ -913,6 +918,7 @@ import { PageSectionTypes, PageSectionVariants, PageSidebar, + PageSidebarBody, Progress, SkipToContent, Text, @@ -953,7 +959,7 @@ class FullPageWizard extends React.Component { isDrawerExpanded: false }); }; - this.onNavSelect = result => { + this.onNavSelect = (result) => { this.setState({ activeItem: result.itemId }); @@ -996,7 +1002,11 @@ class FullPageWizard extends React.Component { ); - const Sidebar = ; + const Sidebar = ( + + {PageNav} + + ); const pageId = 'main-content-page-layout-default-nav'; const PageSkipToContent = Skip to content; const PageBreadcrumb = ( diff --git a/packages/react-core/src/demos/examples/DashboardWrapper.js b/packages/react-core/src/demos/examples/DashboardWrapper.js index 1f963b46469..2d213d68821 100644 --- a/packages/react-core/src/demos/examples/DashboardWrapper.js +++ b/packages/react-core/src/demos/examples/DashboardWrapper.js @@ -8,6 +8,7 @@ import { Page, PageSection, PageSidebar, + PageSidebarBody, SkipToContent, Text, TextContent @@ -41,7 +42,7 @@ export default class DashboardWrapper extends React.Component { activeItem: 1 }; - this.onNavSelect = result => { + this.onNavSelect = (result) => { this.setState({ activeItem: result.itemId }); @@ -92,7 +93,11 @@ export default class DashboardWrapper extends React.Component { ); - const _sidebar = ; + const _sidebar = ( + + {PageNav} + + ); const PageSkipToContent = ( Skip to content diff --git a/packages/react-core/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx b/packages/react-core/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx index 696759e5a05..8276204c730 100644 --- a/packages/react-core/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +++ b/packages/react-core/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx @@ -28,6 +28,7 @@ import { PageSection, PageSectionVariants, PageSidebar, + PageSidebarBody, PageToggleButton, Popper, SkipToContent, @@ -149,7 +150,6 @@ export const MastheadWithUtilitiesAndUserDropdownMenu: React.FunctionComponent = }; }, [isOpen, menuRef]); - const toggle = ( Logout ]; - + const headerToolbar = ( @@ -410,7 +410,7 @@ export const MastheadWithUtilitiesAndUserDropdownMenu: React.FunctionComponent = - +