Skip to content

Expand typed provider messages across Components-owned labels #174

Description

@woksin

Problem

Components 4 centralizes locale plus paginator/date messages, while other owned labels still rely on English defaults or per-instance overrides. Existing consumers can migrate, but large localized products must repeat configuration for dialog actions, Dropdown clear/show behavior, table row selection, column filter labels/match modes, toast dismissal/actions, Toolbar names, and similar owned chrome.

Direction

Expand CratisComponentsMessages by owned surface without creating one monolithic renderer locale object:

  • dialog actions/dismissal;
  • Dropdown selection/clear/filter labels;
  • DataTable selection/search/filter/match-mode labels;
  • notification dismissal/action labels;
  • Toolbar default names and folder/fan-out conventions;
  • other audited Components-owned English strings.

Precedence should remain explicit: named component prop → provider message → English fallback. Platform/React Aria locale data should not be copied into Components messages.

Acceptance

  • Inventory every user-facing literal in shipped Components source.
  • Add typed message groups and TSDoc.
  • Cover nb-NO and English provider examples.
  • Keep per-instance overrides.
  • Add a gate/spec that prevents an owned label from becoming unlocalizable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions