Skip to content

refactor(frontend): add useAutoRefresh for PageRefreshBar pages #1146

refactor(frontend): add useAutoRefresh for PageRefreshBar pages

refactor(frontend): add useAutoRefresh for PageRefreshBar pages #1146

Workflow file for this run

name: CI Frontend
on:
push:
branches: [main, develop]
paths:
- 'frontend/**'
- '!frontend/**/*.md'
- '.github/workflows/ci-frontend.yml'
pull_request:
paths:
- 'frontend/**'
- '!frontend/**/*.md'
- '.github/workflows/ci-frontend.yml'
permissions:
contents: read
concurrency:
group: ci-frontend-${{ github.ref }}
cancel-in-progress: true
jobs:
quality:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./frontend
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Setup Node.js
uses: actions/setup-node@v7
with:
node-version: '22'
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm ci --no-audit
- name: Lint
run: npm run lint
- name: Lint CSS (design tokens)
run: npm run lint:css
- name: Typecheck
run: npm run typecheck
- name: Unit & component tests
run: npm run test
- name: Check for un-migrated hardcoded French strings
run: npm run lint:i18n
- name: Build
run: npm run build
env:
NODE_ENV: production
browser-tests:
name: Real-browser tests
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./frontend
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Setup Node.js
uses: actions/setup-node@v7
with:
node-version: '22'
cache: npm
cache-dependency-path: frontend/package-lock.json
- name: Install dependencies
run: npm ci --no-audit
- name: Install Playwright Chromium
run: npx playwright install --with-deps chromium
- name: Real-browser tests
run: npm run test:browser