Skip to content

feat(frontend): screen reader support & optimistic updates for Balance Sync; state refactor & framer-motion for Onboarding Tracker#998

Merged
emdevelopa merged 1 commit into
emdevelopa:mainfrom
presidojay1:feature/fix-issues-955-956-957-958
Jun 24, 2026
Merged

feat(frontend): screen reader support & optimistic updates for Balance Sync; state refactor & framer-motion for Onboarding Tracker#998
emdevelopa merged 1 commit into
emdevelopa:mainfrom
presidojay1:feature/fix-issues-955-956-957-958

Conversation

@presidojay1

Copy link
Copy Markdown
Contributor

Summary

Test plan

  • useBalanceSync reducer tests pass: FETCH_START / FETCH_SUCCESS / FETCH_ERROR / OPTIMISTIC_UPDATE
  • applyOptimistic test: balance appears immediately without a network call, overridden on next poll
  • onboardingReducer unit tests pass: optimistic → confirm / rollback lifecycle
  • RealTimeBalanceSync mounts without errors; aria-live region announces balance updates
  • OnboardingProgressTracker animations play on mount; reduced-motion users see fade-only variants
  • Verify no regressions in SupportPanel which also consumes useBalanceSync

Closes #955
Closes #956
Closes #957
Closes #958

@vercel

vercel Bot commented Jun 24, 2026

Copy link
Copy Markdown

@presidojay1 is attempting to deploy a commit to the Emmanuel's projects Team on Vercel.

A member of the Team first needs to authorize it.

…pdates for Real-time Balance Sync; refactor state logic and add framer-motion animations for Onboarding Progress Tracker

- Issue emdevelopa#955: Added RealTimeBalanceSync component with full a11y (aria-live region,
  role=status, aria-busy, aria-label, per-balance aria-label). Hook now returns
  liveRegionText and ariaLabel for callers to wire up accessible live regions.

- Issue emdevelopa#956: Replaced useState with useReducer in useBalanceSync. Added
  OPTIMISTIC_UPDATE action and applyOptimistic() so UIs reflect balance changes
  immediately before the next poll confirms them. Optimistic overrides are cleared
  on the next successful FETCH_SUCCESS.

- Issue emdevelopa#957: Extracted onboarding reducer (onboardingReducer + createInitialOnboardingState)
  into a standalone onboarding-reducer.ts with full test coverage in
  onboarding-reducer.test.ts. OnboardingProgressTracker imports from that module.

- Issue emdevelopa#958: OnboardingProgressTracker uses framer-motion for staggered step
  entrance, progress bar scale animation, spring check-mark pop-in, and slide-up
  completion banner. All animations respect prefers-reduced-motion.

Closes emdevelopa#955
Closes emdevelopa#956
Closes emdevelopa#957
Closes emdevelopa#958
@presidojay1 presidojay1 force-pushed the feature/fix-issues-955-956-957-958 branch from 50f7cec to c4222ed Compare June 24, 2026 18:12
@drips-wave

drips-wave Bot commented Jun 24, 2026

Copy link
Copy Markdown

@presidojay1 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@emdevelopa emdevelopa merged commit f97a675 into emdevelopa:main Jun 24, 2026
1 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants