@@ -160,6 +160,7 @@ const Table = () => {
160160 { 
161161 Header : 'Questions' , 
162162 accessor : 'questions' , 
163+  disableSortBy : true , 
163164 Cell : cellInfo  =>  { 
164165 return  ( 
165166 < NavLink 
@@ -189,6 +190,7 @@ const Table = () => {
189190 { 
190191 Header : 'Solutions' , 
191192 accessor : 'solutions' , 
193+  disableSortBy : true , 
192194 Cell : cellInfo  =>  { 
193195 const  url  =  cellInfo . row . original . premium 
194196 ? `${ cellInfo . row . original . url }  /` 
@@ -234,6 +236,7 @@ const Table = () => {
234236 ) ; 
235237 } , 
236238 accessor : 'pattern' , 
239+  disableSortBy : true , 
237240 Cell : cellInfo  =>  { 
238241 const  patterns  =  `${ cellInfo . row . original . pattern }  ` 
239242 . split ( ',' ) 
@@ -261,6 +264,7 @@ const Table = () => {
261264 { 
262265 Header : 'Difficulty' , 
263266 accessor : 'difficulty' , 
267+  disableSortBy : true , 
264268 Cell : cellInfo  =>  ( 
265269 < Row > 
266270 < Badge 
@@ -276,15 +280,27 @@ const Table = () => {
276280 { 
277281 Header : ( )  =>  { 
278282 return  ( 
279-  < div  style = { {  whiteSpace : 'nowrap'  } } > 
280-  Companies{ ' ' } 
281-  < span  data-tip = "Companies retrieved from Leetcode Premium (May 2021)" > 
282-  < FaQuestionCircle  /> 
283-  </ span > 
284-  </ div > 
283+  < > 
284+  < div 
285+  style = { {  whiteSpace : 'nowrap' ,  display : 'inline-block'  } } 
286+  > 
287+  Companies{ ' ' } 
288+  < span  data-tip = "Companies retrieved from Leetcode Premium (May 2021)" > 
289+  < FaQuestionCircle  /> 
290+  </ span > 
291+  </ div > 
292+  </ > 
285293 ) ; 
286294 } , 
287295 accessor : 'companies' , 
296+  sortType : ( a ,  b )  =>  { 
297+  if  ( a . original . companies . length  ===  b . original . companies . length )  { 
298+  return  0 ; 
299+  } 
300+  return  a . original . companies . length  >  b . original . companies . length 
301+  ? 1 
302+  : - 1 ; 
303+  } , 
288304 Cell : cellInfo  =>  { 
289305 const  companies  =  cellInfo . row . original . companies . map ( company  =>  { 
290306 return  ( 
@@ -333,7 +349,15 @@ const Table = () => {
333349 < tr  { ...headerGroup . getHeaderGroupProps ( ) } > 
334350 { headerGroup . headers . map ( column  =>  ( 
335351 < th  { ...column . getHeaderProps ( ) } > 
336-  { column . render ( 'Header' ) } 
352+  < div  { ...column . getSortByToggleProps ( {  title : null  } ) } > 
353+  { column . render ( 'Header' ) } 
354+  { /* eslint-disable-next-line no-nested-ternary */ } 
355+  { column . isSorted 
356+  ? column . isSortedDesc 
357+  ? ' 🔽' 
358+  : ' 🔼' 
359+  : '' } 
360+  </ div > 
337361 < div > { column . canFilter  ? column . render ( 'Filter' )  : null } </ div > 
338362 </ th > 
339363 ) ) } 
0 commit comments