#👾-core-development

1 messages · Page 252 of 1

hot hatch
#

i haven’t seen any extension using it and knowing how raw the extension support is, i think yes

#

but worth testing ig

charred monolithBOT
#

This PR fixes the Better Folders plugin's sidebar, and additionally turns the Sidebar Anim boolean config value into a slider determining the time it takes for the animation to finish for more customizability.

For the past few days, whenever I opened a folder with the Better Folders plugin while having the custom sidebar enabled, it would simply provide me with a blank bar and no guilds inside it.
image

...

charred monolithBOT
fossil inlet
#

@shell shuttle jumpscare

charred monolithBOT
shell shuttle
#

this new ceo sucks they're already removing small profiles

charred monolithBOT
granite wharf
#

small profiles weren’t the best anyway

fossil inlet
#

evil

jolly egret
#

true i want the old profile back

limber skiff
shell shuttle
#

i am

#

ha ha ha

limber skiff
#

they looked so nice

bleak blaze
# granite wharf ~~small profiles weren’t the best anyway~~
/*
 * Vencord, a Discord client mod
 * Copyright (c) 2025 Vendicated and contributors
 * SPDX-License-Identifier: GPL-3.0-or-later
 */

import { EquicordDevs } from "@utils/constants";
import { openUserProfile } from "@utils/discord";
import definePlugin from "@utils/types";
import { User } from "discord-types/general";

