#🧩-plugin-development

1 messages · Page 40 of 1

tired crest
#

it wouldn't work on linux x64

amber basin
#

yeah but on windows it doesnt complain about the dependency

tired crest
#

@amber basin wait i just realized why are you using the arch logo as your menu when you're running fedora

proud cargo
#

clout

amber basin
#
  • its funny
proud cargo
#

shill

#

(install today, its awesome)

amber basin
#

i tried to install arch linux arm on this but it put me into a minimal arch env without any network managers so i couldnt do anything

tired crest
#

oop

#

yeah sometimes i install arch you need to bring packages in on storage

#

i had to do that for network drivers a few times

#

if something was out of date / missing in the install iso

amber basin
proud cargo
#

sure, if you tell me how, ill get it done some time in the next 10 years

amber basin
#

hold on i have archcraft's configs installed on this but its fucked lmao

#

lemme get a ss of openbox

#

clicked the switch session button and my screen went black

tired crest
#

not using wayland

proud cargo
#

wayland mid asf

#

i dont car honestly

#

its just a display thingie, xorg is as old as time itself and still going strong

austere mauve
#

wayland elitists will die in a trench

#

new standards can coexist

tired crest
#

very fair

hybrid dune
#

uwu

lone panther
#

@austere mauve im a wayland elitist

#

you will use wayland

#

now

sharp moon
#

anyone here know how to fix this piece of code?

jagged briar
#

yeah hold on let me hack into your pc to find the code your talking about

hot rock
#

wayland is doggie doo doo

#

NOT that x is like awesome or anything

#

but wayland is just a hodgepodge of bullshit

acoustic yew
#

wayland bad, very bad

granite wharf
#

yop

sharp moon
trim cedar
#

Depends on what it is but I just found it funny that no code followed the question xD

sharp moon
# trim cedar Depends on what it is but I just found it funny that no code followed the questi...

import { BadgePosition, ProfileBadge, addBadge, removeBadge } from "@api/Badges";
import definePlugin from "@utils/types";

type Badge = {
id: string,
description: string,
icon: string,
link: string
}

const badge: ProfileBadge = {
description: "Server boosting since June 18, 2020",
image: "https://cdn.discordapp.com/emojis/1043822273687207946.png?size=44&quality=lossless",
position: BadgePosition.END,
shouldShow: (user) => {
return user.user.id === "909121502580965418" // jacob's ID
}
}

export default definePlugin({
name: "CustomBadge",
description: "Custom badge for jacob",
authors: [{
name: "fres",
id: 843448897737064448n
}],

patches: [
    {
        find: "getBadges(){",
        replacement: {
            match: /getBadges\(\)\{(.*?)\}/,
            replace: "getBadges(){return $self.getBadges(()=>{$1}, this._userProfile)}"
        }
    }
],

getBadges: (orig, profile) => {
    let badges: Badge[] = orig();
    if (profile.userId != "909121502580965418") return badges; // don't modify the badges if it's not jacob's profile

    let change = badges.findIndex(badge => badge.id === "guild_booster_lvl1"); // find the badge to replace
    badges[change] = {
        id: "guild_booster_lvl9",
        description: "Server Boosting since 18 June 2020",
        icon: "ec92202290b48d0879b7413d2dde3bab",
        link: "https://discord.com/settings/premium"
    }
    return badges;
}

});

Discord

Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.

#

ahat

#

I don't code bruh

#

so what is a code block

jagged briar
#

You made an entire plugin to give yourself a badge

sharp moon
#

someone made it for me

#

yes

#

cause I want it.

jagged briar
#

You need experience to code

sharp moon
#

have a problem?

jagged briar
#

You cant just have someone do it for you

sharp moon
#

well they did but then they gave up

#

ughhh

jagged briar
#

You actually have to know how to do some of it yourself so you can actually make it work

sharp moon
#

idk how dude

#

amy tips what's wrong it the code

jagged briar
#

Then go learn

sharp moon
#

nah

jagged briar
#

Then your plugin will never be fixed ig

sharp moon
#

guess I'll just not to the plugin

#

idk why yall just can't do it

jagged briar
#

Because we don’t care about helping some random person with a useless plugin that they didn’t even make

sharp moon
#

ok

#

guess I'll never get the plugin

jagged briar
#

Dont try and guilt trip us, we don’t care about your plugin

sharp moon
#

not gonna do anything

jagged briar
#

Ok

#

Suit yourself

sharp moon
#

or does it

cedar marsh
wooden dragon
pliant pasture
sharp moon
#

ye

austere mauve
#

vban @sharp moon entitled idiot

shrewd tundraBOT
austere mauve
#

bro wants a badge only they can see

amber basin
#

thank fuck

wooden dragon
#

bro asked every hour

stiff cargo
#

Has ”very busy, so please be patient” on their profile

jagged briar
#

also in the discord dev server gave themselves the advanced dev role

#

yet can't debug simple code

stone shuttle
#

hello hi
i made a plugin, and i would like to publish on #1032200195582197831 before making a pr, cause it's not thaaat well tested, and the code could do with some tidying here and there
anyways, how does one get access to post there?

dull magnet
#

if you pr you will get feedback

stone shuttle
#

okok will do

drowsy hare
#

but it's ass for big codebase

#

only use it for small portion of code

drowsy hare
#

nvidia cards are....

proud cargo
#

never had screen tearing clueless

drowsy hare
#

you know

drowsy hare
proud cargo
#

thats awesome 👍

dire fern
dull magnet
#

never speak again

drowsy hare
# dull magnet false

why not? I agree LLM'S are not made for coding or reflection at all, but it still works for small stuff.

#

still better than crapoverflow for basic shit

dull magnet
#

no it doesn't

drowsy hare
dull magnet
#

you have a roblox pfp

drowsy hare
#

I could say you have an anime pfp too.

dull magnet
#

anime pfp = smartest software developer you will ever meet

#

roblox pfp = 13yo who only knows lua

#

it's true and you know it

drowsy hare
#

I can at least give valid arguments, unlike you.

austere mauve
#

WHOA SICK BURN

viral roost
#

anime pfp means either smartest dev you'll ever meet or a complete [redacted]

#

nothing inbetween

drowsy hare
#

still not a not serious argument, why not using a LLM to help troubleshooting (not writing a complete project), it works in the most cases.

glass oracle
#

llm simply isn't meant to troubleshoot code issues

#

and if anything it'll barely help you improve

drowsy hare
#

people who saying llm's in the current state can't replace Developers are right, but it still awseome for troubleshooting or basic thing.

