#👾-core-development

1 messages · Page 260 of 1

fossil inlet
#

yop

hopefully will be done today or tomorrow

going to play stw with @vapid nest first tonight (will be on in a moment)

austere talon
#

funny way to say that this method doesn't exist anymore

#

holy fucking lag

fossil inlet
#

no

#

it exists

#

discord just doesn't use it

austere talon
#

@fossil inlet fix discord running at 2fps if you have dvetools open

fossil inlet
#

just returns empty object or undefined

austere talon
#

no store has it anymore

fossil inlet
#

they must have removed it recently

austere talon
#

they removed it ages ago 😭

fossil inlet
#

i remember it being there in the past but returning undefined

fossil inlet
fossil inlet
austere talon
#

btw look at the other discord types pr

#

maybe it's good and we can copy over the types (with coauthor)

fossil inlet
#

ooh, yeah

#

yop

austere talon
fossil inlet
#

see the sticker

austere talon
fossil inlet
austere talon
#

but just look at the right directory trol

fossil inlet
#

yop

#

rebooting to play fn now @vapid nest

vapid nest
austere talon
#

the branch name looks so wrong lmao

fossil inlet
#

GUHHHHHHH

#

@austere talon fix

austere talon
#

love

#

Systemd moment

vapid nest
#

love

austere talon
#

why do u use systemd on nixos

fossil inlet
austere talon
#

nixos users seem like the type of nerds to use runit or some other slop

fossil inlet
#

Also, nixOS has a hard dependency on systemd, I'm pretty sure.

austere talon
#

I assumed it'd be the same for nix

fossil inlet
vapid nest
fossil inlet
vapid nest
#

yop

austere talon
#

I believe it's a monitor

fossil inlet
#

I'm pretty sure ARM uses X for their registers.

austere talon
#

I don't see an arm in that image

fossil inlet
#

not insane like intel

#

@austere talon rewrite vencord in AT&T assembly

vapid nest
#

i used armbian to run it

fossil inlet
#

My server runs nixOwOS

austere talon
#

@fossil inlet idea

#

use chrome or some other browser with inbuilt ai

#

then use it to generate an interface from a live object

#

might work if you use a good prompt telling it to include prototypes and use unknown for parameter types

vapid nest
#

i believe in this idea

austere talon
#

then you just have to manually type return and parameter types

#

actually idk if the ai stuff allows you to pass objects or if it's just strings

#

might be a flop idea if it doesn't support objects

fossil inlet
#

that's why i want to do this

austere talon
#

lmao

fossil inlet
#

it's fun to me to type things

austere talon
#

i typed so much shit already

#

it gets tiring after a while imo

fossil inlet
#

i enjoy it

#

finding out excatly what each method does

vapid nest
#

sure

vapid nest
austere talon
#

for the existing types I just typed most useless slop as any

#

