From 6362af99479ec508e4ca3c8e8ee9d8973a3cc373 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 09:39:17 +0100 Subject: [PATCH 01/15] [enzyme] Add renderProp() function --- types/enzyme/enzyme-tests.tsx | 13 ++++++++++++- types/enzyme/index.d.ts | 8 +++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/types/enzyme/enzyme-tests.tsx b/types/enzyme/enzyme-tests.tsx index 87b4d032e8..14cfd6443c 100644 --- a/types/enzyme/enzyme-tests.tsx +++ b/types/enzyme/enzyme-tests.tsx @@ -10,7 +10,7 @@ import { ShallowRendererProps, ComponentClass as EnzymeComponentClass } from "enzyme"; -import { Component, ReactElement, HTMLAttributes, ComponentClass, StatelessComponent } from "react"; +import { Component, ReactElement, ReactNode, HTMLAttributes, ComponentClass, StatelessComponent } from "react"; // Help classes/interfaces interface MyComponentProps { @@ -35,6 +35,10 @@ interface MyComponentState { stateProperty: string; } +interface MyRenderPropProps { + children: (params: string) => ReactNode; +} + function toComponentType(Component: ComponentClass | StatelessComponent): ComponentClass | StatelessComponent { return Component; } @@ -59,6 +63,8 @@ class AnotherComponent extends Component { } } +class MyRenderPropComponent extends Component {} + const MyStatelessComponent = (props: StatelessProps) => ; const AnotherStatelessComponent = (props: AnotherStatelessProps) => ; @@ -477,6 +483,11 @@ function ShallowWrapperTest() { shallowWrapper = new ShallowWrapper(, undefined, { lifecycleExperimental: true }); shallowWrapper = new ShallowWrapper(, shallowWrapper, { lifecycleExperimental: true }); } + + function test_renderProp() { + let shallowWrapper = new ShallowWrapper(
} />); + shallowWrapper = shallowWrapper.renderProp('children')('test'); + } } // ReactWrapper diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index 257beb21fc..afea55fdaa 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Enzyme 3.1 +// Type definitions for Enzyme 3.9 // Project: https://github.com/airbnb/enzyme // Definitions by: Marian Palkus // Cap3 @@ -8,6 +8,7 @@ // MartynasZilinskas // Torgeir Hovden // Martin Hochel +// Christian Rackerseder // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.8 @@ -447,6 +448,11 @@ export class ShallowWrapper

{ * Returns a wrapper with the direct parent of the node in the current wrapper. */ parent(): ShallowWrapper; + + /** + * Returns a wrapper of the node rendered by the provided render prop. + */ + renderProp(prop: PropName): (...params: any[]) => ShallowWrapper; } // tslint:disable-next-line no-empty-interface From 56e7974886ad418ec175353258f97be6f8c932d2 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 19:44:32 +0100 Subject: [PATCH 02/15] [enzyme] Bump TypeScript version to 3.1 --- types/enzyme/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index afea55fdaa..c269228476 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -10,7 +10,7 @@ // Martin Hochel // Christian Rackerseder // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 /// import { ReactElement, Component, AllHTMLAttributes as ReactHTMLAttributes, SVGAttributes as ReactSVGAttributes } from "react"; From 8b50aa74c8232f83439409651598e3d97a04e27e Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 19:47:41 +0100 Subject: [PATCH 03/15] [enzyme] Use Parameters type --- types/enzyme/index.d.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index c269228476..27d79be0ec 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -364,6 +364,8 @@ export interface CommonWrapper

> { length: number; } +type Parameters = T extends (...args: infer A) => any ? A : never + // tslint:disable-next-line no-empty-interface export interface ShallowWrapper

extends CommonWrapper { } export class ShallowWrapper

