Zum Hauptinhalt springen
Version: latest
Universell einsetzbar

BaseLink funktioniert sowohl auf dem Server als auch im Browser. Nutze immer den Standard-Import (z. B. @prokodo/ui/base-link) — die Library erkennt die Umgebung automatisch.

BaseLink

BaseLink ist das grundlegende Link-Primitive in @prokodo/ui. Es rendert in Server-Kontexten als <a> und unterstützt interne sowie externe Navigation. Wird intern von Button, Card und weiteren Komponenten mit redirect-Props verwendet.


Übersicht

import { BaseLink } from "@prokodo/ui/base-link"
;<BaseLink href="/docs/intro" className="my-link">
Read the docs
</BaseLink>

Import

import { BaseLink } from "@prokodo/ui/base-link"

Styling is handled via design tokens — no additional CSS import required.


Props

PropTypStandardPflichtBeschreibung
hrefstringDestination URL (relative or absolute).
childrenReactNodeLink content.
classNamestringCSS class on <a> element.
disabledbooleanfalseVisually disable and prevent navigation.
idstringHTML id attribute.
targetstringLink target (e.g. "_blank").
relstringLink rel attribute.

Siehe src/components/base-link/BaseLink.model.ts für den vollständigen BaseLinkProps-Typ.


WCAG-2.2-Status

KriteriumBezeichnungStatusHinweis
1.3.1Info und Beziehungen (A)✅ ErfülltSemantische Struktur (Überschriften, Listen, Labels, Landmarks) muss programmatisch via HTML oder ARIA vermittelt werden.
2.1.1Tastatur (A)✅ ErfülltAlle Funktionalität muss allein über Tastatur bedienbar sein, ohne Timing-Anforderungen.
2.4.4Linkzweck (im Kontext) (A)🔍 Manuell prüfenDer Zweck jedes Links muss allein aus dem Linktext oder aus dem umgebenden Kontext bestimmbar sein.
2.4.7Fokus sichtbar (AA)🔍 Manuell prüfenAuf jedem interaktiven Element muss ein sichtbarer Tastaturfokus-Indikator vorhanden sein. Prüfung gegen das angewendete Produkt-Theme erforderlich.
2.4.11Fokus nicht verdeckt (Min.) (AA)🔍 Manuell prüfenDie fokussierte Komponente darf nicht vollständig durch Sticky-Header, Overlays oder andere positionierte Seitenelemente verdeckt sein.
2.5.3Label im Namen (A)✅ ErfülltBei Komponenten mit sichtbarem Label muss der zugängliche Name den sichtbaren Labeltext enthalten oder diesem entsprechen.
4.1.2Name, Rolle, Wert (A)✅ ErfülltName, Rolle und Zustand aller interaktiven UI-Komponenten müssen via nativer HTML-Semantik oder ARIA programmatisch bestimmbar sein.

Testabdeckung: 4 jest-axe-Assertion(s) in 5 Testdatei(en) · 2 ARIA-Attribut-Vorkommen im Quellcode-Scan. Kriterien mit 🔍 erfordern manuelle Prüfung im finalen Integrations- und Theme-Kontext.

Storybook

👉 BaseLink in Storybook öffnen


Quellcode

src/components/base-link/BaseLink.model.ts