Skip to content

Commit 9625767

Browse files
committed
Add stories
1 parent be7a2e9 commit 9625767

File tree

4 files changed

+110
-16
lines changed

4 files changed

+110
-16
lines changed

dotcom-rendering/fixtures/manual/trails.ts

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -605,6 +605,49 @@ export const videoTrails: [DCRFrontCard, DCRFrontCard] = [
605605
},
606606
];
607607

608+
export const newsletterTrails: [DCRFrontCard, DCRFrontCard] = [
609+
{
610+
format: { design: 0, display: 0, theme: 0 },
611+
dataLinkName: 'news | group-0 | card-@4',
612+
url: '/global/2022/sep/20/sign-up-for-the-guide-newsletter-our-free-pop-culture-email',
613+
headline: 'Sign up for a weekly dose of pop culture',
614+
trailText:
615+
'The best new music, film, TV, podcasts and more direct to your inbox, plus hidden gems and reader recommendations',
616+
webPublicationDate: '2022-09-20T10:57:04.000Z',
617+
kickerText: 'The Guide',
618+
isNewsletter: true,
619+
image: {
620+
src: 'https://media.guim.co.uk/ce2e59cfa2ab7db34cba24adbf20910976e55604/0_55_501_401/master/501.jpg',
621+
altText: 'The Guide Newsletter Design',
622+
},
623+
showQuotedHeadline: false,
624+
discussionApiUrl: 'https://discussion.theguardian.com/discussion-api',
625+
isExternalLink: false,
626+
showLivePlayable: false,
627+
isImmersive: false,
628+
},
629+
{
630+
format: { design: 0, display: 0, theme: 0 },
631+
dataLinkName: 'news | group-0 | card-@2',
632+
url: '/info/2024/oct/10/sign-up-for-the-filter-newsletter-our-free-weekly-buying-advice',
633+
headline: 'Sign up our free weekly buying advice newsletter',
634+
trailText:
635+
'Get smart, sustainable shopping advice from the Filter team straight to your inbox, every Sunday<br><br>The Guardian’s journalism is independent. We will earn a commission if you buy something through an affiliate link.',
636+
webPublicationDate: '2024-10-10T10:30:16.000Z',
637+
kickerText: 'The Filter',
638+
discussionApiUrl: 'https://discussion.theguardian.com/discussion-api',
639+
isNewsletter: true,
640+
image: {
641+
src: 'https://media.guim.co.uk/e5269c957a8e19da44d76b53f349b8d5a3b6a98f/0_0_5000_3000/master/5000.jpg',
642+
altText: 'The Filter',
643+
},
644+
showQuotedHeadline: false,
645+
isExternalLink: false,
646+
showLivePlayable: false,
647+
isImmersive: false,
648+
},
649+
];
650+
608651
export const loopVideoCard: DCRFrontCard = {
609652
...defaultCardProps,
610653
dataLinkName: 'news | group-0 | card-@2',

dotcom-rendering/src/components/ScrollableMedium.stories.tsx

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ import { breakpoints } from '@guardian/source/foundations';
22
import type { Meta, StoryObj } from '@storybook/react';
33
import { discussionApiUrl } from '../../fixtures/manual/discussionApiUrl';
44
import { trails } from '../../fixtures/manual/highlights-trails';
5+
import {
6+
audioTrails,
7+
galleryTrails,
8+
newsletterTrails,
9+
videoTrails,
10+
} from '../../fixtures/manual/trails';
511
import type { DCRContainerPalette } from '../types/front';
612
import { FrontSection } from './FrontSection';
713
import { ScrollableMedium } from './ScrollableMedium.importable';
@@ -42,11 +48,17 @@ export default meta;
4248

4349
type Story = StoryObj<typeof ScrollableMedium>;
4450

45-
export const WithMultipleCards = {} satisfies Story;
51+
export const WithEightCards = {} satisfies Story;
4652

47-
export const WithOneCard = {
53+
export const WithFourCards = {
4854
args: {
49-
trails: trails.slice(0, 1),
55+
trails: trails.slice(0, 4),
56+
},
57+
} satisfies Story;
58+
59+
export const WithThreeCards = {
60+
args: {
61+
trails: trails.slice(0, 3),
5062
},
5163
} satisfies Story;
5264

@@ -56,15 +68,21 @@ export const WithTwoCards = {
5668
},
5769
} satisfies Story;
5870

59-
export const WithThreeCards = {
71+
export const WithOneCard = {
6072
args: {
61-
trails: trails.slice(0, 3),
73+
trails: trails.slice(0, 1),
6274
},
6375
} satisfies Story;
6476

65-
export const WithFourCards = {
77+
export const Media = {
78+
name: 'With Media Cards',
6679
args: {
67-
trails: trails.slice(0, 4),
80+
trails: [
81+
audioTrails[0],
82+
videoTrails[0],
83+
galleryTrails[0],
84+
newsletterTrails[0],
85+
],
6886
},
6987
} satisfies Story;
7088

dotcom-rendering/src/components/ScrollableSmall.stories.tsx

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ import { breakpoints } from '@guardian/source/foundations';
22
import type { Meta, StoryObj } from '@storybook/react';
33
import { discussionApiUrl } from '../../fixtures/manual/discussionApiUrl';
44
import { trails } from '../../fixtures/manual/highlights-trails';
5+
import {
6+
audioTrails,
7+
galleryTrails,
8+
newsletterTrails,
9+
videoTrails,
10+
} from '../../fixtures/manual/trails';
511
import type { DCRContainerPalette } from '../types/front';
612
import { FrontSection } from './FrontSection';
713
import { ScrollableSmall } from './ScrollableSmall.importable';
@@ -66,6 +72,18 @@ export const WithOneCard = {
6672
},
6773
};
6874

75+
export const Media = {
76+
name: 'With Media Cards',
77+
args: {
78+
trails: [
79+
audioTrails[0],
80+
videoTrails[0],
81+
galleryTrails[0],
82+
newsletterTrails[0],
83+
],
84+
},
85+
} satisfies Story;
86+
6987
export const WithPrimaryContainer = {
7088
render: (args) => (
7189
<FrontSection

dotcom-rendering/src/components/StaticMediumFour.stories.tsx

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
import { breakpoints } from '@guardian/source/foundations';
22
import type { Meta, StoryObj } from '@storybook/react';
33
import { discussionApiUrl } from '../../fixtures/manual/discussionApiUrl';
4-
import { trails } from '../../fixtures/manual/trails';
4+
import {
5+
audioTrails,
6+
galleryTrails,
7+
newsletterTrails,
8+
trails,
9+
videoTrails,
10+
} from '../../fixtures/manual/trails';
511
import type { DCRContainerPalette } from '../types/front';
612
import { FrontSection } from './FrontSection';
713
import { StaticMediumFour } from './StaticMediumFour';
@@ -42,36 +48,45 @@ export default meta;
4248
type Story = StoryObj<typeof meta>;
4349

4450
export const Four = {
45-
name: 'With four cards',
51+
name: 'With Four Cards',
4652
args: {
47-
trails: trails.slice(0, 4).map((trail, index) => ({
48-
...trail,
49-
isNewsletter: index === 3, // Check that we see the Newsletter pill on a card.
50-
})),
53+
trails: trails.slice(0, 4),
5154
},
5255
};
5356

5457
export const Three: Story = {
55-
name: 'With three cards',
58+
name: 'With Three Cards',
5659
args: {
5760
trails: trails.slice(0, 3),
5861
},
5962
};
6063

6164
export const Two: Story = {
62-
name: 'With two cards',
65+
name: 'With Two Cards',
6366
args: {
6467
trails: trails.slice(0, 2),
6568
},
6669
};
6770

6871
export const One: Story = {
69-
name: 'With one card',
72+
name: 'With One Card',
7073
args: {
7174
trails: trails.slice(0, 1),
7275
},
7376
};
7477

78+
export const Media = {
79+
name: 'With Media Cards',
80+
args: {
81+
trails: [
82+
audioTrails[0],
83+
videoTrails[0],
84+
galleryTrails[0],
85+
newsletterTrails[0],
86+
],
87+
},
88+
} satisfies Story;
89+
7590
const containerPalettes = [
7691
'InvestigationPalette',
7792
'LongRunningPalette',

0 commit comments

Comments
 (0)