glass oracle
#

nop

drowsy hare
#

did you think about thats

glass oracle
#

by rtfm

drowsy hare
#

you can still have issues even with the manuel

glass oracle
#

you will have issues with llms

trim cedar
#

So many people in Uni use chatgpt to solve their shit

#

And it's either somewhat okay or outright garbage

#

Always makes me smh, what's the point of using llms to solve the shit you're trying to learn

#

People really can't use their brain anymore nowadays

green vessel
#

i used to just copy my homework from github/stackoverflow myself, what has the world come to

glass oracle
#

i write my homework myself prayumaru

trim cedar
#

Best thing ever was when someone told another student to use ChatGPT to write them a makefile while the "code" they needed for the makefile was literally 100% complete on the lecture slide

#

And then they mocked me for saying they shouldn't use ChatGPT for that by comparing me to someone in their past that wasn't fond of calculators

#

what the fuck

glass oracle
trim cedar
#

Needless to say the makefile shown in the lecture was way better lmao

proud cargo
#

saw it dream up the most incoherent garbage for a hasse diagram recently

potent fox
#

that means unless ai becomes excellent they wont ever able to become a normal programmer

#

more job potenial for people who program

zinc sinew
#

again? husk

dull magnet
#

?

lapis prawn
#

Scary stuff

zinc sinew
#

bug

dull magnet
#

huh where

#

i don't see it

glass oracle
dull magnet
#

oh

astral peak
dawn elm
#

WHAT IS VNS

jagged briar
#

vns

shrewd tundraBOT
jagged briar
#

that

brazen cobalt
#

hello

#

how do you download plugins

#

im trying to mod some plugins and idk howwww

#
i just wanted cool colored text
balmy sky
dire fern
granite wharf
#

faster to just debug on your own

dull magnet
#

^

#

ai CANNOT debug vencord plugins

#

not possible

#

unless you write like

function explode() {
    undefined.hi
}```
#

omg chatgpt why does this error...

potent fox
#

Also gpt4-3 difference is real

proud cargo
#

guh?????

dull magnet
#

DOES JULIA 1 INDEX

proud cargo
#

ya!

dull magnet
#

terrible

#

not using it

proud cargo
#

do it for me? 👉 👈

trim cedar
#

Why do people index at 1

#

What's the point

proud cargo
#

oh my god.

trim cedar
#

No I'm genuinely curious

proud cargo
#

i saw a web framework and was curious how they did it but its ws PekoGun

trim cedar
#

Is it just for people that are unfamiliar with programming to get into it easier?

proud cargo
#

i am not convinced by liveview

proud cargo
#

i dont really like it either but its whatever

trim cedar
austere mauve
#

because 0 is a negative number

dull magnet
#

1 indexing is really dumb

#

the main argument I see is that u don't have to do length - 1

#

but it makes everything else pain

trim cedar
#

Just have .back()

proud cargo
dull magnet
austere mauve
#

indeed thats why negative indices should be real

dull magnet
#

do people in 1 indexed languages start their for loops at 1...

#

cursed

austere mauve
#

yes.

#

ive seen lua..

#

i think by default ranges are inclusive

proud cargo
austere mauve
#

true

dull magnet
#

make it real

#

use a proxy to actually implement negative indexes

trim cedar
dull magnet
#

would be fire

dull magnet
worldly oxideBOT
#

Here is your rb(3.0.1) output @dull magnet

soup
dull magnet
#

so good

trim cedar
#

What lang is that

#

Can't see on mobile

dull magnet
#

Ruby

austere mauve
#

/run ```rb
puts %w(banana soup) [-1]

worldly oxideBOT
#

Here is your rb(3.0.1) output @austere mauve

soup
trim cedar
#

Was about to guess that

proud cargo
dull magnet
#

I hate that array syntax

austere mauve
#

the delimiters can be anything

dull magnet
#

they will remove it in ruby 4

trim cedar
#

What does %w do

dull magnet
#

string array...

trim cedar
#

Wtf

#

Why use a percent sign for that

#

Is it some sort of macro?

dull magnet
#

/run ```rb
puts %Q(
big
massive
"explosion"
)

worldly oxideBOT
#

Here is your rb(3.0.1) output @dull magnet


    big
    massive
    "explosion"
austere mauve
#

./run ```rb
puts %w<nya>, %w^boom^

worldly oxideBOT
#

Here is your rb(3.0.1) output @austere mauve

nya
boom
austere mauve
#

wtf

#

WTF

jagged briar
#

/run

0.1 + 0.2
worldly oxideBOT
#

Your js(18.15.0) code ran without output @jagged briar

austere mauve
#

oh

dull magnet
#

Ruby is such a goofball language

#

/run

puts "  BANANA ".strip!.downcase
astral peak
#

rini panicing

worldly oxideBOT
#

Here is your rb(3.0.1) output @dull magnet

banana
austere mauve
#

comma

#

%w^nya^

#

use

proud cargo
vapid latch
#

anyone know why onBeforeRequest isnt working at all, ive tried defaultSession, session-created event and adding it on window creation (both defaultSession and window.webContents.session.webRequest) to no avail of it blocking requests

#

nvm

stable ridge
#

/run

console.log(('b' + 'a' + + 'a' + 'a').toLowerCase())
worldly oxideBOT
#

Here is your js(18.15.0) output @stable ridge

banana
near aurora
#

lol

#

because +'a' = Number('a') = NaN

stable ridge
#

yes

cedar marsh
glass oracle
#

looks like bash arrays but ugly

cedar marsh
#

I keep wanting to send ruby code to show how various features are really helpful. And then realizing that I don't write any outside my job and I probably shouldn't be sending that

stiff cargo
green vessel
#

can someone make a plug in to put all ur servers in folders

jagged briar
#

No

hybrid dune
dull magnet
#

WTF YOU CAN OVERRIDE ALL OPERATORS IN RUBY

#
class C
  def [](a, b)
    puts a + b
  end

  def []=(a, b, c)
    puts a * b + c
  end
end

obj = C.new

obj[2, 3]     # prints "5"
obj[2, 3] = 4 # prints "10"
#

@potent fox

potent fox
#

THATS EIPC

#

can you override plus

#

also I think you can do it in swift too

dull magnet
potent fox
#

looooooooooooooooooove

#

I would override += operator to append element to array

dull magnet
#

already exists

austere mauve
#

<<

dull magnet
#

in stdlib

austere mauve
#

+= joins arrays

dull magnet
#
print [1,2] + [3,4]
austere mauve
#

not append

dull magnet
#

yea

#

