#👾-core-development
1 messages · Page 44 of 1
yeah but they use a different endpoint
yes, the old one is just normal message
that's why it doesnt have ratelimit

it only lets u wave like 3 times before u explode
the message send has hardly any rate limit so u can send dozens of waves
there's a snippet in general pins that I wrote ages ago when I played around with it
it let's u send up to 3 welcome stickers in one message
and u can spam that shit
and use it without nitro
it's funny
idk It's been ages since I did the thing with the bot
I just remember I spammed a bunch of welcome stickers
each were replying to the last sent message
the normal message sends I mentioned only work in reply to welcome messages iirc
oh yeah no the method I was using could reply to non welcome messages
it was a chain
try this tho
it still works I tried it earlier
triple wave is hilarious
noone sees it coming
the rate limit is different for each message
is that just greet
yes
yes
I think they only did it to stop greet spam
so you can chain it and spam greets
I'm more so surprised they allow you to greet non welcome messages considering it would be trivial to check
you just need to change the message reference
Was this using greeter?
like I said it only lets u use them in reply to a welcome message
try one of the welcome messages in #moderator-only
ye
not sure if the setting needs to be on
the greet one
wait it sent distok?
that might just be an incompatibility between nitro spoof and greeter lol
try disabling fake nitro
a bit
yop
that's like the legacy way of greeting
I assume that's why they have so strict checks on it
both ways are cursed
yes
yes
it's the same concept as greeter
u can send up to 3 stickers per message
discord just doesn't let u do it in the client
the old code was really deranged
too hacky for my liking
and I do like myself some hacky code from time to time
it makes errors not have discord voice as location
for some reason discord voice monkey patches console
So all the errors originate from discord voice even if they're not from there
just weird
i cant even enable it when i try to install
I never noticed
what client do u use
discord desktop?
desktop
which
and why
I never used that feature before
customs
what do u use it for
mute
I have it on my mouse
I used to but I moved to number keys
horror
I use 4 to toggle mute
I use the button to go forward on navigatioh
yes
😔
fixing vc should be easy
I vc a lot
streaming slightly harder
do u Windows or Linux
windows
screen sharing with audio on Linux virtually impossible
cause electron sucks
do u care about Audio
armcord had working stream but sound didnt work
idk how hard it is on Windows
PR
no idea how

literally dont know where to start
it seems to be easy
wait
Access information about media sources that can be used to capture audio and video from the desktop using the navigator.mediaDevices.getUserMedia API.
oh
I honestly dont know how discord doesnt support sharing your whole desktop audio yet
even skype did it
electron only does the opposite
like 8 years ago
you can share audio only if sharing whole screen
not if sharing window
just read that doc I sent
it's pretty straight forward
ew
but interesting
OHHH
THATS WHY ARMCORD AUDIO DIDNT WORK
you needed to share the whole screen??
I think armcord just doesn't support it

this mentions that sharing Audio on Mac isn't possible but doesn't mention Linux
tbh I stopped using armcord cuz lf it
does that mean it's somehow possible on Linux??
I had to change between discord clients to screenshare
are you using vencord desktop as main client already?
dang
try running this in vencord desktop navigator.mediaDevices.getUserMedia({ audio: { mandatory: { chromeMediaSource: 'desktop' } }, video: { mandatory: { chromeMediaSource: 'desktop' } } })
I'll try another time then
whats a video tag
html
ah
const video = document.querySelector('video')
video.srcObject = stream
video.onloadedmetadata = (e) => video.play()
I will get upp
i have vague memories of no audio on linux being because of not being able to stop people from streaming music or other copyrighted stuff as easily as it is on windows/mac but I have no actual source for that
my brain could have just made it up
sike it's 6 am
do you have school?
same
my cat is sleeping on my arm I'm not legally allowed to get up
not possible natively but u can install a kernel module which creates a local loopback of the internal audio
i don't recall the name of the module but i think discord supports it natively now
After implementing it, it feels even more useless! this should probably be prefered #👾-core-development message
Discord Account
RyanCaoDev#0428
What happens when the bug or crash occurs?
When you click on an avatar added by the WhoReacted plugin to see the user popout, it also triggers the click and adds a reaction for yourself.
What is the expected behaviour?
The expected behavior is probably to only add the reaction when you click in the box somewhere that isn't a user avatar.
How do you recreate this bug or crash?
- Use the WhoReacted
- Click an avatar in a reaction
Er...
Discord Account
No response
What happens when the bug or crash occurs?
When trying to view any user's profile (even my own), it warns me that it couldn't load the profile banner, About Me and badges.
What is the expected behaviour?
It should show all of the user information as normal.
How do you recreate this bug or crash?
- Go to any server
- Attempt to view any user's profile, for example via the member list or by clicking on a profile picture in the chat
Er...
Gives Discord a better spellcheck which helps me a lot because the normal spellcheck on Discord just frankly isn't that great in my opinion.
Here is the BetterDiscord plugin version of it: https://betterdiscord.app/plugin/SpellCheck


Pops out the connections when clicking on a profile for easy access.
BetterDiscord plugin:
https://betterdiscord.app/plugin/ShowConnections

Improves the readability of names if their color is or almost exactly the same as the background, changing the color locally.
Raw Link to the BetterDiscord plugin: https://tharki-god.github.io/BetterDiscordPlugins/ShowNames.plugin.js

virus
it was a surprisingly small thing to fix
they were complaining about the installer more than the software lmfao
what.
this is how installer development works!
sometimes you cant remove your installation folders for one reason or another
NO ITS NOT
you have to manually specify it in NSIS because if it fails then it crashes the uninstall procedure

or it shows an ugly messagebox saying that it cant remove its files
the thing is
the other policy violation is a smartscreen error
i cant fix that lol
OH FINALLY
I GOT IT TO SHOW THE ERROR
OKAY
i had to run it in windows sandbox
this is so dumb
windows sandbox more like litterbox !!!
ah
wut
screen recorder not working guh
well it's just like that when the profile popout doesn't fit the window's height
is it a discord issue
looks like my css issue
😭
how about force them become nitro profile like fakeprofiletheme
@lean elm @dawn coyote latest UserVoiceShow css fixes appearance in popouts, but breaks full profile view
(yes, i tried with no custom css/themes)
doesn’t really@look broken to me
tbh didn’t even know it shows on the profile there too
will try to fix it when i’m home if none else does before me
lol
Yea guy who submitted that weird fix is a moron, I PR'd a proper fix
@dawn coyote you gonna take that? 
@dawn coyote no front xd
I only used vsc search to find the plug-in and added the margin, it looked fine to me so I put it on github 
oh it was in a folder, that why I wasn’t able to find the ts file lmfao
Omg
I'll take that back xd
lmao
It was like 11pm and randomly saw it while in vc
didn’t bother too much to look in how the plug-in works
for protest, I’ll keep my version on local
Yea tho in the beginning I also didn't check if the styling was right when I click my own profile
Wym
me forgetting to add installation entries in the registry and also we can use the vencord installer name it seems
you're rate limited for some reason. Just wait
Does anyone know how I can add my built version of Vencord to my browser as an extension? I tried adding the browser folder to my extensions and it failed and said something was wrong with the version so I fixed that and it loaded but it doesn't change anything in discord. I tried it in chrome and edge.
you need to build it
pnpm buildWeb
then there's extension.zip and extension-unpacked in dist
why not add it on every os?
same goes for the other default menus, could add them all
Thank you 🙂
Note: The default menu will be created automatically if the app does not set one. It contains standard items such as File, Edit, View, Window and Help.
are any other of these relevant?
could add them too
oh well i thought that come second review they might get a bit upsetti
because the tool is called installer
but im installing it as patcher
and it seems like they changed the policy cuz i looked and there's loads of "installer"s
I didn't know it was this simple to add the entire menu row back
but if it is then by all means go ahead
ah but u need to make a new release right
i can update the existing bundle
virus
just have to wait for it to build in actions
why not build it urself
Currently, the plugin functions by inserting the encrypted text into the message box, and then the user must press "enter" to send the message. However, it could be made more efficient by having the plugin send the encrypted message directly to the server, thus eliminating the extra step. Additionally, the button in the modal window is labelled "send," which may mislead users into believing that the message is being sent to the server, even though it is not.

