diff --git a/src/plugins/viewIcons/index.tsx b/src/plugins/viewIcons/index.tsx index fd6b7b6bf..ccbc8ddca 100644 --- a/src/plugins/viewIcons/index.tsx +++ b/src/plugins/viewIcons/index.tsx @@ -65,7 +65,9 @@ const settings = definePluginSettings({ } }); -function openImage(url: string) { +function openImage(url?: string) { + if (!url) return; + const format = url.startsWith("/") ? "png" : settings.store.format; const u = new URL(url, window.location.href); @@ -171,12 +173,12 @@ export default definePlugin({ }, patches: [ - // Make pfps clickable + // Make pfps clickable and add pointer cursor { - find: "onAddFriend:function", + find: ".AVATAR_DECORATION_STATUS_ROUND_16;", replacement: { - match: /\{src:(\i)(?=,avatarDecoration)/, - replace: "{src:$1,onClick:()=>$self.openImage($1)" + match: /memo\(.{0,50}(?=let{statusColor:\i,status:\i,...\i}=(\i),)/, + replace: (m, props) => `${m}${props}.onClick=()=>$self.openImage(${props}.src);${props}.style={cursor:${props}.src?"pointer":void 0};` } }, // Make banners clickable