list-teaser

Information

Folder
src/components/patterns/teasers/list-teaser

Files

Schema
Mocks
Template
// src/components/patterns/teasers/list-teaser/list-teaser.twig

{{ attach_library("circle_dot/pattern-list-teaser") }}

{# Set defaults #}
{% set size = size|default('l') %}
{% set card = card|default(false) %}
{% set ad_label = ad_label|default(false) %}
{% set link_target = link_target|default('_self') %}
{% set variant = variant|default('default') %}

{# Build class list #}
{% set classes = [
	'ListTeaser',
	size == 'xl' ? 'ListTeaser--xl',
	size == 'l' ? 'ListTeaser--l',
	size == 'm' ? 'ListTeaser--m',
	size == 's' ? 'ListTeaser--s',
	card ? 'ListTeaser--card'
] %}

<article class="{{ classes|join(' ')|trim }}" data-theme="{{ variant }}">
	{# Teaser link (stretched to cover entire teaser) #}
	{% if url %}
		<a href="{{ url }}" class="ListTeaser-link"{% if link_target == '_blank' %} target="_blank" rel="noopener noreferrer"{% endif %}>
			<span class="u-hiddenVisually">{{ heading }}</span>
		</a>
	{% endif %}

	{% if ad_label %}
		<div class="ListTeaser-adLabel">Anzeige</div>
	{% endif %}

	<div class="ListTeaser-horizontalWrapper">
		{% if image %}
			<div class="ListTeaser-imageWrapper">
				{{ image }}
			</div>
		{% endif %}

		<div class="ListTeaser-contentWrapper">
			<div class="ListTeaser-content">
				<div class="ListTeaser-text">
					<div class="ListTeaser-headings">
						{% if kicker %}
							<span class="ListTeaser-kicker">{{ kicker }}</span>
						{% endif %}

						<h3 class="ListTeaser-heading">{{ heading }}</h3>
					</div>

					{% if lead_text %}
						<p class="ListTeaser-lead">{{ lead_text }}</p>
					{% endif %}

					{% if article_infos %}
						<div class="ListTeaser-meta">
							{{ article_infos }}
						</div>
					{% endif %}
				</div>

				{% if cta %}
					<div class="ListTeaser-cta">
						{{ cta }}
					</div>
				{% endif %}
			</div>
		</div>
	</div>
</article>

Error: schema is invalid: data/properties must be object

Variants

Size XL with image
Open

Size XL with image mock data

Raw
Resolved
Size L with image
Open

Size L with image mock data

Raw
Resolved
Size M with image
Open

Size M with image mock data

Raw
Resolved
Size S with image
Open

Size S with image mock data

Raw
Resolved
Without image
Open

Without image mock data

Raw
Resolved
Card variant (Size XL)
Open

Card variant (Size XL) mock data

Raw
Resolved
Card variant (Size L)
Open

Card variant (Size L) mock data

Raw
Resolved
Card variant (Size M)
Open

Card variant (Size M) mock data

Raw
Resolved
Card variant (Size S)
Open

Card variant (Size S) mock data

Raw
Resolved
Minimal (Size L)
Open

Minimal (Size L) mock data

Raw
Resolved
With AD label
Open

With AD label mock data

Raw
Resolved
Without kicker
Open

Without kicker mock data

Raw
Resolved
With CTA button (Size XL)
Open

With CTA button (Size XL) mock data

Raw
Resolved
With CTA button (Card variant)
Open

With CTA button (Card variant) mock data

Raw
Resolved
Theme - White background (Size L Card)
Open

Theme - White background (Size L Card) mock data

Raw
Resolved
Theme - Surface background (Size L Card)
Open

Theme - Surface background (Size L Card) mock data

Raw
Resolved
Theme - NJW background (Size L Card)
Open

Theme - NJW background (Size L Card) mock data

Raw
Resolved
Exam solution teaser
Open

Exam solution teaser mock data

Raw
Resolved