(also skipped some methods that were just so useless I didn't even wanna name them)

#

should i tell the other guy to contribute to our branch @fossil inlet

#

gonna be painful to coordinate lmao

#

Also pretty sure he's banned from here 💀

fossil inlet
austere talon
fossil inlet
charred monolithBOT
#

Hello, I present Questify! A Quest enhancement/removal plugin. I've been daily driving it for a bit now and it seems to be working fine. See the README below for what all it does.

This is my first foray into typescript and react, and my first proper attempt at Vencord patches, so if anything is weird or "wrong", I promise it wasn't intentional 😅! I was learning as I wrote it!

Questify

Enhance your Quest experience with a suite of features, or disable them entirely if they're not yo...

elder plinth
#

@tulip radish you wanted ping so there u go

fossil inlet
#

jfc

elder plinth
#

😭

#

it's a good™ plugin

fossil inlet
#

bro has never heard of a store

elder plinth
#

no, as I said in the pr I've never used react or ts before

fossil inlet
#

thats now how you use react components

#

ill show an example later

elder plinth
#

it works™

fossil inlet
#

this does not work™

elder plinth
#

?

#

like it literally shouldnt work or it's so cursed it shouldnt be used

fossil inlet
#

second

elder plinth
#

cause it certainly does literally work

#

ok

austere talon
#

😭

fossil inlet
#

you should really learn react

austere talon
#

flutter dev learns react..

#

have you user flutter before @elder plinth

elder plinth
#

touched flutter once for school and never again

#

hate it

austere talon
#

huh

elder plinth
#

I main python

austere talon
#

you wrote flutter code in react

fossil inlet
#

oh

#

checks out

austere talon
#

you need to be writing your ui as jsx (xml)

fossil inlet
#

jsx 🤓

elder plinth
#

thats what I do inside that function

austere talon
#

okay but why do you have a function that takes 20 arguments

#

that's not how you're supposed to use react :P

elder plinth
#

wanted to abstract the custom server list item so it could easily be reused

austere talon
#

It'd be for the better if you learned a bit of react first

fossil inlet
austere talon
# fossil inlet

because code like this isn't mergeable, I'll tell you straight up

fossil inlet
#

but ill do one

#

you have to learn the rest

austere talon
#

a react component is a function that takes exactly one argument (props object) and returns jsx

fossil inlet
#

@elder plinth start here

#

good docs

#

also any disord component you find eg

const MyComponent = findComponentByCodeLazy("foobar");
#

can be used like this

#
function Foo() {
  return <MyComponent />
}
elder plinth
#

I used quite a bit of jsx syntax throughout the plugin. I just didnt know this part needed to be like that too

fossil inlet
#

with very few exceptions

#

i only know of one place in vencord where we can't use jsx

#

and it's not your plugin

fossil inlet
elder plinth
#

I promise u this isnt a hill im dying on I'm just used to function calls so it was the natural choice

fossil inlet
#

shouldn't take that long

fossil inlet
elder plinth
#

oh yeah sadan

#

I hate u

elder plinth
#

the modules folder kept fuckin with my commits

#

plz let it be added to gitignore

fossil inlet
elder plinth
#

this better?

fossil inlet
elder plinth
#

Sonnet 4 my beloved

fossil inlet
#

you also probably violate 50000 laws of hooks

elder plinth
#

wdym

fossil inlet
elder plinth
#

no I spent a lot of time squashing all my hook issues

#

ive been running this plugin fine for week+

fossil inlet
#

love

elder plinth
fossil inlet
elder plinth
elder plinth
fossil inlet
elder plinth
#

😭

fossil inlet
#

if it's pushed, others can help you improve it

austere talon
#

I have pushed so much shitcode

#

dude github put my shitcode on a sealed tape and put it in a bunker at the north pole for people to discover in 300 years

elder plinth
#

ok pushed

fossil inlet
austere talon
#

irrelevant

fossil inlet
#

bisecting is so good

#

couldn't live without it in some cases

austere talon
#

I've never used bisect in my lifeblobcatcozy

fossil inlet
#

use

#

so good for finding bugs

austere talon
#

I never needed it

fossil inlet
#

my dotfiles are bisectable

#

every commit builds with nix

#

so if anything every changes, i can quickly find out what it is

#

i've bisected vscode and vscode extensions to find bugs before

#

same with electron

tulip radish
elder plinth
#

working on removing all the Dispatch uses now that I know that's way overly complex and bad lol

charred monolithBOT
elder plinth
# tulip radish thankies

np. should be decursed now if u already pulled and wanna update. if u end up using it lmk if anything goes wrong or if any functionality is missing :)

tulip radish
#

may check it out later

charred monolithBOT
dusk blaze
#

we do call them apps

glass jasper
# dusk blaze we do call them apps

Legacy bots? Sunsetted. Now, embrace Discord Apps—a cross-platform, cloud-native, API-driven solution designed for omni-channel engagement. 🔄

Unlike guild-bound (not to be confused with Gaming Guilds) bots, Apps provide a decentralized, scalable experience across messages, DMs, user profiles, and even Activities. 🎙️📲 Unlock real-time interactions, AI automation, and smart contextual triggers in one seamless, frictionless flow. ⚡🤖

With microservices architecture and serverless execution, Apps enable hyperpersonalized, data-driven experiences, delivering real-time engagement across your entire Discord ecosystem. Ready to build the future of community automation? 🌟🚀

charred monolithBOT
#

I have been working on a project, Orbolay, that aims to recreate some of the features of the Discord overlay, but standalone/customizable/light on resources/available to web and alternative client users/blah blah blah.

In order for the overlay to communicate with Discord, it requires some sort of mod running in the client to communicate. I've had a few people help test Orbolay already with the [Shelter plugin](https://github.com/SpikeHD/shelter-plugins...

dusk blaze
#

Blazingly Fast & Memory Safe

charred monolithBOT
austere talon
#

why does it need its own code, can rpc not do it?

fossil inlet
#

not even in the server lol

austere talon
#

love

charred monolithBOT
opaque silo
charred monolithBOT
fossil inlet
#

@austere talon @limber skiff thoughts on moving webpack types to @vencord/discord-types

limber skiff
#

why

austere talon
#

yes

fossil inlet
limber skiff
#

you mean for others to use?

fossil inlet
#

if they want

fossil inlet
austere talon
#

just moving all types to a separate package to replace discord-types

#

and publish to npm

fossil inlet
#

jesus so many stores to type

charred monolithBOT
charred monolithBOT
jolly egret
fossil inlet
#

jesus

#

33

austere talon
fossil inlet
#

typing the rest will be fun blobcatcozy

#

already have the ones already typed copied over

fossil inlet
#

@austere talon wtf is ssalggnikool

