#๐Ÿ‘พ-core-development

1 messages ยท Page 275 of 1

austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
glass jasper
#

Should publish a tag also

#

Been a bit since that was done

austere talon
#

no

charred monolithBOT
austere talon
#

looks like BetterSettings is broken again

#

also Vencord doesn't even show in the context menu (without the plugin)

fossil inlet
austere talon
#

it works with old settings

#

probably need to do a similar patch

#

oh duh

#

this is outdated

austere talon
#

easy fix

#

they have this dumb map

#

they ignore anything that isnt in that map

still maple
# austere talon easy fix

btw before it used to actually expand on the whole screen, but now it seems like it's capped by the height of the parent, is there a way to fix it at the same time ? i notice it in your picture too, you have a scrollbar where it could just be shown

austere talon
#

i think it's related

#

the code they use rn is so atrocious

#

it's a mix of old and new settings

#

i could fix it but it will just break again once they remove old settings

elder plinth
austere talon
#

eh i will do a dirty fix rn

#

fixed

#

idk about the size tho

#

i think discord just doesnt allow context menus to grow anymore

gritty iris
#

any idea how and if SettingsRouter.open works with the new ui??

austere talon
#

findByProps("openUserSettings").openUserSettings("vencord_plugins_panel")

gritty iris
#

ty

austere talon
#

--reference-position-layer-max-height: 233px;

#

new shit needs to be nuked

fossil inlet
#

i really like this idea tbh

i think it looks better than the generic cog

austere talon
#

well come up with a good icon then

charred monolithBOT
austere talon
#

i was so confused when i saw these in discord's array while debugging ๐Ÿ˜ญ

charred monolithBOT
charred monolithBOT
charred monolithBOT
austere talon
#

I added a comment

fossil inlet
#

insane

#

why does it lag so much

dusk blaze
shut vineBOT
#

Alright @dusk blaze, in 9 hours, 17 minutes and 45 seconds: do on userplugininstaller

charred monolithBOT
charred monolithBOT
#

Pull request overview

This PR refactors Vencord's CSS management system to unify all styles into a single hierarchical root node and updates the preload script to support Electron process sandboxing for future compatibility.

  • Centralizes all Vencord styles under a vencord-root node with three child nodes for core, managed, and user styles to maintain consistent specificity ordering
  • Migrates CSS loading from the preload script to IPC handlers in the main process to support sandboxed ...
charred monolithBOT
#
[Vendicated/Vencord] New tag created: v1.13.7
charred monolithBOT
charred monolithBOT
charred monolithBOT
shut vineBOT
#

@dusk blaze, <t:1765068135:R>: do on userplugininstaller

charred monolithBOT
austere talon
#

nino insane

dusk blaze
#

@austere talon lvoes lingering issues

austere talon
#

the requirement is there so people don't open dumb issues

crude hearth
#

๐Ÿ™

#

we will get thi pr merged this year

#

timedones

prime dew
#

Ngl I would actually use it

gritty iris
bright island
#

does my timedones knockoff plugin work?

odd heath
#

Very useful pr trust

charred monolithBOT
gritty iris
charred monolithBOT
#

Pull request overview

This PR adds a Chrome extension popup interface for Vencord Web, providing users with quick access to settings management and information about their installation. The popup displays version info, git commit hash, and action buttons for common tasks like importing/exporting settings, disabling plugins, and resetting themes.

Key Changes:

  • Added popup UI with HTML, CSS, and JavaScript for managing Vencord settings
  • Updated build script to generate and include me...
dusk blaze
#

copilot acts like a pedantic corporate reviewer

dusk blaze
#

@warm quiver i already ran cursor on this codebase /srs

#

and Claude Code

#

and chatgpt

#

numerous times

charred monolithBOT
charred monolithBOT
charred monolithBOT
#

Content

When using emojis from Fake Nitro, a nice QoL change would be the option to enable from the plugin settings the ability to automatically replace the text display placeholder for the emoji embedding with some blank unicode symbol like u2800 = โ €.

E.g.

