From 0c807856a603b88939e12fc22d8f232f82966919 Mon Sep 17 00:00:00 2001 From: Skoulskiy Date: Mon, 6 Jul 2026 12:58:55 +0300 Subject: [PATCH 1/3] added solution --- src/scripts/main.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/scripts/main.js b/src/scripts/main.js index c6e3f878..5badac79 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -1,3 +1,31 @@ 'use strict'; // write your code here +const logo = document.querySelector('.logo'); + +const promise2 = new Promise((resolve, reject) => { + setTimeout(() => { + reject(new Error('Promise was rejected!')); + }, 3000); +}); + +promise2.catch((error) => { + const division = document.createElement('div'); + + division.classList.add('error-message'); + division.textContent = error.message; + document.body.appendChild(division); +}); + +logo.addEventListener('click', () => { + const promise1 = new Promise((resolve, reject) => { + resolve('Promise was resolved!'); + }); + + promise1.then((result) => { + const division = document.createElement('div'); + + division.textContent = result; + document.body.appendChild(division); + }); +}); From 3c5f92b2de123c09dfdcdee42242489f6e5fde2f Mon Sep 17 00:00:00 2001 From: Skoulskiy Date: Mon, 6 Jul 2026 13:06:58 +0300 Subject: [PATCH 2/3] added fixes --- src/scripts/main.js | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/scripts/main.js b/src/scripts/main.js index 5badac79..9051b75a 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -1,8 +1,21 @@ 'use strict'; -// write your code here const logo = document.querySelector('.logo'); +logo.addEventListener('click', async () => { + const promise1 = new Promise((resolve, reject) => { + resolve('Promise was resolved!'); + }); + + const result = await promise1; + + const division = document.createElement('div'); + division.classList.add('message'); + + division.textContent = result; + document.body.appendChild(division); +}); + const promise2 = new Promise((resolve, reject) => { setTimeout(() => { reject(new Error('Promise was rejected!')); @@ -11,21 +24,9 @@ const promise2 = new Promise((resolve, reject) => { promise2.catch((error) => { const division = document.createElement('div'); + division.classList.add('message'); division.classList.add('error-message'); division.textContent = error.message; document.body.appendChild(division); }); - -logo.addEventListener('click', () => { - const promise1 = new Promise((resolve, reject) => { - resolve('Promise was resolved!'); - }); - - promise1.then((result) => { - const division = document.createElement('div'); - - division.textContent = result; - document.body.appendChild(division); - }); -}); From 26aa1a5ed12d756405b7265b4c32728cfeffc4d6 Mon Sep 17 00:00:00 2001 From: Skoulskiy Date: Mon, 6 Jul 2026 13:18:05 +0300 Subject: [PATCH 3/3] added crititcal fixes --- src/scripts/main.js | 40 +++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/src/scripts/main.js b/src/scripts/main.js index 9051b75a..7ed05f58 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -2,18 +2,29 @@ const logo = document.querySelector('.logo'); -logo.addEventListener('click', async () => { - const promise1 = new Promise((resolve, reject) => { +function createPromise1() { + return new Promise((resolve, reject) => { resolve('Promise was resolved!'); }); +} - const result = await promise1; - - const division = document.createElement('div'); - division.classList.add('message'); - - division.textContent = result; - document.body.appendChild(division); +logo.addEventListener('click', async () => { + try { + const promise1 = await createPromise1(); + + const division = document.createElement('div'); + + division.classList.add('message'); + division.textContent = promise1; + document.body.appendChild(division); + } catch (error) { + const division = document.createElement('div'); + + division.classList.add('message', + 'error-message'); + division.textContent = error.message; + document.body.appendChild(division); + } }); const promise2 = new Promise((resolve, reject) => { @@ -22,11 +33,18 @@ const promise2 = new Promise((resolve, reject) => { }, 3000); }); -promise2.catch((error) => { +promise2.then((result) => { const division = document.createElement('div'); + division.classList.add('message'); + division.textContent = result; + document.body.appendChild(division); +}); + +promise2.catch((error) => { + const division = document.createElement('div'); - division.classList.add('error-message'); + division.classList.add('message', 'error-message'); division.textContent = error.message; document.body.appendChild(division); });