Cleaning up both react transition group type definitions (#15701)

* updating both transition group type definitions
this patch makes the type definitions more consistent with naming and react usage conventions.
additionally updating the version for react-addons-transition-group to 15.0

* adjusting naming of props to be better aligned with the react namespace.
This will remove the React* prefix in favour of allowing react namespace access like React.*
This will also address breaking compatibility with existing type definitions.
This commit is contained in:
Pat Sissons
2017-04-20 11:15:56 -07:00
committed by Andy
parent 76bc8c2564
commit 54f335248d
2 changed files with 14 additions and 12 deletions

View File

@@ -5,7 +5,7 @@
// TypeScript Version: 2.1
import 'react-addons-transition-group';
import { ComponentClass, TransitionGroupProps, CSSTransitionGroupProps } from 'react';
import { ComponentClass, CSSTransitionGroupProps } from 'react';
declare module 'react' {
interface CSSTransitionGroupTransitionName {
@@ -17,7 +17,7 @@ declare module 'react' {
appearActive?: string;
}
export interface CSSTransitionGroupProps extends TransitionGroupProps {
export interface CSSTransitionGroupProps extends HTMLTransitionGroupProps<ReactCSSTransitionGroup> {
transitionName: string | CSSTransitionGroupTransitionName;
transitionAppear?: boolean;
transitionAppearTimeout?: number;
@@ -28,7 +28,6 @@ declare module 'react' {
}
}
declare var CSSTransitionGroup: CSSTransitionGroup;
type CSSTransitionGroup = ComponentClass<CSSTransitionGroupProps>;
export = CSSTransitionGroup;
declare var ReactCSSTransitionGroup: ReactCSSTransitionGroup;
type ReactCSSTransitionGroup = ComponentClass<CSSTransitionGroupProps>;
export = ReactCSSTransitionGroup;

View File

@@ -1,18 +1,21 @@
// Type definitions for React (react-addons-transition-group) 0.14
// Type definitions for React (react-addons-transition-group) 15.0
// Project: http://facebook.github.io/react/
// Definitions by: Asana <https://asana.com>, AssureSign <http://www.assuresign.com>, Microsoft <https://microsoft.com>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.1
import { ReactElement, ComponentClass, ReactType, TransitionGroupProps } from 'react';
import { ComponentClass, TransitionGroupProps } from 'react';
declare module 'react' {
export interface TransitionGroupProps extends HTMLAttributes<{}> {
export interface HTMLTransitionGroupProps<T> extends HTMLAttributes<T> {
component?: ReactType;
className?: string;
childFactory?: (child: ReactElement<any>) => ReactElement<any>;
}
export interface TransitionGroupProps extends HTMLTransitionGroupProps<ReactTransitionGroup> {
}
}
declare var ReactCSSTransitionGroup : ComponentClass<TransitionGroupProps>;
export = ReactCSSTransitionGroup;
declare var ReactTransitionGroup: ReactTransitionGroup;
type ReactTransitionGroup = ComponentClass<TransitionGroupProps>;
export = ReactTransitionGroup;