Update BetterFriendList.plugin.js
This commit is contained in:
parent
f044a51493
commit
785759acc5
|
@ -14,8 +14,13 @@ module.exports = (_ => {
|
|||
"info": {
|
||||
"name": "BetterFriendList",
|
||||
"author": "DevilBro",
|
||||
"version": "1.3.0",
|
||||
"version": "1.3.1",
|
||||
"description": "Add extra controls to the friends page, like sort by name/status, search and all/request/blocked amount"
|
||||
},
|
||||
"changeLog": {
|
||||
"fixed": {
|
||||
"Crash": "No longer crashes when pressing Ctrl in the friend list"
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -210,65 +215,66 @@ module.exports = (_ => {
|
|||
return newSection;
|
||||
});
|
||||
}
|
||||
let getSectionTitle = e.instance.props.getSectionTitle;
|
||||
e.instance.props.getSectionTitle = (...args) => {
|
||||
let users = e.instance.props.statusSections.flat(10);
|
||||
return BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.Flex, {
|
||||
align: BDFDB.LibraryComponents.Flex.Align.CENTER,
|
||||
children: [
|
||||
BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.disCN._betterfriendlisttitle,
|
||||
children: getSectionTitle(...args).replace(users.length, users.filter(u => u && u.key != placeHolderId).length)
|
||||
}),
|
||||
settings.addSortOptions && [
|
||||
{key: "usernameLower", label: BDFDB.LanguageUtils.LanguageStrings.FRIENDS_COLUMN_NAME},
|
||||
{key: "statusIndex", label: BDFDB.LanguageUtils.LanguageStrings.FRIENDS_COLUMN_STATUS}
|
||||
].filter(n => n).map(data => BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.DOMUtils.formatClassName(BDFDB.disCN.tableheadercellwrapper, BDFDB.disCN.tableheadercell, BDFDB.disCN._betterfriendlistnamecell, sortKey == data.key && BDFDB.disCN.tableheadercellsorted, BDFDB.disCN.tableheadercellclickable),
|
||||
children: BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.disCN.tableheadercellcontent,
|
||||
children: [
|
||||
data.label,
|
||||
sortKey == data.key && BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SvgIcon, {
|
||||
className: BDFDB.disCN.tableheadersorticon,
|
||||
name: BDFDB.LibraryComponents.SvgIcon.Names[sortReversed ? "ARROW_UP" : "ARROW_DOWN"]
|
||||
})
|
||||
].filter(n => n)
|
||||
if (!BDFDB.PatchUtils.isPatched(this, e.instance.props, "getSectionTitle")) BDFDB.PatchUtils.patch(this, e.instance.props, "getSectionTitle", {after: e2 => {
|
||||
if (typeof e2.returnValue == "string") {
|
||||
let users = e.instance.props.statusSections.flat(10);
|
||||
return BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.Flex, {
|
||||
align: BDFDB.LibraryComponents.Flex.Align.CENTER,
|
||||
children: [
|
||||
BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.disCN._betterfriendlisttitle,
|
||||
children: e2.returnValue.replace(users.length, users.filter(u => u && u.key != placeHolderId).length)
|
||||
}),
|
||||
onClick: event => {
|
||||
if (sortKey == data.key) {
|
||||
if (!sortReversed) sortReversed = true;
|
||||
settings.addSortOptions && [
|
||||
{key: "usernameLower", label: BDFDB.LanguageUtils.LanguageStrings.FRIENDS_COLUMN_NAME},
|
||||
{key: "statusIndex", label: BDFDB.LanguageUtils.LanguageStrings.FRIENDS_COLUMN_STATUS}
|
||||
].filter(n => n).map(data => BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.DOMUtils.formatClassName(BDFDB.disCN.tableheadercellwrapper, BDFDB.disCN.tableheadercell, BDFDB.disCN._betterfriendlistnamecell, sortKey == data.key && BDFDB.disCN.tableheadercellsorted, BDFDB.disCN.tableheadercellclickable),
|
||||
children: BDFDB.ReactUtils.createElement("div", {
|
||||
className: BDFDB.disCN.tableheadercellcontent,
|
||||
children: [
|
||||
data.label,
|
||||
sortKey == data.key && BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SvgIcon, {
|
||||
className: BDFDB.disCN.tableheadersorticon,
|
||||
name: BDFDB.LibraryComponents.SvgIcon.Names[sortReversed ? "ARROW_UP" : "ARROW_DOWN"]
|
||||
})
|
||||
].filter(n => n)
|
||||
}),
|
||||
onClick: event => {
|
||||
if (sortKey == data.key) {
|
||||
if (!sortReversed) sortReversed = true;
|
||||
else {
|
||||
sortKey = null;
|
||||
sortReversed = false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
sortKey = null;
|
||||
sortKey = data.key;
|
||||
sortReversed = false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
sortKey = data.key;
|
||||
sortReversed = false;
|
||||
}
|
||||
this.rerenderList();
|
||||
}
|
||||
})),
|
||||
settings.addSearchbar && BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.Flex.Child, {
|
||||
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SearchBar, {
|
||||
query: searchQuery,
|
||||
onChange: value => {
|
||||
BDFDB.TimeUtils.clear(searchTimeout);
|
||||
searchTimeout = BDFDB.TimeUtils.timeout(_ => {
|
||||
searchQuery = value;
|
||||
this.rerenderList();
|
||||
}, 1000);
|
||||
},
|
||||
onClear: _ => {
|
||||
searchQuery = "";
|
||||
this.rerenderList();
|
||||
}
|
||||
})),
|
||||
settings.addSearchbar && BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.Flex.Child, {
|
||||
children: BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SearchBar, {
|
||||
query: searchQuery,
|
||||
onChange: value => {
|
||||
BDFDB.TimeUtils.clear(searchTimeout);
|
||||
searchTimeout = BDFDB.TimeUtils.timeout(_ => {
|
||||
searchQuery = value;
|
||||
this.rerenderList();
|
||||
}, 1000);
|
||||
},
|
||||
onClear: _ => {
|
||||
searchQuery = "";
|
||||
this.rerenderList();
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
].flat(10).filter(n => n)
|
||||
});
|
||||
};
|
||||
].flat(10).filter(n => n)
|
||||
});
|
||||
}
|
||||
}}, {force: true, noCache: true});
|
||||
}
|
||||
|
||||
processPeopleListSectionedNonLazy (e) {
|
||||
|
|
Loading…
Reference in New Issue