Executando verificação de segurança...
1

Claro, é um erro muito simples que eu não meu atentei.
Ao utilizar a função map nós não mexemos na array original, apenas retornamos uma nova com os novos valores. A abordagem correta é a seguinte:

function sorteiaNumeros() {
  const numberArray = Array.from({ length: 60 }, (_, i) => ({ value: i + 1, active: false }))
  
  return (numbers: number) => {
    numberArray.forEach(item => {
      item.active = item.active || item.value === numbers
    })
    
    return numberArray
  }
}

Basicamente com o forEach nós temos o comportamento contrário, não retornamos nada mas conseguimos alterar os valores da array original.

Carregando publicação patrocinada...
1