1
0
Fork 1
mirror of https://github.com/Vendicated/Vencord.git synced 2025-01-27 01:36:24 +00:00

AccountPanelServerProfile: Fix buttons unusable and request spam

This commit is contained in:
Nuckyz 2025-01-22 17:40:47 -03:00
parent 9bb983d40c
commit 9e9d71d014
No known key found for this signature in database
GPG key ID: 440BF8296E1C4AD9
2 changed files with 8 additions and 8 deletions

View file

@ -16,7 +16,7 @@ import { User } from "discord-types/general";
interface UserProfileProps { interface UserProfileProps {
popoutProps: Record<string, any>; popoutProps: Record<string, any>;
currentUser: User; currentUser: User;
OriginalPopout: () => React.ReactNode; originalRenderPopout: () => React.ReactNode;
} }
const UserProfile = findComponentByCodeLazy("UserProfilePopoutWrapper: user cannot be undefined"); const UserProfile = findComponentByCodeLazy("UserProfilePopoutWrapper: user cannot be undefined");
@ -78,7 +78,7 @@ export default definePlugin({
}, },
{ {
match: /(\.AVATAR,children:.+?renderPopout:(\i)=>){(.+?)}(?=,position)(?<=currentUser:(\i).+?)/, match: /(\.AVATAR,children:.+?renderPopout:(\i)=>){(.+?)}(?=,position)(?<=currentUser:(\i).+?)/,
replace: (_, rest, popoutProps, originalPopout, currentUser) => `${rest}$self.UserProfile({popoutProps:${popoutProps},currentUser:${currentUser},OriginalPopout:()=>{${originalPopout}}})` replace: (_, rest, popoutProps, originalPopout, currentUser) => `${rest}$self.UserProfile({popoutProps:${popoutProps},currentUser:${currentUser},originalRenderPopout:()=>{${originalPopout}}})`
}, },
{ {
match: /\.AVATAR,children:.+?(?=renderPopout:)/, match: /\.AVATAR,children:.+?(?=renderPopout:)/,
@ -112,17 +112,17 @@ export default definePlugin({
openAlternatePopout = false; openAlternatePopout = false;
}, },
UserProfile: ErrorBoundary.wrap(({ popoutProps, currentUser, OriginalPopout }: UserProfileProps) => { UserProfile: ErrorBoundary.wrap(({ popoutProps, currentUser, originalRenderPopout }: UserProfileProps) => {
if ( if (
(settings.store.prioritizeServerProfile && openAlternatePopout) || (settings.store.prioritizeServerProfile && openAlternatePopout) ||
(!settings.store.prioritizeServerProfile && !openAlternatePopout) (!settings.store.prioritizeServerProfile && !openAlternatePopout)
) { ) {
return <OriginalPopout />; return originalRenderPopout();
} }
const currentChannel = getCurrentChannel(); const currentChannel = getCurrentChannel();
if (currentChannel?.getGuildId() == null) { if (currentChannel?.getGuildId() == null) {
return <OriginalPopout />; return originalRenderPopout();
} }
return ( return (

View file

@ -16,7 +16,7 @@ interface UserMentionComponentProps {
id: string; id: string;
channelId: string; channelId: string;
guildId: string; guildId: string;
OriginalComponent: () => ReactNode; originalComponent: () => ReactNode;
} }
export default definePlugin({ export default definePlugin({
@ -29,7 +29,7 @@ export default definePlugin({
find: ':"text":', find: ':"text":',
replacement: { replacement: {
match: /(hidePersonalInformation\).+?)(if\(null!=\i\){.+?return \i)(?=})/, match: /(hidePersonalInformation\).+?)(if\(null!=\i\){.+?return \i)(?=})/,
replace: "$1return $self.UserMentionComponent({...arguments[0],OriginalComponent:()=>{$2}});" replace: "$1return $self.UserMentionComponent({...arguments[0],originalComponent:()=>{$2}});"
} }
} }
], ],
@ -42,6 +42,6 @@ export default definePlugin({
channelId={props.channelId} channelId={props.channelId}
/> />
), { ), {
fallback: ({ wrappedProps: { OriginalComponent } }) => <OriginalComponent /> fallback: ({ wrappedProps: { originalComponent } }) => originalComponent()
}) })
}); });