grave mangoBOT
austere talon
#

secret

fossil inlet
#

tell

chrome coral
#

@austere talon WHAT

fossil inlet
#

oh

#

@austere talon insane

austere talon
#

it's sami's old username

fossil inlet
#

yeah

#

insane

austere talon
#

i made the setting named that because she requested that option

chrome coral
#

omg im in vencord

#

yay

fossil inlet
#

@chrome coral what does ssalggnikool mean

chrome coral
charred monolithBOT
austere talon
#

moment shouldn't be a dev dependency

#

it is needed for proper types

#

if people install the package from npm it won't install moment and thus give type errors

fossil inlet
chrome coral
fossil inlet
austere talon
#

what's adhoc

#

get lewi to add his stuff to the repo and sign with that

fossil inlet
chrome coral
#

would still make macos complain about it tho

charred monolithBOT
fossil inlet
#

is there no way to compile against older glibc

chrome coral
#

download it trolley

#

or we find someone using debian bullseye

austere talon
#

the entire glibc stuff is so annoying anyway

#

who thought this was a good idea

#

hmm yes I don't want anyone with an older glibc than the one I used to compile to be able to run my binary

fossil inlet
#

bundle glibc in an appimage blobcatcozy

austere talon
chrome coral
#

sounds funny

fossil inlet
#

@austere talon vencordinstaller bundled with nixos

run on any system, no glibc needed

#

appimage or self-extracting bash script

austere talon
#

but no people have to use Debian that ships a glibc version older than my grandma

chrome coral
#

macos with their 2006 make:

fossil inlet
#

idk build in a debian docker image toll

austere talon
#

yeah maybe

#

if Ubuntu22 isn't old enough

chrome coral
#

the glibc version is indeed different

#

someone install ubuntu 20 rn

austere talon
#

just make sure it works in Debian lts and that's good enough I think

chrome coral
#

I do have a throw away laptop..

fossil inlet
chrome coral
#

i have no space ❤️

olive aurora
#

guhlibc

chrome coral
# charred monolith

@turbid hatch could you possibly help this pr by notorizing the installer?

glass jasper
chrome coral
#

my thought

glass jasper
#

Also crazy, just allowing all *.vercel.app domains

charred monolithBOT
glass jasper
chrome coral
#

Should mention that

glass jasper
#

Main reason the actual decor plug-in, doesn’t let you do that

#

Because you know it’s copyrighted

chrome coral
#

oh this allows you to use an id I think

#

but I don't think it really matters

glass jasper
chrome coral
#

not very useful and is just decor 2

glass jasper
#

They’re just rehosting discord decors

chrome coral
#

sad xd

chrome coral
#

ah yeah not good

chrome coral
#

the decor plugin is imo the better choice than just displaying discords decos

#

allows more creativity with users

turbid hatch
chrome coral
charred monolithBOT
jolly egret
#

they should've called the plugin freeeemoji because more e

hollow musk
#

fveeemoji

limber skiff
#

why dont we unlock gradient roles?

chrome coral
jolly egret
#

but donor perk !!

fossil inlet
charred monolithBOT
dusk blaze
#

// @ts-pmo

limber skiff
#

btw i havent reviewed but we should avoid all uses of unknown

#

that shit is so bad

fossil inlet
dusk blaze
#

who needs types anyway

jolly egret
#

if it doesn't error anymore i want a warning to tell me that i don't need the flag

fossil inlet
#

only using it here because it's due to different ts versions

charred monolithBOT
charred monolithBOT
teal nest
#

well, two

odd heath
#

alwaysanimate needs to animate nameplates too

#

but doesnt rn

#

i mentioned this before i think

granite wharf
#

alwayslag

surreal fiber
#

it should also animate gifs posted in chats

charred monolithBOT
fossil inlet
surreal fiber
#

I mean when window is unfocused it doesn't

fossil inlet
#

oh, idk about that

shut vineBOT
#

@fossil inlet, <t:1750034053:R>: make a proper no stupid titlebar plugin with patches instead of css that doesn't hanndle 10000 edge cases

fossil inlet
#

soon

charred monolithBOT
charred monolithBOT
#

Adds UTC (Universal Theming Classes) that appends stable class names [For example utc_xyz] to elements, so theme devs don’t have to worry about class rerolls, only structural changes.
Helps with theming by removing the need for wildcard selectors, which also improves performance.

The idea is to get it adopted across other client mods too, to make theming easier and consistent. Already PR'ed at replugged

prime dew
carmine ingot
#

One message removed from a suspended account.

brazen bone
#

Main difference is that Classify tries to replace the hashes with reasonable names, not just remove them

#

Wonder if that one has the same bug with message box sizing as Classify does

carmine ingot
#

One message removed from a suspended account.

brazen bone
#

Hm

carmine ingot
#

One message removed from a suspended account.