export default definePlugin({
    name: "AlwaysExpandProfile",
    description: "Always display a user's full popout",
    authors: [EquicordDevs.thororen],
    patches: [
        {
            find: '"UserProfilePopout"',
            replacement: {
                match: /(?<=user:(\i).*?"PRESS_VIEW_PROFILE".{0,50})return/,
                replace: "return $self.openUserProfile($1);"
            }
        },
        {
            find: '"BotUserProfilePopout"',
            replacement: {
                match: /(?<=user:(\i).*?"PRESS_VIEW_PROFILE".{0,50})return/,
                replace: "return $self.openUserProfile($1);"
            }
        },
    ],
    openUserProfile(user: User) {
        openUserProfile(user.id);
    }
});```
#

alwaysexpand

glass jasper
#

This guy

granite wharf
austere talon
limber skiff
#

you prefer the connections bigger now?

austere talon
#

wha

#

that's the new discord ui lmao

#

it's so bad 😭

limber skiff
#

oh

#

they copied the connections plugin lmaoo

#

why the huge padding tho

austere talon
#

they always showed there

#

I'm confused xd

limber skiff
#

ah

#

is that the full profile

#

thought it was the popup

austere talon
#

yea it's the profile modal

#

it's an experiment

#

there's also whatever this is lmao

#

it's a wasm thing

limber skiff
#

they are making this app look sooo weird

austere talon
#

apparently moving stores to wasm

limber skiff
#

tf

austere talon
#

I enabled the experiment and it seemed to have loaded libdiscore but I didn't notice any difference

#

and vencord works

#

not sure if it actually loaded it tho

limber skiff
#

i mean

#

maybe using wasm can actually make the ram usage better

austere talon
#

def not idk what they're cooking lol

limber skiff
austere talon
#

wasm stores will inherently use more ram since you have to store the data twice basically

#

and you constantly have to serialise data

limber skiff
#

well who knows

#

maybe they can cook somehow

austere talon
#

might just be some employee testing around and might be abandoned later

#

we'll see

limber skiff
#

the name is funny

#

actually this will be pretty shit depending on how they do

#

might not be able to patch flux listeners code

charred monolithBOT
limber skiff
limber skiff
#

did you leave good uni

#

well

#

it's just someone saying in discord previews that eventually all stores will be libdiscore

austere talon
#

who's someone

#

and why do they think so

#

it would likely be worse to have wasm stores lol

#

that's not what wasm is for

limber skiff
#

horrible

#

I cant forward the original forward lol

#

and im not in the server so

austere talon
#

are they moving the gateway to wasm too?

limber skiff
#

unsure

austere talon
#

that's the only way it could possibly make any sense

#

wasm isn't for storing data

charred monolithBOT
charred monolithBOT
fossil inlet
#

libdiscore is so weird

#

afaik they aren't using it anywhere yet

#

i lied, i'm just blind

dusk blaze
fossil inlet
#

i did this for ThemeStore erroring, but idk if that's the right way to fix it

diff --git a/src/utils/quickCss.ts b/src/utils/quickCss.ts
index c1e1175968..c25884a602 100644
--- a/src/utils/quickCss.ts
+++ b/src/utils/quickCss.ts
@@ -17,8 +17,12 @@
 */
 
 import { Settings, SettingsStore } from "@api/Settings";
+import { findModuleId, wreq } from "@webpack";
 import { ThemeStore } from "@webpack/common";
 
+import { Logger } from "./Logger";
+
+const logger = new Logger("QuickCSS");
 
 let style: HTMLStyleElement;
 let themesStyle: HTMLStyleElement;
@@ -90,6 +94,19 @@ async function initThemes() {
 
 document.addEventListener("DOMContentLoaded", () => {
     initSystemValues();
+    // if the theme store is not loaded yet, try to load it
+    if (!ThemeStore) {
+        const maybeThemeStoreID = findModuleId('"displayName","ThemeStore"');
+        if (maybeThemeStoreID) {
+            wreq(maybeThemeStoreID);
+        }
+    }
+
+    if (!ThemeStore) {
+        logger.error("Failed to load ThemeStore");
+        return;
+    }
+
     initThemes();
 
     toggle(Settings.useQuickCss);
charred monolithBOT
fossil inlet
limber skiff
austere talon
#

maybe we can rely on smth else instead

#

not themestore

#

maybe proto

#

now this actually makes sense

#

matching domain against a large list of domains

#

is way faster in native

#

rn it's only that

charred monolithBOT
fossil inlet
jolly egret
#

wht the fuck

charred monolithBOT
limber skiff
#

as long as they dont make all stores native 😭

charred monolithBOT
shell shuttle
#

im scared for this update

weak thistle
charred monolithBOT
#

Description

This plugin edits the current user message before being sent/edited to replace x.com or twitter.com with the corresponding fx embed URLs (fxtwitter.com and fixupx.com)

Note: On the future this could improved to affect all the incoming messages or other URLs apart from twitter/x, i wanted to try this simple approach to see if this would be used by someone or if im just lazy.

https://github.com/user-attachments/assets/52d1f357-4109-4f7d-83bc-71c3c35d37d7

desert cosmos
jolly egret
#

What's with people compiling regex for basic replacements

desert cosmos
#

rewriting vencord in rust

odd heath
charred monolithBOT
limber skiff
#

lmao

#

@austere talon remember the code I had for two webpack instances which we questioned if we should keep

#

they added a new one for libdiscore

#

and without the code patching wouldnt be working properly rn

#

and we are actually patching it, even though it doesnt matter

#

neat, it survived this

fossil inlet
#

hopefully the new changes make the better folder fixes more sane

#

(the old patches finally broke)

opaque silo
#

what's libdiscore

fossil inlet
#

wasm-bindgen bundle

brazen bone
#

Sounds like a musescore ripoff

austere talon
#

lc.img manticore

rancid idolBOT
fossil inlet
limber skiff
fossil inlet
# limber skiff wdym?

nevermind, i'm stupid

saw betterfolders patch break thought it was related to the sidebar, but it was the folders

fossil inlet
#

@austere talon uhhh why did react-dom fail to find

#

guhhh discord updated to react19 on canary

austere talon
#

love

#

Removed: ReactDOM.render
ReactDOM.render was deprecated in March 2022 (v18.0.0). In React 19, we’re removing ReactDOM.render and you’ll need to migrate to using ReactDOM.createRoot:

#

so render is gone

#

easy fix

#

just remove render

austere talon
#

isnt that wp instance just for the wasm crap

#

oh shit this breakage bad actually

#

it crashes when you open any image

limber skiff
fossil inlet
austere talon
limber skiff
#

I didnt even know bd broke

limber skiff
#

just like the old sentry

#

technically rn our patcher could set that instance as the main if it loads earlier than main somehow

#

though I dont think that's possible

charred monolithBOT
limber skiff
#

it's whatever

austere talon
#

what else is broken

#

i wanna push fix quickly

limber skiff
#

dunno

#

cant help rn

austere talon
#
e.exports = {
    row: "row__0a95c",
    icon: "icon__0a95c",
    noIcon: "noIcon__0a95c",
    details: "details__0a95c",
    name: "name__0a95c",
    avatar: "avatar__0a95c",
    nick: "nick__0a95c"
}
#

i fixed for canary

#

now it breaks on stable

charred monolithBOT
#
[Vendicated/Vencord] New branch created: fix-mgdms
austere talon
austere talon
#

ThemeStore fixed itself?

#

fire

charred monolithBOT
#
[Vendicated/Vencord] New branch created: dev3
austere talon
#

vtest dev3

nimble pendantBOT
nimble pendantBOT
# austere talon vtest dev3
Bad Patches

WebContextMenus (had no effect):
ID: 998502
Match: ```
/(?<=(?:canSaveImage|canCopyImage)(\i?){.{0,50})!\i.isPlatformEmbedded/g


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
.BITE_SIZE,user:

ReviewDB (found no module):
ID: -
Match: ```
.FULL_SIZE,user:


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
location:"UserProfilePanel"

ShowHiddenChannels (found no module):
ID: -
Match: ```
})},"overflow"))

Slow Patches

BetterRoleDot (took 5.4ms):
ID: 931617
Match: ```
/"(?:username|dot)"===\i(?!.\i)/g

nimble pendantBOT
# austere talon vtest dev3
Bad Patches

FriendsSince (had no effect):
ID: 595145
Match: ```
/#{intl::USER_PROFILE_MEMBER_SINCE}),.{0,100}userId:(\i.id),.{0,100}})}),/


**__BetterFolders (found no module):__**
ID: `-`
Match: ```
.expandedFolderBackground,

PlainFolderIcon (found no module):
ID: -
Match: ```
.expandedFolderIconWrapper


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
.BITE_SIZE,user:

ReviewDB (found no module):
ID: -
Match: ```
.FULL_SIZE,user:


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
location:"UserProfilePanel"

ShowHiddenChannels (found no module):
ID: -
Match: ```
})},"overflow"))

Bad Webpack Finds
findByProps("guildNick", "guildAvatarWithoutIcon")
austere talon
#

guh more shit breaking

#

wonderful

#

they just broke that i think

#

