This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
admin-panel/src/features/UsersPage/UsersPage.useUsers.ts

28 lines
649 B
TypeScript
Raw Normal View History

2021-03-09 18:44:13 +00:00
import { useQuery } from '@apollo/client';
import { QUERY_USERS } from './queries';
2021-03-09 19:10:34 +00:00
import { Query, QueryUsersArgs } from 'libs/graphql/types';
2021-03-09 18:44:13 +00:00
2021-03-09 19:10:34 +00:00
const useUsers = (page: number, limit: number, sort: string) => {
const { data, loading } = useQuery<Pick<Query, 'users'>, QueryUsersArgs>(
QUERY_USERS,
{
fetchPolicy: 'cache-and-network',
variables: {
offset: page * limit,
sort: [sort],
limit,
},
}
);
return {
users: data?.users.items ?? [],
get loading() {
return this.users.length === 0 && loading;
2021-03-09 19:10:34 +00:00
},
total: data?.users.total ?? 0,
};
2021-03-09 18:44:13 +00:00
};
export default useUsers;