can u override global operators tho

#

/run ```rb
def Integer.+()
21
end

print 9 + 10

worldly oxideBOT
#

Here is your rb(3.0.1) output @dull magnet

19```
dull magnet
#

NOOOO

austere mauve
#

try setting Integer.+

dull magnet
#

no work

austere mauve
#

why @

dull magnet
#

ohh that's for +9

#

/run ```rb
def Integer.+(a, b)
21
end

print 9 + 10

worldly oxideBOT
#

Here is your rb(3.0.1) output @dull magnet

19```
dull magnet
#

but it still doesn't work

austere mauve
#

delete ruby

#

it failed

#

as a language

potent fox
#

I agree with rini

#

it had one job

#

failed on that

dull magnet
#

let's see crystal

#

/run ```cr
def Int32.+(a, b)
21
end

print 9 + 10

worldly oxideBOT
#

Here is your cr(0.36.1) output @dull magnet

19```
dull magnet
#

DOESN'T WORK EITHER

potent fox
#

crystal terrible

dull magnet
#

unusable languages

#

/run ```cr
alias VeryGoodInt = Int32

nine = 9.as VeryGoodInt

def VeryGoodInt.+(a, b)
21
end

print nine + 10

worldly oxideBOT
#

Here is your cr(0.36.1) output @dull magnet

19```
dull magnet
#

vad6

#

bad

#

guuhh

#

so bad

potent fox
#

/run


extension Int {
    static func +(a: Int, b: Int) -> Int {
        return 99999999
    }
}

print(3 + 2)
worldly oxideBOT
#

Here is your swift(5.3.3) output @potent fox

99999999
potent fox
#

@dull magnet

#

swift best language

#

I wish I could change return type

#

but cant 😭

#

/run


extension Int {
    static func >>(a: Int, b: Int) -> String {
        return "morbius"
    }
}

print(3 >> 2)
worldly oxideBOT
#

Here is your swift(5.3.3) output @potent fox

morbius
potent fox
#

swift so lovely

dull magnet
#

wait why does it return string

#

how

potent fox
#

with same types

#

if it doesnt you can change return valuee

#

btw I will show something funny

#

/run

infix operator ../%+^..®◑⛔⛔

extension Int {
    static func ../%+^..®◑⛔⛔(a: Int, b: Int) -> String {
        return "bexplode"
    }
}

print(3 ../%+^..®◑⛔⛔ 2)
worldly oxideBOT
#

Here is your swift(5.3.3) output @potent fox

bexplode
potent fox
dull magnet
#

WHAT

potent fox
#

you can have custom operators

dull magnet
#

swift doesn't have bitwise???

potent fox
#

it has

#

wait

#

idk tbh

#

dont question

#

I wouldnt call it a language if I cant make sparkles a operator

trim cedar
#

/run

#include <string_view>
#include <cstdio>

using namespace std::literals;

const char *operator,(std::string_view, std::string_view)
{
    return "explode";
}

int main()
{
    printf("%s\n", ("9"sv, "10"sv));
}
worldly oxideBOT
#

Here is your cpp(10.2.0) output @trim cedar

explode
pure temple
dull magnet
#

/run ```kt

infix fun Int.explode(explodee: String) {}

fun main() {
val vencord server = 42
vencord server explode "kodetoad"
}

worldly oxideBOT
#

@dull magnet I only received kt(1.8.20) error output

Error: Unable to access jarfile code.jar
dull magnet
#

BAD BOT

#

why is this bot so terrible at running kotlin

mild ermine
#

It's kotlin kek

potent fox
#

Unless you only use regular characters you need backticks

green vessel
#

/run lua print("Hello World!")

worldly oxideBOT
#

Here is your lua(5.4.4) output @green vessel

Hello World!
green vessel
#

sick

exotic valve
#

/run

infix fun String.want(wantee: String): String = ""
infix fun String.at(where: String): String = "do you tho"

fun main() {
    val i = ""
    val pancakes = ""
    val dinner = ""
    println(i want pancakes at dinner)
}
worldly oxideBOT
#

@exotic valve I only received kotlin(1.8.20) error output

Error: Invalid or corrupt jarfile code.jar
exotic valve
#

bitchass

#

/run

println("Hello World")
worldly oxideBOT
#

@exotic valve I received kotlin(1.8.20) compile errors

file0.code.kt:1:1: error: expecting a top level declaration
println("Hello World")
^
file0.code.kt:1:8: error: expecting a top level declaration
println("Hello World")
       ^
file0.code.kt:1:9: error: expecting a top level declaration
println("Hello World")
        ^
file0.code.kt:1:10: error: expecting a top level declaration
println("Hello World")
         ^
file0.code.kt:1:21: error: expecting a top level declaration
println("Hello World")
                    ^
file0.code.kt:1:22: error: expecting a top level declaration
println("Hello World")
                     ^
Error: Unable to access jarfile code.jar
exotic valve
#

/run

fun main() =println("Hello World")
worldly oxideBOT
#

@exotic valve I only received kotlin(1.8.20) error output

Error: Invalid or corrupt jarfile code.jar
green vessel
#

kotlin does println?

#

/run kotlin func main() =println("Hello World")

worldly oxideBOT
#

@green vessel I received kotlin(1.8.20) compile errors

file0.code.kt:1:1: error: expecting a top level declaration
func main() =println("Hello World")
^
file0.code.kt:1:6: error: expecting a top level declaration
func main() =println("Hello World")
     ^
file0.code.kt:1:10: error: expecting a top level declaration
func main() =println("Hello World")
         ^
file0.code.kt:1:11: error: expecting a top level declaration
func main() =println("Hello World")
          ^
file0.code.kt:1:13: error: expecting a top level declaration
func main() =println("Hello World")
            ^
file0.code.kt:1:14: error: expecting a top level declaration
func main() =println("Hello World")
             ^
file0.code.kt:1:21: error: expecting a top level declaration
func main() =println("Hello World")
                    ^
file0.code.kt:1:22: error: expecting a top level declaration
func main() =println("Hello World")
                     ^
file0.code.kt:1:23: error: expecting a top level declaration
func main() =println("Hello World")
                      ^
file0.code.kt:1:34: error: expecting a top level declaration
func main() =println("Hello World")
                                 ^```
glass oracle
#

#🤖-bot-commands

green vessel
#

uh

#

ok

slow plaza
#

im counting the days before someone makes a third party plugin or icon pack for themes which returns the old UI icons

#

sooner rather then later xd

slow plaza
#

OH DAM

willow sequoia
#

where link please i beg