Should I only name the index file like this or all files? And what does the x mean?
not sure actually
and (x) as in .ts|.tsx
Ahhh. Thanks for the help 🙂
just the index file
src/plugins/MyPlugin/index.desktop.ts
**common.mjs: **Lines 78-82
if (mod === "dev" && !watch) continue;
if (mod === "web" && kind === "discordDesktop") continue;
if (mod === "desktop" && kind === "web") continue;
if (mod === "discordDesktop" && kind !== "discordDesktop") continue;
if (mod === "vencordDesktop" && kind !== "vencordDesktop") continue;
That's weird if I rename my index file from index.tsx -> index.desktop.tsx I get
Build failed
Build failed with 1 error:
import-plugins:~plugins:20:16: ERROR: Could not resolve "./plugins/betterScreenshare"
Did I miss something?
ah
yeah that makes sense
what do you prefer
plugins/BetterScreenshare/index.desktop.ts
plugins/BetterScreenshare.desktop/index.ts
The first one
But I think the second one is better because you will see it immediately in the plugins folder instead of having to open it first.
the second one brings consistency to the plugins folder structure and logically would be the one i pick, the first one makes sense semantically but might be confusing to those who dont quite understand how it works, + the aforementioned issue
the second one,. it should be the suffix filename
2nd one
lmao why did u delete ur triple greet @limber skiff
are u worried about getting banned
you won't
plugins/BetterScreenshare/index.ts

@jagged cloak what did you ping me for lol
distok
oh
@limber skiff
me
this worked
fire
I got jumpscared with audio loop
btw the Fake nitro emojis are broken again, it dont hide links, and shows as normal picture...
I hope it's okay that I added my own plugin library. I already asked on the Discord but no one could tell me if it is. Maybe someone here can tell me :).
nooooppp you are literally devilbro
😭
looks fine from glancing at this giant ass pr
this begins the era of vencord plugin libraries 
idk lol #notmyjob
If I setup a selfhosted backend is it possible to limit who can use it
I don't see an env var but can you do that through discord dev portal or something
i think u can make the app private or smth
other than that ucould pr that as a feature
idk go
I'm sure I could figure out how to add an if block though, not sure how go tooling works though
ah u cant
its pretty simple
also I assume size limit is in bytes?
probably
me omw to sync the original doom game
guess ill pr
actually I shouldn't really need to use tooling at all because docker lol
min-height seems fixed the issue
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
None
JSHandle@error
oh no
WebContextMenus (had no effect):
ID: 638525
Match: /(?<=showApplicationCommandSuggestions;)if\(![A-Za-z_$][\w$]*\.[A-Za-z_$][\w$]*\)/
WebContextMenus (had no effect):
ID: 638525
Match: /("submit-button".+?)(\(0,[A-Za-z_$][\w$]*\.jsx\)\([A-Za-z_$][\w$]*\.MenuGroup,\{children:[A-Za-z_$][\w$]*\}\),){2}/
DisableDMCallIdle (found no module):
ID: -
Match: .Messages.BOT_CALL_IDLE_DISCONNECT
None
JSHandle@error
shouldnt disabledmcallidle be yoinked
ye gonna delete
4d83652 GreetStickerPicker: greet with stickers of your... - Vendicated
@limber skiff
u know how ctx menu api forces u to check children so u dont add duplicates?
we can just do this instead
adding this btw
tbh I dont like both ways
lol it doesnt use context menu api
2 elements shouldnt have the same id
wdym
so we can just filter it
hmmm
niceee
ahhh
Eggcrypt is a fun little plugin that some people used to use on other clients. There's an iOS tweak for it, and there's a Powercord plugin. I decided to port it using the Web Crypto API. I may add support for other profiles in the future.
yes
yepp
is there really no standard way to check if a []string contains a string in go
wtf
we will rewrite the backend in rust inshallah
hop off docker
docker is great
well whoever made this is bad at docker then
oh I guess the readme says to change it
but why isn't it redis:6379 by default
thats dumb
Also, as a side question, is the discord client the one making the request to /v1/oauth/callback?
thanks sans
Would be happy about a plugin that opens links in apps, for example Spotify Links opens the Spotify program and not the browser or Steam Links opens the Steam program.
the reason is because go only recently introduced generics
but im pretty sure they added that method along with generics
slices.Contains()
oh u found it
Discord Account
me
What happens when the bug or crash occurs?
when disableMinSize is false, it doesn't check if the user has put in a custom MIN_WIDTH or MIN_HEIGHT
https://github.com/Vendicated/Vencord/blob/main/src/main/patcher.ts#L115-L124
What is the expected behaviour?
The patcher should respect the user's MIN_WIDTH and MIN_HEIGHT, only setting defaults if it doesn't already exist.
How do you recreate this bug or crash?
Set custom MIN_WIDTH and MIN_HEIGHT and t...
Should probably also allow pronoundb api?
?
that pr already removes csp fully
oh, is that a good idea?
what if discord has a vulnerability?
seems i can't do fetch("https://raw.githubusercontent.com/") on a local server which has no csp header
nvm, i'm dumb
it's removing the header from github's response
or any response (it seems)
is this relevant?
@turbid hatch why did you merge so weird
You had permissions to add commits to my fork
because i tried pushing to your fork and it refused to let me

so i just did it myself
it rejected my push when i tried doing so
dont know why
The entire commits name is now "optimize slightly"
huh
yes because i cherrypicked it off of the PR fork because it fucked up
i had to make an edit to their PR, tried pushing it, github refused it
Could you at least add me as a co-author to the commit if you can
Backend
is it?
Probably TymanWasTaken tbeckman530@gmail.com
blackman530
what the fuck is git on
i edit 5899743
and it creates a NEW commit
i literally told it to amend the message
okay
im done im too tired for this lol
lol
git is pissing me off
want me to fix it up
🙏
okay in a bit
ty
No
oh wait
I read it completely wrong
tbeckman530
I think it's cause tbeck isn't a word so my brain just "fixed" it to the nearest word
mobile + api errors
Yes, I feel like it would also need other features but they're not really important on Discord since they can already be achieved in other ways (such as moving the server to the top or adding a star)
just a bit verified
Sounds cool! What would a valid non-spammy reason to edit repeated text be though?
This seems more like a devtool a la vscode's multicursor. It seems quite niche beyond that.
somehow i forgot about breakpoints
use breakpoints!
yes that would be so useful i hope the dev makes it
ok, kind of managed to get viewicons to work with webhooks!
can't find a good way that doesn't break with name changes
the distance between a possible name capture and the actual target is very far
is there a good solution other than writing all of the code in-between?
small nitpick about FakeNitro but if you switch to a light client theme from dark stock then discord won't save that you switched to a light theme on other devices
kind of makes sense i guess
seems right
wait do you need?
can you explain a bit better
discord itself kind of shows this bug
hmm, maybe not a bug, i just realised why this is a feature!
but you can bypass it
great plugin
can you rearrange them?
pogggg
nuh uh
but wouldnt be hard to do
i don't think i will add categories
kinda useless imo
i need a way to capture "W" for openImage without hardcoding
ya
send me your find
fnd.
fnd
should i add a setting to also show the dms in the normal list?
i think thatd be kinda useless
why would someone want duplicate entries
but would be easy peasy to do
i might as well ig
muscle memory ig?
{
find: "().avatarWrapperNonUserBot",
replacement: {
match: /(onClick:)(\i\|\|\i)\?(void 0)/,
replace: "style:($2)?{cursor:\"pointer\"}:{},$1$2?()=>{$self.openImage(W)}"
}
}
this?
\i=(\i).avatarSrc,
i need to capture it in the same patch though
unless... i guess i could store it in a variable? (using lambda)
is there a better way though?
i have used that site likely more times than i've eaten
i have used discord in my entire life more time than i've spent photographing sushi!
i don't know whether this should worry me
Also shout-out to regexr
There's a replace function
:O
{
find: "().avatarWrapperNonUserBot",
replacement: {
match: /(avatarPositionPanel.+?)onClick:(\i\|\|\i)\?void 0(?<=,(\i)=\i\.avatarSrc.+?))/,
replace: '$1style:($2)?{cursor:"pointer"}:{},onClick:$2?()=>{$self.openImage($3)}'
}
}
try this @lime stone
if u wanna test
the code is so hacky cause discord's dm code is mega deranged
i will surely break it :3
very no surprise me
i had to monkey patch the return type and walk the react tree
monkey patch 🤨
return type??
**index.tsx: **Lines 73-100
Wrapper: ErrorBoundary.wrap((props: { originalComponent: React.ComponentType<any>; selectedChannelId: string; }) => {
const original = <props.originalComponent {...props} />;
const originalRender = original.type.render;
original.type.render = (...args: any[]) => {
const res = originalRender(...args);
try {
if (seen.has(res)) return res;
seen.add(res);
const container = findInReactTree(res, node => node?.props?.containerRef);
const idx = container.props.children.findIndex(n => n?.props?.className?.startsWith("privateChannelsHeaderContainer"));
if (idx !== -1)
container.props.children.splice(
idx - 1,
0,
<PinnedDmsComponent />
);
} catch (e) {
new Logger("PinDMs").error("Failed to patch DM list", e);
}
return res;
};
return original;
})
javascript has no return types, right??
i dont think there's a better way to do it
that's what makes so great! 🌈🗑️ /s
ven insane
because discord uses their abstract List component
what discord code does to a mf
oh i see
i was trying to avoid repeated wildcards
I can try making it use regex patch later if you want
huh?
.{[anything],[infinity]}
it's fine on that case
most frequently .+ and .*
you will also have better performance likely
huh?
i feel like using a wildcard would slow down startup
(maybe not noticeable though :p)
let's see what the rest of vencord is doing
(avatarPositionPanel.+?)onClick:(\i\|\|\i)\?void 0(?<=,(\i)=\i\.avatarSrc.+?))
^ match avatarPositionPanel ^ match predicate ^ look behind to capture the var name
and walk til find onClick and rest of things
oh, you can look behind?
avatarPositionPanel is wayyy less common than onClick
that gives you better performance
i thought that was only supported on Google Chrome v. 28519258912589582959
or something
.+ is fine but you should always make them lazy, never ever nest them (ReDOS) and try to avoid using them in lookarounds
lol outdated stackoverflow posts my beloved
maybe it's most efficient to capture into a var using a lambda though?