Original:
[ExampleEmoji](https://cdn.discordapp.com/emojis/012345678912345678.webp?size=48&name=ExampleEmoji)

Proposed Change:
[โ €](https://cdn.discordapp.com/emojis/012345678912345678.webp?size=48&name=ExampleEmoji)

Re...

gritty iris
gritty iris
#

I know how the badges are managed by venbot but havent seen the rest

turbid hatch
#

the badges are managed through venbot and stored on the vencord server, the explorer is not on a repo

gritty iris
#

I see okay thank you thumbs_up

glass jasper
austere talon
#

the html file is the source

#
wget https://badges.vencord.dev/explorer.html
dusk blaze
#

and Bun

austere talon
#

i am making badge manager with react

dusk blaze
#

DIE

#

use Vanilla Js or something

#

its not that hard

weak thistle
#

nina #1 slop shill so anything he recommends I automatically assume is slop and I should avoid

austere talon
#

then i just approve

weak thistle
#

fire

gritty iris
#

I was wondering because our badge sys is really bad and I dont want to use gh forever ๐Ÿ˜ญ

#

and im just intrigued it looks really clean

austere talon
#

or dms if you join the server

weak thistle
#

do

austere talon
#

for managing badges i use slash commands

#

venbot

gritty iris
#

the badges.ts

austere talon
#

but i will make the dashboard now

gritty iris
austere talon
#

but i will still have to manually approve badges and perks because github api is so bad there is no api for checking total sponsorship amount

weak thistle
#

aw I was just gonna ask how are you gonna deal with dono amounts

austere talon
#

no reply still

#

sponsors is so abandonware

weak thistle
#

๐Ÿ’”

austere talon
#

you can only check current tier

weak thistle
#

use kofi or smth I think it has total amount

austere talon
#

NO

#

5% fee

dusk blaze
austere talon
#

nah

#

approving is so quick

#

i will just make it send to channel with venapp and add checkmark

dusk blaze
#

make mod visible

#

or i make a badges feed bot

#

stalks badges.json for changes

weak thistle
#

insane

gritty iris
#

I can check tho

#

if its something like that

fossil inlet
dusk blaze
#

fake Active Developer badge

gritty iris
#

real

fossil inlet
austere talon
#

nah

weak thistle
#

same day delivery

dusk blaze
austere talon
#

I should write the site with i18n so we can translate to Turkish, Arabic, Brazilian and French

dusk blaze
#

BRAZILIAN

austere talon
#

people from those countries don't understand English they need translation

dusk blaze
#

@white valve

#

v+ prog 797566974024351745

austere talon
austere talon
#

using astro

weak thistle
#

๐Ÿš€

gritty iris
#

debated if it was worth pring lol

#

they added a param after content was the only change

weak thistle
#

truly one of the prs oat

gritty iris
#

nah

weak thistle
#

๐Ÿ”ฅ

gritty iris
#

alot of my older prs are just 1-3 char changes

#

I found 3 so far

#

lol

austere talon
#

did u fix badge api yet

#

component is borked

#

badgeapi fix btw

charred monolithBOT
austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
#

Actually will have to reconsider this PR unfortunately

Due to not using a custom component anymore, we can't actually use hooks here. This means we have to hard-code the status fill colours because Discord only exports the hook, not a non hook version. And that's very annoying :(

I might just add the ability to use hooks inside getBadges(), but until that this PR will have to wait

gritty iris
#

lmfao

#

didnt notice it was borked

#

I actually hate git

#

did you see settings v2 tabs are borked?

austere talon
#

wdym?

gritty iris
#

seems like its only canary

gritty iris
#

discord just swallowed a lot of classnames

gritty iris
#

they literally flip flopped them and dropped all of button- for redesigned-button- --interactive was redone and some other stuff I'll probably tmrw if it's not already done

charred monolithBOT
charred monolithBOT
#

All emojis (regardless of extension) may be sent with a .webp extension, as outlined here. When sent as such, with the animated=true parameter, the fake nitro plugin will not animate the (originally .gif) emoji.
This PR fixes this behavior and sets the emoji to animated if the animated parameter is set to true.

Written due to a change in a mobile plugin (unrelated to Vencord) sending fake emojis ...

fossil inlet
fossil inlet
#

yeah i was thinking of this

grave mangoBOT
austere talon
#

why did someone say vencord doesnt show in settings on canary

#

cant reproduce

#

oh nvm

#
function d(e, t) {
    if (u(e)) {
        let t = Vencord.Plugins.plugins["Settings"].buildLayout(e).map(e => d(e))
          , {buildLayout: n} = e
          , r = s(a({}, l(e, ["buildLayout"])), {
            layout: t
        });
        return t.forEach(e => e.parent = r),
        r
    }
    return e
}
#

guh its the same on stable

#

whatd they change

#

exactly why i wanted to wait with patching this

#

discord also changed 3 morbillion css variables

#

lovely

charred monolithBOT
austere talon
charred monolithBOT
gritty iris
#

most of them were reverse

#

interactive was redone

#

buttons were moved to redesign-button

austere talon
#

yes

#

im fixing rn

gritty iris
#

foreground stuff was dropped

gritty iris
austere talon
#

made a list of shit thats gone

austere talon
gritty iris
#

I only replaced what was shown to me lol

#

alr

#

whats left?

austere talon
#

a lot

gritty iris
#

ill add it to that pr I just made

#

that list?

charred monolithBOT
#
[Vendicated/Vencord] New branch created: unexplode-css-vars
austere talon
#

grep -ohE -- '--((\w|-)+)' src/**/*.{ts,tsx,css} | uniq | wl-copy

#

i just grepped for all strings that start with --

gritty iris
#

real

austere talon
#

some arent variables

gritty iris
#

I just use stable to compare class names

gritty iris
#

im looking for these rn

charred monolithBOT
#

WIP

  1. Get list of all used css vars: grep -ohE -- '--((\w|-)+)' src/**/*.{ts,tsx,css} | uniq
  2. Check this list against Discord's vars:
vars = `
paste the output of step 1 here
`.trim().split('\n')

function getAllCSSVariables() {
  const vars = new Set();

  for (const sheet of document.styleSheets) {
    let rules;
    try {
      rules = sheet.cssRules; // Some sheets may be blocked by CORS
    } catch {
      continue;
    }

    if (!rules) continue;

    ...
austere talon
#

i put the code i usded there

gritty iris
#

for --background-modifier-hover im just gonna use --background-mod-subtle they are the same

charred monolithBOT
#

all unmatched:

--offset
--duration
--text-danger
--profile-gradient-primary-color
--background-mod-faint
--vc-spotify-track-image
--interactive-hover
--button-danger-background
--control-background-secondary-default
--focus-primary
--button-positive-background
--button-positive-border
--button-positive-background-hover
--control-icon-icon-only-default
--control-background-icon-only-hover
--control-border-icon-only-hover
--control-icon-icon-only-hover
--text-primary
--c...
austere talon
#

u can use this list

gritty iris
#

alright thumbs_up

#

already got a few done

austere talon
#

first two are not css vars

gritty iris
#

--background-base-lower-alt is off stable

austere talon
#

now it should be only vars

#

btw optimally this fix will be stabel compatible ๐Ÿ˜ญ

#

this is a really annoying situation

gritty iris
#

they pushed css so fast to stable normally no?

austere talon
#

we need to push extension because settings ui broke
to push extensions we need to make sure this fix is stable compatible

gritty iris
#

alr

austere talon
#

btw this is also broken

gritty iris
#

lmfao

austere talon
#

its gone

gritty iris
#

was replaced

#

I already fixed those

#

im trying to find --bg-overlay

#

--profile-gradient-primary-color still exists

#

supposedly

austere talon
gritty iris
#

wha

austere talon
#

its gone i think

gritty iris
#

ye

#

they renamed faint to muted

#

I hate to say it a lot of this is NOT on stable

#

๐Ÿ˜ญ

austere talon
#

well

#

we can easily do compat

#
var(--new, var(--old))
gritty iris
#

thats a thing??

#

neat

austere talon
gritty iris
#

real

austere talon
#

so he made 200 commits of just "cleaning up" css variables

gritty iris
#

just this week

austere talon
gritty iris
#

do you want to use the new button css?

charred monolithBOT
austere talon
austere talon
gritty iris
#

ill pr what I have so you can look

#

ima do more tho

austere talon
#

what is new background-primary

gritty iris
#

doesnt exist on stable

#

im just using that to check

austere talon
#

vesktop uses these

gritty iris
#

alright

#

ill check them

#

im gonna finish up the list for the most part

austere talon
#

i will do vesktop ig

gritty iris
#

alr

#

ill send whats missing off stable once I finish

austere talon
#

why did they remove background-primary but not background-secondary

#

vesktop needs these updated

bg-secondary
info-warning-foreground
header-secondary
background-primary

gritty iris
#

they didnt add background-strong

#

its over

#

ill go back and add the compat after im done

austere talon
#

bruh why is this colour hardcoded (vencord code)

austere talon
gritty iris
#

I can do that?

austere talon
#

well

#

paste the git diff into chatgpt and tell it to write a bash script that does the compat replacements using something like sed

gritty iris
#

real

austere talon
#

or see if vscode copilot can do it if u have

gritty iris
#

it writes settings descriptions for me

#

thats all I use it for

austere talon
#

let me make a new list of variables

#
--text-danger
--profile-gradient-primary-color
--vc-spotify-track-image
--enable-speech-dispatcher
--button-danger-background
---border-focus
--button-positive-background
--button-positive-border
--button-positive-background-hover
--text-primary
--button-secondary-background
--button-secondary-background-hover
--background-base-lower-alt
--control-border-primary-default
--status-offline
--background-modifier-selected
--background-modifier-active
--custom-folder-color
--bg-brand
--profile-message-input-border-color
--input-background
--background-message-hover
#

only these left

gritty iris
#

--profile-message-input-border-color
--background-base-lower-alt

#

these are dead

austere talon
#

u messed this up btw lmao

#

three dashes

gritty iris
#

and then was like

#

-border-focus

#

I forgot a - on the original replace

#
--text-danger
--profile-gradient-primary-color
--enable-speech-dispatcher
--text-primary
--profile-message-input-border-color
#

im working on buttons rn

austere talon
#

yeah like i said the list can have false positives

gritty iris
#

yup

austere talon
#

i only checked global css variables

#

(i vibecoded that script trol)

#

ai is so nice for shit like this

gritty iris
#

what should I do for borders?

#

button redesigns dont have them

austere talon
#

i would have taken 10 minutes to write the script instead i just created it in 20 seconds with ai

gritty iris
#

real

austere talon
gritty iris
#

alr

austere talon
#

buttons should look same as discord's

charred monolithBOT
#
[Vendicated/Vencord] New branch created: feat/cloud-sync-direction
gritty iris
#

time to chatgpt sed

charred monolithBOT
#

This will let you change your local client's cloud sync directionality.

For instance, if you are using a laptop, you may only want to pull your Vencord settings from the cloud, but you don't want to push back. Your changes on the laptop would remain intact until another device pushes to the cloud, at which point it would sync from the cloud again with the new changes.

The four options are:

  • Sync bidirectionally (the current method, and the default)
  • Push settings to cloud
  • Pull se...
gritty iris
#

dont wont work for me

austere talon
#

i will do

gritty iris
#

alr lemme pr

turbid hatch
#

its such an obviously blatant idea

austere talon
gritty iris
#

it doesnt exist anymore

charred monolithBOT
gritty iris
charred monolithBOT
gritty iris
#

figured I would comment it incase someone takes a crack at it

#

Also I didn't check what speech dispatcher is so idk if it's us or not but not on stable

gritty iris
#

Lol

#

4 things left

#

All of them were removed

#

Wait I lie

#

If memory serves me gradient still exists

austere talon
#

u didnt fix the border focus ๐Ÿ˜ญ

#

its okay i will fix

#

--text-danger
--profile-gradient-primary-color
---border-focus
--text-primary
--background-base-lower-alt
--custom-folder-color
--profile-message-input-border-color
--background-modifier-selected

#

these are all still left

gritty iris
#

I got selected?

austere talon
gritty iris
#

Tf

#

It's strong now

#

Not selected

austere talon
#

nah u didnt fix

gritty iris
#

bruh

austere talon
#

its okay i will fix

gritty iris
#

I screwed up the active one

#

and put strong thought I went back and changed it prob forgot to update selected

#

maybe it didnt save

charred monolithBOT
gritty iris
#

I lie

#

I read the diff wrong

austere talon
#

wha?

gritty iris
#

I removed the fix

hybrid blaze
gritty iris
charred monolithBOT
austere talon
#

oh its mod

charred monolithBOT
#

Thanks for the feedback on #3832. I've created this new PR, which merges into #3832, to address your comment. I will work on the changes and keep this PR's description up to date as I make progress.

Original PR: #3832
Triggering comment (https://github.com/Vendicated/Vencord/pull/3832#issuecomment-3638148948):

@copilot add css variable backwards compatibility to this PR. read the diff and when you see:

- color: var(--interactive-normal);
+ color: var(--interactive-icon-def...
austere talon
#

lets see

austere talon
#

let bro cook

#

he takes a bit

gritty iris
#

Sorry I didn't know I had a grandpa ai

austere talon
#

it has to clone, figure out stack, figure out how to install dependencies, install dependencies, figure out how the project works, then do changes ๐Ÿ˜ญ

#

its expected to take a while

#

told you it's cooking

#

my son

gritty iris
#

Look at how good your son is at coding YIPPIEEEE

#

Now let it do patches trolley

austere talon
#

lmaoooo

#

i thought about using ai to fix patches tbh

#

if you feed it before and after source and tell it to port the patch it probably can if the patch doesnt have to be remade from scratch

gritty iris
#

It's just quicker to fix patches most of the time by hand imo

#

if its a bigger patch I can see ai helping

#

but most of the time for me atleast it takes like 5-10 seconds to fix it

charred monolithBOT
gritty iris
#

the actual question is if I have the want too

fossil inlet
austere talon
#

yep he cooked

gritty iris
charred monolithBOT
gritty iris
fossil inlet
gritty iris
#

one day

#

๐Ÿฅ€

#

probably after manti's pr is merged

#

almost been 3 years

#

he can wait 3 more right?

charred monolithBOT
turbid hatch
#

oh right

#

happy 2nd birthday to translation v1

#

in 5 days

charred monolithBOT
#
[Vendicated/Vencord] branch deleted: copilot/sub-pr-3832
gritty iris
turbid hatch
#

thats not my pr

gritty iris
#

the other pr was june 1st 2024

#

I ss'ed the wrong one

turbid hatch
gritty iris
turbid hatch
#

closed on

gritty iris
#

rip

turbid hatch
#

that was when v2 was made

gritty iris
#

happy 2nd anniversary?

turbid hatch
#

yep

austere talon
#

semi adopted

gritty iris
#

damn

charred monolithBOT
gritty iris
#

better?

austere talon
#

he forgot these

gritty iris
#

disappointment

#

want me to pr them?

austere talon
#

sure

fossil inlet
austere talon
#

but idk how often u make changes

gritty iris
#

I didnt see anything else missing

fossil inlet
#

Also, I'm fairly certain the plugin is still backwards compatible with the old extension, so only the plugin needs to be upstreamed

#

trolley just a few changes from the original companion

austere talon
#

idc much about the extension, it does what i want it to (minus the fact that it doesnt apply in some files like core HUSK)

fossil inlet
austere talon
#

does ur extension fix support for files like core plugins

fossil inlet
#

no, but that's like a one line change

austere talon
#

how did u make this many changes and not fix that lmaoo

fossil inlet
#

wait

austere talon
#

does it not bother you

fossil inlet
#

it might

#

let me check

#

i dont do things in core that often

austere talon
#

see the lack of test patch buttons

fossil inlet
#

yeah

#

it fixes it

austere talon
#

gooooood

#

okay

fossil inlet
#

yes

austere talon
#

why are parsers separate repo catthink

fossil inlet
austere talon
#

oh

#

fair enough

fossil inlet
#

also i do other things with ast parsing quite a bit so i just npm install @vencord-companion/ast-parser

austere talon
fossil inlet
#

๐Ÿ˜ญ

#

is my pr for that to vencord still open

austere talon
#

i dont really like the generic names but besides that i wouldnt mind adding

#

vesktopStable would be better

austere talon
fossil inlet
#

no

#

looks normal

austere talon
#

nah is is lmao

#

this is brighter

fossil inlet
#

oh yeah

austere talon
austere talon
fossil inlet
#

half my monitors are just used office monitors

austere talon
#

yeah

#

my second monitor is that

#

its a piece of shit monitor

#

i should maybe buy a cheap 144hz 1080p monitor instead

fossil inlet
#

i really like mine because it's also a USB hub

austere talon
fossil inlet
#

tbh i don't really notice unless i'm playing a game

austere talon
#

found a 144hz monitor for 30โ‚ฌ

hybrid blaze
#

sounds high quality

austere talon
#

but its kind of a piece of shit

#

from 2012

austere talon
#

idk if i want this as second monitor

hybrid blaze
#

this hdr color thinggy kills me

fossil inlet
#

oh

#

i didn't see your next message ๐Ÿ˜ญ

#

#3204 if you want to merge

turbid hatch
austere talon
#

bruh they pushed to stable @gritty iris

charred monolithBOT
austere talon
#

well whatever

#

we need to fix
--text-danger
--profile-gradient-primary-color
--text-primary
--profile-message-input-border-color
--background-base-lower-alt

#

then merge main

gritty iris
austere talon
#

uh interactive-normal is also gone

#

nvm

gritty iris
#

apperantly

austere talon
#

ts isnt even used

#

all this shit unused

gritty iris
#

both text ones are done

gritty iris
austere talon
#

no i just removed them lol

gritty iris
#

alr

#

what else is left

austere talon
#

this border looks shit

#

also misaligned lmaoo

#

reviewdb moment

gritty iris
#

around the modal?

gritty iris
#

--profile-message-input-border-color is whats left

#

was just removed

#

its rdb's input

#

ima just remove it

charred monolithBOT
austere talon
#

no

#

i fixed

gritty iris
#

alr

austere talon
#

text primary is now default right

#

yes

gritty iris
#

I was talking about this --profile-message-input-border-colo

charred monolithBOT
gritty iris
#

but you got it

#

want me to pr what I have?

#

wasnt text-primary moved to strong?

austere talon
#

sure or just send the patch

#

i hate that they removed their old thing

gritty iris
#

-default has been there for awhile for text

#

it was renamed from something else

gritty iris
#

text-primary was changed there so should probably change that back

charred monolithBOT
#
[Vendicated/Vencord] branch deleted: unexplode-css-vars
austere talon
#

thanks for help tho

gritty iris
austere talon
gritty iris
#

this is harrassment how dare they

austere talon
#

it was so useful

#

we should make that for vencord tbh with vencord components

#

so it's easier to see if any are broken

gritty iris
#

it would be so much easier

charred monolithBOT
shy veldt
#

M15.55 5a5.5 5.5 0 0 1 5.15 3.67h.3a2 2 0 0 1 2 2v3.18a2 2 0 0 1-2 1.99h-.2A4.54 4.54 0 0 1 16.55 19a4.45 4.45 0 0 1-3.6-1.83 1.2 1.2 0 0 0-1.9 0 4.44 4.44 0 0 1-3.9 1.82 4.54 4.54 0 0 1-3.94-3.15H3a2 2 0 0 1-2-2v-3.18c0-1.1.9-1.99 2-1.99h.3A5.5 5.5 0 0 1 8.46 5h7.09Zm-7.1 2C6.6 7 5.06 8.5 4.97 10.41l-.02.66v3.18c0 1.43 1.05 2.66 2.34 2.74.85.06 1.63-.32 2.14-1.01a3.2 3.2 0 0 1 2.57-1.3c1 0 1.97.48 2.57 1.3.5.69 1.3 1.08 2.14 1.01 1.3-.08 2.34-1.31 2.34-2.74l-.02-3.84a3.54 3.54 0 0 0-3.49-3.43H8.45Z
catch icon for vr in platform indicators

#

๐Ÿ˜Š

fossil inlet
#

Insane

austere talon
#

oh my god

#

pane is gone

#

so fucking annoying

#

this is why i wanted to wait

charred monolithBOT
austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
charred monolithBOT
#
[Vendicated/Vencord] New tag created: v1.13.8
charred monolithBOT
charred monolithBOT
austere talon
#

sadan master of making prs then never resolving feedback

charred monolithBOT
#

Pull request overview

This PR refactors the platform indicator badges to use the built-in Badge API instead of custom React components. The change extracts SVG icon paths into separate files and leverages the badge API's native icon rendering capabilities, which fixes display issues on Discord Canary.

Key changes:

  • Migrates from component-based badges to icon-based badges using the Badge API
  • Extracts SVG icon definitions into separate files in an icons/ subdirectory
  • Adds SVGO depe...
#

Accessing SVGIcons[platform] without validation could result in undefined if the platform is not one of the expected DiscordPlatform values. Consider adding a fallback like SVGIcons[platform] ?? SVGIcons.desktop similar to how the Icons object is accessed at line 88.

            iconSrc: "data:image/svg+xml," + encodeURIComponent((SVGIcons[platform] ?? SVGIcons.desktop).replace("#000000", colorMap[status] ?? colorMap.offline)),
#

The platform variable from Object.entries(status) is typed as string, but it's used to index SVGIcons which expects a DiscordPlatform key. Add an explicit type assertion platform as DiscordPlatform like in line 162, or add validation to ensure the platform is a valid key before accessing SVGIcons[platform].

            iconSrc: "data:image/svg+xml," + encodeURIComponent(SVGIcons[platform as DiscordPlatform].replace("#000000", colorMap[status] ?? colorMap.offline)),...
#

React hooks are being called before early returns in the function, which violates the Rules of Hooks. The useStatusFillColor calls at lines 119-123 happen before the early returns at lines 128 and 133. If the function returns early, the hooks would be called on some renders but not others, breaking React's requirement that hooks must be called in the same order every time. Move the colorMap creation inside the map function at line 135, or after all the early return conditions.

austere talon
#

lmaooo

#

yapppp

#

good suggestions icl

tardy timber
#

phone notifs blowing up

austere talon
#

most of the feedback is good but two of them are straight up wrong

austere talon
tardy timber
#

should this be ignored?

austere talon
#

itd be better to add

tardy timber
austere talon
#

the ones i resolved

tardy timber
#

ah okay

tardy timber
fossil inlet
chrome coral
#

v+ regular 848339671629299742

austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
austere talon
weary bolt
charred monolithBOT
fossil inlet
#

is there any alternative

#

besides fetching the main page

summer mantle
#

how does vencord inject into the discord client? like what part of code does that, and how does it work?

#

this might be more complex than to explain in a discord channel but I was just wondering if I could get pointed to the right place shiggy

fossil inlet
#

it's the right place

#

are you more wondering how we run javascript on discord in the first place

#

or how we do things once we run javascript

#

GOOD LORD WHAT DID THEY DO TO CLASSES

gritty iris
gritty iris
charred monolithBOT
fossil inlet
#

guhh

#

image didn't embed

#

fixes this

tardy timber
fossil inlet
#

everything here needs to be updated

#
22 results - 8 files

src/plugins/blurNsfw/index.ts:
  26      style.textContent = `
  27:         .vc-nsfw-img [class^=imageContainer],
  28:         .vc-nsfw-img [class^=wrapperPaused] {
  29              filter: blur(${Settings.plugins.BlurNSFW.blurAmount}px);

src/plugins/clientTheme/clientTheme.css:
  17  
  18: .vc-clientTheme-container [class^="swatch"] {
  19      border: thin solid var(--input-border-default, var(--input-border)) !important;

src/plugins/gameActivityToggle/style.css:
  1: [class^="panels"] [class^="avatarWrapper_"] {
  2      min-width: 0;

src/plugins/messageLogger/messageLogger.css:
  1: .messagelogger-deleted [class^="buttons"] {
  2      display: none;

src/plugins/pinDms/styles.css:
  23  
  24: .vc-pindms-modal-content [class^="defaultContainer"] {
  25      display: none;

src/plugins/serverInfo/styles.css:
  73  
  74: .vc-gp-server-info-pair [class^="timestamp"] {
  75      margin-left: 0;

  94  
  95: .vc-gp-scroller [class^="listRow"] {
  96      margin: 1px 0;

  98  
  99: .vc-gp-scroller [class^="listRow"]:hover {
  100      background-color: var(--background-mod-subtle, var(--background-modifier-hover));

src/plugins/showHiddenChannels/style.css:
  96  
  97: .vc-shc-allowed-users-and-roles-container > [class^="members"] {
  98      margin-left: 12px;

src/plugins/spotifyControls/spotifyStyles.css:
  161  
  162: #vc-spotify-progress-bar > [class^="slider"] {
  163      flex-grow: 1;

  167  
  168: #vc-spotify-progress-bar > [class^="slider"] [class^="bar"] {
  169      height: 3px !important;

  172  
  173: #vc-spotify-progress-bar > [class^="slider"] [class^="barFill"] {
  174      background-color: var(--interactive-icon-active, var(--interactive-active));

  176  
  177: #vc-spotify-progress-bar > [class^="slider"]:hover [class^="barFill"] {
  178      background-color: var(--vc-spotify-green);

  180  
  181: #vc-spotify-progress-bar > [class^="slider"] [class^="grabber"] {
  182      /* these importants are necessary, it applies a width and height through inline styles */

  193  
  194: #vc-spotify-progress-bar:hover > [class^="slider"] [class^="grabber"] {
  195      opacity: 1;
gritty iris
austere talon
#

anyway i think discord just fucked up

gritty iris
#

its a diff hash?

austere talon
#

oh

#

i see what you mean

gritty iris
#

thats the just version.json

fossil inlet
gritty iris
#

also stable.json just died

austere talon
austere talon
#

dont open link from within discord

#

copy manually

gritty iris
#

its chrome?

#

I just manually typed it

#

๐Ÿ˜ญ

austere talon
#

they give u that if u open discord link with discord.com referrer

#

idk why

gritty iris
#

I opened it from my chrome history

austere talon
#

odd

#

has version instead of hash

fossil inlet
summer mantle
#

Im new to modding electron apps, I just wanted to test some on the dc client so I could learn a bit more about it

fossil inlet
summer mantle
#

Since I canโ€™t find any info on modding electron apps online, and I donโ€™t want to use some damn ai to find out either

summer mantle
austere talon
#

The installer:

  1. Renames discord's app.asar to _app.asar
  2. Creates app.asar with an index.js that loads vencord's main javascript

The vencord main script monkeypatches electron.BrowserWindow to overwrite Discord's preload script with our own, then load's discord's original app.asar

The vencord preload runs Vencord's renderer then runs Discord's original preload

The vencord renderer monkey patches webpack's global object to hijack the module registry

#

if you don't know how electron processes (main, preload, renderer) work you should dive into that first, create a basic electron app from scratch to learn these concepts

fossil inlet
summer mantle
#

Iโ€™ll take a look at those too ty

austere talon
tardy timber
limber skiff
#

it uses a browser api to run the vencord renderer before the any of the page scripts

#

the second one

tardy timber
#

Ah fair enough

austere talon
#

it runs at the very start before even the dom is ready

#

basically

<html>
  <script></script>
limber skiff
#

I will dw

austere talon
#

two major changes

limber skiff
#

I received the review email blobcatblue

austere talon
#

btw this was wrong all along lmao idk how i never noticed

#

(in extension)

austere talon
#

ya reckon they will revert

fossil inlet
fossil inlet
odd heath
#

Vext

nimble pendantBOT
odd heath
#

shouldnt this text be white

prime dew
#

Based Sefa listener

odd heath
#

ty

fossil inlet
odd heath
#

could be yea

austere talon
#

im fixing PermViewer

#

kind of generic module guh

#

not a fan

#

@gritty iris discord removed even more css vars lmao

#

header-primary is kill

#

@fossil inlet other reporter idea:
find all css vars used by vencord and check if they still exist

#

header-primary is just text-strong now

fossil inlet
#

hmmmm (tbh that seems easier than getting the source locations of the finds)

#

but i might just be insane blobcatcozy

dusk blaze
#

use regex

fossil inlet
#

insane

austere talon
#

yeah its doable

#

i did it manually yesterday

#

(it uses grep and has false positives)

fossil inlet
#

why would i use regex when i can just parse the style sheets added by vencord in the browser

austere talon
#

well there are also some inline colours unfortunately

#

like theres this

#

and inline styles too

fossil inlet
austere talon
#

redesign-button-positive-pressed-background is already gone again

austere talon
austere talon
charred monolithBOT
austere talon
gritty iris
austere talon
#

header-primary and redesign-button-positive-pressed-background

#

idk redesign-button-positive-pressed-background equivalent but we dont use that component anyway so idgaf rn

#

ok fixed

charred monolithBOT
austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
gritty iris
#

can I file a complaint into the discord support void for removing too many class names trolley

#

I think this MIGHT be wrong?

austere talon
#

what commit?

gritty iris
#

the rename to icon-default was me but the var change wasnt

austere talon
#

the interactive-normal shouldnt be here yeah

willow garden
#

kill discord for css changes

austere talon
#

my instructions were flawed

gritty iris
#

real

austere talon
gritty iris
#

rtcConnectionStatus_ no longer works for all call timers css fix I just just removed the _ from inner and rtcConnectionStatus

charred monolithBOT
charred monolithBOT
gritty iris
fossil inlet
#

i love that feature

austere talon
#

or global gitignore

charred monolithBOT
charred monolithBOT
#

Content

I am completely unable to join the Discord Server, as every link returns an "Invalid" response or throws an error. (Until this is resolved it cannot be moved to discord, because I am not able to access the server.

Request Agreement

  • [x] I have read the requirements for opening an issue above
charred monolithBOT
#

what's your discord user id
also you are trying to access the server with discord.gg/vencord yes?

1: same as GitHub

2: no, using link right here on the repo.

3: I assume I may have been rude to a staff member or something?? I tend to do that, because staff members in large servers tend to have "big egos" (I don't mean any offense to anyone though, unless they get aggressive or hostile.)

dusk blaze
#

i can see why theyโ€™d get banned

#

vwb 1012501042006605955

nimble pendantBOT
grizzled halo
#

i was going to respond to them but i have no idea how

dusk blaze
#

this was back in discriminator era so just unban yk

#

okay donโ€™t unban

#

Fake nitro is an illegal service. Be glad you guys aren't (For my knowledge) a legal bussiness. This is some horrid customer support.

charred monolithBOT
summer mantle
#

How/when does Vencord get a reference to the webpackChunkdiscord_app so it can monkeypatch, grab modules, etc?

turbid hatch
summer mantle
turbid hatch
summer mantle
turbid hatch
#

renderer

#

fwiw you can look this up yourself by reading the buildscripts :p

grave mangoBOT
dusk blaze
#

they added this ugly menu

#

we should move icons on left ykyk

dusk blaze
#

๐Ÿ˜ญ

summer mantle
dusk blaze
#

idk it's my userplugin

summer mantle
dusk blaze
charred monolithBOT
gritty iris
#

I love discord so much

charred monolithBOT
alpine ridge
#

any chance that someone would be able to take another look at #3571, it was last reviewed 4 months ago and i believe all the issues that were raised are fixed

charred monolithBOT
charred monolithBOT
charred monolithBOT
charred monolithBOT
austere talon
#

i forgot to push to main

austere talon
#

the CustomRPC code is gone from that file

#

but still happens lmao

#
881530: function(e, t, n) {
    "use strict";
    n.d(t, {
        Z: () => p
    });
    var r = n(394821)
      , i = n(841784)
      , a = n(833664)
      , o = n(810568)
      , s = n(168524)
      , l = n(103479)
      , c = n(553375)
      , u = n(614716);
    function d(e, t, n) {
        return t in e ? Object.defineProperty(e, t, {
            value: n,
            enumerable: !0,
            configurable: !0,
            writable: !0
        }) : e[t] = n,
        e
    }
    function f(e) {
        for (var t = 1; t < arguments.length; t++) {
            var n = null != arguments[t] ? arguments[t] : {}
              , r = Object.keys(n);
            "function" == typeof Object.getOwnPropertySymbols && (r = r.concat(Object.getOwnPropertySymbols(n).filter(function(e) {
                return Object.getOwnPropertyDescriptor(n, e).enumerable
            }))),
            r.forEach(function(t) {
                d(e, t, n[t])
            })
        }
        return e
    }
    function p(e) {
        let {location: t, user: n, currentUser: d, activity: p, application: _, entry: m, onClose: h} = e
          , g = (0,
        s.Z)(f({
            location: t,
            source: o.m1.UserProfile,
            trackEntryPointImpression: !0
        }, (0,
        c.nK)({
            user: n,
            activity: p,
            entry: m
        })))
          , E = (0,
        u.Z)({
            applicationId: null == _ ? void 0 : _.id,
            onClose: h
        })
          , b = (0,
        i.Z)(p);
        return b && null != _ ? E : !b && (0,
        a.Z)(p) ? g : (0,
        r.Z)(p) && n.id !== d.id ? () => (0,
        l.s)({
            activity: p,
            user: n,
            index: 0
        }) : void 0
    }
},
#

found it

#

annoying to patch

austere talon
#

nvm not relevant module

charred monolithBOT
austere talon
#

vtest

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
austere talon
#

welp

#

not important patch

charred monolithBOT
charred monolithBOT
austere talon
#

vtest dev3

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
austere talon
#

vtest dev

nimble pendantBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
#

4c8a734 FakeNitro: fix animated webp emojis not animati... - sophiethefox
6662647 ConsoleShortcuts: Add functions to switch branc... - sadan4
c36c750 fix PermissionViewer & css variables again - Vendicated
b011559 RoleColorEverwhere: fix poll vote list - Vendicated
b910b3d fix FriendsSince & own CustomRPC buttons not sh... - Vendicated

austere talon
#

someone should go through CustomRPC and check what conditions exactly make your presence fail to show (which special characters in which fields) and improve the validators

still maple
charred monolithBOT
gritty iris
#

found a new console wall of text

austere talon
#

they will probably remote that soon

#

seems like debug log

charred monolithBOT
austere talon
#

this makes the image quality so much better

#

but it messes up modals

#

idk why i made it so complicated

#

nvm that was an outlier

#

cant reproduce

charred monolithBOT
austere talon
#

it makes all images load at max resolution

#

so if someone sends 100mb image... well

austere talon
#

in FixImagesQuality

#

but it's so high res now

#

amazing

#

i can keep taking screenshot and it keeps looking good

austere talon
#

but then by default the plugin will only apply in modals

#

the idea is that you can just open modal for max res

idk why thats not a stock feature

limber skiff
#

but plugin will still always prevent webp

chrome coral
#

not yet cos I havenโ€™t started

austere talon
austere talon
#

oh my god it started yapping math

#
getSrc(props: { src: string; mediaLayoutType: string; width: number; height: number; }) {
        if (!settings.store.originalImagesInChat && props?.mediaLayoutType === "MOSAIC") {
            // make sure the image is not too large
            const pixels = props.width * props.height;
            const limit = 2000 * 1200;
            if (pixels <= limit) return props?.src;

            const scale = Math.sqrt(pixels / limit);
            const url = new URL(props.src);
            url.searchParams.set("width", Math.round(props.width / scale).toString());
            url.searchParams.set("height", Math.round(props.height / scale).toString());
            return url.toString();
        }

        return props?.src?.replace("https://media.discordapp.net/attachments/", "https://cdn.discordapp.com/attachments/");
    }
#

should i make limit a setting

#

nah

charred monolithBOT
austere talon
#

i should continue working on Tweaks

charred monolithBOT
#
[Vendicated/Vencord] New tag created: v1.13.9
charred monolithBOT
charred monolithBOT
willow garden
crude hearth
#

so broken

#

only usable in consoles phone n stuff tbh