/* * Vencord, a modification for Discord's desktop app * Copyright (c) 2022 Vendicated and contributors * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ import { useSettings } from "@api/settings"; import { classNameFactory } from "@api/Styles"; import DonateButton from "@components/DonateButton"; import ErrorBoundary from "@components/ErrorBoundary"; import IpcEvents from "@utils/IpcEvents"; import { useAwaiter } from "@utils/misc"; import { Button, Card, Forms, Margins, React, Switch } from "@webpack/common"; const cl = classNameFactory("vc-settings-"); const DEFAULT_DONATE_IMAGE = "https://cdn.discordapp.com/emojis/1026533090627174460.png"; const SHIGGY_DONATE_IMAGE = "https://media.discordapp.net/stickers/1039992459209490513.png"; function VencordSettings() { const [settingsDir, , settingsDirPending] = useAwaiter(() => VencordNative.ipc.invoke(IpcEvents.GET_SETTINGS_DIR), { fallbackValue: "Loading..." }); const settings = useSettings(); const donateImage = React.useMemo(() => Math.random() > 0.5 ? DEFAULT_DONATE_IMAGE : SHIGGY_DONATE_IMAGE, []); return ( {IS_WEB ? ( ) : ( )} Hint: You can change the position of this settings section in the settings of the "Settings" plugin! settings.useQuickCss = v} note="Loads styles from your QuickCSS file"> Use QuickCSS {!IS_WEB && ( settings.enableReactDevtools = v} note="Requires a full restart"> Enable React Developer Tools settings.notifyAboutUpdates = v} note="Shows a toast on startup"> Get notified about new updates settings.frameless = v} note="Requires a full restart"> Disable the window frame )} ); } interface DonateCardProps { image: string; } function DonateCard({ image }: DonateCardProps) { return (
Support the Project Please consider supporting the development of Vencord by donating!
); } export default ErrorBoundary.wrap(VencordSettings);