a11y(i18n): data-i18n-aria-label-Hook plus DE/EN-Keys fuer die 11 Theme-Cards

This commit is contained in:
2026-06-13 21:02:59 +02:00
parent f2e078b593
commit eda5fba8f3
+30
View File
@@ -387,6 +387,19 @@ const STRINGS = {
'modal.rename_placeholder': 'Neuer Name...',
'modal.rename_confirm': 'Umbenennen',
'modal.theme_header': 'Darstellung',
// Theme-Picker-Cards (ARIA)
'theme.card.nebula': 'Theme Nebula wählen',
'theme.card.crescent': 'Theme Crescent wählen',
'theme.card.event_horizon': 'Theme Event Horizon wählen',
'theme.card.merchantman': 'Theme Merchantman wählen',
'theme.card.julia_jin': 'Theme Julia & Jin wählen',
'theme.card.sc_sunset': 'Theme SC Sunset wählen',
'theme.card.hellion_hud': 'Theme Hellion HUD wählen',
'theme.card.hellion_energy': 'Theme Hellion Energy wählen',
'theme.card.satisfactory': 'Theme Satisfactory wählen',
'theme.card.avorion': 'Theme Avorion wählen',
'theme.card.hellion_stealth': 'Theme Hellion Stealth wählen',
'toolbar.label': 'Widget-Werkzeugleiste',
// About
'about.title': '⬡ HELLION NEWTAB',
@@ -799,6 +812,19 @@ const STRINGS = {
'modal.rename_placeholder': 'New name...',
'modal.rename_confirm': 'Rename',
'modal.theme_header': 'Theme',
// Theme picker cards (ARIA)
'theme.card.nebula': 'Select Nebula theme',
'theme.card.crescent': 'Select Crescent theme',
'theme.card.event_horizon': 'Select Event Horizon theme',
'theme.card.merchantman': 'Select Merchantman theme',
'theme.card.julia_jin': 'Select Julia & Jin theme',
'theme.card.sc_sunset': 'Select SC Sunset theme',
'theme.card.hellion_hud': 'Select Hellion HUD theme',
'theme.card.hellion_energy': 'Select Hellion Energy theme',
'theme.card.satisfactory': 'Select Satisfactory theme',
'theme.card.avorion': 'Select Avorion theme',
'theme.card.hellion_stealth': 'Select Hellion Stealth theme',
'toolbar.label': 'Widget toolbar',
// About
'about.title': '⬡ HELLION NEWTAB',
@@ -865,6 +891,10 @@ function applyLanguage() {
el.title = text;
el.setAttribute('aria-label', text);
});
// aria-label ohne sichtbaren title (z.B. Theme-Cards)
document.querySelectorAll('[data-i18n-aria-label]').forEach(el => {
el.setAttribute('aria-label', t(el.dataset.i18nAriaLabel));
});
}
/**