callstack/react-theme-provider

Improve support for React v18

kennethlynne opened this issue ยท 3 comments

Hi! ๐Ÿ‘‹

Firstly, thanks for your work on this project! ๐Ÿ™‚

With React v18 children is expected to be explicitly typed

I've used patch-package to patch @callstack/react-theme-provider@3.0.8

Here is the diff that solved my problem:

diff --git a/node_modules/@callstack/react-theme-provider/typings/index.d.ts b/node_modules/@callstack/react-theme-provider/typings/index.d.ts
index fd76d0e..df3cf54 100644
--- a/node_modules/@callstack/react-theme-provider/typings/index.d.ts
+++ b/node_modules/@callstack/react-theme-provider/typings/index.d.ts
@@ -8,7 +8,7 @@ type $Without<T, K extends keyof any> = T extends any ? Pick<T, Exclude<keyof T,
 type $DeepPartial<T> = { [P in keyof T]?: $DeepPartial<T[P]> };
 
 export type ThemingType<Theme> = {
-  ThemeProvider: React.ComponentType<{ theme?: Theme }>;
+  ThemeProvider: React.ComponentType<{ theme?: Theme; children: React.ReactNode }>;
   withTheme: <Props extends { theme: Theme }, C>(
     WrappedComponent: React.ComponentType<Props> & C
   ) => React.ComponentType<

Is this package dead?...

Is this package dead?...

I ask myself the same question.

This package is used in react-native-paper, which is the most important Material Design component lib for React Native.

Fixed in #155 and released on version 3.0.9