Skip to content

Commit

Permalink
Fix utils TypeScript types (gpbl#899)
Browse files Browse the repository at this point in the history
  • Loading branch information
DylanVann authored and gpbl committed Aug 3, 2019
1 parent c981be0 commit 33f7b3e
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 16 deletions.
6 changes: 3 additions & 3 deletions types/DayPicker.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ import {

export default class DayPicker extends React.Component<DayPickerProps, any> {
static VERSION: string;
static LocaleUtils: LocaleUtils;
static DateUtils: DateUtils;
static ModifiersUtils: ModifiersUtils;
static LocaleUtils: typeof LocaleUtils;
static DateUtils: typeof DateUtils;
static ModifiersUtils: typeof ModifiersUtils;
static DayModifiers: DayModifiers;
static Modifiers: Modifiers;
readonly dayPicker: HTMLDivElement;
Expand Down
2 changes: 1 addition & 1 deletion types/moment.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

import { LocaleUtils } from './utils';

export const MomentLocaleUtils: LocaleUtils;
export const MomentLocaleUtils: typeof LocaleUtils;
16 changes: 11 additions & 5 deletions types/props.d.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
// TypeScript Version: 2.2

import * as React from 'react';
import { ClassNames, Modifier, Modifiers, DayModifiers, InputClassNames } from './common';
import {
ClassNames,
Modifier,
Modifiers,
DayModifiers,
InputClassNames,
} from './common';
import { LocaleUtils } from './utils';
import { DayPickerInput } from './DayPickerInput';

export interface CaptionElementProps {
date: Date;
classNames: ClassNames;
localeUtils: LocaleUtils;
localeUtils: typeof LocaleUtils;
locale: string;
months?: string[];
onClick?: React.MouseEventHandler<HTMLElement>;
Expand All @@ -26,14 +32,14 @@ export interface NavbarElementProps {
onNextClick(callback?: () => void): void;
dir?: string;
labels: { previousMonth: string; nextMonth: string };
localeUtils: LocaleUtils;
localeUtils: typeof LocaleUtils;
locale: string;
}

export interface WeekdayElementProps {
weekday: number;
className: string;
localeUtils: LocaleUtils;
localeUtils: typeof LocaleUtils;
locale: string;
weekdaysLong?: string[];
weekdaysShort?: string[];
Expand Down Expand Up @@ -61,7 +67,7 @@ export interface DayPickerProps {
initialMonth?: Date;
labels?: { previousMonth: string; nextMonth: string };
locale?: string;
localeUtils?: LocaleUtils;
localeUtils?: typeof LocaleUtils;
modifiers?: Partial<Modifiers>;
modifiersStyles?: object;
month?: Date;
Expand Down
14 changes: 7 additions & 7 deletions types/utils.d.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
// TypeScript Version: 2.2

import { RangeModifier, Modifier } from "./common";
import { RangeModifier, Modifier } from './common';

export interface LocaleUtils {
export const LocaleUtils: {
formatDay(day: Date, locale?: string): string;
formatMonthTitle(month: Date, locale?: string): string;
formatWeekdayLong(weekday: number, locale?: string): string;
Expand All @@ -24,9 +24,9 @@ export interface LocaleUtils {
string,
string
];
}
};

export interface DateUtils {
export const DateUtils: {
addDayToRange(day: Date, range: RangeModifier): RangeModifier;
addMonths(d: Date, n: number): Date;
clone(d: Date): Date;
Expand All @@ -39,12 +39,12 @@ export interface DateUtils {
isPastDay(day: Date): boolean;
isSameDay(day1: Date, day2: Date): boolean;
isSameMonth(day1: Date, day2: Date): boolean;
}
};

export interface ModifiersUtils {
export const ModifiersUtils: {
dayMatchesModifier(day: Date, modifier?: Modifier | Modifier[]): boolean;
getModifiersForDay(
day: Date,
modifiers: Record<string, Modifier | Modifier[]>
): string[];
}
};

0 comments on commit 33f7b3e

Please sign in to comment.