diff --git a/.github/workflows/frontend-ci.yml b/.github/workflows/frontend-ci.yml index 4ec85261..6b9dd6de 100644 --- a/.github/workflows/frontend-ci.yml +++ b/.github/workflows/frontend-ci.yml @@ -1,33 +1,36 @@ -name: Frontend CI +name: frontend on: - pull_request: - branches: [main] push: branches: [main] + pull_request: + branches: [main] jobs: - frontend: + build: runs-on: ubuntu-latest - defaults: - run: - working-directory: frontend defaults: run: - working-directory: frontend + working-directory: ./frontend steps: - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 with: - node-version: 22 - cache: npm - cache-dependency-path: frontend/package-lock.json + node-storage: "npm" + node-version: 20 + + - name: Install dependencies + run: npm ci - - run: npm ci + - name: Lint check + run: npm run lint - - run: npm run build + - name: Type check + run: npm run typecheck - - run: npm audit --audit-level=high \ No newline at end of file + - name: Build project + run: npm run build diff --git a/frontend/src/app/applications/page.tsx b/frontend/src/app/applications/page.tsx index b77b7c09..1f3231ab 100644 --- a/frontend/src/app/applications/page.tsx +++ b/frontend/src/app/applications/page.tsx @@ -95,7 +95,9 @@ export default function MyApplicationsPage() { ) : error ? ( -

Failed to load your applications

+

+ Failed to load your applications +

{error instanceof Error ? error.message : "Unknown error"}

@@ -180,12 +182,7 @@ function ApplicationCard({
-
@@ -193,4 +190,3 @@ function ApplicationCard({
); } - diff --git a/frontend/src/components/applications/ApplicationStatusBadge.tsx b/frontend/src/components/applications/ApplicationStatusBadge.tsx index d9870816..cb60402f 100644 --- a/frontend/src/components/applications/ApplicationStatusBadge.tsx +++ b/frontend/src/components/applications/ApplicationStatusBadge.tsx @@ -8,9 +8,9 @@ export function ApplicationStatusBadge({ status }: { status: ApplicationStatus } status === "reviewing" && "bg-warning/10 text-warning border border-warning/30", status === "accepted" && "bg-success/10 text-success border border-success/30", status === "rejected" && "bg-destructive/10 text-destructive border border-destructive/30", - status === "withdrawn" && "bg-destructive/10 text-destructive border border-destructive/30 opacity-70", + status === "withdrawn" && + "bg-destructive/10 text-destructive border border-destructive/30 opacity-70", ); return {status}; } - diff --git a/frontend/src/components/applications/ApplicationsList.tsx b/frontend/src/components/applications/ApplicationsList.tsx index 93d66088..f0dbb010 100644 --- a/frontend/src/components/applications/ApplicationsList.tsx +++ b/frontend/src/components/applications/ApplicationsList.tsx @@ -33,9 +33,7 @@ export function ApplicationsList({ projectId, className }: Props) { queryFn: () => getProjectApplications(projectId), }); - const [optimistic, setOptimistic] = useState>( - {}, - ); + const [optimistic, setOptimistic] = useState>({}); const apps = useMemo(() => { if (!data) return []; @@ -120,7 +118,9 @@ export function ApplicationsList({ projectId, className }: Props) {

Applications

-

Review applicants and update status.

+

+ Review applicants and update status. +

); } - diff --git a/frontend/src/components/layout/Sidebar.tsx b/frontend/src/components/layout/Sidebar.tsx index f2f96260..7f27764a 100644 --- a/frontend/src/components/layout/Sidebar.tsx +++ b/frontend/src/components/layout/Sidebar.tsx @@ -64,9 +64,7 @@ const groups: Group[] = [ }, { label: "Account", - items: [ - { label: "Settings", to: "/settings", icon: }, - ], + items: [{ label: "Settings", to: "/settings", icon: }], }, ]; @@ -98,7 +96,7 @@ export function Sidebar({ open, onClose }: { open: boolean; onClose: () => void DevLink -