Skip to content

Commit 152138d

Browse files
committed
Fix Showcase Layout
1 parent eba63c4 commit 152138d

File tree

1 file changed

+74
-80
lines changed

1 file changed

+74
-80
lines changed

dotcom-rendering/src/layouts/ShowcaseLayout.tsx

Lines changed: 74 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import { css } from '@emotion/react';
22
import { isUndefined } from '@guardian/libs';
3+
import { StraightLines } from '@guardian/source-development-kitchen/react-components';
34
import {
45
from,
56
palette as sourcePalette,
67
until,
78
} from '@guardian/source/foundations';
8-
import { Hide } from '@guardian/source/react-components';
9-
import { StraightLines } from '@guardian/source-development-kitchen/react-components';
109
import { AdPortals } from '../components/AdPortals.importable';
1110
import { AdSlot, MobileStickyContainer } from '../components/AdSlot.web';
1211
import { AffiliateDisclaimer } from '../components/AffiliateDisclaimer';
@@ -55,7 +54,13 @@ import type { ArticleDeprecated } from '../types/article';
5554
import type { RenderingTarget } from '../types/renderingTarget';
5655
import { BannerWrapper, Stuck } from './lib/stickiness';
5756

58-
const ShowcaseGrid = ({ children }: { children: React.ReactNode }) => (
57+
const ShowcaseGrid = ({
58+
children,
59+
renderingTarget,
60+
}: {
61+
children: React.ReactNode;
62+
renderingTarget: RenderingTarget;
63+
}) => (
5964
<div
6065
css={css`
6166
/* IE Fallback */
@@ -75,6 +80,12 @@ const ShowcaseGrid = ({ children }: { children: React.ReactNode }) => (
7580
display: grid;
7681
width: 100%;
7782
margin-left: 0;
83+
${renderingTarget === 'Apps' &&
84+
css`
85+
${from.leftCol} {
86+
margin-left: 270px;
87+
}
88+
`}
7889
7990
grid-column-gap: 10px;
8091
@@ -87,32 +98,52 @@ const ShowcaseGrid = ({ children }: { children: React.ReactNode }) => (
8798
Right Column
8899
89100
*/
90-
${from.wide} {
91-
grid-template-columns: 219px 1px 620px 80px 300px;
92-
grid-template-areas:
93-
'title border headline headline headline'
94-
'meta border media media media'
95-
'meta border standfirst . right-column'
96-
'meta border body . right-column'
97-
'. border . . right-column';
98-
}
99-
100-
${until.wide} {
101-
grid-template-columns: 140px 1px 620px 300px;
102-
grid-template-areas:
103-
'title border headline headline'
104-
'meta border media media'
105-
'meta border standfirst right-column'
106-
'meta border body right-column'
107-
'. border . right-column';
108-
}
101+
${renderingTarget === 'Web' &&
102+
css`
103+
${from.wide} {
104+
grid-template-columns: 219px 1px 620px 80px 300px;
105+
grid-template-areas:
106+
'title border headline headline headline'
107+
'meta border media media media'
108+
'meta border standfirst . right-column'
109+
'meta border body . right-column'
110+
'. border . . right-column';
111+
}
112+
113+
${until.wide} {
114+
grid-template-columns: 140px 1px 620px 300px;
115+
grid-template-areas:
116+
'title border headline headline'
117+
'meta border media media'
118+
'meta border standfirst right-column'
119+
'meta border body right-column'
120+
'. border . right-column';
121+
}
122+
`}
109123
110124
/*
111125
Explanation of each unit of grid-template-columns
112126
113127
Main content
114128
Right Column
115129
*/
130+
131+
132+
/* Apply until.leftCol layout from leftCol for Apps targets */
133+
${renderingTarget === 'Apps' &&
134+
css`
135+
${from.leftCol} {
136+
grid-template-columns: 620px 300px;
137+
grid-template-areas:
138+
'title right-column'
139+
'headline right-column'
140+
'standfirst right-column'
141+
'media right-column'
142+
'meta right-column'
143+
'body right-column'
144+
'. right-column';
145+
}
146+
`}
116147
${until.leftCol} {
117148
grid-template-columns: 620px 300px;
118149
grid-template-areas:
@@ -362,7 +393,7 @@ export const ShowcaseLayout = (props: WebProps | AppsProps) => {
362393
element="article"
363394
borderColour={themePalette('--article-border')}
364395
>
365-
<ShowcaseGrid>
396+
<ShowcaseGrid renderingTarget={renderingTarget}>
366397
<GridItem area="media">
367398
<div css={mainMediaWrapper}>
368399
<MainMedia
@@ -430,62 +461,24 @@ export const ShowcaseLayout = (props: WebProps | AppsProps) => {
430461
</div>
431462
<div css={[maxWidth, fullHeight]}>
432463
{isApps ? (
433-
<>
434-
<Hide from="leftCol">
435-
<ArticleMetaApps
436-
branding={branding}
437-
format={format}
438-
byline={article.byline}
439-
tags={article.tags}
440-
primaryDateline={
441-
article.webPublicationDateDisplay
442-
}
443-
secondaryDateline={
444-
article.webPublicationSecondaryDateDisplay
445-
}
446-
isCommentable={
447-
article.isCommentable
448-
}
449-
discussionApiUrl={
450-
article.config
451-
.discussionApiUrl
452-
}
453-
shortUrlId={
454-
article.config.shortUrlId
455-
}
456-
pageId={article.config.pageId}
457-
></ArticleMetaApps>
458-
</Hide>
459-
<Hide until="leftCol">
460-
<ArticleMeta
461-
branding={branding}
462-
format={format}
463-
pageId={article.pageId}
464-
webTitle={article.webTitle}
465-
byline={article.byline}
466-
tags={article.tags}
467-
primaryDateline={
468-
article.webPublicationDateDisplay
469-
}
470-
secondaryDateline={
471-
article.webPublicationSecondaryDateDisplay
472-
}
473-
isCommentable={
474-
article.isCommentable
475-
}
476-
discussionApiUrl={
477-
article.config
478-
.discussionApiUrl
479-
}
480-
shortUrlId={
481-
article.config.shortUrlId
482-
}
483-
/>
484-
{!!article.affiliateLinksDisclaimer && (
485-
<AffiliateDisclaimer />
486-
)}
487-
</Hide>
488-
</>
464+
<ArticleMetaApps
465+
branding={branding}
466+
format={format}
467+
byline={article.byline}
468+
tags={article.tags}
469+
primaryDateline={
470+
article.webPublicationDateDisplay
471+
}
472+
secondaryDateline={
473+
article.webPublicationSecondaryDateDisplay
474+
}
475+
isCommentable={article.isCommentable}
476+
discussionApiUrl={
477+
article.config.discussionApiUrl
478+
}
479+
shortUrlId={article.config.shortUrlId}
480+
pageId={article.config.pageId}
481+
></ArticleMetaApps>
489482
) : (
490483
<>
491484
<ArticleMeta
@@ -622,7 +615,8 @@ export const ShowcaseLayout = (props: WebProps | AppsProps) => {
622615
margin-left: 20px;
623616
margin-right: -20px;
624617
}
625-
${from.leftCol} {
618+
${renderingTarget !== 'Apps' &&
619+
from.leftCol} {
626620
/* above 1140 */
627621
margin-left: 0px;
628622
margin-right: 0px;

0 commit comments

Comments
 (0)