Если заработает, то он тебе покажет вот такое:

Собственно, эту ошибку и в браузере видно, и на ошибки в браузере обязательно надо обращать внимание.

Это распространенная ошибка, которой не должно быть: все хуки должны выполняться обязательно и до их выполнения никак логика не должна обрываться по каким-либо условиям.
У тебя же ошибка в том, что useState() прописан внутри useMemo(). То есть хуки внутри хуков тоже нельзя прописывать.