uh no?

#

false positive?

#

yeah seems so

limber skiff
#

dup find prob

austere talon
#

yeah im testing rn

#

595145

#

this module id wasnt even loaded for me

#

ohhh

limber skiff
#

bad find either way

austere talon
#

remember those ugly ass profile modals i showed u the other day

limber skiff
#

should change it

austere talon
#

that's what the duplicate find is

austere talon
#

no other place in the app you can press an app connection

limber skiff
#

analytics shit

austere talon
#

it causes failing patch on stable simply cause the code doesn't exist there (yet)

#

but that's okay

#

it still worksd on stable

fossil inlet
#

guhhh time to fix better folders

austere talon
#

DUDE reporter is so awful to use

fossil inlet
#

yop

austere talon
#

oneko
ctrl-enter send
alwaysanimate

fossil inlet
#

there's also some plugin that makes emoji auto complete not work

austere talon
#

we should honestly rethink all these plugins that disable features

#

feels like 90% of people enabling them are retards who dont read then complain in support

fossil inlet
#

noMessageSending soon™️

charred monolithBOT
austere talon
#

im gonna push to main and we should tag browser soon

#

what's a Siebar

fossil inlet
#

i saw that earlier

wonder how long till they fix it

jagged cloak
#

why was i replying to that lol

fossil inlet
#

what is the point of n = n = here

austere talon
#

none? :)

#

bro expects discord code to be sane

opaque silo
#

she vibes my code till I slop

fossil inlet
#

i wonder if that react component that always rendered null is still there

charred monolithBOT
austere talon
#

i tried fixing ReviewDB but it's a chore

#

discord hates reusing code

fossil inlet
#

i have it fixed in my pr blobcatcozy

austere talon
#

you know how these show in the

  • profile popout
  • profile modal
  • dm profile sidebar

you'd think Discord has a component like <HeaderButtons />. but no all the buttons are separate components and Discord has the same code duplicated across all above mentioned components that manually adds each one, so we have to patch every one

fossil inlet
#

you love disord code blobcatcozy

charred monolithBOT
#

thank you for your contribution, but this seems way too niche and also doesn't really do things in a good way. you're

  • polluting their stored data instead of just patching the message list renderer
  • dispatching MESSAGE_UPDATE events with the wrong datatype. Discord has both api messages (raw json as received by the api with snake_case) and message "records" (the same messages converted to js classes with snakeCase). MESSAGE_UPDATE expects api messages, but you're dispatching it with recor...
austere talon
#

@fossil inlet #📜-js-snippets hop on Vencord.Webpack.Common.UserSettingsActionCreators.FrecencyUserSettingsActionCreators.getCurrentValue().favoriteGifs

austere talon
fossil inlet
#

wrong reply

#

GUHHHH

austere talon
#

you're insane

#

that's profile modal not popout

#

and the patch works fine

fossil inlet
austere talon
austere talon
fossil inlet
austere talon
#

literally impossible

#

you didnt reload or didnt save

#

bd cooking

fossil inlet
#

i think discord keeps reverthing that patch

#

they cant make up their minds

austere talon
fossil inlet
austere talon
#

BRO

fossil inlet
#

it keeps failing and not failing

austere talon
#

no...

#

the reporter is a false positive

#

because duplicate find

austere talon
fossil inlet
#

im going insane

austere talon
#

this ugly poiece of shit experiment profile

#

that's the duplicate find

fossil inlet
#

yea i understand

austere talon
#

hop off farm merge valley

quiet daggerBOT
fossil inlet
#

WHY IS DISCORD DEVTOOLS SPAMMING DEBUGGER

austere talon
#

you love

fossil inlet
#

farm merge valley malware

austere talon
fossil inlet
#

yeah

austere talon
#

yeah it has anti reverse engineering shit lmao

#

but it's easy to bypass

fossil inlet
#

yeah

austere talon
#

thats how i got infinite cash

#

you can just put a breakpoint, set cash to 999999

#

and it works

#

lol

fossil inlet
#

if you disable breakpoints, it still lags so much it's unplayable

austere talon
#

install this

fossil inlet
#

yeah, i've heard of that

austere talon
#

you can probably load it with vencord

#

or just use discord in your browser

austere talon
fossil inlet
#

i even made my own anti-debug extension once because a site tried to disable react devtools by nulling out the global hook

#

DISCORDS NEW METHOD OF FOLDER ICONS IS FUCKING INSANE

#

they render both and move the other one out of the way

limber skiff
austere talon
#

nah their issue was react dom

#

they were using deprecated (since 2022) ReactDOM.render

#

same reason our ReactDOM find broke

#

(we didnt use it but we used it in our find)

limber skiff
#

what about that setTimeout

austere talon
#

idk bro

#

bd shenanigans

limber skiff
#

lol

austere talon
#

anyway im going to sleep

if you wanna and have time, feel free to fix the rest / merge sadans pr

fossil inlet
#

i still need to fix better folders in mine

austere talon
#

and i wanna tag browser soon because it has broken clipboard copy and also imagezoom causes crashes whenever u open an image

limber skiff
#

quick, setTimeout and give time for DevilBro to load their own react version

fossil inlet
#

just finished plainfoldericoins

#

guhhh can somone vtest dev

limber skiff
#

vtest dev

nimble pendantBOT
fossil inlet
#

