typesafe-i18n icon indicating copy to clipboard operation
typesafe-i18n copied to clipboard

[Feature Request] Better `locales` typing in i18n-util.ts

Open Zer0xxxx opened this issue 8 months ago • 0 comments

Version

5.26.2

Describe the bug

Currently:

export const locales: Locales[] = [
  'en-US',
  'fr'
];

Reproduction

Would be better to codegen:

export const locales = [
  'en-US',
  'fr'
] as const;

Or:

export const locales = [
  'en-US',
  'fr'
] as const satisfies readonly [string, ...string[]];

Demo: Capture d’écran du 2024-06-01 17-28-33

^ We can see the inlay hint is perfectly typed here.

Could also be codegen as:

export const locales = [
  'en-US',
  'fr'
] as const satisfies readonly Locales[];

(Even if it could be pointless to use Locales here, depending on the reliability of the codegen.)

Logs

No response

Config

No response

Additional information

No response

Zer0xxxx avatar Jun 01 '24 15:06 Zer0xxxx