From f91bde0d5c3f005c3a8271715feb81ce4cf040b2 Mon Sep 17 00:00:00 2001 From: Mocha-- Date: Tue, 6 Oct 2020 21:53:44 +1100 Subject: [PATCH 1/3] change(localData): export function declarations --- types/plugin/localeData.d.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/types/plugin/localeData.d.ts b/types/plugin/localeData.d.ts index 7d9817637..e53d37461 100644 --- a/types/plugin/localeData.d.ts +++ b/types/plugin/localeData.d.ts @@ -6,5 +6,14 @@ export = plugin declare module 'dayjs' { interface Dayjs { localeData(): any - } + } + + type DayNamesTuple = [string, string, string, string, string, string, string]; + type MonthNamesTuple = [string, string, string, string, string, string, string, string, string, string, string, string]; + + export function weekdays(): DayNamesTuple; + export function weekdaysShort(): DayNamesTuple; + export function weekdaysMin(): DayNamesTuple; + export function monthsShort(): MonthNamesTuple; + export function months(): MonthNamesTuple; } From 8d70f0fa4e99e42c0eea3d820c2e85fb2538730d Mon Sep 17 00:00:00 2001 From: Mocha-- Date: Mon, 12 Oct 2020 15:39:20 +1100 Subject: [PATCH 2/3] change(localeData): add localeData to dayjs and Dayjs --- types/plugin/localeData.d.ts | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/types/plugin/localeData.d.ts b/types/plugin/localeData.d.ts index e53d37461..e5f6f605b 100644 --- a/types/plugin/localeData.d.ts +++ b/types/plugin/localeData.d.ts @@ -5,15 +5,26 @@ export = plugin declare module 'dayjs' { interface Dayjs { - localeData(): any - } + localeData(): LocaleDataReturn; + } - type DayNamesTuple = [string, string, string, string, string, string, string]; - type MonthNamesTuple = [string, string, string, string, string, string, string, string, string, string, string, string]; + type WeekdayNames = [string, string, string, string, string, string, string]; + type MonthNames = [string, string, string, string, string, string, string, string, string, string, string, string]; - export function weekdays(): DayNamesTuple; - export function weekdaysShort(): DayNamesTuple; - export function weekdaysMin(): DayNamesTuple; - export function monthsShort(): MonthNamesTuple; - export function months(): MonthNamesTuple; + interface LocaleDataReturn { + firstDayOfWeek(): number, + weekdays(): WeekdayNames + weekdaysShort(): WeekdayNames, + weekdaysMin(): WeekdayNames, + months(): MonthNames, + monthsShort(): MonthNames, + longDateFormat(): string; + } + + export function weekdays(): WeekdayNames; + export function weekdaysShort(): WeekdayNames; + export function weekdaysMin(): WeekdayNames; + export function monthsShort(): MonthNames; + export function months(): MonthNames; + export function localeData(): LocaleDataReturn; } From d1508c22376a928f841333f59e106c404022c329 Mon Sep 17 00:00:00 2001 From: Mocha-- Date: Tue, 13 Oct 2020 23:13:33 +1100 Subject: [PATCH 3/3] change(LocaleData): separate LocaleDataReturn from instance and global --- types/plugin/localeData.d.ts | 42 ++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 16 deletions(-) diff --git a/types/plugin/localeData.d.ts b/types/plugin/localeData.d.ts index e5f6f605b..6b0c11c02 100644 --- a/types/plugin/localeData.d.ts +++ b/types/plugin/localeData.d.ts @@ -4,27 +4,37 @@ declare const plugin: PluginFunc export = plugin declare module 'dayjs' { - interface Dayjs { - localeData(): LocaleDataReturn; - } - type WeekdayNames = [string, string, string, string, string, string, string]; type MonthNames = [string, string, string, string, string, string, string, string, string, string, string, string]; - interface LocaleDataReturn { - firstDayOfWeek(): number, - weekdays(): WeekdayNames - weekdaysShort(): WeekdayNames, - weekdaysMin(): WeekdayNames, - months(): MonthNames, - monthsShort(): MonthNames, - longDateFormat(): string; + interface InstanceLocaleDataReturn { + firstDayOfWeek(): number; + weekdays(instance?: Dayjs): WeekdayNames; + weekdaysShort(instance?: Dayjs): WeekdayNames; + weekdaysMin(instance?: Dayjs): WeekdayNames; + months(instance?: Dayjs): MonthNames; + monthsShort(instance?: Dayjs): MonthNames; + longDateFormat(format: string): string; + } + + interface GlobalLocaleDataReturn { + firstDayOfWeek(): number; + weekdays(): WeekdayNames; + weekdaysShort(): WeekdayNames; + weekdaysMin(): WeekdayNames; + months(): MonthNames; + monthsShort(): MonthNames; + longDateFormat(format: string): string; + } + + interface Dayjs { + localeData(): InstanceLocaleDataReturn; } - export function weekdays(): WeekdayNames; - export function weekdaysShort(): WeekdayNames; - export function weekdaysMin(): WeekdayNames; + export function weekdays(localOrder?: boolean): WeekdayNames; + export function weekdaysShort(localOrder?: boolean): WeekdayNames; + export function weekdaysMin(localOrder?: boolean): WeekdayNames; export function monthsShort(): MonthNames; export function months(): MonthNames; - export function localeData(): LocaleDataReturn; + export function localeData(): GlobalLocaleDataReturn; }