-
Notifications
You must be signed in to change notification settings - Fork 101
refactor(css): extract repeated Tailwind patterns into @layer components #380
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -9,10 +9,10 @@ import { ArrowLeft } from 'lucide-react'; | |||||||||
| export default function BillsCatalogPage() { | ||||||||||
| return ( | ||||||||||
| <> | ||||||||||
| <div className="sticky top-0 z-10 border-b border-border bg-card/95 backdrop-blur-sm"> | ||||||||||
| <div className="px-4 py-3 flex items-center gap-3"> | ||||||||||
| <Link href="/bills" className="flex items-center justify-center min-w-[44px] min-h-[44px] -m-2"><ArrowLeft className="w-5 h-5 text-primary" /></Link> | ||||||||||
| <h1 className="text-lg font-bold text-foreground">Bill catalog</h1> | ||||||||||
| <div className="page-header"> | ||||||||||
| <div className="page-header-row"> | ||||||||||
| <Link href="/bills" className="touch-target"><ArrowLeft className="w-5 h-5 text-primary" /></Link> | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Provide an accessible label for the icon-only back control. Line 14 uses only an icon inside ♿ Suggested fix- <Link href="/bills" className="touch-target"><ArrowLeft className="w-5 h-5 text-primary" /></Link>
+ <Link href="/bills" className="touch-target" aria-label="Go back to bills">
+ <ArrowLeft className="w-5 h-5 text-primary" />
+ </Link>📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||
| <h1 className="page-title">Bill catalog</h1> | ||||||||||
| </div> | ||||||||||
| </div> | ||||||||||
| <PageContainer> | ||||||||||
|
|
||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -9,10 +9,10 @@ import { ArrowLeft } from 'lucide-react'; | |||||||||
| export default function BillsPayPage() { | ||||||||||
| return ( | ||||||||||
| <> | ||||||||||
| <div className="sticky top-0 z-10 border-b border-border bg-card/95 backdrop-blur-sm"> | ||||||||||
| <div className="px-4 py-3 flex items-center gap-3"> | ||||||||||
| <Link href="/bills" className="flex items-center justify-center min-w-[44px] min-h-[44px] -m-2"><ArrowLeft className="w-5 h-5 text-primary" /></Link> | ||||||||||
| <h1 className="text-lg font-bold text-foreground">Pay bill</h1> | ||||||||||
| <div className="page-header"> | ||||||||||
| <div className="page-header-row"> | ||||||||||
| <Link href="/bills" className="touch-target"><ArrowLeft className="w-5 h-5 text-primary" /></Link> | ||||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Add Line 14 needs an explicit accessible name for assistive technologies. ♿ Suggested fix- <Link href="/bills" className="touch-target"><ArrowLeft className="w-5 h-5 text-primary" /></Link>
+ <Link href="/bills" className="touch-target" aria-label="Go back to bills">
+ <ArrowLeft className="w-5 h-5 text-primary" />
+ </Link>📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||
| <h1 className="page-title">Pay bill</h1> | ||||||||||
| </div> | ||||||||||
| </div> | ||||||||||
| <PageContainer> | ||||||||||
|
|
||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -18,12 +18,12 @@ export default function SmePage() { | |||||||||||||||||
| return ( | ||||||||||||||||||
| <> | ||||||||||||||||||
| <div className="border-b border-border bg-card/95 backdrop-blur-sm sticky top-0 z-10"> | ||||||||||||||||||
| <div className="px-4 py-3 flex items-center gap-3"> | ||||||||||||||||||
| <div className="page-header-row"> | ||||||||||||||||||
| <Link href="/business" className="text-primary"> | ||||||||||||||||||
| <ArrowLeft className="w-5 h-5" /> | ||||||||||||||||||
|
Comment on lines
+21
to
23
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Name the icon-only back link for accessibility. Line 22 should include ♿ Suggested fix- <Link href="/business" className="text-primary">
+ <Link href="/business" className="touch-target text-primary" aria-label="Go back to business">
<ArrowLeft className="w-5 h-5" />
</Link>📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||||
| </Link> | ||||||||||||||||||
| <div> | ||||||||||||||||||
| <h1 className="text-lg font-bold text-foreground">SME Services</h1> | ||||||||||||||||||
| <h1 className="page-title">SME Services</h1> | ||||||||||||||||||
| <p className="text-sm text-muted-foreground">Apply for business banking, transfers, and statements.</p> | ||||||||||||||||||
| </div> | ||||||||||||||||||
| </div> | ||||||||||||||||||
|
|
||||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -22,9 +22,9 @@ export default function Error({ | |
| }; | ||
|
|
||
| return ( | ||
| <div className="flex min-h-[400px] flex-col items-center justify-center gap-4 p-6 text-center"> | ||
| <div className="rounded-full bg-red-100 dark:bg-red-900/30 p-3"> | ||
| <AlertTriangle className="h-8 w-8 text-red-600 dark:text-red-400" /> | ||
| <div className="error-state"> | ||
| <div className="error-icon-wrapper"> | ||
| <AlertTriangle className="error-icon" /> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Verify unresolved icon identifiers and missing import in app/error.tsx
rg -n "import .*lucide-react" app/error.tsx
rg -n "\b(AlertTriangle|RefreshCw|Home)\b" app/error.tsxRepository: Pi-Defi-world/acbu-frontend Length of output: 222 Fix missing
Suggested fix import { useEffect } from 'react';
import { Button } from '`@/components/ui/button`';
+import { AlertTriangle, RefreshCw, Home } from 'lucide-react';
import { logger } from '`@/lib/logger`';🤖 Prompt for AI Agents |
||
| </div> | ||
|
|
||
| <div className="space-y-2"> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -236,7 +236,7 @@ export default function HelpPage() { | |
| <form onSubmit={handleSubmit} className="space-y-4"> | ||
| <div className="grid grid-cols-1 md:grid-cols-2 gap-4"> | ||
| <div> | ||
| <label className="text-sm font-medium text-foreground mb-2 block"> | ||
| <label className="form-label"> | ||
| Name | ||
| </label> | ||
|
Comment on lines
+239
to
241
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Associate each form label with its field ( These labels are still not programmatically bound to inputs, so screen-reader users and click-to-focus behavior are degraded. Suggested fix- <label className="form-label">
+ <label htmlFor="support-name" className="form-label">
Name
</label>
<Input
+ id="support-name"
type="text"
@@
- <label className="form-label">
+ <label htmlFor="support-email" className="form-label">
Email
</label>
<Input
+ id="support-email"
type="email"
@@
- <label className="form-label">
+ <label htmlFor="support-subject" className="form-label">
Subject
</label>
<Input
+ id="support-subject"
type="text"
@@
- <label className="form-label">
+ <label htmlFor="support-message" className="form-label">
Message
</label>
<Textarea
+ id="support-message"
placeholder="Describe your issue in detail..."Also applies to: 255-257, 272-274, 288-290 🤖 Prompt for AI Agents |
||
| <Input | ||
|
|
@@ -252,7 +252,7 @@ export default function HelpPage() { | |
| </div> | ||
|
|
||
| <div> | ||
| <label className="text-sm font-medium text-foreground mb-2 block"> | ||
| <label className="form-label"> | ||
| </label> | ||
| <Input | ||
|
|
@@ -269,7 +269,7 @@ export default function HelpPage() { | |
| </div> | ||
|
|
||
| <div> | ||
| <label className="text-sm font-medium text-foreground mb-2 block"> | ||
| <label className="form-label"> | ||
| Subject | ||
| </label> | ||
| <Input | ||
|
|
@@ -285,7 +285,7 @@ export default function HelpPage() { | |
| </div> | ||
|
|
||
| <div> | ||
| <label className="text-sm font-medium text-foreground mb-2 block"> | ||
| <label className="form-label"> | ||
| Message | ||
| </label> | ||
| <Textarea | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add an accessible name to the icon-only back link.
Line 45 renders an icon-only
<Link>without an explicit label, so assistive tech may announce it ambiguously.♿ Suggested fix
📝 Committable suggestion
🤖 Prompt for AI Agents