diff --git a/src/plugins/blurNsfw/index.ts b/src/plugins/blurNsfw/index.ts index b20e74af2..15dbf0244 100644 --- a/src/plugins/blurNsfw/index.ts +++ b/src/plugins/blurNsfw/index.ts @@ -53,7 +53,7 @@ export default definePlugin({ replacement: [ { match: /(\.renderReactions\(\i\).+?className:)/, - replace: '$&(this.props.channel.nsfw?" vc-nsfw-img":"")+' + replace: '$&(this.props.channel.nsfw?"vc-nsfw-img ":"")+' } ] } diff --git a/src/plugins/imageFilename/index.ts b/src/plugins/imageFilename/index.ts index 08a446f85..9a0c1994b 100644 --- a/src/plugins/imageFilename/index.ts +++ b/src/plugins/imageFilename/index.ts @@ -27,10 +27,10 @@ export default definePlugin({ patches: [ { - find: ".clickableWrapper", + find: '"calc(100% + 1px)":"100%"', replacement: { - match: /\.originalLink,href:(\i)/, - replace: "$&,title:$self.getTitle($1)" + match: /(?="data-role":"img","data-safe-src":)(?<=href:(\i).{0,30})/, + replace: "title:$self.getTitle($1)," } }, ], diff --git a/src/plugins/viewIcons/index.tsx b/src/plugins/viewIcons/index.tsx index 5d8defb95..10d484b23 100644 --- a/src/plugins/viewIcons/index.tsx +++ b/src/plugins/viewIcons/index.tsx @@ -221,7 +221,7 @@ export default definePlugin({ }, // User DMs top small icon { - find: ".cursorPointer:null,children", + find: ".channel.getRecipientId(),", replacement: { match: /(?=,src:(\i.getAvatarURL\(.+?[)]))/, replace: (_, avatarUrl) => `,onClick:()=>$self.openAvatar(${avatarUrl})` diff --git a/src/webpack/common/components.ts b/src/webpack/common/components.ts index 8fd2d8eef..f06f830fa 100644 --- a/src/webpack/common/components.ts +++ b/src/webpack/common/components.ts @@ -26,7 +26,7 @@ import { TooltipContainer as TooltipContainerComponent } from "@components/Toolt import { TooltipFallback } from "@components/TooltipFallback"; import { LazyComponent } from "@utils/lazyReact"; import * as t from "@vencord/discord-types"; -import { filters, mapMangledCssClasses, mapMangledModuleLazy, waitFor } from "@webpack"; +import { filters, find, findCssClassesLazy, mapMangledCssClasses, mapMangledModuleLazy, proxyLazyWebpack, waitFor } from "@webpack"; import { waitForComponent } from "./internal"; @@ -76,27 +76,21 @@ export const UserSummaryItem = waitForComponent("UserSummaryItem", filters.compo export let createScroller: (scrollbarClassName: string, fadeClassName: string, customThemeClassName: string) => t.ScrollerThin; export let createListScroller: (scrollBarClassName: string, fadeClassName: string, someOtherClassIdkMan: string, resizeObserverClass: typeof ResizeObserver) => t.ListScrollerThin; -const scrollerClassnames = ["thin", "auto", "fade", "customTheme", "none"] as const; const listScrollerClassnames = ["thin", "auto", "fade"] as const; -export let scrollerClasses: Record; -export let listScrollerClasses: Record; +export const scrollerClasses = findCssClassesLazy("thin", "auto", "fade", "customTheme", "none"); + +const isListScroller = filters.byClassNames(...listScrollerClassnames); +const isNotNormalScroller = filters.byClassNames("customTheme"); +export const listScrollerClasses = proxyLazyWebpack(() => { + const mod = find(m => isListScroller(m) && !isNotNormalScroller(m), { topLevelOnly: true }); + if (!mod) return {} as Record; + + return mapMangledCssClasses(mod, listScrollerClassnames); +}); waitFor(filters.byCode('="ltr",orientation:', "customTheme:", "forwardRef"), m => createScroller = m); waitFor(filters.byCode("getScrollerNode:", "resizeObserver:", "sectionHeight:"), m => createListScroller = m); -waitFor( - filters.byClassNames(...scrollerClassnames), - m => scrollerClasses = mapMangledCssClasses(m, scrollerClassnames) -); -{ - const isListScroller = filters.byClassNames(...listScrollerClassnames); - const isNotNormalScroller = filters.byClassNames("customTheme"); - waitFor( - m => isListScroller(m) && !isNotNormalScroller(m), - m => listScrollerClasses = mapMangledCssClasses(m, listScrollerClassnames) - ); -} - export const ScrollerNone = LazyComponent(() => createScroller(scrollerClasses.none, scrollerClasses.fade, scrollerClasses.customTheme)); export const ScrollerThin = LazyComponent(() => createScroller(scrollerClasses.thin, scrollerClasses.fade, scrollerClasses.customTheme)); export const ScrollerAuto = LazyComponent(() => createScroller(scrollerClasses.auto, scrollerClasses.fade, scrollerClasses.customTheme));