brazen bone
#

I'll check when I'm off work; if yours doesn't have that bug I might nab its patch (if that's ok)

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

brazen bone
#

Obviously

carmine ingot
#

One message removed from a suspended account.

brazen bone
#

Otherwise you'd break all css in existence, including discord's

carmine ingot
brazen bone
#

Specifically, with Classify, if you write a code block in the text box, it somehow breaks the sizing computation and reverts the box to its smallest size

carmine ingot
#

One message removed from a suspended account.

brazen bone
#

I think it's some equality check that breaks somewhere, but I haven't been able to find it

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

prime dew
carmine ingot
prime dew
#

Interesting

brazen bone
#

Pretty sure I had at some point that wrapper_abcd was mapped to wrapper_abcd FooBar__wrapper FooBar__ __wrapper to allow class selectors on .__wrapper, but rn it seems to just be wrapper__abcd FooBar__wrapper

brazen bone
prime dew
#

It would break when discord changes class names anyway

brazen bone
#

Yeah but that's much rarer than rerolling hashes

prime dew
#

True, it only happens when discord's actively working on something, like profile modals

carmine ingot
prime dew
#

Which broke too many times while I was making a theme back then

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

prime dew
carmine ingot
#

One message removed from a suspended account.

brazen bone
#

That's a slightly different goal from Classify, whose aim is to allow using precise classes stably

prime dew
#

It's a cool concept, but I'm not a huge fan of having class names that long venniethink

carmine ingot
carmine ingot
prime dew
#

I haven't had to update them for at least a few months now

#

Only structural changes, no hash rerolls

carmine ingot
#

One message removed from a suspended account.

prime dew
#

That's fair

carmine ingot
#

One message removed from a suspended account.

glass jasper
#

Isn’t this also just limiting your CSS to work for only the people who have the plug-in or Vencord/ Replugged

#

Like what about someone who just uses shelter?

#

Woopsie, I guess they can’t use this CSS

#

I’m not saying it’s not a bad idea, but it is kind of limiting your stuff

brazen bone
#

Yeah but not using stable names limits you to only working for an unknown number of days

glass jasper
#

That’s why you use themeattributes

#

Pretty much any client mod to exist has a themeattributes plugin

#

And they all behaved pretty much the same

carmine ingot
#

One message removed from a suspended account.

glass jasper
#

I’m not saying that I’m just saying do you already have a port to other client mods

#

Do you have BD version or Shelter version

#

Moonlight

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

glass jasper
#

OK, so my point still pretty much stands that you’re limiting where it can work

carmine ingot
#

One message removed from a suspended account.

glass jasper
#

That’s how it would be behave for any other clientmod

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

glass jasper
#

Saying a client mod is “niche” is completely subjective and completely a personal opinion - you could say that about almost any client mod in existence if you put yourself in the right group

fossil inlet
carmine ingot
glass jasper
#

This just seems like reinventing something that pretty much universally exists between most client mods
-# Themeattributes

carmine ingot
#

One message removed from a suspended account.

#

One message removed from a suspended account.

glass jasper
#

To me it just seems like reinventing the wheel

dusk blaze
#

plugin can be ported tay

glass jasper
#

Be quiet Canadian

dusk blaze
#

anyway i haven't met a moonlight user outside of latinx

glass jasper
#

And the US should annex Canada then build a wall around Toronto

dusk blaze
#

anyway such a plugin would be useful for snippets

#

themes can use the class updater and CI to update themselves

glass jasper
#

Im not disagreeing

glass jasper
#

Ok

#

Maybe I can a see a use

jolly egret
#

why would you make a bug a toggle

charred monolithBOT
elder plinth
#

why wouldnt you want it as a toggle

jolly egret
#

and not sure if its related because i haven't checked but it might be the reason why having an emoji in your name alongside the plugin being enabled causes the emoji itself to be coloured with gradient roles

scenic brook
#

There's like three PRs that fix that at this point lol

jolly egret
#

merge one and then no more will be created

scenic brook
#

On it

elder plinth
#

is it bug? I ended up turning it into two settings 🤔

olive aurora
#

the suffix isn't supposed to have color

elder plinth
#

that was like half the point of my pr to give them colors lol

austere talon
#

insane

elder plinth
#

it looks much better as a muted version of the role color than gray imo Shrug

carmine ingot
glass jasper
#

Oop

charred monolithBOT
dusk blaze
#

heyyy @austere talon the regex u sent me doesn't work

#

/const (\i)="(.+?)"(?=Bearer $\{\1\})/

fossil inlet
#

@dusk blaze Twenty first century schizoid man.

austere talon
#

inb4 he vetoes

fossil inlet
#

@limber skiff u good with lgpl on your webpack types?

limber skiff
#

alr

#

all good

fossil inlet
#

ty

limber skiff
#