ty

nimble pendantBOT
# limber skiff vtest dev
Bad Patches

WebContextMenus (had no effect):
ID: 998502
Match: ```
/(?<=(?:canSaveImage|canCopyImage)(\i?){.{0,50})!\i.isPlatformEmbedded/g


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
.BITE_SIZE,user:

ReviewDB (found no module):
ID: -
Match: ```
.FULL_SIZE,user:


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
location:"UserProfilePanel"

ShowHiddenChannels (found no module):
ID: -
Match: ```
})},"overflow"))

austere talon
#

where canary

fossil inlet
#

discord took it out behind the shed

austere talon
#

vtest dev canary

nimble pendantBOT
austere talon
#

Was that even right

#

vh test

nimble pendantBOT
# austere talon vh test

Reporter (report, vencord-reporter, test-patches, test)

Run the Vencord reporter workflow

Usage

vreporter [ref = dev] [branch = both]
austere talon
#

yes okay

#

but it should have tested canary the last time

#

TimeoutError: Navigation timeout of 30000 ms exceeded

nimble pendantBOT
# austere talon vtest dev canary
Bad Patches

BetterFolders (found no module):
ID: -
Match: ```
.expandedFolderBackground,


**__PlainFolderIcon (found no module):__**
ID: `-`
Match: ```
.expandedFolderIconWrapper

ReviewDB (found no module):
ID: -
Match: ```
.BITE_SIZE,user:


**__ReviewDB (found no module):__**
ID: `-`
Match: ```
.FULL_SIZE,user:

ReviewDB (found no module):
ID: -
Match: ```
location:"UserProfilePanel"


**__ShowHiddenChannels (found no module):__**
ID: `-`
Match: ```
})},"overflow"))
Bad Webpack Finds
findByProps("guildNick", "guildAvatarWithoutIcon")
charred monolithBOT
austere talon
#

well worked this time

austere talon
fossil inlet
#

why doesn't it reply with timeout errors wires

austere talon
#

it does.

limber skiff
austere talon
#

it will reply in 10 minutes

limber skiff
#

bewteen

fossil inlet
#

yop

#

bewteen

austere talon
#

this was a js error tho

#

not a handled error and not something that's supposed to happen

#

like i said weird hiccup

#

doesn't matter as long as it doesn't happen more often

grave mangoBOT
charred monolithBOT
fossil inlet
#

better folders should be ready for review

charred monolithBOT
charred monolithBOT
desert cosmos
#

can't open issues on the vencord repo? no problem! open them in the installer repo

#

insane

brazen bone
#

Stupid finds a way

scenic brook
#

Stupit*

brazen bone
#

Mb

charred monolithBOT
versed fern
#

I will open vencord issues in the vendroid repo

grand cliff
#

how do i go about injecting a custom vencord build; on linux

scenic brook
grand cliff
#

then reload i'm guessing?

scenic brook
#

When you do pnpm inject it closes discord anyway I think but yeah

#

You don't need to inject every time you build but you need to reload for each pnpm build

grand cliff
#

hmmm might be unwise to use the flatpak then.

#

thanks tho

grand cliff
#

it kinda seems like console.log doesn't work, is there any workaround for dumping some text or an object to the console?

sterile oak
grand cliff
#

it's not there :(

#

and i know getThemeInfo gets to that block because i've added to header to have an extra property and i'm checking for it and that shows up in the themes area

scenic brook
#

Did you build/reload after adding the log lines?

grand cliff
#

pnpm build && pnpm inject [select stable in /opt]
full discord restart

uneven needle
grand cliff
uneven needle
#

those log messages

#

those arent in the renderer context

grand cliff
#

i have jack shit react knowledge, all i'm trying to do is attempt to implement a way to check for css @property rules in theme files and have that list available to the end user literally somewhere (for now at least)

#

console.log is simply too useful of a debugging tool

scenic brook
#

console.log definitely works so your issue is something else

grand cliff
#

ykw. you're right. it is something else.
i checked the themes tab, where the extra element output is and yep it's there.
it's also in the log once checking that page.
-# im idiot sorry

charred monolithBOT
grand cliff
#

it works for my use case at least 🙃

#

contents of the latter

austere talon
# grand cliff it's not there :(

electron has three processes

main, preload and renderer

main is a nodejs process
renderer and preload are browser processes

the devtools console shows only logs from the browser process

that file is running in the main process (you can tell becsuse it's in the main folder). to see its logs you need to launch discord from terminal and it will be in the terminal

grand cliff
austere talon
#

that's good

grand cliff
#

thanks for the help
i've got some work cut out for me now haha
...i'll rename the function when it's closer to being done

austere talon
#

are you adding support that entire bd proposal?

#

is it released in bd yet?

grand cliff
#

i plan on it and idk

#

bd isn't supported on linux and i've gutted my windows vm so i've got no idea!

#

i mean hey if the two most widely used client mods support a neat css feature, why shouldn't it be used in themes?

scenic brook
#

What is this?

grand cliff
#

bd plan on (or already have?) implementing the ability to modify the values for css variables defined by @property. these values can then be used in the @container at-rule to futher change css properties

mdn: https://developer.mozilla.org/en-US/docs/Web/CSS/@property

MDN Web Docs

The @property CSS at-rule is part of the CSS Houdini set of APIs. It allows developers to explicitly define CSS custom properties, allowing for property type checking and constraining, setting default values, and defining whether a custom property can inherit values or not.

grand cliff
grand cliff
#

idk if using below works instead of @property tho

:root {
  --theme: dark;
}```
austere talon
#

their Linux installer is super basic and they tell you to use betterdiscordctl (third party tool) instead

austere talon
# grand cliff i plan on it and idk

much similar to BDs initial UserCss idea

  1. I don't want to add features like that before BD does so themes stay compatible
  2. BD might change their mind on this idea like they did on UserCss

so don't spend a lot of time adding this if you're not okay with it possibly being discarded later

#

well it seems like the current approach is pretty set in stone already

but regardless

grand cliff
#

i'll have a gander soon™️ at bd if it supports the @property stuff. i think there's an asar in the bd-dev server that we're both in that should support it

#

looking at the code that's on their github idk if it's currently in their default branch or not

#

whether or not any (or really all) css data types and enums are editable, i wouldn't know

clever sierraBOT
gritty canyon
#

😭

#

i thought it was something more than just quickcss

austere talon
#

it is

#

it has special syntax for user customisation

#

if statements essentially

grand cliff
#

that's the

/**
@property this shit
/*``` isn't it
austere talon
#
/* ...
@preprocessor stylus
@var select fontName "Font name" ["Arial", "Consolas", "Times New Roman"]
... */
@-moz-document domain("example.com") {
  body {
    font-family: fontName !important;
  }
}

/* ...
@preprocessor stylus
@var select theme "Theme" ["dark:Dark theme", "light:Light theme"]
... */
@-moz-document domain("example.com") {
  body {
    if theme == dark {
      ...
    } else if theme == light {
      ...
    }
  }
}
#

it's so cursed

grand cliff
charred monolithBOT
charred monolithBOT
odd heath
#

i should finish my prs

shell shuttle
#

but....

#

i'm stil waiting for one more review

jolly egret
#

i'm waiting on reviews too

odd heath
shell shuttle
jolly egret
austere talon
#

bros keep breaking MutualGDMs

scenic brook
#

Easy fix

#

Delete plugin

charred monolithBOT
austere talon
#

the avatar isn't quite the same as Discord

#

but idc

#

the top one is so cursed

#

it uses a div with background image

#

and the component is hardcoded to only work for guilds

still maple
#

Ven prefer the old better UI confirmed smh
#whenVencordOldUIplugin /j

austere talon
#

no it'd just be awful to bother making it look the same

grand cliff
#

@austere talon were you being a bit sarcastic there by chance

charred monolithBOT
median rapids
#

@austere talon when do i get maintainer

austere talon
jagged cloak
#

give

#

alien will get maintainer and overthrow venned machine soontm

charred monolithBOT
shell shuttle
limber skiff
#

mod doesn't relate to maintainer tho lol

grizzled halo
#

guess im a maintainer now

#

vee will teach me how to code

austere talon
#

these are the only maintainers

#

(megu also was but i just removed them cause they no longer need it)

limber skiff
#

will do later today probably

fossil inlet
jolly egret
charred monolithBOT
fossil inlet
#

Is there a list somewhere of all supported paths for the disocrd URI scheme

fossil inlet
austere talon
#

the hell did u google for

fossil inlet
#

discord uri

#

and

#

discord uri scheme list

#

i knew that list was a thing and was trying to find it

austere talon
#

is ur google derpy

#

american google tripping

#

google knows americans love slop results or smth

fossil inlet
#

wtf

jagged cloak
#

google dum

charred monolithBOT
granite wharf
median rapids
shell shuttle
#

a

shell shuttle
austere talon
#

yea

grizzled halo
limber skiff
#

that one is genuinely so bad

austere talon
#

that one isn't meant to be solvable, they just see how long they can keep you solving these to train their ai

limber skiff
#

the fire hydrant ones, the crosswalks, the cars

austere talon
limber skiff
#

those ones are easy

hollow musk
#

its a lot more easier to pass it

grizzled halo
grizzled halo
#

same with FakeProfileThemes

fossil inlet
grizzled halo
#

gotten a few people say they cant see their colours on their profiles

#

all on latest version

#

doesnt seem to be working for me either, tested on an alt

fossil inlet
#

alr

#

ill take a look

charred monolithBOT
austere talon
#

ok

brazen bone
#

Isn't that just a massive syntax error?

#

Or is hsl(from ...) a weird newfangled syntax I've never heard of?

austere talon
#

yes very new

#

chrome 125

grizzled halo
#

(just looks like a normal folder)

jolly egret
#

yeah that plugin was a little bit husk

#

should've just checked the mentions array and if it was a reply

#

also why put yourself at the top of devs

woeful sleet
#

Ain't nobody gonna scroll to the bottom of that list every time they gots to add someone

desert cosmos
#

just do devs.ven instead of adding yourself thumbsup

woeful sleet
#

You ain't catching me scrolling 500 lines once a decade

fringe basalt
#

mb i only looked at prs and main, not dev

austere talon
#

:3

#

i actually made a small mistake in my fix, double div

#

but doesnt really matter

charred monolithBOT
jolly egret
#

if you try and submit multiple ass plugins and fail every time you have to do it multiple times but like

#

its something that happens once

fossil inlet
# charred monolith

Why in the world should windows be the default? Like, what?

