Skip to content

Commit 7119297

Browse files
committed
UI cleanup and better tagging of terms that were searched
1 parent e9ff9b0 commit 7119297

File tree

8 files changed

+40
-70
lines changed

8 files changed

+40
-70
lines changed

src/apps/talent-search/src/assets/check-mark.svg

Lines changed: 0 additions & 24 deletions
This file was deleted.

src/apps/talent-search/src/assets/checkpoint-small.svg

Lines changed: 0 additions & 15 deletions
This file was deleted.
Lines changed: 3 additions & 0 deletions
Loading

src/apps/talent-search/src/lib/models/MemberEmsiSkill.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export default interface MemberEmsiSkill {
44
emsiId:string
55
name:string;
66
category:string;
7+
isSearched: boolean;
78
}
89

910

src/apps/talent-search/src/routes/talent-search/components/skill-search-results/SkillSearchResults.tsx

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ import codes from "country-calling-code";
1111

1212
export const memberColumns: ReadonlyArray<TableColumn<Member>> = [
1313
{
14-
label: 'Handle',
14+
label: 'Wins',
1515
propertyName: 'numberOfChallengesWon',
16-
type: 'element',
16+
type: 'numberElement',
1717
renderer: MemberHandleRenderer,
18+
defaultSortDirection: 'desc'
1819
},
1920
{
2021
label: 'Skills',
21-
propertyName: 'emsiSkills',
2222
type: 'element',
2323
renderer: MemberSkillsRenderer,
2424
}
@@ -67,14 +67,28 @@ export default class SkillSearchResult extends Component<SkillSearchResultsProps
6767
if(response.length==PER_PAGE){
6868
this.state.hasMore = true
6969
}
70-
70+
let filter = this.props.skillsFilter;
7171
response.forEach(function (value){
7272
const code = codes.find((i) => i.isoCode3 === value.competitionCountryCode);
7373

7474
if (code) {
7575
value.country = code.country;
7676
}
77+
78+
//This isn't great TODO: make this cleaner
79+
value.emsiSkills.forEach(function (emsiSkill){
80+
emsiSkill.isSearched = false;
81+
for(let i=0; i<filter.length; i++){
82+
if(emsiSkill.emsiId == filter[i].emsiId){
83+
emsiSkill.isSearched = true;
84+
}
85+
}
86+
})
87+
//Move the values that were searched to the front of the skills list for display in the UI
88+
value.emsiSkills.sort((a, b) => a.isSearched ? -1 : 0)
7789
})
90+
91+
7892
}
7993
if(this.state.page==1){
8094
this.state.searchResults = response;

src/apps/talent-search/src/routes/talent-search/components/skill-search-results/renderers/MemberHandleRenderer.module.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
display: grid;
66
grid-template-rows: repeat(auto-fill, 1fr);
77
grid-template-columns: 72px 250px;
8+
width:100px;
89
gap: 8px;
910
}
1011

Lines changed: 7 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
@import "@libs/ui/styles/includes";
22
@import "@libs/ui/styles/variables";
33

4-
.self-reported{
5-
flex: 0 0 auto;
4+
.skill{
65
font-family: $font-barlow;
76
font-weight: $font-weight-medium;
87
background-color: rgb(34, 107, 116);
@@ -14,25 +13,15 @@
1413
font-size: 14px;
1514
line-height: 16px;
1615
cursor: pointer;
17-
position: inherit;
16+
position: relative;
17+
1818
}
19-
20-
.challenge-win{
21-
flex: 0 0 auto;
22-
font-family: $font-barlow;
23-
font-weight: $font-weight-medium;
24-
background-color: rgb(106, 52, 155);
25-
color: #fff;
26-
margin-top: 4px;
27-
margin-right: 4px;
28-
border-radius: 5px;
19+
.challengeWin{
2920
padding: 4px 6px 4px 26px;
30-
font-size: 14px;
31-
line-height: 18px;
32-
cursor: pointer;
33-
position: inherit;
3421
}
35-
22+
.isSearched{
23+
background-color: rgb(106, 52, 155);
24+
}
3625

3726
.before{
3827
position: absolute;
@@ -42,7 +31,4 @@
4231
margin:0px;
4332
width: 16px;
4433
height: 16px;
45-
border-radius:8px;
46-
border: 1px #fff solid;
47-
4834
}

src/apps/talent-search/src/routes/talent-search/components/skill-search-results/renderers/SkillTag.tsx

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,32 @@
22
import { Component } from 'react'
33
import MemberEmsiSkill from '@talentSearch/lib/models/MemberEmsiSkill'
44
import styles from './SkillTag.module.scss'
5-
import { ReactComponent as IconCheck } from '@talentSearch/assets/check-mark.svg';
5+
import { ReactComponent as IconCheck } from '@talentSearch/assets/verified-icon-white.svg';
66

77
type SkillTagProps = {
8-
skill:MemberEmsiSkill
8+
skill: MemberEmsiSkill
99
}
1010

1111
export default class SkillTag extends Component<SkillTagProps>{
1212

1313
render() {
14-
let style = "self-reported"
14+
let style = styles["skill"]
15+
16+
if(this.props.skill.isSearched){
17+
style = style + " " + styles["isSearched"]
18+
}
1519
if(this.props.skill.skillSources.includes("ChallengeWin")){
16-
style = "challenge-win"
20+
style = style + " " + styles["challengeWin"]
1721
}
1822
return(
1923
<div
2024
key={this.props.skill.emsiId}
2125
data-id={this.props.skill.emsiId}
2226
tabIndex={0}
23-
className={styles[style]}
27+
className={style}
2428
>
2529
{this.props.skill.skillSources.includes("ChallengeWin") ?
26-
<i><IconCheck className={styles["before"]}/></i> : ''}
30+
<IconCheck className={styles["before"]}/>: ''}
2731
{this.props.skill.name}
2832
</div>
2933
)

0 commit comments

Comments
 (0)