,
- value: '',
- },
- ],
- name: 'name',
- },
- });
-
- expect(view.getByRole('img'));
- });
-
- it('renders an infotip in the radio', async () => {
- const info = 'info';
-
- const { view } = renderField({
- field: {
- ...defaultFieldProps,
- id: 'id',
- options: [
- {
- label: Click handler paragraph
+ + element override with a custom CodeBlock override, the CodeBlock wins', () => {
- const text = `
-# Heading
-
-\`\`\`js
-var test = true;
-\`\`\`
-
-\`var test = false;\`
- `;
-
- const CodeBlock = (props: React.HTMLPropsVideo from @skillsoft/gamut/Video — it is
- not included in @skillsoft/gamut's default export.
- >
- }
-/>
-
-## Installation
-
-`Video`'s player libraries are peer dependencies of `@skillsoft/gamut`, so they aren't installed automatically. They're only needed if you import from `@skillsoft/gamut/Video`; the main `@skillsoft/gamut` barrel never loads them, so apps that don't use `Video` can skip them. Add them alongside Gamut to use `Video` (or the Markdown `Iframe`/`MarkdownVideo` overrides):
-
-```bash
-yarn add @vidstack/react@~1.12.12 react-player@^3.4.0
-```
-
-Pin the versions: `@vidstack/react`'s npm `latest` tag still points to 0.6.x (1.x is published under `next`), so a bare `yarn add @vidstack/react` installs 0.6, which lacks the `@vidstack/react/player/layouts/default` subpath `Video` imports and fails with `Module not found`. Versions 1.14+ use static class blocks, which break Jest in repos whose Babel config can't parse them (see "Babel and newer syntax" on the Installation page).
-
-Without them, your bundler will fail with `Can't resolve '@vidstack/react'` (or `'react-player'`) when you import from `@skillsoft/gamut/Video`.
-
-## Usage
-
-```tsx
-import { Video } from '@skillsoft/gamut/Video';
-```
-
-The `Video` component is a video player that supports multiple video sources and formats with enhanced accessibility features.
-
-### Key features
-
-- **Multiple sources**: Supports YouTube, Vimeo, HLS, and DASH video streams
-- **Accessibility**: Enhanced keyboard navigation and screen reader support
-- **Internationalization**: Customizable UI text through translations props
-- **Captions**: Supports multiple caption formats (VTT, SRT, SSA)
-- **Chapters**: Video chapter navigation support
-- **Thumbnails**: Preview thumbnails on timeline hover
-- **Gestures**: Touch and mouse gesture controls
-
-### Best practices
-
-- Always provide descriptive video titles for accessibility
-- Include captions when possible
-- Use appropriate poster images for better initial loading experience
-- Some videos might have settings where you cannot share/embed them, make sure to check the video URL before making the Video go live
-
-## Variants
-
-### HLS Stream With Captions, Chapters And Thumbnails
-
-
-
-### YouTube Video
-
-
-
-### Vimeo Video
-
-
-
-## Playground
-
-
-
-| Key | -Used for | -Context (props) | -Default English interpolation | -Summary exposed as | -
|---|---|---|---|---|
- stackedBarSummary
- |
- Stacked rows (two values per row) | -
- seriesOneValue, seriesTwoValue,{' '}
- gained, unit, locale,{' '}
- categoryLabel
- |
-
-
- Starting value - {seriesOneValue}{unit}.
- {gained}{unit} gained - now at
- {seriesTwoValue}{unit} in
- {categoryLabel}
-
- |
-
- aria-label (if link/button) or screenreader-only text
- |
-
- singleValueBarSummary
- |
- Single-value rows | -
- value, unit, locale,{' '}
- categoryLabel
- |
-
-
- {value}{unit} in {categoryLabel}
-
- |
-
- aria-label (if link/button) or screenreader-only text
- |
-
{translationKey}
- ),
- },
-];
-
-const errorMessages = [
- {
- id: 'incomplete',
- scenario: 'Incomplete date',
- message: 'Incomplete date',
- translationKey: 'invalidDateIncomplete',
- },
- {
- id: 'invalid-month',
- scenario: 'Month outside 1-12',
- message: 'Month must be between 1 and 12',
- translationKey: 'invalidDateInvalidMonth',
- },
- {
- id: 'invalid-day',
- scenario: 'Day too large for the month',
- message: '{month} does not have {day} days',
- translationKey: 'invalidDateInvalidDay',
- },
- {
- id: 'date-rollover',
- scenario: 'Date rollover (e.g. Feb 30)',
- message: '{month} does not have {day} days',
- translationKey: 'invalidDateRollover',
- },
- {
- id: 'disabled-date',
- scenario: (
- <>
- Date is disabled via disableDate
- >
- ),
- message: 'This date is not available',
- translationKey: 'invalidDateNotAvailable',
- },
- {
- id: 'range-contains-disabled-date',
- scenario: 'Range spans a disabled date',
- message: 'This date range contains unavailable dates',
- translationKey: 'invalidDateRangeContainsDisabledDate',
- },
- {
- id: 'invalid-date',
- scenario: 'Any other unparseable date (fallback)',
- message: 'Invalid date',
- translationKey: 'invalidDate',
- },
-];
-
-export const ErrorMessagesTable = () => (
-