Skip to content

feat(content): add video teaser across all layers#65

Open
stacelKonrad wants to merge 5 commits intomainfrom
feat/video_teaser
Open

feat(content): add video teaser across all layers#65
stacelKonrad wants to merge 5 commits intomainfrom
feat/video_teaser

Conversation

@stacelKonrad
Copy link
Copy Markdown
Collaborator

Add teaserVideo content type with lazy-loading, skeleton and error state. Wires the full stack: Contentful migration, GraphQL fragment, Zod schema, mapper, contract, presentation block, and Storybook story.

Add teaserVideo content type with lazy-loading, skeleton and error state.
Wires the full stack: Contentful migration, GraphQL fragment, Zod schema,
mapper, contract, presentation block, and Storybook story.
Replace hardcoded "Video unavailable" string with next-intl translation key.
@stacelKonrad stacelKonrad marked this pull request as ready for review March 26, 2026 13:38
@stacelKonrad stacelKonrad requested a review from a team March 26, 2026 13:38
Comment on lines +252 to +264
'en-US': {
title: 'New in',
caption: 'Discover the latest trends.',
link: linkRef,
},
'de-DE': {
title: 'Neu eingetroffen',
caption: 'Entdecke die neuesten Trends.',
link: linkRef,
},
'autoplay': true,
'controls': false,
})
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mixed locale keys and non-locale fields, maybe worth to standarize this and pass locale fields some structured way?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure about some settings in one locale and missing in the second though.

Move autoplay/controls into en-US locale object in VIDEO_TEASER data.
Replace block-level CmsLink with an absolute overlay to preserve video
controls interaction. Add playsInline for autoplay on mobile. Rename
migration file to 01-02-16-video and remove redundant brand component
migration that was merged into the sequence.
@stacelKonrad stacelKonrad requested a review from mstarzak March 27, 2026 08:13
Comment on lines +252 to +264
'en-US': {
title: 'New in',
caption: 'Discover the latest trends.',
link: linkRef,
},
'de-DE': {
title: 'Neu eingetroffen',
caption: 'Entdecke die neuesten Trends.',
link: linkRef,
},
'autoplay': true,
'controls': false,
})
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure about some settings in one locale and missing in the second though.

{link && (
<CmsLink
link={link}
className='absolute inset-0 z-10'
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think now we could have problems for combination of link and controls as it wouldn't be possible to use controls at all due to overlay.

link={link}
className='absolute inset-0 z-10'
aria-label={link.title}
/>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CmsLink falls back to its label if there is no children passed.

<CmsLink
link={link}
className='absolute inset-0 z-10'
aria-label={link.title}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aria-label will be ignored by CmsLink, most likely we need to pass rest props in CmsLink.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants