From c8887b881d2dd0e01adef14393f1d53c8f889421 Mon Sep 17 00:00:00 2001 From: prism Date: Mon, 15 Dec 2025 16:35:59 +0100 Subject: [PATCH] (PluginModal) minor tweaks (#563) * fix(Settings): add section header for Equicord Settings * minor modal tweaks * lint * shrink size * hard cap card size --------- Co-authored-by: thororen1234 <78185467+thororen1234@users.noreply.github.com> --- .../settings/tabs/plugins/LinkIconButton.css | 2 +- .../settings/tabs/plugins/PluginModal.css | 39 +++++++++-- .../settings/tabs/plugins/PluginModal.tsx | 70 +++++++++---------- .../tabs/plugins/components/styles.css | 4 +- .../equicordHelper/pluginCards.css | 3 +- 5 files changed, 75 insertions(+), 43 deletions(-) diff --git a/src/components/settings/tabs/plugins/LinkIconButton.css b/src/components/settings/tabs/plugins/LinkIconButton.css index 97db07802..cae80ef09 100644 --- a/src/components/settings/tabs/plugins/LinkIconButton.css +++ b/src/components/settings/tabs/plugins/LinkIconButton.css @@ -9,4 +9,4 @@ .vc-settings-modal-links { display: flex; gap: 0.2em; -} \ No newline at end of file +} diff --git a/src/components/settings/tabs/plugins/PluginModal.css b/src/components/settings/tabs/plugins/PluginModal.css index ee2bec39e..f6261c6ad 100644 --- a/src/components/settings/tabs/plugins/PluginModal.css +++ b/src/components/settings/tabs/plugins/PluginModal.css @@ -1,7 +1,38 @@ -.vc-plugin-modal-info { - align-items: center; +.vc-plugin-modal-header { + align-items: flex-start; + position: relative; + padding: 16px 16px 0 24px; +} + +.vc-plugin-modal-header-content { + display: flex; + flex-direction: column; + gap: 8px; + flex: 1; +} + +.vc-plugin-modal-header-trailing { + position: absolute; + top: 8px; + right: 8px; + display: flex; + flex-direction: column; + align-items: flex-end; + gap: 4px; +} + +.vc-plugin-modal-title { + color: var(--text-strong); + padding-right: 32px; } .vc-plugin-modal-description { - flex-grow: 1; -} \ No newline at end of file + color: var(--text-subtle); + padding-right: 60px; +} + +.vc-plugin-modal-links { + display: flex; + gap: 4px; + margin-left: auto; +} diff --git a/src/components/settings/tabs/plugins/PluginModal.tsx b/src/components/settings/tabs/plugins/PluginModal.tsx index 36855558e..9af902c12 100644 --- a/src/components/settings/tabs/plugins/PluginModal.tsx +++ b/src/components/settings/tabs/plugins/PluginModal.tsx @@ -34,7 +34,7 @@ import { classes, isObjectEmpty } from "@utils/misc"; import { ModalCloseButton, ModalContent, ModalFooter, ModalHeader, ModalProps, ModalRoot, ModalSize, openModal } from "@utils/modal"; import { OptionType, Plugin } from "@utils/types"; import { User } from "@vencord/discord-types"; -import { findByPropsLazy } from "@webpack"; +import { findByPropsLazy, findComponentByCodeLazy } from "@webpack"; import { Clickable, FluxDispatcher, React, Toasts, Tooltip, useEffect, UserStore, UserSummaryItem, UserUtils, useState } from "@webpack/common"; import { Constructor } from "type-fest"; @@ -47,6 +47,7 @@ import { GithubButton, WebsiteButton } from "./LinkIconButton"; const cl = classNameFactory("vc-plugin-modal-"); const AvatarStyles = findByPropsLazy("moreUsers", "emptyUser", "avatarContainer", "clickableAvatar"); +const CloseButton = findComponentByCodeLazy("CLOSE_BUTTON_LABEL"); const UserRecord: Constructor> = proxyLazy(() => UserStore.getCurrentUser().constructor) as any; interface PluginModalProps extends ModalProps { @@ -158,29 +159,26 @@ export default function PluginModal({ plugin, onRestartNeeded, onClose, transiti return ( - - {plugin.name} - + +
+ {plugin.name} + {plugin.description} + {!!plugin.settingsAboutComponent && ( +
+ + + +
+ )} +
+
+ +
- - {plugin.description} - {!pluginMeta.userPlugin && ( -
- - -
- )} -
- Authors + Authors
- {!!plugin.settingsAboutComponent && ( -
-
- - - -
-
- )} -
- Settings + Settings {renderSettings()}
- { - hasSettings && + {hasSettings && ( + - + {({ onMouseEnter, onMouseLeave }) => (