Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for #1348 Add a timer to the tab with the solution #1499

Merged
merged 7 commits into from
Mar 17, 2023

Conversation

antonDedyaev
Copy link
Contributor

Added a timer to the Solution tab that hides teacher's solution until the countdown is over. As soon as the countdown is over, the "show solution" button pops out and the user can click it to see the solution.

@fey
Copy link
Collaborator

fey commented Feb 16, 2023

public/images/waiting_clock.png - это лишнее. Посмотри, как у нас в файле mix.js вроде бы сделано - там копируются картинки из ассетов в в паблик директорию с помощью вебпака. Даже скорее эти картинки уже копируются.

@fey fey requested a review from dzencot February 16, 2023 11:34
@antonDedyaev
Copy link
Contributor Author

antonDedyaev commented Feb 16, 2023

Она из ассетов и подтянулась видимо, так как я туда ее и поместил рядом с другими картинками. Как исправить? Если ее удалить из ассетов, она ведь и из паблика удалится тогда, не?

@fey
Copy link
Collaborator

fey commented Feb 16, 2023

нужно удалить только из public/
все файлы ассетов внутри директории public/ мы игнорируем. Мб какой-то не тот путь, посмотри как лежат другие файлы.
Удалить можно git rm <path>

@antonDedyaev
Copy link
Contributor Author

Пути проверил. Картинка с часами, как и все прочие лежит в папке assets/img. В public/ вся директория img игнорируется, в том числе и эта картинка. Но... там же в public есть еще одна папка - images, там по какой-то причине эта картинка тоже дублируется, а если удалить эту папку, то она снова появляется как только делаешь make start...
Могу заигнорить ее через gitignore. Или это плохое решение?

@fey
Copy link
Collaborator

fey commented Feb 16, 2023

Поменяй путь на public/img/картинка

@fey
Copy link
Collaborator

fey commented Feb 16, 2023

суть в том, что картинки в паблике игнорятся как и любые ассеты, которые собираются. А у тебя путь не тот указан, в котором все картинки лежат

@antonDedyaev
Copy link
Contributor Author

А где путь то менять? В импорте картинки в компоненте? У меня сейчас
import waitingClock from '../../assets/img/waiting_clock.png'.
Его менять надо? Или я уже туплю под ночь?)
Я просто не пойму откуда возникает эта папка images - я нигде ее не указывал....

@fey
Copy link
Collaborator

fey commented Feb 16, 2023

Тогда попозже гляну в чем дело

@ashikov
Copy link
Contributor

ashikov commented Feb 20, 2023

Было время, глянул. Во-первых, git rm ... работает нормально, потом просто нужно коммитнуть это удаление. Вот в ветке я это сделал: ea6525e
@antonDedyaev смотри здесь у нас ассеты копируются при сборке фронта из resources/assets/img в public/img. На проде оно всё находится в public/img, после сборки. Соответственно путь до ассета должен указывать на public/img. Это я про вот эту часть:

import waitingClock from '../../assets/img/waiting_clock.png';

@antonDedyaev
Copy link
Contributor Author

Было время, глянул. Во-первых, git rm ... работает нормально, потом просто нужно коммитнуть это удаление. Вот в ветке я это сделал: ea6525e @antonDedyaev смотри здесь у нас ассеты копируются при сборке фронта из resources/assets/img в public/img. На проде оно всё находится в public/img, после сборки. Соответственно путь до ассета должен указывать на public/img. Это я про вот эту часть:

import waitingClock from '../../assets/img/waiting_clock.png';

Привет, @ashikov !
Спасибо за ответ. Тогда смотри - чисто для уточнения:
Достаточно ли мне будет изменить путь в импорте на '../../../public/img/waiting_clock.png' ?
Если да, то после коммита в репо, мне нужно будет делать еще один ПР - или коммит зайдет в текущий ПР?

И еще все равно не могу понять, откуда берется папка public/images ??? Нигде в конфигах ее не нашел, в webpack.mix как раз речь только про копирование в public/img...
И, кстати, даже после изменения пути, если я запускаю сборку через make start - эта папка public/images снова генерируется с этой же картинкой. Что за мистика?)

import { useTranslation } from 'react-i18next';

import { changeShowStatus } from '../slices/solutionSlice';
import waitingClock from '../../assets/img/waiting_clock.png';
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

вот из-за этого импорта картинка попадает из ассетов в public/images
Скорее всего это при компиляции происходит, одним из плагинов, например SassLoader

@fey
Copy link
Collaborator

fey commented Feb 20, 2023

собственно выше написал, это какой-то из плагинов срабатывает, который тянет картинку из ЖС и публикует её.
Поступим проще - поменяем директорию с картинками, вместо img будет images
в мейн запушу, тебе нужно будет освежить свою ветку

