Fix some plugins displaying legacy discriminators (username#0000)

This commit is contained in:
V 2023-06-23 18:09:43 +02:00
parent 214c101740
commit d7ac418e05
No known key found for this signature in database
GPG key ID: A1DC0CFB5615D905
8 changed files with 71 additions and 35 deletions

View file

@ -16,6 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
import { getUniqueUsername, openUserProfile } from "@utils/discord";
import { UserUtils } from "@webpack/common";
import settings from "./settings";
@ -43,11 +44,19 @@ export async function onRelationshipRemove({ relationship: { type, id } }: Relat
switch (type) {
case RelationshipType.FRIEND:
if (settings.store.friends)
notify(`${user.tag} removed you as a friend.`, user.getAvatarURL(undefined, undefined, false));
notify(
`${getUniqueUsername(user)} removed you as a friend.`,
user.getAvatarURL(undefined, undefined, false),
() => openUserProfile(user.id)
);
break;
case RelationshipType.FRIEND_REQUEST:
if (settings.store.friendRequestCancels)
notify(`A friend request from ${user.tag} has been removed.`, user.getAvatarURL(undefined, undefined, false));
notify(
`A friend request from ${getUniqueUsername(user)} has been removed.`,
user.getAvatarURL(undefined, undefined, false),
() => openUserProfile(user.id)
);
break;
}
}

View file

@ -18,6 +18,7 @@
import { DataStore, Notices } from "@api/index";
import { showNotification } from "@api/Notifications";
import { getUniqueUsername, openUserProfile } from "@utils/discord";
import { ChannelStore, GuildMemberStore, GuildStore, RelationshipStore, UserStore, UserUtils } from "@webpack/common";
import settings from "./settings";
@ -69,7 +70,11 @@ export async function syncAndRunChecks() {
const user = await UserUtils.fetchUser(id).catch(() => void 0);
if (user)
notify(`You are no longer friends with ${user.tag}.`, user.getAvatarURL(undefined, undefined, false));
notify(
`You are no longer friends with ${getUniqueUsername(user)}.`,
user.getAvatarURL(undefined, undefined, false),
() => openUserProfile(user.id)
);
}
}
@ -79,20 +84,25 @@ export async function syncAndRunChecks() {
const user = await UserUtils.fetchUser(id).catch(() => void 0);
if (user)
notify(`Friend request from ${user.tag} has been revoked.`, user.getAvatarURL(undefined, undefined, false));
notify(
`Friend request from ${getUniqueUsername(user)} has been revoked.`,
user.getAvatarURL(undefined, undefined, false),
() => openUserProfile(user.id)
);
}
}
}
}
export function notify(text: string, icon?: string) {
export function notify(text: string, icon?: string, onClick?: () => void) {
if (settings.store.notices)
Notices.showNotice(text, "OK", () => Notices.popNotice());
showNotification({
title: "Relationship Notifier",
body: text,
icon
icon,
onClick
});
}