Shouldn't it just be discord's default double click time or whatever they use?

jolly egret
#

Its generally more ergonomic to follow what the system does to keep everything is consistent?

#

Discord should follow the system tho, i haven't tested because i've never really messed with the double click time in Windows

still maple
fossil inlet
#

We should be following discord's default, who should be following the system default.

still maple
#

Yes and if discord does not follow the system default, ideally both should be offered
Btw question but does discord even have some double click action ?

charred monolithBOT
#

This pull request addresses a critical inconsistency in our codebase by standardizing the spelling of the word "authorize" to its correct and universally accepted form. Previously, instances of "authorise" were present, representing a minor but persistent imperfection in the fabric of our otherwise flawless project.

By rectifying this single, yet profound, linguistic deviation, we usher in an era of unparalleled clarity and precision. This change is not merely cosmetic; it strikes at the v...

fossil inlet
austere talon
limber skiff
#

so many new patches to better folders

fossil inlet
limber skiff
#

wdym

#

what's the folder side bar

fossil inlet
limber skiff
#

oh my there's so many changes to better folders

limber skiff
#

and how does it impact better folders?

fossil inlet
limber skiff
#

lol

fossil inlet
#

hold on, met me get a ss

limber skiff
#

they also renamed BITE_SIZE -> POPOUT?

#

ah

opaque silo
#

what is the point of calling this? does it change based on experiment rollout or something??

limber skiff
#

they renamed all

#

I see

opaque silo
#

in their slop that generates the statuses

#

its always true so it goes down y(e)

#

they change status colors so often so im wondering what the hell theyre doing

limber skiff
#

lol I know why

#

Q3 used to be something related to visual refresh

fossil inlet
#

did they fuck up their code and the bundler reduced it to a constant

limber skiff
#

but now that they forced visual refresh and removed the experiment

#

they just changed the function to always return true

#

before it would return false if not visual refresh

opaque silo
#

ohhh

#

ok that makes sense

limber skiff
#

yeah

opaque silo
#

scuffed asf way to do it but makes sense

limber skiff
#

they had so many of those functions calls with non mangled times

#

or actual component names

#

all for analytics iirc

opaque silo
#

wheres the discord changes repo found it

limber skiff
#

it was visual refresh experiment + analytics

fossil inlet
limber skiff
#

@fossil inlet you will stop using * and without making it lazy

fossil inlet
#

i shouldn't have

limber skiff
fossil inlet
#

oh, i thought non-lazy was better in lookbehinds like that

limber skiff
fossil inlet
#

sorry, forgot 😭

limber skiff
fossil inlet
limber skiff
#

and how does it impact better folders?

fossil inlet
limber skiff
#

omg they have two bars render now

#

that's insane

limber skiff
#

almost killed myself rn

#

making this stupid recursive function to try to make this more sane

charred monolithBOT
glass jasper
charred monolithBOT
limber skiff
#

@austere talon I kinda forgot how react works but why is it we cant traverse this element children here?

austere talon
#

react has circular references

limber skiff
#

react only calls type to render later?

austere talon
#

oh

#

that's what u meant

limber skiff
#

yeah

austere talon
#

for betterfolders?

limber skiff
#

ye

limber skiff
#

but then how do mods that monkey patch handle this

austere talon
#

they recursively patch

#

override type lol

limber skiff
#

right

#

sadge

#

if it wasnt that stupid separation of the component this could be a single patch

austere talon
#

just use multiple patches and disable the plugin if any of the patches fail or smth

limber skiff
#

ye

#

all good

#

removed like 5 patches with a recursive function to filter children

odd heath
#

Is it too early to beg for reviews /j

odd heath
charred monolithBOT
limber skiff
#

vtest

nimble pendantBOT
limber skiff
#

can move that utility to another place in another commit if needed

#

what matters is it works rn lol

nimble pendantBOT
# limber skiff vtest
Bad Patches

PlainFolderIcon (found no module):
ID: -
Match: ```
.expandedFolderIconWrapper

Slow Patches

ShowHiddenChannels (took 5.1ms):
ID: 373274
Match: ```
/(?<=!0))(?=&&(0,\i.\i)((\i.record)))/


