Skip to content

feat(ui): Sep6KycForm programmatic SEP-6 KYC form component#599

Open
Johnalex-hub wants to merge 2 commits into
ezedike-evan:mainfrom
Johnalex-hub:feat/b021-sep6-kyc-form-454
Open

feat(ui): Sep6KycForm programmatic SEP-6 KYC form component#599
Johnalex-hub wants to merge 2 commits into
ezedike-evan:mainfrom
Johnalex-hub:feat/b021-sep6-kyc-form-454

Conversation

@Johnalex-hub

Copy link
Copy Markdown

Summary

Implements B021 — replaces KycIframe for SEP-6 anchors with a programmatic Sep6KycForm component driven by the form schema from B015.

  • Sep6KycForm renders text inputs for string fields and selects for choice fields
  • Inline zod validation on submit: required fields block submission
  • Accessible: aria-required, aria-invalid, aria-describedby on errors, role=alert
  • onSubmit(data) wires to parent state machine; rejection shown as inline error
  • Note: depends on B015 — merge B015 first

Test plan

  • Renders labeled input for each schema field
  • Renders select with options for choice fields
  • Validation errors shown and submit blocked when required fields empty
  • onSubmit called with correct values on valid form
  • Field error clears when user corrects input
  • onCancel called on cancel button click
  • Submit error displayed when onSubmit rejects
  • 7 tests pass (npx vitest run tests/Sep6KycForm.spec.tsx)

Closes #454

Replaces KycIframe for SEP-6 anchors with a fully programmatic form
driven by Sep6FormSchema (B015). Renders text inputs for plain string
fields and select dropdowns for choice fields. Inline zod validation
on submit — required fields block submission, errors display with
aria-describedby/aria-invalid for accessibility. Submit calls the
parent onSubmit handler that wires to the state machine; API errors
surface inline. 7 tests cover field rendering, validation blocking,
successful submission, error clearing, cancel, and submit failure.
@vercel

vercel Bot commented Jun 27, 2026

Copy link
Copy Markdown

@Johnalex-hub is attempting to deploy a commit to the ezedikeevan's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jun 27, 2026

Copy link
Copy Markdown

@Johnalex-hub 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

@determined-001 determined-001 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The check (node 20) and check (node 22) CI jobs are failing. Please investigate (likely a Prettier or TypeScript error in this PR's diff), fix, and push so checks go green before this can merge.

@ezedike-evan ezedike-evan left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two things to address before this can merge:

  1. Out-of-scope filelib/stellar/sep6-form.ts belongs to B015 (issue #448, PR #597) not to B021 (#454). Please remove it from this PR and instead stack this branch on top of #597 once that merges (or cherry-pick only the Sep6KycForm component files: components/offramp/Sep6KycForm.tsx and tests/Sep6KycForm.spec.tsx).

  2. CI failurescheck (node 20) and check (node 22) are failing (Prettier formatting issue in lib/stellar/sep6-form.ts). Once the out-of-scope file is removed, this should resolve.

@Johnalex-hub Johnalex-hub force-pushed the feat/b021-sep6-kyc-form-454 branch from ac4324f to ae809ca Compare June 28, 2026 23:27
@Johnalex-hub Johnalex-hub force-pushed the feat/b021-sep6-kyc-form-454 branch from ae809ca to 87ee771 Compare June 28, 2026 23:41
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.

B021: [FEAT] [UI] Programmatic SEP-6 KYC form component

3 participants