diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index a1eb7453b..274a22f2e 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -1,14 +1,19 @@ name: Playwright Tests on: push: - branches: ['main', 'feat/rr7'] + branches: ['main'] pull_request: branches: ['main'] + +concurrency: + group: ci-${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: e2e_tests: name: 'E2E Tests' timeout-minutes: 60 - runs-on: warp-ubuntu-2204-x64-16x + runs-on: warp-ubuntu-2204-x64-8x steps: - uses: actions/checkout@v4 @@ -28,9 +33,6 @@ jobs: - name: Seed the database run: npm run prisma:seed - - name: Build app - run: npm run build - - name: Install playwright browsers run: npx playwright install --with-deps @@ -45,7 +47,7 @@ jobs: with: name: test-results path: 'packages/app-tests/**/test-results/*' - retention-days: 30 + retention-days: 7 env: TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} TURBO_TEAM: ${{ vars.TURBO_TEAM }} diff --git a/apps/remix/app/root.tsx b/apps/remix/app/root.tsx index 70c22dd12..1b5ae1acd 100644 --- a/apps/remix/app/root.tsx +++ b/apps/remix/app/root.tsx @@ -46,12 +46,16 @@ export async function loader({ request }: Route.LoaderArgs) { const { getTheme } = await themeSessionResolver(request); - let lang: SupportedLanguageCodes = await langCookie.parse(request.headers.get('cookie') ?? ''); + const cookieHeader = request.headers.get('cookie') ?? ''; + + let lang: SupportedLanguageCodes = await langCookie.parse(cookieHeader); if (!APP_I18N_OPTIONS.supportedLangs.includes(lang)) { lang = extractLocaleData({ headers: request.headers }).lang; } + const disableAnimations = cookieHeader.includes('__disable_animations=true'); + let organisations = null; if (session.isAuthenticated) { @@ -62,6 +66,7 @@ export async function loader({ request }: Route.LoaderArgs) { { lang, theme: getTheme(), + disableAnimations, session: session.isAuthenticated ? { user: session.user, @@ -92,7 +97,8 @@ export function Layout({ children }: { children: React.ReactNode }) { } export function LayoutContent({ children }: { children: React.ReactNode }) { - const { publicEnv, session, lang, ...data } = useLoaderData() || {}; + const { publicEnv, session, lang, disableAnimations, ...data } = + useLoaderData() || {}; const [theme] = useTheme(); @@ -111,6 +117,14 @@ export function LayoutContent({ children }: { children: React.ReactNode }) { + {disableAnimations && ( +