From 1920d39decc66ac82d4f9a13265064a77610004f Mon Sep 17 00:00:00 2001 From: PavloMolytovnyk Date: Thu, 4 Jun 2026 23:07:57 +0300 Subject: [PATCH 1/2] Change 1 --- .github/workflows/test.yml-template | 29 ++++++++++++++++++++ package-lock.json | 9 ++++--- package.json | 2 +- src/index.html | 2 +- src/scripts/main.js | 41 ++++++++++++++++++++++++++++- 5 files changed, 76 insertions(+), 7 deletions(-) create mode 100644 .github/workflows/test.yml-template diff --git a/.github/workflows/test.yml-template b/.github/workflows/test.yml-template new file mode 100644 index 000000000..44ac4e963 --- /dev/null +++ b/.github/workflows/test.yml-template @@ -0,0 +1,29 @@ +name: Test + +on: + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [20.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - run: npm install + - run: npm start & sleep 5 && npm test + - name: Upload tests report(cypress mochaawesome merged HTML report) + if: ${{ always() }} + uses: actions/upload-artifact@v2 + with: + name: report + path: reports diff --git a/package-lock.json b/package-lock.json index c3a278e3e..afdd680c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "@linthtml/linthtml": "^0.9.6", "@mate-academy/eslint-config": "latest", "@mate-academy/linthtml-config": "latest", - "@mate-academy/scripts": "^1.8.5", + "@mate-academy/scripts": "^2.1.3", "@mate-academy/stylelint-config": "latest", "@parcel/transformer-sass": "^2.12.0", "cypress": "^13.13.0", @@ -1497,10 +1497,11 @@ "dev": true }, "node_modules/@mate-academy/scripts": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@mate-academy/scripts/-/scripts-1.8.5.tgz", - "integrity": "sha512-mHRY2FkuoYCf5U0ahIukkaRo5LSZsxrTSgMJheFoyf3VXsTvfM9OfWcZIDIDB521kdPrScHHnRp+JRNjCfUO5A==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@mate-academy/scripts/-/scripts-2.1.3.tgz", + "integrity": "sha512-a07wHTj/1QUK2Aac5zHad+sGw4rIvcNl5lJmJpAD7OxeSbnCdyI6RXUHwXhjF5MaVo9YHrJ0xVahyERS2IIyBQ==", "dev": true, + "license": "MIT", "dependencies": { "@octokit/rest": "^17.11.2", "@types/get-port": "^4.2.0", diff --git a/package.json b/package.json index 8e38597e8..a43a43f70 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "@linthtml/linthtml": "^0.9.6", "@mate-academy/eslint-config": "latest", "@mate-academy/linthtml-config": "latest", - "@mate-academy/scripts": "^1.8.5", + "@mate-academy/scripts": "^2.1.3", "@mate-academy/stylelint-config": "latest", "@parcel/transformer-sass": "^2.12.0", "cypress": "^13.13.0", diff --git a/src/index.html b/src/index.html index f0f81a237..39844d1f0 100644 --- a/src/index.html +++ b/src/index.html @@ -93,6 +93,6 @@

List of employees

Colleen Hurst - + diff --git a/src/scripts/main.js b/src/scripts/main.js index a765fdb1d..5ef5bcf96 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -1,3 +1,42 @@ 'use strict'; -// write code here +function getEmployees(list) { + return Array.from(list).map((element) => { + return { + name: element.textContent.trim(), + position: element.dataset.position, + salary: element.dataset.salary, + age: element.dataset.age, + }; + }); +} + +function sortList(employees) { + return employees.sort((a, b) => { + const parseSalary = (salary) => { + return parseFloat(salary.replace(/[$,]/g, '')); + }; + + return parseSalary(b.salary) - parseSalary(a.salary); + }); +} + +const listQuerry = document.querySelectorAll('li'); +const list = getEmployees(listQuerry); +const sortedEmployees = sortList(list); + +const ul = document.querySelector('ul'); + +ul.innerHTML = ''; + +sortedEmployees.forEach((employee) => { + const li = document.createElement('li'); + + li.textContent = `${employee.name}`; + + li.dataset.position = employee.position; + li.dataset.salary = employee.salary; + li.dataset.age = employee.age; + + ul.appendChild(li); +}); From ad05bc549a5ced8ef81dd3aff5563892e1b29edb Mon Sep 17 00:00:00 2001 From: PavloMolytovnyk Date: Thu, 4 Jun 2026 23:08:08 +0300 Subject: [PATCH 2/2] Change 2 --- src/scripts/main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripts/main.js b/src/scripts/main.js index 5ef5bcf96..421581573 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -1,7 +1,7 @@ 'use strict'; -function getEmployees(list) { - return Array.from(list).map((element) => { +function getEmployees(pagesTag) { + return Array.from(pagesTag).map((element) => { return { name: element.textContent.trim(), position: element.dataset.position,