stiff cargo
dull magnet
#

just use the experiment

pure temple
#

kotlin is like why do

obj["Key with Spaces"]

when you can do

obj.`Key with spaces`
#

😭

#

tbf idk if the latter syntax works on maps, probably not

viral roost
#

actually no that could make sense once youre used to it

remote sundial
viral roost
#

explode immediately

remote sundial
dull magnet
#

whereas the latter just is a "symbol" that kotlin can easily compile to something jvm friendly like Key$with$spaces

pure temple
#

i was thinking in js mode

#

where .thing is the same as ["thing"]

#

imho symbols with spaces in them are a bad idea.

#

but aren't they just meant for tests? i can't remember.

potent fox
#

send me hook thing

pure temple
#

on the notification you sent something different

potent fox
#

thank

remote sundial
#

make sure to change the exec path in the hook file to wherever you put the script

#

and also

#

the files themselves

#

these into /usr/share/icons

#

and also you need to either pacman -S asar or npm install -g asar

potent fox
#

HHUSK

#

I can just clone tbh

#

maybe

remote sundial
#

the hook is to automatically patch it when updating vencord

viral roost
#

might as well build vesktop from source at this point

minor jolt
#

uhhh is waitFor a promise again

#

or only callback

#

i think ive discussed this with someone some time ago but i dont rember

#

nvm it's a callback just found the convo

dull magnet
#

yes it's callback only but it's piss easy to make a promise wrapper

#
function waitForp(filter) {
    return new Promise(resolve => waitFor(filter, resolve))
}```
minor jolt
#

Tyty

minor jolt
#

has it ever been more over

solid umbra
#

working on a css snippet, and the commented out code works, but the below does not. Any tips?

/**
.userPopoutInner_f545a3:before {
    width: 100%;
    height: 100%;
}
.bannerSVGWrapper__3e7b0 circle {
    cx: 62;
    cy: 116;
} **/

a[class^="userPopoutInner_"]:before {
    width: 100%;
    height: 100%;
}

a[class^="bannerSVGWrapper_"] circle {
    cx: 62;
    cy: 116;
}
steady knot
#

because those are not a elements

#

just remove the a in front

solid umbra
#

oohhhhh I saw the mozilla docs a, and I thought, "ah, must stand for attribute" forgetting links existed lmao

#

thanks

steady knot
#

lol np

dull magnet
solid umbra
#

ah, so that's the correct channel. I was directed to here from css-snippets.

#

looks like css-dev is hidden by default, which might be an issue.

minor jolt
#

any idea why Vencord.Webpack.cache might be undefined ?

dull magnet
#

probably cause you're accessing it too early

#

why are you accessing it

#

you shouldn't need to

#

await the Vencord.Webpack.onceReady promise and do whatever you're doing after it

minor jolt
#

i don't care about it directly but my husk discord setup cannot find anything

minor jolt
#

but i cannot use find on anything

dull magnet
#

??

#

how

#

that makes no sense

#

you're doing scuffed shit

#

the majority of webpack commons don't actually use the cache or normal find methods though so that's likely why they're working

minor jolt
# dull magnet you're doing scuffed shit

yea i still have no idea why webpack gets corrupted, remember some time ago when i had the problem that a shitton of modules would be undefined and settings and profiles would not load (you probably don't lol), it was fixed after like a week and a half without me doing anything, maybe discord did something, since it worked fine yesterday without me doing anything

#

can i somehow use this waitForStore method ?

#

i only really need the MediaEngineStore

dull magnet
#

it's just a waitFor wrapper

#

waitFor is exposed

#

but if you call it late it's just the same as find

minor jolt
#

ugh it might be time to convert my horrid injected script into a proper vencord plugin

#

vencord has this thing where plugins must be built along itself right ? i can't somehow "import" my plugin after it starts

dull magnet
#

u can actually

#

you can just add ur shit to Vencord.Plugins.*

#
Vencord.Plugins.plugins.MyEpicPlugin = {
  name: "banana",
  description: "",
  authors: [],
  start() {
  }
}
#

and ```js
Vencord.Plugins.patches.push({
find: "stuff",
replacement: [{
match: /.../,
replace: ""
}],
plugin: "MyEpicPlugin"
})

stiff cargo
#

How does that work with patches?

dull magnet
stiff cargo
dull magnet
#

no

#

u need to push early

stiff cargo
#

Usually you’d need to restart right?

dull magnet
#

before those modules are loaded

stiff cargo
#

Ahh alright

proud parrotBOT
# dull magnet https://github.com/Vencord/Vesktop/blob/main/src/renderer/patches/shared.ts#L16-...

**shared.ts: **Lines 16-30

export function addPatch<P extends PatchData>(p: P) {
    const { patches, ...globals } = p;

    for (const patch of patches as Patch[]) {
        if (!Array.isArray(patch.replacement)) patch.replacement = [patch.replacement];
        for (const r of patch.replacement) {
            if (typeof r.replace === "string") r.replace = r.replace.replaceAll("$self", "VCDP");
        }

        patch.plugin = "Vesktop";
        Vencord.Plugins.patches.push(patch);
    }

    Object.assign(VCDP, globals);
}

**platformClass.tsx: **Lines 12-29

addPatch({
    patches: [
        {
            find: "platform-web",
            replacement: {
                // eslint-disable-next-line no-useless-escape
                match: /(?<=" platform-overlay"\):)\i/,
                replace: "$self.getPlatformClass()"
            }
        }
    ],

    getPlatformClass() {
        if (isMac) return "platform-osx";
        if (isWindows && Settings.store.discordWindowsTitleBar) return "platform-win";
        return "platform-web";
    }
});
minor jolt
dull magnet
#

yes

fossil edge
#

how do i make my own plugins i already know javascript but i cant for the life of me find where to add custom javascript?

minor jolt
#

how do i set the required flag on a plugin btw ?

dull magnet
#

required: true

minor jolt
#

ah ty

#

is start() async btw ?

#

actually i guess not since it's not explicilty defined

#

hmmm

dull magnet
minor jolt
#

nope still not found

#

so whatever fuckery happens to webpack it happens after the common stuff is initialized

#

but before plugins start loading

dull magnet
#

what are u doing to discord

minor jolt
#

add an interceptor to the flux dispatcher

dull magnet
#

no i mean

#

in general

#

youre bricking discord somehow

minor jolt
#

ohh like the shitty setup ugh

#

maybe it's something in valve's ancient CEF

#

this is the only error on loading

#

but it's there even when everything works as it should

#

no other error about failing to load modules or anything

#

