A few polish on tasks (#1023)

A few polishing on tasks
This commit is contained in:
Charles Bochet
2023-07-31 18:15:08 -07:00
committed by GitHub
parent 22ca00bb67
commit 8b8e4ac4a5
12 changed files with 141 additions and 65 deletions

View File

@ -1,3 +1,5 @@
import { DateTime } from 'luxon';
import { activeTabIdScopedState } from '@/ui/tab/states/activeTabIdScopedState';
import { useRecoilScopedState } from '@/ui/utilities/recoil-scope/hooks/useRecoilScopedState';
import { ActivityType, useGetActivitiesQuery } from '~/generated/graphql';
@ -11,7 +13,16 @@ export function useTasks() {
TasksContext,
);
const { data, loading } = useGetActivitiesQuery({
const { data: completeTasksData } = useGetActivitiesQuery({
variables: {
where: {
type: { equals: ActivityType.Task },
completedAt: { not: { equals: null } },
},
},
});
const { data: incompleteTaskData } = useGetActivitiesQuery({
variables: {
where: {
type: { equals: ActivityType.Task },
@ -21,27 +32,28 @@ export function useTasks() {
},
});
const todayTasks = data?.findManyActivities.filter((task) => {
const data = activeTabId === 'done' ? completeTasksData : incompleteTaskData;
const todayOrPreviousTasks = data?.findManyActivities.filter((task) => {
if (!task.dueAt) {
return false;
}
const dueDate = parseDate(task.dueAt).toJSDate();
const today = new Date();
return dueDate.getDate() === today.getDate();
const today = DateTime.now().endOf('day').toJSDate();
return dueDate <= today;
});
const otherTasks = data?.findManyActivities.filter((task) => {
const upcomingTasks = data?.findManyActivities.filter((task) => {
if (!task.dueAt) {
return false;
}
const dueDate = parseDate(task.dueAt).toJSDate();
const today = new Date();
return dueDate.getDate() !== today.getDate();
const today = DateTime.now().endOf('day').toJSDate();
return dueDate > today;
});
return {
todayTasks,
otherTasks,
loading,
todayOrPreviousTasks,
upcomingTasks,
};
}