Например у конкретно этого проекта уже сломалась поддержка npm audit fix, там детектятся 9 уязвимостей! в финансовом приложении!
static + conditional class
<div className={cn("static", { conditional: state })}></div>
<div className={cn({ static: true, conditional: state })}></div>
<MyDiv conditional={state}></MyDiv>
Кинуть событие родителю, притом дать возможность родителю не подписываться или подписаться самому + прокинуть наверх.
React: нет событий, поэтому делаем жуткий костыль в виде колбэка в пропсах
которое не подойдёт для реального заказа, хотя бы потому что спрайт даже из 60 кадров нормального размера будет тормозить при переключении
<div class="rotate-sprite">
<div class="rotate-toggle-1"></div>
<div class="rotate-toggle-2"></div>
<div class="rotate-toggle-3"></div>
<div class="rotate-toggle-4"></div>
<div class="rotate-image"></div>
</div>
.rotate-toggle-1:hover ~ .rotate-image {
background-position: 200px 0;
}
npm i imagemin-svgo@9.0.0 --save-dev