Skip to content

Commit fb4cb6c

Browse files
FIX: Updated disabled and hover states to be more accesible (#122)
All other engineers are on holiday leave. These are minor frontend changes that support a planned release
1 parent 3ee1342 commit fb4cb6c

10 files changed

Lines changed: 16 additions & 14 deletions

File tree

frontend/components/ui/button.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { cva, type VariantProps } from "class-variance-authority";
55
import { cn } from "@/lib/utils";
66

77
const buttonVariants = cva(
8-
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
8+
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 cursor-pointer disabled:cursor-not-allowed",
99
{
1010
variants: {
1111
variant: {

frontend/components/ui/dialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ const DialogContent = React.forwardRef<
4444
{...props}
4545
>
4646
{children}
47-
<DialogPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground">
47+
<DialogPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 data-[state=open]:bg-accent data-[state=open]:text-muted-foreground cursor-pointer disabled:cursor-not-allowed">
4848
<X className="h-4 w-4" />
4949
<span className="sr-only">Close</span>
5050
</DialogPrimitive.Close>

frontend/components/ui/sheet.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ const SheetContent = React.forwardRef<
6464
className={cn(sheetVariants({ side }), className)}
6565
{...props}
6666
>
67-
<SheetPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary">
67+
<SheetPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 data-[state=open]:bg-secondary cursor-pointer disabled:cursor-not-allowed">
6868
<X className="h-4 w-4" />
6969
<span className="sr-only">Close</span>
7070
</SheetPrimitive.Close>

frontend/components/ui/tabs.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ const TabsTrigger = React.forwardRef<
2929
<TabsPrimitive.Trigger
3030
ref={ref}
3131
className={cn(
32-
"inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",
32+
"inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow cursor-pointer disabled:cursor-not-allowed",
3333
className,
3434
)}
3535
{...props}

frontend/components/ui/toggle.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { cva, type VariantProps } from "class-variance-authority";
77
import { cn } from "@/lib/utils";
88

99
const toggleVariants = cva(
10-
"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
10+
"inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 cursor-pointer disabled:cursor-not-allowed",
1111
{
1212
variants: {
1313
variant: {

frontend/src/components/ActionPlanSection.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export function ActionPlanSection({
5454
<input
5555
type="checkbox"
5656
id={`resource-${index}`}
57-
className="mt-1 w-4 h-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500"
57+
className="mt-1 w-4 h-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500 cursor-pointer"
5858
onChange={(e) =>
5959
onResourceSelection(resource, e.target.checked)
6060
}

frontend/src/components/ClientDetailsInput.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ export function ClientDetailsInput({
138138
key={category.id}
139139
variant={isSelected ? "default" : "outline"}
140140
size="sm"
141-
className={`text-sm flex-col justify-center px-1 min-h-20 w-auto whitespace-normal break-words h-auto ${
141+
className={`text-sm flex-col justify-center px-1 min-h-20 w-auto whitespace-normal break-words h-auto disabled:cursor-not-allowed ${
142142
isSelected
143143
? "bg-blue-600 text-white hover:bg-blue-700"
144144
: "text-gray-600 hover:bg-gray-100 hover:text-gray-900"
@@ -169,7 +169,7 @@ export function ClientDetailsInput({
169169
: "outline"
170170
}
171171
size="sm"
172-
className={`h-12 text-sm ${
172+
className={`h-12 text-sm disabled:cursor-not-allowed ${
173173
selectedResourceTypes.includes("goodwill")
174174
? "bg-blue-600 text-white hover:bg-blue-700"
175175
: "text-gray-600 hover:bg-gray-100 hover:text-gray-900"
@@ -189,7 +189,7 @@ export function ClientDetailsInput({
189189
: "outline"
190190
}
191191
size="sm"
192-
className={`h-12 text-sm ${
192+
className={`h-12 text-sm disabled:cursor-not-allowed ${
193193
selectedResourceTypes.includes("government")
194194
? "bg-blue-600 text-white hover:bg-blue-700"
195195
: "text-gray-600 hover:bg-gray-100 hover:text-gray-900"
@@ -209,7 +209,7 @@ export function ClientDetailsInput({
209209
: "outline"
210210
}
211211
size="sm"
212-
className={`h-12 text-sm ${
212+
className={`h-12 text-sm disabled:cursor-not-allowed ${
213213
selectedResourceTypes.includes("community")
214214
? "bg-blue-600 text-white hover:bg-blue-700"
215215
: "text-gray-600 hover:bg-gray-100 hover:text-gray-900"
@@ -252,7 +252,7 @@ export function ClientDetailsInput({
252252
variant="ghost"
253253
size="sm"
254254
onClick={onClearAllFilters}
255-
className="text-gray-700 hover:bg-gray-100 hover:text-gray-900"
255+
className="text-gray-700 hover:bg-gray-100 hover:text-gray-900 disabled:cursor-not-allowed"
256256
data-testid="clearFiltersButton"
257257
disabled={loading}
258258
>
@@ -287,7 +287,7 @@ export function ClientDetailsInput({
287287
loading ||
288288
(selectedCategories.length === 0 && !clientDescription.trim())
289289
}
290-
className="min-w-[16rem] w-full row-auto generate-referrals-button text-lg pt-6 pb-6"
290+
className="min-w-[16rem] w-full row-auto generate-referrals-button text-lg pt-6 pb-6 cursor-pointer disabled:!cursor-not-allowed"
291291
data-testid="findResourcesButton"
292292
>
293293
{!loading && (

frontend/src/components/EmailReferralsButton.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ export function EmailReferralsButton({ resultId }: EmailReferralsProps) {
104104
<div className="flex gap-2 justify-end">
105105
<DialogClose asChild>
106106
<Button
107+
className="cursor-pointer disabled:!cursor-not-allowed"
107108
type="button"
108109
onClick={handleClose}
109110
disabled={isLoading}
@@ -114,6 +115,7 @@ export function EmailReferralsButton({ resultId }: EmailReferralsProps) {
114115
</Button>
115116
</DialogClose>
116117
<Button
118+
className="cursor-pointer disabled:cursor-not-allowed"
117119
type="submit"
118120
onClick={() => void handleSendEmail()}
119121
disabled={isLoading || !email.trim() || !isValidEmail(email)}

frontend/src/components/RemoveResourceNotification.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export function RemoveResourceNotification({
1818
<button
1919
onClick={handleUndoRemove}
2020
aria-label="Undo resource removal"
21-
className="flex items-center gap-1.5 px-3 py-1.5 bg-white text-gray-900 rounded-md hover:bg-gray-100 transition-colors text-sm font-medium"
21+
className="flex items-center gap-1.5 px-3 py-1.5 bg-white text-gray-900 rounded-md hover:bg-gray-100 transition-colors text-sm font-medium cursor-pointer"
2222
>
2323
<RotateCcw className="w-3.5 h-3.5" />
2424
Undo

frontend/src/components/ResourcesList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ const referralTypeIndicator = (referralType: string | undefined) => {
3939
className="inline-flex items-center gap-1.5 bg-transparent text-green-800 ml-4 mt-3 px-2.5 py-1 max-w-[15rem] text-sm font-bold"
4040
>
4141
<Users className="h-4 w-4 shrink-0" />
42-
<span className="truncate">External</span>
42+
<span className="truncate">Community</span>
4343
</span>
4444
);
4545
}

0 commit comments

Comments
 (0)