Skip to content
This repository was archived by the owner on Aug 11, 2026. It is now read-only.

fix: apply motion + admin rules to jon.myers.sound@gmail.com account - #893

Merged
jon-myers merged 1 commit into
mainfrom
fix/motion-prefs-for-gmail-account
Jul 13, 2026
Merged

fix: apply motion + admin rules to jon.myers.sound@gmail.com account#893
jon-myers merged 1 commit into
mainfrom
fix/motion-prefs-for-gmail-account

Conversation

@jon-myers

Copy link
Copy Markdown
Collaborator

Summary

Four rules were hardcoded to the jbmyers@ucsc.edu user ID (634d9506a6a3647e543b7641). This extends them to jon.myers.sound@gmail.com (67bcba9496f2cea9ceb736c2), which is now the primary login.

Motion suppression (motion sensitivity)

Consolidated behind a shared suppressMotion() predicate in the new src/js/motionPrefs.ts. Three sites previously compared the raw ObjectId inline:

  • EditorComponent.vue — playhead forced to Block on editor mount
  • SpectrogramControls.vue — playhead forced to DottedLine when a display setting loads (overriding the saved setting)
  • Renderer.vue — wheel + touch scrolling suppressed in the renderer

Net behavior on the gmail account is now identical to the UCSC account: the playhead never animates, and the renderer does not scroll under wheel/touch.

Admin gate

AnalyzerComponent.vue's admin computed (which unlocks the "Excel Datasets" analysis type) becomes an adminIds list rather than a chain of === comparisons. Membership: jbmyers@ucsc.edu, jon.myers.sound@gmail.com, Dard Neuman.

Notes

  • No comparison against the raw UCSC ObjectId survives; the ID now appears only inside the two declarative lists, so adding a future account is a one-line change.
  • Frontend-only — no server deploy needed.

Test plan

  • pnpm build — clean; new ID verified present in both the EditorComponent and AnalyzerComponent chunks
  • pnpm test — 314 tests passed across 16 files

🤖 Generated with Claude Code

Four rules were hardcoded to the jbmyers@ucsc.edu user ID
(634d9506a6a3647e543b7641). Extend them to the gmail account
(67bcba9496f2cea9ceb736c2), which is now the primary login.

Motion suppression (motion sensitivity) is consolidated behind a shared
suppressMotion() predicate in src/js/motionPrefs.ts, covering all three
sites that previously compared the raw ObjectId inline:
  - EditorComponent: playhead forced to Block on mount
  - SpectrogramControls: playhead forced to DottedLine on setting load
  - Renderer: wheel/touch scrolling suppressed

AnalyzerComponent's admin gate ("Excel Datasets" analysis type) becomes an
adminIds list rather than a chain of === comparisons.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@jon-myers
jon-myers merged commit a46bdd8 into main Jul 13, 2026
2 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant