Sync styleguide 2026.05.18.1

This commit is contained in:
2026-08-03 16:58:45 +02:00
parent ec82a05cae
commit 095da274cb
7 changed files with 148 additions and 4 deletions
@@ -192,6 +192,63 @@
</div>
</div>
<p class="sg-preview-label">Pattern: Newsletter Form</p>
<div class="sg-preview-area">
<div class="sg-content-group-box" data-component="content-group-box">
<article class="sg-card sg-card--content-card sg-card--content-card-dark sg-card--call-to-action-card sg-card--call-to-action-card--three-column" data-component="call-to-action-card" data-component-variant="three-column" aria-label="Newsletter Form">
<div class="sg-card-segment sg-card-segment--body sg-call-to-action-card__body" data-component-part="card-body">
<p class="sg-body sg-call-to-action-card__text">
Mit dem Newsletter immer über neue Inhalte informiert bleiben.
</p>
<div class="sg-labeled-input-row" data-component="single-line-input" data-component-state="inactive-selectable">
<input
class="sg-interaction-element sg-input-single-line sg-input-single-line--inactive-selectable sg-form-inactive-selectable"
type="email"
placeholder="E-Mail-Adresse"
aria-label="E-Mail-Adresse"
pattern="[^\s@]+@[^\s@]+\.[^\s@]{2,}"
required
>
</div>
<div class="sg-call-to-action-card__action">
<button class="sg-interaction-element sg-button sg-button--process sg-button--process-inactive" type="submit" data-component="button" data-component-variant="process" data-component-state="inactive" disabled aria-disabled="true">
Prozess Button
</button>
</div>
</div>
</article>
</div>
</div>
<script>
(() => {
const newsletterForm = document.querySelector('.sg-card--call-to-action-card--three-column');
if (!newsletterForm) {
return;
}
const input = newsletterForm.querySelector('input[type="email"]');
const processButton = newsletterForm.querySelector('.sg-button--process');
if (!input || !processButton) {
return;
}
const updateProcessButtonState = () => {
const isActive = input.checkValidity();
processButton.disabled = !isActive;
processButton.setAttribute('aria-disabled', String(!isActive));
processButton.setAttribute('data-component-state', isActive ? 'active' : 'inactive');
processButton.classList.toggle('sg-button--process-inactive', !isActive);
};
input.addEventListener('input', updateProcessButtonState);
updateProcessButtonState();
})();
</script>
<p class="sg-preview-label">pattern: Public Call to Action Box</p>
<div class="sg-preview-area">