From 96c08e91578159ab16b3e197b5f8a19465d1c3db Mon Sep 17 00:00:00 2001 From: Joe Anderson Date: Wed, 28 Feb 2024 11:06:20 +0000 Subject: [PATCH 1/2] Do not use Provider component imported from jotai --- .changeset/cuddly-pets-tickle.md | 5 +++++ packages/jotai-x/src/atomProvider.ts | 6 ------ packages/jotai-x/src/createAtomProvider.tsx | 11 ++++------- packages/jotai-x/src/index.ts | 1 - 4 files changed, 9 insertions(+), 14 deletions(-) create mode 100644 .changeset/cuddly-pets-tickle.md delete mode 100644 packages/jotai-x/src/atomProvider.ts diff --git a/.changeset/cuddly-pets-tickle.md b/.changeset/cuddly-pets-tickle.md new file mode 100644 index 0000000..1535955 --- /dev/null +++ b/.changeset/cuddly-pets-tickle.md @@ -0,0 +1,5 @@ +--- +'jotai-x': patch +--- + +Do not render jotai's Provider component as part of jotai-x's provider. Jotai's Provider is unnecessary and interferes with vanilla jotai atoms. diff --git a/packages/jotai-x/src/atomProvider.ts b/packages/jotai-x/src/atomProvider.ts deleted file mode 100644 index 8ec9882..0000000 --- a/packages/jotai-x/src/atomProvider.ts +++ /dev/null @@ -1,6 +0,0 @@ -import React from 'react'; -import { Provider } from 'jotai'; - -export type AtomProviderProps = React.ComponentProps; - -export { Provider as AtomProvider } from 'jotai'; diff --git a/packages/jotai-x/src/createAtomProvider.tsx b/packages/jotai-x/src/createAtomProvider.tsx index 213d8fe..357ecaa 100644 --- a/packages/jotai-x/src/createAtomProvider.tsx +++ b/packages/jotai-x/src/createAtomProvider.tsx @@ -1,7 +1,6 @@ import React from 'react'; import { createStore } from 'jotai/vanilla'; -import { AtomProvider, AtomProviderProps } from './atomProvider'; import { JotaiStore, SimpleWritableAtomRecord } from './createAtomStore'; import { useHydrateStore, useSyncStore } from './useHydrateStore'; @@ -116,13 +115,11 @@ export const createAtomProvider = ( return ( - - - {!!Effect && } + + {!!Effect && } - {children} - - + {children} + ); }; diff --git a/packages/jotai-x/src/index.ts b/packages/jotai-x/src/index.ts index b9d1112..981915b 100644 --- a/packages/jotai-x/src/index.ts +++ b/packages/jotai-x/src/index.ts @@ -2,7 +2,6 @@ * @file Automatically generated by barrelsby. */ -export * from './atomProvider'; export * from './atomWithFn'; export * from './createAtomProvider'; export * from './createAtomStore'; From bfa81b186e6fa38ed8edb5d33db6fe85b911a9a0 Mon Sep 17 00:00:00 2001 From: Joe Anderson Date: Wed, 28 Feb 2024 11:10:40 +0000 Subject: [PATCH 2/2] Fix types --- packages/jotai-x/src/createAtomProvider.tsx | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/jotai-x/src/createAtomProvider.tsx b/packages/jotai-x/src/createAtomProvider.tsx index 357ecaa..70ae863 100644 --- a/packages/jotai-x/src/createAtomProvider.tsx +++ b/packages/jotai-x/src/createAtomProvider.tsx @@ -42,12 +42,13 @@ export const useAtomStore = ( return store; }; -export type ProviderProps = AtomProviderProps & - Partial & { - scope?: string; - initialValues?: Partial; - resetKey?: any; - }; +export type ProviderProps = Partial & { + store?: JotaiStore; + scope?: string; + initialValues?: Partial; + resetKey?: any; + children: React.ReactNode; +}; export const HydrateAtoms = ({ initialValues,