Если я правильно понял:
1. Есть файл yarn generate:types, который хранит в себе все модели и парметры всех запросов с типами.

2. Этот же файл yarn generate:types, ходит по проекту и собирает все GraphQL-запросы и компилирует их в Аполло-запросы.

3. Запрсы для GraphQL должны быть написаны специальным способом ...task_, чтобы можно было в них вставлять другие фрагменты. Для того, чтобы подцепить фрагмент он выносится в отдельный файл. Получается вроде базового запроса для которого мы формируем отдельные фрагменты в разных файлах и можем к нему подключить любой фрагмент или поменять.
- Здесь вопрос: вставил этот запрос:


query task($where: TaskWhereUniqueInput!, $timersWhere: TimerWhereInput) { object: task(where: $where) { ...task_ Timers(orderBy: createdAt_DESC, where: $timersWhere) { ...timersConnectionTimer } } }
в https://api.prisma-cms.com/, но он выдал что-то непонятное?

4. В итоге выполнение этого скрипта yarn generate:types, у нас появляются готовые аполо-функции.
- Здесь вопрос: несовсем понятно, как они появляются и где они появляются. Они появляются в конкретных файлах сами и как ты контролируешь появление такого большого количества функций судя по самому файлу? И собственно, как этот файл понимает куда что пихать, а если ты в процессе работы решил новый запрос создать, его нужно перезапустить после создания запроса?

5. После чего делаем вызов запрсоа в функциональном компоненте.

Здесь вопрос:
const response = useTaskQuery({
variables,
onError: console.error, })

Зачем здесь еще переменная variables и что такое onError: console.error откудо оно тянется?

6. В итоге мы делаем вывод в нуждном месте.

Здесь вопрос:

<Grid item>
{CreatedBy ? (
<UserLink user={CreatedBy} withAvatar={false} />
) : null}

{createdAt ? (
<Typography variant="caption" color="textSecondary">
{moment(createdAt).format('lll')} </Typography>
) : null}
</Grid>

Зачем столько гридов мы ими регулируем в каком месте выводить?
CreatedBy & createdAt в чем отличие зачем они нужны?

7. Создание task.startDate, как объект.

Если правильно понимаю у объекта должен быть ключ и значение. По твоему из топика примеру не совсем понятно, как именно он дату выводит больше всего непонятно, как в данном случае вывод обращается к функции из 5 пункта {task.name}, {task.status} , или этот вывод:

{createdAt ? (
<Typography variant="caption" color="textSecondary">
{moment(createdAt).format('lll')}
</Typography>
) : null}

Здесь я так понимаю он вообще к другой функции обращается, так как это из другой оперы.

И какую страницу редактировать в итоге вьюху правильно https://github.com/freecode-academy/freecode.academy/blob/b94b55a4a8fc0a75b2a45eea7a0cf03fc324af25/src/pages/Tasks/Task/View/index.tsx ?