wha's the reason we dont keep it gpl?

fossil inlet
#

it's being moved to the discord-types package test

#

which is lgpl

limber skiff
#

why isnt it gpl?

fossil inlet
#

it's a library

limber skiff
#

ah wait

fossil inlet
#

gpl sucks on libraries

austere talon
#

because it's meant as a library

limber skiff
#

I get it now

austere talon
#

we will publish it to npm

limber skiff
#

alright all good

austere talon
#

anyone who wants it can install it

#

like other client mods

#

and vesktop

limber skiff
#

I just had to finish my research before I asked the question

#

😛

fossil inlet
#

@austere talon are we lgpl-3 only or or later

austere talon
#

if we make it GPL, everyone who wants to use it has to use gpl too

dusk blaze
#

OQL

fossil inlet
#

me when non-free

austere talon
dusk blaze
glass jasper
#

3-clause BSD my beloved heart1

limber skiff
#

AnyModuleFactory does not belong to discord-types

fossil inlet
limber skiff
#

it's vencord specific

#

take it out of discord-types

fossil inlet
#

doing that now

limber skiff
#

below this is all vencord specific

fossil inlet
#

should be good now

charred monolithBOT
scenic brook
#

dom manip and hardcoded css hashes, nice

#

and css only plugin, beautiful

charred monolithBOT
fossil inlet
#

guhhh with image zoom, when moving the mouse somewhat fast, this error spams the console

olive aurora
#

wontfix

fossil inlet
austere talon
#

been happening for a while blobcatcozy

fossil inlet
#

i'd just suppress the error with a try-catch

#

but i have no idea where it's thrown from

#

the stack trace is all react internals

carmine ingot
#

One message removed from a suspended account.

elder plinth
#

Easiest way to reproduce was to spam click and move your mouse slowly horizontally. I think I've fixed it? It's not happening anymore but I don't know if this will have any side effects.

From

renderMagnifier(instance) {
...
            if (!this.currentMagnifierElement) {
                this.currentMagnifierElement = <...>;
                this.root = createRoot(this.element!);
                this.root.render(this.currentMagnifierElement);
            }
...
},
updateMagnifier(instance) {
    this.unMountMagnifier();
    this.renderMagnifier(instance);
},
unMountMagnifier() {
    this.root?.unmount();
    this.currentMagnifierElement = null;
    this.root = null;
},

To

renderMagnifier(instance) {
...
            if (!this.root) {
                this.root = createRoot(this.element!);
            }
            this.currentMagnifierElement = <...>;
            this.root.render(this.currentMagnifierElement);
...
},
updateMagnifier(instance) {
    this.renderMagnifier(instance);
},
unMountMagnifier() {
    this.root?.unmount();
    this.currentMagnifierElement = null;
    this.root = null;
},

pretty much just not unmounting on every update

fossil inlet
elder plinth
#

no

#

since when

fossil inlet
#

since a long time ago

elder plinth
#

how

fossil inlet
#
+foo
-bar
#

also have patch type

elder plinth
#

oof but then I have to merge it manually and add +-

fossil inlet
#

you can copy a diff of the current file from your working tree fairly easily

elder plinth
#
    renderMagnifier(instance) {
        try {
            if (instance.props.id === ELEMENT_ID) {
+                if (!this.root) {
+                    this.root = createRoot(this.element!);
+                }

+                this.currentMagnifierElement = <Magnifier ... />;
+                this.root.render(this.currentMagnifierElement);
-                if (!this.currentMagnifierElement) {
-                    this.currentMagnifierElement = <Magnifier ... />;
-                    this.root = createRoot(this.element!);
-                    this.root.render(this.currentMagnifierElement);
                }
            }
        } catch (error) {
            new Logger("ImageZoom").error("Failed to render magnifier:", error);
        }
    },

    updateMagnifier(instance) {
-        this.unMountMagnifier();
         this.renderMagnifier(instance);
    },

    unMountMagnifier() {
        this.root?.unmount();
        this.currentMagnifierElement = null;
        this.root = null;
    },

or I can ask copilot to merge it for me

fossil inlet
#

test it out, and if it doesn't break, pr it

elder plinth
#

i did test it was hoping someone else here would look at it and tell me if it looks like it would explode

fossil inlet
#

i can't test it if i dont have the code

#

push it to a branch at least

#

or send a patchfile

#

