33 lines
760 B
TypeScript
33 lines
760 B
TypeScript
import { ApolloError, ApolloQueryResult, gql, OperationVariables, useQuery } from '@apollo/client';
|
|
import { UserOneQuery } from '@generated/types';
|
|
|
|
export function useUserOneQuery({ id, skip }: { id?: string; skip?: boolean }): {
|
|
data: UserOneQuery | undefined;
|
|
loading: boolean;
|
|
error: ApolloError | undefined;
|
|
refetch: (
|
|
variables?: Partial<OperationVariables> | undefined
|
|
) => Promise<ApolloQueryResult<UserOneQuery>>;
|
|
} {
|
|
const { data, loading, error, refetch } = useQuery<UserOneQuery>(query, {
|
|
variables: { id },
|
|
skip
|
|
});
|
|
return {
|
|
data,
|
|
loading,
|
|
error,
|
|
refetch
|
|
};
|
|
}
|
|
|
|
const query = gql`
|
|
query UserOne($id: ID!) {
|
|
userOne(id: $id) {
|
|
id
|
|
username
|
|
createdAt
|
|
updatedAt
|
|
}
|
|
}
|
|
`;
|