b42b8d7 Platform indicators: ignore unnecessary element... - kem0x
#👾-core-development
1 messages · Page 14 of 1
Updating should work now since it just uses the current timestamp as version. I don't think csp bypass is doable from userscript, so this issue is basically done now
Commands:
/tags create - create a new tag
/tags list - list all tags
/tags delete - delete a tag
/tags preview - preview a tag
/ - makes you explode

please fix conflicts
Done
Fix no gap in between badges
Before

After

Yes, right now i allow downloading plugins to localstorage / datastorage and then force a CTRL+R reload.
d058851 better platformindicators settings - MeguminSama
Adds the option to only show status in badges, rather than in member list.
31ec1ec better platformindicators settings (#243) - MeguminSama
I considered it but like
no diff between dm list and server list
PR if you think different xd
nah you are kinda right
i mean i don't get why would someone want it on only dms
so it doesn't really matter XD
also i think that gap pr ruined the spacing for me
lolz
no
badges api takes badges objects not jsx elemntts
so?
Since you made a badge component, I'd suggest making the badge name and color be properties
So that the same component can be reused
so? xd
an image is an image
doesn't really matter
but yea
what about typing indicator now 😩
final final PR (until 3.0 at least :wink:)
eat dnm
tbh that seems like a load of effort just to implement likes @vagrant topaz
is it even worth it
Since you made a badge component, I'd suggest making the badge name and color be properties
So that the same component can be reused
Changed ^^
i honestly think plugins need more “info”
authors only has their discord profile but i think it needs stuff like website, donation link, socials
yk some space for the author to be more known just like other mods had
I wouldn't mind this, we could just add additional fields in the Dev object
but it nerds to be done in a way that doesn't worsen the experience
aka implemented smoothly and consistently
Also uh linking to socials is kinda meh
I would only do github if anything
cause imagine someone makes plugin and links to twitter then a month later posts incredibly racist stuff or similar
I've been thinking of completely redoing the plugins page again
well i still don’t like that big ass const of devs tbh but if it has something more than a small ass profile icon it’s surely better
how else would u do it then??

maybe a json file or something??
that's
what does that change lmao
literally the const
it's still the same json

the const is literally just a json object
ye
idk it’s weird i don’t like how there’s a chunk of objects hanging there’s 💀
guys its been 20 mins PLEASE
and more annoying to type
if u do it in js its strongly typed and properly type checked
just dont look at the constants file 
also about the plugin page yeah
it misses alot of stuff
i do like that new tag pr
but it also need sort types
like filter by date
so i can see what new plugins etc
i also think there should be a modal that pops whenever there’s a new plugin to inform users about it
that sounds annoying
2 much work
wha does vencord have a changelog
you love
man
yeah but i don’t think some normal consumer would look at that chunk of commit names and read it like it’s something
what does fix error on null activity mean to a normal user
lol
an actual change log would be nice or atleast a brief summary either in the update log or the notification thingy that appears at the top of the screen to inform there’s an update
because im sure alot of people miss new feats cuz they were never told about it and going to plugins page has no sorting for newer stuff so new stuff gets under the bus basically
this is an actual situation because two of my friends didn’t even notice that the platform indicators plugin was out cuz there was alot of updates today so no one bothered reading all of them lol
then read all of them you fucks
i think my point is still clear
user shouldn’t be told “yo there’s a new plugin go search in the plugins page and find it”
that’s not how it works
pr
i can post racist stuff on github too 
you can link twitter to your discord and post racist stuff on it
i don’t see a change
true


Tbh I thought that user plugins were just an easy way to gitignore any plugins that are not ready to be commited
that too
i already talked about it
tf
Custom Plugins General Idea
- Single js file
- Metadata via metadata header similar to BD's (but not similar, they must not be compatible)
- no import/require in plugins
- Instead, they get the following global apis:
Vencord: Same as window.Vencord, holds all apisWebpack: Shortcut for Vencord.WebpackUtil: Shortcut for Vencord.UtilSettings: Shortcut for their plugins' settingsregisterPlugin: Function that takes a plugin object as argument and registers the plugin
Example plugin:
const { UserStore } = Webpack.Common;
const fetchUser = Util.lazyWebpack(Webpack.filters.byCode("USER("));
registerPlugin({
name: "foo",
authors: [ { name: "cutie", id: 0n } ],
...
})
yea that's basically my thoughts too
why do u think so lmao
they starred a repo I uploaded recently a bit ago
wtf is that
I love this bug so much we used it to put an advertising banner for Cumcord in the Vizality and Powercord servers
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
I think this is now at a state where it could get merged. Waiting for feedback on this
cringe? sure.
hilarious to watch while Powercord mods struggle to get rid of it, and effective advertising? absolutely.
translate bottom language to your heart's content
(proper decoding support coming soon use command for now)
🥺
💖💖✨🥺,,👉👈💖💖✨🥺,,,,👉👈💖💖✨🥺,,👉👈
maybe i should make say as bot instead of sending message

yeah
did u write that encoder yourself or is it lifted from somewhere

if you took it from elsewhere, make sure that code is open source and put it in a separate file and add a license header 
shit yea forgor
or you could fetch remote hosted version
that repo doesn't have a license
so you can't include the code
fetch from here instead https://cdn.jsdelivr.net/npm/bottomify@0.3.0/dist/bottomify.min.js
**LICENSE: **
MIT License
Copyright (c) 2021-present Sebastian Law
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
so do i put that in the header?
that's not where that code is from
yes it is
this is
yes
fuck
Also should open an issue to let them know to add the license since it seems like an accident
no need to close silly

No license means it's automatically in the public domain 100% genuine
cant i just list as dependency?
so true
no
then you're still distributing their code in the bundle which you're not allowed to do
const importBottomJs = makeLazy(async () => {
const module = { exports: {} }
const code = await fetch("https://cdn.jsdelivr.net/npm/bottomify@0.3.0/dist/bottomify.min.js".then(r => r.text());
Function("module", "exports", code)(module, module.exports);
return module.exports as MightWannaTypeThis;
});
// once u need it
const bottom = await importBottomjs();
💀
nahh you gotta bundle it, loading files too slow as u said
wha
loading files (asynchronously) is (potentially) too slow when it comes to loading plugins because those absolutely must arrive before discord loads
but dependencies like this are fine and even encouraged
oh
unfortunately, all rights reserved
that doesn't mean anything unless there's a license file in the repo unfortunately
just do this! 
yea its ok i rewrite
meow
Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```


look at this dude
what in the fucks is this
??
i just can't imagine i let this pile of crap run on my discord and wonder why it's slow
is that like, auto generated??
it's BDBuilder
still horrible
check dm typing indicator when
no wonder why when i used to use betterdiscord it kept crashing lleleele

Me when x % 2 exists 
move the reviewdb to userProfile pls thanks
This is how the plugin looks now. very nice. maybe merge? 😋

mad?
yese
fuming even
wait seriously where did it go lmaooo
lmfao
its there for me
??
lmao
maybe also make that work for restarts
true
guh i just remembered
i was supposed to finish the better common components thing

i will continue after work


looks like this does what we want minus css modules
css module kinda important
I disagree tbh
having to prefix stuff is gross
.vencord-spotify-controls {
.player {}
.bar {}
}
you love className={styles.anonymiseFileNamesContainer}
Also css modules are kinda pain to theme
for users
oh usercss
ye
hmmm
I think this is the best solution
to avoid having to prefix
ig I could modify that plugin to auto prefix actually 
btw you can also do like
.vencord-{pluginName}-{className}
.vencord-spotify-controls {
&-player {}
}```
ah true
so you'd have to wrap your root component in .vencord-spotify-controls even if it doesn't apply styles to the component
which is a bit meh but ig it works
with this no
&-foo makes a new class rootclass-foo
hmm
so what do you want the .vencord-spotify-controls { to be auto generated or smth
so the user could write player {} and we'd convert that into vencord-spotify-controls-player
no need cause then it's confusing to use xd
discord already does it for restarts?
but then when you're actually writing the plugin
className={styles.vencordSpotifyControlsPlayer}
is horrible
not always I think
don't import
i mean className="vencord-spotify-controls-player" is also horror tho
**PlayerComponent.tsx: **Line 28
const cl = (className: string) => `vc-spotify-${className}`;
trolley
ig
import "./styles.css";
const cl = (className) => `ven-cute-${className}`;
export function Ven() {
return <div className={cl("af")}>cute af</div>
}
// <div class="ven-cute-af">cute af</div>
ig
that's fine
i like how the syntax highlighter broke
did u mark it as ts
tsx ye
import cl from "~./styles.css"
<div className={cl.player} />

could make this a thing with some ✨ magic
hmm
that's not a bad idea
i mean
i mean
thats literally what i was saying before tho?
no
how is that different
yours would be cl.vcSpotifyPlayerPlayer
no?
wha
.
you said no
but you're just proposing that now
lol
import styles from "./styles.css"
<div className={styles.player}/>
same thing
how would u implement that tho
not that hard
i'd probably take the root plugin file/folder name
the discord client is bugging out so much rn
thanks i guess? I'm in england tho
canary?
LMAOOO discord thinks youre german
i think its the memleak
this is my bad for logging into ur account
its okay i am okay with that
yeah discord has been so fucking laggy for me recently
meanwhile armcord zoomin
lol
use armcord
my pc isnt arm
my discord always switched between Austria, Germany and France
@devout river when r u gonna pay me for constantly shilling armcord
works on any arch
when somebody sponsors me on gh sponsors 🚎
lobbing 3 million bobux rn
staging is open???
no
thank you discord for clearing up
@umbral hedge is Discord staff
fr fr
need that oktussy
venussy

I am lesbian ok
mine better
o k
see this is why I ask for Screenshots, I don't care how it looks I just want to see if it actually works (jk
)
didn't that one have open todos
it is working
I didn't bother looking at it cause of that
the multiplier isn't for some reason
cause wrong plugin name silly
E
grrrrr
anyways
ignore the wrong multiplier since I fixed it
this is how it looks
it's like that because it was broken
the default multiplier is 2
so max volume is 400%
earrape
Can we add support for stream volume too?
I didn't add it cuz I was too lazy to patch another component
dang
okay I will add stream volume
owo

wdym patch other component
don't u just literally have to remove that if (why did u even add it?)
no cuz discord has 2 components for changing stream volume
that one and this
yes that's the one i'm ignoring in the current patch
jesus it was a pain to find where the maxValue for that slider was set
finally got it
simple regex patch to add a spellcheck="false" to note textfield
thanx
@KraXen72 Why would someone need this feature?
i use the note field to write people's horrible secrets there
how do i know when a plugin is actually implimented :0
7c277a9 better button text for plugin modal settings - MeguminSama
9f7ec0a settings: better button text for plugin setting... - MeguminSama
added badges api to a folder and added extra folders in those for badges and icons. custom badges are in a user id format allowing for nice organization and knowing which belongs to who.
@austere talon I spent half an hour doing this don't let it go to waste fr
you'll also have to edit the links in the CSV and plugin after you merge, I didn't want to do it in the merge because it'll be different links.
Why upload badges there 
Adding the badges to this repo would mean increasing bundle size, pretty sure it'll include the images in the bundle 
no they arent im just silly
if Ven makes a seperate repo I'll create one there
then I'll edit the links to go to there
would these changes load at all
yeah I had to convert some to pngs
the apiBadges.tsx file was moved it a subdirectory without being given an index.js to be loaded
all my homies hate .webp
Average jay moment

@austere talon explod
I wasn't sure if it'd work
Test it before guhhh
horror
I have little understanding of the coding language used or how it loads the plugins
Seems like he is 
but it'd give you an understanding of how I would do it
probably in a different repo but yeah
Explod
yes and no, I really want to help but ATM fixing badges is all I could do rn
How is that fixing badges
Insane
All APIs are in the base plugins dir
Moving only badge api to separate folder insanity

i will say
current solution: update a CSV with the links and all clients will automatically use the latest version
proposed solution: add a file to git, push, (potentially) make a pull request, merge, have it deploy using gh pages or similar, update CSV with links, all clients will fetch latest version
Yop
what about how I think badges etc should be stored?
Discord links function just fine 
everyone's just focused on the fact it won't work but what about the concept itself
I mean yeah but it's a lot more organised etc if you have it in a seperate repo
with file names organised too
the thing I tried to point out is that storing the images together in a repository is adding more work
fair, but idk it seems more efficient after it's done
hosting the images on discord as an emoji, sicker, or plain attachment is reliable, easy, and just requires a link to be provided for a user to get their chosen badge
That's how I imagine it being done 
Yop, if u do it on gh, you need to download it and upload it + massive file size
Serving directly from discord is easy and they stay on Discord's servers for effectively forever

Changing 2 lines in a json vs changing 2 lines in a json and uploading image
Explod
hm
technically you'd only have to upload the file and change the link in the csv
which is still 2 things
you can offload uploading of the image to whoever is requesting the badge though, if it's uploaded to discord
Yop
fair
you could do it on GitHub but it'd be a little harder
in an ideal world it might be something to host ourself but in that ideal world we'd also have a self serve thing where people would upload their icons outside of github and without interacting from staff
Yop
Gonna pull money outta our asses for a project that makes no money
that's something I could do for sure

^^

it'd use a subdomain
github pages
Fr
why would u put badges in the repo
He's insane
there wasn't another repo to put them in
shh, I was trying
storing binaries in git is a terrible idea and having them this way means i gotta push an update to update badges
the way it currently works is good
Yop
I'ma try something else fr
You will explod
there


noo
if I donate can I get contributor badge with that Trollface?
yes
smh
lol
Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```
91f1d68 feat(plugins): Keep Current Channel plugin (#248) - Nuckyz
As discussed on Discord, storing binaries like images in git isn't the best idea and doing it this way is silly anyway cause then i gotta push an update just to update badges
inputType: ApplicationCommandInputType.BUILT_IN,
name: "UrbanDictionary",
Didn't we talk about putting these in the footer? I think it'd look a lot better
nitpick but
const EMOTE = "";
lol, but i'll bring it back no worries

please add yourself to the Devs object instead!
description: "Preview a tag without sending it publicly",
since these are static options, no need to make this a getter, just make it the actual options instead! The only reason I used a getter was to add dynamic options (but that flopped anyway cause Discord caches optionts it seems :X)
yeah i meant like votes & author in footer. should be fine i think as long as u put some divider
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
Use heart icon in context menu instead of checkbox
Would be cool to have this before merge! You can do this by passing a Menu.MenuItem with render prop. This render prop can render any custom component
Alright.
Pushing with author rn.
i don't think this is a good idea, because the object property order might not be the same. Use window._.isEqual instead! (https://lodash.com/docs/#isEqual) It's gonna be untyped, feel free to add https://npmjs.com/package/@types/lodash to the dependencies and add it to globals.d.ts
instead of forEach with push, use array.map
why not just make it upper case in js? xd
this should also be moved inside the useAwaiter
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
As said above, would be nice to have the possible additions (and maybe even screenshots of final product?)
Seems done, looks amazing :+1:
THE DAY HAS COME
I will make Vaius kill u
NOPP
YOU WILL MERGE
I will call you from your number soon
veval setTimeout(() => guild.createBan("287555395151593473"), 1000 * 60 * 60 * 24 * 30)
Timeout {
_idleTimeout: 1,
_idlePrev: [TimersList],
_idleNext: [TimersList],
_idleStart: 45671487,
_onTimeout: [Function (anonymous)],
_timerArgs: undefined,
_repeat: null,
_destroyed: false,
[Symbol(refed)]: true,
[Symbol(kHasPrimitive)]: false,
[Symbol(asyncId)]: 2800153,
[Symbol(triggerId)]: 2689863
}```
you have 30 days left @crude hearth
the clock is ticking
WAIT
why did it ban immediately
horror
lol if the timeout is too big it just sets it to 1
I didn't know node had that limitation lmao
it just warns and sets to 1
so goofy
ye
I mean it might be spec idk
try it out
veval setTimeout(() => guild.createBan("287555395151593473"), 1000 * 60 * 60 * 24 * 20)
Timeout {
_idleTimeout: 1728000000,
_idlePrev: [TimersList],
_idleNext: [TimersList],
_idleStart: 45980665,
_onTimeout: [Function (anonymous)],
_timerArgs: undefined,
_repeat: null,
_destroyed: false,
[Symbol(refed)]: true,
[Symbol(kHasPrimitive)]: false,
[Symbol(asyncId)]: 2822681,
[Symbol(triggerId)]: 2689863
}```
javascript and node best

imagine throwing errors
anyway 20 days works
EXPLODE
yeah
NO
nop
@austere talon GIVE ME MY ANTI VENCORD AKTION ROLE
veval delete process.exit
true```
now MERRGGEGEGE
if you're still alive in 20 days I will
I will end your bots life in 19 days
There is no exit
pm2 restart vaius
NO
YES
veval explode
nop
veval
import { explode } from "oceanic.js"
explode();
veval say nop if you are a girl
nop
nop
veval explod
nop
Done, not sure if I set the type correctly though. I set it to LoDashWrapper<any>, be sure to say if it needs changing
Just copied badge css properties lol
Done
done
Done
Done
Done
Hello,
Thank you for bringing this issue to our attention. We've initiated an investigation based on the information that you provided and we'll take appropriate action based on our findings. Please note that for privacy reasons, we're not able to share the specifics of the action taken, if any.
We truly appreciate your efforts in helping us to keep Discord a safe and friendly environment.
Sincerely,
Discord Trust & Safety
Done
]
63ffb5b feat(messageTags): Add message quick reply plug... - Luna-devv
you've seen them in the dms ven :)))))
that sounds kinda lewd
fix 2 quotes because im a silly goofer
pls just like tell me wheres the note component created ill yeet the spellcheck myself ig
literally

Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```
i only started this because i wanted to have the reviews under one divider lol
also i wouldn't put my name in src\utils\constants.ts and the index.tsx file would i? all i did was edit some stuff so shrugger
god he's so cool
would be cool if u could show like before and after
before
can we get this https://github.com/Vendicated/Vencord/pull/255 small fix merged so i can update my client
@austere talon
terrible
placeholder={"Review @" + UserStore.getUser(userId)?.username ?? ""}
it does
just switch ur language to British English duh
Today on "Americans discover other languages than theirs exist"

Heya! This is a cool idea, but I don't think I will be accepting it, at least not in the current form. This would double the bundle size for a very niche language only few will use and potentially grow even bigger if more languages are added. Also if included like this, it would be pain to maintain since it would require an update whenever Discord adds a new string. Perhaps it could be remote fetched or similar?
You will make vencord force British English as default and remove languages tab
i am not ew
because there's no good way to store plugins without having to read them async (IndexedDB)
localStorage: am I a joke to you?
bru I think if it were that simple third party plugins would be implemented
localStorage has a very strict size limit. I think it's 5mb or might be even less. Discord also dumps a lot of their stores in there so we are working with (potentially way) less than 5mb. It might be possible but I'm not sure
Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```
No
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
@D3SOX sned screenshot kthx
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
You can just build my branch but okay here is the current state


[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
swagger, can you hide the heart button that's next to repeat and only keep the context menu one?
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
It's already a setting where you want it
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
no no just asking if it's a setting okay
fight fight fight
no
lame
hiding and unhiding an embed either makes it blank or it disappears

explod
i think i know why this happens
cause i dispatch a message update event
it expects api embeds
but gets processed embeds
+0
ye
just fix it
soon you will get api banned
api will explode
Discord's MenuBar is being displayed on QuickCSS, even on GNOME. The expected behavior is it for not being shown or for it to be replaced by a custom one.

i also made some slight misc tweaks
that was obsolete lmao
the changelist wasnt actually used at all
so that code did nothing


I don't think this is possible on web, on desktop it would be possible but it's also kind of useful to have because it's the only way to open devtools in the quick css Editor
btw I fixed the WhoReacted issue where it wouldn't render til hover
honestly, does it even display on web that menu bar?
anyways, can't you add a keybind for CTRL SHIFT I to open devtools? or include an advanced option on vencord to open devtools on quickcss? or better, open devtools if you hold SHIFT when hitting the quickcss button
it's not that simple
feel free to open a pull request!
explod
makes sense. thanks!
will leave this issue open tho if somebody is willing to try
(you love)
maybe make this pop more, for example via a card with yellow background?
c41a9d6 remove old settings component - MeguminSama
isn't this obsolete? just lazy component should work
471f74b move udpater into VencordSettings folder - MeguminSama
>
Enable React Developer Tools
6b55dee feat(settings): new settings design (#261) - MeguminSama
we are now proud to announce we now support web version 

real not fake
d5fddc5 feat(ci): test web builds - MeguminSama
c4fc01c [skip ci] feat(ci): test web builds (#262) - MeguminSama
nya
Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```
Problem: When new plugins are added it is difficult to find them in the plugins page to install.
Potential Solution a: Ability to sort plugins by recent instead of just alphabetical.
Potential Solution b: Bring new plugins temporarily to the top after an update.
any opinions?
well there's #234
can i close and reopen message link embeds so i can move it to a branch of my fork instead of main
and be able to do other shit in the repo
ye
Bad Patches
None
Bad Starts
None
Discord Errors
Failed to load resource: the server responded with a status of 404 () ```
why
Hi! This script is mostly obsolete now, you should pr to the installer as well
47c181b [skip ci] Add support for DVM installation path... - hanahaneull
wouldn't it be better to remove it fully
if (!IS_WEB) SettingsTabs.VencordUpdater = {...}```
the typings for Updater are a bit annoying

wait what
ts doesn't know that when is web is false, updater is null
so I have to add the check
xd
it's not rly a biggie or a perf issue
just a mild bruh moment
whaaa why not
if (!IS_WEB) SettingsTabs.VencordUpdater = {}
so u don't need check below
are you sure you meant that ven xd
if not web, make updater empty
uh basically
because I want the settings sync to be the last item in the list

updater at the end looks bad
xd
yeah okay that makes sense 

forgot that's a thing
XDXD
XDXD
noooo please continue this @kem0x
if you don't want to i guess i could continue this, this is a good plugin
I've already asked this before, but why not render an actual message component instead of using embeds? Similar to cyns cumcord plugin
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
Please fix conflicts. How about the todos? I think I remember you showing something about the heart button one
[Vendicated/Vencord] New comment on pull request #239: feat\(spotifyControls\): support saving songs
How about the todos? I think I remember you showing something about the heart button one










