viewRaw, viewIcons, permissionsViewer: fix some edge cases (#1745)

Co-authored-by: V <vendicated@riseup.net>
This commit is contained in:
AutumnVN 2023-09-26 06:48:09 +07:00 committed by GitHub
parent 4c7a2ba340
commit f32d25b641
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 4 additions and 3 deletions

@ -126,7 +126,7 @@ function MenuItem(guildId: string, id?: string, type?: MenuItemParentType) {
function makeContextMenuPatch(childId: string | string[], type?: MenuItemParentType): NavContextMenuPatchCallback { function makeContextMenuPatch(childId: string | string[], type?: MenuItemParentType): NavContextMenuPatchCallback {
return (children, props) => () => { return (children, props) => () => {
if (!props) return children; if (!props || (type === MenuItemParentType.User && !props.user) || (type === MenuItemParentType.Guild && !props.guild)) return children;
const group = findGroupChildrenByChildId(childId, children); const group = findGroupChildrenByChildId(childId, children);

@ -83,6 +83,7 @@ function openImage(url: string) {
} }
const UserContext: NavContextMenuPatchCallback = (children, { user, guildId }: UserContextProps) => () => { const UserContext: NavContextMenuPatchCallback = (children, { user, guildId }: UserContextProps) => () => {
if (!user) return;
const memberAvatar = GuildMemberStore.getMember(guildId!, user.id)?.avatar || null; const memberAvatar = GuildMemberStore.getMember(guildId!, user.id)?.avatar || null;
children.splice(-1, 0, ( children.splice(-1, 0, (
@ -111,7 +112,7 @@ const UserContext: NavContextMenuPatchCallback = (children, { user, guildId }: U
}; };
const GuildContext: NavContextMenuPatchCallback = (children, { guild }: GuildContextProps) => () => { const GuildContext: NavContextMenuPatchCallback = (children, { guild }: GuildContextProps) => () => {
if(!guild) return; if (!guild) return;
const { id, icon, banner } = guild; const { id, icon, banner } = guild;
if (!banner && !icon) return; if (!banner && !icon) return;

@ -119,7 +119,7 @@ const settings = definePluginSettings({
function MakeContextCallback(name: string) { function MakeContextCallback(name: string) {
const callback: NavContextMenuPatchCallback = (children, props) => () => { const callback: NavContextMenuPatchCallback = (children, props) => () => {
if (name === "Guild" && !props.guild) return; if ((name === "Guild" && !props.guild) || (name === "User" && !props.user)) return;
const lastChild = children.at(-1); const lastChild = children.at(-1);
if (lastChild?.key === "developer-actions") { if (lastChild?.key === "developer-actions") {
const p = lastChild.props; const p = lastChild.props;