2020-09-10 19:25:52 +02:00
|
|
|
import { gql, useQuery, QueryHookOptions } from '@apollo/client';
|
2020-07-31 17:36:10 +02:00
|
|
|
import { Workgroup } from '../../types/workgroup';
|
|
|
|
import { useGraphQLData } from './helper';
|
2020-07-21 22:25:39 +02:00
|
|
|
|
2020-07-31 18:04:31 +02:00
|
|
|
export const QUERY_WORKGROUP = gql`
|
2020-07-22 22:25:03 +02:00
|
|
|
query workgroups($filter: WorkgroupsFilter) {
|
|
|
|
workgroups(filter: $filter) {
|
2020-07-21 22:25:39 +02:00
|
|
|
id,
|
|
|
|
name,
|
|
|
|
createdAt,
|
|
|
|
closedAt,
|
|
|
|
members {
|
|
|
|
id,
|
2020-07-22 22:25:03 +02:00
|
|
|
email,
|
|
|
|
name
|
2020-07-21 22:25:39 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
`;
|
|
|
|
|
2020-09-10 19:25:52 +02:00
|
|
|
export function useWorkgroupsQuery<A = any, R = Record<string, any>>(options: QueryHookOptions<A, R> = {}) {
|
2020-07-21 22:25:39 +02:00
|
|
|
return useQuery(QUERY_WORKGROUP, options);
|
2020-07-31 17:36:10 +02:00
|
|
|
}
|
|
|
|
|
2020-09-10 19:25:52 +02:00
|
|
|
export function useWorkgroups<A = any, R = Record<string, any>>(options: QueryHookOptions<A, R> = {}) {
|
2020-07-31 17:36:10 +02:00
|
|
|
const { data, loading, error } = useGraphQLData<Workgroup[]>(
|
2020-08-05 17:53:52 +02:00
|
|
|
QUERY_WORKGROUP, 'workgroups', [],
|
|
|
|
options
|
2020-07-31 17:36:10 +02:00
|
|
|
);
|
|
|
|
return { workgroups: data, loading, error };
|
2020-07-21 22:25:39 +02:00
|
|
|
}
|