Skip to content

feat(frontend): enhance interactive loading states in Fiat Onramp Integration Interface#1237

Merged
emdevelopa merged 1 commit into
emdevelopa:mainfrom
Abidoyesimze:feature/fe-enhance-interactive-loading-states-in-fiat-onramp-integration-interface
Jul 24, 2026
Merged

feat(frontend): enhance interactive loading states in Fiat Onramp Integration Interface#1237
emdevelopa merged 1 commit into
emdevelopa:mainfrom
Abidoyesimze:feature/fe-enhance-interactive-loading-states-in-fiat-onramp-integration-interface

Conversation

@Abidoyesimze

Copy link
Copy Markdown
Contributor

Summary

  • This module didn't exist in the codebase yet, so this PR adds it: a FiatOnrampModal driving a SEP-0024 hosted-deposit flow (fiat -> Stellar token), mirroring the existing SEP-0024 withdrawal modal's anchor-discovery / SEP-10 auth / interactive-iframe pattern, wired into the dashboard's quick actions ("Buy / Deposit").
  • Since there was no existing behavior to preserve, this first pass focuses on a fully realized interaction/loading model per the issue: distinct visual states for connecting to the anchor, waiting on a wallet signature, and generating the deposit form; an inline error state that returns the user to the form instead of dead-ending; a skeleton placeholder while the anchor's interactive iframe loads; and disabled/aria-live states throughout so the loading sequence is announced to assistive tech.

Note

main currently fails to compile locally (next dev 500s) due to a pre-existing, unrelated bug in src/lib/theme-context.tsx (duplicate themeRef declaration from what looks like a botched merge). Verified via tsc/eslint/vitest instead of a live browser session.

Test plan

  • vitest run src/components/FiatOnrampModal.test.tsx — 7/7 passing (asset selection, full connecting -> auth -> generating -> interactive walk-through, amount pass-through, inline error + recovery, close/reset)
  • tsc --noEmit clean on touched files
  • eslint clean on touched files

Closes #1211

🤖 Generated with Claude Code

…e loading states

Adds a SEP-0024 hosted-deposit modal (fiat -> Stellar token onramp) that
mirrors the existing SEP-0024 withdrawal flow's anchor discovery, SEP-10
auth, and interactive-iframe pattern, wired into the dashboard's quick
actions. This module didn't exist in the codebase before, so the focus
for this first pass is a fully realized interaction/loading model:
distinct states for connecting to the anchor, waiting on a wallet
signature, and generating the deposit form, an inline error state that
returns the user to the form instead of dead-ending, a skeleton placeholder
while the anchor's interactive iframe loads, and disabled/aria-live states
throughout so the loading sequence is announced to assistive tech.

Note: main currently fails to compile locally (duplicate `themeRef`
declaration in src/lib/theme-context.tsx, pre-existing and unrelated to
this change), so this was verified via tsc/eslint/vitest rather than a
live browser session.

Closes emdevelopa#1211

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 24, 2026

Copy link
Copy Markdown

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

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jul 24, 2026

Copy link
Copy Markdown

@Abidoyesimze 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 1ebfe9e into emdevelopa:main Jul 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

Development

Successfully merging this pull request may close these issues.

[Frontend] Enhance interactive loading states in Fiat Onramp Integration Interface

2 participants