Promessa com temporizador e tratamento de erros

JavaScript Medium promises

Tarefa «Promessa com temporizador e tratamento de erros»

Escreva a função `processWithTimeout`, que recebe um array de números e retorna uma promessa. A promessa deve ser resolvida com um array onde cada elemento é multiplicado por 2, se todos os números forem positivos. Se pelo menos um número for negativo, a promessa deve ser rejeitada com a mensagem 'Negative number found'. Para simular assincronicidade, use setTimeout com atraso de 1000 ms. Implemente também a função assíncrona `run`, que chama `processWithTimeout` e exibe o resultado ou erro no console.

Formato de Entrada

Uma string contendo um array de números separados por vírgulas.

Formato de Saída

Se a promessa for resolvida, é exibida a string 'Result: [número1, número2, ...]'. Se for rejeitada, é exibido 'Error: Negative number found'.

Exemplos

Exemplo 1

ENTRADA
-1,2,3
SAÍDA
Error: Negative number found

Exemplo 2

ENTRADA
Война и мир Лев Толстой 1869
SAÍDA
Error: Negative number found

Exemplo 3

ENTRADA
Мастер и Маргарита Михаил Булгаков 1966
SAÍDA
Error: Negative number found
main.js