From bea62a0ced673107a99699294cfacdbe0b4c37bc Mon Sep 17 00:00:00 2001 From: kotesh-arya Date: Fri, 6 Oct 2023 23:24:46 +0530 Subject: [PATCH 1/6] REFACTOR: replace /members with /users --- online-members/constants.js | 2 +- online-members/utils.js | 2 +- task/script.js | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/online-members/constants.js b/online-members/constants.js index fb4f301c..1d6844e3 100644 --- a/online-members/constants.js +++ b/online-members/constants.js @@ -31,7 +31,7 @@ const TASKS_CLASS_LIST = ['task']; const TASKS_CONTAINER_CLASS_LIST = ['tasks-container']; // RDS Api Constants -const RDS_API_MEMBERS = API_BASE_URL + '/members'; +const RDS_API_MEMBERS = API_BASE_URL + '/users'; const RDS_API_TASKS_USERS = API_BASE_URL + '/tasks'; const RDS_CLOUDINARY_CLOUD_URL = `https://res.cloudinary.com/realdevsquad/image/upload`; diff --git a/online-members/utils.js b/online-members/utils.js index d8ec1150..c6fc98b4 100644 --- a/online-members/utils.js +++ b/online-members/utils.js @@ -25,7 +25,7 @@ async function getMembersData() { const membersRequest = await makeApiCall(RDS_API_MEMBERS); if (membersRequest.status === 200) { membersList = await membersRequest.json(); - membersList = membersList.members; + membersList = membersList.users; membersList = membersList.filter((member) => !member.incompleteUserDetails); membersList.forEach((member) => { memberObject[`${member.username}`] = { diff --git a/task/script.js b/task/script.js index 1e26f9db..a85e0d8b 100644 --- a/task/script.js +++ b/task/script.js @@ -435,11 +435,11 @@ async function fetchLevel() { } } -async function fetchMembers() { +async function fetchUsers() { try { - const response = await fetch(`${API_BASE_URL}/members`); + const response = await fetch(`${API_BASE_URL}/users`); const data = await response.json(); - membersData = data.members; + membersData = data.users; } catch { return; } @@ -447,7 +447,7 @@ async function fetchMembers() { fetchTags(); fetchLevel(); -fetchMembers(); +fetchUsers(); function filterMembers(searchInput) { clearSuggestionList(); From 3ef9517bf24d1b3973af6987aa8c514e5660c6d5 Mon Sep 17 00:00:00 2001 From: kotesh-arya Date: Sat, 7 Oct 2023 15:37:08 +0530 Subject: [PATCH 2/6] TEST: using users mockdata --- __tests__/tasks/profile-picture.test.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/__tests__/tasks/profile-picture.test.js b/__tests__/tasks/profile-picture.test.js index c06d707b..6e2eccd9 100644 --- a/__tests__/tasks/profile-picture.test.js +++ b/__tests__/tasks/profile-picture.test.js @@ -1,6 +1,6 @@ const puppeteer = require('puppeteer'); const API_BASE_URL = 'https://staging-api.realdevsquad.com'; -const { members } = require('../../mock-data/members'); +const { allUsersData } = require('../../mock-data/users'); describe('Task Page - Assignee Profile Pic', () => { let browser; @@ -20,7 +20,7 @@ describe('Task Page - Assignee Profile Pic', () => { page.on('request', (interceptedRequest) => { const url = interceptedRequest.url(); - if (url === `${API_BASE_URL}/members`) { + if (url === `${API_BASE_URL}/users`) { interceptedRequest.respond({ status: 200, contentType: 'application/json', @@ -29,7 +29,7 @@ describe('Task Page - Assignee Profile Pic', () => { 'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS', 'Access-Control-Allow-Headers': 'Content-Type, Authorization', }, - body: JSON.stringify(members), + body: JSON.stringify(allUsersData), }); } else { interceptedRequest.continue(); @@ -52,7 +52,7 @@ describe('Task Page - Assignee Profile Pic', () => { it('Profile picture with url', async () => { const inputElement = await page.$('input#assignee'); - const name = 'satyam'; + const name = 'Arpit_02'; //Trigger the input event manually for (let i = 0; i < name.length; i++) { @@ -64,7 +64,7 @@ describe('Task Page - Assignee Profile Pic', () => { await page.waitForTimeout(2000); const imgSrc = await page.$eval('#list-items img', (img) => img.src); const expectedImageFilename = - 'https://res.cloudinary.com/imgprc/image/upload/v1688145505/profile/tu4zVmwFX91e9oEuSWLg/woqilcqdbp0cudcexkem.jpg'; + 'https://res.cloudinary.com/realdevsquad/image/upload/v1679878917/profile/54vObOfoscwiIVNMSqnN/askdcanhcehukqrdugge.jpg'; expect(imgSrc.endsWith(expectedImageFilename)).toBe(true); }); @@ -75,7 +75,7 @@ describe('Task Page - Assignee Profile Pic', () => { await page.keyboard.press('Backspace'); await new Promise((resolve) => setTimeout(resolve, 500)); - const name = 'sumit'; + const name = '19sriram'; for (let i = 0; i < name.length; i++) { await inputElement.type(name[i], { delay: 100 }); } From c1f86126b80477fab54d880fb80e5d454f4a9b49 Mon Sep 17 00:00:00 2001 From: kotesh-arya Date: Sun, 8 Oct 2023 21:27:34 +0530 Subject: [PATCH 3/6] REFACTOR: replace route, variable name --- __tests__/tasks/task-dependency.test.js | 2 +- online-members/constants.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/__tests__/tasks/task-dependency.test.js b/__tests__/tasks/task-dependency.test.js index b2e3634a..148f9842 100644 --- a/__tests__/tasks/task-dependency.test.js +++ b/__tests__/tasks/task-dependency.test.js @@ -33,7 +33,7 @@ describe('Input box', () => { }, body: JSON.stringify(levels), }); - } else if (url === `${API_BASE_URL}/members`) { + } else if (url === `${API_BASE_URL}/users`) { interceptedRequest.respond({ status: 200, contentType: 'application/json', diff --git a/online-members/constants.js b/online-members/constants.js index 1d6844e3..20bdd67d 100644 --- a/online-members/constants.js +++ b/online-members/constants.js @@ -31,7 +31,7 @@ const TASKS_CLASS_LIST = ['task']; const TASKS_CONTAINER_CLASS_LIST = ['tasks-container']; // RDS Api Constants -const RDS_API_MEMBERS = API_BASE_URL + '/users'; +const RDS_API_USERS = API_BASE_URL + '/users'; const RDS_API_TASKS_USERS = API_BASE_URL + '/tasks'; const RDS_CLOUDINARY_CLOUD_URL = `https://res.cloudinary.com/realdevsquad/image/upload`; From 45b5b6ae990cd0afde8696bbfc0c3bcd63b95184 Mon Sep 17 00:00:00 2001 From: kotesh-arya Date: Wed, 11 Oct 2023 00:32:44 +0530 Subject: [PATCH 4/6] REFACTOR: variables and css-selectors to represent users --- online-members/constants.js | 39 +++++++------- online-members/online-members.css | 24 ++++----- online-members/online-members.html | 2 +- online-members/script.js | 82 +++++++++++++++--------------- online-members/sse-events.js | 43 ++++++++-------- online-members/utils.js | 38 +++++++------- task/script.js | 10 ++-- 7 files changed, 117 insertions(+), 121 deletions(-) diff --git a/online-members/constants.js b/online-members/constants.js index 20bdd67d..df64e9a2 100644 --- a/online-members/constants.js +++ b/online-members/constants.js @@ -1,27 +1,24 @@ 'use strict'; -// Members Constants -const MEMBERS_CLASS = 'members'; -const MEMBERS_CLASS_LIST = [MEMBERS_CLASS]; -const MEMBERS_UL_CLASS_LIST = ['members-list']; -const MEMBERS_LIST_ID = 'members-list'; -const MEMBERS_CONTAINER_CLASS_LIST = ['members-container']; -const MEMBERS_CONTAINER_ID = 'members-container'; -const MEMBERS_ONLINE_CLASS = 'members-online'; -const MEMBERS_ONLINE_HIDDEN_CLASS = 'members-online-hidden'; -const MEMBERS_ONLINE_CLASS_LIST = [ - MEMBERS_ONLINE_CLASS, - MEMBERS_ONLINE_HIDDEN_CLASS, -]; - -const PROFILE_NAME_CLASS = 'members-profile-and-name'; +// Users Constants +const USERS_CLASS = 'users'; +const USERS_CLASS_LIST = [USERS_CLASS]; +const USERS_UL_CLASS_LIST = ['users-list']; +const USERS_LIST_ID = 'users-list'; +const USERS_CONTAINER_CLASS_LIST = ['users-container']; +const USERS_CONTAINER_ID = 'users-container'; +const USERS_ONLINE_CLASS = 'users-online'; +const USERS_ONLINE_HIDDEN_CLASS = 'users-online-hidden'; +const USERS_ONLINE_CLASS_LIST = [USERS_ONLINE_CLASS, USERS_ONLINE_HIDDEN_CLASS]; + +const PROFILE_NAME_CLASS = 'users-profile-and-name'; const PROFILE_NAME_CLASS_LIST = [PROFILE_NAME_CLASS]; -// Members Search Constants -const MEMBERS_SEARCH_CLASS_LIST = ['members-search']; -const MEMBERS_SEARCH_INPUT_CLASS_LIST = ['members-search-input']; -const MEMBERS_SEARCH_ID = 'search-members'; -const MEMBERS_SEARCH_PLACEHOLDER = 'Search for members'; +// Users Search Constants +const USERS_SEARCH_CLASS_LIST = ['users-search']; +const USERS_SEARCH_INPUT_CLASS_LIST = ['users-search-input']; +const USERS_SEARCH_ID = 'search-users'; +const USERS_SEARCH_PLACEHOLDER = 'Search for users'; // Task Constants const TASKS_CONTAINER_ID = 'task-container'; @@ -41,7 +38,7 @@ const RDS_SSE_ONLINE_URL = 'https://online.realdevsquad.com/online-members'; const RDS_PROFILE_IMAGE_SIZE = 'w_40,h_40'; const RDS_PROFILE_DEFAULT_IMAGE = ''; -const PROFILE_IMAGE_CLASS = 'members-profile'; +const PROFILE_IMAGE_CLASS = 'users-profile'; const PROFILE_IMAGE_CLASS_LIST = [PROFILE_IMAGE_CLASS]; /* MESSAGES CONSTANTS */ diff --git a/online-members/online-members.css b/online-members/online-members.css index eeccc16c..14f693c4 100644 --- a/online-members/online-members.css +++ b/online-members/online-members.css @@ -35,7 +35,7 @@ width: 100%; } -.members-container { +.users-container { margin: 10px; border: 2px solid black; border-radius: 5px; @@ -44,11 +44,11 @@ min-width: 260px; } -.members-list { +.users-list { overflow: hidden; } -.members { +.users { margin: 10px; padding: 0 5px; border: 2px solid black; @@ -62,32 +62,32 @@ background: #8abbcd; } -.members:hover { +.users:hover { background: #5992a7; } -.members.dragging { +.users.dragging { background: transparent; color: transparent; border: transparent; } -.members-online { +.users-online { width: 10px; height: 10px; background-color: rgb(58, 247, 58); border-radius: 50%; } -.members-online-hidden { +.users-online-hidden { display: none; } -.members.scale { +.users.scale { transform: scale(1.1); } -.members-search { +.users-search { margin: 10px; height: 4rem; width: 15rem; @@ -98,18 +98,18 @@ align-items: center; } -.members-search-input { +.users-search-input { height: 2rem; width: 15rem; } -.members-profile { +.users-profile { border-radius: 50%; width: 25px; margin-right: 5px; } -.members-profile-and-name { +.users-profile-and-name { display: flex; align-items: center; } diff --git a/online-members/online-members.html b/online-members/online-members.html index b98d0bf9..b6c9bfe7 100644 --- a/online-members/online-members.html +++ b/online-members/online-members.html @@ -21,7 +21,7 @@
-
+