feat(stats): hide nav + minimize footer + add orange glow on /stats only#82
Conversation
…to shell - Add Router.events NavigationEnd subscription -> isStatsRoute signal - Track navigationCount to drive goBack() fallback behavior - goBack() calls Location.back() when in-app history exists, else router.navigate(['/']) - HTML wraps <nav> and .nav-mobile in @if (!isStatsRoute) - HTML wraps .footer-inner in @if (!isStatsRoute); .footer-bottom stays untouched - HTML adds .stats-glow-bg and .stats-back-btn gated by @if (isStatsRoute) - <main> gets [class.stats-main] binding for stacking-context lift (used in Task 2 SCSS) - Other routes are visually and behaviorally unchanged (zero-bleed)
… to shell SCSS - Append .stats-back-btn (position:fixed top-left, mirrors .theme-toggle-btn aesthetic) - Append .stats-glow-bg with rgba(255,107,53,0.18) primary + rgba(255,140,66,0.12) secondary radial-gradient blobs (matches home .hero-bg exactly) - @Keyframes statsGlow (renamed from heroGlow to avoid global keyframe collision -- Angular emulated encapsulation does NOT scope @Keyframes) - prefers-reduced-motion disables the glow animation - :host > main.stats-main { position:relative; z-index:1 } lifts /stats content above the fixed z-index:0 glow without disturbing main on any other route - All existing shell rules left untouched -- append-only for zero bleed - stats-page.component.scss intentionally NOT modified (per plan default disposition -- existing var(--section-padding) becomes acceptable top breathing room with nav gone)
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a867bd6a88
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| <i class="fa-brands fa-github"></i> GitHub | ||
| @if (isStatsRoute) { | ||
| <div class="stats-glow-bg" aria-hidden="true"></div> | ||
| <button type="button" class="stats-back-btn" (click)="goBack()" aria-label="Go back"> |
There was a problem hiding this comment.
Localize back-button aria-label
The new /stats back button adds aria-label="Go back" without a matching i18n-aria-label, which violates the template i18n rule used in CI (@angular-eslint/template/i18n checks attributes, and aria-label is not in the ignore list). Because .github/workflows/ci.yml runs npm --prefix showcase/angular run lint:i18n, this change can fail the pipeline and also leaves the label untranslated in non-English builds.
Useful? React with 👍 / 👎.
|
@codex review |
|
Codex Review: Didn't find any major issues. Nice work! ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Aesthetic overhaul of
/stats(showcase), scoped strictly to that route — zero bleed to home, agents, dashboard, etc.Location.back()when in-app navigation history exists, fallback to/for deep-link entry).rgba(255,107,53,0.18)+rgba(255,140,66,0.12)radial gradients + 12s ease-in-out animation. Same intensity, not amplified.All three are driven from a single
isStatsRoutesignal inShowcaseShellComponent— no new component, no global CSS, no fork of the footer.Implementation notes
isStatsRoutederives from aNavigationEndsubscription usingurlNoQs.endsWith('/stats')(forward-compatible with future locale prefixes like/fr/stats).navigationCount(notwindow.history.length, which is polluted by pre-app history).statsGlow(notheroGlow) because Angular's emulated encapsulation does not scope@keyframes— same-named keyframes across components collide globally.<main>gets[class.stats-main]withposition:relative; z-index:1so content stacks above thez-index:0glow on /stats only.Test plan
/stats: nav hidden, back button visible top-left, orange glow visible behind charts, footer shows only credit + version + language picker./statsreached via in-app nav → returns to previous page./statsdirectly (fresh tab / deep link) → back button falls back to/./,/agents,/dashboard,/about,/privacy,/support: nav visible, full footer renders with both columns, no orange glow appears.npm run build(showcase/angular) — exit 0, 30 routes prerendered, zero errors.