@@ -15,8 +15,9 @@ async function main() {
15
15
} ) ;
16
16
17
17
document . getElementById ( '#' ) ?. addEventListener ( 'click' , ( ) => sortBy ( '#' ) ) ;
18
- document . getElementById ( 'Title' ) ?. addEventListener ( 'click' , ( ) => sortBy ( 'Title' ) ) ;
19
18
document . getElementById ( 'Difficulty' ) ?. addEventListener ( 'click' , ( ) => sortBy ( 'Difficulty' ) ) ;
19
+ document . getElementById ( 'Title' ) ?. addEventListener ( 'click' , ( ) => sortBy ( 'Title' ) ) ;
20
+ document . getElementById ( 'Acceptance' ) ?. addEventListener ( 'click' , ( ) => sortBy ( 'Acceptance' ) ) ;
20
21
document . getElementById ( 'Frequency' ) ?. addEventListener ( 'click' , ( ) => sortBy ( 'Frequency' ) ) ;
21
22
document . getElementById ( 'dateSelect' ) ?. addEventListener ( 'change' , ( event ) => {
22
23
const selectedFrequency = ( event . target as HTMLSelectElement ) . value ;
@@ -270,7 +271,9 @@ function rebuildTable() {
270
271
// Keep track of the sorting order for each column
271
272
const sortOrders = {
272
273
'#' : false ,
274
+ 'Difficulty' : false ,
273
275
'Title' : false ,
276
+ 'Acceptance' : false ,
274
277
'Frequency' : false ,
275
278
} ;
276
279
@@ -289,9 +292,15 @@ function sortBy(column: string) {
289
292
case '#' :
290
293
solutions . sort ( ( a , b ) => ( sortOrders [ column ] ? a . id - b . id : b . id - a . id ) ) ;
291
294
break ;
295
+ case 'Difficulty' :
296
+ solutions . sort ( ( a , b ) => ( sortOrders [ column ] ? a . difficulty - b . difficulty : b . difficulty - a . difficulty ) ) ;
297
+ break ;
292
298
case 'Title' :
293
299
solutions . sort ( ( a , b ) => ( sortOrders [ column ] ? a . title . localeCompare ( b . title ) : b . title . localeCompare ( a . title ) ) ) ;
294
300
break ;
301
+ case 'Acceptance' :
302
+ solutions . sort ( ( a , b ) => ( sortOrders [ column ] ? b . acceptance - a . acceptance : a . acceptance - b . acceptance ) ) ;
303
+ break ;
295
304
case 'Frequency' :
296
305
solutions . sort ( ( a , b ) => ( sortOrders [ column ] ? b . frequency - a . frequency : a . frequency - b . frequency ) ) ;
297
306
break ;
0 commit comments