Fica aqui como sugestão a estrutura if else para garantir que alguém não possa colocar no campo "quantidade" um número maior que a diferença dos intervalos dos campos "de" e "até". Quando o número de quantidade é maior, devido a restrição de não poder repetir números, isso trava o código.
function sortear() {
let quantidade = parseInt(document.getElementById('quantidade').value);
let de = parseInt(document.getElementById('de').value);
let ate = parseInt(document.getElementById('ate').value);
let sorteados = [];
let numero;
let validacao = ate - de + 1;
if (quantidade <= validacao) {
for (let i = 0; i < quantidade; i++) {
numero = obterNumeroAleatorio(de, ate);
while (sorteados.includes(numero)) {
numero = obterNumeroAleatorio(de, ate);
}
sorteados.push(numero);
}
} else {
alert(
'Número de quantidade não pode ser maior que a diferença do número mínimo e máximo.'
);
}
let resultado = document.getElementById('resultado');
resultado.innerHTML = `
<label class="texto__paragrafo">Números sorteados: ${sorteados}</label>
`;
}