add preferFriends to showMeYourName (#145)

This commit is contained in:
mochie 2025-02-10 18:17:31 +01:00 committed by GitHub
parent 95c20fa901
commit 50166e4c31
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -10,6 +10,7 @@ import { definePluginSettings } from "@api/Settings";
import ErrorBoundary from "@components/ErrorBoundary"; import ErrorBoundary from "@components/ErrorBoundary";
import { Devs } from "@utils/constants"; import { Devs } from "@utils/constants";
import definePlugin, { OptionType } from "@utils/types"; import definePlugin, { OptionType } from "@utils/types";
import { RelationshipStore } from "@webpack/common";
import { Message, User } from "discord-types/general"; import { Message, User } from "discord-types/general";
interface UsernameProps { interface UsernameProps {
@ -40,6 +41,11 @@ const settings = definePluginSettings({
default: false, default: false,
description: "Also apply functionality to reply previews", description: "Also apply functionality to reply previews",
}, },
preferFriend: {
type: OptionType.BOOLEAN,
default: false,
description: "Use friend names in place of usernames (overrides Display Names option if applicable)"
}
}); });
export default definePlugin({ export default definePlugin({
@ -60,9 +66,12 @@ export default definePlugin({
renderUsername: ErrorBoundary.wrap(({ author, message, isRepliedMessage, withMentionPrefix, userOverride }: UsernameProps) => { renderUsername: ErrorBoundary.wrap(({ author, message, isRepliedMessage, withMentionPrefix, userOverride }: UsernameProps) => {
try { try {
const user = userOverride ?? message.author; const user = userOverride ?? message.author;
const friendName = RelationshipStore.getNickname(user.id);
let { username } = user; let { username } = user;
if (settings.store.displayNames) if (settings.store.displayNames)
username = (user as any).globalName || username; username = (user as any).globalName || username;
if (settings.store.preferFriend)
username = friendName ?? username;
const { nick } = author; const { nick } = author;
const prefix = withMentionPrefix ? "@" : ""; const prefix = withMentionPrefix ? "@" : "";