added colour picker to status creation process

This commit is contained in:
Oliver Bryan
2026-01-10 23:25:30 +00:00
parent fa10d75584
commit 3f696e3653

View File

@@ -13,6 +13,7 @@ import { useAuthenticatedSession } from "@/components/session-provider";
import SmallUserDisplay from "@/components/small-user-display"; import SmallUserDisplay from "@/components/small-user-display";
import StatusTag from "@/components/status-tag"; import StatusTag from "@/components/status-tag";
import { Button } from "@/components/ui/button"; import { Button } from "@/components/ui/button";
import ColourPicker from "@/components/ui/colour-picker";
import { ConfirmDialog } from "@/components/ui/confirm-dialog"; import { ConfirmDialog } from "@/components/ui/confirm-dialog";
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from "@/components/ui/dialog"; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from "@/components/ui/dialog";
import { Input } from "@/components/ui/input"; import { Input } from "@/components/ui/input";
@@ -42,6 +43,7 @@ function OrganisationsDialog({
const [statuses, setStatuses] = useState<Record<string, string>>({}); const [statuses, setStatuses] = useState<Record<string, string>>({});
const [isCreatingStatus, setIsCreatingStatus] = useState(false); const [isCreatingStatus, setIsCreatingStatus] = useState(false);
const [newStatusName, setNewStatusName] = useState(""); const [newStatusName, setNewStatusName] = useState("");
const [newStatusColour, setNewStatusColour] = useState(DEFAULT_STATUS_COLOUR);
const [statusError, setStatusError] = useState<string | null>(null); const [statusError, setStatusError] = useState<string | null>(null);
const [statusToRemove, setStatusToRemove] = useState<string | null>(null); const [statusToRemove, setStatusToRemove] = useState<string | null>(null);
const [reassignToStatus, setReassignToStatus] = useState<string>(""); const [reassignToStatus, setReassignToStatus] = useState<string>("");
@@ -202,7 +204,7 @@ function OrganisationsDialog({
return; return;
} }
const newStatuses = { ...statuses }; const newStatuses = { ...statuses };
newStatuses[trimmed] = DEFAULT_STATUS_COLOUR; newStatuses[trimmed] = newStatusColour;
await updateStatuses(newStatuses); await updateStatuses(newStatuses);
setNewStatusName(""); setNewStatusName("");
setIsCreatingStatus(false); setIsCreatingStatus(false);
@@ -483,6 +485,11 @@ function OrganisationsDialog({
}} }}
autoFocus autoFocus
/> />
<ColourPicker
colour={newStatusColour}
onChange={setNewStatusColour}
/>
<Button <Button
variant="outline" variant="outline"
size="icon" size="icon"