In this case it's fine
ye
ven approved™
no, lookarounds have good support in js
but lookarounds and other extensions mean ur engine is more vulnerable
outdated stackoverflow probably :p
lookarounds in js so good cuz they support non fixed lengths matches
Javascript regular expressions have the potential to take hours to complete
doesn't seem to work though
oh, sounds nice to watch! /s
really?
that's what i mentioned just now, ReDoS (regex denial of service)
send me the regex that your console prints
ah, unmatched parens
it's caused by exponential runtime when nesting quantifiers
oh
it's OK now
wait huh
like (a+)+b will take hours on an input string of many a not followed by b (because it will not match so the js regex engine will try every single path of possibly matching)
where?
silly js
at the end
anyway thanks for this! you are one of the most regex god/goddess/[insert] of all time!
Deity
this is why @umbral hill has a regex implementation that isnt in javascript
despite the rest of the bot being js
What's the regex implemented in
rust
Oo
Its syntax is similar to Perl-style regular expressions, but lacks a few features like look around and backreferences. In exchange, all searches execute in linear time with respect to the size of the regular expression and search text.
js regex doesn't guarantee that so worst case is exponential time growth in regard to input length
aka sacrifice a few features that people dont generally use to protect against ReDoS
vencord in rust ETA?
explode
probably also for simplicity :P
probably! although i dont believe its possible to implement those features without breaking the linear time guarantee
hmm, maybe port discord to java and then we can use a nice patching lib like https://github.com/SpongePowered/Mixin
(joke)
well, i guess there was a java version of discord?
Well yeah that engine uses finite automata but finite automata only support regular grammars and lookarounds and back references aren't regular so I think supporting those wouldn't be trivial
@limber skiff should i co-author?
nah it's fine
assuming that's indifference rather than total repulsion i will anyway :3
yep
well
not even trivial
just impossible with finite automata
as far as im aware, im only partially fluent in the theory of it
with pure fininite automata yeah but yo could combine them with other logic perhaps
don't mind me, just stealing your email address
idk
leaked
🤮
wdym
resend them under a webhook
generally how you make people say things they didn't here on discord :3
lmao
lol
I love smiley dealer
lore pog
me 2
lore pog
slow smiley as usual smh
it's okay it doesn't get paid so it's a bit slow
blocked :3
ok now that my pr was (jankily) merged time to selfhost vencord backend
lore jumpscare
pog
add it to my collection
by fix default avatars you mean fix the fact that the format setting will make them use not png?
oh i see what u mean
it causes an error in the console
let { format } = settings.store;
if (url.startsWith("/")) {
url = window.location.protocol + "//" + window.location.host + url;
format = "png";
}
const u = new URL(url);
const format = url.startsWith("/") ? "png" : settings.store.format;
const u = new URL(url, location);
this does the same
you should always aspire to make your code redeclare as little variables as possible imo
makes it more readable
i thought that was sarcastic lol
toot
wouldn't you have to duplicate the check to modify the url to be correct?
this one
what
this works fine
look at the screenshot i sent
window.location
you're using it in ur own code as not a string
typescript is stupid
i guess just add toString()?
no
or href?
actually toString() works
well it's doing its job
the types for it are wrong
yeah
I had the same happening with other global apis, it's really annoying
which if the types are default JS types it is the problem of the TS devs but whatever
its not the language itself, it is doing what is asked of it (checking if location is a string or url, which it is not)
well i assume it compiles but vscode will bully me :'(
just use location.href ye
//@ts-expect-error or what ven said
ts expect error is a bad idea
ts bug you can't account for 🤷♂️
sign it if you care that much :p
i think passing location is actually not correct and the reason it works is because the URL constructor like many other js apis just implicitly converts the input to a string
is this js or c++ any more?
which makes it technically okay to pass an URL but it's not the intended type
ah, yeah it's not a TS bug
the actual spec says URL(url: string, base: string)
you're correct ven
it's implicitly tostringing it
its technically wrong so typescript is right in this regard
I'm more surprised that location.origin does not derive from URL
hey, that was my idea
it's so close but missing a few members
I believe ven did actually try and load swc via webassembly once
yeah but its hella slow cause serialisation & ipc is slow
speedy web compiler
is that actually what it stands for
it has a JS AST
but yeah it's super slow because serialisation
Slower Web Compiler
swc took ~1s to parse a 1.2mb module, acorn was nearly instant

