From a374bea71d8b86ceb10b2cc48f90f875d098472c Mon Sep 17 00:00:00 2001 From: Matt Date: Thu, 26 Oct 2017 05:51:41 +1100 Subject: [PATCH] [flatpickr] Fix #20701: Deprecate redundant "flatpickr" types (#20983) * Cut: Run "not-needed" script. * Cut: .github/CODEOWNERS entries. * Fix: "react-flatpickr" definition file and tests. --- .github/CODEOWNERS | 2 - notNeededPackages.json | 6 + types/flatpickr/flatpickr-tests.ts | 14 --- types/flatpickr/index.d.ts | 105 ------------------ types/flatpickr/tsconfig.json | 24 ---- types/flatpickr/tslint.json | 1 - types/flatpickr/v2/flatpickr-tests.ts | 14 --- types/flatpickr/v2/index.d.ts | 68 ------------ types/flatpickr/v2/tsconfig.json | 29 ----- types/flatpickr/v2/tslint.json | 1 - types/react-flatpickr/index.d.ts | 4 +- types/react-flatpickr/package.json | 6 + .../react-flatpickr/react-flatpickr-tests.tsx | 4 +- 13 files changed, 16 insertions(+), 262 deletions(-) delete mode 100644 types/flatpickr/flatpickr-tests.ts delete mode 100644 types/flatpickr/index.d.ts delete mode 100644 types/flatpickr/tsconfig.json delete mode 100644 types/flatpickr/tslint.json delete mode 100644 types/flatpickr/v2/flatpickr-tests.ts delete mode 100644 types/flatpickr/v2/index.d.ts delete mode 100644 types/flatpickr/v2/tsconfig.json delete mode 100644 types/flatpickr/v2/tslint.json create mode 100644 types/react-flatpickr/package.json diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index baf58ccc43..0634fd4732 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -931,8 +931,6 @@ /types/first-mate/ @GlenCFL /types/fixed-data-table/ @pepaar @stephenjelfs /types/flat/ @chrootsu -/types/flatpickr/v2/ @UnwrittenFun -/types/flatpickr/ @UnwrittenFun @rowellx68 @wagich /types/flexslider/ @diullei /types/flickity/ @clmcgrath @wagich /types/flight/ @jonathanhedren diff --git a/notNeededPackages.json b/notNeededPackages.json index 6bb2ac7903..4307815cfa 100644 --- a/notNeededPackages.json +++ b/notNeededPackages.json @@ -216,6 +216,12 @@ "sourceRepoURL": "http://fineuploader.com/", "asOfVersion": "5.14.0" }, + { + "libraryName": "flatpickr", + "typingsPackageName": "flatpickr", + "sourceRepoURL": "https://github.com/chmln/flatpickr", + "asOfVersion": "3.1.2" + }, { "libraryName": "gaea-model", "typingsPackageName": "gaea-model", diff --git a/types/flatpickr/flatpickr-tests.ts b/types/flatpickr/flatpickr-tests.ts deleted file mode 100644 index f6800e38b7..0000000000 --- a/types/flatpickr/flatpickr-tests.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as Flatpickr from 'flatpickr'; - -const picker1 = new Flatpickr('input'); - -const input = document.querySelector('input'); -if (input != null) { - const picker2 = new Flatpickr(input, { - mode: 'range', - onChange: dates => null - }); - picker2.setDate(['2016-11-15T00:00:00.000Z', new Date()]); -} - -picker1.destroy(); diff --git a/types/flatpickr/index.d.ts b/types/flatpickr/index.d.ts deleted file mode 100644 index eb29ddfa14..0000000000 --- a/types/flatpickr/index.d.ts +++ /dev/null @@ -1,105 +0,0 @@ -// Type definitions for flatpickr 3.0 -// Project: https://github.com/chmln/flatpickr -// Definitions by: James Birtles -// Rowell Heria -// Michael Wagner -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - -declare function flatpickr(element: string | Element | HTMLElement, options?: Flatpickr.Options): Flatpickr; - -declare class Flatpickr { - constructor(element: string | Element | HTMLElement, options?: Flatpickr.Options); - - changeMonth(month: number, isOffset?: boolean): void; - clear(): void; - close(): void; - destroy(): void; - formatDate(date: Date, format: string): string; - jumpToDate(date?: Flatpickr.DateString): void; - open(): void; - parseDate(date: string, format: string): Date; - redraw(): void; - set(option: string, value: any): void; - setDate(date: Flatpickr.DateString | Flatpickr.DateString[], triggerChange?: boolean, dateFormat?: string): void; - toggle(): void; - - static localize(locale: string | Flatpickr.Locale): void; - static l10ns: { - default: Flatpickr.Locale; - }; -} - -declare namespace Flatpickr { - interface Options { - altFormat?: string; - altInput?: boolean; - altInputClass?: string; - allowInput?: boolean; - clickOpens?: boolean; - dateFormat?: string | null; - defaultDate?: DateString | DateString[]; - defaultHour?: number; - defaultMinute?: number; - disable?: DateRange[]; - disableMobile?: boolean; - enable?: DateRange[]; - enableTime?: boolean; - enableSeconds?: boolean; - hourIncrement?: number; - inline?: boolean; - maxDate?: DateString; - minDate?: DateString; - minuteIncrement?: number; - mode?: Mode; - nextArrow?: string; - noCalendar?: boolean; - onChange?: EventCallback | EventCallback[]; - onClose?: EventCallback | EventCallback[]; - onOpen?: EventCallback | EventCallback[]; - onReady?: EventCallback | EventCallback[]; - onMonthChange?: EventCallback | EventCallback[]; - onYearChange?: EventCallback | EventCallback[]; - onValueUpdate?: EventCallback | EventCallback[]; - onDayCreate?: EventCallback | EventCallback[]; - parseDate?(date: string): Date; - prevArrow?: string; - shorthandCurrentMonth?: boolean; - static?: boolean; - time_24hr?: boolean; - utc?: boolean; - weekNumbers?: boolean; - wrap?: boolean; - locale?: string | Locale; - plugins?: any[]; - } - - interface Locale { - weekdays?: { - shorthand?: string[]; - longhand?: string[]; - }; - - months?: { - shorthand?: string[]; - longhand?: string[]; - }; - - firstDayOfWeek?: number; - weekAbbreviation?: string; - rangeSeparator?: string; - am?: string; - pm?: string; - - ordinal?: ((nth: number) => string) | string; - - scrollTitle?: string; - toggleTitle?: string; - } - - type DateString = Date | string; - type DateRange = DateString | { from: DateString, to: DateString } | ((date: Date) => boolean); - type Mode = 'single' | 'multiple' | 'range'; - type EventCallback = (selectedDates: Date[], dateStr: string, instance: Flatpickr, elem: HTMLElement) => void; -} - -export = Flatpickr; diff --git a/types/flatpickr/tsconfig.json b/types/flatpickr/tsconfig.json deleted file mode 100644 index 7980eb3627..0000000000 --- a/types/flatpickr/tsconfig.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "compilerOptions": { - "module": "commonjs", - "lib": [ - "es6", - "dom" - ], - "noImplicitAny": true, - "noImplicitThis": true, - "strictNullChecks": true, - "strictFunctionTypes": true, - "baseUrl": "../", - "typeRoots": [ - "../" - ], - "types": [], - "noEmit": true, - "forceConsistentCasingInFileNames": true - }, - "files": [ - "index.d.ts", - "flatpickr-tests.ts" - ] -} \ No newline at end of file diff --git a/types/flatpickr/tslint.json b/types/flatpickr/tslint.json deleted file mode 100644 index 3db14f85ea..0000000000 --- a/types/flatpickr/tslint.json +++ /dev/null @@ -1 +0,0 @@ -{ "extends": "dtslint/dt.json" } diff --git a/types/flatpickr/v2/flatpickr-tests.ts b/types/flatpickr/v2/flatpickr-tests.ts deleted file mode 100644 index f6800e38b7..0000000000 --- a/types/flatpickr/v2/flatpickr-tests.ts +++ /dev/null @@ -1,14 +0,0 @@ -import * as Flatpickr from 'flatpickr'; - -const picker1 = new Flatpickr('input'); - -const input = document.querySelector('input'); -if (input != null) { - const picker2 = new Flatpickr(input, { - mode: 'range', - onChange: dates => null - }); - picker2.setDate(['2016-11-15T00:00:00.000Z', new Date()]); -} - -picker1.destroy(); diff --git a/types/flatpickr/v2/index.d.ts b/types/flatpickr/v2/index.d.ts deleted file mode 100644 index 9a98beabaa..0000000000 --- a/types/flatpickr/v2/index.d.ts +++ /dev/null @@ -1,68 +0,0 @@ -// Type definitions for flatpickr 2.2 -// Project: https://github.com/chmln/flatpickr -// Definitions by: James Birtles -// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - -declare class Flatpickr { - constructor(element: string | Element, options?: Flatpickr.Options); - - changeMonth(month: number, isOffset: boolean): void; - clear(): void; - close(): void; - destroy(): void; - formatDate(format: string, date: Date): string; - jumpToDate(date?: Flatpickr.DateString): void; - open(): void; - parseDate(date: string): Date; - redraw(): void; - set(option: string, value: any): void; - setDate(date: Flatpickr.DateString | Flatpickr.DateString[]): void; - toggle(): void; -} - -declare namespace Flatpickr { - interface Options { - altFormat?: string; - altInput?: boolean; - altInputClass?: string; - allowInput?: boolean; - clickOpens?: boolean; - dateFormat?: string | null; - defaultDate?: DateString | DateString[]; - disable?: DateRange[]; - enable?: DateRange[]; - enableTime?: boolean; - enableSeconds?: boolean; - hourIncrement?: number; - inline?: boolean; - maxDate?: DateString; - minDate?: DateString; - minuteIncrement?: number; - mode?: Mode; - nextArrow?: string; - noCalendar?: boolean; - onChange?: EventCallback | EventCallback[]; - onClose?: EventCallback | EventCallback[]; - onOpen?: EventCallback | EventCallback[]; - onReady?: EventCallback | EventCallback[]; - onMonthChange?: EventCallback | EventCallback[]; - onYearChange?: EventCallback | EventCallback[]; - onValueUpdate?: EventCallback | EventCallback[]; - onDayCreate?: EventCallback | EventCallback[]; - parseDate?(date: string): Date; - prevArrow?: string; - shorthandCurrentMonth?: boolean; - static?: boolean; - time_24hr?: boolean; - utc?: boolean; - weekNumbers?: boolean; - wrap?: boolean; - } - - type DateString = Date | string; - type DateRange = DateString | { from: DateString, to: DateString } | ((date: Date) => boolean); - type Mode = 'single' | 'multiple' | 'range'; - type EventCallback = (selectedDates: Date[], dateStr: string, instance: Flatpickr, elem: HTMLElement) => void; -} - -export = Flatpickr; diff --git a/types/flatpickr/v2/tsconfig.json b/types/flatpickr/v2/tsconfig.json deleted file mode 100644 index 844aea45cd..0000000000 --- a/types/flatpickr/v2/tsconfig.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "compilerOptions": { - "module": "commonjs", - "lib": [ - "es6", - "dom" - ], - "noImplicitAny": true, - "noImplicitThis": true, - "strictNullChecks": true, - "strictFunctionTypes": true, - "baseUrl": "../../", - "typeRoots": [ - "../../" - ], - "paths": { - "flatpickr": [ - "flatpickr/v2" - ] - }, - "types": [], - "noEmit": true, - "forceConsistentCasingInFileNames": true - }, - "files": [ - "index.d.ts", - "flatpickr-tests.ts" - ] -} \ No newline at end of file diff --git a/types/flatpickr/v2/tslint.json b/types/flatpickr/v2/tslint.json deleted file mode 100644 index 3db14f85ea..0000000000 --- a/types/flatpickr/v2/tslint.json +++ /dev/null @@ -1 +0,0 @@ -{ "extends": "dtslint/dt.json" } diff --git a/types/react-flatpickr/index.d.ts b/types/react-flatpickr/index.d.ts index 68b2d793f8..e960524854 100644 --- a/types/react-flatpickr/index.d.ts +++ b/types/react-flatpickr/index.d.ts @@ -5,12 +5,12 @@ // TypeScript Version: 2.3 import { Component } from 'react'; -import { EventCallback, Options } from 'flatpickr'; +import { Hook, Options } from 'flatpickr'; export interface DateTimePickerProps { defaultValue?: string; options?: Options; - onChange?: EventCallback; + onChange?: Hook; value?: string; } diff --git a/types/react-flatpickr/package.json b/types/react-flatpickr/package.json new file mode 100644 index 0000000000..3042893929 --- /dev/null +++ b/types/react-flatpickr/package.json @@ -0,0 +1,6 @@ +{ + "private": true, + "dependencies": { + "flatpickr": "^4.0.6" + } +} diff --git a/types/react-flatpickr/react-flatpickr-tests.tsx b/types/react-flatpickr/react-flatpickr-tests.tsx index 948b65e84e..c3dc0f4adc 100644 --- a/types/react-flatpickr/react-flatpickr-tests.tsx +++ b/types/react-flatpickr/react-flatpickr-tests.tsx @@ -1,4 +1,4 @@ -import * as Flatpickr from 'flatpickr'; +import { Instance } from 'flatpickr'; import * as React from 'react'; import DatePicker from 'react-flatpickr'; @@ -12,7 +12,7 @@ const options = { const optionsElement = ; const onChange = ( - selectedDates: Date[], dateStr: string, instance: Flatpickr, + selectedDates: Date[], dateStr: string, instance: Instance, elem: HTMLElement ) => null; const onChangeElement = ;