diff --git a/frontend/src/components/AccessControlListEditor.tsx b/frontend/src/components/AccessControlListEditor.tsx index 6f4467ff..547e8313 100644 --- a/frontend/src/components/AccessControlListEditor.tsx +++ b/frontend/src/components/AccessControlListEditor.tsx @@ -4,6 +4,7 @@ import Button from "@/components/Button"; import Select from "@/components/Select"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faArrowUp, faArrowDown, faXmark } from "@fortawesome/free-solid-svg-icons"; +import { roleColour } from "@/lib/colour"; interface AccessControlListEditorProps { guildId: string; @@ -60,12 +61,18 @@ const AccessControlListEditor: FC = ({ return role ? role.name : "Deleted Role"; }; + const roleColours = new Map(roles.map((r) => [r.id, roleColour(r.color)])); + return (
({ + key, + label, + color, + }))} onChange={(e) => setPanel((prev) => prev ? { ...prev, button_style: e ?? prev.button_style } : prev, @@ -515,15 +516,15 @@ const PanelsPage: FC = () => { options={ selectedGuild?.roles ? [ - { label: "Ticket Opener", key: "user", color: "ffffff" }, - { label: "@here", key: "here", color: "ffffff" }, + { label: "Ticket Opener", key: "user", color: "#FFFFFF" }, + { label: "@here", key: "here", color: "#FFFFFF" }, ...(selectedGuild.roles.map((role) => ({ label: role.name, key: role.id, - color: role.color.toString(16), - })) || [{ label: "@here", key: "here", color: "ffffff" }]), + color: roleColour(role.color), + })) || [{ label: "@here", key: "here", color: "#FFFFFF" }]), ] - : [{ label: "@here", key: "here", color: "ffffff" }] + : [{ label: "@here", key: "here", color: "#FFFFFF" }] } onChange={(e) => setPanel((prev) => (prev ? { ...prev, mentions: e } : prev))} /> diff --git a/frontend/src/pages/manage/panels/edit.tsx b/frontend/src/pages/manage/panels/edit.tsx index fa2adcbc..5d4562b7 100644 --- a/frontend/src/pages/manage/panels/edit.tsx +++ b/frontend/src/pages/manage/panels/edit.tsx @@ -22,6 +22,8 @@ import Select from "@/components/Select"; import TextInput from "@/components/TextInput"; import NumberInput from "@/components/NumberInput"; import ColourSelect from "@/components/ColourSelect"; +import { BUTTON_STYLE_OPTIONS } from "@/constants/buttonStyles"; +import { roleColour } from "@/lib/colour"; import Textarea from "@/components/Textarea"; import EmojiPicker from "@/components/EmojiPicker"; import PanelPreview from "@/components/PanelPreview"; @@ -265,12 +267,11 @@ const EditPanelsPage: FC = () => {