some stuff like fonts etc dont load due to cors

#

i still have no idea why vencord webpack cache is undefined

#

im assuming that shouldn't happen

#

i guess i can try building vencord to add my two modules in the webpack.common

dull magnet
#

nah

#

u should just fix ur code

#

this stuff shouldnt happen

minor jolt
#

ugh i would say it's impossible but it probably isn't at this point, but it does need a lot of work, most of these problems stem from the hacky steam proxy setup im running which is necessary to get mic perms

#

i could run a webrtc mic server and pass that over to a normal non-proxied discord to get mic working

#

but i dont know how nicely that will play with cors etc

#

maybe i could set a cross-tab peer connection between discord tab and steam tab and get the mic stream working that way but all that's just a lot for work and i dont feel like doing it rn

#

honestly this whole plugin needs a big fat rewrite

#

maybe ill do it in christmas vacay

#

how do i build the browser.js btw ?

#

pnpm buildWeb apparently

dull magnet
#

yes

minor jolt
#

fingersCrossed

#

apparently lazy-loaded commons are also broken

#

it's all so tiring

dull magnet
#

shrimply fix ur setup... WatameCryingHappy

#

force aagamermachine to help u

minor jolt
#

im pretty sure he's not touching my code with a 10-foot pole :')

dull magnet
#

FORCE HIM

#

@silver cave you

#

help this man immediately

silver cave
#

What are you cooking now marios

minor jolt
#

discord broke something lol

silver cave
#

also why are you touching vencord webpack cache directly stop

minor jolt
#

I"M NOT

silver cave
#

just use Vencord.Webpack

minor jolt
#

I AM

#

IT"S NOT WORKING

silver cave
#

@dull magnet this is why I told you to join decky server ages ago

dull magnet
#

he somehow corrupted webpack

#

cache is just dead

#

so finds all fail

minor jolt
#

I AM INNOCENT

silver cave
#

did discord remove cache or some shit what

dull magnet
#

no 😭

minor jolt
#

no

dull magnet
#

hes just cooking too much

silver cave
#

trolley @dull magnet steam doesn't have cache you love

#

we have to require everything

#

terrible

dull magnet
#

~~accurate MenheraPull ~~

#

shes cute tho

minor jolt
#

ive had it ever since i opened the github account

#

because it was from an anime i watched that season

#

i just keep it as a relic today

dull magnet
#

i can check tmrw if i see whats wrong

#

link the source code

minor jolt
#

i'm shy

silver cave
#

ven you will actually explode reading it

#

just a warning

minor jolt
#

lemme see if this build works

cedar olive
#

might be the same issue cynthia was getting

#

not sure if I wrote their name right

silver cave
#

you did

dull magnet
#

the sentry webcrap?

cedar olive
#

yeah

dull magnet
#
  1. isnt that long gone
  2. dont think vencord is affected
cedar olive
#

if you try to get require too late you end up getting the wrong one

silver cave
#

@proud cargo OH MY GOD THE PFP

#

that fucking wan show

proud cargo
#

i watched 3 seconds just to grab that

#

shes somewhat cute

silver cave
#

that was so funny

#

the fuckin

#

throwing a gpu

cedar olive
#

hmm not sure

#

but cynthia was having this problem

silver cave
#

@dull magnet you will steal the 100 steam decks from the game awards and fix

cedar olive
#

and it should still occur

vapid latch
#

i fixed it in the stupidest way too

cedar olive
#

so when you .push you might get that instance instead

vapid latch
#

its more complicated than that

silver cave
#

clampicated

cedar olive
#

I honestly dont know how that doesnt break stuff

silver cave
#

vendicated????

vapid latch
#

they reassign webpackChunk and it ends up causing everything to reload

#

if any of discord's modules were still using the third argument of a chunk for entrypoints, it would cause them to load a second time

#

the fix is to just give sentry a dummy webpackChunk (empty array works) and never let it touch your patching code when setting it

cedar olive
#

because of this right

#

n.forEach blabla

vapid latch
#

yeah

#

you still want it to set push and bind though

silver cave
#

I think sentry should explode

#

problem solved

vapid latch
#

cause otherwise you dont get the modules it loads

#

its specifically that forEach that fucks everything up

silver cave
#

is this upstream sentry code or discord unhinged bullshit @vapid latch

cedar olive
#

how doesnt vencord suffer from it

#

what were you doing different?

vapid latch
cedar olive
#

oh

#

I see

#

so your plugins were getting re added and called with the different require

vapid latch
#

yes

cedar olive
#

yikes

#

that must had been a pain to fix

vapid latch
#

which it wasnt fully noticable at first, only with debugging of forcing a single require that i noticed "oh, everythings running twice."

#

otherwise react was just broken

vapid latch
cedar olive
#

discord has more code that creates their own webpack instance though

#

wasm code for example, I think the sticker stuff?

#

lottie

minor jolt
#

ok eager load mediaenginestore and cloudupload before plugins start loading seems to have fixed my problem

cedar olive
#

wouldnt that cause you issues too

vapid latch
#

yeah thats all webworkers though i think

cedar olive
#

ah

vapid latch
#

wasm chunks really dont have issues when loaded properly

cedar olive
#

I dont know much about them, I just know we avoid force loading those

vapid latch
#

but since those are lazy loaded its not an issue

#

and theres a plugin used by ci or for development that just loads everything and i just read every script before telling it to require which is not the best but oh well

#

lets me ignore webworkers and wasm chunks

#

webworkers used to be their own separate table but rspack merged them into the main table annoyingly

cedar olive
#

we do the same

silver cave
#

why is cloud upload a worker

#

what's the point

#

unless it's compressing

#

then that makes sense

vapid latch
#

is it a worker now?

proud parrotBOT
# cedar olive https://github.com/Vendicated/Vencord/blob/main/scripts/generateReport.ts#L344-L...

**generateReport.ts: **Lines 344-364

chunksLoop:
for (const entryPoint in chunks) {
    const chunkIds = chunks[entryPoint];

    for (const id of chunkIds) {
        if (!wreq.u(id)) continue;

        const isWasm = await fetch(wreq.p + wreq.u(id))
            .then(r => r.text())
            .then(t => t.includes(".module.wasm") || !t.includes("(this.webpackChunkdiscord_app=this.webpackChunkdiscord_app||[]).push"));

        if (isWasm) {
            invalidChunks.push(id);
            continue chunksLoop;
        }

        validChunks.push(id);
    }

    validChunksEntryPoints.push(entryPoint);
}
minor jolt
#

no idk if it's related to workers, for me all lazy loaders are broken

