/*! Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ import { LAYOUT_NAME, useLayoutContext } from '../AppLayout/components/layout'; import { Skeletons } from '../../components/skeletons'; import { Stack } from 'aws-northstar'; import HeadingStripe, { HeadingStripeProps } from '../../components/HeadingStripe'; import React, { useEffect } from 'react'; interface BasePageLayoutProps extends Partial { /** * Render with out page "chrome" (container, headers, etc) */ layout?: LAYOUT_NAME; isLoading?: boolean; } export type PageLayoutProps = Partial; export const PageLayout: React.FC = ({ children, layout = 'default', isLoading, title, subtitle, actionButtons, }) => { const { setLayout } = useLayoutContext(); useEffect(() => { setLayout(layout); }, [layout, setLayout]); if (layout === 'chromeless' || layout === 'wizard') { return <>{children}; } if (isLoading) { return ; } return ( {children} ); };