diff --git a/package-lock.json b/package-lock.json index 020596f..1dee487 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "core-assignment-week-10", + "name": "core-assignment-week-9", "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "core-assignment-week-10", + "name": "core-assignment-week-9", "version": "1.0.0", "license": "ISC", "dependencies": { @@ -1810,7 +1810,6 @@ "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -2226,7 +2225,6 @@ "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.27.0", "fdir": "^6.5.0", diff --git a/task-1/delete.sh b/task-1/delete.sh new file mode 100644 index 0000000..32331b9 --- /dev/null +++ b/task-1/delete.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) + +id=$(cat "$SCRIPT_DIR/id.txt") + +curl -X DELETE http://localhost:3000/users/$id \ + -H "Content-Type: application/json; charset=UTF-8" \ No newline at end of file diff --git a/task-1/get.sh b/task-1/get.sh new file mode 100644 index 0000000..946cfeb --- /dev/null +++ b/task-1/get.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) + +id=$(cat "$SCRIPT_DIR/id.txt") + +curl -X GET http://localhost:3000/users/$id \ + -H "Content-Type: application/json; charset=UTF-8" \ \ No newline at end of file diff --git a/task-1/patch.sh b/task-1/patch.sh new file mode 100644 index 0000000..7aed03c --- /dev/null +++ b/task-1/patch.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) + +id=$(cat "$SCRIPT_DIR/id.txt") + +curl -X PATCH http://localhost:3000/users/$id \ + -H "Content-Type: application/json; charset=UTF-8" \ + -d '{"email": "johndoe@example.com"}' diff --git a/task-1/post.sh b/task-1/post.sh new file mode 100644 index 0000000..8534cbd --- /dev/null +++ b/task-1/post.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) + +response=$(curl -X POST http://localhost:3000/users \ + -H "Content-Type: application/json; charset=UTF-8" \ + -d '{"name":"John Doe", "email": "john.doe@example.com", "password": "secret123", "role": "user", "active": true, "department": "Engineering"}') + + echo "$response" + + id_line=$(echo "$response" | grep '"id"') + + id=$(echo "$id_line" | tr -cd '0-9') + + echo "$id" > "$SCRIPT_DIR/id.txt" + + diff --git a/task-1/server/users.json b/task-1/server/users.json index fc8d197..f06616b 100644 --- a/task-1/server/users.json +++ b/task-1/server/users.json @@ -111,4 +111,4 @@ "department": "Engineering" } ] -} \ No newline at end of file +} diff --git a/task-2/services.js b/task-2/services.js index 2126969..fdffe01 100644 --- a/task-2/services.js +++ b/task-2/services.js @@ -1,8 +1,8 @@ // Nobel Prize API Documentation: https://www.nobelprize.org/about/developer-zone-2/ -import { fetchData } from './fetcher.js'; +import { fetchData } from "./fetcher.js"; -const API_BASE_URL = 'https://api.nobelprize.org/2.1'; +const API_BASE_URL = "https://api.nobelprize.org/2.1"; /** * Fetch Nobel Prizes with optional filters @@ -15,7 +15,17 @@ const API_BASE_URL = 'https://api.nobelprize.org/2.1'; * @param {Function} onError - Callback for fetch errors */ export function fetchNobelPrizes(filters = {}, onSuccess, onError) { - let url = ''; // TODO Construct the full URL with query parameters; + const { year = "all", category = "all", offset = 0, limit = 10 } = filters; + + let url = `${API_BASE_URL}/nobelPrizes?offset=${offset}&limit=${limit}&sort=desc`; + + if (year !== "all") { + url += `&nobelPrizeYear=${year}`; + } + + if (category !== "all") { + url += `&nobelPrizeCategory=${category}`; + } fetchData(url, onSuccess, onError); }