#๐พ-core-development
1 messages ยท Page 279 of 1
๐
ok
export function makeClassNameRegex(className: string) {
return new RegExp(`(?:\\b|_)${escapeRegExp(className)}(?:\\b|_)`);
}
const filters = {
byClassNames: (...classes: string[]): FilterFn => {
const regexes = classes.map(makeClassNameRegex);
return (m: any) => {
if (typeof m !== "object") return false;
const values = Object.values(m);
return regexes.every(cls => values.some(v => typeof v === "string" && cls.test(v)));
};
}
}
export function findCssClasses(...classes: string[]): Record<string, string> {
const res = find(filters.byClassNames(...classes), { isIndirect: true, topLevelOnly: true });
if (!res)
handleModuleNotFound("findCssClasses", ...classes);
const values = Object.values(res);
const mapped: Record<string, string> = {};
for (const cls of classes) {
const re = makeClassNameRegex(cls);
mapped[cls] = values.find(v => typeof v === "string" && re.test(v)) as string;
}
return mapped;
}
I decided to only map the classes you explicitly specify
it could also map all classes but meh
i dont really want to have to parse their classNames
if you do that, you could also add type-checking with const generics i think
just this
export function findCssClasses<S extends string>(...classes: S[]): Record<S, string> {
well the settings ui mostly works
the breakage wasnt too bad yesterday tbh in terms of ui
quite a few logic bugs tho with message logger
havent gotten around to fixing it yet
Now testing! 
this has the findCssClasses
you can start using it in plugins
well
for now
?remind implement testing findCssClasses
Invalid time provided, try e.g. "tomorrow" or "3 days".
if they stick with real classnames then yes
?remind 1w implement testing findCssClasses in companion
Alright @fossil inlet, in 1 week: implement testing findCssClasses in companion
Seems like everything is working fine (for now) 
everything works 
i will push to main for now
yep seems fine
fixed in my pr
but my pr needs to be updated to use the new find
(normal users wont see this)
holy jumpscare
instead of cursed things
maybe we should implement small error boundaries
error dots
with tooltip?
idk
i also have a pr on ur branch
normal users wont see these anyway
alr
i mainly want to always show errorboundaries in dev so its very obvious
It's way too obvious rn ๐
maybe have error boundaries hide once you click on them once
like dismiss each one
still gets the point across
but doesnt block UI
did you push this yet
yes
^
was the permviewer commit supposed to bring back the little button on profiles cus this is on stable and the bug appeared around the time of that pr
!
^
look at my commit again
it adds topLevelOnly
can my keyboard stop changing layout on its own bro
that is NOT qwerty...
u have to implement topLevelOnly for findAll and pass that
oh i made a mistake
the function doesn't return after handleModuleNotFound
it should just return an empty object in that case
Guys it hit stable
KILL SUPPORT
ill pr what I have in a bit 
bless you
@gritty iris stable has the good classNames, right
nope
well
sort of
but most were just wiped
what the fuck are they cooking
yes
hopefully shc will be an easy fix 
ill fix the webpack finds
I need a list what needs to be worked on still so I can try as well to be of use
wheres this
dcontribute to this
well for the vencord stuff
he opened a pr but closed it 
I ain't
think thats good
@gritty iris check your email, you should be able to push to the branch
If there's any patches that aren't shc and still need to be fixed lmk 
anything that isn't fixed in the pr
go for it
pr it when you fix it and ping me so i can merge
or just send patch file
cool
this also has findCssClasses in consoleShortcuts
Will do
Need to run out first but I'll be back later and help with stuff
HOW ๐ญ
it gets better
_ = { 215e-3(){} }
Like how does illegal js end up in prod
this is from a bundler ๐ญ
nobody writes this
someone hasn't seen the js side yet 
it's not literally illegal
i am just calling it illegal because it's so cursed
I'm glad I don't know anything about it, you guys are dangerous

Guhhh you confused me taking everything literally
alr
sorry was noting what I needed to fix still lol
all good
i'm just going by the state of the pr rn
iirc vees doing wp finds
im doing shc
ill just push what I did
It'd be good if everyone communicates what they're working on
so we don't duplicate work
yop
ill note what I have already in a sec
?remind 1w fold numeric constants in companion patch helper
Alright @fossil inlet, in 1 week: fold numeric constants in companion patch helper
checkbox
sortfriends
friendssince section find
decor fileupload find
customrpc activityview
thats what I found so far
why tf are these bigints ๐ญ
oh
it's used outside of patches as well
what branch am I using??
pushed what I already did
discord edit evil
love
whats left and ill see what I can do
(there were like 5x more earlier)
i fixed some patch before, check those too ๐ซถ
I very much hate this btw
I'd also love to have a proper list instead of comparing pr changes with the work flow fail 
I'm stuck in a tram tho otherwise I'd be trying to help
@hybrid blaze pushed your stuff
dont compare with the workflow
see what's change in the pr
let people know when you start on something
Where would I take from what remains borked then
devtools
vee is doing wp right?
I haven't worked on vencord for so long I forgot about devtools
you an also run reporter locally with --dev --reporter (--watch)?
what are you doing rn sadan
Ya
still on shc
alr
I'll take rce in 20 minutes
I think rce is done now
Is it?
I lie
Last I checked I didn't see it in the pr
it had more than I thought
i hope discord reverts this so you guys did this all for no reason at all

Once it's on stable it's so improbable
well it isnt on stable
It is???
it is??
Yes
oh..
partly on stable
That's why we're panicking 
not fully
Cuz supports exploding
I cant even get reporter to run ๐
if I do --dev --reporter it ignores reporter
I cant even get companion to show lol
im gonna work on settings
doing member count
Okay I'll hop on fixing in about 20 minutes i think
Everything is delaying my possibilities of being faster
cursed
love
doing rce now
companion needs updating
yeye
fake news
I just almost disabled my account because of lag
I hit the gear when it was loading everything
and it auto scrolled or some shit
and hovered disable acc
that was easy
Okay so who's working on what rn
companion makes getting finds so easy 
u love
vtest sadanslargehole-pr
Now testing! 

pushed to my companion plugin for those that use it
ill do the rest of the webpack finds
run pnpm buildReporterDesktop
im fighting for my life over 1 of these patches in settings
ill fix ML
What happens when the bug or crash occurs?
the voicemail button is no longer displayed
What is the expected behaviour?
the voicemail button is no longer displayed
How do you recreate this bug or crash?
click on the button
Errors
Nothing is displayed.
Request Agreement
- [x] I am using Discord Stable or tried on Stable and this bug happens there as well
- [x] I am a Vencord Developer
I hate that its lowercase so much
should i pr to new branch or jsut send diff
What happens when the bug or crash occurs?
the voicemail button is no longer displayed
What is the expected behaviour?
the voicemail button is no longer displayed
How do you recreate this bug or crash?
click on the button
Errors
Nothing is displayed.
Request Agreement
- [x] I am using Discord Stable or tried on Stable and this bug happens there as well
- [x] I am a Vencord Developer
either works
ill pr then
ill fix imagezoom and MenuSliderControl find
ProfileListClasses is just fully nuked
@austere talon if i fix a plugin should i disregard the findbyprops issues since youre doing those?
just focus on patches
yes
oki
ngl this patch is terrible but I think it works
it does work
pushed settings fixes
fixing bettersessions
dont do this stuff
it will match literally the first className it finds in the module
need some new anchor
I figured but it was the only classname so didnt do it
anyone doing message logger
me
doing mention avatars
vtest sadanslargehole-pr
Now testing! 
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__RoleColorEverywhere (had no effect):__**
ID: `291812`
Match: ```
/(?<=isUnsupported\]:(\i)\.isUnsupported\}\),)(?=children:\[)/
GreetStickerPicker (had no effect):
ID: 336589
Match: ```
/className:\i.welcomeCTA,(?<={channel:\i,message:\i}=(\i).+?)/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
MentionAvatars (had no effect):
ID: 593284
Match: ```
/children:[\i&&.{0,100}className:\i.roleDot,.{0,200},\i(?=])/
**__CopyFileContents (had no effect):__**
ID: `752063`
Match: ```
/\.footerGap.+?url:\i,fileName:\i,fileSize:\i}\),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
IgnoreActivities (had no effect):
ID: 768908
Match: ```
/.gameNameLastPlayed.+?,\i(),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?}=(\i).+?)(?=\1&&)/
**__MessageLogger (had no effect):__**
ID: `861986`
Match: ```
/"span",\{(?=className:\i\.edited,)/
RoleColorEverywhere (had no effect):
ID: 801285
Match: ```
/.name,(?="aria-label)/
**__MutualGroupDMs (had no effect):__**
ID: `240783`
Match: ```
/className:\i\.tabBar/
GameActivityToggle (had no effect):
ID: 748319
Match: ```
/className:\i.buttons,.{0,50}children:[/
**__ShowHiddenThings (had no effect):__**
ID: `686378`
Match: ```
/(?<=\.highestRole\),)role:\i(?<=\[\i\.roles,\i\.highestRoleId,(\i)\].+)/
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__UserVoiceShow (had no effect):__**
ID: `174279`
Match: ```
/\.actions,children:\[(?<=isFocused:(\i).+?)/
MutualGroupDMs (had no effect):
ID: 179242
Match: ```
/.openUserProfileModal.+?)})})(?<=,(\i)&&(\i)&&((0,\i.jsxs?)(\i.\i,{className:(\i).divider})).+?)/
**__ShowHiddenChannels (had no effect):__**
ID: `379768`
Match: ```
/return\(0,\i\.jsxs?\)\(\i\.\i,{channelId:(\i)\.id(?=.+?(\(0,\i\.jsxs?\)\("div",{className:\i\.members.+?\]}\)),)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Decor (found no module):__**
ID: `-`
Match: ```
.decorationGridItem,
Decor (found no module):
ID: -
Match: ```
.nameplatePreview,{
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor((m) => m.thin && m.auto && !m.customTheme...)
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__RoleColorEverywhere (had no effect):__**
ID: `291812`
Match: ```
/(?<=isUnsupported\]:(\i)\.isUnsupported\}\),)(?=children:\[)/
GreetStickerPicker (had no effect):
ID: 336589
Match: ```
/className:\i.welcomeCTA,(?<={channel:\i,message:\i}=(\i).+?)/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
MentionAvatars (had no effect):
ID: 593284
Match: ```
/children:[\i&&.{0,100}className:\i.roleDot,.{0,200},\i(?=])/
**__CopyFileContents (had no effect):__**
ID: `752063`
Match: ```
/\.footerGap.+?url:\i,fileName:\i,fileSize:\i}\),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
IgnoreActivities (had no effect):
ID: 768908
Match: ```
/.gameNameLastPlayed.+?,\i(),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?}=(\i).+?)(?=\1&&)/
**__MessageLogger (had no effect):__**
ID: `861986`
Match: ```
/"span",\{(?=className:\i\.edited,)/
RoleColorEverywhere (had no effect):
ID: 801285
Match: ```
/.name,(?="aria-label)/
**__MutualGroupDMs (had no effect):__**
ID: `240783`
Match: ```
/className:\i\.tabBar/
GameActivityToggle (had no effect):
ID: 748319
Match: ```
/className:\i.buttons,.{0,50}children:[/
**__ShowHiddenThings (had no effect):__**
ID: `686378`
Match: ```
/(?<=\.highestRole\),)role:\i(?<=\[\i\.roles,\i\.highestRoleId,(\i)\].+)/
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__UserVoiceShow (had no effect):__**
ID: `174279`
Match: ```
/\.actions,children:\[(?<=isFocused:(\i).+?)/
MutualGroupDMs (had no effect):
ID: 179242
Match: ```
/.openUserProfileModal.+?)})})(?<=,(\i)&&(\i)&&((0,\i.jsxs?)(\i.\i,{className:(\i).divider})).+?)/
**__ShowHiddenChannels (had no effect):__**
ID: `379768`
Match: ```
/return\(0,\i\.jsxs?\)\(\i\.\i,{channelId:(\i)\.id(?=.+?(\(0,\i\.jsxs?\)\("div",{className:\i\.members.+?\]}\)),)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Decor (found no module):__**
ID: `-`
Match: ```
.decorationGridItem,
Decor (found no module):
ID: -
Match: ```
.nameplatePreview,{
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor((m) => m.thin && m.auto && !m.customTheme...)
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
il do decor
waitFor("sliderContainer", "slider", "handleSize:16", "=100") fixed
CommandApi fixed
MenuSliderControl fixed
ImageZoom fixed
evil...
๐
wow theyre short enough now
slowly getting there
seems like findByCode(".actionBarIcon)") resolves if you just drop the last )
lookbehind with unlimited quantifier in the beginning
it will restart the whole lookbehind everytime it advances because of the +
It's fine in the end like we use, but in the beginning it's slow
ye i was about to fix that
I'll do it
also rolecoloreverywhere
fixed anonymize file names mostly
I can't tell if this is a discord bug or a us bug
loadLazyModules
we never do anything with .spoiler in the plugin
im working on game activity now
looks like a bug
that should complain if it can't find it though no?
if you can find something better for this lmk, best i could do is anchor it to usernameClass
vp consoleshortcuts
dont you think i have that
oki
@austere talon could you run reporter
vtest sadanslargehole-pr
Now testing! 
outdated branch
sadanslargehole
is it just me, or is ctrl-r not working for anyone else
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__RoleColorEverywhere (had no effect):__**
ID: `291812`
Match: ```
/(?<=isUnsupported\]:(\i)\.isUnsupported\}\),)(?=children:\[)/
GreetStickerPicker (had no effect):
ID: 336589
Match: ```
/className:\i.welcomeCTA,(?<={channel:\i,message:\i}=(\i).+?)/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
MentionAvatars (had no effect):
ID: 593284
Match: ```
/children:[\i&&.{0,100}className:\i.roleDot,.{0,200},\i(?=])/
**__CopyFileContents (had no effect):__**
ID: `752063`
Match: ```
/\.footerGap.+?url:\i,fileName:\i,fileSize:\i}\),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
IgnoreActivities (had no effect):
ID: 768908
Match: ```
/.gameNameLastPlayed.+?,\i(),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?}=(\i).+?)(?=\1&&)/
**__MessageLogger (had no effect):__**
ID: `861986`
Match: ```
/"span",\{(?=className:\i\.edited,)/
RoleColorEverywhere (had no effect):
ID: 801285
Match: ```
/.name,(?="aria-label)/
**__MutualGroupDMs (had no effect):__**
ID: `240783`
Match: ```
/className:\i\.tabBar/
GameActivityToggle (had no effect):
ID: 748319
Match: ```
/className:\i.buttons,.{0,50}children:[/
**__ShowHiddenThings (had no effect):__**
ID: `686378`
Match: ```
/(?<=\.highestRole\),)role:\i(?<=\[\i\.roles,\i\.highestRoleId,(\i)\].+)/
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__UserVoiceShow (had no effect):__**
ID: `174279`
Match: ```
/\.actions,children:\[(?<=isFocused:(\i).+?)/
MutualGroupDMs (had no effect):
ID: 179242
Match: ```
/.openUserProfileModal.+?)})})(?<=,(\i)&&(\i)&&((0,\i.jsxs?)(\i.\i,{className:(\i).divider})).+?)/
**__ShowHiddenChannels (had no effect):__**
ID: `379768`
Match: ```
/return\(0,\i\.jsxs?\)\(\i\.\i,{channelId:(\i)\.id(?=.+?(\(0,\i\.jsxs?\)\("div",{className:\i\.members.+?\]}\)),)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Decor (found no module):__**
ID: `-`
Match: ```
.decorationGridItem,
Decor (found no module):
ID: -
Match: ```
.nameplatePreview,{
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor((m) => m.thin && m.auto && !m.customTheme...)
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__RoleColorEverywhere (had no effect):__**
ID: `291812`
Match: ```
/(?<=isUnsupported\]:(\i)\.isUnsupported\}\),)(?=children:\[)/
GreetStickerPicker (had no effect):
ID: 336589
Match: ```
/className:\i.welcomeCTA,(?<={channel:\i,message:\i}=(\i).+?)/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
MentionAvatars (had no effect):
ID: 593284
Match: ```
/children:[\i&&.{0,100}className:\i.roleDot,.{0,200},\i(?=])/
**__CopyFileContents (had no effect):__**
ID: `752063`
Match: ```
/\.footerGap.+?url:\i,fileName:\i,fileSize:\i}\),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
IgnoreActivities (had no effect):
ID: 768908
Match: ```
/.gameNameLastPlayed.+?,\i(),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?}=(\i).+?)(?=\1&&)/
**__MessageLogger (had no effect):__**
ID: `861986`
Match: ```
/"span",\{(?=className:\i\.edited,)/
RoleColorEverywhere (had no effect):
ID: 801285
Match: ```
/.name,(?="aria-label)/
**__MutualGroupDMs (had no effect):__**
ID: `240783`
Match: ```
/className:\i\.tabBar/
GameActivityToggle (had no effect):
ID: 748319
Match: ```
/className:\i.buttons,.{0,50}children:[/
**__ShowHiddenThings (had no effect):__**
ID: `686378`
Match: ```
/(?<=\.highestRole\),)role:\i(?<=\[\i\.roles,\i\.highestRoleId,(\i)\].+)/
MutualGroupDMs (had no effect):
ID: 179242
Match: ```
/.openUserProfileModal.+?)})})(?<=,(\i)&&(\i)&&((0,\i.jsxs?)(\i.\i,{className:(\i).divider})).+?)/
**__ShowHiddenChannels (had no effect):__**
ID: `379768`
Match: ```
/return\(0,\i\.jsxs?\)\(\i\.\i,{channelId:(\i)\.id(?=.+?(\(0,\i\.jsxs?\)\("div",{className:\i\.members.+?\]}\)),)/
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__UserVoiceShow (had no effect):__**
ID: `174279`
Match: ```
/\.actions,children:\[(?<=isFocused:(\i).+?)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Decor (found no module):__**
ID: `-`
Match: ```
.decorationGridItem,
Decor (found no module):
ID: -
Match: ```
.nameplatePreview,{
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor((m) => m.thin && m.auto && !m.customTheme...)
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
i get it on the occasion
blurnsfw crashes
@fossil inlet can i have write access to your branch so that I can push the (at least partial?) fix for anonymizefilenames 
@gritty iris ๐ญ
pr or send patch
o oki
should I move blur to settings?
later
there is no pointing in just changing these anchors to \i.\i
has anyone done pindms?
I dont think so
did u forcepush the pr
the patch needs to be properly readjusted, they serve no purpose
ill do pindms then
insane
VoiceDownload fixed
and then ill open pr
May I ask what happened if ya'll have any idea, even my own mod literally crashed and burned
discord cooked
discord did a silly
vtest sadanslargehole-pr
Now testing! 
tl;dr on the js side, class names are mangled, on the html side class names are name_hash
can you take a look?
nice one discord
always happened after this patch ๐ญ
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
CopyFileContents (had no effect):
ID: 752063
Match: ```
/.footerGap.+?url:\i,fileName:\i,fileSize:\i}),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
**__IgnoreActivities (had no effect):__**
ID: `768908`
Match: ```
/\.gameNameLastPlayed.+?,\i\(\),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?\}=(\i).+?)(?=\1&&)/
MessageLogger (had no effect):
ID: 861986
Match: ```
/"span",{(?=className:\i.edited,)/
**__ImplicitRelationships (had no effect):__**
ID: `18635`
Match: ```
/,{id:(\i\.\i)\.PENDING,show:.+?className:(\i\.item)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
MessageLogger (had no effect):
ID: 291812
Match: ```
/.isFailed]:.+?children:[/
**__ImageZoom (had no effect):__**
ID: `358731`
Match: ```
/(?<=\.hidden]:)\i/
CopyFileContents (had no effect):
ID: 752063
Match: ```
/.footerGap.+?url:\i,fileName:\i,fileSize:\i}),(?<=fileContents:(\i),bytesLeft:(\i).+?)/g
**__IgnoreActivities (had no effect):__**
ID: `768908`
Match: ```
/\.gameNameLastPlayed.+?,\i\(\),(?<=nowPlaying:(\i)=!1,.+?overlay:\i,[^}]+?\}=(\i).+?)(?=\1&&)/
MessageLogger (had no effect):
ID: 861986
Match: ```
/"span",{(?=className:\i.edited,)/
**__ImplicitRelationships (had no effect):__**
ID: `18635`
Match: ```
/,{id:(\i\.\i)\.PENDING,show:.+?className:(\i\.item)/
CommandsAPI (found no module):
ID: -
Match: ```
.source,children
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__AlwaysAnimate (found no module):__**
ID: `-`
Match: ```
.animatedBannerHoverLayer,onMouseEnter:
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__Experiments (found no module):__**
ID: `-`
Match: ```
.experimentOverride,children:
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
ImageZoom (found no module):
ID: -
Match: ```
.dimensionlessImage,
**__MessageLogger (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PinDMs (found no module):__**
ID: `-`
Match: ```
.privateChannelsHeaderContainer,
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__SpotifyControls (found no module):__**
ID: `-`
Match: ```
this.isCopiedStreakGodlike
ThemeAttributes (found no module):
ID: -
Match: ```
.messageListItem
**__ViewIcons (found no module):__**
ID: `-`
Match: ```
.cursorPointer:null,children
VoiceDownload (found no module):
ID: -
Match: ```
rippleContainer,children
waitForComponent(".editable),", ".outline:")
waitFor("sliderContainer", "slider", "handleSize:16", "=100")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findByCode(".actionBarIcon)")
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
mapMangledModule("POSITIVE="positive", {
HelpMessage: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
findByProps("edited", "communicationDisabled", "isSystemMessage")
sea of red redder than stock market
dont use minified names
ignore activities is done tmk
oh, what i just did
will get some coffe and fix it
done
oh its late
@fossil inlet this should work
{
match: /(?<=shouldLink:!1,)className:\i\.\i,/,
eplace: `id:"${ELEMENT_ID}",$&`
},
a bit safer in this way ig
pushed
pindms fixed
doing experiments
doing ML
didnt elvy alreay do that
yes
then push
send patch or pr ๐ญ
how do i make patch
ill do the mapMangledModules
git format-patch -1 HEAD
i got 3 fixes for you sadan
ty
oh change the number then if you have more than 1 commit
change it to however many commits you have
I think?
not really
alr
please approach on fixing these patches slower
@fossil inlet these should work i think
they are being very overlooked right now by rushed fixes
hop off anon file names
ty
im gonna go eat ill do more in a bit
they got excited because I just fixed it 
how do you use the companion again
I forgot
like in general or a feature
can we have another reporter run
@odd heath fix implicit relationships
vtest sadanslargehole-pr
Now testing! 
ill take a look
doing web context menus
just waiting to see reporter
how do I build a dev version of vencord
I thought building from source automatically made it a dev build unless you specified otherwise
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__BetterRoleDot (found no module):__**
ID: `-`
Match: ```
.dotBorderBase
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PlainFolderIcon (found no module):__**
ID: `-`
Match: ```
.folderPreviewGuildIconError
SpotifyControls (found no module):
ID: -
Match: ```
this.isCopiedStreakGodlike
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
waitForComponent(".editable),", ".outline:")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
ImplicitRelationships (had no effect):
ID: 18635
Match: ```
/,{id:(\i.\i).PENDING,show:.+?className:(\i.item)/
**__DynamicImageModalAPI (found no module):__**
ID: `-`
Match: ```
.dimensionlessImage,
MemberListDecoratorsAPI (found no module):
ID: -
Match: ```
.lostPermission)
**__BetterRoleDot (found no module):__**
ID: `-`
Match: ```
.dotBorderBase
FakeNitro (found no module):
ID: -
Match: ```
emojiItemDisabled]
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
IgnoreActivities (found no module):
ID: -
Match: ```
.promotedLabelWrapperNonBanner,children
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__PlainFolderIcon (found no module):__**
ID: `-`
Match: ```
.folderPreviewGuildIconError
SpotifyControls (found no module):
ID: -
Match: ```
this.isCopiedStreakGodlike
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
waitForComponent(".editable),", ".outline:")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
pnpm dev @sullen plover
hilarious I can send messages here but not anywhere else xd
ohh ty ty
v+ regular
pnpm build --dev
still
dont be lazy with your patches folks
they still need to be specific enough
im lazy with all of my patches
I use findByCodeLazy
ill fix the apis
seems like the dev companion isn't connecting for some reason even though it's enabled
I tried restarting vesktop fully
fine ill imrpove my anchors
ill do implicit relationshiops then
oke
it's flat out failing to connect to the websocket?
any errors
@fossil inlet what is this
there's a websocket connection error in the browser, but I don't see anything in vscode itself
stable vs canary
it worked
when i wrote that, it was let t, n, {
is this good enough
im doing ThemeAttributes and ViewIcons
cuz idk how to anchor better its cursed
ah
your call to keep or remove
there's a websocket connection error in
anyone doing spotifycontrols?
i did alr
oke
beautiful
thats why i said
thats not spotifycontrols
anyway ill do plainfoldericon
its something else
o
game button ill bet
@austere talon how are these anchors
idk
vtest sadanslargehole-pr
Now testing! 
yes
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__FakeNitro (found no module):__**
ID: `-`
Match: ```
emojiItemDisabled]
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__IgnoreActivities (found no module):__**
ID: `-`
Match: ```
.promotedLabelWrapperNonBanner,children
ImageFilename (found no module):
ID: -
Match: ```
.clickableWrapper
**__PictureInPicture (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton),
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
SpotifyCrack (took 12.3ms):
ID: 107750
Match: ```
/SPOTIFY_PROFILE_UPDATE.+?isPremium:(?="premium"===(\i).body.product)/
waitForComponent(".editable),", ".outline:")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
BetterRoleDot (found no module):
ID: -
Match: ```
.dotBorderBase
**__FakeNitro (found no module):__**
ID: `-`
Match: ```
emojiItemDisabled]
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__IgnoreActivities (found no module):__**
ID: `-`
Match: ```
.promotedLabelWrapperNonBanner,children
ImageFilename (found no module):
ID: -
Match: ```
.clickableWrapper
**__PictureInPicture (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton),
PlainFolderIcon (found no module):
ID: -
Match: ```
.folderPreviewGuildIconError
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
PermissionFreeWill (took 6.7ms):
ID: 60868
Match: ```
/{(?:\i:()=>\i,?){2}}/
waitForComponent(".editable),", ".outline:")
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
extractAndLoadChunks(["stickerInspected]:"], /(?:(?:Promise\.all\(\[)?((?:\i\.e\("?[^)]+?"?\),?)+?)(?:\]\))?|Promise\.resolve\(\))\.then\(\i\.bind\(\i,"?([^)]+?)"?\)\)/)
findComponentByCode(".customizationSectionBackground")
findComponentByCode(".greenTooltip,", ".greenTooltipContent")
findComponentByCode(".hiddenVisually]:")
findComponentByCode(".inlineMediaEmbed")
findComponentByCode(".withFooter]:", "childrenMessageContent:")
ill remove the fixmes
cool
actually nvm
finding a proper find for plainfoldericons looks atrocious
giv something else to fix
oh
ill do that, i wrote that one iirc
read
pushed
surely thats fine
okay
so
anything else i can fix
or was that it
should i do the component finds?
@odd heath
yea but veeeeeev is doing the no module finds
?
oh?
i can do the component finds too if u want to do the patch finds instead
its pretty easy
ty
fine then
i prefer patch finds anyway
ill do pip and fakenitro?
for the finds that use classNames you can just search up that classname and find the module that exports it
then search for that modules id
often times theres only one user

๐คทโโ๏ธ
any objection to this

no
lol
that means theyre referring to a non existent class
the bundler changed it to that
amazing
insane
how bad of a patch is this ๐ญ
horrible
there isn't much to work with
function g(e) {
let {folderNode: t, hovered: n, sorting: l} = e
, {children: i} = t
, a = n && l
, c = (0,
r.jsx)("div", {
className: h.hJ,
children: (0,
r.jsx)("div", {
className: h.Eh,
children: (0,
r.jsx)(o.sjq, {
size: "sm",
color: "currentColor"
})
})
})
, u = (0,
r.jsx)("div", {
className: h.qJ,
children: (0,
r.jsx)("div", {
className: h.jg,
children: i.slice(0, 4).map(e => (0,
r.jsx)(f, {
guildId: e.id,
animate: n
}, e.id))
})
});
return (0,
r.jsxs)("div", {
"aria-hidden": !0,
className: s()({
[h.NG]: a,
[h.yd]: !a
}),
children: [!a && c, u]
})
}
Doesnt work anymore for some reason lol.
??
vtest sadanslargehole-pr
Now testing! 
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
vtest sadanslargehole-pr
Now testing! 
I did ye
pretty useless tbh
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
BetterSettings (took 6.7ms):
ID: 507060
Match: ```
/(?<=((\i),"contextType",\i.\i);)/
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__ImageFilename (found no module):__**
ID: `-`
Match: ```
.clickableWrapper
PictureInPicture (found no module):
ID: -
Match: ```
.removeMosaicItemHoverButton),
**__ThemeAttributes (found no module):__**
ID: `-`
Match: ```
.messageListItem
ViewIcons (found no module):
ID: -
Match: ```
.cursorPointer:null,children
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
ill do view icons
oh
now to fakenitro
wrong branch
probably because bundler cant prove that theres never a computed access to it
how is this a unique find ๐ญ
wait was fakenitro fixed
this is just false positive idk whats up
doing theme attributes
Failed to patch this Install
rename
C:\Users\xxxxx\AppData\Local\Discord\app-1.0.9221\resources\app.asar
C:\Users\xxxxx\AppData\Local\Discord\app-1.0.9221\resources_app.asar:
The system cannot find the file specified.
where is that
impossible to find this now lol
whats this
and the support channel is just 93% shitposts
we could add like
findByCodeLazy(".{class:actionBarIcon}")
atp why do we need to find it
that one is probably easy to remake anyway
im gonna break the find in purpose so someone else can work on it
What happens when the bug or crash occurs?
The voicemessage plugin doesnt work The button is not visible and this includes "voice message download"
What is the expected behaviour?
The voicemessage plugin doesnt work The button is not visible and this includes "voice message download"
How do you recreate this bug or crash?
You can't see the voice message button when you click upload thing
Errors
No response
Request Agreement
- [x] I am using Discord Stable or tri...
.RESPONSIVE?
that module only has svg
if they change the path we cant find it anymore
but we can find it with classname
okay fair enough
fucking retard spamming with alts
can we get reporter
vtest sadanslargehole-pr
Now testing! 
i dont understand why that branch keeps diverging
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__PictureInPicture (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton),
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
**__PictureInPicture (found no module):__**
ID: `-`
Match: ```
.removeMosaicItemHoverButton),
SpotifyControls (took 9ms):
ID: 107750
Match: ```
/202===\i.status/
mapMangledModule("Transitioning to ", {
transitionTo: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
transitionToGuild: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
back: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...,
forward: (m) => {
if (typeof m !== "function") return false;
return stringMatches(Function.prototype.toString.call(m), parsedCode);
...
})
oh
PIP should be fixed
doing FriendsSince
satan i sent u a patch for pip
watch me push and break all the patches again
i pushed right after vee pulled ๐ญ
annoying to find
// Webpack Module 384816 - Patched by FriendsSince
0,
function(e, n, t) {
t.d(n, {
Z: () => O
});
var l = t(54381);
t(473749);
var i = t(442837)
, o = t(481060)
, r = t(246016)
, a = t(189156)
, c = t(706454)
, s = t(914010)
, d = t(246946)
, u = t(785717)
, f = t(250822)
, m = t(771362)
, p = t(280885)
, x = t(819602)
, h = t(78806)
, j = t(900927)
, v = t(678738)
, b = t(179828)
, g = t(878566)
, I = t(228168)
, y = t(388032)
, Z = t(199912);
function O(e) {
let {user: n, currentUser: t, displayProfile: O, onClose: T} = e
, {trackUserProfileAction: N} = (0,
u.KZ)()
, A = (0,
i.e7)([s.Z], () => s.Z.getGuildId())
, P = (0,
r.Y)({
userId: n.id
})
, E = (0,
i.e7)([d.Z], () => d.Z.hidePersonalInformation)
, _ = (0,
i.e7)([c.default], () => c.default.locale)
, C = (0,
m.Z)(n.id)
, S = (0,
f.Z)(n.id);
return (0,
l.jsxs)(o.zJl, {
fade: !0,
className: Z.scroller,
children: [(null == O ? void 0 : O.bio) != null && (null == O ? void 0 : O.bio) !== "" && !E && (0,
l.jsx)(p.Z, {
userBio: O.bio,
setLineClamp: !1
}), (null == O ? void 0 : O.guildId) != null && (0,
l.jsx)(b.Z, {
user: n,
currentUser: t,
guildId: O.guildId
}), n.isProvisional && (0,
l.jsx)(v.Z, {
heading: y.intl.string(y.t.Iyka0U),
headingIcon: (0,
l.jsx)(o.Mgn, {
size: "xxs",
color: o.TVs.colors.TEXT_STRONG
}),
headingColor: "text-default",
children: (0,
l.jsx)(a.n, {
userId: n.id
})
}), P.length > 0 && (0,
l.jsx)(v.Z, {
heading: y.intl.string(y.t["Uv/eTx"]),
children: (0,
l.jsx)(h.Z, {
applicationIds: P
})
}), (0,
l.jsx)(v.Z, {
heading: y.intl.string(y.t.a6XYD9),
children: (0,
l.jsx)(j.Z, {
userId: n.id,
guildId: null == O ? void 0 : O.guildId,
tooltipDelay: I.vB
})
}), , Vencord.Plugins.plugins["FriendsSince"].FriendsSinceComponent({
userId: n.id,
isSidebar: false
}), C.length > 0 && (0,
l.jsx)(v.Z, {
heading: y.intl.string(y.t["3fe7U5"]),
scrollTargetId: I.Tb.CONNECTIONS,
children: (0,
l.jsx)(x.ZP, {
connectedAccounts: C,
className: Z.connections,
userId: n.id,
locale: _
})
}), S.length > 0 && (0,
l.jsx)(v.Z, {
heading: y.intl.string(y.t.PHjkRE),
children: S.map(e => (0,
l.jsx)(x.tH, {
className: Z.appsConnections,
applicationRoleConnection: e,
locale: _,
onApplicationClicked: () => {
N({
action: "PRESS_APP_CONNECTION"
}),
T()
}
,
selectedGuildId: null != A ? A : void 0
}, e.application.id))
}), (0,
l.jsx)(g.Z, {
userId: n.id
})]
})
}
}
//# sourceURL=file:///WebpackModule384816
old version
doesnt matter can be changed later
OMG STOP
my thoughts when i write that
It's so dumb
i searched for ["Uv/eTx"] with regex mode
hop on vscode fuzzy search
no its my fault
lol
what the fuck is that code lmao
its for the default voicemoji
it has a lot of other emojis too
nah
it seems way more like a status intention than a chat
find: "#{intl::DISCOVERABLE_GUILD_HEADER_PUBLIC_INFO}",
i don't like this find, couldn't find anything better
jason citron trasngender
.+? makes the rest kind of pointless. either drop it or use a upper limit length
this is very bad, the first group is so generic
".ONLINE,statusColor:", // Nameplate preview
this entire patch is very generic and has no real anchor besides: a div with a class then as much bullshit as you want then children with some slice call
feel free to look for a better anchor 
yea fair enough actually
vtest sadanslargehole-pr
Now testing! 
@limber skiff the first or second
soon
both kinda
review those commits @austere talon
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
why ๐ญ
false positive
but whatever doesnt matter
why did u change this back to regex ๐ญ
vtest sadanslargehole-pr
Now testing! 
it gets turned to regex
no i think?
when u feed a string to replace it gets turned to regex
the idea was*
it doesnt
or do u mean in vencord
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
findByCode(".actionBarIconaaaaaaaaaaa")
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
findByCode(".actionBarIconaaaaaaaaaaa")
vencord shouldnt
@austere talon did you ever do friendssice or should i
it doesnt turn into regex
@austere talon would you prefer this patch
{
find: '["VIDEO","CLIP","AUDIO"]',
replacement: {
match: /(?<=Math.max\(0.{0,140})("div",{className:.{0,70}children:)(\i.slice\(\i\))(?<=showDownload:(\i).+?isVisualMediaType:(\i).+?)/,
replace: (_, rest, origChildren, showDownload, isVisualMediaType) => `${rest}[${showDownload}&&${isVisualMediaType}&&$self.PictureInPictureButton(),...${origChildren}]`
}
}
so long
I could swear I read it somewhere
I will change it back
where are u adding
anyway that patch might be broken anyway
that module has two .CHAT
it should eitrher be global regex or specific one should be targeted
feels a bit too generic, too a quick look at and im pretty sure a better find exists
what do i do with this patch now
vchars โ
โโ โ โ EM DASH
@austere talon lmk if you want me to apply it
Can someone explain to me about the happenings?
vesktop included?
we are all migrating to Veecord
im kidding lol
big discord change so we have to fix a bunch of stuff
That also comes with a bunch of broken plugins
yes
yes
that's what we are fixing
But keep with the good work ๐
Was it bundler changes which impacted the packaging of modules casuing issues with that or only a issue with the module patching itself
if I may ask
actually that question makes no sense mb
discord devs monitoring this channel to revert the exact second we are done and push to main
wouldnt that just be mostly ineffective
i doubt it would be as breaking as it was when they changed it
and either way git rest and git push --force 
@odd heath did ml
๐ญ
ny bad
oh its a classname
yea im stupid
i just searched for obscured tbh ๐ญ
didnt think much
does anyone else fix patches by looking at how the patch applied before it got broken
yes if i have something to compare
I cant believe we still ahve this
I didnt
yes
I have stable open to compare
old version of stable
iu dont have old stable
thats why i couldnt loiok
anyway lemme patch that bad fix rwq ๐ญ
@odd heath
yeah i dont think i need those now
bundle_before_mangle.7z
oki
sorry for that one
usually i wouldve checked again but this one completely slipped from me ๐ญ
I would notice the ]: otherwise
anyone know why reporter opens steam when launched
happens ig
hi how do you load this in a client
you cant lol
its just the modules
nothing else
vtest sadanslargehole-pr
Now testing! 
MemberCount (errored):
ID: 888255
Match: ```
/children:[(\i.useMemo[^}]+"aria-multiselectable")(?<=className:(\i),.+?)/
Error: ```
Unexpected token '?.'
FriendsSince (found no module):
ID: -
Match: ```
.connections,userId:
findByCode(".actionBarIconaaaaaaaaaaa")
RoleColorEverywhere (had no effect):
ID: 112753
Match: ```
/tag:"strong",variant:"text-md/medium"(?<=onContextMenu:.{0,15}((\i),(\i),\i).+?)/
**__MemberCount (errored):__**
ID: `888255`
Match: ```
/children:\[(\i\.useMemo[^}]+"aria-multiselectable")(?<=className:(\i),.+?)/
Error: ```
Unexpected token '?.'
**__FriendsSince (found no module):__**
ID: `-`
Match: ```
.connections,userId:
DisableDeepLinks (took 12.1ms):
ID: 125820
Match: ```
/\i.\i.openNativeAppModal/
findByCode(".actionBarIconaaaaaaaaaaa")
regressed W
nookies not testing if regex works
smhmh
how dare you
ironic to say after ridiculously fucking up a patch
wha
what is there to fix
maybe too unspecific
cooked

match: /isProvisional.{0,50}?className:\i\.\i,children:\[(?<=isFocused:(\i).+?)/,
this feels more straightforward
lol I saw that ๐ญ
what else is there to anchor on ๐ญ
@dusk blaze your job is going to get stolen
take advantage of the fact that vban can take up to 200 people
not much better but like
more readable and less cursed
thank god some files are just the findCssClassesLazy change
or else I would stay here all day
imagine if discord didn't un-mangle the css class names 
it'd be better to limit the length of the wildcard here or find a better anchor
this seems so generic O.o
yeah I agree
ty
whos keeps doing these insane wildcards
git blame
me
they are fine wdym
It's a function called right before the return for the component
and the component is only a single children
not that great
i think this is fine, the return is being anchored by a very specific back-reference
very easy to pmatch wrong thing
did you check the code?
alr
agreed
there's another patch with a very similar match using renderReactions
search on the diff
{
find: "#{intl::REMOVE_ATTACHMENT_BODY}",
replacement: {
match: /children:(\[[^\]]+?this.renderSuppressConfirmModal[^\]]+?\])/,
replace: "children:Vencord.Api.MessageAccessories._modifyAccessories($1,this.props)",
},
},
lesser of two evils
the reason I don't like it is because a patch like that can match something like this:
return thing.renderReactions(x);
// 10k bytes of code here
// completely unrelated code
children: [...]
imagine if Discord adds a second call of renderReactions() to that file in a very different spot
we will patch the first children that come after that
i really dont like infinite length wildcards
if you must use wildcard, limit length like .{0,300}?
github load files page in less than a minute challenge
wdym
What happens when the bug or crash occurs?
Button is missing
What is the expected behaviour?
I expect open Discord/Vencord and view the button "Read all"
How do you recreate this bug or crash?
Open Discord/Vencord after last update
Errors
Uncaught Error: Sentry successfully disabled
at r.set (noTrack.ts:129:23)
at sentry.dd9e730a1a1c69a3.js:453:37356
at sentry.dd9e730a1a1c69a3.js:453:37891
web.d4014ee71ec82f1b.js:12
[Spellchecker] sh is not a valid local...
not a fan of this although the first part of that match seems pointless anyway

