Skip to content

Commit 46b9529

Browse files
author
Mariusz Pawelski
committed
Fix wrong type for LocaleMatcher ('best-fit' to 'best fit').
In Typescript 4.2 type definitions for Intl API was updated (microsoft/TypeScript#41880). Because of that we now have compile error when we try to compile vue-i18n in TS 4.2 RC. The reason is our wrong type definition for "localeMatcher" and "formatMatcher" properties. We had "best-fit" but it should be "best fit". This was the error when we compile vue-i18n with Typescript 4.2 RC. Now it's fixed.: > npx typescript@4.2.1-rc -p types npx: installed 1 in 3.512s types/index.d.ts:26:13 - error TS2430: Interface 'SpecificDateTimeFormatOptions' incorrectly extends interface 'DateTimeFormatOptions'. Types of property 'localeMatcher' are incompatible. Type 'LocaleMatcher | undefined' is not assignable to type '"best fit" | "lookup" | undefined'. Type '"best-fit"' is not assignable to type '"best fit" | "lookup" | undefined'. 26 interface SpecificDateTimeFormatOptions extends Intl.DateTimeFormatOptions { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Found 1 error.
1 parent 96f40ab commit 46b9529

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

types/index.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ declare namespace VueI18n {
1717
interface LocaleMessages { [key: string]: LocaleMessageObject; }
1818
type TranslateResult = string | LocaleMessages;
1919

20-
type LocaleMatcher = 'lookup' | 'best-fit';
21-
type FormatMatcher = 'basic' | 'best-fit';
20+
type LocaleMatcher = 'lookup' | 'best fit';
21+
type FormatMatcher = 'basic' | 'best fit';
2222

2323
type DateTimeHumanReadable = 'long' | 'short' | 'narrow';
2424
type DateTimeDigital = 'numeric' | '2-digit';

0 commit comments

Comments
 (0)