@@ -68,29 +68,34 @@ class FilterGroup extends Component {
68
68
return visible ? "visible" : "" ;
69
69
}
70
70
71
- getSortedValues ( values ) {
72
- return Object . entries ( values ) . sort ( ( a , b ) => a [ 0 ] . localeCompare ( b [ 0 ] ) ) ;
71
+ getSortedValues ( filterKey , values ) {
72
+ const defaultFilterKey = `${ filterKey . charAt ( 1 ) . toLowerCase ( ) } ${ filterKey . slice ( 2 ) } `
73
+ const defaultGroupFilter = Filter . defaultFilters [ defaultFilterKey ]
74
+
75
+ return Object . entries ( values ) . sort ( ( [ a ] , [ b ] ) =>
76
+ a === defaultGroupFilter || b === defaultGroupFilter ? 1 : a . localeCompare ( b )
77
+ )
73
78
}
74
79
75
- getFilterGroup ( title , values ) {
80
+ getFilterGroup ( filterKey , values ) {
76
81
return `
77
82
<div class="filterGroup">
78
83
<div class="groupTitle">
79
- <span>${ title . substring ( 1 ) } </span>
84
+ <span>${ filterKey . substring ( 1 ) } </span>
80
85
<div class="groupButtonsContainer">
81
- <button class="selectAll" data-key="${ title } ">Select All</button>
82
- <button class="deselectAll" data-key="${ title } ">Deselect All</button>
86
+ <button class="selectAll" data-key="${ filterKey } ">Select All</button>
87
+ <button class="deselectAll" data-key="${ filterKey } ">Deselect All</button>
83
88
</div>
84
89
</div>
85
90
<div class="filterList">
86
- ${ this . getSortedValues ( values )
91
+ ${ this . getSortedValues ( filterKey , values )
87
92
. map (
88
93
( [ key , data ] ) =>
89
94
`<button class="filterButtonItem ${ this . isActive (
90
95
data . selected
91
96
) } ${ this . isVisible (
92
97
data . visible
93
- ) } " data-key="${ title } " data-value="${ key } ">${ key } </button>`
98
+ ) } " data-key="${ filterKey } " data-value="${ key } ">${ key } </button>`
94
99
)
95
100
. join ( " " ) }
96
101
</div>
@@ -102,7 +107,7 @@ class FilterGroup extends Component {
102
107
attachDOM (
103
108
this . filterLowerContainerRef ,
104
109
Object . entries ( filter . filters )
105
- . filter ( ( [ key , values ] ) => Object . values ( values ) . some ( ( v ) => v . visible ) )
110
+ . filter ( ( [ _key , values ] ) => Object . values ( values ) . some ( ( v ) => v . visible ) )
106
111
. map ( ( [ key , values ] ) => this . getFilterGroup ( key , values ) )
107
112
) ;
108
113
0 commit comments