Ну смотри если бы был функционал одна задача много под задач, согласен было бы удобней делать в каждой ветке маленькие под задачи. Сейчас же получается, если я буду ставить задачи, как ты говоришь например, перенести такую страницу, а их к примеру больше двадцати получится больше двадцати страниц по которым нужно будет прыгать в случае чего и искать информацию, плюс в самих задачах их будет проблематично искать, так как много задач по самообучению. Это все приводит к путанице и потере времени, которое можно было бы потратить на реальные задачи.

Так а что там понимать? Там почти все изменения, что видны в коммите - это просто сдвиг табов, потому что выдернуто из логики if (currentUser) Просто раньше кнопка не выводилась, потому что вся логика ее отображения была обернута в if (currentUser). Нет пользователя (currentUser) - нет никакого вывода вообще. Сейчас я убрал обертку по этому условию (то есть какая-то кнопка из двух в любом случае отображается), но логика теперь такая: Получаем активную задачу пользователя если "пользователь есть и его id совпадает с id пользователя задачи". Если активная задача была получена if (activeTimer), то выводим кнопку стоп. Иначе (во всех иных случаях) выводим кнопку старт. Очевидно, что если нет пользователя, то активную задачу мы не можем решить, а значит кнопка Старт будет выводиться. Логика совсем не сложная. Если ты ее для себя как-то усложнил, поработай над своим восприятием. >> Во-первых я так понимаю useUpdateTimerProcessorMutation() Это генерируемые хуки для GraphQL-запросов, но они, в рамках текущей задачи, тебя вообще не решались. Там только и надо было что поменять условие рендеринга, все, больше ничего не надо было трогать.

Ну как тебе сказать с одной стороны теперь понимаю примерно, что ты делаешь, но сам, думаю пока такую логику не потянул. Во-первых я так понимаю useUpdateTimerProcessorMutation() - это кастомный хук, как создовать кастомные хуки пока не изучал, но примерно понятно. Во-вторых не совсем еще разобрался с деструктуризацией у тебя там ее тоже хватает и с приниципами написания сложных функций пока плаваю. Короче думаю без пошагового объяснения не справился, но с виду выглядит не очень сложно конечно.

Олег, конечно же лучше отдельную таску. Я тебе сразу говорил: разбивать на отдельные понятные таски, с понятными названиями и понятными описаниями. Чем потом одну таску листать, в которой 100500 комментариев, конечно же удобней просто зайти в проект, посмотреть какие таски есть, и зайдя в интересующую, увидеть обсуждения конкретно по ней. А если что и пересекается, так что мешает дать ссылку на связанный коммент?

Думаешь лучше новый таск создовать по сути задача таже самая просто нужно теперь другие страницы добалять. Здесь уже просто много ответов, которые могут пригодиться, мне кажется лучше здесь продолжать, чтобы все ответы по одному проекту в одной сущности были. Когда появится интерфейс для подзадач уже будет проще в одной сущности по сути работать.

Все равно хочется разобраться. На счет перевода: я бы вообще на англ оставил. Но проблема в том, что много кто не понимает англ вообще. Поэтому, как мне показалось, пусть будет на русском, пусть и таком корявом. В целом понятно. А перевод не наш, так же с freecodecamp взято. Меня это не особо оправдывает, потому что давно уже надо добавить сюда переключатель ru/en и в настройках профиля дать указывать предпочтительный язык, но пока более важные задачи съедают время, извините.

Это не существенно, но в задании не обязательно переводить с английского «Фотографии кошки» на «Перейти к нижнему» , иначе при запуске тестов идет поиск "Jump to Bottom" и получается ошибка. В принципе во всех заданиях так.

Олег, как видишь, задача просто решалась. Сейчас-то, после того, как ты подосвоил TS, более понятно? https://github.com/freecode-academy/freecode.academy/commit/5395179e4413cc19ed8f61a6056c34232626e533

Олег, ну что, отличная работа! Практически все намеченное сделано. Только ты забыл в паре мест тип страницам прописать и массив с данными лучше в отдельный файл констант выносить (помнишь?: по возможности один файл - одна сущность, хотя бы по отношению к классам и типам). Отправил тебе ПР: https://github.com/p1aton/prisma-nextjs/pull/2 Эту задачу можешь закрывать и ставить новую.