Fix critical bugs + add zoom/overlay for citizen chart

Bugs fixed:
- Auth middleware now works on page refresh (plugin restores
  auth from localStorage before middleware runs)
- Bezier drag no longer snaps back: removed client-side p0
  recalculation during drag, only server computes p0 on mouseUp
- Removed redundant /login.vue page (homepage already has links)

New features:
- Interactive zoom on Bezier chart (buttons + mouse wheel +
  tier 1/tier 2 presets)
- Toggle to display outlier vote curves (public overlay endpoint)
- Tier 1 curve visually emphasized (thicker stroke)
- Dev credentials file at data/DEV-CREDENTIALS.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Yvv
2026-02-21 15:50:37 +01:00
parent 39b2d7c9fd
commit 1365f4c86c
7 changed files with 182 additions and 109 deletions

View File

@@ -0,0 +1,8 @@
/**
* Client-only plugin: restores auth state from localStorage
* BEFORE route middleware runs.
*/
export default defineNuxtPlugin(() => {
const authStore = useAuthStore()
authStore.restore()
})