From 8a5e9fb9f64cc2cd93bf5c1466034c63fe67350a Mon Sep 17 00:00:00 2001 From: Peter Zimon Date: Thu, 23 Nov 2023 16:18:59 +0100 Subject: [PATCH] Admin X Design System docs (#19120) refs. https://github.com/TryGhost/Product/issues/4169 - Added Layout documentation to design system - Added note about usage of Toast component --- .../.storybook/preview.tsx | 2 +- .../admin-x-design-system/src/docs/Layout.mdx | 31 ++++++++++++++++++ .../src/docs/assets/page-viewcontainer.png | Bin 0 -> 42495 bytes .../src/global/Toast.stories.tsx | 4 +++ .../src/global/Toast.tsx | 4 +++ 5 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 apps/admin-x-design-system/src/docs/Layout.mdx create mode 100644 apps/admin-x-design-system/src/docs/assets/page-viewcontainer.png diff --git a/apps/admin-x-design-system/.storybook/preview.tsx b/apps/admin-x-design-system/.storybook/preview.tsx index 1aa732fd80..ce01ac67ad 100644 --- a/apps/admin-x-design-system/.storybook/preview.tsx +++ b/apps/admin-x-design-system/.storybook/preview.tsx @@ -59,7 +59,7 @@ const preview: Preview = { options: { storySort: { method: 'alphabetical', - order: ['Welcome', 'Foundations', ['Style Guide', 'Colors', 'Icons', 'ErrorHandling'], 'Global', ['Form', 'Chrome', 'Modal', 'Layout', 'List', 'Table', '*'], 'Settings', ['Setting Section', 'Setting Group', '*'], 'Experimental'], + order: ['Welcome', 'Foundations', ['Style Guide', 'Colors', 'Icons', 'ErrorHandling'], 'Global', ['Form', 'Chrome', 'Modal', 'Layout', ['View Container', 'Page Header', 'Page'], 'List', 'Table', '*'], 'Settings', ['Setting Section', 'Setting Group', '*'], 'Experimental'], }, }, docs: { diff --git a/apps/admin-x-design-system/src/docs/Layout.mdx b/apps/admin-x-design-system/src/docs/Layout.mdx new file mode 100644 index 0000000000..eb5d776f10 --- /dev/null +++ b/apps/admin-x-design-system/src/docs/Layout.mdx @@ -0,0 +1,31 @@ +import { Meta } from '@storybook/blocks'; +import SBPageViewContainer from './assets/page-viewcontainer.png'; + + + +
+ +# Layout + +

The goal of the layout system is to give a simple and flexible framework for pages in the Admin. It allows designs to be focused on primary functions yet stay consistent across the whole app.

+ +### Structure + +Below you can see a the most common Admin screen structure: it consists of a [Page component](/docs/global-layout-page--docs) as the main container of a screen and a `ViewContainer` that sets the typical view boundaries and patterns for consistency. + +#### Page +The purpose of this component is to set up the main container of a page. It defines/restricts scrolling and adds app/page level elements such as search, navigation or the main menu. And ofc. it also holds the contents of a screen. + + +#### ViewContainer +There's no restriction on what [component] should be used as the main contents of a page. However most pages would need similar constraints: setting a maximum width, a streamlined sticky header or the positioning of the primary action and so on. This is the main role of the [ViewContainer component](/docs/global-layout-view-container--docs). + +### Customisation + +It's not mandatory but it's advised to use this structure to maintain consistency as much as possible. The components have a bunch of documented parameters which allows customisation to be used in the current Admin and in future developments. + +
+ +
+ +
\ No newline at end of file diff --git a/apps/admin-x-design-system/src/docs/assets/page-viewcontainer.png b/apps/admin-x-design-system/src/docs/assets/page-viewcontainer.png new file mode 100644 index 0000000000000000000000000000000000000000..903465bfe377425cc63236ab82a73d9fdce344d7 GIT binary patch literal 42495 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 XJ{-Mbbrrj1Jkz^jbiL%N!;}95JD` component to be included in the app. + * The design system already does this so you don't have to — just call `showToast()` in any event and it'll work. + */ const ToastContainer: React.FC = ({...props}) => { return ( <> diff --git a/apps/admin-x-design-system/src/global/Toast.tsx b/apps/admin-x-design-system/src/global/Toast.tsx index 2ca15b19ed..0d7662c69a 100644 --- a/apps/admin-x-design-system/src/global/Toast.tsx +++ b/apps/admin-x-design-system/src/global/Toast.tsx @@ -22,6 +22,10 @@ export interface ToastProps { props?: ShowToastProps; } +/** + * This component uses `react-hot-toast` which requires the `` component to be included in the app. + * The design system already does this so you don't have to — just call `showToast()` in any event and it'll work. + */ const Toast: React.FC = ({ t, children,