<div class="rtds-video-item rtds-border rtds-border-gray-01">
<div class="rtds-video-item__heading">
<h3 class="rtds-video-item__title rtds-heading-3">
Titolo video lorem ipsum dolor sit amet
</h3>
<p class="rtds-video-item__description">
descrizione video lorem ipsum dolor sit amet
</p>
</div>
<div class="rtds-aspect-video">
<iframe title="Video youtube: titolo video lorem ipsum dolor sit amet" width="1167" height="656" src="https://www.youtube.com/embed/p_rEJBW27bY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
</div>
<div class="rtds-p-4">
<a href="#" class="rtds-action-link
rtds-card__action-link rtds-action-link--has-icon rtds-group/cta rtds-action-link--sm
">
<span class='rtds-sr-only'>Titolo video lorem ipsum dolor sit amet - </span>Trascrizione
<svg class="rtds-icon rtds-fill-current rtds-transition-all group-hover/cta:rtds-scale-110" aria-hidden="true" focusable="false" role="img">
<use href="../../icons.svg#outline--document-text" />
</svg>
</a>
</div>
</div>
<div class="rtds-video-item rtds-border rtds-border-gray-01{% if classes %} {{ classes }}{% endif %}">
{% block heading %}
{% if heading or description %}
<div class="rtds-video-item__heading">
{% if heading %}
<h3 class="rtds-video-item__title rtds-heading-3">
{{ heading | safe }}
</h3>
{% endif %}
{% if description %}
<p class="rtds-video-item__description">
{{ description | safe }}
</p>
{% endif %}
</div>
{% endif %}
{% endblock heading %}
{% block video %}
{% if videoFrame %}
<div class="rtds-aspect-video">
<iframe title="Video youtube: {{ title }}" width="1167" height="656" src="{{ src }}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen=""></iframe>
</div>
{% endif %}
{% if videoPlayer %}
{% render '@video', {videoSrc: src, videoTitle: title}, true %}
{% endif %}
{% endblock video %}
{% block ctaLink %}
{% if ctaLink %}
<div class="rtds-p-4">
{% render '@action-link--sm', ctaLink, true %}
</div>
{% endif %}
{% endblock ctaLink %}
</div>
{
"title": "titolo video lorem ipsum dolor sit amet",
"src": "https://www.youtube.com/embed/p_rEJBW27bY",
"videoFrame": "true",
"heading": "Titolo video lorem ipsum dolor sit amet",
"description": "descrizione video lorem ipsum dolor sit amet",
"ctaLink": {
"classes": "rtds-card__action-link rtds-action-link--has-icon rtds-group/cta",
"iconClasses": "rtds-transition-all group-hover/cta:rtds-scale-110",
"hasIcon": "true",
"icon": "outline--document-text",
"label": "<span class='rtds-sr-only'>Titolo video lorem ipsum dolor sit amet - </span>Trascrizione",
"href": "#",
"iconSize": ""
}
}
@layer components {
.rtds-video-item iframe {
@apply !rtds-w-full !rtds-h-full;
}
.rtds-video-item__heading {
@apply rtds-p-4 rtds-grid rtds-gap-2;
}
.rtds-video-item__description {
@apply rtds-text-sm md:rtds-text-base;
}
}
Il componente Video Item è un elemento molecolare che gestisce la visualizzazione di video, supportando sia l’embedding di video YouTube che un player personalizzato. È progettato per essere accessibile e responsive, con supporto per trascrizioni e descrizioni.
Il componente utilizza una struttura semantica con:
rtds-video-itemLa struttura base del markup è:
<div class="rtds-video-item rtds-border rtds-border-gray-01">
<div class="rtds-video-item__heading">
<h3 class="rtds-video-item__title rtds-heading-3">Titolo del video</h3>
<p class="rtds-video-item__description">Descrizione del video</p>
</div>
<div class="rtds-aspect-video">
<iframe title="Video youtube: [titolo]" src="[url]" ...></iframe>
</div>
<div class="rtds-p-4">
<!-- Link alla trascrizione -->
</div>
</div>Il componente è stato progettato seguendo le linee guida WCAG 2.1 e implementa diverse caratteristiche per garantire l’accessibilità:
Video youtube: {Titolo}I seguenti parametri possono essere utilizzati per configurare il componente:
heading: stringa - titolo del videodescription: stringa - descrizione del videotitle: stringa - titolo per l’attributo title dell’iframesrc: stringa - URL del video YouTube o sorgente del playervideoFrame: booleano - se utilizzare l’iframe YouTubevideoPlayer: booleano - se utilizzare il player personalizzatoctaLink: oggetto - configurazione del link alla trascrizioneclasses: stringa - classi CSS per il linkiconClasses: stringa - classi CSS per l’iconahasIcon: booleano - se mostrare l’iconaicon: stringa - nome dell’iconalabel: stringa - testo del linkhref: stringa - URL del linkiconSize: stringa - dimensione dell’iconaIl file di configurazione supporta le seguenti impostazioni:
default: variante base con iframe YouTubevideoFrame: booleano - impostato a truebox: variante con iframe YouTube, titolo, descrizione e link alla trascrizionevideoFrame: booleano - impostato a trueheading: stringa - titolo del videodescription: stringa - descrizione del videoctaLink: oggetto - configurazione del link alla trascrizioneplayer: variante con player personalizzatovideoPlayer: booleano - impostato a truebox-player: variante con player personalizzato, titolo, descrizione e link alla trascrizionevideoPlayer: booleano - impostato a trueheading: stringa - titolo del videodescription: stringa - descrizione del videoctaLink: oggetto - configurazione del link alla trascrizione