@ashikov
Copy link
Contributor

ashikov commented Feb 21, 2023

после коммита в репо, мне нужно будет делать еще один ПР - или коммит зайдет в текущий ПР?

Коммиты, отправленные в ветку форка из которой был создан PR, попадают в этот пулреквест автоматически

@antonDedyaev
Copy link
Contributor Author

antonDedyaev commented Feb 21, 2023

Обновил форкнутую ветку main, потом сделал в своей ветке рибейз. Возник конфликт - вручную поправил. Сделал коммит. Поменял путь импорта, как согласовали выше, потом пуш - теперь смотрю, что некоторые коммиты продублированы, но с другим хэшем.
Может отменить этот ПР и сделать новый ?

@fey
Copy link
Collaborator

fey commented Feb 21, 2023

Попробуй сделать ребейз на мейн. Там будут конфликты, попробуй их порешать.
Если не получится - можем созвониться. Делать новый ПР всегда можно успеть. а попрактиковаться с конфликтами всегда полезно.

@antonDedyaev
Copy link
Contributor Author

Попробуй сделать ребейз на мейн. Там будут конфликты, попробуй их порешать.
Если не получится - можем созвониться. Делать новый ПР всегда можно успеть. а попрактиковаться с конфликтами всегда полезно.

Рибейз на локальный мейн или на удаленный?

@fey
Copy link
Collaborator

fey commented Feb 22, 2023

Поскольку твоей мейн должен быть 1 в 1 с удаленным Хекслета (т.е. ты сперва делаешь на мейне git pull --rebase upstream main, а ребейз).
В итоге комада ребейза будет такая git rebase -i main, если я не ошибаюсь.

@antonDedyaev
Copy link
Contributor Author

antonDedyaev commented Feb 22, 2023

@fey Сделал рибейз, и в интерактивном режиме удалил "дубликаты коммитов", затем разобрался с конфликтами и в конечном итоге сделал форс пуш. Получилась такая картина - это уже похоже на правду или все еще чего-то не хватает?)

@fey
Copy link
Collaborator

fey commented Feb 22, 2023

@antonDedyaev по коммитам вроде норм. Но самое главное - оно работает? :_)
@dzencot поревьювишь?

@antonDedyaev
Copy link
Contributor Author

Поскольку твоей мейн должен быть 1 в 1 с удаленным Хекслета (т.е. ты сперва делаешь на мейне git pull --rebase upstream main, а ребейз).
В итоге комада ребейза будет такая git rebase -i main, если я не ошибаюсь.

@antonDedyaev по коммитам вроде норм. Но самое главное - оно работает? :_)
@dzencot поревьювишь?

Локально запускал - все работает)

@ashikov
Copy link
Contributor

ashikov commented Feb 28, 2023

@dzencot тут бы поревьювить

@dzencot
Copy link
Contributor

dzencot commented Mar 9, 2023

По коду все ок, единственный вопрос: точно нужен стейт для этого в редаксе? Возможно тут можно обойтись хуком useState, если это состояние нужно только для этого компонента.

@ssssank
Copy link
Contributor

ssssank commented Mar 17, 2023

@antonDedyaev @dzencot принимаем ПР или всё-таки доработаем?

@antonDedyaev
Copy link
Contributor Author

@antonDedyaev @dzencot принимаем ПР или всё-таки доработаем?

Могу переделать как написал @dzencot без стейта в редаксе.

@fey
Copy link
Collaborator

fey commented Mar 17, 2023

@antonDedyaev сделай ишшус, в, коде поставь TODO: <ссылка на ишшус и комментарий, чтобы не забыть.
Если ты не успеешь внести исправление - это сможет сделать кто-то другой ну и можем мы понять, что нужно доработать.

@antonDedyaev
Copy link
Contributor Author

@antonDedyaev сделай ишшус, в, коде поставь TODO: <ссылка на ишшус и комментарий, чтобы не забыть.
Если ты не успеешь внести исправление - это сможет сделать кто-то другой ну и можем мы понять, что нужно доработать.

Ок. А с этим ПР что в итоге - он будет принят или отклонен?
А можно мне в своем же ишшусе отписаться, что беру в работу ?)))

@fey
Copy link
Collaborator

fey commented Mar 17, 2023

@antonDedyaev да, будет принят, только нужно туду поставить комментом.

@antonDedyaev
Copy link
Contributor Author

antonDedyaev commented Mar 17, 2023

@antonDedyaev да, будет принят, только нужно туду поставить комментом.

Создал новый ишшус (#1526) и добавил коммент с ссылкой на него в код для этого ПР

@fey fey merged commit 3399840 into Hexlet:main Mar 17, 2023
@antonDedyaev antonDedyaev deleted the hide-solution branch March 17, 2023 12:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants