From 90629e8c50b79bcb5287fe056fb29e73a1bf416a Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 13:53:31 -0700 Subject: [PATCH 1/5] storybook__react: Remove dependency on @types/node Including `@types/node` is problematic because the storybook react api runs in a browser context. `@types/node` defines several globals that are incompatible with common browser contexts (such as `require` and `global` --- types/storybook__react/index.d.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index 7a52903bc7..d9b5f9dbce 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -4,11 +4,9 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -/// - import * as React from 'react'; -export type Renderable = React.StatelessComponent | React.ComponentClass | JSX.Element; +export type Renderable = React.ComponentType | JSX.Element; export type RenderFunction = () => Renderable; export type StoryDecorator = (story: RenderFunction, context: { kind: string, story: string }) => Renderable | null; @@ -22,8 +20,8 @@ export interface Story { export function addDecorator(decorator: StoryDecorator): void; export function configure(fn: () => void, module: any): void; export function setAddon(addon: object): void; -export function storiesOf(name: string, module: NodeModule): Story; -export function storiesOf(name: string, module: NodeModule): Story & T; +export function storiesOf(name: string, module: any): Story; +export function storiesOf(name: string, module: any): Story & T; export interface StoryObject { name: string; From 3d96784a56cb5ba4824aefc82eaf1aa15e4647ea Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 15:28:15 -0700 Subject: [PATCH 2/5] Use `webpack-env` instead of `node` --- types/storybook__react/index.d.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index d9b5f9dbce..5ae3616760 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -4,9 +4,11 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 +/// + import * as React from 'react'; -export type Renderable = React.ComponentType | JSX.Element; +export type Renderable = React.StatelessComponent | React.ComponentClass | JSX.Element; export type RenderFunction = () => Renderable; export type StoryDecorator = (story: RenderFunction, context: { kind: string, story: string }) => Renderable | null; @@ -20,8 +22,8 @@ export interface Story { export function addDecorator(decorator: StoryDecorator): void; export function configure(fn: () => void, module: any): void; export function setAddon(addon: object): void; -export function storiesOf(name: string, module: any): Story; -export function storiesOf(name: string, module: any): Story & T; +export function storiesOf(name: string, module: NodeModule): Story; +export function storiesOf(name: string, module: NodeModule): Story & T; export interface StoryObject { name: string; From 07cc1518c5d834cd646b64620154c31a2021d2d6 Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 15:29:47 -0700 Subject: [PATCH 3/5] Update index.d.ts --- types/storybook__react/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index 5ae3616760..b6f47e499f 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -8,7 +8,7 @@ import * as React from 'react'; -export type Renderable = React.StatelessComponent | React.ComponentClass | JSX.Element; +export type Renderable = React.ComponentType | JSX.Element; export type RenderFunction = () => Renderable; export type StoryDecorator = (story: RenderFunction, context: { kind: string, story: string }) => Renderable | null; From 0dfb13e10f2c6e59a64eb4b73be2e87d2b435f6e Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 18:11:31 -0700 Subject: [PATCH 4/5] remove any --- types/storybook__react/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index b6f47e499f..d21c649d23 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -20,7 +20,7 @@ export interface Story { } export function addDecorator(decorator: StoryDecorator): void; -export function configure(fn: () => void, module: any): void; +export function configure(fn: () => void, module: NodeModule): void; export function setAddon(addon: object): void; export function storiesOf(name: string, module: NodeModule): Story; export function storiesOf(name: string, module: NodeModule): Story & T; From b0dc5d6b26823fe2e334121fc2964d6d36a3663a Mon Sep 17 00:00:00 2001 From: Cameron Little Date: Tue, 15 Aug 2017 18:51:10 -0700 Subject: [PATCH 5/5] Remove last any --- types/storybook__react/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/storybook__react/index.d.ts b/types/storybook__react/index.d.ts index d21c649d23..1228124376 100644 --- a/types/storybook__react/index.d.ts +++ b/types/storybook__react/index.d.ts @@ -8,7 +8,7 @@ import * as React from 'react'; -export type Renderable = React.ComponentType | JSX.Element; +export type Renderable = React.ComponentType | JSX.Element; export type RenderFunction = () => Renderable; export type StoryDecorator = (story: RenderFunction, context: { kind: string, story: string }) => Renderable | null;