#

or finds

#

or anything related

#

since cache is undefined probably

silver cave
#

maybe fix the issue instead of this extreme horror

vapid latch
#

i hope you like more error stacktrace abuse

silver cave
#

Cynthia this could just be a chromium 84 moment

#

steam is still on 84

vapid latch
#

potentially?

#

discord shouldnt even be able to run though

silver cave
#

it works fine

vapid latch
#

did they add a hasOwn polyfill????

silver cave
#

I wonder if it's user agent detection for like the

#

steam overlay browser

#

or some shit

vapid latch
#

hasOwn was added in chromium 93 is why i say it shouldnt even be running

#

which was the infamous issue that tsodding had

silver cave
#

@minor jolt check hasOwn in console

#

Object.hasOwn

dull magnet
#

vencord itself can't run on such old chromium

#

and might be why it's partially broken

#

vencord makes use of very modern features

#

absolute minimum we target is v93

silver cave
#

steams updating in January apparently anyway

minor jolt
#

i had this problem in the past

silver cave
#

oh god

#

how

minor jolt
silver cave
#

lmao

minor jolt
#

im pretty sure i discussed this in this very channel before

dull magnet
#

Object.prototype.hasOwnProperty.call(obj, prop)

#

do that instead

silver cave
#

yeah

minor jolt
#

k

silver cave
#

@dull magnet vencord support for safari 5 when

#

I got crosscode to run in safari 5 for windows

silver cave
#

I saw that on fedi

#

very cool

proud cargo
minor jolt
#

ok media engine works

#

lemme see if cloudupload does as well

#

we are so back it's unreal

dull magnet
#

did it fix ur issues

minor jolt
#

yea

dull magnet
#

wtf did u change

minor jolt
#

the custom build i mean

dull magnet
minor jolt
#

just eager-load mediaenginestore and cloudupload

dull magnet
#

oh

#

nvm

#

ur webcrap so bricked up

minor jolt
#

yes but just unbricked enough to work :^)

#

man getting screenshare working on this bitch is probably one of the things i'm most proud of

#

too bad valve quickly broke the pipewire shader so now the stream is dark and unwatchable ani_bocchidespair

proud cargo
minor jolt
#

in a good way or a bad way Wha

proud cargo
#

good

minor jolt
#

ty hypershiggy

runic talon
#

if you'd use Compact mode if it was good then it might be for you

#

feedback welcome

silver cave
#

WHY IS IT SO HUGE

minor jolt
#

absolute unit

silver cave
#

stop giving me more insane marios code to fix

proud cargo
silver cave
proud cargo
#

problem?

feral yarrow
#

