index.js 908 B

12345678910111213141516
  1. // The primary entry point assumes we're working with standard ReactDOM/RN, but
  2. // older versions that do not include `useSyncExternalStore` (React 16.9 - 17.x).
  3. // Because of that, the useSyncExternalStore compat shim is needed.
  4. import { useSyncExternalStore } from 'use-sync-external-store/shim';
  5. import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';
  6. import { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';
  7. import { setBatch } from './utils/batch';
  8. import { initializeUseSelector } from './hooks/useSelector';
  9. import { initializeConnect } from './components/connect';
  10. initializeUseSelector(useSyncExternalStoreWithSelector);
  11. initializeConnect(useSyncExternalStore); // Enable batched updates in our subscriptions for use
  12. // with standard React renderers (ReactDOM, React Native)
  13. setBatch(batch);
  14. export { batch };
  15. export * from './exports';