Updates to team components.

This commit is contained in:
Mike Cao 2024-02-04 18:03:26 -08:00
parent 102f5b78b1
commit dbb3801e66
28 changed files with 173 additions and 159 deletions

View file

@ -6,7 +6,9 @@ export * from './queries/useReport';
export * from './queries/useReports';
export * from './queries/useShareToken';
export * from './queries/useTeam';
export * from './queries/useTeams';
export * from './queries/useTeamWebsites';
export * from './queries/useTeamMembers';
export * from './queries/useUser';
export * from './queries/useUsers';
export * from './queries/useWebsite';
@ -25,6 +27,6 @@ export * from './useLocale';
export * from './useMessages';
export * from './useNavigation';
export * from './useSticky';
export * from './useTeamContext';
export * from './useTeamUrl';
export * from './useTheme';
export * from './useTimezone';

View file

@ -1,10 +1,10 @@
'use client';
import useApi from './useApi';
import useFilterQuery from './useFilterQuery';
import useCache from 'store/cache';
import useModified from 'store/modified';
export function useReports({ websiteId, teamId }: { websiteId?: string; teamId?: string }) {
const modified = useCache((state: any) => state?.reports);
const modified = useModified((state: any) => state?.reports);
const { get, del, useMutation } = useApi();
const queryResult = useFilterQuery({
queryKey: ['reports', { websiteId, teamId, modified }],

View file

@ -0,0 +1,18 @@
'use client';
import useApi from './useApi';
import useFilterQuery from './useFilterQuery';
import { useLogin } from 'components/hooks';
export function useTeams(userId?: string) {
const { get } = useApi();
const { user } = useLogin();
return useFilterQuery({
queryKey: ['teams', { userId: userId || user?.id }],
queryFn: (params: any) => {
return get(`/teams`, params);
},
});
}
export default useTeams;

View file

@ -1,11 +1,11 @@
'use client';
import useApi from './useApi';
import useFilterQuery from './useFilterQuery';
import useCache from 'store/cache';
import useModified from 'store/modified';
export function useUsers() {
const { get } = useApi();
const modified = useCache((state: any) => state?.users);
const modified = useModified((state: any) => state?.users);
return useFilterQuery({
queryKey: ['users', { modified }],

View file

@ -3,8 +3,9 @@ import useApi from './useApi';
export function useWebsite(websiteId: string, options?: { [key: string]: any }) {
const { get, useQuery } = useApi();
return useQuery({
queryKey: ['websites', websiteId],
queryKey: ['websites', { websiteId }],
queryFn: () => get(`/websites/${websiteId}`),
enabled: !!websiteId,
...options,

View file

@ -2,7 +2,9 @@
import { useApi } from './useApi';
import { useFilterQuery } from './useFilterQuery';
import { useLogin } from './useLogin';
import useCache from 'store/cache';
import useModified from 'store/modified';
const selector = (state: any) => state?.websites;
export function useWebsites(
{ userId, teamId }: { userId?: string; teamId?: string },
@ -10,7 +12,7 @@ export function useWebsites(
) {
const { get } = useApi();
const { user } = useLogin();
const modified = useCache((state: any) => state?.websites);
const modified = useModified(selector);
return useFilterQuery({
queryKey: ['websites', { userId, teamId, modified, ...params }],

View file

@ -1,7 +1,7 @@
'use client';
import { usePathname } from 'next/navigation';
export function useTeamContext(): {
export function useTeamUrl(): {
teamId?: string;
renderTeamUrl: (url: string) => string;
} {
@ -15,4 +15,4 @@ export function useTeamContext(): {
return { teamId, renderTeamUrl };
}
export default useTeamContext;
export default useTeamUrl;