epic rap battles of history: discord's shitcode vs SWC
naaah its not swcs fault
that's interesting
whats acorn?
pure js js parser
did you actually end up using it
is shitcode a noun now?
i see it a lot!
the reason SWC was so slow is because you have to run wasm in a separate thread. To communicate with it, you need to first serialise the input string and send it over, then later serialise the return object
yeah, the main issue with wasm in general
that's the slow part
yeah true, wasm is almost never worth it
tbh even for binary manipulation, TypedArrays are incredibly fast so it's usually not worth it to use wasm
idk I just combined the adjective "shit" and the noun "code" in order to make a more fun word
shitcode is programmer slang
yea
yop
yeah, well the slow part iirc was wasm having to write into the memory blob of it self, sending me a pointer and us having to read this pointer. the fun part is it doesn't even have access to write into it's own memory
it feels like manually passing sparks in your CPU, not really the concept JS was made for
wasm is only good if you're doing most of your stuff in wasm and the js bit is just a thin wrapper
if you're constantly passing data then its not worth it
pins always seem to go to the bottom
if you can't reorder them that's annoying :(
anyway i wasn't sure whether you were saying my idea was pointless or another one
kind of obvious but pins also don't work for "buried" dms
well, not even buried
just any dm that's not on the list any more
open it again then
so true
like with channels
I've done such plugin before too, only issue I was facing was that the dms list is lazy scrolled and you'd have to patch it
wdym
typo, edited
i don't touch any of the original ui
well, the dms list of people is a lazy scroller, meaning it'll only render as much as screen height allows
i just patched the DMChannel component to render null if it's pinned and not rendered by me and then just render each pinned channel myself
that'll cause issues with the scroller, I can tell from experience
this is what you need to patch
you essentially patch the parent to modify sections
oh i see what u mean
wow discord's code for that is even more terrible than i thought
holy shit horror
discord carefully writing the worst react code you've ever seen
question is whether i care
just dont pin that many channels
I mean, there could be better implementations of lazy scrolling honest
if u pin that many channels u might as well just not use the plugin
I wouldn't go that route
haha
.
i think it's best to make a feature work :P
yeah
ohh
ig they were lame when they joined then changed name
read the rules dumbass
have fun
no u
lmao
nvm, i think the R is another character
cyrillic possibly?
anime gif :D
anime gif :D
ye
i think it's related in some way
i just sound smarter using that term :)
even though it could be totally wrong
literally a name smh
@nocturne haven i assume sections stands for how many items each section has. So to render 3 pinnes dms I would need to change Sections from 5, 184 to 3, 5, 181 and then patch renderSection and renderRow to add my own handling?
but possibly both sounds very smart and also makes you sound less stupid if you were wrong
y'all should transliterate it instead of just lame face
no
yes
ya
vencord logic though, won't argue
husk
we're on the server that created <@&1073655264923881602>
<@&1073655264923881602> explod
explod
Not exactly, imagine section as category, so let's imagine you have those categories:
-- Cat 1 --
item
item
-- Cat 2 --
item
item
item
-- Cat 3 --
item
would be now [2, 3, 1]
isnt that exactly what i said
I might be confusing it I guess
It's a library, back when discord was made this was best software
hm, does viewicons work on the sidebar card for users?
does that library ignore 0 sections
reading your message again makes sense now, my bad 
no clue, I don't think so though
For creating new UI component do I patch the parent component?
ew wtf is preRenderedChildren
is that cached children or what
seems to only be the non dms
it's just a number it seems
yeah
weird name though
its always 5




