Я понимаю когда useState используется для одного объекта. Но тут однотипные действия со строками. Покрасить или снять цвет. Для всех один и тот же. Можно впринципе все сделать через массив. Определить объект массив строк. Потом всем строкам дать один и тот же хандл на клик. И в случае клика перерисовать весь массив.