{ @@ -452,7 +454,7 @@ export class ShallowWrapper

{ /** * Returns a wrapper of the node rendered by the provided render prop. */ - renderProp(prop: PropName): (...params: any[]) => ShallowWrapper; + renderProp(prop: PropName): (...params: Parameters) => ShallowWrapper; } // tslint:disable-next-line no-empty-interface From fa33c9aa8122af793506dbe3a397600ad4603e42 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:17:30 +0100 Subject: [PATCH 04/15] [enzyme] Bump chai-enzyme TypeScript version to 3.1 --- types/chai-enzyme/index.d.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/types/chai-enzyme/index.d.ts b/types/chai-enzyme/index.d.ts index 783b7fce2f..980e1c5cc1 100644 --- a/types/chai-enzyme/index.d.ts +++ b/types/chai-enzyme/index.d.ts @@ -1,8 +1,9 @@ // Type definitions for chai-enzyme 0.6.1 // Project: https://github.com/producthunt/chai-enzyme // Definitions by: Alexey Svetliakov +// Christian Rackerseder // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 /// From 78dd00dc976ca0989e1ab653cd98dcbc2413097b Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:25:54 +0100 Subject: [PATCH 05/15] [enzyme] Bump @commercetools/enzyme-extensions TypeScript version to 3.1 --- types/commercetools__enzyme-extensions/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/commercetools__enzyme-extensions/index.d.ts b/types/commercetools__enzyme-extensions/index.d.ts index 7c009f8e95..cf7362f0e9 100644 --- a/types/commercetools__enzyme-extensions/index.d.ts +++ b/types/commercetools__enzyme-extensions/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/commercetools/enzyme-extensions // Definitions by: Christian Rackerseder // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import * as enzyme from 'enzyme'; From b7c30ed2b8179a7d848bf52b58fabc7a2f6cd62d Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:30:42 +0100 Subject: [PATCH 06/15] [enzyme] Bump enzyme-adapter-react-15 TypeScript version to 3.1 --- types/chai-enzyme/index.d.ts | 1 - types/enzyme-adapter-react-15/index.d.ts | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/types/chai-enzyme/index.d.ts b/types/chai-enzyme/index.d.ts index 980e1c5cc1..b238b194c5 100644 --- a/types/chai-enzyme/index.d.ts +++ b/types/chai-enzyme/index.d.ts @@ -1,7 +1,6 @@ // Type definitions for chai-enzyme 0.6.1 // Project: https://github.com/producthunt/chai-enzyme // Definitions by: Alexey Svetliakov -// Christian Rackerseder // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 3.1 diff --git a/types/enzyme-adapter-react-15/index.d.ts b/types/enzyme-adapter-react-15/index.d.ts index 77312f3da0..891afc3c21 100644 --- a/types/enzyme-adapter-react-15/index.d.ts +++ b/types/enzyme-adapter-react-15/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/airbnb/enzyme, http://airbnb.io/enzyme // Definitions by: Tanguy Krotoff // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { EnzymeAdapter } from 'enzyme'; From cbafa8ed8d4e14ae281ec4a266abe688bf191c29 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:32:15 +0100 Subject: [PATCH 07/15] [enzyme] Bump enzyme-adapter-react-15.4 TypeScript version to 3.1 --- types/enzyme-adapter-react-15.4/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme-adapter-react-15.4/index.d.ts b/types/enzyme-adapter-react-15.4/index.d.ts index 2496fb1719..a6ea2334c2 100644 --- a/types/enzyme-adapter-react-15.4/index.d.ts +++ b/types/enzyme-adapter-react-15.4/index.d.ts @@ -2,7 +2,7 @@ // Project: http://airbnb.io/enzyme/ // Definitions by: Nabeelah Ali // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { EnzymeAdapter } from 'enzyme'; From ba2b707b754ed6a12d74672a446d9f62dbb8ce6b Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:32:45 +0100 Subject: [PATCH 08/15] [enzyme] Bump enzyme-adapter-react-16 TypeScript version to 3.1 --- types/enzyme-adapter-react-16/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme-adapter-react-16/index.d.ts b/types/enzyme-adapter-react-16/index.d.ts index 257b292055..7208117e71 100644 --- a/types/enzyme-adapter-react-16/index.d.ts +++ b/types/enzyme-adapter-react-16/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/airbnb/enzyme, http://airbnb.io/enzyme // Definitions by: Tanguy Krotoff // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { EnzymeAdapter } from 'enzyme'; From 826a3a821abad0b725b74a544392e1e569a69587 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:39:25 +0100 Subject: [PATCH 09/15] [enzyme] Bump enzyme-async-helpers TypeScript version to 3.1 --- types/enzyme-async-helpers/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme-async-helpers/index.d.ts b/types/enzyme-async-helpers/index.d.ts index 595f29aa71..e5004f4c25 100644 --- a/types/enzyme-async-helpers/index.d.ts +++ b/types/enzyme-async-helpers/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/zth/enzyme-async-helpers // Definitions by: Kim Ehrenpohl // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { ReactWrapper, EnzymeSelector } from 'enzyme'; From 071268efa83591673d926982d65c5e5d5b885405 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:39:59 +0100 Subject: [PATCH 10/15] [enzyme] Bump enzyme-redux TypeScript version to 3.1 --- types/enzyme-redux/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme-redux/index.d.ts b/types/enzyme-redux/index.d.ts index e231119b89..de3693fc6a 100644 --- a/types/enzyme-redux/index.d.ts +++ b/types/enzyme-redux/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/Knegusen/enzyme-redux#readme // Definitions by: Dennis Axelsson // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { ReactWrapper, ShallowWrapper } from 'enzyme'; import { ReactElement } from 'react'; From 7bea90a422a5d8c68ce3922b08b7e3a32214f0a3 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:40:28 +0100 Subject: [PATCH 11/15] [enzyme] Bump enzyme-to-json TypeScript version to 3.1 --- types/enzyme-to-json/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme-to-json/index.d.ts b/types/enzyme-to-json/index.d.ts index 1a8cafb23a..f7c4d75da3 100644 --- a/types/enzyme-to-json/index.d.ts +++ b/types/enzyme-to-json/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/adriantoine/enzyme-to-json#readme // Definitions by: Joscha Feth // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 import { ReactWrapper, ShallowWrapper } from 'enzyme'; From 4ceba8510c6506daa91437c04e132704d6ae35df Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:45:15 +0100 Subject: [PATCH 12/15] [enzyme] Bump jasmine-enzyme TypeScript version to 3.1 --- types/jasmine-enzyme/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/jasmine-enzyme/index.d.ts b/types/jasmine-enzyme/index.d.ts index d64a73e6f6..4884aa2152 100644 --- a/types/jasmine-enzyme/index.d.ts +++ b/types/jasmine-enzyme/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/formidablelabs/enzyme-matchers/packages/jasmine-enzyme // Definitions by: Umar Bolatov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.8 +// TypeScript Version: 3.1 /// /// From 60f1842de1f8f74ade2161dfbc968107175832b7 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:49:48 +0100 Subject: [PATCH 13/15] [enzyme] Bump jest-specific-snapshot TypeScript version to 3.1 --- types/jest-specific-snapshot/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/jest-specific-snapshot/index.d.ts b/types/jest-specific-snapshot/index.d.ts index 0e0a43d895..25c168f5d2 100644 --- a/types/jest-specific-snapshot/index.d.ts +++ b/types/jest-specific-snapshot/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/igor-dv/jest-specific-snapshot#readme // Definitions by: Janeene Beeforth // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 3.0 +// TypeScript Version: 3.1 /// From 96e1866ad6c9d579fbcb014e193a5d6f979e3ac1 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 20:55:28 +0100 Subject: [PATCH 14/15] [enzyme] Bump @storybook/addon-storyshots TypeScript version to 3.1 --- types/storybook__addon-storyshots/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/storybook__addon-storyshots/index.d.ts b/types/storybook__addon-storyshots/index.d.ts index bc265f125c..546386ce40 100644 --- a/types/storybook__addon-storyshots/index.d.ts +++ b/types/storybook__addon-storyshots/index.d.ts @@ -2,7 +2,7 @@ // Project: https://github.com/storybooks/storybook/tree/master/addons/storyshots, https://github.com/storybooks/storybook/tree/master/addons/storyshorts/storyshots-core // Definitions by: Bradley Ayers // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 3.0 +// TypeScript Version: 3.1 import * as React from 'react'; import { StoryObject } from '@storybook/react'; From 03e0f0ff938bf1a7a9d999e2d4d8b3882b07c215 Mon Sep 17 00:00:00 2001 From: Christian Rackerseder Date: Tue, 19 Feb 2019 21:02:29 +0100 Subject: [PATCH 15/15] [enzyme] Export Parameters type --- types/enzyme/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index 27d79be0ec..71238871c7 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -364,7 +364,7 @@ export interface CommonWrapper

> { length: number; } -type Parameters = T extends (...args: infer A) => any ? A : never +export type Parameters = T extends (...args: infer A) => any ? A : never; // tslint:disable-next-line no-empty-interface export interface ShallowWrapper

extends CommonWrapper { }