11:23
<hsivonen>
What should I read to learn why ECMA-402 DisplayNames has both "short" and "narrow" style when the expected data source (CLDR) seems to have only one kind of short?
15:38
<sffc>
What should I read to learn why ECMA-402 DisplayNames has both "short" and "narrow" style when the expected data source (CLDR) seems to have only one kind of short?

There's nothing forbidding engines from obeying a request for a narrow width if they have data for it, and there is data in type: "currency". In previous versions of the proposal, date fields like type: "weekday" were included, which definitely have narrow width, but type: "weekday" was removed before the proposal reached Stage 3.

In Firefox 115:

["long", "short", "narrow"].map((style) => new Intl.DisplayNames("es-MX", { type: "currency", style }).of("USD"))
Array(3) [ "dólar estadounidense", "USD", "$" ]
15:40
<sffc>
Note: Chrome doesn't seem to respect style with type: "currency"?
15:56
<Chris de Almeida>
Note: Chrome doesn't seem to respect style with type: "currency"?
what's the expected result?
15:59
<Chris de Almeida>

Chrome 127:

["long", "short", "narrow"].map((style) => new Intl.DisplayNames("es-MX", { type: "currency", style }).of("USD"))
Array(3) [ "dólar estadounidense", "USD", "$" ]
19:17
<hsivonen>

There's nothing forbidding engines from obeying a request for a narrow width if they have data for it, and there is data in type: "currency". In previous versions of the proposal, date fields like type: "weekday" were included, which definitely have narrow width, but type: "weekday" was removed before the proposal reached Stage 3.

In Firefox 115:

["long", "short", "narrow"].map((style) => new Intl.DisplayNames("es-MX", { type: "currency", style }).of("USD"))
Array(3) [ "dólar estadounidense", "USD", "$" ]
Thanks. So it's for currency and for the rest just the same API shape.