From 521bfc127c46d3a04aee66385fb8315bd23069e5 Mon Sep 17 00:00:00 2001 From: George Kalpakas Date: Tue, 26 Apr 2022 16:58:00 +0300 Subject: [PATCH] refactor(common): improve `dayPeriods`-related types in `generate-locales-tool` (#45714) Update some TypeScript types in `generate-locales-tool/day-periods.ts` to more closely reflect the actual shapes of the returned objects. Examples of the related raw JSON data for the `en` locale can be seen here: - [dayPeriods][1] - [dayPeriodRules][2] [1]: https://github.com/unicode-org/cldr-json/blob/41.0.0/cldr-json/cldr-dates-full/main/en/ca-gregorian.json#L223-L300 [2]: https://github.com/unicode-org/cldr-json/blob/41.0.0/cldr-json/cldr-core/supplemental/dayPeriods.json#L404-L427 PR Close #45714 --- .../locales/generate-locales-tool/day-periods.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/packages/common/locales/generate-locales-tool/day-periods.ts b/packages/common/locales/generate-locales-tool/day-periods.ts index f7b708ea810..9a915f9aad1 100644 --- a/packages/common/locales/generate-locales-tool/day-periods.ts +++ b/packages/common/locales/generate-locales-tool/day-periods.ts @@ -12,8 +12,16 @@ import {CldrLocaleData} from './cldr-data'; * Returns data for the chosen day periods */ export function getDayPeriods(localeData: CldrLocaleData, dayPeriodsList: string[]): { - format: {narrow: string[], abbreviated: string[], wide: string[]}, - 'stand-alone': {narrow: string[], abbreviated: string[], wide: string[]} + format: { + narrow: Record, + abbreviated: Record, + wide: Record + }, + 'stand-alone': { + narrow: Record, + abbreviated: Record, + wide: Record + } } { const dayPeriods = localeData.main(`dates/calendars/gregorian/dayPeriods`); const result: any = {}; @@ -39,7 +47,8 @@ export function getDayPeriods(localeData: CldrLocaleData, dayPeriodsList: string * @returns string[] */ export function getDayPeriodRules( - localeData: CldrLocaleData, language = localeData.attributes.language): {[key: string]: []} { + localeData: CldrLocaleData, + language = localeData.attributes.language): Record { const dayPeriodRules = localeData.get(`supplemental/dayPeriodRuleSet/${language}`); const rules: any = {}; if (dayPeriodRules) {