mirror of
https://github.com/Equicord/Equicord.git
synced 2025-06-14 09:03:03 -04:00
Fixes For BetterFolders & ReviewDB
Co-Authored-By: sadan4 <117494111+sadan4@users.noreply.github.com>
This commit is contained in:
parent
db08d79314
commit
720edbdc3b
2 changed files with 23 additions and 24 deletions
|
@ -106,14 +106,10 @@ export const settings = definePluginSettings({
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const cssMade = false;
|
|
||||||
|
|
||||||
const cssElementId = "VC-BetterFolders";
|
|
||||||
|
|
||||||
export default definePlugin({
|
export default definePlugin({
|
||||||
name: "BetterFolders",
|
name: "BetterFolders",
|
||||||
description: "Shows server folders on dedicated sidebar and adds folder related improvements",
|
description: "Shows server folders on dedicated sidebar and adds folder related improvements",
|
||||||
authors: [Devs.juby, Devs.AutumnVN, Devs.Nuckyz, Devs.sadan],
|
authors: [Devs.juby, Devs.AutumnVN, Devs.Nuckyz],
|
||||||
|
|
||||||
settings,
|
settings,
|
||||||
|
|
||||||
|
@ -123,26 +119,29 @@ export default definePlugin({
|
||||||
predicate: () => settings.store.sidebar,
|
predicate: () => settings.store.sidebar,
|
||||||
replacement: [
|
replacement: [
|
||||||
// Create the isBetterFolders variable in the GuildsBar component
|
// Create the isBetterFolders variable in the GuildsBar component
|
||||||
|
// Needed because we access this from a closure so we can't use arguments[0]
|
||||||
{
|
{
|
||||||
match: /let{disableAppDownload:\i=\i\.isPlatformEmbedded,isOverlay:.+?(?=}=\i,)/g,
|
match: /let{disableAppDownload:\i=\i\.isPlatformEmbedded,isOverlay:.+?(?=}=\i,)/,
|
||||||
replace: "$&,isBetterFolders"
|
replace: "$&,isBetterFolders"
|
||||||
},
|
},
|
||||||
|
// Discord extacts the folders component, we need to pass the isBetterFolders and betterFoldersExpandedIds variable to it
|
||||||
|
{
|
||||||
|
match: /0,\i\.jsxs?[^0}]{0,100}guildDiscoveryButton:\i,/g,
|
||||||
|
replace: "$&isBetterFolders:arguments[0]?.isBetterFolders,betterFoldersExpandedIds:arguments[0]?.betterFoldersExpandedIds,"
|
||||||
|
},
|
||||||
// If we are rendering the Better Folders sidebar, we filter out guilds that are not in folders and unexpanded folders
|
// If we are rendering the Better Folders sidebar, we filter out guilds that are not in folders and unexpanded folders
|
||||||
{
|
{
|
||||||
match: /\[(\i)\]=(\(0,\i\.\i\).{0,40}getGuildsTree\(\).+?}\))(?=,)/g,
|
match: /\[(\i)\]=(\(0,\i\.\i\).{0,40}getGuildsTree\(\).+?}\))(?=,)/,
|
||||||
replace: (_, originalTreeVar, rest) => `[betterFoldersOriginalTree]=${rest},${originalTreeVar}=$self.getGuildTree(!!arguments[0]?.isBetterFolders,betterFoldersOriginalTree,arguments[0]?.betterFoldersExpandedIds)`
|
replace: (_, originalTreeVar, rest) => `[betterFoldersOriginalTree]=${rest},${originalTreeVar}=$self.getGuildTree(!!arguments[0]?.isBetterFolders,betterFoldersOriginalTree,arguments[0]?.betterFoldersExpandedIds)`
|
||||||
},
|
},
|
||||||
// If we are rendering the Better Folders sidebar, we filter out everything but the servers and folders from the GuildsBar Guild List children
|
// If we are rendering the Better Folders sidebar, we filter out everything but the servers and folders from the GuildsBar Guild List children
|
||||||
{
|
{
|
||||||
match: /lastTargetNode:\i\[\i\.length-1\].+?}\)(?::null)?\](?=}\))/g,
|
match: /lastTargetNode:\i\[\i\.length-1\].+?}\)(?::null)?\](?=}\))/,
|
||||||
replace: "$&.filter($self.makeGuildsBarGuildListFilter(!!arguments[0]?.isBetterFolders))"
|
replace: "$&.filter($self.makeGuildsBarGuildListFilter(!!arguments[0]?.isBetterFolders))"
|
||||||
},
|
},
|
||||||
// If we are rendering the Better Folders sidebar, we filter out everything but the scroller for the guild list from the GuildsBar Tree children
|
// If we are rendering the Better Folders sidebar, we filter out everything but the scroller for the guild list from the GuildsBar Tree children
|
||||||
// As of now, this is just the unread indicator at the bottom
|
|
||||||
// Discord has two different sidebars controlled by an experiment
|
|
||||||
// only the second one needs this filter
|
|
||||||
{
|
{
|
||||||
match: /topSection.+?unreadMentionsIndicatorBottom,.+?}\)\]/,
|
match: /lurkingGuildIds:\i\}\)\](?=\}\)\})/,
|
||||||
replace: "$&.filter($self.makeGuildsBarTreeFilter(!!arguments[0]?.isBetterFolders))"
|
replace: "$&.filter($self.makeGuildsBarTreeFilter(!!arguments[0]?.isBetterFolders))"
|
||||||
},
|
},
|
||||||
// With one of the sidebar versions, there is a sticky top bar. Don't render it if we are rendering the Better Folders sidebar
|
// With one of the sidebar versions, there is a sticky top bar. Don't render it if we are rendering the Better Folders sidebar
|
||||||
|
@ -159,7 +158,7 @@ export default definePlugin({
|
||||||
},
|
},
|
||||||
// Export the isBetterFolders variable to the folders component
|
// Export the isBetterFolders variable to the folders component
|
||||||
{
|
{
|
||||||
match: /switch\(\i\.type\){case \i\.\i\.FOLDER:.+?folderNode:\i,/g,
|
match: /switch\(\i\.type\){case \i\.\i\.FOLDER:.+?folderNode:\i,/,
|
||||||
replace: '$&isBetterFolders:typeof isBetterFolders!=="undefined"?isBetterFolders:false,'
|
replace: '$&isBetterFolders:typeof isBetterFolders!=="undefined"?isBetterFolders:false,'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -342,7 +341,7 @@ export default definePlugin({
|
||||||
return child => {
|
return child => {
|
||||||
if (!isBetterFolders) return true;
|
if (!isBetterFolders) return true;
|
||||||
|
|
||||||
return child?.props?.className?.includes("itemsContainer") && child.props.children != null;
|
return !!child?.props?.renderTreeNode;
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -77,25 +77,25 @@ export default definePlugin({
|
||||||
|
|
||||||
patches: [
|
patches: [
|
||||||
{
|
{
|
||||||
find: ".BITE_SIZE,user:",
|
find: ".POPOUT,user:",
|
||||||
replacement: {
|
replacement: {
|
||||||
match: /{profileType:\i\.\i\.BITE_SIZE,children:\[/,
|
match: /(children:\[)([^[]+shouldShowTooltip:)/,
|
||||||
replace: "$&$self.BiteSizeReviewsButton({user:arguments[0].user}),"
|
replace: "$1$self.BiteSizeReviewsButton({user:arguments[0].user}),$2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
find: ".FULL_SIZE,user:",
|
find: ".MODAL,user:",
|
||||||
replacement: {
|
replacement: {
|
||||||
match: /{profileType:\i\.\i\.FULL_SIZE,children:\[/,
|
match: /(children:\[)([^[]+shouldShowTooltip:)/,
|
||||||
replace: "$&$self.BiteSizeReviewsButton({user:arguments[0].user}),"
|
replace: "$1$self.BiteSizeReviewsButton({user:arguments[0].user}),$2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
// location: "UserProfileSiebar"
|
// places like the user profile on the right in dms
|
||||||
find: ".PANEL,children:[",
|
find: 'location:"UserProfileSiebar"',
|
||||||
replacement: {
|
replacement: {
|
||||||
match: /{profileType:\i\.\i\.PANEL,children:\[/,
|
match: /(children:\[)([^[]+shouldShowTooltip:)/,
|
||||||
replace: "$&$self.BiteSizeReviewsButton({user:arguments[0].user}),"
|
replace: "$1$self.BiteSizeReviewsButton({user:arguments[0].user}),$2"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue