From a43c2843cdcdfbf62a7c5d503f29acf24c4d38f3 Mon Sep 17 00:00:00 2001 From: Vincent Siao Date: Thu, 5 Nov 2015 11:25:16 -0800 Subject: [PATCH] [React.14] Add ReactInstance type (Component | Element) --- react/react-addons-test-utils.d.ts | 37 +++++++++++++++--------------- react/react-dom.d.ts | 8 ++----- react/react.d.ts | 11 +++------ 3 files changed, 24 insertions(+), 32 deletions(-) diff --git a/react/react-addons-test-utils.d.ts b/react/react-addons-test-utils.d.ts index 1362f64c1..0b3f8c0f6 100644 --- a/react/react-addons-test-utils.d.ts +++ b/react/react-addons-test-utils.d.ts @@ -94,6 +94,8 @@ declare namespace __React { export var wheel: EventSimulator; } + export function renderIntoDocument( + element: DOMElement): Element; export function renderIntoDocument

( element: ReactElement

): Component; export function renderIntoDocument>( @@ -104,43 +106,42 @@ declare namespace __React { export function isElementOfType( element: ReactElement, type: ReactType): boolean; - export function isTextComponent(instance: Component): boolean; - export function isDOMComponent(instance: Component): boolean; - export function isCompositeComponent(instance: Component): boolean; + export function isDOMComponent(instance: ReactInstance): boolean; + export function isCompositeComponent(instance: ReactInstance): boolean; export function isCompositeComponentWithType( - instance: Component, + instance: ReactInstance, type: ComponentClass): boolean; export function findAllInRenderedTree( - tree: Component, - fn: (i: Component) => boolean): Component; + root: Component, + fn: (i: ReactInstance) => boolean): ReactInstance[]; export function scryRenderedDOMComponentsWithClass( - tree: Component, - className: string): DOMComponent[]; + root: Component, + className: string): Element[]; export function findRenderedDOMComponentWithClass( - tree: Component, - className: string): DOMComponent; + root: Component, + className: string): Element; export function scryRenderedDOMComponentsWithTag( - tree: Component, - tagName: string): DOMComponent[]; + root: Component, + tagName: string): Element[]; export function findRenderedDOMComponentWithTag( - tree: Component, - tagName: string): DOMComponent; + root: Component, + tagName: string): Element; export function scryRenderedComponentsWithType

( - tree: Component, + root: Component, type: ComponentClass

): Component[]; export function scryRenderedComponentsWithType>( - tree: Component, + root: Component, type: ComponentClass): C[]; export function findRenderedComponentWithType

( - tree: Component, + root: Component, type: ComponentClass

): Component; export function findRenderedComponentWithType>( - tree: Component, + root: Component, type: ComponentClass): C; export function createRenderer(): ShallowRenderer; diff --git a/react/react-dom.d.ts b/react/react-dom.d.ts index 7e90a9bf2..f8fd1d5c6 100644 --- a/react/react-dom.d.ts +++ b/react/react-dom.d.ts @@ -8,10 +8,8 @@ declare namespace __React { namespace __DOM { - function findDOMNode( - componentOrElement: __React.Component | Element): TElement; - function findDOMNode( - componentOrElement: __React.Component | Element): Element; + function findDOMNode(instance: ReactInstance): E; + function findDOMNode(instance: ReactInstance): Element; function render

( element: DOMElement

, @@ -49,8 +47,6 @@ declare namespace __React { nextElement: ReactElement

, container: Element, callback?: (component: Component) => any): Component; - - } namespace __DOMServer { diff --git a/react/react.d.ts b/react/react.d.ts index 46b114865..1140ce803 100644 --- a/react/react.d.ts +++ b/react/react.d.ts @@ -112,6 +112,8 @@ declare namespace __React { // Component API // ---------------------------------------------------------------------- + type ReactInstance = Component | Element; + // Base component for plain JS classes class Component implements ComponentLifecycle { static propTypes: ValidationMap; @@ -128,7 +130,7 @@ declare namespace __React { state: S; context: {}; refs: { - [key: string]: Component | Element + [key: string]: ReactInstance }; } @@ -138,13 +140,6 @@ declare namespace __React { getInitialState?(): S; } - interface DOMComponent

extends ClassicComponent { - tagName: string; - } - - type HTMLComponent = DOMComponent; - type SVGComponent = DOMComponent; - interface ChildContextProvider { getChildContext(): CC; }