diff --git a/.changeset/smooth-bats-jump.md b/.changeset/smooth-bats-jump.md new file mode 100644 index 00000000000..a7e6f64b623 --- /dev/null +++ b/.changeset/smooth-bats-jump.md @@ -0,0 +1,5 @@ +--- +'@shopify/polaris': patch +--- + +[Page] prevent vertical content shift of header with metadata and actions diff --git a/polaris-react/src/components/Page/Page.stories.tsx b/polaris-react/src/components/Page/Page.stories.tsx index adcf16fcbb2..c0154af001d 100644 --- a/polaris-react/src/components/Page/Page.stories.tsx +++ b/polaris-react/src/components/Page/Page.stories.tsx @@ -1,20 +1,20 @@ import React from 'react'; import type {ComponentMeta} from '@storybook/react'; import { - DeleteMinor, - PlusMinor, ArrowDownMinor, + DeleteMinor, ExternalMinor, - ViewMinor, MobileVerticalDotsMajor, + PlusMinor, + ViewMinor, } from '@shopify/polaris-icons'; import { Badge, Button, LegacyCard, + LegacyStack, Page, PageActions, - LegacyStack, } from '@shopify/polaris'; export default { @@ -346,3 +346,31 @@ export function WithContentAfterTitle() { ); } + +export function WithContentAfterTitleAndSubtitle() { + return ( + + All locations + + } + subtitle="Created: May 3, 2019 to June 2, 2019" + primaryAction={{content: 'Save', disabled: true}} + secondaryActions={[ + {content: 'Duplicate'}, + {content: 'View on your store'}, + ]} + pagination={{ + hasPrevious: true, + hasNext: true, + }} + > + +

Credit card information

+
+
+ ); +} diff --git a/polaris-react/src/components/Page/components/Header/components/Title/Title.scss b/polaris-react/src/components/Page/components/Header/components/Title/Title.scss index ff53c322e6b..9c7ce334072 100644 --- a/polaris-react/src/components/Page/components/Header/components/Title/Title.scss +++ b/polaris-react/src/components/Page/components/Header/components/Title/Title.scss @@ -6,22 +6,13 @@ font-weight: var(--p-font-weight-bold); font-size: var(--p-font-size-500); line-height: var(--p-font-line-height-600); -} - -.TitleWithSubtitle { - margin-top: 0; -} -.SubTitle { - margin-top: var(--p-space-050); - color: var(--p-color-text-secondary); - - &.SubtitleCompact { - margin-top: var(--p-space-050); + &.TitleWithSubtitle { + margin-top: 0; } } -.TitleWithMetadataWrapper { +.TitleWrapper { display: flex; flex-wrap: wrap; align-items: center; @@ -37,9 +28,13 @@ display: inline; } } +} - .TitleMetadata { - margin-top: 0; - vertical-align: bottom; +.SubTitle { + margin-top: var(--p-space-050); + color: var(--p-color-text-secondary); + + &.SubtitleCompact { + margin-top: var(--p-space-050); } } diff --git a/polaris-react/src/components/Page/components/Header/components/Title/Title.tsx b/polaris-react/src/components/Page/components/Header/components/Title/Title.tsx index 00d6149a5c8..b3f2e0f9ebf 100644 --- a/polaris-react/src/components/Page/components/Header/components/Title/Title.tsx +++ b/polaris-react/src/components/Page/components/Header/components/Title/Title.tsx @@ -1,6 +1,7 @@ import React from 'react'; import {classNames} from '../../../../../../utilities/css'; +import {Bleed} from '../../../../../Bleed'; import {Text} from '../../../../../Text'; import styles from './Title.scss'; @@ -30,16 +31,14 @@ export function Title({ const titleMarkup = title ?

{title}

: null; const titleMetadataMarkup = titleMetadata ? ( -
{titleMetadata}
+ {titleMetadata} ) : null; - const wrappedTitleMarkup = titleMetadata ? ( -
+ const wrappedTitleMarkup = ( +
{titleMarkup} {titleMetadataMarkup}
- ) : ( - titleMarkup ); const subtitleMarkup = subtitle ? (