**__BetterFolders (took 33ms):__**
ID: `416568`
Match: ```
/0,\i\.jsxs?[^0}]{0,100}guildDiscoveryButton:\i,/g
nimble pendantBOT
limber skiff
austere talon
#

why didn't u add try catch to that function

limber skiff
#

will do rn

charred monolithBOT
limber skiff
#

oh

#

that was another mistake

#

good catch

austere talon
limber skiff
#

im just gonna push it to sadan plainfoldericon pr

austere talon
#

instead of just <Clickable className=

limber skiff
#

here?

#

I see

austere talon
#

move the row class to the Clickable

#

and get rid of the div

limber skiff
#

yep

limber skiff
#

is this good

austere talon
#

first I think?

limber skiff
#

rn they are super transparent

#

how was the plugin before?

austere talon
#

idk that plugin is insane I never used

limber skiff
#

ahh

#

iirc before it always had the bg color match the folder color

austere talon
#

is there no readme

limber skiff
austere talon
#

good

limber skiff
#

alright

fossil inlet
#

idk why i didn't do that in the first place

limber skiff
opaque silo
limber skiff
#

it's whatever

austere talon
#

what if it already contains query params

#

should use the URL api to handle all cases properly

limber skiff
#

it doesnt matter if it's duplicated

austere talon
#

it does cause it will break

limber skiff
#

how so?

#

ah

#

I get it

#

dev://experiment/2025-04_mobile_activity_controller_icon

#

huh

#

where is it

#

doesnt work for all lol

#

dev://experiment/2025-05_enable_emoji_in_channel_names_guild

#

that is neat

charred monolithBOT
limber skiff
#

vtest

nimble pendantBOT
limber skiff
#

you are gonna love it

#

LMAOOOOO

austere talon
#

they keep pushing and reverting that change

limber skiff
#

tf

nimble pendantBOT
nimble pendantBOT
limber skiff
#

so now it's gone again?

austere talon
#

search /\i\.useEffect.{0,100}(\i)\[0\]\.section/

limber skiff
#

🤨

austere talon
#

In discord search

limber skiff
#

I mean

#

what if duplicate find is the reason

#

I think so

austere talon
#

oh maybe lmao

#

oh yeah

#

I already said that days ago

#

it's the new profile modal v2

#

it was literally us two talking about this exact thing

limber skiff
#

the new one which errors?

austere talon
#

we both forgot

austere talon
#

experiment

#

that's the duplicate find where it fails

limber skiff
#

whatever I will make the find unique for the old version for now

austere talon
#

it doesn't matter cause that code is never gonna be loaded

#

just leave it as is

#

but reporter should really just have a new error category "duplicate finds"

limber skiff
#

I want clean reports

austere talon
#

test all finds once all chunks were loaded

charred monolithBOT
#

e5f6605 VcNarrator: Fix voice selection setting (#3365) - Vendicated
64dadcc DisableDeepLinks Plugin: disables deep links on... - Vendicated
8ad33db fix plugins using the image modal (#3368) - sadan4
3dd58c2 fix RoleColorEverywhere (#3370) - sadan4
6f23c9e ReadAllNotificationsButton: adjust look for new ui - Vendicated

limber skiff
#

an excuse to force push

#

been so long

limber skiff
#

vtest

nimble pendantBOT
limber skiff
#

ill push to main and if no issues I will bump tag

charred monolithBOT
nimble pendantBOT
nimble pendantBOT
charred monolithBOT
#

b954bf3 MutualGroupDMs: fix DM sidebar (again) - Vendicated
838a908 Fix BetterFolders, ReviewDB and minor ShowHidde... - sadan4
bebf3dd ImageZoom: Fix for animated WebP images (#3407) - hexa0
59974a1 PlainFolderIcon: Fix plugin not working (#3409) - sadan4
3b53ad0 Experiments: Support new experiment link embeds... - mufaroxyz

fossil inlet
#

before you push tag, did anyone ever check out fake profile themes

#

@limber skiff

limber skiff
#

I didnt

fossil inlet
#

i'll take a look rq, if it's a quick fix ill do it

limber skiff
#

alright

carmine wave
#

test

limber skiff
#

works

fossil inlet
#

weird

#

@grizzled halo cant reproduce

limber skiff
#

how long since we had this

fossil inlet
#

eons

odd heath
#

Why tf did I get push notif from that channel

limber skiff
#

i sent a message

fossil inlet
#

time to update my local cache blobcatcozy

odd heath
#

I know

limber skiff
#

to make it active lol

odd heath
#

I have push notifications off for anything besides dms 😭

limber skiff
#

oh lmao

fossil inlet
#

@austere talon make venbot send and delete a message in that channel every time the status changes

#

otherwise it just vanishes from my sidebar and i have to go find it agiann

limber skiff
#

good

#

@fossil inlet

fossil inlet
austere talon
#

I still need to fix that

fossil inlet
austere talon
#

I assumed discord did it by dispatching events and using the archived field

#

but no the client literally calculates it locally based on the last archive action timestamp and the auto archive time setting

#

there's no event and it doesn't use the archived field

limber skiff
#

why would they

#

it's 25%

#

2 5 %

fossil inlet
limber skiff
#

WHAT IS THIS MUSIC

#

I'm going back to my lana playlist

fossil inlet
#

my playlist is 600+ songs across every genre known to man

austere talon
#

it's so stupid

fossil inlet
#

how else are you meant to tell if a thread is archived

austere talon
#

like i said the client just calculates it locally based on last message / unarchive and the auto archive duration

#

someone complained in the api docs repo and they said it was working as intended

#

the fix is to just calculate the timestamp where it gets auto archived locally and then set a timer for that

fossil inlet
#

tbh is there anything wrong with just deleteing the last reporter message and always sending a new one

austere talon
dusk blaze
#

very varied

fossil inlet
fossil inlet
limber skiff
#

.c 3x3 w

dense fossilBOT
limber skiff
#

okay that's insane

fossil inlet
#

lana del rey

dusk blaze
#

.c 3x3 w

dense fossilBOT
fossil inlet
#

.c 3x3 w

dense fossilBOT
dusk blaze
#
  • taylor
  • random artists
limber skiff
#

nsfw

dusk blaze
#

MBDTF

fossil inlet
limber skiff
#

ehhh

#

still need to somehow fix client theme

#

not rn tho

odd heath
odd heath
fossil inlet
#

@odd heath you should play tf2

odd heath
#

True

#

Sometime I will

charred monolithBOT
fossil inlet
#

is a tag going to be pushed tonight?

limber skiff
#

yeah

dusk blaze
limber skiff
#

@fossil inlet since they dont review on weekends ill push extension tomorrow

#

will leave some more time so we can fix any possible issues

#

been so long

fossil inlet
#

alr

grizzled halo
fossil inlet
grizzled halo
#

fuck, i memed myself (doesnt explain why others had the issue though)

grizzled halo
#

true

austere talon
#

probably using outdated (web) vencord with broken clipboard api so the copy fails and they're not noticing the error popup saying it failed to copy

#

so they pasted nothing in their bio

fossil inlet
#

@nuckyz

#

@limber skiff

#

Busy today, can't fix it.

limber skiff
#

hmmm

#

thought it would make sense to depend

fossil inlet
#

AFAIK it didn't used to

#

the old background color was just the folder color at .4 opacity

limber skiff
#

oh

fossil inlet
limber skiff
#

well it's easy to fix

fossil inlet
#

I was working on a PR for the plugin before discord nuked it

limber skiff
#

ill push later

fossil inlet
#

Alr, ty

limber skiff
#

how did they set the color before without using from

#

got it

charred monolithBOT
limber skiff
#

blame @woeful sable

dusk blaze
#

real manti left so now we have this... creature

charred monolithBOT
limber skiff
#

actually shhh

charred monolithBOT
limber skiff
#

what are potential solutions to make review db standout more

#

right it's super unused because it's hidden behind the button

austere talon
#

🤷‍♂️

#

thought about profile tab

#

like mutual group dms

#

but there's not much room

#

maybe a button left of send message

limber skiff
#

needs to be something in the pop up

#

that's always visible

#

no one bothers to press the button to see lol

woeful sleet
#

If pushing buttons is more effort than someone looking to leave a review is willing to make, do we really want to see that review?

limber skiff
#

I personally always looked at reviews but never left one

#

however because it's now hidden after a button I never do anymore

#

simply forget about it

charred monolithBOT
austere talon
#

why does clienttheme cause such crazy lag anyway

#

is it this?

#

nah can't really be cause that wouldn't block

#

but that should use a Promise.all

limber skiff
#

it's some loop

#

in firefox it causes max call stack lol

austere talon
#

there shouldn't be any rate limit on those

#

easier than using profiler

#

why did u merge this code anyway 😭

#

untyped and not tidy

limber skiff
#

wdym

#

I merged the visual refresh fix

#

which had minimal changes

austere talon
limber skiff
#

it was clean when I first merged

#

but then

#

you did that one

austere talon
#

damn

#

we love

#
const oldVariableRegex = /(--primary-\d{3}-hsl):.*?(\S*)%;/g;
limber skiff
#

god

#

that regex has a non lazy quantifier

austere talon
#

making it lazy sped it up by 3s

#

but still 4s

limber skiff
#

whatever

#

nuke it

#

it's the old layout

#

doesn't matter anymore

austere talon
#

seems to work even with that code gone

#

does that even do anything

limber skiff
#

non visual refresh layout

austere talon
limber skiff
#

as I said we dont need it anymore

charred monolithBOT
austere talon
#

here's what I changed

#

includes cleanup and parallel fetching of stylesheets

#

also I left in traceFunction in case we ever need it again

limber skiff
#

since when do we have dev3

#

LOL

austere talon
#

it's like dev2 but cooler

limber skiff
#

mine is better

austere talon
#

idk why I ever merged this code lmao

#

no types
bad names
not best code possible

#

now it's speedy again

#

but it still looks bad

#

we should try to make it look better again

limber skiff
#

ill take a look in a bit

limber skiff
#

gonna eat and brb

charred monolithBOT
austere talon
#

why tf does it stack overflow

#

cause we know now that it was a bad regex

limber skiff
#

not exacatly stack overflow

#

it's some other obscure error

austere talon
#

sure but still bad regex implementation xD

limber skiff
#

iirc it's a issue in vencord

#

but they are closed

#

take a look real quick

austere talon
#

probably takes a bit

#

there is nothing

limber skiff
#

too much recursion

#

😂

austere talon
#

yes see

limber skiff
#

yeah lmao

austere talon
#

stack overflow

#

it means firefox regex engine ran into too much recursion

#

which means their implementation is sad_poop

#

you can always unroll recursion into a traditional for loop with a manual stack and it shouldn't run into that issue unless you literally run out of memory

austere talon
#

base it on my change tho so u don't work with the old code xD

charred monolithBOT
limber skiff
#

walking into unknown territory because I know little about css and colors

austere talon
#

same trolleylag

limber skiff
#

will try tho

#

god this code

austere talon
#

btw the other regex is also dangerous like the first

#

idk why only the first caused lag tho

#

maybe change the other regex too tho

#

for future proofing

limber skiff
#

I feel like I should research how the built in themes work

#

to see how client theme should be done

limber skiff
#

i genuinely have no idea

#

I cant find where this app adds custom-theme-background to the html tag

#

😑

#

this is some black magic

austere talon
#

(that's on canary might differ on stable)

limber skiff
#

omg

#

im so blind

#

it's exported

#

😭

austere talon
limber skiff
#

this is wild

#

I cant find it

#

it's genuinely easy to do this if I can force custom background I think