diff --git a/package.json b/package.json index c97b0e62a..29ab09a34 100644 --- a/package.json +++ b/package.json @@ -56,17 +56,17 @@ "tcomb": "3.2.22", "tcomb-react": "0.9.3", "tlds": "1.194.0", - "typelevel-ts": "0.1.2" + "typelevel-ts": "0.2.3" }, "devDependencies": { + "@types/classnames": "2.2.3", "@types/enzyme": "2.8.6", "@types/faker": "4.1.2", + "@types/fixed-data-table": "0.6.32", "@types/jest": "20.0.7", + "@types/linkify-it": "2.0.1", "@types/lodash": "4.14.74", "@types/node": "8.0.25", - "@types/classnames": "2.2.3", - "@types/fixed-data-table": "0.6.32", - "@types/linkify-it": "2.0.1", "@types/prop-types": "15.5.2", "@types/react": "^15.6.1", "@types/react-dates": "12.1.2", @@ -95,7 +95,7 @@ "style-loader": "0.17.0", "ts-jest": "20.0.10", "ts-loader": "2.3.4", - "typescript": "2.4.2", + "typescript": "2.6.2", "webpack": "3.5.5" }, "peerDependencies": { diff --git a/src/FocusableView/FocusableView.tsx b/src/FocusableView/FocusableView.tsx index e6388b41b..6033ab050 100644 --- a/src/FocusableView/FocusableView.tsx +++ b/src/FocusableView/FocusableView.tsx @@ -94,7 +94,7 @@ export class FocusableView extends React.Component { } } - onFocusBlurEventDebounced = debounce(this._onFocusBlurEvent, this.defaultedProps().debounce) + onFocusBlurEventDebounced: ((type: string) => void) & _.Cancelable = debounce(this._onFocusBlurEvent, this.defaultedProps().debounce) onFocusBlurEvent = ({ type }: React.FocusEvent) => ( !t.Nil.is(this.defaultedProps().debounce) ? this.onFocusBlurEventDebounced(type) : this._onFocusBlurEvent(type) diff --git a/src/Tablo/Column/columnUtility.ts b/src/Tablo/Column/columnUtility.ts index 239f72ab7..d49a5c8fe 100644 --- a/src/Tablo/Column/columnUtility.ts +++ b/src/Tablo/Column/columnUtility.ts @@ -22,7 +22,7 @@ export const getColumnList = (children: TabloChildren return thereAreGroups ? flatMap(chArray, ch => Children.toArray(ch.props.children)) : chArray; }; -export const updateColumns = curry((children: TabloChildren, update: UpdateColumnsHandler): JSX.Element[] => { +export const updateColumns: _.CurriedFunction2<{}, {}, JSX.Element[]> = curry((children: TabloChildren, update: UpdateColumnsHandler): JSX.Element[] => { const updateIfColumn = (colGroup?: React.ReactElement>) => (col: React.ReactElement>, index: number) => col.type === Column ? update({ col , index, colGroup }) : col; const chArray = Children.toArray(children) as React.ReactElement | ColumnGroup.Props>[]; const thereAreGroups = chArray.filter(ch => ch.type === ColumnGroup).length > 0; diff --git a/src/Tablo/plugins/columnsReorder/htmlBackend.ts b/src/Tablo/plugins/columnsReorder/htmlBackend.ts index 7cc5448f7..71f839496 100644 --- a/src/Tablo/plugins/columnsReorder/htmlBackend.ts +++ b/src/Tablo/plugins/columnsReorder/htmlBackend.ts @@ -1,5 +1,5 @@ import HTML5Backend from 'react-dnd-html5-backend'; import { DragDropContext } from 'react-dnd'; -const dragDropContextHTML5Backend = DragDropContext(HTML5Backend); +const dragDropContextHTML5Backend:

(componentClass: React.ComponentClass

| React.StatelessComponent

) => __ReactDnd.ContextComponentClass

= DragDropContext(HTML5Backend); export default dragDropContextHTML5Backend; diff --git a/src/Tablo/plugins/columnsResize/columnsResizeGrid.tsx b/src/Tablo/plugins/columnsResize/columnsResizeGrid.tsx index 2adf42ad8..56f1e200b 100644 --- a/src/Tablo/plugins/columnsResize/columnsResizeGrid.tsx +++ b/src/Tablo/plugins/columnsResize/columnsResizeGrid.tsx @@ -35,7 +35,7 @@ const getLocals = ({ onColumnResize, ...props }: Tablo.Prop isColumnResizing: false, children: __children, ...gridProps - }; + } as Tablo.Props; // TODO: remove cast -> error on `onColumnsResizeEndCallback` }; diff --git a/src/Tablo/utils.ts b/src/Tablo/utils.ts index ea95859ae..5142d04ba 100644 --- a/src/Tablo/utils.ts +++ b/src/Tablo/utils.ts @@ -1 +1 @@ -export const getArrayChildren = (maybeArrayChildren?: React.ReactElement | React.ReactElement[]): React.ReactElement[] | undefined => maybeArrayChildren ? Array.isArray(maybeArrayChildren) ? maybeArrayChildren : [maybeArrayChildren] : undefined; +export const getArrayChildren: (maybeArrayChildren?: React.ReactElement | React.ReactElement[] | undefined) => React.ReactElement[] | undefined = maybeArrayChildren => maybeArrayChildren ? Array.isArray(maybeArrayChildren) ? maybeArrayChildren : [maybeArrayChildren] : undefined; diff --git a/src/TextOverflow/TextOverflow.tsx b/src/TextOverflow/TextOverflow.tsx index a526ae05d..0d6c1700d 100644 --- a/src/TextOverflow/TextOverflow.tsx +++ b/src/TextOverflow/TextOverflow.tsx @@ -126,7 +126,7 @@ export class TextOverflow extends React.Component { _onMouseEvent = (type: string) => (type === 'mouseenter') && this.onMouseEnter(); - onMouseEventDebounced = debounce(this._onMouseEvent, this.props.delayWhenLazy); + onMouseEventDebounced: ((type: string) => false | void) & _.Cancelable = debounce(this._onMouseEvent, this.props.delayWhenLazy); onMouseEvent: React.MouseEventHandler = ({ type }) => { this.props.delayWhenLazy ? this.onMouseEventDebounced(type) : this._onMouseEvent(type) diff --git a/typings/css-element-queries.d.ts b/typings/css-element-queries.d.ts index 4dec79264..65f1a4594 100644 --- a/typings/css-element-queries.d.ts +++ b/typings/css-element-queries.d.ts @@ -1,5 +1,6 @@ declare module 'css-element-queries/src/ResizeSensor' { - export = class ResizeSensor { + class ResizeSensor { constructor(element: (Element | Element[]), callback: Function); } + export = ResizeSensor }