Преглед изворни кода

Merge pull request #6299 from weseek/feat/improve-with-util-for-swr

feat: Improve withUtils type check
Yuki Takei пре 3 година
родитељ
комит
156bb60307
2 измењених фајлова са 3 додато и 3 уклоњено
  1. 1 1
      packages/app/src/stores/ui.tsx
  2. 2 2
      packages/core/src/utils/with-utils.ts

+ 1 - 1
packages/app/src/stores/ui.tsx

@@ -223,7 +223,7 @@ type PreferDrawerModeByUserUtils = {
   update: (preferDrawerMode: boolean) => void
   update: (preferDrawerMode: boolean) => void
 }
 }
 
 
-export const usePreferDrawerModeByUser = (initialData?: boolean): SWRResponseWithUtils<SWRResponse, PreferDrawerModeByUserUtils> => {
+export const usePreferDrawerModeByUser = (initialData?: boolean): SWRResponseWithUtils<PreferDrawerModeByUserUtils, boolean> => {
   const { data: isGuestUser } = useIsGuestUser();
   const { data: isGuestUser } = useIsGuestUser();
   const { scheduleToPut } = useUserUISettings();
   const { scheduleToPut } = useUserUISettings();
 
 

+ 2 - 2
packages/core/src/utils/with-utils.ts

@@ -1,7 +1,7 @@
 import { SWRResponse } from 'swr';
 import { SWRResponse } from 'swr';
 
 
-export type SWRResponseWithUtils<R extends SWRResponse, U> = R & U;
+export type SWRResponseWithUtils<U, D = any, E = any> = SWRResponse<D, E> & U;
 
 
-export const withUtils = <R extends SWRResponse, U>(response: R, utils: U): SWRResponseWithUtils<R, U> => {
+export const withUtils = <U, D = any, E = any>(response: SWRResponse<D, E>, utils: U): SWRResponseWithUtils<U, D, E> => {
   return Object.assign(response, utils);
   return Object.assign(response, utils);
 };
 };