Deprecation warning but TypeScript still refers to deprecated value
#7.315 geöffnet am 27. Okt. 2023
Repository-Metriken
- Stars
- (19.563 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 5T 16h) (138 gemergte PRs in 30 T)
Beschreibung
Describe the bug
The new version of the React client library gives a deprecation warning if you pass the prop cubejsApi to CubeProvider but gives type errors if you use the new cubeApi value.
Looks like this was introduced in https://github.com/cube-js/cube/pull/7300
To Reproduce
Install @cubejs-client/react@0.34.9.
Create a
Expected behavior
The CubeProviderProps type should contain the cubeApi type.
Screenshots
Minimally reproducible Cube Schema N/A
Version:
@cubejs-client/react@0.34.9
Additional context
Happy to raise a PR to fix - seems like it'd be a matter of changing the index.d.ts file.
I've locally patched it like this:
diff --git a/index.d.ts b/index.d.ts
index 17cabc64b86b4fa9ca5939853d88efc0cf3969f2..1347bc67bff3ab64d22622685a73e6af3dcd6134 100644
--- a/index.d.ts
+++ b/index.d.ts
@@ -39,7 +39,8 @@ declare module '@cubejs-client/react' {
}
type CubeProviderProps = {
- cubejsApi: CubejsApi | null;
+ cubejsApi?: CubejsApi | null;
+ cubeApi: CubejsApi | null;
options?: CubeProviderOptions;
children: React.ReactNode;
};
Please let me know if there are any issues with this approach.