This repository was archived by the owner on Sep 11, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +10
-3
lines changed
src/components/views/rooms Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Original file line number Diff line number Diff line change @@ -32,6 +32,10 @@ const INITIAL_LOAD_NUM_MEMBERS = 30;
3232const INITIAL_LOAD_NUM_INVITED = 5 ;
3333const SHOW_MORE_INCREMENT = 100 ;
3434
35+ // Regex applied to filter our punctuation in member names before applying sort, to fuzzy it a little
36+ // matches all ASCII punctuation: !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
37+ const SORT_REGEX = / [ \x21 - \x2F \x3A - \x40 \x5B - \x60 \x7B - \x7E ] + / g;
38+
3539module . exports = createReactClass ( {
3640 displayName : 'MemberList' ,
3741
@@ -336,10 +340,13 @@ module.exports = createReactClass({
336340 }
337341
338342 // Fourth by name (alphabetical)
339- const nameA = memberA . name [ 0 ] === '@' ? memberA . name . substr ( 1 ) : memberA . name ;
340- const nameB = memberB . name [ 0 ] === '@' ? memberB . name . substr ( 1 ) : memberB . name ;
343+ const nameA = ( memberA . name [ 0 ] === '@' ? memberA . name . substr ( 1 ) : memberA . name ) . replace ( SORT_REGEX , "" ) ;
344+ const nameB = ( memberB . name [ 0 ] === '@' ? memberB . name . substr ( 1 ) : memberB . name ) . replace ( SORT_REGEX , "" ) ;
341345 // console.log(`Comparing userA_name=${nameA} against userB_name=${nameB} - returning`);
342- return nameA . localeCompare ( nameB ) ;
346+ return nameA . localeCompare ( nameB , {
347+ ignorePunctuation : true ,
348+ sensitivity : "base" ,
349+ } ) ;
343350 } ,
344351
345352 onSearchQueryChanged : function ( searchQuery ) {
You can’t perform that action at this time.
0 commit comments