(you can get that with git format-patch

elder plinth
fossil inlet
#
From 80489a726c0a8da1c678525836c19899ac4bbbed Mon Sep 17 00:00:00 2001
From: EtorixDev <92535668+EtorixDev@users.noreply.github.com>
Date: Mon, 30 Jun 2025 21:44:21 -0700
Subject: [PATCH] Don't unmount on update.

---
 src/plugins/imageZoom/index.tsx | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/plugins/imageZoom/index.tsx b/src/plugins/imageZoom/index.tsx
index 56e1d4a208c..d713667c3ff 100644
--- a/src/plugins/imageZoom/index.tsx
+++ b/src/plugins/imageZoom/index.tsx
@@ -240,11 +240,12 @@ export default definePlugin({
     renderMagnifier(instance) {
         try {
             if (instance.props.id === ELEMENT_ID) {
-                if (!this.currentMagnifierElement) {
-                    this.currentMagnifierElement = <Magnifier size={settings.store.size} zoom={settings.store.zoom} instance={instance} />;
+                if (!this.root) {
                     this.root = createRoot(this.element!);
-                    this.root.render(this.currentMagnifierElement);
                 }
+
+                this.currentMagnifierElement = <Magnifier size={settings.store.size} zoom={settings.store.zoom} instance={instance} />;
+                this.root.render(this.currentMagnifierElement);
             }
         } catch (error) {
             new Logger("ImageZoom").error("Failed to render magnifier:", error);
@@ -252,7 +253,6 @@ export default definePlugin({
     },
 
     updateMagnifier(instance) {
-        this.unMountMagnifier();
         this.renderMagnifier(instance);
     },
elder plinth
#

huh

fossil inlet
#

that's the patch

elder plinth
#

how do you get that

#

mm git format-patch -1 HEAD

fossil inlet
#

you can append .patch or .diff to the end of any github ref

elder plinth
#

https://github.com/Vendicated/Vencord/compare/main...EtorixDev:Vencord:ImageZoomFix.diff woah worked

#

TIL

fossil inlet
#

you can also just checkout to a commit of any fork

#

yeah

#

works for me

#

pr

elder plinth
#

figured. I've checked out to some prs a bit ago to test the Experiments plugin (plz merge that pr I beg)

#

ok will pr

charred monolithBOT
limber skiff
#

unmounting was added to fix issues with the image carousel and the lens not updating correctly, make sure that still works @elder plinth

elder plinth
#

wdym carousel and lens not updating?

#

like multiple images in one message?

#

well switching between images in a message kills the active lens and makes me click again so I'd say that's working

#

also it still unmounts just not while the same image you're already viewing is still active

#

not sure when the patch calls unmount but im assuming whenever the image changes which im assuming happens in the carousel

limber skiff
#

it's joever

#

I suppose you are leaving that for me 😛

austere talon
#

i mean if u wanna xD

#

im busy rn

limber skiff
#

yeah I can do it

#

that patch is very complicated too

#

but I made it so I know what's happening

#

ill add a regex101 link to it so others can understand too

jolly egret
#

incredible

austere talon
#

nookies deliberately making patches overcomplicated so he can't be replaced

jolly egret
#

if they're going to do this the least they can do is merge my PRs

glass jasper
fossil inlet
# glass jasper

this is pretty good

we should at least note this logic in case they don't go through with the experiment

glass jasper
glass jasper
fossil inlet
#

i'll take care of that later today

glass jasper
jolly egret
#

i have it right now

#

its cool but it doesn't apply to like the settings menu or anything rn

glass jasper
dusk blaze
carmine wave
#

best discord

dusk blaze
#

@carmine wave salad

carmine wave
#

love random discord crash

#

what's trying to render a user

#

@limber skiff when adding a new feature to fakeNitro that syncs with discords cloud, do you need to add some patch to prevent that syncing

limber skiff
#

yeah

carmine wave
#

alr

limber skiff
#

the custom themes do it

carmine wave
#

something is trying to render a user and i'm not sure if it's vencord

carmine wave
dusk blaze
#

@carmine wave what if i made fakenitro store the fake client theme somewhere and reapply after an account switch

carmine wave
#

idk

#

worried about getting it to work first

glass jasper
austere talon
#

yeah

#

this one

#

ohhhh

#

it needs a group

charred monolithBOT
austere talon
#

oh it's still happening

#

when it's rendering the several users are typing

carmine wave
#

guhhh i remember fixing that a while ago with different lang

austere talon
#

meeeh idk how to fix

#

discord changed up the code so much

glass jasper
#

Vencord EOL confirmed

carmine wave
#

i will fix later

dusk blaze
#

vencord has been discontinued.

carmine wave
#

adding custom client theme support to fakenitro rn

glass jasper
austere talon
glass jasper
#

Also consider only like 10% of people have access to the experiment

carmine wave
jolly egret
glass jasper
austere talon
#

it doesnt colour tho

#

oh wait

jolly egret
#

lets go

carmine wave
austere talon
carmine wave
#

love

charred monolithBOT
jolly egret
austere talon
#
(() => {
    const { GuildMemberStore, FluxDispatcher, SelectedChannelStore } = Vencord.Webpack.Common;
    
    const i = setInterval(() => FluxDispatcher.dispatch({
        type: "TYPING_START",
        channelId: SelectedChannelStore.getChannelId(),
        userId: GuildMemberStore.getMemberIds(Vencord.Util.getCurrentGuild().id).sort(() => Math.random() - 0.5)[0]
    }), 2000)
    return window.stop = () => clearInterval(i)
})()
dusk blaze
#

schizo snippet

austere talon
#

@limber skiff did u fix MessagePopover?

#

else I'll do it

limber skiff
#

not yet

#

ill do it soon

austere talon
#

we need to push fast

limber skiff
#

okay just give me a sec then

carmine wave
#

me wondering why my changes aren't showing when my file is ditry blobcatalien

dusk blaze
#

i think i messed with schizo snippet a bit

jolly egret
#

kekw

dusk blaze
#

@austere talon is the regex the only thing blocking the applemusicrpc fix from being merged? since there's a fix wave ykyk

carmine wave
#

trying debugger statment and waiting for it to be hit

#

im really stupid

dusk blaze
austere talon
#

it's the lookbehind

#

i fixed it @limber skiff

limber skiff
#

let me see it

charred monolithBOT
austere talon
#

they wrapped in another fragment

#

there's a fragment between the :null, and \i&&!\i now

limber skiff
#

alr

charred monolithBOT
austere talon
#

@dusk blaze test

carmine wave
#

guhhh love failing tests

austere talon
#

wait i left the console log in

glass jasper
#

Virus

carmine wave
#

best vencord code

austere talon
#

shut

glass jasper
#

Vencord token lagger confirmed

limber skiff
#

token lagger

charred monolithBOT
austere talon
#

i was like what the fuck did i cook this time

#

but it's just my userplugin i used for random testing blobcatcozy

#

okay we should push to main & bump ext

austere talon
#

too long

#

@limber skiff you have 2 seconds to veto or i bump and push main

limber skiff
#

AAAA

#

im doing so many things at once

carmine wave
#

lc.def veto

rancid idolBOT
# carmine wave lc.def veto

veto

-# ˈviːtəʊ • noun

  1. a constitutional right to reject a decision or proposal made by a lawmaking body.
  • neither state was given a veto over amendments to the Act
limber skiff
#

oh alr

austere talon
#

bad

limber skiff
#

smart

austere talon
#

the token matcher still needs to be so precise

#

with ".+?" it causes ReDOS

fossil inlet
#

love

limber skiff
#

ill trust ur typing tweaks changes

austere talon
#

cause it will test every string

limber skiff
austere talon
#

but

#

it's wrapped in error boundary now and also grouped patches

limber skiff
#

yop

austere talon
#

vtest dev

nimble pendantBOT
austere talon
#

vmerge-if-tests-pass

nimble pendantBOT
nimble pendantBOT
charred monolithBOT
austere talon
dusk blaze
charred monolithBOT
austere talon
#

for some reason github isnt sending tag created events anymore

fossil inlet
#

evil

fossil inlet
austere talon
dusk blaze
dusk blaze
fossil inlet
#

wait

dusk blaze
#

not sure if iCan do that on apple

fossil inlet
#

wth is bun/bash

dusk blaze
fossil inlet
# charred monolith

@limber skiff can you take a look at this when you have a chance. I dont have much experience with discords protobufs / settings systems

limber skiff
fossil inlet
#

ty

#

doesn't have to be today or anything

limber skiff
#

but are u sure so many changes were needed?

fossil inlet
limber skiff
#

ah i see

#

ur just merging the settings?

fossil inlet
#

yeah

limber skiff
#

hmm

#

but one does have a setting coming then they have nitro

fossil inlet
#

figured they had to be done in one thing because the used the same actioncreator(whatever that is)

limber skiff
#

which means you dnot need to overwrite anything

fossil inlet
limber skiff
#

oh yeah true

#

😛

#

okay ill take a better look another time

fossil inlet
austere talon
#

is Esc being broken a vencord issue? NijikaThink

#

should investigate

fossil inlet
#

like it just worked

#

but didnt last night

austere talon
#

yeah but is it a vencord or discord issue

fossil inlet
#

i cant reproduce so i have no idea

#

i'm leaning to discord because i dont think we have any plugins that fuck with the keymap, but it could be some random other thing we touch

austere talon
#

vtest canary

nimble pendantBOT
austere talon
#

i thought discord cooked again but it works fine

austere talon
#

works locally

#

welp

dusk blaze
#

if you used bun Bun it would work flawlessly @austere talon (theo said so)

#

anyway if it works locally and not on a gh actions runner just run the gh actions runner locally

austere talon
#

ITS BACK

edgy snow
#

push to main even if it's wrong....

limber skiff
edgy snow
jagged reef
#

b*

jagged reef
austere talon
#

holy shit

#

vext

nimble pendantBOT
austere talon
#

google fast for once

jolly egret
#

lets go

limber skiff
#

🙏 🙏 🙏

jolly egret
#

they probably don't even check

#

they just roll a dice for how many days until it is "approved"

glass jasper
#

Heads approved, tails make it wait another day

charred monolithBOT
#

Content

So, sometimes i want to see what certain people say with certain roles, so let me explain how it should work

So lets say i search for (Role ID), it will show me all messages from (Role ID) BUT you are able to search for other messages too, like everything they sent like images, PDFs, etc Even Mentions

Request Agreement

  • [x] I have read the requirements for opening an issue above
jolly egret
#

NOT PLANNED not COMPLETED

dusk blaze
fossil inlet
dusk blaze
#

you only see Close issue

#

unless you go on the dropdown

glass jasper
#

Tf happened?

fossil inlet
gaunt bluff
#

Do all regulars have access to this channel?

jolly egret
#

yes

#

prog, snippet dev, contrib, regular and mods (through the ability to give themselves any of the roles listed)=

fossil inlet
gaunt bluff
#

Can i

#

Theoretically

#

Send bnuys here

prime dew
#

Just because you can, doesn't mean you should
This channel is for Vencord development

jolly egret
#

no

gaunt bluff
#

James said no

#

So i can send

jolly egret
#

no

gaunt bluff
#

Sad

#

Anyway how do i contribute to the development

fossil inlet
gaunt bluff
#

And idk what plugin to make😭

#

What language do i need to know for it

fossil inlet
#

Before you make one, you should know basic regex and react

#

Along with typescript

gaunt bluff
#

Oh god

#

Thats

#

A lot

fossil inlet
still maple
#

that's basically nothing

#

regex is quite simple actually

gaunt bluff
#

Planning to

fossil inlet
still maple
#

react is a bit eh and i think you can get away without knowing it if you're smart and can learn from reading and mimicking

gaunt bluff
still maple
still maple
gaunt bluff
fossil inlet
# gaunt bluff Planning to

I recommend writing a discord bot or simple website to start. You’ll find plenty of resources on that online

still maple
#

if you aren't scared by markdown, you shouldn't be scared by HTML

#

remember when forums where a thing

#

and HTML and BBcode on top

gaunt bluff
#

Whats markdown

still maple
#

💀

fossil inlet
still maple
#

bro use discord
bro doesn't know what md is : 🤡

fossil inlet
#

Markup is styling text and ui

still maple
#

it's what you use to style text on markdown

#

see the *text*

#

gg you know what markdown is

fossil inlet
still maple
gaunt bluff
gaunt bluff
#

Genuinely

gaunt bluff
still maple
#

it's normal to not know things

#

as long as you're willing to learn

#

we're all clowns anyway

#

writing things we don't understand...
...til we do

#

i should make a plugin that automatically link every word to its wikipedia definition

still maple
#

and like on wikipedia show a thing on hover with short definition

gaunt bluff
#

A plugin that adds a panel with random rabbit related wikipedia articles

#

Most usefull thing ever trust

still maple
gaunt bluff
#

Having a wikipedia button through selected words would actually be very usefull

elder plinth
still maple
gaunt bluff
still maple
#

learn git and github

#

and review PRs

#

having more reviewers would be crazy

#

but to be a good reviewer you need to already know how to write good code

gaunt bluff
still maple
gaunt bluff
still maple
modest widget
scenic brook
#

Then it'd be RealProfileThemesAndEffects

glass jasper
#

I’d assume others with the plugin can see

#

Assuming it’s basically just a port of the Vendetta version

glass jasper
#

PTB, zero idea if it works on stable

#

Cant test rn

charred monolithBOT
fossil inlet
fossil inlet
#

fake nookies pfp jumpscare

limber skiff
#

😭 😭

#

hes everywhere

fossil inlet
#

vendroid has been EOL for a while now

austere talon
#

it has never been EOL

#

it just doesnt need updates

glass jasper
#

What V said

#

We update the list according to whats known / whats asked

#

V asked for not to be listed as discontinued so we didn’t

austere talon
#

stop @fossil inlet

austere talon
charred monolithBOT
jolly egret
#

fwiw a project that is not worked on, archived and is not supported at all by its creator sounds discontinued

#

nor is it active

fossil inlet
#

but Shrug

austere talon
#

ok

#

it does not need any updates besides vencord updates

#

vencord is not discontinued

#

so vendroid is also not discontinued

limber skiff
#

webpack find? 😭

fossil inlet
limber skiff
#

how does discord does the second

fossil inlet
#

.features.has

austere talon
chrome coral
charred monolithBOT
austere talon
#

github needs to add yapping emoji

austere talon
#

is someone fixing the guild changes or should I

charred monolithBOT
fossil inlet
austere talon
#

oh

#

real

#

finished?