#👾-core-development
1 messages · Page 93 of 1

src={user.getAvatarURL(undefined, 80, true)}
src={user.getAvatarURL(undefined, 512, true)}
was this an accident..?
WANNACRY-OPS???
I realise that but surely undefined is preferred in modern js? (and I assumed you got this from copying Discord code
)
It's not a big deal and the code looked pretty good to me so i approved :P
oops
i prefer void 0 :p
i can't seem to resolve it 
you do it then :P
is it possible to get esbuild to ignore readme.md in userplugins
nvm fixed by putting it in .github
also technically u can still override undefined now
(but that's not why)
i find essentially casting 0 to undefined a bit weird as primarily a user of other languages such as Java and C++ lol
why is that there?
tired of copying plugins between machines so im making it a git repo
I know (void)[thing]; works in c++ though
compromise: void undefined

😎
/run ```js
console.log(void undefined)
Here is your js(18.15.0) output @austere talon
undefined
so good
js has too many quirks lol
i mean void is actually useful
or maybe not enough
it's main use case for me is when i want to call a function and also return void
if (stuff) {
thing()
return
}``` vs ```js
if (stuff)
return void thing()
return thing() doesn't guarantee the return value is void
or you can pretend you're a C developer 🔥
void function lmao() {
}```
(this immediately discards the function, very epic)
/run
#include <iostream>
void myEpicFunction();
const char *myEpicFunctionWhichReturnsACoolThing();
int main() {
myEpicFunction();
return 0;
}
void myEpicFunction() {
return void(myEpicFunctionWhichReturnsACoolThing());
std::cout << "This code doesn't run 😎";
}
const char *myEpicFunctionWhichReturnsACoolThing() {
std::cout << "🚎\n";
return "very cool";
}
Here is your c++(10.2.0) output @lime stone
🚎
oh, i got confused lmao
yay
so looks like the void cast in c++ works pretty similar 
however, js is weirder as you can actually use the value of void x
yeah but it's always undefined
it feels like javascript was designed to have enough different nulls to keep the programming from being bored
null, undefined , void 0
are there any more?
lol
(average vencord-dev conversation)
type Banana struct {
X string
}
var banana Banana
println(banana.X) // ""
it's funny
can plugin-author-modal have dev merged into it
one of my userplugins depends on the usrbg change and crashes without https://cdn.discordapp.com/emojis/1076702280117669908.gif?size=48&name=fadeaway&quality=lossless
also how will cobu links work, since theyre not in discord connections
they won't

idk if I wanna add hardcoded connections
imo website is enough
you will make codeburg.domain.com a redirect to ur cobu
codeburger
info["Last Crash Reason"] = (await DiscordNative.processUtils.getLastCrash())?.rendererCrashReason ?? "N/A";
if (IS_DISCORD_DESKTOP) {
should probably also only add if crash.date is recentish?
or just include the date in the message
does date actually work?
it's not set on a manually triggered crash so i dont know
@austere talon @verbal pumice
idk bleh
HEY, go is nice.
:(
yes, I like go!
Chance this merge broke it so will need to review it to check.
good
i wouldve personally hit you
if you were insulting go

what is this?
:o
so we can have proper docs for plugins
instead of just the super basic description
oh my god i typed [bad site] instead of vencord.dev
thats more like it
why not PluginName.md?
this is purely for consumption by vencord.dev
not for end users
still seems more logical
u can already find it here
IgnoreActivities (had no effect):
ID: 215965
Match: /!([A-Za-z_$][\w$]*)(\)return null;var [A-Za-z_$][\w$]*=([A-Za-z_$][\w$]*)\.overlay.+?children:)(\[.{0,70}overlayStatusText.+?\])(?=}\)}\(\))/
None
font-weight: bold;
color: purple;
resetSocketOnError Cannot access 'Lde' before initialization
%c[FetchBlockedDomain]
font-weight: bold;
color: purple;
Unable to process domain list delta: Client revision number is null
%c[FetchBlockedDomain]
font-weight: bold;
color: purple;
Downloading the full bad domains file ```
hi reporter
yay
IgnoreActivities (had no effect):
ID: 215965
Match: /!([A-Za-z_$][\w$]*)(\)return null;var [A-Za-z_$][\w$]*=([A-Za-z_$][\w$]*)\.overlay.+?children:)(\[.{0,70}overlayStatusText.+?\])(?=}\)}\(\))/
None
font-weight: bold;
color: purple;
resetSocketOnError Cannot access 'Lde' before initialization
%c[FetchBlockedDomain]
font-weight: bold;
color: purple;
Unable to process domain list delta: Client revision number is null
%c[FetchBlockedDomain]
font-weight: bold;
color: purple;
Downloading the full bad domains file ```
yeah i'm tired but you seem to have the right idea (and you actually know what you're talking about lol)
i only took a brief look at vencord.dev's repo :p
ayo
the double header is a bit silly
oh god
thats more like it
@turbid hatch
this is already mergeable now technically, but will likely need more adjustements to the css in the future for additional markdown features like ul/ol, etc
right now, ThemeAttributes and ServerProfiles are the only plugins that have a README, so writing README for more plugins would be the next step after merging this
lmao
use color-mix NOW
Deploying with <a href="https://pages.dev"><img alt="Cloudflare Pages" src="https://user-images.githubusercontent.com/23264/106598434-9e719e00-654f-11eb-9e59-6167043cfa01.png" width="16"></a> Cloudflare Pages
<table><tr><td><strong>Latest commit:</strong> </td><td>
<code>660e71c</code>
</td></tr>
<tr><td><strong>Status:</strong></td><td> ✅ Deploy successful!</td></tr>
<tr><td><strong>Preview URL:</strong></td><td>
<a href='https://573d1c31.vencord-website.pages.dev'...
wtf is that
anyway
(aka 66 in hex)
pr is mergeable i think
probs
tho we will have to retouch it later
to style more elements like ul/ol, hr, blockquote, etc etc
or we could go the lazy route and just
20kb css
maybe
but will look basically identical to github markdown
i mean i just did the basics
copy pasted this shit from the thing i just linked lol
immediately looks decent enough
heh
i hate the :global spam
but i dont think theres a better way
cause of the set:html
i used marked btw
idk if theres anything better, marked seems decent and was super easy to setup
idk what this is supposed to mean
its the same as what svelte does
should markdown output not be safe by design?
hmm
it can also include script tags
well it's fine since we have full control over the markdown
github markdown does not permit this however
so it would render as plaintext on github
and we'd immediately see it
i mean
alternatively
you can use @bots-gg/markup which is what we use
bots-gg 
which is based on marked but has a strict subset of whats allowed to be rendered
oh wait
idk what i was smoking i thought of botlabs for some reason
but bots-gg are the homies...
lmao
yeah we open sourced our lib just cause
but it contains sane defaults
its a combo of marked, xss, and highlightjs
and parse5
anyway i dont think thats necessary
since we have full control over the markdown
we will have to see long term if this is a good idea
since this json might become pretty chonky
but it's all done on the server anyway
the user gets sent finished html
worst case scenario
is you static render it
unless it already is
i dont remember
yeah but id rather not
though it does get a bit weird when they fall out of sync
1d cache is good imo
ye
readme updates arent that important
we will still have to see how we can display the markdown in client
probably iframe vencord.dev
eh.
maybe, but we could also just use marked again and substitute h1/h2... with react components
we shall seeeeeeeee
thats one "issue" the current impl has
it will duplicate h1
i dont think anyone really cares for header semantics anymore
OKAY GITHUB
yeah lol
😭
i mean you can see they have loads of accessibility things that they add
they just dont do it in tags
yeah ok
i mean tbf getting headers right with component librarries is very hard
unless u use a context based Header component
according to w3c
"a section is a thematic grouping of content, typically with a heading"
articles work the same im fairly sure
i change to article
The article element represents a complete, or self-contained, composition in a document, page, application, or site and that is, in principle, independently distributable or reusable, e.g. in syndication. This could be a forum post, a magazine or newspaper article, a blog entry, a user-submitted comment, an interactive widget or gadget, or any other independent item of content. Each article should be identified, typically by including a heading (h1–h6 element) as a child of the article element.
thanks vscode
virus
anyway me sleep
@turbid hatch
NEVER
then guilded staging instance
gotta account for vendroid users
soon
husk
step 2 would be also adding plugin banners
then we can display them in both the cards and link embed
well that was a lie
btw @median rapids u overcomplicated ur pr
u dont need this
GUILD_MEMBERS_REQUEST chunks for u
the order seems unconventional, isn't it usually Artist - Song? maybe the order should be configurable
f1b3b3c Uncanonicalize reported patches - Nuckyz
315fcf1 messageLogger: make ignoreChannels also ignore ... - AutumnVN
a4cadc0 viewRaw: dont add context menu to guild folders... - AutumnVN
77bfaf3 HideAttachments: fix broken css (#1707) - AutumnVN
fc45510 LoadingQuotes: add a new quote (#1710) - lovenginx
iirc there was a reason I did this
I can take another look in a sec
lol theres finally a usercss pr when im the only person who writes usercss themes
bd is planning to add (/ migrate entirely to ?) usercss
interesting
idk if im supposed to be publicly sharing this actually
🚰
well i dont see why it'd be secret
yeah @austere talon i need to know which users are chunked and which users arent returned (because no mutuals)
it would probably be better if i add another patch to implement nonces in discord's code
instead of blindly sleeping like this
betterdiscor
surprised they wrote their own parser
cause i just hacked together a way with usercss-meta
something something bloat
theres so much shit i need to eventually fix but probably will never have the care to or be able to
is anyone else having truble woth vencord
i will never understand how u use this font
it's so pixely and looks low res
vns
ok
done 
it's faster now
I'm trying to make a plugin, are there any docs or something to get started?
...i guess thats why you dont rebase...
thanks
Is there anything specifcally for videos/codecs?
no
wdym
adding new codecs, not possible
detecting mimetypes, yes, theres a module in discord
technically yes but glhf
so it's gonna be hard asf 😭?
to someone with no experience yes
So I could theoertically embed a different video player which could support more codecs no?
no because you cannot add new codecs purely in javascript afaik unless theres some wasm black magic going on
what r u trying to do specifically
Add h264 video support
unless you know chromium supports a specific codec and discord is just not embedding it because their media proxy doesnt
yeah that cant be done in pure js and would need support in chromium/electron
Chromium supports hevc though?
no
prob not in the version discord ships electron with
technically u could fetch the bytes, convert it to h264 then play
(delusional)
wouldn't that lose quality though
do not run wasm ffmpeg in the browser
H.265 [Google Chrome only and only where supported by the underlying OS]
electron uses chromium not chrome
116
electron 25 is on 114
(which is what vesktop uses)
oh 107 was earliest hm
🤔
it says chrome not chromium
it's not supported on chromium
that too
if anything we just need apple to stop using HEVC and HE-AAC
(impossible)
hevc sucks
so the only way to do it is converting the video
wait it also says h264 is chrome only??
how
huh
ff?
firefox
this is chromium spec thingie
oh
prob the same licensing issues they have with hevc
I swear it does, ive been daily driving it for ages and never had issues
or it prob does
it most likely does since im pretty sure half the mp4s on discord are h264
they are fs
yeah and like most streaming sites use h264
chromium works flawlessly for me with those sites
tiktok the only site I know that has h265 for some videos
yeah but its not default and prob only served to ios users
it's not served to anyone
and Cisco Systems pays royalties to MPEG LA on behalf of the users of binaries for its open source H.264 encoder openH264
lol???
cisco made an open source encoder and went yeah man ima pay for everyone's bill
also obligatory reminder that software patents are cancer
holy fire
they are elon musk
yeah use mkv 
or just allow all codecs 👍
you cannot
blame the people who made the codecs and put cancerous patents and royalties on them
not the people who make your software
if you want to run ffmpeg in the browser, go ahead, but its going to be slow as fuck
my friends who download h265 tiktoks
??
ive ran into more HE-AAC videos than i have HEVC videos
cause fucking ios telegram users
telegram my favorite website
don't block me please I use an iOS device
blocked
no its friends reuploading shit from meme channels
lmaoo

punish ios users by spamming non opus voice messages
i just throw them into ffmpeg and reupload them
id do the same
and webms
oh right was it that webms don't embed on ios
why tf not? the format is literally free crapple just needs to add library and done
is there already a plugin for embedding from discord cdn? (like so it doesn't show the url)
I meant vidoes yea
@austere talon did i ever tell you the endpoint for external rich presence assets has no mime checks
wait what lmfao
so you can just make proxied urls for anything
and i abuse this for embedding external audio
they dont care
they just have clauses in the tos just so no one can sue them over it
mhh I see
theres been a few petty incidents of people getting banned but its user stupidity except for one
banning client modders would be shooting themselves in the knee
just dont gloat about experiments in front of staff 
banning all your power users is a great way to hurt your platform
yeah we're giving them features for free
or at least i have in the past
not to mention client modders probably are proportionally a massive part of their nitro subscriber base
ironically enough
Yeah
and yeah it's not like they would gain anything from banning modders 
even then i doubt they'd care if you're not some obnoxious weirdo
except for one
"Banned for using Stylus"
what the
i watched it happen in front of my eyes once in elixi.re years ago
like ive talked to a bunch of staff with them well knowing i use client mods and they do not give a single fuck

its less of a stigma nowadays yeah
considering we have some evidence that some staff use mods
there are still multiple discord staff in the Aliucord server
they've been there for ages
they are aliucord users (real)
minus the one ex-staff im friends with because thats obvious
what's the worse client
also tons of staff are very friendly with modders lmao
almost too friendly
thats subjective but the objective answer is lightcord
avoid the mod called "vencord" it's very bad
madoka magica based
it's made by a total buffoon
which one
I use armcord
|| armcord is just lightcord continuation ||
but don't tell the common folk that
you trollface react but it actually is
How?
fridge the armcord guy used to be lightcord maintainer
but armcord is actually good
i love legcord
leg cord?
it's like armcord but for people who don't have arms
webcord is amusing to me because its like, full paranoia mode
I'd like to see
wait does discord support the new markdown everywhere now?
yes
the hyperlinks too?
I focus in WebCord on spoofing and hiding all modifications done in way Discord can't be sure what and how modifications were done (e.g. stylesheets are injected without HTML, so they can't be programatically catched via
MutationObserver)
yes but i think theres an automod rule
i know theres one for headers
ok theres not
webcord is just paranoia embodied as a discord client
they try to not have spoofing links but not hard enough
how tf do you inject style sheets without html
does he mean by using electron api
that injects user agent style
discord scammers are going to have fun with this one
theres already a psa twitter post going around 
People are stupid though
cant wait for cf to detect me as a bot from using webcord
webcord has so many pointless security measurements
yep
oh god its worse in this other file
the code is so unreadable
the directory structure and filenames are horrid and the code is also pretty weird
yeah he does so many weird things
Loads unpacked Chromium extensions from
{userData}/Extensions/Chromium.
loading vencord in webcord 
/* Makes all CSS variables and color / background properties
* `!important` (this should fix most styles).
*/
why
^

another weird thing is that he lazy imports everything
???
i was gonna do that but got lazy
vencord's still needs some fixing anyway
i didnt account for the fact that discord is stupid so banners can be any resolution
also the friends scroller is kinda scuffed
I had a lot of trouble making it not overflow
cause i don't use modalcontent since modalcontent makes the entire modal scrollable
const guildExperiments = new Map();
// ...
const registeredExperiments = Flux.useStateFromStores(
[ExperimentStore],
() => ExperimentStore.getRegisteredExperiments()
);
const cachedGuildExperimentDescriptors = Flux.useStateFromStores(
[ExperimentStore],
() => ExperimentStore.__getLocalVars().cachedGuildExperimentDescriptors
);
if (!guildExperiments.has(guild.id)) {
const experiments = new Map();
for (const key of Object.keys(cachedGuildExperimentDescriptors)) {
if (!key.startsWith(guild.id)) continue;
const desc = cachedGuildExperimentDescriptors[key];
if (!desc?.bucket) continue;
const expKey = key.split(":")[1];
const exp = registeredExperiments[expKey];
const bucket = exp.buckets.indexOf(desc.bucket);
experiments.set(
expKey,
`\x1b[32m${exp.title}\x1b[30m (${expKey})\x1b[39m\n\u2517 ${
exp.description[bucket] ??
`<bucket ${desc.bucket}, no longer in client>`
}`
);
}
guildExperiments.set(guild.id, experiments);
}
you're going to hate mine because i replicate the profile modal
I mean same
to the point of ive made the worst thing ever to ensure i have the classnames
look at the Screenshots
We can’t connect to the server at plugin-readmes.vencord-website.pages.dev.
firefox dns caching moment
i hate that it has its own separate cache
oh yeah right those classes are lazy loaded
nope still not working wtf
i tried using them but since they were lazy loaded i just copy pasted discords css
easier than loading the modules
fair
oh right i looked at the video in the pr earlier anyways
lmao
like i said the user scroller has issues
because you're supposed to use modal content but then the entire modal is a scroller which sucks
i should figure out something like that
just cause its annoying especially on the channels and roles tabs
figure out what exactly
minimizing banner
ohh
modals are kinda weird to work with
do u know how to solve this
i ended up hardcoding max-height of the scroller but it somehow still overflows for some guy
idk theres modals where ive just said fuck it and not even use modal content which is where the max height issue comes in
i should bed
same
I actually didn't drop a star before :o
Added settings for custom text, artist - song name, and song name - artist
Happy to change those settings if you want
couldn't you just have a link to the page? I can't imagine where it would be in the client as the settings modal is probably too smol
codeburger
nom
yeah i started hacking it together because i caught wind about the upcoming BD support for it
and i'd thought it'd be a fun little sideproject
most starf don't care about mods/selfbots
display name 🔥
add ReadMes to plugins and and a few enhancements
stuff:
- ImageZoom: add checkbox for nearest neighbor
- PreviewMessage: add attachments to preview messages
- PreviewMessage: fix preview message button staying after sending message
- type MenuSliderControl
looks a bit better :3

This plugin also requires a hacky way to update the discord-types package to include the globalName property, as a version with it hasn't been pushed to npm.
- please show a comparison
- the tab bar styles are directly copied from the user profile tabs so im not sure changing them is a good idea
PreviewMessage: fix preview message button staying after sending message
wasn't this already fixed?
what in the world is this stuff below the github icon
confettis from party mode
real
even if you have server/user settings open, as soon as someone in your member list starts typing they appear
goofy ahh feature
amazing feature
did you know they have a killswitch for it in the client
that they never ended up using
"too good to let it go"
well yeah, either it'd be a link or a button that opens a popup to the vencord.dev page
try to include stuff like this in pr descriptions instead of sending it on discord
So development is a bit more transparent to non discord members

I feel most of these plugins don't need a readme, and it just adds clutter moving it to a folder
every plugin needs a readme now, since they will be displayed on the vencord website https://readmes.vencord-website.pages.dev/plugins/ServerProfile
wrong link moment
ohhh, that makes sense. sorry!
What's policy with adding files to components? If a same component is used in more than 1 plugin then it's added there? Currently changing something in the channel tabs PR and thought the NotificationDot component could be useful for other plugins in the future even though no other plugin currently uses it 
design apis exactly for what you need them. do not overengineer them for a potential future use
okie
I have written some tests that demo all of the compilers and some error resiliency in case you want to try it out. If your text goes red, it did the thing.
honestly at this point the only thing left is the modal
@spark cove ^^ so once its polished up i think this is ready for review and refactoring
🔥
why do you parse the header here? it doesn't seem necessary and also means that the usercss dependency is duplicated across both the renderer and the main build
perhaps?
type: "other",
i don't know why it's parsed at the natives level
but the BD themes do the same
for the UI
i could pass the parsed header data to the compiler tbf
this stuff being in utils is weird (blame me for putting quickCss there)
what do you think about moving it all to src/themes?
i think it'd be a good idea
my main issue is that the dependency is duplicated due to it
yyyyes but also no, because we apply theme parsing to BD themes and the header parser can also take plain CSS adding default values
yeah its a bit silly
but also it recompiles the themes twice
idk why
it seems to do it once on start and once when you go to the themes tab
define 'it'
it compiles on client start and then again when you open the themes tab
i see it duplicated
I DONT GET THE QUESTION
yes
then that should probably be fixed
Oh i think i noticed that, your theme flicks off and on when you open the themes tab
that's probably cause its reapplying it
yeah
okay that makes sense
then im fine with the duplicate compile
as long as its not some
weirdness
no i mean like discord goes unthemed for a sec
yeah thats what i mean
it's not intended
hm
oh
its because of this
im fairly sure
or that the onChange is being fired for whatever reason
which is odd because we arent performing any changes here
hm
oh
setEnabled
is it that checkboxes fire their onChange event once when they're initialized?

getThemesList seems pure
then i dont understand how its being fired
getThemesList does re"compile" all themes but it shouldn't cause themes to flicker
oh actually @spark cove can i ask you to push the modal stuff cause i dont want to start a massive refactor and then ur stuff becomes broken
what modal stuff?
i'll just paste it its like 30 lines
alr
settings
settings modal
yes
ah
interface ColorPickerProps {
value: number | null;
showEyeDropper?: boolean;
onChange(value: number | null): void;
onClose?(): void;
}
const ColorPickerModal = LazyComponent<ColorPickerProps>(() => find(m => m?.type?.toString?.().includes(".showEyeDropper")));
function ColorPicker(props: ColorPickerProps) {
return (
<Popout
renderPopout={() => (
<ColorPickerModal value={props.value} onChange={props.onChange} showEyeDropper={props.showEyeDropper} />
)}
>
{popoutProps => (
<div {...popoutProps} style={{
width: "2em",
height: "2em",
cursor: "pointer",
backgroundColor: props.value ? `#${props.value.toString(16).padStart(6, "0")}` : "var(--background-secondary)",
borderRadius: ".125em",
border: "1px solid var(--background-tertiary)",
}}></div>
)}
</Popout>
);
}
function UserCSSSettingsModal({ rootProps }: { rootProps: ModalProps; }) {
const [color, setColor] = useState<number | null>(null);
return (
<ModalRoot {...rootProps}>
<ModalContent>
{/* <Forms.FormTitle tag="h2">um?</Forms.FormTitle> */}
<Forms.FormSection title="Color" />
<Forms.FormText>A color</Forms.FormText>
<ColorPicker value={color} onChange={c => setColor(c)} showEyeDropper={true} />
<Forms.FormDivider />
<Switch checked={false} onChange={() => { }} />
</ModalContent>
</ModalRoot>
);
}
it could, in theory, because of the cachebusting query we append to vencord:// protocol themes
yes but we don't update the css
if (!IS_WEB)
VencordNative.quickCss.addThemeChangeListener(initThemes);
does listening the theme dir somehow cause this to be fired?
listing
ahahaha
add () => console.log("oh no") as theme change listener and open a theme you have in some Editor
does it fire?

hi
make sure you don't .addThemeChangeListener(console.log), empty console.logs don't show up at all for some reason
doesnt seem to
hmmmm
use nodejs to read it
fs.readFileSync() it
hmm..
breakpoint was not hit
.
getThemesList?
ye
no breakpoint
document.addEventListener("DOMContentLoaded", () => {
initThemes();
toggle(Settings.useQuickCss);
addSettingsListener("useQuickCss", toggle);
addSettingsListener("themeLinks", initThemes);
addSettingsListener("enabledThemes", initThemes);
if (!IS_WEB)
VencordNative.quickCss.addThemeChangeListener(initThemes);
});
these are the only references
to initthemes
so it has to be the settings firing it
and some changes for better look
fear
anyway with this, we could move all of the parsing stuff to the renderer for both BD and UserCSS
which then gets rid of the dep in the natives
okay
what does find2 add
wait 2 weeks
I will die in 2 weeks
every time I merge 1 pr, 2 new prs pop up
merge my pr and dont merge any other ever again
ok
and for my next trick
i will make all of the parsing
done in the renderer
woooooo
(the natives no longer do any parsing of theme data)

Unfortunately, the zTestPlugin visible in the screenshot is not included with this PR.
case in point
this is probably not required but i bet something will fuck up at some point and it'll be needed
wouldnt obj=>obj be enough
remove
done
relax
how many times can you fork a single repo
once
damn
but you can create near infinite branches
hydra 
wtf wtf you never accepted my fr
you asked me to add and never reciprocated
so rude
I have a task
but I can accept if u want
me when they made a ignore all friend reqs button
you will NEVER fall back at 50 PRs
so so rude
but then you don't get the second page of prs badge (real)
what about third page
is there any particular reason why transformCompoundSentence in fakenitro defaults to false
confused me for quite a while, thought it was a bug in the detection code and was gonna submit a pr lol
because that's how others see it too
so it's off to not mislead you into thinking it looks decent
i mean, fair, but by that logic the same would apply to emoji only messages
just a bit odd i thought it was actually some kind of fault
don
damn you cant approve your own pull request
I edited dom and enabled approve button but it leaves regular ocmment 
editing dom worked on stackoverflow for me previously
would it be possible to add shiggy support to reviews simply by typing :shiggy:?
its already a thing
you can type emojis like :explode: just like on discord
just autocomplete doesnt exist
oh
I think that wouldnt be possble 
because I cant do anything on emoji picker
need to add discord emojistore
oh, does it support <:x:id>
is that a good idea 
it supports everything regular discord does
whyy
hmm
I thought maybe people will start spamming nsfw emotes
but worst case scenario is I will prevent it server side
and make it only accesible to admins and approved users 
maybe server-side replace :shiggy: with <:shiggy:1024751291504791654>
and disallow anything else
what did i do
confusion
I cant hide server emojis from emoji picker
they will show but server will prevent people from sending it
i think i used a shiggy from the wrong server
it was probably boost locked or something
:shiggy:
what why discord

getting trolled
weird
oh, you need a: for animated
I did not know that
i had a "shower thought" (not in the shower admittedly) that there could be a set of emojis usable in reviews lol
all you need is
,
, 
true, maybe just provide a set of emotes people can use and nothing else
yeah...
it will contain shiggy, free smileys, trolleys and some more
otherwise... i can imagine there being some nsfw
although, doesn't reviewdb have some plugins for other modifications?
wdym
aren't there other frontends besides the one found in vencord?
oh
some emojis may not be so relevant in other communities lol
yes but bleh
custom emoji thing is not really needed anyway
I can add support for trolley and husk but other than that bleh
husk review this man
custom emojis are an essential part of life
lol
yeah trolley and husk seems reasonable
I mean true but
the pain it will bring to moderation
but as I said I can make a list of approved users which can use custom emojis
yeh that was what i thought
i can be trusted with custom emojis😇
[
{
"name": "NopeMonkey",
"id": "1106410717655080970",
"animated": true
}
]
would it be fairly simple to have an endpoint where the client could get a list of allowed emotes?
and the server could filter the same way
I wish I knew ts
well i'm sure there is but it would probably be messy
pretty
because it uses regular discords input box
could just reimplement the thingy
need to do it without affecting chat and other places
oh
too painful
hmm
nannannan
damn 50 years ago
why is this referred to as secret in the decryptionmodal if it's not the secret and as a matter of fact is the cover with the secret encrypted in it https://cdn.discordapp.com/emojis/1143890552765567147.gif?size=48&name=ShiggyTrans&quality=lossless
problem with that is I call one component, then that component calls another
I need to drill a property all way down to emoji picker
which would need multiple patchs
u will simply create emoji picker from scratch
and tbh I doubt its worth
could do but i think you'd still need to modify the box
and you'd need to figure out how it works
react slate jumpscare
or ig just translate :emoji: serverside
could you disable the picker?
^then
what os do y'all use 🤔
still sounds a bit suffering
yes
same
that means I need to disable picker
and autocomplete
yes
but that will also prevent people from using regular emojis
thats why I dont wanna
not quite
but i see what you mean
this is kinda what people got used to
oh nop
ah
would be so cool 😿
it can be done
the question is whether it can be done in a sane way
you still probably have to disable custom emojis though
seems pretty high-risk
custom emojis are meh
just disable server-side
regex match it and if its present prevent people from reviewing
any announcements on the vencord extension?
its not on the firefox store anymore.
for whitelisted emojis I can just convert like ":trolley" -> "<a:23333" probs
or <a?(:\w+:)[0-9]+> -> $1
what is wrong with firefox
mfs cant even compile an extension
it was taken down, that was it
AMO is a shitshow into of itself and shouldnt reflect firefox as a whole
firefox is also terrible for developing extensions
What browser do you use
what do you mean you dont like let browser = browser; if (!browser) browser = chrome;
thats not it
maybe... try checking the #announcements channel?
:smoothbrain: /j
if code is inside some submodule it cant find it
u can make this cleaner with var
its an exported function
yes but if the code you are trying to look is inside
module.Z.render module.toString wont have it
if (typeof browser === "undefined")
var browser = chrome;




