From c8801387b1926330542fe5ba23fa74ffbf3c8a68 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Thu, 13 Jul 2023 11:53:55 +0530 Subject: [PATCH 01/12] feat: Add task request UI --- taskRequests/assets/RDSLogo.png | Bin 0 -> 199344 bytes taskRequests/index.html | 80 +++++++++++++++ taskRequests/script.js | 166 ++++++++++++++++++++++++++++++++ taskRequests/style.css | 164 +++++++++++++++++++++++++++++++ 4 files changed, 410 insertions(+) create mode 100644 taskRequests/assets/RDSLogo.png create mode 100644 taskRequests/index.html create mode 100644 taskRequests/script.js create mode 100644 taskRequests/style.css diff --git a/taskRequests/assets/RDSLogo.png b/taskRequests/assets/RDSLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..7f10e48fdb629d09431487b117b0912e34a70d6e GIT binary patch literal 199344 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�*vu6v)Q*8@8mCt%mo;{4a`^XFK%{lw$r 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

cm9v`%NfbAk>35Ts%M<4yJT#(Z` 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℘N{-4D<6veZJsYUnP9 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 literal 0 HcmV?d00001 diff --git a/taskRequests/index.html b/taskRequests/index.html new file mode 100644 index 00000000..ec405fb7 --- /dev/null +++ b/taskRequests/index.html @@ -0,0 +1,80 @@ + + + + + + + + + + + + Task Requests | Real Dev Squad + + + + + +

+
+

Task Request

+
+ +
+ + +
+
+
+
+

+ Long Sample title for testing on cards +

+
+
+
+

+ Lorem ipsum dolor sit amet consectetur, adipisicing elit. Hic + asperiores minus tenetur ipsum iste delectus consequatur + incidunt ex ratione, sit accusantium fuga aspernatur, accusamus + sed, sequi optio porro adipisci temporibus. +

+
+ +
+
+
+
+ + diff --git a/taskRequests/script.js b/taskRequests/script.js new file mode 100644 index 00000000..d41cc5ca --- /dev/null +++ b/taskRequests/script.js @@ -0,0 +1,166 @@ +const taskRequestStatus = { + WAITING: 'WAITING', + APPROVED: 'APPROVED', +}; + +const API_BASE_URL = window.API_BASE_URL; +const taskRequestContainer = document.getElementById('task-request-container'); +const containerBody = document.querySelector('.container__body'); + +const fetchedTaskRequests = []; + +const loader = document.querySelector('.container__body__loader'); +const startLoading = () => loader.classList.remove('hidden'); +const stopLoading = () => loader.classList.add('hidden'); + +function createCustomElement(domObjectMap) { + const el = document.createElement(domObjectMap.tagName); + for (const [key, value] of Object.entries(domObjectMap)) { + if (key === 'tagName') { + continue; + } + if (key === 'class') { + if (Array.isArray(value)) { + el.classList.add(...value); + } else { + el.classList.add(value); + } + } else if (key === 'child') { + el.append(...value); + } else { + el[key] = value; + } + } + return el; +} + +async function getTaskRequests() { + startLoading(); + try { + const res = await fetch(`http://localhost:3000/taskRequests`); + + if (res.ok) { + const data = await res.json(); + fetchedTaskRequests = [...data.data]; + return; + } + + if (res.status === 401) { + showMessage( + 'ERROR', + 'You are unauthenticated to view this section, please login!', + ); + return; + } + + if (res.status === 403) { + showMessage('ERROR', 'You are unauthrozed to view this section'); + return; + } + + showMessage('ERROR', 'Unexpected error occurred'); + } catch (e) { + console.log(e); + } finally { + stopLoading(); + } +} + +function showMessage(type, message) { + const p = document.createElement('p'); + const classes = ['taskRequest__message']; + if (type === 'ERROR') { + classes.push('taskRequest__message--error'); + } + p.classList.add(...classes); + p.textContent = message; + containerBody.innerHTML = ''; + containerBody.appendChild(p); +} + +function getAvatar(user) { + if (user.user?.picture?.url) { + return createCustomElement({ + tagName: 'img', + src: 'user.user?.picture?.url', + }); + } + return createCustomElement({ + tagName: 'span', + textContent: user.user.charAt(0), + }); +} +function getRemainingCount(requestors) { + if(requestors.length > 3) { + return createCustomElement({ + tagName: 'span', + textContent: `+${requestors.length - 3}`, + }) + } +} + +function createTaskRequestCard({ title, description, requestors, status }) { + const card = createCustomElement({ + tagName: 'div', + class: 'taskRequest__card', + child: [ + createCustomElement({ + tagName: 'div', + class: 'taskRequest__card__header', + child: [ + createCustomElement({ + tagName: 'h3', + class: 'taskRequest__card__header__title', + textContent: title, + }), + createCustomElement({ + tagName: 'div', + class: [ + 'taskRequest__card__header__status', + `taskRequest__card__header__status--${status.toLowerCase()}`, + ], + title: status.toLowerCase(), + }), + ], + }), + createCustomElement({ + tagName: 'div', + class: 'taskRequest__card__body', + child: [ + createCustomElement({ + tagName: 'p', + textContent: description, + }), + ], + }), + createCustomElement({ + tagName: 'div', + class: 'taskRequest__card__footer', + child: [ + createCustomElement({ + tagName: 'p', + textContent: 'Requested By', + }), + createCustomElement({ + tagName: 'div', + class: 'taskRequest__card__footer__requestor', + child: [ + ...requestors.map((requestor, index) => { + if (index < 2) { + return createCustomElement({ + tagName: 'div', + class: 'taskRequest__card__footer__requestor__avatar', + title: requestor.user.first_name, + child: [getAvatar(requestor)], + }); + } + }), + getRemainingCount(requestors), + ], + }), + ], + }), + ], + }); + return card; +} diff --git a/taskRequests/style.css b/taskRequests/style.css new file mode 100644 index 00000000..9215688c --- /dev/null +++ b/taskRequests/style.css @@ -0,0 +1,164 @@ +:root { + font-family: 'Inter', sans-serif; +} + +body { + padding: 0; + margin: 0; +} + +.hidden { + display: none; +} + +.header { + background: #1d1283; + padding: 1rem; +} +.header__contents { + max-width: 1440px; + padding: 0.5rem 1rem; + margin: 0 auto; + color: white; + display: flex; + align-items: center; + gap: 0.5rem; +} +.header__contents__navlink { + color: white; + text-decoration: none; +} +.header__contents__navlink:hover { + text-decoration: underline; +} + +.container { + max-width: 1440px; + margin: 0 auto; + padding: 1rem; +} +.container__filters { + margin: 1rem 0; + display: flex; + gap: 0.5rem; +} +.container__filters__status { + border-radius: 0.5rem; + min-width: 8rem; + padding: 0.5rem 0.25rem; + background: white; + font-size: 1rem; + line-height: 1.25rem; +} +.container__title { + font-weight: 400; + font-size: 2rem; + line-height: 2.5rem; +} + +.taskRequest { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 1rem; +} +.taskRequest__message { + font-size: 1rem; + line-height: 1.25rem; +} +.taskRequest__message--error { + color: #da1e28; +} +.taskRequest__card { + padding: 1rem; + box-shadow: + 0 1px 3px 1px rgba(0, 0, 0, 0.1), + 0 1px 2px 0 rgba(0, 0, 0, 0.1); + border-radius: 0.5rem; + min-width: 16rem; + display: flex; + flex-flow: column; + gap: 0.5rem; +} +.taskRequest__card__header { + display: flex; + justify-content: space-between; +} +.taskRequest__card__header__title { + margin: 0; + font-weight: 400; + font-size: 1.5rem; + line-height: 2rem; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + width: 90%; + color: #1d1283; +} +.taskRequest__card__header__status { + height: 0.75rem; + width: 0.75rem; + border-radius: 50%; +} +.taskRequest__card__header__status--approved { + background-color: rgba(20, 102, 75, 0.6); +} +.taskRequest__card__header__status--waiting { + background-color: rgba(199, 129, 18, 0.4); +} +.taskRequest__card__body p { + font-size: 0.875rem; + line-height: 1.25rem; + margin: 0; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 3; + overflow: hidden; + color: rgba(0, 0, 0, 0.6); +} +.taskRequest__card__footer { + display: flex; + justify-content: space-between; + align-items: center; +} +.taskRequest__card__footer__requestor { + display: flex; + margin-left: 0.75rem; +} +.taskRequest__card__footer__requestor__avatar { + display: grid; + place-items: center; + height: 2rem; + width: 2rem; + margin-left: -0.75rem; + border: solid 2px white; + overflow: hidden; + border-radius: 50%; + background-color: #eee; +} +.taskRequest__card__footer__requestor__avatar img { + height: 100%; + width: 100%; +} +.taskRequest__card__footer__requestor__avatar span { + font-size: 0.875rem; + color: #555; +} + +@media (max-width: 1439px) { + .taskRequest { + grid-template-columns: repeat(3, 1fr); + } +} +@media (max-width: 905px) { + .taskRequest { + grid-template-columns: 1fr 1fr; + } +} +@media (max-width: 599px) { + .container__filters { + justify-content: space-between; + } + .taskRequest { + grid-template-columns: 1fr; + } +} From 3131595c6515482845deac623f5b5aaa6d04ab91 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Fri, 14 Jul 2023 20:32:56 +0530 Subject: [PATCH 02/12] feat: Add api integration for task requests --- taskRequests/index.html | 51 ++++++++--------------------------------- taskRequests/script.js | 48 ++++++++++++++++++++++++++++++-------- taskRequests/style.css | 16 +++++++++---- 3 files changed, 60 insertions(+), 55 deletions(-) diff --git a/taskRequests/index.html b/taskRequests/index.html index ec405fb7..23338531 100644 --- a/taskRequests/index.html +++ b/taskRequests/index.html @@ -1,4 +1,4 @@ - + @@ -14,6 +14,7 @@ Task Requests | Real Dev Squad + @@ -28,52 +29,18 @@

Task Request

-
- - -
-
-
-
-

- Long Sample title for testing on cards -

-
-
-
-

- Lorem ipsum dolor sit amet consectetur, adipisicing elit. Hic - asperiores minus tenetur ipsum iste delectus consequatur - incidunt ex ratione, sit accusantium fuga aspernatur, accusamus - sed, sequi optio porro adipisci temporibus. -

-
- -
+
diff --git a/taskRequests/script.js b/taskRequests/script.js index d41cc5ca..873b31c1 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -6,6 +6,7 @@ const taskRequestStatus = { const API_BASE_URL = window.API_BASE_URL; const taskRequestContainer = document.getElementById('task-request-container'); const containerBody = document.querySelector('.container__body'); +const filterContainer = document.querySelector('.container__filters'); const fetchedTaskRequests = []; @@ -19,6 +20,11 @@ function createCustomElement(domObjectMap) { if (key === 'tagName') { continue; } + if (key === 'eventListeners') { + value.forEach((obj) => { + el.addEventListener(obj.event, obj.func); + }); + } if (key === 'class') { if (Array.isArray(value)) { el.classList.add(...value); @@ -37,11 +43,11 @@ function createCustomElement(domObjectMap) { async function getTaskRequests() { startLoading(); try { - const res = await fetch(`http://localhost:3000/taskRequests`); + const res = await fetch(`${API_BASE_URL}/taskRequests`); if (res.ok) { const data = await res.json(); - fetchedTaskRequests = [...data.data]; + fetchedTaskRequests.push(...data.data); return; } @@ -58,6 +64,11 @@ async function getTaskRequests() { return; } + if (res.status === 404) { + showMessage('ERROR', 'Task Requests not found'); + return; + } + showMessage('ERROR', 'Unexpected error occurred'); } catch (e) { console.log(e); @@ -87,22 +98,27 @@ function getAvatar(user) { } return createCustomElement({ tagName: 'span', - textContent: user.user.charAt(0), + textContent: user.user.first_name[0], }); } function getRemainingCount(requestors) { - if(requestors.length > 3) { + if (requestors.length > 3) { return createCustomElement({ tagName: 'span', textContent: `+${requestors.length - 3}`, - }) + }); } } -function createTaskRequestCard({ title, description, requestors, status }) { +function openTaskDetails(id) { + window.location.href = new URL(`/taskRequest/details?id=${id}`, API_BASE_URL); +} + +function createTaskRequestCard({ id, task, description, requestors, status }) { const card = createCustomElement({ tagName: 'div', class: 'taskRequest__card', + eventListeners: [{ event: 'click', func: (e) => openTaskDetails(id, e) }], child: [ createCustomElement({ tagName: 'div', @@ -111,7 +127,7 @@ function createTaskRequestCard({ title, description, requestors, status }) { createCustomElement({ tagName: 'h3', class: 'taskRequest__card__header__title', - textContent: title, + textContent: task.title, }), createCustomElement({ tagName: 'div', @@ -146,7 +162,7 @@ function createTaskRequestCard({ title, description, requestors, status }) { class: 'taskRequest__card__footer__requestor', child: [ ...requestors.map((requestor, index) => { - if (index < 2) { + if (index < 3) { return createCustomElement({ tagName: 'div', class: 'taskRequest__card__footer__requestor__avatar', @@ -155,7 +171,7 @@ function createTaskRequestCard({ title, description, requestors, status }) { }); } }), - getRemainingCount(requestors), + getRemainingCount(requestors) || '', ], }), ], @@ -164,3 +180,17 @@ function createTaskRequestCard({ title, description, requestors, status }) { }); return card; } + +function renderTaskRequestCards(taskRequests) { + if (taskRequests.length > 0) { + filterContainer.classList.remove('hidden'); + taskRequests.forEach((taskRequest) => { + taskRequestContainer.appendChild(createTaskRequestCard(taskRequest)); + }); + } +} + +(async () => { + await getTaskRequests(); + renderTaskRequestCards(fetchedTaskRequests); +})(); diff --git a/taskRequests/style.css b/taskRequests/style.css index 9215688c..db214fcf 100644 --- a/taskRequests/style.css +++ b/taskRequests/style.css @@ -8,7 +8,7 @@ body { } .hidden { - display: none; + display: none !important; } .header { @@ -69,16 +69,24 @@ body { color: #da1e28; } .taskRequest__card { + cursor: pointer; padding: 1rem; - box-shadow: - 0 1px 3px 1px rgba(0, 0, 0, 0.1), - 0 1px 2px 0 rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.1); border-radius: 0.5rem; min-width: 16rem; display: flex; flex-flow: column; gap: 0.5rem; } +.taskRequest__card:hover { + box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.3), + 0px 4px 8px 3px rgba(0, 0, 0, 0.15); + transition: 300ms ease-in; +} +.taskRequest__card:active { + box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.1); + transition: 100ms ease-in; +} .taskRequest__card__header { display: flex; justify-content: space-between; From d4a413c47433b52b36911691bd2f9a7971d18bcf Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 09:55:09 +0530 Subject: [PATCH 03/12] fix: task request card description --- taskRequests/script.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/taskRequests/script.js b/taskRequests/script.js index 873b31c1..33190863 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -114,7 +114,7 @@ function openTaskDetails(id) { window.location.href = new URL(`/taskRequest/details?id=${id}`, API_BASE_URL); } -function createTaskRequestCard({ id, task, description, requestors, status }) { +function createTaskRequestCard({ id, task, requestors, status }) { const card = createCustomElement({ tagName: 'div', class: 'taskRequest__card', @@ -145,7 +145,7 @@ function createTaskRequestCard({ id, task, description, requestors, status }) { child: [ createCustomElement({ tagName: 'p', - textContent: description, + textContent: task.purpose, }), ], }), From 6731825d38af94441313006c97d60daf9fe09a22 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sun, 16 Jul 2023 02:51:32 +0530 Subject: [PATCH 04/12] fix: Review comments Use variables for colors Use constants for messages Extract constants into a separate file --- taskRequests/constants.js | 12 ++++++++++++ taskRequests/index.html | 1 + taskRequests/script.js | 18 +++++------------- taskRequests/style.css | 34 ++++++++++++++++++++++------------ 4 files changed, 40 insertions(+), 25 deletions(-) create mode 100644 taskRequests/constants.js diff --git a/taskRequests/constants.js b/taskRequests/constants.js new file mode 100644 index 00000000..7326b426 --- /dev/null +++ b/taskRequests/constants.js @@ -0,0 +1,12 @@ +const taskRequestStatus = { + WAITING: 'WAITING', + APPROVED: 'APPROVED', +}; + +const ErrorMessages = { + UNAUTHENTICATED: + 'You are unauthenticated to view this section, please login!', + UNAUTHORIZED: 'You are unauthrozed to view this section', + NOT_FOUND: 'Task Requests not found', + SERVER_ERROR: 'Unexpected error occurred', +}; diff --git a/taskRequests/index.html b/taskRequests/index.html index 23338531..37fff320 100644 --- a/taskRequests/index.html +++ b/taskRequests/index.html @@ -15,6 +15,7 @@ Task Requests | Real Dev Squad + diff --git a/taskRequests/script.js b/taskRequests/script.js index 33190863..d19a5ab2 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -1,8 +1,3 @@ -const taskRequestStatus = { - WAITING: 'WAITING', - APPROVED: 'APPROVED', -}; - const API_BASE_URL = window.API_BASE_URL; const taskRequestContainer = document.getElementById('task-request-container'); const containerBody = document.querySelector('.container__body'); @@ -52,24 +47,21 @@ async function getTaskRequests() { } if (res.status === 401) { - showMessage( - 'ERROR', - 'You are unauthenticated to view this section, please login!', - ); + showMessage('ERROR', ErrorMessages.UNAUTHENTICATED); return; } if (res.status === 403) { - showMessage('ERROR', 'You are unauthrozed to view this section'); + showMessage('ERROR', ErrorMessages.UNAUTHORIZED); return; } if (res.status === 404) { - showMessage('ERROR', 'Task Requests not found'); + showMessage('ERROR', ErrorMessages.NOT_FOUND); return; } - showMessage('ERROR', 'Unexpected error occurred'); + showMessage('ERROR', ErrorMessages.SERVER_ERROR); } catch (e) { console.log(e); } finally { @@ -93,7 +85,7 @@ function getAvatar(user) { if (user.user?.picture?.url) { return createCustomElement({ tagName: 'img', - src: 'user.user?.picture?.url', + src: user.user?.picture?.url, }); } return createCustomElement({ diff --git a/taskRequests/style.css b/taskRequests/style.css index db214fcf..3e862576 100644 --- a/taskRequests/style.css +++ b/taskRequests/style.css @@ -1,5 +1,16 @@ :root { font-family: 'Inter', sans-serif; + --color-primary: #1d1283; + --color-success: rgba(20, 102, 75, 0.6); + --color-error: #da1e28; + --color-warn: rgba(199, 129, 18, 0.4); + --color-gray-light: #eee; + --color-gray: #666; + --color-text-light: rgba(0, 0, 0, 0.6); + --elevation-1: 0 1px 3px 1px rgba(0, 0, 0, 0.1), + 0 1px 2px 0 rgba(0, 0, 0, 0.1); + --elevation-3: 0px 1px 3px 0px rgba(0, 0, 0, 0.3), + 0px 4px 8px 3px rgba(0, 0, 0, 0.15); } body { @@ -12,7 +23,7 @@ body { } .header { - background: #1d1283; + background: var(--color-primary); padding: 1rem; } .header__contents { @@ -66,12 +77,12 @@ body { line-height: 1.25rem; } .taskRequest__message--error { - color: #da1e28; + color: var(--color-error); } .taskRequest__card { cursor: pointer; padding: 1rem; - box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.1); + box-shadow: var(--elevation-1); border-radius: 0.5rem; min-width: 16rem; display: flex; @@ -79,12 +90,11 @@ body { gap: 0.5rem; } .taskRequest__card:hover { - box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.3), - 0px 4px 8px 3px rgba(0, 0, 0, 0.15); + box-shadow: var(--elevation-3); transition: 300ms ease-in; } .taskRequest__card:active { - box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.1); + box-shadow: var(--elevation-1); transition: 100ms ease-in; } .taskRequest__card__header { @@ -100,7 +110,7 @@ body { text-overflow: ellipsis; white-space: nowrap; width: 90%; - color: #1d1283; + color: var(--color-primary); } .taskRequest__card__header__status { height: 0.75rem; @@ -108,10 +118,10 @@ body { border-radius: 50%; } .taskRequest__card__header__status--approved { - background-color: rgba(20, 102, 75, 0.6); + background-color: var(--color-success); } .taskRequest__card__header__status--waiting { - background-color: rgba(199, 129, 18, 0.4); + background-color: var(--color-warn); } .taskRequest__card__body p { font-size: 0.875rem; @@ -121,7 +131,7 @@ body { -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; - color: rgba(0, 0, 0, 0.6); + color: var(--color-text-light); } .taskRequest__card__footer { display: flex; @@ -141,7 +151,7 @@ body { border: solid 2px white; overflow: hidden; border-radius: 50%; - background-color: #eee; + background-color: var(--color-gray-light); } .taskRequest__card__footer__requestor__avatar img { height: 100%; @@ -149,7 +159,7 @@ body { } .taskRequest__card__footer__requestor__avatar span { font-size: 0.875rem; - color: #555; + color: var(--color-gray); } @media (max-width: 1439px) { From db44f8da0d9c016b3f68e240497ca38885dc216a Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 07:20:10 +0530 Subject: [PATCH 05/12] feat: Add task request details page --- taskRequests/details/index.html | 71 ++++++++++ taskRequests/details/script.js | 206 +++++++++++++++++++++++++++ taskRequests/details/style.css | 242 ++++++++++++++++++++++++++++++++ taskRequests/index.html | 1 + taskRequests/script.js | 35 +---- taskRequests/util.js | 25 ++++ 6 files changed, 551 insertions(+), 29 deletions(-) create mode 100644 taskRequests/details/index.html create mode 100644 taskRequests/details/script.js create mode 100644 taskRequests/details/style.css create mode 100644 taskRequests/util.js diff --git a/taskRequests/details/index.html b/taskRequests/details/index.html new file mode 100644 index 00000000..8197e1f1 --- /dev/null +++ b/taskRequests/details/index.html @@ -0,0 +1,71 @@ + + + + + + + + + + + + + Task Requests | Real Dev Squad + + + + + +
+
+ RDS logo + Home +
+
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+ +
+
+

Requestors

+
    +
      +
    • +
    • +
    • +
    • +
    +
    +
    +
    + + diff --git a/taskRequests/details/script.js b/taskRequests/details/script.js new file mode 100644 index 00000000..6d38e759 --- /dev/null +++ b/taskRequests/details/script.js @@ -0,0 +1,206 @@ +const API_BASE_URL = window.API_BASE_URL; + +const taskRequestStatus = { + WAITING: 'WAITING', + APPROVED: 'APPROVED', +}; + +let taskRequest; + +const taskRequestSkeleton = document.querySelector('.taskRequest__skeleton'); +const taskSkeleton = document.querySelector('.task__skeleton'); +const requestorSkeleton = document.querySelector( + '.requestors__container__list__skeleton', +); + +const taskRequestContainer = document.getElementById('task-request-details'); +const taskContainer = document.getElementById('task-details'); +const requestorsContainer = document.getElementById('requestors-details'); + +const taskRequestId = new URLSearchParams(window.location.search).get('id'); +history.pushState({}, '', window.location.href); + +let taskId; + +function renderTaskRequestDetails(taskRequest) { + taskRequestContainer.append( + createCustomElement({ + tagName: 'h1', + textContent: `Task Request `, + class: 'taskRequest__title', + child: [ + createCustomElement({ + tagName: 'span', + class: 'taskRequest__title__subtitle', + textContent: `#${taskRequest.id}`, + }), + ], + }), + createCustomElement({ + tagName: 'p', + textContent: 'Status: ', + class: 'taskRequest__status', + child: [ + createCustomElement({ + tagName: 'span', + textContent: taskRequest.status, + class: [ + 'taskRequest__status__chip', + `taskRequest__status__chip--${taskRequest.status.toLowerCase()}`, + ], + }), + ], + }), + ); +} + +async function renderTaskDetails(taskId) { + try { + const res = await fetch(`${API_BASE_URL}/tasks/${taskId}/details`); + taskSkeleton.classList.add('hidden'); + const data = await res.json(); + + const { taskData } = data; + + taskContainer.append( + createCustomElement({ + tagName: 'h2', + class: 'task__title', + textContent: taskData.title, + }), + createCustomElement({ + tagName: 'p', + class: 'task_type', + textContent: 'Type: ', + child: [ + createCustomElement({ + tagName: 'span', + class: ['task__type__chip', `task__type__chip--${taskData.type}`], + textContent: taskData.type, + }), + taskData.isNoteworthy + ? createCustomElement({ + tagName: 'span', + class: ['task__type__chip', `task__type__chip--noteworthy`], + textContent: 'Note worthy', + }) + : '', + ], + }), + createCustomElement({ + tagName: 'p', + class: 'task__createdBy', + textContent: `Created By: `, + child: [ + createCustomElement({ + tagName: 'a', + href: `https://members.realdevsquad.com/${taskData.createdBy}`, + textContent: taskData.createdBy, + }), + ], + }), + createCustomElement({ + tagName: 'p', + class: 'task__purpose', + textContent: taskData.purpose, + }), + ); + } catch (e) { + console.log(e); + } +} + +function getAvatar(user) { + if (user.user?.picture?.url) { + return createCustomElement({ + tagName: 'img', + src: user.user.picture.url, + alt: user.user.first_name, + title: user.user.first_name, + }); + } + return createCustomElement({ + tagName: 'span', + title: user.user.first_name, + textContent: user.user.first_name[0], + }); +} + +function getActionButton(requestor) { + if (taskRequest.status === taskRequestStatus.APPROVED) { + if (taskRequest?.approvedTo === requestor.user.id) { + return createCustomElement({ + tagName: 'p', + textContent: 'Approved', + class: ['requestors__container__list__approved'], + }); + } else { + return ''; + } + } + return createCustomElement({ + tagName: 'button', + textContent: 'Approve', + class: 'requestors__conatainer__list__button', + }); +} + +async function renderRequestors(requestors) { + requestorSkeleton.classList.remove('hidden'); + const data = await Promise.all( + requestors.map((requestor) => { + return fetch(`${API_BASE_URL}/users/userId/${requestor}`).then((res) => + res.json(), + ); + }), + ); + + requestorSkeleton.classList.add('hidden'); + + data.forEach((requestor) => { + requestorsContainer.append( + createCustomElement({ + tagName: 'li', + child: [ + createCustomElement({ + tagName: 'div', + class: 'requestors__container__list__userDetails', + child: [ + createCustomElement({ + tagName: 'div', + class: 'requestors__container__list__userDetails__avatar', + child: [getAvatar(requestor)], + }), + createCustomElement({ + tagName: 'p', + textContent: requestor.user.first_name, + }), + ], + }), + getActionButton(requestor), + ], + }), + ); + }); +} + +const fetchTaskRequest = async () => { + taskRequestSkeleton.classList.remove('hidden'); + taskContainer.classList.remove('hidden'); + try { + const res = await fetch(`${API_BASE_URL}/taskRequests/${taskRequestId}`); + const data = await res.json(); + taskRequestSkeleton.classList.add('hidden'); + taskRequest = data.data; + + renderTaskRequestDetails(data.data); + renderTaskDetails(data.data.taskId); + renderRequestors(data.data.requestors); + + return data; + } catch (e) { + console.log(e); + } +}; + +fetchTaskRequest(); diff --git a/taskRequests/details/style.css b/taskRequests/details/style.css new file mode 100644 index 00000000..f879bf37 --- /dev/null +++ b/taskRequests/details/style.css @@ -0,0 +1,242 @@ +:root { + font-family: 'Inter', sans-serif; +} + +body { + padding: 0; + margin: 0; +} + +.hidden { + display: none !important; +} + +.skeleton { + animation: skeleton 2s linear infinite; + border-radius: 0.5rem; + min-height: 0.5rem; + margin: 0.5rem 0; +} + +.header { + background: #1d1283; + padding: 1rem; +} +.header__contents { + max-width: 1440px; + padding: 0.5rem 1rem; + margin: 0 auto; + color: white; + display: flex; + align-items: center; + gap: 0.5rem; +} +.header__contents__navlink { + color: white; + text-decoration: none; +} +.header__contents__navlink:hover { + text-decoration: underline; +} + +.container { + max-width: 1440px; + margin: 0 auto; + display: grid; + grid-template-columns: repeat(12, 1fr); +} + +.taskRequest { + padding: 1rem; + grid-column: 1 / span 12; +} +.taskRequest__skeleton__title { + height: 1.5rem; + width: 50ch; + margin: 0.5rem 0; +} +.taskRequest__skeleton__subtitle { + height: 1rem; + max-width: 30ch; + animation: skeleton 2s linear infinite; +} +.taskRequest__title { + font-weight: 400; + font-size: 2rem; + line-height: 2.5rem; +} +.taskRequest__title__subtitle { + font-size: 1rem; + font-weight: 700; + color: #888; + font-size: 0.875rem; +} +.taskRequest__status__chip { + padding: 0.5rem; + line-height: 1.5rem; + border-radius: 1rem; + font-weight: 700; +} +.taskRequest__status__chip--approved { + background: #e1f9f1; + color: #19805e; +} +.taskRequest__status__chip--waiting { + background: #fcf1e0; + color: #c78112; +} + +.task__skeleton__title { + height: 1.25rem; + max-width: 45ch; +} +.task__skeleton__details { + height: 0.75rem; + max-width: 20ch; +} +.task__skeleton__description { + height: 0.75rem; + max-width: 75ch; +} + +.task { + grid-column: 1 / span 8; + padding: 1rem; +} +.task__title { + font-size: 1.5rem; + line-height: 2rem; + color: #1d1283; + margin: 0; +} +.task__purpose { + font-size: 0.875rem; + line-height: 1.25rem; + margin-top: 1rem; + max-width: 80ch; +} +.task__type__chip { + padding: 0.5rem; + line-height: 1.5rem; + border-radius: 1rem; + font-weight: 700; + margin: 0 0.25rem; + white-space: nowrap; +} +.task__type__chip--feature { + background: #dfe4ff; + border: solid 1px #9eadfe; + color: #0224df; +} +.task__type__chip--refactor { + background: #fadee0; + border: solid 1px #f19ca1; + color: #ae1820; +} +.task__type__chip--bug { + background: #e1f9f1; + border: solid 1px #7fe6c4; + color: #14664b; +} +.task__type__chip--noteworthy { + background: #14664b; + color: white; +} + +.requestors { + grid-column: auto / span 4; + padding: 1rem; + align-self: flex-start; + border-left: solid 1px rgba(0, 0, 0, 0.1); +} +.requestors__container__title { + font-size: 1.375rem; + line-height: 1.75rem; + font-weight: 400; + margin: 0; +} +.requestors__container__list { + list-style-type: none; + padding: 0; +} +.requestors__container__list li { + padding: 1rem; + display: flex; + justify-content: space-between; + align-items: center; +} +.requestors__container__list__userDetails { + display: flex; + gap: 1rem; + align-items: center; +} +.requestors__container__list__userDetails__avatar { + height: 2rem; + width: 2rem; + display: grid; + background-color: #e2e2e2; + place-items: center; + border-radius: 50%; +} +.requestors__container__list li:nth-child(even) { + background: #eee; +} +.requestors__conatainer__list__button { + padding: 0.375rem 0.5rem; + background: #fff; + border: solid 1px #19805e; + font-weight: 700; + font-size: 1rem; + line-height: 1.5rem; + color: #19805e; + border-radius: 0.25rem; + cursor: pointer; +} +.requestors__conatainer__list__button:hover { + color: white; + background: #19805e; + transition: 0.3s ease-in-out; +} +.requestors__container__list__approved { + background: transparent; + border: none; + color: #c3c3c3; + font-weight: 600; +} + +@keyframes skeleton { + 0% { + background: hsl(0, 0%, 75%); + } + 50% { + background: hsl(0, 0%, 95%); + } + 100% { + background: hsl(0, 0%, 75%); + } +} + +@media (max-width: 599px) { + .taskRequest__title { + font-size: 1.5rem; + line-height: 1.75rem; + } + .taskRequest__title__subtitle { + font-size: 0.875rem; + line-height: 1rem; + } + .taskRequest__status { + font-size: 0.75rem; + } +} + +@media (max-width: 904px) { + .task { + grid-column: 1 / span 12; + } + + .requestors { + grid-column: 1 / span 12; + border: none; + } +} diff --git a/taskRequests/index.html b/taskRequests/index.html index 37fff320..76b23433 100644 --- a/taskRequests/index.html +++ b/taskRequests/index.html @@ -16,6 +16,7 @@ + diff --git a/taskRequests/script.js b/taskRequests/script.js index d19a5ab2..cd6304d5 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -9,32 +9,6 @@ const loader = document.querySelector('.container__body__loader'); const startLoading = () => loader.classList.remove('hidden'); const stopLoading = () => loader.classList.add('hidden'); -function createCustomElement(domObjectMap) { - const el = document.createElement(domObjectMap.tagName); - for (const [key, value] of Object.entries(domObjectMap)) { - if (key === 'tagName') { - continue; - } - if (key === 'eventListeners') { - value.forEach((obj) => { - el.addEventListener(obj.event, obj.func); - }); - } - if (key === 'class') { - if (Array.isArray(value)) { - el.classList.add(...value); - } else { - el.classList.add(value); - } - } else if (key === 'child') { - el.append(...value); - } else { - el[key] = value; - } - } - return el; -} - async function getTaskRequests() { startLoading(); try { @@ -101,9 +75,12 @@ function getRemainingCount(requestors) { }); } } - +console.log(window.location.hostname); function openTaskDetails(id) { - window.location.href = new URL(`/taskRequest/details?id=${id}`, API_BASE_URL); + const url = new URL(`/taskRequests/details`, window.location.href); + + url.searchParams.append('id', id); + window.location.href = url; } function createTaskRequestCard({ id, task, requestors, status }) { @@ -177,7 +154,7 @@ function renderTaskRequestCards(taskRequests) { if (taskRequests.length > 0) { filterContainer.classList.remove('hidden'); taskRequests.forEach((taskRequest) => { - taskRequestContainer.appendChild(createTaskRequestCard(taskRequest)); + taskRequestDetails.appendChild(createTaskRequestCard(taskRequest)); }); } } diff --git a/taskRequests/util.js b/taskRequests/util.js new file mode 100644 index 00000000..99a9a276 --- /dev/null +++ b/taskRequests/util.js @@ -0,0 +1,25 @@ +function createCustomElement(domObjectMap) { + const el = document.createElement(domObjectMap.tagName); + for (const [key, value] of Object.entries(domObjectMap)) { + if (key === 'tagName') { + continue; + } + if (key === 'eventListeners') { + value.forEach((obj) => { + el.addEventListener(obj.event, obj.func); + }); + } + if (key === 'class') { + if (Array.isArray(value)) { + el.classList.add(...value); + } else { + el.classList.add(value); + } + } else if (key === 'child') { + el.append(...value); + } else { + el[key] = value; + } + } + return el; +} From 24caf8532ce1e8a3fcbebeccfaef2c22e8657129 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 07:36:42 +0530 Subject: [PATCH 06/12] fix: task request title skeleton --- taskRequests/details/style.css | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/taskRequests/details/style.css b/taskRequests/details/style.css index f879bf37..c0f27415 100644 --- a/taskRequests/details/style.css +++ b/taskRequests/details/style.css @@ -239,4 +239,12 @@ body { grid-column: 1 / span 12; border: none; } + + .taskRequest__skeleton__title { + max-width: 80%; + height: 1rem; + } + .taskRequest__skeleton__subtitle { + max-width: 40%; + } } From 0ff42db2d903e3247cfbe54366b3c70fcda173db Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 07:55:25 +0530 Subject: [PATCH 07/12] fix: console statements and variable names --- taskRequests/script.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/taskRequests/script.js b/taskRequests/script.js index cd6304d5..9b8ec65e 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -75,7 +75,6 @@ function getRemainingCount(requestors) { }); } } -console.log(window.location.hostname); function openTaskDetails(id) { const url = new URL(`/taskRequests/details`, window.location.href); @@ -154,7 +153,7 @@ function renderTaskRequestCards(taskRequests) { if (taskRequests.length > 0) { filterContainer.classList.remove('hidden'); taskRequests.forEach((taskRequest) => { - taskRequestDetails.appendChild(createTaskRequestCard(taskRequest)); + taskRequestContainer.appendChild(createTaskRequestCard(taskRequest)); }); } } From b8d4b35edc704c98a0a2852da0d14e2901794718 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 08:40:23 +0530 Subject: [PATCH 08/12] feat: Add approve api call to button --- taskRequests/details/script.js | 50 +++++++++++++++++++++++++++------- 1 file changed, 40 insertions(+), 10 deletions(-) diff --git a/taskRequests/details/script.js b/taskRequests/details/script.js index 6d38e759..cf666f26 100644 --- a/taskRequests/details/script.js +++ b/taskRequests/details/script.js @@ -126,6 +126,31 @@ function getAvatar(user) { }); } +async function approveTaskRequest(userId) { + try { + console.log(taskRequestId, userId); + const res = await fetch(`${API_BASE_URL}/taskRequests/approve`, { + credentials: 'include', + method: 'PATCH', + body: JSON.stringify({ + taskRequestId: taskRequestId, + userId, + }), + headers: { + 'Content-Type': 'application/json', + }, + }); + + if (res.ok) { + taskRequest = await fetchTaskRequest(); + requestorsContainer.innerHTML = ''; + renderRequestors(taskRequest.requestors); + } + } catch (e) { + console.log(e); + } +} + function getActionButton(requestor) { if (taskRequest.status === taskRequestStatus.APPROVED) { if (taskRequest?.approvedTo === requestor.user.id) { @@ -142,6 +167,9 @@ function getActionButton(requestor) { tagName: 'button', textContent: 'Approve', class: 'requestors__conatainer__list__button', + eventListeners: [ + { event: 'click', func: () => approveTaskRequest(requestor.user.id) }, + ], }); } @@ -184,23 +212,25 @@ async function renderRequestors(requestors) { }); } -const fetchTaskRequest = async () => { +async function fetchTaskRequest() { + const res = await fetch(`${API_BASE_URL}/taskRequests/${taskRequestId}`); + const data = await res.json(); + return data.data; +} + +const renderTaskRequest = async () => { taskRequestSkeleton.classList.remove('hidden'); taskContainer.classList.remove('hidden'); try { - const res = await fetch(`${API_BASE_URL}/taskRequests/${taskRequestId}`); - const data = await res.json(); + taskRequest = await fetchTaskRequest(); taskRequestSkeleton.classList.add('hidden'); - taskRequest = data.data; - - renderTaskRequestDetails(data.data); - renderTaskDetails(data.data.taskId); - renderRequestors(data.data.requestors); - return data; + renderTaskRequestDetails(taskRequest); + renderTaskDetails(taskRequest.taskId); + renderRequestors(taskRequest.requestors); } catch (e) { console.log(e); } }; -fetchTaskRequest(); +renderTaskRequest(); From b7e5759edccc13cfe3a5a498287d5654fe756ccc Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sat, 15 Jul 2023 19:18:02 +0530 Subject: [PATCH 09/12] fix: Review comments Use console.error in catch statement Avoid unexpected error due to undefined value --- taskRequests/details/script.js | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/taskRequests/details/script.js b/taskRequests/details/script.js index cf666f26..4eb4838c 100644 --- a/taskRequests/details/script.js +++ b/taskRequests/details/script.js @@ -60,25 +60,30 @@ async function renderTaskDetails(taskId) { taskSkeleton.classList.add('hidden'); const data = await res.json(); - const { taskData } = data; + const { taskData } = data ?? {}; taskContainer.append( createCustomElement({ tagName: 'h2', class: 'task__title', - textContent: taskData.title, + textContent: taskData?.title || 'N/A', }), createCustomElement({ tagName: 'p', class: 'task_type', textContent: 'Type: ', child: [ - createCustomElement({ - tagName: 'span', - class: ['task__type__chip', `task__type__chip--${taskData.type}`], - textContent: taskData.type, - }), - taskData.isNoteworthy + taskData?.type + ? createCustomElement({ + tagName: 'span', + class: [ + 'task__type__chip', + `task__type__chip--${taskData.type}`, + ], + textContent: taskData?.type, + }) + : '', + taskData?.isNoteworthy ? createCustomElement({ tagName: 'span', class: ['task__type__chip', `task__type__chip--noteworthy`], @@ -95,18 +100,18 @@ async function renderTaskDetails(taskId) { createCustomElement({ tagName: 'a', href: `https://members.realdevsquad.com/${taskData.createdBy}`, - textContent: taskData.createdBy, + textContent: taskData?.createdBy || 'N/A', }), ], }), createCustomElement({ tagName: 'p', class: 'task__purpose', - textContent: taskData.purpose, + textContent: taskData?.purpose || 'N/A', }), ); } catch (e) { - console.log(e); + console.error(e); } } @@ -128,7 +133,7 @@ function getAvatar(user) { async function approveTaskRequest(userId) { try { - console.log(taskRequestId, userId); + console.error(taskRequestId, userId); const res = await fetch(`${API_BASE_URL}/taskRequests/approve`, { credentials: 'include', method: 'PATCH', @@ -147,7 +152,7 @@ async function approveTaskRequest(userId) { renderRequestors(taskRequest.requestors); } } catch (e) { - console.log(e); + console.error(e); } } @@ -229,7 +234,7 @@ const renderTaskRequest = async () => { renderTaskDetails(taskRequest.taskId); renderRequestors(taskRequest.requestors); } catch (e) { - console.log(e); + console.error(e); } }; From 8d33633854eb206859e7bc4a7e9624f1d251ae4c Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Sun, 16 Jul 2023 03:04:27 +0530 Subject: [PATCH 10/12] fix: use console.error instead of console.log for catch --- taskRequests/script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/taskRequests/script.js b/taskRequests/script.js index 9b8ec65e..e17c53d3 100644 --- a/taskRequests/script.js +++ b/taskRequests/script.js @@ -37,7 +37,7 @@ async function getTaskRequests() { showMessage('ERROR', ErrorMessages.SERVER_ERROR); } catch (e) { - console.log(e); + console.error(e); } finally { stopLoading(); } From 1cc8238aadf089358b1ed700475bfc02ad578a8c Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Mon, 17 Jul 2023 02:30:49 +0530 Subject: [PATCH 11/12] test: Add unit tests for createCustomElement --- .../unit/createCustomElement.test.js | 76 +++++++++++++++++++ taskRequests/details/index.html | 4 +- taskRequests/index.html | 15 ++-- taskRequests/util.js | 4 + 4 files changed, 92 insertions(+), 7 deletions(-) create mode 100644 __tests__/taskRequests/unit/createCustomElement.test.js diff --git a/__tests__/taskRequests/unit/createCustomElement.test.js b/__tests__/taskRequests/unit/createCustomElement.test.js new file mode 100644 index 00000000..de6f6753 --- /dev/null +++ b/__tests__/taskRequests/unit/createCustomElement.test.js @@ -0,0 +1,76 @@ +const puppeteer = require('puppeteer'); +const { createCustomElement } = require('../../../taskRequests/util'); + +describe('createCustomElement', () => { + let browser; + let page; + + beforeAll(async () => { + browser = await puppeteer.launch({ + headless: true, + ignoreHTTPSErrors: true, + args: ['--incognito', '--disable-web-security'], + devtools: false, + }); + page = await browser.newPage(); + + await page.goto('http://localhost:8000/taskRequests'); + await page.waitForNetworkIdle(); + }); + + afterAll(async () => { + await browser.close(); + }); + + describe('tagName', () => { + it('should create tag with provided tagName', async () => { + const tag = await page.evaluate( + () => createCustomElement({ tagName: 'p' }).tagName, + ); + expect(tag).toMatch(/p/i); + }); + + it('should not add tagName attribute', async () => { + const tagNameAttr = await page.evaluate(() => + createCustomElement({ tagName: 'p' }).getAttribute('tagName'), + ); + + expect(tagNameAttr).toBeNull(); + }); + }); + + describe('className', () => { + it('should add the class when class key is provided using string', async () => { + const classes = await page.evaluate(() => [ + ...createCustomElement({ tagName: 'p', class: 'test-class' }).classList, + ]); + + expect(classes).toHaveLength(1); + expect(classes).toContain('test-class'); + }); + + it('should add multiple classes when class key has array as value', async () => { + const classes = await page.evaluate(() => [ + ...createCustomElement({ + tagName: 'p', + class: ['test-class-1', 'test-class-2'], + }).classList, + ]); + + expect(classes).toHaveLength(2); + expect(classes).toStrictEqual(['test-class-1', 'test-class-2']); + }); + }); + + describe('textContent', () => { + it('should add textContent key when specified', async () => { + const textContent = await page.evaluate( + () => + createCustomElement({ tagName: 'p', textContent: 'test content' }) + .textContent, + ); + + expect(textContent).toBe('test content'); + }); + }); +}); diff --git a/taskRequests/details/index.html b/taskRequests/details/index.html index 8197e1f1..73019818 100644 --- a/taskRequests/details/index.html +++ b/taskRequests/details/index.html @@ -11,12 +11,12 @@ href="https://fonts.googleapis.com/css2?family=Inter:wght@100;400;700;800&display=swap" rel="stylesheet" /> - + Task Requests | Real Dev Squad - +
    diff --git a/taskRequests/index.html b/taskRequests/index.html index 76b23433..ec95cd3c 100644 --- a/taskRequests/index.html +++ b/taskRequests/index.html @@ -13,17 +13,22 @@ /> Task Requests | Real Dev Squad - + - - - + + +
    - RDS logo + RDS logo Home
    diff --git a/taskRequests/util.js b/taskRequests/util.js index 99a9a276..a53d8d4c 100644 --- a/taskRequests/util.js +++ b/taskRequests/util.js @@ -23,3 +23,7 @@ function createCustomElement(domObjectMap) { } return el; } + +module.exports = { + createCustomElement, +}; From 3ae2c4f5072ca5f5cb58c958205fc45fd90a96a9 Mon Sep 17 00:00:00 2001 From: tanishqsingla Date: Thu, 20 Jul 2023 22:46:23 +0530 Subject: [PATCH 12/12] test: Add test for task requests UI --- __tests__/taskRequests/taskRequest.test.js | 130 ++++++++++++++++++ .../unit/createCustomElement.test.js | 76 ---------- mock-data/taskRequests/index.js | 45 ++++++ taskRequests/constants.js | 5 + taskRequests/details/index.html | 3 +- taskRequests/details/script.js | 5 - 6 files changed, 182 insertions(+), 82 deletions(-) create mode 100644 __tests__/taskRequests/taskRequest.test.js delete mode 100644 __tests__/taskRequests/unit/createCustomElement.test.js create mode 100644 mock-data/taskRequests/index.js diff --git a/__tests__/taskRequests/taskRequest.test.js b/__tests__/taskRequests/taskRequest.test.js new file mode 100644 index 00000000..6806f7b8 --- /dev/null +++ b/__tests__/taskRequests/taskRequest.test.js @@ -0,0 +1,130 @@ +const puppeteer = require('puppeteer'); + +const { fetchedTaskRequests } = require('../../mock-data/taskRequests'); + +const SITE_URL = 'http://localhost:8000'; +// helper/loadEnv.js file causes API_BASE_URL to be stagin-api on local env url in taskRequest/index.html +const API_BASE_URL = 'https://staging-api.realdevsquad.com'; + +describe('Task Requests', () => { + let browser; + let page; + + beforeAll(async () => { + browser = await puppeteer.launch(); + page = await browser.newPage(); + + await page.setRequestInterception(true); + + page.on('request', (request) => { + if (request.url() === `${API_BASE_URL}/taskRequests`) { + request.respond({ + status: 200, + contentType: 'application/json', + body: JSON.stringify({ data: fetchedTaskRequests }), + headers: { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS', + 'Access-Control-Allow-Headers': 'Content-Type, Authorization', + }, + }); + } else { + request.continue(); + } + }); + + await page.goto(`${SITE_URL}/taskRequests`); + await page.waitForNetworkIdle(); + }); + + afterAll(async () => { + await browser.close(); + }); + + describe('When the user is super user', () => { + it('should display the task requests card', async () => { + const url = await page.evaluate(() => API_BASE_URL); + console.log(url); + const taskCards = await page.$$('.taskRequest__card'); + const title = await taskCards[0].evaluate( + (el) => el.children[0].textContent, + ); + const purpose = await taskCards[0].evaluate( + (el) => el.children[1].textContent, + ); + + expect(taskCards).toHaveLength(1); + expect(title).toMatch(/test title/i); + expect(purpose).toMatch(/test purpose/i); + }); + }); +}); + +describe('createCustomElement', () => { + let browser; + let page; + + beforeAll(async () => { + browser = await puppeteer.launch(); + page = await browser.newPage(); + + await page.goto(`${SITE_URL}/taskRequests`); + await page.waitForNetworkIdle(); + }); + + afterAll(async () => { + await browser.close(); + }); + + describe('tagName', () => { + it('should create tag with provided tagName', async () => { + const tag = await page.evaluate( + () => createCustomElement({ tagName: 'p' }).tagName, + ); + expect(tag).toMatch(/p/i); + }); + + it('should not add tagName attribute', async () => { + const tagNameAttr = await page.evaluate(() => + createCustomElement({ tagName: 'p' }).getAttribute('tagName'), + ); + + expect(tagNameAttr).toBeNull(); + }); + }); + + describe('className', () => { + it('should add the class when class key is provided using string', async () => { + const classes = await page.evaluate(() => [ + ...createCustomElement({ tagName: 'p', class: 'test-class' }).classList, + ]); + + expect(classes).toHaveLength(1); + expect(classes).toContain('test-class'); + }); + + it('should add multiple classes when class key has array as value', async () => { + const classes = await page.evaluate(() => [ + ...createCustomElement({ + tagName: 'p', + class: ['test-class-1', 'test-class-2'], + }).classList, + ]); + + expect(classes).toHaveLength(2); + expect(classes).toStrictEqual(['test-class-1', 'test-class-2']); + }); + }); + + describe('textContent', () => { + it('should add textContent key when specified', async () => { + const textContent = await page.evaluate( + () => + createCustomElement({ tagName: 'p', textContent: 'test content' }) + .textContent, + ); + + expect(textContent).toBe('test content'); + }); + }); +}); diff --git a/__tests__/taskRequests/unit/createCustomElement.test.js b/__tests__/taskRequests/unit/createCustomElement.test.js deleted file mode 100644 index de6f6753..00000000 --- a/__tests__/taskRequests/unit/createCustomElement.test.js +++ /dev/null @@ -1,76 +0,0 @@ -const puppeteer = require('puppeteer'); -const { createCustomElement } = require('../../../taskRequests/util'); - -describe('createCustomElement', () => { - let browser; - let page; - - beforeAll(async () => { - browser = await puppeteer.launch({ - headless: true, - ignoreHTTPSErrors: true, - args: ['--incognito', '--disable-web-security'], - devtools: false, - }); - page = await browser.newPage(); - - await page.goto('http://localhost:8000/taskRequests'); - await page.waitForNetworkIdle(); - }); - - afterAll(async () => { - await browser.close(); - }); - - describe('tagName', () => { - it('should create tag with provided tagName', async () => { - const tag = await page.evaluate( - () => createCustomElement({ tagName: 'p' }).tagName, - ); - expect(tag).toMatch(/p/i); - }); - - it('should not add tagName attribute', async () => { - const tagNameAttr = await page.evaluate(() => - createCustomElement({ tagName: 'p' }).getAttribute('tagName'), - ); - - expect(tagNameAttr).toBeNull(); - }); - }); - - describe('className', () => { - it('should add the class when class key is provided using string', async () => { - const classes = await page.evaluate(() => [ - ...createCustomElement({ tagName: 'p', class: 'test-class' }).classList, - ]); - - expect(classes).toHaveLength(1); - expect(classes).toContain('test-class'); - }); - - it('should add multiple classes when class key has array as value', async () => { - const classes = await page.evaluate(() => [ - ...createCustomElement({ - tagName: 'p', - class: ['test-class-1', 'test-class-2'], - }).classList, - ]); - - expect(classes).toHaveLength(2); - expect(classes).toStrictEqual(['test-class-1', 'test-class-2']); - }); - }); - - describe('textContent', () => { - it('should add textContent key when specified', async () => { - const textContent = await page.evaluate( - () => - createCustomElement({ tagName: 'p', textContent: 'test content' }) - .textContent, - ); - - expect(textContent).toBe('test content'); - }); - }); -}); diff --git a/mock-data/taskRequests/index.js b/mock-data/taskRequests/index.js new file mode 100644 index 00000000..90d70af8 --- /dev/null +++ b/mock-data/taskRequests/index.js @@ -0,0 +1,45 @@ +const fetchedTaskRequests = [ + { + id: '123CCXSDF123', + url: `https://api.realdevsquad.com/taskRequests/123CCXSDF123`, + taskId: 'TESTID123', + status: 'WAITING', + task: { + percentCompleted: 0, + isNoteworthy: true, + purpose: 'Test purpose', + assignee: false, + title: 'Test title', + type: 'feature', + priority: 'HIGH', + status: 'ASSIGNED', + }, + requestors: [ + { + userExists: true, + user: { + id: 'V4rqL1aDecNGoa1IxiCu', + incompleteUserDetails: false, + discordId: '12345', + roles: { + archived: false, + }, + linkedin_id: 'uiram', + last_name: 'Raghunathan', + yoe: '5', + github_display_name: 'Sriram', + company_name: 'Juniper networks ', + github_id: '19sriram', + designation: 'Front end engineer', + twitter_id: '19sriram', + first_name: 'Sriram', + username: '19sriram', + }, + }, + ], + }, +]; + +module.exports = { + fetchedTaskRequests, +}; diff --git a/taskRequests/constants.js b/taskRequests/constants.js index 7326b426..a6c0f058 100644 --- a/taskRequests/constants.js +++ b/taskRequests/constants.js @@ -3,6 +3,11 @@ const taskRequestStatus = { APPROVED: 'APPROVED', }; +const MessageStatus = { + SUCCESS: 'SUCCESS', + ERROR: 'ERROR', +}; + const ErrorMessages = { UNAUTHENTICATED: 'You are unauthenticated to view this section, please login!', diff --git a/taskRequests/details/index.html b/taskRequests/details/index.html index 73019818..5355910f 100644 --- a/taskRequests/details/index.html +++ b/taskRequests/details/index.html @@ -16,7 +16,8 @@ Task Requests | Real Dev Squad - + +
    diff --git a/taskRequests/details/script.js b/taskRequests/details/script.js index 4eb4838c..c014ad6d 100644 --- a/taskRequests/details/script.js +++ b/taskRequests/details/script.js @@ -1,10 +1,5 @@ const API_BASE_URL = window.API_BASE_URL; -const taskRequestStatus = { - WAITING: 'WAITING', - APPROVED: 'APPROVED', -}; - let taskRequest; const taskRequestSkeleton = document.querySelector('.taskRequest__skeleton');