Refactor: shared locale data module for all locale-aware components
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 40/100
- Issue-Typ
- Refactoring
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- react, tailwindcss, typescript
- Bereich
- frontend, internationalization
Rechercherichtung
Start by comparing the locale tables in src/registry/components/language-switcher.tsx and src/registry/components/navbar.tsx to see where their coverage and lookup rules differ. Then check src/registry/registry.ts to see how a new registry entry is declared. The work is done when the new src/registry/components/locale-data.ts exports the helpers, both components use it instead of their own tables, and the locale-data unit tests and existing component tests pass.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Refactor: shared locale data module
LanguageSwitcher and NavBar each carry their own copy of locale display data:
language-switcher.tsx—LANG_TO_FLAG,LANG_NAMES,RTL_LOCALES(~90 languages)navbar.tsx—LOCALE_MAP(~35 languages, label + flag only, no RTL)
The two have drifted (different coverage, different lookup rules), and every new locale-aware component (pill switcher, locale picker, RTL wrapper) will need the same data.
Proposal
- Add
src/registry/components/locale-data.tsexportinggetLocaleLabel(code, mode),getLocaleFlag(code),isRtlLocale(code)and aresolveLocale(locale: Locale)helper that applieslabel/flag/rtloverrides. - Fall back to
Intl.DisplayNamesfor languages not in the built-in table instead of returning the raw code. - Register it in
src/registry/registry.ts(e.g.locale-data) so shadcn installs pull it in as aregistryDependency. - Migrate
LanguageSwitcherandNavBarto it; delete the duplicate tables.
Acceptance
- No locale table left inside individual components
- Unit tests for
locale-data.ts(overrides, region subtags, unknown codes, RTL) - Existing component tests still pass
See ARCHITECTURE.md.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 39
- Forks
- 16
- Ø Merge
- 2 T. 12 Std.
- Gemergte PRs (30 T.)
- 10
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus babelize/babelize-elements
-
bug website
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
babelize/babelize-elements#46 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug language-switcher priority: medium
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
babelize/babelize-elements#26 ·
Maintainer antworten meist innerhalb von 1 Tag
-
component enhancement help wanted
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
babelize/babelize-elements#47 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug component rtl-layout
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
babelize/babelize-elements#45 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Website: revamp and improve the landing pageEvtl. vergeben @anjalinayak01 hat das vor 6 Tagen übernommen. Offenenhancement help wanted priority: medium website
Schwierigkeit 4/5 Über eine Woche Anfängerfreundlichkeit 30/100
babelize/babelize-elements#37 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in babelize/babelize-elements
Ähnliche Issues
-
Endpoint links in the tag operations list are below the 24px target sizeEvtl. vergeben @AdzerKI hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
ai-driven-qa bug Minor
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 80/100
linagora/twake-tasks#435 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug domain: database priority: p1 Stellar Wave
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
StellarState/SS-backend#632 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
A2A audit timestamps end in +00:00Z (invalid ISO 8601)Evtl. vergeben @O1sumitkumar hat das heute übernommen. Offenbug good first issue help wanted python
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
`cf complete zsh >> .zshrc` fails on vanilla zshEvtl. wieder frei Ein Pull Request dazu wurde ohne Merge geschlossen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
cloudflare/cf#340 ·
Maintainer antworten meist innerhalb von 1 Tag