From ff9f9a1aa1f10036cbefca9f9b3f89e2cc45cd84 Mon Sep 17 00:00:00 2001 From: Daniel Bartholomae Date: Fri, 6 Sep 2019 19:45:37 +0200 Subject: [PATCH] [react-loadable-visibility] add types for react-loadable-visibility[react-loadable-visibility] add types for react-loadable-visibility (#37908) --- types/react-loadable-visibility/index.d.ts | 8 ++++ .../loadable-components.d.ts | 2 + .../react-loadable-visibility-tests.tsx | 47 +++++++++++++++++++ .../react-loadable.d.ts | 2 + types/react-loadable-visibility/tsconfig.json | 31 ++++++++++++ types/react-loadable-visibility/tslint.json | 1 + 6 files changed, 91 insertions(+) create mode 100644 types/react-loadable-visibility/index.d.ts create mode 100644 types/react-loadable-visibility/loadable-components.d.ts create mode 100644 types/react-loadable-visibility/react-loadable-visibility-tests.tsx create mode 100644 types/react-loadable-visibility/react-loadable.d.ts create mode 100644 types/react-loadable-visibility/tsconfig.json create mode 100644 types/react-loadable-visibility/tslint.json diff --git a/types/react-loadable-visibility/index.d.ts b/types/react-loadable-visibility/index.d.ts new file mode 100644 index 0000000000..746136591e --- /dev/null +++ b/types/react-loadable-visibility/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for react-loadable-visibility 3.0 +// Project: https://github.com/stratiformltd/react-loadable-visibility#readme +// Definitions by: Daniel Bartholomae +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +import Loadable from './loadable-components'; +export default Loadable; diff --git a/types/react-loadable-visibility/loadable-components.d.ts b/types/react-loadable-visibility/loadable-components.d.ts new file mode 100644 index 0000000000..9cf9a11388 --- /dev/null +++ b/types/react-loadable-visibility/loadable-components.d.ts @@ -0,0 +1,2 @@ +import Loadable from '@loadable/component'; +export default Loadable; diff --git a/types/react-loadable-visibility/react-loadable-visibility-tests.tsx b/types/react-loadable-visibility/react-loadable-visibility-tests.tsx new file mode 100644 index 0000000000..cfdcbcc7bd --- /dev/null +++ b/types/react-loadable-visibility/react-loadable-visibility-tests.tsx @@ -0,0 +1,47 @@ +import * as React from 'react'; +import LoadableComponentVisibilityAsDefaultImport from 'react-loadable-visibility'; +import LoadableComponentVisibility from 'react-loadable-visibility/loadable-components'; +import ReactLoadableVisibility from 'react-loadable-visibility/react-loadable'; + +interface Props { + title: string; +} + +const TestComponent: React.FunctionComponent = ({ title }) => { + return
{title} component
; +}; + +const testComponentModule = Promise.resolve(TestComponent); + +function Loading() { + return
Loading...
; +} + +const LoadableComponentAsDefaultImportComponent = LoadableComponentVisibilityAsDefaultImport( + () => testComponentModule, + { + fallback: , + }, +); + +const LoadableComponentComponent = LoadableComponentVisibility( + () => testComponentModule, + { + fallback: , + }, +); + +const ReactLoadableComponent = ReactLoadableVisibility({ + loader: () => testComponentModule, + loading: Loading, +}); + +function App() { + return ( +
+ + + +
+ ); +} diff --git a/types/react-loadable-visibility/react-loadable.d.ts b/types/react-loadable-visibility/react-loadable.d.ts new file mode 100644 index 0000000000..3756e9b82d --- /dev/null +++ b/types/react-loadable-visibility/react-loadable.d.ts @@ -0,0 +1,2 @@ +import * as Loadable from 'react-loadable'; +export default Loadable; diff --git a/types/react-loadable-visibility/tsconfig.json b/types/react-loadable-visibility/tsconfig.json new file mode 100644 index 0000000000..d674c4f63e --- /dev/null +++ b/types/react-loadable-visibility/tsconfig.json @@ -0,0 +1,31 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictFunctionTypes": true, + "strictNullChecks": true, + "baseUrl": "../", + "jsx": "react", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "paths": { + "@loadable/component": [ + "loadable__component" + ] + } + }, + "files": [ + "index.d.ts", + "loadable-components.d.ts", + "react-loadable.d.ts", + "react-loadable-visibility-tests.tsx" + ] +} diff --git a/types/react-loadable-visibility/tslint.json b/types/react-loadable-visibility/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react-loadable-visibility/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }