This repository was archived by the owner on Mar 13, 2025. It is now read-only.
File tree 4 files changed +12
-6
lines changed
4 files changed +12
-6
lines changed Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ const Listing = ({
24
24
startDateEnd,
25
25
updateFilter,
26
26
bucket,
27
+ tags,
27
28
getChallenges,
28
29
} ) => {
29
30
const sortByOptions = utils . createDropdownOptions (
@@ -106,7 +107,7 @@ const Listing = ({
106
107
< ChallengeItem
107
108
challenge = { challenge }
108
109
onClickTag = { ( tag ) => {
109
- const filterChange = { search : tag } ;
110
+ const filterChange = { tags : [ ... tags , tag ] } ;
110
111
updateFilter ( filterChange ) ;
111
112
getChallenges ( filterChange ) ;
112
113
} }
Original file line number Diff line number Diff line change @@ -17,6 +17,7 @@ const Challenges = ({
17
17
getChallenges,
18
18
updateFilter,
19
19
bucket,
20
+ tags,
20
21
} ) => {
21
22
const [ initialized , setInitialized ] = useState ( false ) ;
22
23
@@ -40,6 +41,7 @@ const Challenges = ({
40
41
startDateEnd = { startDateEnd }
41
42
updateFilter = { updateFilter }
42
43
bucket = { bucket }
44
+ tags = { tags }
43
45
getChallenges = { getChallenges }
44
46
/>
45
47
) }
@@ -58,6 +60,7 @@ Challenges.propTypes = {
58
60
getChallenges : PT . func ,
59
61
updateFilter : PT . func ,
60
62
bucket : PT . string ,
63
+ tags : PT . arrayOf ( PT . string ) ,
61
64
} ;
62
65
63
66
const mapStateToProps = ( state ) => ( {
@@ -70,6 +73,7 @@ const mapStateToProps = (state) => ({
70
73
startDateEnd : state . filter . challenge . startDateEnd ,
71
74
challenges : state . challenges . challengesFiltered ,
72
75
bucket : state . filter . challenge . bucket ,
76
+ tags : state . filter . challenge . tags ,
73
77
} ) ;
74
78
75
79
const mapDispatchToProps = {
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ const ChallengeFilter = ({
27
27
saveFilter,
28
28
clearFilter,
29
29
} ) => {
30
- const tagOptions = utils . createDropdownTermOptions ( challengeTags ) ;
30
+ const tagOptions = utils . createDropdownTermOptions ( challengeTags , tags ) ;
31
31
const bucketOptions = utils . createRadioOptions ( challengeBuckets , bucket ) ;
32
32
33
33
const [ filter , setFilter ] = useState (
@@ -42,7 +42,6 @@ const ChallengeFilter = ({
42
42
} )
43
43
) ;
44
44
45
- utils . setSelectedDropdownTermOptions ( tagOptions , filter . tags ) ;
46
45
47
46
return (
48
47
< div styleName = "filter" >
@@ -110,10 +109,12 @@ const ChallengeFilter = ({
110
109
const selectedTagOptions = utils . getSelectedDropdownTermsOptions (
111
110
newTagOptions
112
111
) ;
113
- setFilter ( {
112
+ const filterChange = {
114
113
...filter ,
115
114
tags : selectedTagOptions . map ( ( tagOption ) => tagOption . label ) ,
116
- } ) ;
115
+ }
116
+ setFilter ( filterChange ) ;
117
+ saveFilter ( filterChange ) ;
117
118
} }
118
119
/>
119
120
</ div >
Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ export function setSelectedDropdownOptions(options, selectedValues) {
47
47
export function createDropdownTermOptions ( values , selectedValues ) {
48
48
return values . map ( ( value ) => ( {
49
49
label : `${ value } ` ,
50
- selected : ! ! selectedValues && selectedValues . includes [ value ] ,
50
+ selected : ! ! selectedValues && selectedValues . includes ( value ) ,
51
51
} ) ) ;
52
52
}
53
53
You can’t perform that action at this time.
0 commit comments