fix: resolve linting issues and add dropdown tabindex
Node.js CI / CI (pull_request) Successful in 1m22s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m26s

Fixed ESLint error in header component:
- Added tabindex="-1" to dropdown menu for keyboard accessibility
- Ensures dropdown is focusable for screen readers

Auto-fixed formatting issues:
- Ran ESLint --fix to auto-correct stylistic issues
- Fixed key spacing in achievement constants
- Fixed object key ordering

Test Results:
-  All 123 tests passing (1 API + 122 shared-types)
-  Frontend linting passes
-  Only non-critical warnings remain in e2e and shared-types
This commit is contained in:
2026-02-20 01:49:10 -08:00
committed by Naomi Carrigan
parent abb39c67f2
commit 544c090ff3
8 changed files with 642 additions and 608 deletions
@@ -58,6 +58,7 @@ import { ApiService } from '../../services/api.service';
class="dropdown-menu"
role="menu"
aria-label="User menu"
tabindex="-1"
(keydown.escape)="closeDropdown()"
>
<a [routerLink]="['/profile', user.slug || user.id]" class="dropdown-item" role="menuitem" (click)="closeDropdown()">My Profile</a>
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -61,10 +61,10 @@ export interface AchievementProgress {
export interface UserAchievementSummary {
totalPoints: number;
totalEarned: number;
recentAchievements: AchievementProgress[];
progressByCategory: {
recentAchievements: Array<AchievementProgress>;
progressByCategory: Array<{
category: AchievementCategory;
earned: number;
total: number;
}[];
}>;
}
+1 -1
View File
@@ -62,7 +62,7 @@ interface AchievementActivity extends BaseActivity {
type Activity = SuggestionActivity | LikeActivity | CommentActivity | AchievementActivity;
interface ActivityFeedResponse {
activities: Activity[];
activities: Array<Activity>;
total: number;
hasMore: boolean;
}
+1 -1
View File
@@ -4,7 +4,7 @@
* @author Naomi Carrigan
*/
import { PrimaryBadge } from "./auth.types";
import type { PrimaryBadge } from "./auth.types";
interface CommentUser {
id: string;
+4 -4
View File
@@ -41,10 +41,10 @@ interface OverallLeaderboard extends LeaderboardUser {
}
interface LeaderboardResponse {
topSuggestions: SuggestionsLeaderboard[];
topLikes: LikesLeaderboard[];
topComments: CommentsLeaderboard[];
topOverall: OverallLeaderboard[];
topSuggestions: Array<SuggestionsLeaderboard>;
topLikes: Array<LikesLeaderboard>;
topComments: Array<CommentsLeaderboard>;
topOverall: Array<OverallLeaderboard>;
}
export {