(maybe this is the right channel i posted already in vencord-dev someone tell me if im posting in the wrong place) im trying to disable the really annoying overlay soundboard keybind (ctrl + `). i can probably copy the same code used in the NoF1 plugin but idk how I would disable a hold ctrl + [key] command. anyone know if this has already been made or if it is easy to disable a specfic hold key without interrupting other keybinds that use hold ctrl?

pure temple
#

wouldn't you just check for ctrl in the event

glass oracle
#

^

#

there's a field for modifier keys in key(press/down/up) events

feral yarrow
#

oh i see ill have to do more research on it

potent fox
faint siren
stiff cargo
stiff cargo
# faint siren wym?

Ok I may be completely wrong here, but I think it’s a requirement as of late to add a readme in the plugin folder with info about the plugin

faint siren
#

well

#

this pr is a feature addition to a plugin

#

not a plugin

stiff cargo
#

Ignore everything I’ve said :D

faint siren
#

nah wait, imma add one to make you happy

faint siren
shadow ruin
#

Refused to load the script 'https://flyover.github.io/imgui-js/dist/imgui.umd.js' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'unsafe-inline' 'nonce-MjI1LDIzMCwxNjIsMTU0LDI1MiwxMzMsNDUsMjIw' blob: https://cdn.discordapp.com/animations/ https://www.gstatic.com/recaptcha/ https://www.google.com/recaptcha/ https://recaptcha.net/recaptcha/ https://*.hcaptcha.com https://hcaptcha.com https://js.stripe.com https://js.braintreegateway.com https://assets.braintreegateway.com https://www.paypalobjects.com https://checkout.paypal.com https://c.paypal.com https://kit.cash.app". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.

#

@pure temple hi

pure temple
shadow ruin
#

hopw do i

#

:3

near aurora
minor jolt
#

Every day webpack breaks a little more :3

austere mauve
#

wtf is wrong with your devtools

minor jolt
#

I just opened it on phone real quick to see what's wrong

#

It's remote devtools

sturdy shard
#

can i paste js files into quick css

chrome elbow
#

you can, just it wont do anything

sturdy shard
#

no

#

i wanted to see if it would work

chrome elbow
#

it wont

sturdy shard
#

okay

#

also

#

ive heard something called

#

vendroid

green vessel
slow plaza
#

[Looking for plugin]

Plugin that lets you set your own sounds for stuff like pings, aswell as/or letting you set a custom sound INSTEAD of a ping for spesific users

#

want to make a verbal distinguisher between certain people in dms xd

runic talon
#

oh fuck

slow plaza
runic talon
#

ok removed my off topic spam

slow plaza
#

we literally have an emote for that

#

xD

#

granted, no clue if mine fits here either

hallow dagger
cedar marsh
amber basin
#

@gritty sparrow hello techsupport may i please see discord's native module code pleadey

#

/silly

dull magnet
#

try without OA

amber basin
#

it wont reinstall nyaboom

#

works, idk if reinstall or no openasar fixed it

grim hare
#

setting all form inputs as disabled (and having obvious disabled styling) may be better than blurring everything and putting a non-interactive element over top of them

regal helm
#

iam abit new to this. how do i make a discord-style speech-bubble or menu appear when the user does a certain thing?

(basically i want to make it so i can hover over a gif in the gif menu to see its name, by showing a little text bubble).

#

or maybe it could show the link text in the bottom right corner like this, just like it does when i hover over a gif in the chat, that would be nice too

#

right now i cant see the name of a gif in the gifs tab without sending it, which makes it harder for the favorites gif search

wide parrot
#

use css

oblique lark
#

SOLLUX HOMESTUCK ???

ornate geode
#

@smoky basin

#

I was just trying to find the decor server

#

Sos

#

I want to make some of them

smoky basin
#

the plugin settings has a link to the server lol

ornate geode
uncut nimbus
#

Could u maybe make me one

near aurora
#

anyone here listens to The Yard podcast? i wrote a script in Deno to scrape the patreon episodes from kemono and download them all properly named as .mp3 (you don't need to have the patreon paid)

#

if interested, lmk, i'll drop it here

vague echo
flint bronze
#

dumb question about discord API, but does the user client recieve member left events in large guilds?
might attempt to make a plugin that takes advantage of this event (showing if message authors were kicked/left a guild)

dull magnet
#

what?

near aurora
flint bronze
#

nono, not if the client user has been removed, if another user in a large guild (that might not send all presence data, afaik) has left or been kicked

#

i can probably answer this myself

#

wtf is a GUILD_MEMBER_LIST_UPDATE event

#

this doesn't seem to be what i'm looking for

#

okay those groups are really just hoisted roles

vague echo
trim cedar
flint bronze
trim cedar
#

(received rather)

near aurora
dull magnet
#

wait C unions are kinda cool

#
union Color {
    unsigned int hex;
    struct {
        unsigned char a;
        unsigned char b;
        unsigned char g;
        unsigned char r;
    };
};

int main() {
    union Color color;
    color.hex = 0x12345678;

    printf("r = %x, g = %x, b = %x, a = %x", color.r, color.g, color.b, color.a);
}
frigid bay
#

yeah that's a thing you can do

#

compiler gets angry at me when i do that and have an initializer tho

cedar olive
frigid bay
#

yeah avoids the need for ugly casts and stuff

oblique lark
#
RGBA hexToRGBA(unsigned int hex) {
  Color color;
  color.hex = hex;
  return color.rgba;
}

(pretend the rgba portion is defined in a separate struct)

dull magnet
#

yeah u can name the struct

#

then it becomes color.rgba.r

flint bronze
# dull magnet what for

just for the sake of having a marker next to someone's username in their messages if they aren't in the guild anymore

dull magnet
#

your best bet is subscribing to GuildMemberStore

#

use the message decoration api to add your component

in your component use useStateFromStores to subscribe to the guild member store and get the member of the current message

if the member is not null, render nothing
if the member is null, render ur thing

#

it will either update immediately or not - if it doesn't, there's likely nothing u can do

severe pond
#

Hello everyone peepoHey . Is is possible to modify the hideAttachments plugin in a way for it to automatically hide attachments?

#

This could then be added as a setting

const settings = definePluginSettings({
    autoHide: {
        description: "Auto hide",
        note: "Hide attachments and Embeds automatically",
        type: OptionType.BOOLEAN,
        value: false
    }
});
#

I would have done the implementation myself, if i was able figure out how to get all those message ids FeelsDankMan

steep vapor
#

does anyone know how to fix this

steep vapor
#

nvm, fixed it\

steep vapor
#

is there a way to make global static classes in cpp?

#

i have a class Logger (logger.h, logger.cpp) and i want to initialize it in the mainwindow.cpp (via ui -> ...)
this way, i want to be able to use Logger::method() for any other class without issues

frigid bay
#

unless I'm misunderstanding your question then sorry

#

I use namespaces with an init and uninit func

#

can do the same with classes using extern as I said, I'll find an example soon and send it

steep vapor
#

thank you

frigid bay
# steep vapor thank you

i'm looking at a project and the way it does it is like this

test.h```cpp
class Test {
// ...
};

extern Test g_test;

test.cpp```cpp
#include "test.h"

Test g_test{};

then they just include test.h and use g_test like normal

#

in other files

steep vapor
#

ill try

frigid bay
#

if you decide to use global namespaces instead you have to make every variable inline otherwise it will scream at you if you use the variables in other files

dull magnet
#

yep

severe pond
random ice
#

how do you include animations on a theme

floral plaza
random ice
#

ty

dapper tundra
#

oi i am trying to create a fresh install and i am haveing some touble installing the custom plugins.
i have git cloned the repos into the userplugins folder
when i try to pnpm build i get this:

3 errors
Build failed
Build failed with 3 errors:
import-plugins:~plugins:146:17: ERROR: Could not resolve "./userplugins/uwuifier-vencord"
import-plugins:~plugins:151:17: ERROR: Could not resolve "./userplugins/vencord-plugins"
import-plugins:~plugins:152:17: ERROR: Could not resolve "./userplugins/Vencord-Tidal-RPC-Fixer"

#

fixed it by moving some plugins out of their folders, is there any proper way to do this?

amber basin
#

send the whole error

viral roost
#

there is no whole error to send

#

there was no index file for those plugins

#

you have to rename the file you cant just put into a folder to index.tsx

turbid spruce
#

how do i add an icon to the chat bar that would then do something like making a request or showing a modal? EDIT: i figured it out

mystic sable
#

would a viable PR for releases be a script for Mac downloads the latest release and attributes is?

amber basin
#

wym

mystic sable
#

Basically: in the dmg file, you'd have the latest release and a script that puts Vesktop.app into Applications, then runs
sudo xattr -cr "/Applications/Vesktop.app"

#

since Vesktop doesn't run on Mac without that script

amber basin
#

i dont think thatd be viable

#

and its not possible with how vesktop is built

mystic sable
#

hm how so?

amber basin
#

electron-builder makes the dmg for us

#

we cant add stuff to it

mystic sable
#

Ah i see

#

Yea anything more and it'd require XCode tools

#

Let me see if anything could be done via homebrew

#

so that "brew install vesktop" could be put into the readme and do the whole process

#

wait you need XCode anyways to run xattr i'm being silly

#

just have a script that moves vesktop.app from the dmg to the applications folder, and signs it

#

then closes/deletes the dmg

#

possibly even could do it remotely so that added to vesktop mac it could update without user needing to download and install again let me see

mystic sable
#

eh really easy to do this, will write later when have the time

#

could there be a toggle added to disable all plugins in vencord, similar to how the css can be disabled? or is that impossible

#

okay finally turned off theme for real as it was forcing through the online themes link, however it still is not working so definitely not thme

#

and fuck just disabled every single one of my addons and it still isn't working

#

have to readd them now dontfeelsoblob

minor jolt
#

is there some way to get a value from the discord settings ? eg if desktop notifications are enabled

dull magnet
#

yes

#

vencord does it in many places

minor jolt
#

based tyty

green vessel
#

any docs for making custom plugins?

frigid bay
green vessel
#

two things can someone make this more smooth and make it work for me cause it works for others expect me sad

  0% { --channel-i: #ff0000; }
  25% {  --channel-i: #00ff00; }
  50% {  --channel-i: #0000ff; }
  75% {  --channel-i: #00ffff; }
  100% {  --channel-i: #ff00ff; }
}

.modeSelected__487d6 .icon_eff5d4 {  
  --channel-i: red;
  color: var(--channel-i);
animation: kinetic-chrome 5s ease infinite;
}```
jagged fox
#

VencordWeb:5 Vencord WebpackInterceptor Error in handlePush TypeError: Cannot read properties of undefined (reading 'predicate')
at ww (VencordWeb:216:769)
at Array.t (VencordWeb:215:1592)
at 98106.5d0f74b94113ede84656.js:1:65
_log @ VencordWeb:5
/api/v9/guilds/1015060230222131221/member-verification?with_guild=false&invite_code=D9uwnFnqmd:1

   Failed to load resource: the server responded with a status of 403 ()
jagged fox
#

anyway how to get the discord user

west herald
#

console.log('help me' .toLocaleUpperCase)

floral plaza
#

Nerdge you forgot to invoke the function

median flare
#

@austere mauve isnt this guys username so cool

#

discord when you even talk about changing your username: NO. DO NOT. YOU ARE SPAMMING.

#

YOU MUST WAIT 50 DAYS.

green vessel
#

bro change your username for the love of god 💀

#

nobody here thinks you're the cool kid

gilded dew
dull magnet
#

no

#

not possible

#

hardcoded by discord

#

don't use streaming

jagged matrix
#

closest you can do is find out how to replace the text with css or smth

#

literally all you can do, and it’ll only ever be client side

gilded dew
#

alright. thank you for the answer upDoge

proud cargo
#

sobbing rn

#

some guy just said splicing an array is always faster than inserting in a linked list

dull magnet
#

it depends

proud cargo
#

it does! but he just said its always faster

jagged fox
#

is there a way to patch html

frigid bay
#

yes edit it

jagged fox
#

using the plugin API

#

not manually

frigid bay
#

dunno but i assume its the same way as doing it with a browser js script

jagged fox
#

oh well I nerver got patches to work

#

the tutorial is dated

frigid bay
#

unrelated but

#

ive heard discord uses some native code/modules/whatever, would it benefit anybody if those were reverse engineered

#

well they probably already have been

jagged fox
#

I can give it a try

frigid bay
#

is it all just in discord.exe

#

nvm

#

some is but not all

jagged fox
#

oh you mean app

#

I did extract the asar

frigid bay
#

i mean non js basically

#

theres some node modules

potent fox
frigid bay
potent fox
#

tbh you shouldnt want to edit dom

#

you should edit react componants instead

jagged fox
#

its fine no one reads pronounces XD

frigid bay
#

i do because im cool

potent fox
#

okay

proud cargo
#

manti now post dog

shrewd tundraBOT
#

owo

jagged fox
#

hi

frigid bay
#

HI

jagged fox
#

I made clyde talk

frigid bay
#

i did that too

jagged fox
#

Yay!

#

first useful plugin I made

#

Clyde said this to me I swear

#

can I submit plugins to the main vencord

#

We all need the power to talk as clyde

amber basin
#

no

jagged fox
#

I cant contribute to vencord's plugin cataloge?

amber basin
#

not that plugin

frigid bay
#

why not its so useful!

jagged fox
#

well Its funny

frigid bay
#

good point

jagged fox
#

not all plugins need to be usefull

amber basin
#

itd be abused

#

no

jagged fox
#

I can make it clear that its saying something

#

also wanted to change clyde in the plugin

#

it can be litrary anyone

frigid bay
amber basin
#

no

#

its not getting added

#

end of story

jagged fox
#

fine

#

carefully hides friends git account for later use

amber basin
#

creep

frigid bay
#

vencord roleplay channel when /s

jagged fox
#

she allowed me to upload it using her account

jagged fox
#

oh wait donating gives you a badge right?

frigid bay
#

yep

jagged fox
#

is there a minimum

#

also where to donate

#

this project is cool

dull magnet
#

in morecommands or smth

jagged fox
#

oh

#

🤦‍♀️

#

im gonna make something better then

#

as I did find a way to change clyde locally

sullen trench
woeful plover
#

how to get an message by id

jagged matrix
#

just right click a message and press copy message id

frigid bay
#

so if u dont see an option for that then thats why

woeful plover
jagged matrix
#

oh

#

then idk

woeful plover
#

it worked

#

sorta

dull magnet
#

MessageStore.getMessage

woeful plover
#

thanks

#

is there any function I must call to update the message client side

#

I think I might need MessageActions.receiveMessage(channelId,message)

#

t

dull magnet
#

what u tryna do

woeful plover
#

trying to add a embed to a message

#

using a command

#

as a way to comment

#

it must work on any

#

and not get you banned for hacking a server side embed ofcourse

#

not that that works

#

discord long patched that

woeful plover
#

YES

woeful plover
#

I fixed it

turbid spruce
#

why is it that the summarized text looks so damn ugly its black and it doesnt properly make a new line?```tsx
<ModalRoot {...props}>
<ModalHeader className={cl("modal-header")}>
<Forms.FormTitle tag="h2">
Summarized Conversation
</Forms.FormTitle>
<ModalCloseButton onClick={() => closeModal(key)} />
</ModalHeader>
<ModalContent className={${cl("modal-content")}}>
<div>{summarized}</div>
</ModalContent>
</ModalRoot>

dull magnet
#

stop using a div

#

use FormText

turbid spruce
#

holy shit im silly

slate pendant
#

Is there a place where I can search the overall API of vencord?
Trying to make a QOL plugin to send a long slash command to a channel without having to type all of it out every time

dull magnet
#

try text replace

#

idk if it can execute slash commands but worth a shot

slate pendant
#

Are you able to send slash commands with vencord?

dull magnet
#

yes

hybrid dune
#

worst patch attempt in all of history (I don't understand when patches are applied)

{
    find: "isMac",
    replacement: {
        match: /isMac/,
        replace: "isWindows"
    }
}
#

thought process was basically "if I replace all the checks for macos with the check for windows, then this fools discord into showing macos titlebar"

#

which clearly is not the case because nothing happens except servers don't load sometimes

green vessel
#

discord down

proud cargo
green vessel
#

quite litteraly the opposite

dull magnet
#

the find is responsible for finding the proper module to patch

#

your patch will only affect a single module

#

and that replacement is dangerous xd

isMaccaroniFan => isWindowscaroniFan

slate pendant
dull magnet
#

seems like exactly what uwant

#

looks really cool

woeful plover
#

anyone know how to make buttons work

#

client side

#

actually instead of using the application buttons

#

just want to edit the message buttons

dull magnet
#

le accessories api

woeful plover