From 7ca0ca9d1f7231fdb408868a9cace74568deb029 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sun, 14 Aug 2022 19:05:23 +0530 Subject: [PATCH 01/11] adds image of selected user --- src/task/script.js | 15 ++++++++++++--- src/task/style.css | 7 +++++++ 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/task/script.js b/src/task/script.js index 6b62e099..6a483124 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -356,6 +356,7 @@ async function fetchMembers(searchInput) { const data = await response.json(); clearSuggestionList(); wasAssigneeSet = false; + assigneeEl.style.backgroundImage = 'none'; if (searchInput.trim() !== '') { const matches = data.members.filter((task) => { if (task.username) { @@ -389,20 +390,28 @@ function clearUserNotFound() { function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { - matches.map(({ username }) => { + matches.map(({ username, picture = {} }) => { + const defaultUrl = + 'https://members.realdevsquad.com/images/Avatar.png?90.2370159455815'; + const imageUrl = + picture.hasOwnProperty('url') && picture.url ? picture.url : defaultUrl; const listItem = document.createElement('p'); listItem.classList.add('list-item'); listItem.style.cursor = 'pointer'; - listItem.setAttribute('onclick', `setAssignee('${username}')`); + listItem.setAttribute( + 'onclick', + `setAssignee('${username}', '${imageUrl}')`, + ); listItem.innerText = username; listItems.appendChild(listItem); }); } } -function setAssignee(assignee) { +function setAssignee(assignee, img) { assigneeEl.value = assignee; wasAssigneeSet = true; + assigneeEl.style.backgroundImage = `url(${img})`; stateHandle(); clearSuggestionList(); } diff --git a/src/task/style.css b/src/task/style.css index 588c17ff..7e29c5fa 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -258,3 +258,10 @@ footer { color: rgb(255, 92, 92); font-size: 0.75rem; } + +#assignee { + background-repeat: no-repeat; + background-position: right; + background-size: 42px; + padding-right: 17px; +} From 6bd4762f9d55abd8274eb44e0e4b8dcf0cfd28e8 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sun, 14 Aug 2022 19:17:09 +0530 Subject: [PATCH 02/11] update variable name --- src/task/script.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/task/script.js b/src/task/script.js index 6a483124..74308a25 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -391,10 +391,12 @@ function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { matches.map(({ username, picture = {} }) => { - const defaultUrl = + const defaultImageUrl = 'https://members.realdevsquad.com/images/Avatar.png?90.2370159455815'; const imageUrl = - picture.hasOwnProperty('url') && picture.url ? picture.url : defaultUrl; + picture.hasOwnProperty('url') && picture.url + ? picture.url + : defaultImageUrl; const listItem = document.createElement('p'); listItem.classList.add('list-item'); listItem.style.cursor = 'pointer'; @@ -408,10 +410,10 @@ function createSuggestionsList(matches) { } } -function setAssignee(assignee, img) { +function setAssignee(assignee, imgUrl) { assigneeEl.value = assignee; wasAssigneeSet = true; - assigneeEl.style.backgroundImage = `url(${img})`; + assigneeEl.style.backgroundImage = `url(${imgUrl})`; stateHandle(); clearSuggestionList(); } From 7b7b02131aab9d92713f64df3a20fc280b4503b4 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Tue, 16 Aug 2022 21:34:38 +0530 Subject: [PATCH 03/11] adds default avatar --- src/images/Avatar.png | Bin 0 -> 6555 bytes src/task/script.js | 5 ++--- 2 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 src/images/Avatar.png diff --git a/src/images/Avatar.png b/src/images/Avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..d2e8dbdc6cfc5fbf2bbf82e0cc0d8fbea1dc18b2 GIT binary patch literal 6555 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 literal 0 HcmV?d00001 diff --git a/src/task/script.js b/src/task/script.js index 74308a25..33d2b102 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -391,12 +391,11 @@ function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { matches.map(({ username, picture = {} }) => { - const defaultImageUrl = - 'https://members.realdevsquad.com/images/Avatar.png?90.2370159455815'; + const defaultImagePath = '../images/Avatar.png'; const imageUrl = picture.hasOwnProperty('url') && picture.url ? picture.url - : defaultImageUrl; + : defaultImagePath; const listItem = document.createElement('p'); listItem.classList.add('list-item'); listItem.style.cursor = 'pointer'; From 0eb4170722f86dac330709a85218aa44d94864e4 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sun, 21 Aug 2022 14:50:25 +0530 Subject: [PATCH 04/11] removes this image --- src/images/Avatar.png | Bin 6555 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/images/Avatar.png diff --git a/src/images/Avatar.png b/src/images/Avatar.png deleted file mode 100644 index d2e8dbdc6cfc5fbf2bbf82e0cc0d8fbea1dc18b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6555 zcmbU_c|6qX*XR44!DPu)3MmFf8#7}`CS{PMkfbbSiwR+7V#*f2si@ncn@~#JwD{>q zS}lw@r&GB!!ZLO zX$CsG3S8~&SiZaveIE&qenbc#Q3IHnNAP`ogE#`(E{=a7ca7H2gK{lepx+uT7h`*d zJ>QBG5V#>Kl(RL;!Pz$|$k)_Q%X}@(EP{m?gm45tw1|*kZWt?Kjn+55ECfrA=~}dJ zD1x9hTE8jfYVSz1;)QZ(#`?y3z6_=j&BRonY0NZQ#aux%U@#5o3`088P>*TAVwkd+ z#E2ZTwjjux;0vefqr11AIo6n z`c>A(rd9?POa_x_ZD?s_ZE4LkF}5-_G%#Id%>09P9nW`P2!|{9gVyga+I4?RE6Icq zK9anS6B@Xm1pG5= z(dN&*=WtQ7hoY=@UNhnjFpp}x&cZpOZJ?ubpOVcynJ)L4Sb#R4N4|8D{ef~?dw96p zW*vFH*6GjBH=of48zB`7B|lqFEWlPD$#o%Z*tMuGv%jP>+(9ESX5fxvbH~_&!rbWT zk-p~ZWT+agq5^@g9R>c`f(if)k^htBpNJIdUAjN2EE;>|6_bA2$t!k$&y!eJ(Uj)A z+IQtWpKE*eZiy{lB37#qO?~c^0&jZqB;%2We$t^H=IeKv{uF#@J08zR+77cTt1jtI zYSa#S9Eq#1*~k!;gcU4#M3adxc9eY1%eT9n$Z^Ur8vfk(P*(c*Z1UTbOgW9!6reue za(*~zS>9mbEZJ*4t_tM1ekyX{tlUX|PLqkcmvp?QeChLrfWhOzEIWSrm65`+!aRC) zU`dr|Al*)CtZbm*ip1qvE!0`5Ddj3@YA*IDjyaMDzeKqf=$HM8dzQ;+pl zRc*DVu6CQTYpo&`yx+|cJMLB2&Fh_SFNLAK+8pr+%Spae26X)_O<1I%1tt-y0X1#47z?;%_hZ|Yy;L1wpfWzG( z*KI0JnfYl_Y#`V=oS$C}CWS;KvUy9WkQH;sKoou5%q=ZHm3-KO3<0J6=1isbE?34n zAXf4Qc^&O;*=nb)gwGslAS~)h<-Q%uE31vUcvkr9MWn#2`R>#EzkH;|+_s=%u-@NY zM_lhXOp&=dhheBh0mt$?p~7q3ix0l4IfK0FydzIEs(!y`$?FZ@0ko*T{MvEx^?0NX z8Ckk`qPt^o;FQB0gyx-Ymj7dHcZ^PT0*1l0;Qio1F& z$ylUKCV)`WrQD`Lud&Hcal0?+*8_X0IA~_% z5Y+gxk2prSj;398B}u))5uQ3_lZiY=P|ai%ESWew>fY|pQ|VGGCNT`>4QeK)D#ZrNC&E=6WThP~k&CrVkdwO%+iz8VsAU@DSA$K2BBg6R9 zs6_*bF(wokn9}jHF&LRqgLNLKsAkUVK1Lw7F~T9;l(%2H273b(4xl_^r61(fw)HTrj{O5{nCIg-_6J|)M5 zOo8C7T;nK_;*0BHAzDyi-zNTM3p+6ZaygMRF_O-$EG))YH1*RERK2QaU&jeFbfAMYM1iWs$xu zRBL|<6&RvJl8PSGJS{^7XvEk6Z1l^rO$8tWetQNLogfJIj2}Xpz|rf5$l`DPe~7DzM!!nOeneF2s4ixEeZ04NorZz%#f90_z+ z!Kv-D5LtNw2oP2y2K}E4C3pY}(Y~m#SQ8#ed@~1KS`7UdB5i2Q4NpKa$c}3G{%hGc{hTY{2`*0Ew6g5Nk`U%HM>rN;jFPB8VFa;)#9nw;JPTS)YoQ>nO^mSGBS+hrFZc`NL0Io5 zO-y;lS+2q%dPKttqO+%xK=^j&SyF4Bb<;sBiL0E&C_RFDYgmg0-j$Fr@Bqq65nY~y zvUwJ@2qhVPo+S)anZ1rU4s4F6D$dV9QMe=5b!$;8cg$RJfnPjnTa+_B3mkudd_6K; zjtHc%$C7|;7MVC&>;o<4h}T@<*kR=H<2@r6d(UtUyx7h? zZCIuF_Ww7fL= zVRyn%?fYptNvYXXpWJ)?Cw-A#x}juye1(*-N58GK51H@ERi(-B<>d;|eCM{aH)1bL zQ=x07NT)9)=kB7+hLuyAAec?ZFf^vnJ5i3Uht#KqMoK{9yQj)C?J^zPX~|M01-9$%j0J=8LO7sq~G1`}ncWv$X2+!yCztz zI6L}~XfN?lksVZ}eXKH=b<1^=+Qa;X24v`w18F5nWm^!$&476q0GVoSY) zA8?Bow(}1&N_BsZy!|o>_0uCMwmv?q4zHmCE%l>;MXA%mm5bvp6?gE8Wl#yZ<8<*n zBYlQIye#uNTLy=JFC=^FsQviZY-C3hhMI5i7MBwYutVs-SL(OOR8&|=0@B%i^@1SQKO-p9Wmuy@umDX4CVC2=ttBMp5l9vB^ zTx~jXaOQ$5?_|D&)Jz@Tom-4`&!u@I@Pp0wUmsJVSoOcrYiAR zot}%$&5qW9oPP5+6{cnL$%l87;eHh9O;1AE5ALJ&@OXt6z4(T4$LLt!LN(N%+gE(x zDUS{xbzaNTkkXc~_qjJwxR6km|{aw;q%mz(42Qs3Y{ep8;VbbAG=Rbwf~`x9;@{Nk4T@#^+U1NV@F>KO5q zJKMJ{GVWrj=1G=i*vu=sDPq&au3%O4XyN5fGw;tx?D_6<&HKZz^K47FpTo6FJRSCt zP`&hR5tm)KrKa}gr7@M2$R)}!)S~W1k)FieRP2$~qZITB%{F~lv06b&=yp48JQ36*PwJlZTwbg)>~|8_?@VqNo_t%yH4Ij|I0H8e{h244>^q|nk3(Jh z6_&=9ww99zBD_kjVs?{-tL;luj- zX(vPf!wn(hZ-URUcKmBznQ_R@iBBAt>n4kmLY*zoenma)NOJkgj`8JLNjk~>R&N4J z-gcQ9`-B`gP-e6Nva}47#q|d|9A2vC1T|@R?rv61&FeeEd8}h*OwJBZ9cb$4J;`@J zRogSNJF;}SIbES)yOnFX*`<`>s}-FM{%AbeT>GwqPl0oj`=s;Jc8%JPH1sg(GD$Z_ z6K%^)7Hm60WM;g>QHg(ev0#*WV90V%c5*SbJ-Whth50tozC@z8_FelodeO@*rU`5Y z-6KA{r&sICqNX%kvEvc*wrHo>s07$eAMo-z_0yYI`Y!mR%ad<^ZrgLI`$0<0!%Zs( zW}u1V+~l@LozCUTix-scm@y+QCGpVUjd#^4wi=R|BiTG?`?IAT?en}8a8Yk(&u5XI zxL!wRti}9Qfqq;>rMY%~^9!!bCdrht&EwEbQpK?!d>VSM+K_F8$BBLuLlH?^0ZWY` zgL*)2I%&N+&a%=3zPP6IeayjIiO{LF1o(=T59%=YqD;{|3k;OyvT`h-D=4zb91$y| z>(r*>Pyp#VLS&Vo;tX-{$*HC>mtER$*r!=T*fKi+Q4>q9)m$?t4svsV8gH@-I}q5a zbQBst*$&#rL1%w+%d1RnFzPdM`z%vbXM0gs1+ts9rXw?5%l{7TM*i3`^?vpv?#!HEgCMhb6 z*XKJE9T%27Boi^WM-;u|f+@NfLrmJ_JOE>lDN3f5tO*&(xaBxS`W2@@&NL=K<f)b#A^i=AF^sc?{1gm;>=l5$Ud5yNDHzb!{)U_sgSX*$)ok z!n{*ws;!ZJ^rT}xRN(G9Ns+LmoReQ&35|CHoBHO$6-(lDsmccUQod94W}z&#lAgc@ z6+2W#FK>p^(ip!}8Rmzd4W1_Phm-+z63cV4uyiUL zdOaya^=KU;jxCUw<+l~1dG?ct)3vaLMBJQ`@}`E`uG#~`1Lkm}LQl>{9%O94Y7q1z z7nCo3IgNFFoGn}j0dEX@O~Hh6&uoDn1c*ue3yvQv=V<7|ftOd=weTD##?2vo#vOU| zSOBc|nC@C#T(UjHJ8jP&%y)VYZFv4NwA)aAGVDp6OyF_RvKsZ&LcelEV2g z8fD*mQHpJ$x*S}^GHeP(1)_SFfoyFA)@6f$Us574;cP&wHzt&31DPNs=^$MB2`A9w z1SLn7f%z&Mj8R@C2N_{XNc9LTEBq8rgDP1xX2bm+n(?O=A&%z40o-il5wJ@w@7x1^ zS38*vN0s4#3}UV-QMh3p1;zml(HTHHkI~SxMJEp819m+OTq^On_rn<~07(2dbuRq1 zqG=Zyhz3uzun}Y#+1A?WKd3F`T{};2a51f$Tfu+b}CZA^(Q?A1!|g`CZok hfBBC^dfSWVc!Q7qiRXB7{xhU7*jhWR%eVB7|1ZjRwqO7N From 7f14f8084e5d1977d8185e07877649c8085a3bcc Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sun, 21 Aug 2022 14:51:27 +0530 Subject: [PATCH 05/11] shows avatar in circle and adds spinner --- src/task/index.html | 2 ++ src/task/script.js | 12 +++++++++--- src/task/style.css | 20 +++++++++++++++++--- 3 files changed, 28 insertions(+), 6 deletions(-) diff --git a/src/task/index.html b/src/task/index.html index c9bce987..4d557d31 100644 --- a/src/task/index.html +++ b/src/task/index.html @@ -118,6 +118,8 @@ class="input" autocomplete="off" /> +
+
diff --git a/src/task/script.js b/src/task/script.js index 33d2b102..9721b8f9 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -1,4 +1,6 @@ const API_BASE_URL = window.API_BASE_URL; +const assigneeAvatar = document.getElementById('assigneeAvatar'); +const assigneeAvatarLoader = document.getElementById('assigneeAvatarLoader'); const getRemainingDays = (selectedDateInString) => { const selectedDate = new Date(selectedDateInString); @@ -356,7 +358,8 @@ async function fetchMembers(searchInput) { const data = await response.json(); clearSuggestionList(); wasAssigneeSet = false; - assigneeEl.style.backgroundImage = 'none'; + assigneeAvatar.style.backgroundImage = 'none'; + assigneeAvatarLoader.style.display = 'none'; if (searchInput.trim() !== '') { const matches = data.members.filter((task) => { if (task.username) { @@ -390,8 +393,9 @@ function clearUserNotFound() { function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { + assigneeAvatarLoader.style.display = 'initial'; matches.map(({ username, picture = {} }) => { - const defaultImagePath = '../images/Avatar.png'; + const defaultImagePath = '../images/avatar.png'; const imageUrl = picture.hasOwnProperty('url') && picture.url ? picture.url @@ -412,7 +416,9 @@ function createSuggestionsList(matches) { function setAssignee(assignee, imgUrl) { assigneeEl.value = assignee; wasAssigneeSet = true; - assigneeEl.style.backgroundImage = `url(${imgUrl})`; + assigneeAvatar.style.display = 'initial'; + assigneeAvatarLoader.style.display = 'none'; + assigneeAvatar.style.backgroundImage = `url(${imgUrl})`; stateHandle(); clearSuggestionList(); } diff --git a/src/task/style.css b/src/task/style.css index 7e29c5fa..6cdf6ae3 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -259,9 +259,23 @@ footer { font-size: 0.75rem; } -#assignee { - background-repeat: no-repeat; +#assigneeAvatar { background-position: right; background-size: 42px; - padding-right: 17px; + position: absolute; + top: 33%; + width: 40px; + height: 40px; + right: 3%; + border-radius: 50%; + display: none; +} + +#assigneeAvatarLoader { + position: absolute; + top: 41%; + right: 3%; + display: none; + border: 3px solid #f3f3f3; + border-top: 3px solid #1d58d8; } From 1ee07eb0936f3d4c28aed04102381f6fb8eb99b8 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sun, 21 Aug 2022 14:54:05 +0530 Subject: [PATCH 06/11] adds default avatar --- src/images/avatar.png | Bin 0 -> 6555 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/images/avatar.png diff --git a/src/images/avatar.png b/src/images/avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..d2e8dbdc6cfc5fbf2bbf82e0cc0d8fbea1dc18b2 GIT binary patch literal 6555 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 literal 0 HcmV?d00001 From 9c824c034daf91667f0488e2444bac0f80850a72 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Tue, 23 Aug 2022 17:31:28 +0530 Subject: [PATCH 07/11] removes redundant border style property --- src/task/style.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/task/style.css b/src/task/style.css index 6cdf6ae3..ff166788 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -277,5 +277,5 @@ footer { right: 3%; display: none; border: 3px solid #f3f3f3; - border-top: 3px solid #1d58d8; + border-top-color: #1d58d8; } From 2282013733d6b118aebdb48e6626ec2b5eb166ba Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Tue, 23 Aug 2022 18:18:51 +0530 Subject: [PATCH 08/11] adds background shorthand property --- src/task/style.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/task/style.css b/src/task/style.css index ff166788..d4dbf363 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -260,8 +260,7 @@ footer { } #assigneeAvatar { - background-position: right; - background-size: 42px; + background: right / 42px; position: absolute; top: 33%; width: 40px; From 877d22cd3ce59a51d1ab8f5c18ab8b37a43924f8 Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Sat, 27 Aug 2022 21:22:26 +0530 Subject: [PATCH 09/11] refactors code --- src/task/index.html | 7 +++++-- src/task/script.js | 18 +++++++++++++----- src/task/style.css | 4 +++- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/task/index.html b/src/task/index.html index 4d557d31..6fd9abdd 100644 --- a/src/task/index.html +++ b/src/task/index.html @@ -118,8 +118,11 @@ class="input" autocomplete="off" /> -
-
+
+
diff --git a/src/task/script.js b/src/task/script.js index 9721b8f9..7fb07e0e 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -358,8 +358,8 @@ async function fetchMembers(searchInput) { const data = await response.json(); clearSuggestionList(); wasAssigneeSet = false; - assigneeAvatar.style.backgroundImage = 'none'; - assigneeAvatarLoader.style.display = 'none'; + removeDisplay(assigneeAvatar); + removeDisplay(assigneeAvatarLoader); if (searchInput.trim() !== '') { const matches = data.members.filter((task) => { if (task.username) { @@ -393,7 +393,7 @@ function clearUserNotFound() { function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { - assigneeAvatarLoader.style.display = 'initial'; + addDisplay(assigneeAvatarLoader); matches.map(({ username, picture = {} }) => { const defaultImagePath = '../images/avatar.png'; const imageUrl = @@ -416,8 +416,8 @@ function createSuggestionsList(matches) { function setAssignee(assignee, imgUrl) { assigneeEl.value = assignee; wasAssigneeSet = true; - assigneeAvatar.style.display = 'initial'; - assigneeAvatarLoader.style.display = 'none'; + addDisplay(assigneeAvatar); + removeDisplay(assigneeAvatarLoader); assigneeAvatar.style.backgroundImage = `url(${imgUrl})`; stateHandle(); clearSuggestionList(); @@ -434,3 +434,11 @@ assigneeEl.addEventListener( 'input', debounce((event) => fetchMembers(event.target.value), 500), ); + +function addDisplay(element) { + element.classList.remove('element-display-remove'); +} + +function removeDisplay(element) { + element.classList.add('element-display-remove'); +} diff --git a/src/task/style.css b/src/task/style.css index d4dbf363..170bed2f 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -267,6 +267,9 @@ footer { height: 40px; right: 3%; border-radius: 50%; +} + +.element-display-remove { display: none; } @@ -274,7 +277,6 @@ footer { position: absolute; top: 41%; right: 3%; - display: none; border: 3px solid #f3f3f3; border-top-color: #1d58d8; } From 40a1d33b5b1a55c7764445aface5ce22795257ad Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Mon, 29 Aug 2022 13:52:58 +0530 Subject: [PATCH 10/11] adds default image path to constants --- src/task/constants.js | 1 + src/task/index.html | 1 + src/task/script.js | 3 +-- 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 src/task/constants.js diff --git a/src/task/constants.js b/src/task/constants.js new file mode 100644 index 00000000..521d0825 --- /dev/null +++ b/src/task/constants.js @@ -0,0 +1 @@ +const DEFAULT_ASSIGNEE_IMAGE_PATH = '../images/avatar.png'; diff --git a/src/task/index.html b/src/task/index.html index 6fd9abdd..9a675d2a 100644 --- a/src/task/index.html +++ b/src/task/index.html @@ -246,6 +246,7 @@
+ diff --git a/src/task/script.js b/src/task/script.js index 7fb07e0e..9da7a7a1 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -395,11 +395,10 @@ function createSuggestionsList(matches) { if (matches.length) { addDisplay(assigneeAvatarLoader); matches.map(({ username, picture = {} }) => { - const defaultImagePath = '../images/avatar.png'; const imageUrl = picture.hasOwnProperty('url') && picture.url ? picture.url - : defaultImagePath; + : DEFAULT_ASSIGNEE_IMAGE_PATH; const listItem = document.createElement('p'); listItem.classList.add('list-item'); listItem.style.cursor = 'pointer'; From 9c978ba5600a5e796efb0504de55b84ddf44f04f Mon Sep 17 00:00:00 2001 From: Poonam Mohata Date: Tue, 6 Sep 2022 17:02:11 +0530 Subject: [PATCH 11/11] refactors code --- src/task/constants.js | 2 ++ src/task/script.js | 21 +++++++++------------ src/task/style.css | 1 + 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/task/constants.js b/src/task/constants.js index 521d0825..7761100f 100644 --- a/src/task/constants.js +++ b/src/task/constants.js @@ -1 +1,3 @@ const DEFAULT_ASSIGNEE_IMAGE_PATH = '../images/avatar.png'; +const API_BASE_URL = window.API_BASE_URL; +const DISPLAY_REMOVE_CLASS = 'element-display-remove'; diff --git a/src/task/script.js b/src/task/script.js index 9da7a7a1..6baca530 100644 --- a/src/task/script.js +++ b/src/task/script.js @@ -1,7 +1,5 @@ -const API_BASE_URL = window.API_BASE_URL; const assigneeAvatar = document.getElementById('assigneeAvatar'); const assigneeAvatarLoader = document.getElementById('assigneeAvatarLoader'); - const getRemainingDays = (selectedDateInString) => { const selectedDate = new Date(selectedDateInString); const currentDate = new Date(getFutureDateString(0)); @@ -358,8 +356,8 @@ async function fetchMembers(searchInput) { const data = await response.json(); clearSuggestionList(); wasAssigneeSet = false; - removeDisplay(assigneeAvatar); - removeDisplay(assigneeAvatarLoader); + removeClass(assigneeAvatar, DISPLAY_REMOVE_CLASS); + removeClass(assigneeAvatarLoader, DISPLAY_REMOVE_CLASS); if (searchInput.trim() !== '') { const matches = data.members.filter((task) => { if (task.username) { @@ -393,7 +391,7 @@ function clearUserNotFound() { function createSuggestionsList(matches) { const listItems = document.getElementById('list-items'); if (matches.length) { - addDisplay(assigneeAvatarLoader); + addClass(assigneeAvatarLoader, DISPLAY_REMOVE_CLASS); matches.map(({ username, picture = {} }) => { const imageUrl = picture.hasOwnProperty('url') && picture.url @@ -401,7 +399,6 @@ function createSuggestionsList(matches) { : DEFAULT_ASSIGNEE_IMAGE_PATH; const listItem = document.createElement('p'); listItem.classList.add('list-item'); - listItem.style.cursor = 'pointer'; listItem.setAttribute( 'onclick', `setAssignee('${username}', '${imageUrl}')`, @@ -415,8 +412,8 @@ function createSuggestionsList(matches) { function setAssignee(assignee, imgUrl) { assigneeEl.value = assignee; wasAssigneeSet = true; - addDisplay(assigneeAvatar); - removeDisplay(assigneeAvatarLoader); + addClass(assigneeAvatar, DISPLAY_REMOVE_CLASS); + removeClass(assigneeAvatarLoader, DISPLAY_REMOVE_CLASS); assigneeAvatar.style.backgroundImage = `url(${imgUrl})`; stateHandle(); clearSuggestionList(); @@ -434,10 +431,10 @@ assigneeEl.addEventListener( debounce((event) => fetchMembers(event.target.value), 500), ); -function addDisplay(element) { - element.classList.remove('element-display-remove'); +function addClass(element, className) { + element.classList.remove(className); } -function removeDisplay(element) { - element.classList.add('element-display-remove'); +function removeClass(element, className) { + element.classList.add(className); } diff --git a/src/task/style.css b/src/task/style.css index 170bed2f..25164f62 100644 --- a/src/task/style.css +++ b/src/task/style.css @@ -243,6 +243,7 @@ footer { font-size: 1rem; border-bottom: 1px solid #d4d4d4; margin: 0; + cursor: pointer; } #list-items:nth-last-child() {