From 918e7e9df33380b02e448debe91f4bc9c1b248a2 Mon Sep 17 00:00:00 2001 From: Mark Erikson Date: Thu, 8 Jul 2021 19:57:07 -0400 Subject: [PATCH] Consolidate entry points (#1761) --- package.json | 2 +- src/alternate-renderers.js | 26 --------------- src/alternate-renderers.ts | 9 ++++++ src/exports.ts | 61 +++++++++++++++++++++++++++++++++++ src/index.ts | 66 +++----------------------------------- tsconfig.json | 2 +- 6 files changed, 77 insertions(+), 89 deletions(-) delete mode 100644 src/alternate-renderers.js create mode 100644 src/alternate-renderers.ts create mode 100644 src/exports.ts diff --git a/package.json b/package.json index 9ce3dc99f..031361c6e 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "repository": "github:reduxjs/react-redux", "bugs": "https://github.com/reduxjs/react-redux/issues", "main": "./lib/index.js", - "types": "./lib/index.d.ts", + "types": "./es/index.d.ts", "unpkg": "dist/react-redux.js", "module": "es/index.js", "files": [ diff --git a/src/alternate-renderers.js b/src/alternate-renderers.js deleted file mode 100644 index a15431fcb..000000000 --- a/src/alternate-renderers.js +++ /dev/null @@ -1,26 +0,0 @@ -import Provider from './components/Provider' -import connectAdvanced from './components/connectAdvanced' -import { ReactReduxContext } from './components/Context' -import connect from './connect/connect' - -import { useDispatch } from './hooks/useDispatch' -import { useSelector } from './hooks/useSelector' -import { useStore } from './hooks/useStore' - -import { getBatch } from './utils/batch' -import shallowEqual from './utils/shallowEqual' - -// For other renderers besides ReactDOM and React Native, use the default noop batch function -const batch = getBatch() - -export { - Provider, - connectAdvanced, - ReactReduxContext, - connect, - batch, - useDispatch, - useSelector, - useStore, - shallowEqual, -} diff --git a/src/alternate-renderers.ts b/src/alternate-renderers.ts new file mode 100644 index 000000000..456c7a23d --- /dev/null +++ b/src/alternate-renderers.ts @@ -0,0 +1,9 @@ +export * from './exports' + +import { getBatch } from './utils/batch' + +// For other renderers besides ReactDOM and React Native, +// use the default noop batch function +const batch = getBatch() + +export { batch } diff --git a/src/exports.ts b/src/exports.ts new file mode 100644 index 000000000..c29bc3bff --- /dev/null +++ b/src/exports.ts @@ -0,0 +1,61 @@ +import Provider from './components/Provider' +import type { ProviderProps } from './components/Provider' +import connectAdvanced from './components/connectAdvanced' +import type { + ConnectAdvancedOptions, + ConnectProps, +} from './components/connectAdvanced' +import type { + SelectorFactory, + Selector, + MapStateToProps, + MapStateToPropsFactory, + MapStateToPropsParam, + MapDispatchToPropsFunction, + MapDispatchToProps, + MapDispatchToPropsFactory, + MapDispatchToPropsParam, + MapDispatchToPropsNonObject, + MergeProps, +} from './connect/selectorFactory' +import { ReactReduxContext } from './components/Context' +import type { ReactReduxContextValue } from './components/Context' +import connect from './connect/connect' + +import { useDispatch, createDispatchHook } from './hooks/useDispatch' +import { useSelector, createSelectorHook } from './hooks/useSelector' +import { useStore, createStoreHook } from './hooks/useStore' + +import shallowEqual from './utils/shallowEqual' + +export * from './types' +export type { + ProviderProps, + SelectorFactory, + Selector, + MapStateToProps, + MapStateToPropsFactory, + MapStateToPropsParam, + ConnectProps, + ConnectAdvancedOptions, + MapDispatchToPropsFunction, + MapDispatchToProps, + MapDispatchToPropsFactory, + MapDispatchToPropsParam, + MapDispatchToPropsNonObject, + MergeProps, + ReactReduxContextValue, +} +export { + Provider, + connectAdvanced, + ReactReduxContext, + connect, + useDispatch, + createDispatchHook, + useSelector, + createSelectorHook, + useStore, + createStoreHook, + shallowEqual, +} diff --git a/src/index.ts b/src/index.ts index 1073f81e2..f37b19b31 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,66 +1,10 @@ -import Provider from './components/Provider' -import type { ProviderProps } from './components/Provider' -import connectAdvanced from './components/connectAdvanced' -import type { - ConnectAdvancedOptions, - ConnectProps, -} from './components/connectAdvanced' -import type { - SelectorFactory, - Selector, - MapStateToProps, - MapStateToPropsFactory, - MapStateToPropsParam, - MapDispatchToPropsFunction, - MapDispatchToProps, - MapDispatchToPropsFactory, - MapDispatchToPropsParam, - MapDispatchToPropsNonObject, - MergeProps, -} from './connect/selectorFactory' -import { ReactReduxContext } from './components/Context' -import type { ReactReduxContextValue } from './components/Context' -import connect from './connect/connect' +export * from './exports' -import { useDispatch, createDispatchHook } from './hooks/useDispatch' -import { useSelector, createSelectorHook } from './hooks/useSelector' -import { useStore, createStoreHook } from './hooks/useStore' - -import { setBatch } from './utils/batch' import { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates' -import shallowEqual from './utils/shallowEqual' +import { setBatch } from './utils/batch' +// Enable batched updates in our subscriptions for use +// with standard React renderers (ReactDOM, React Native) setBatch(batch) -export * from './types' -export type { - ProviderProps, - SelectorFactory, - Selector, - MapStateToProps, - MapStateToPropsFactory, - MapStateToPropsParam, - ConnectProps, - ConnectAdvancedOptions, - MapDispatchToPropsFunction, - MapDispatchToProps, - MapDispatchToPropsFactory, - MapDispatchToPropsParam, - MapDispatchToPropsNonObject, - MergeProps, - ReactReduxContextValue, -} -export { - Provider, - connectAdvanced, - ReactReduxContext, - connect, - batch, - useDispatch, - createDispatchHook, - useSelector, - createSelectorHook, - useStore, - createStoreHook, - shallowEqual, -} +export { batch } diff --git a/tsconfig.json b/tsconfig.json index e0044ea61..d4a4611a4 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -10,7 +10,7 @@ "jsx": "react", "declaration": true, "emitDeclarationOnly": true, - "outDir": "./lib", + "outDir": "./es", "forceConsistentCasingInFileNames": true }, "include": ["src/**/*", "types"],