Skip to content

fix(sdk): disable native browser validation on react-hook-form forms#1791

Merged
rohanchkrabrty merged 2 commits into
mainfrom
fix-member-invite
Jul 22, 2026
Merged

fix(sdk): disable native browser validation on react-hook-form forms#1791
rohanchkrabrty merged 2 commits into
mainfrom
fix-member-invite

Conversation

@rohanchkrabrty

@rohanchkrabrty rohanchkrabrty commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Apsara's Field defaults to required=true and now stamps the native required attribute on its controls, so browsers showed built-in validation bubbles before react-hook-form/yup could run and render errors in the Field error slot
  • Added noValidate to all SDK client forms that submit via react-hook-form's handleSubmit, restoring schema-driven validation with errors shown inline

@vercel

vercel Bot commented Jul 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
frontier Ready Ready Preview, Comment Jul 22, 2026 7:51am

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f1224427-d965-4d90-845b-5989d4e6bd02

📥 Commits

Reviewing files that changed from the base of the PR and between 0728b99 and 5e06a8c.

📒 Files selected for processing (19)
  • web/apps/client-demo/src/App.tsx
  • web/sdk/client/views/auth/magic-link/magic-link-view.tsx
  • web/sdk/client/views/auth/subscribe/subscribe-view.tsx
  • web/sdk/client/views/auth/updates/updates-view.tsx
  • web/sdk/client/views/create-organization/create-organization-view.tsx
  • web/sdk/client/views/general/components/delete-organization-dialog.tsx
  • web/sdk/client/views/general/general-view.tsx
  • web/sdk/client/views/members/components/invite-member-dialog.tsx
  • web/sdk/client/views/pat/components/pat-form-dialog.tsx
  • web/sdk/client/views/profile/profile-view.tsx
  • web/sdk/client/views/projects/components/add-project-dialog.tsx
  • web/sdk/client/views/projects/components/edit-project-dialog.tsx
  • web/sdk/client/views/security/components/add-domain-dialog.tsx
  • web/sdk/client/views/security/components/delete-domain-dialog.tsx
  • web/sdk/client/views/service-accounts/components/add-service-account-dialog.tsx
  • web/sdk/client/views/service-accounts/components/add-token-form.tsx
  • web/sdk/client/views/teams/components/add-team-dialog.tsx
  • web/sdk/client/views/teams/components/edit-team-dialog.tsx
  • web/sdk/client/views/tokens/components/add-tokens-dialog.tsx

📝 Walkthrough

Summary by CodeRabbit

  • Bug Fixes
    • Standardized form validation across authentication, organization, project, team, security, profile, and token workflows.
    • Forms now rely on consistent in-app validation messages instead of browser-native validation prompts.
    • Clarified the optional “Add to team” field labeling.
  • Style
    • Updated stylesheet loading order for more consistent demo app styling.

Walkthrough

Changes

SDK form validation

Layer / File(s) Summary
Account and authentication forms
web/sdk/client/views/auth/*, web/sdk/client/views/create-organization/..., web/sdk/client/views/general/..., web/sdk/client/views/profile/...
Authentication, organization, general settings, and profile forms now use noValidate while retaining React Hook Form submission handlers.
Resource dialog forms
web/sdk/client/views/members/..., web/sdk/client/views/pat/..., web/sdk/client/views/projects/..., web/sdk/client/views/security/..., web/sdk/client/views/service-accounts/..., web/sdk/client/views/teams/..., web/sdk/client/views/tokens/...
Resource forms disable native validation; the invite dialog labels its team field as optional with required={false}.

Client demo styling

Layer / File(s) Summary
Normalize stylesheet ordering
web/apps/client-demo/src/App.tsx
The normalize stylesheet import now precedes the main Apsara stylesheet import, with minor import formatting cleanup.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: rsbh

🚥 Pre-merge checks | ✅ 2
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coveralls

Copy link
Copy Markdown

Coverage Report for CI Build 29901753577

Coverage remained the same at 46.224%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 38463
Covered Lines: 17779
Line Coverage: 46.22%
Coverage Strength: 13.36 hits per line

💛 - Coveralls

@rohanchkrabrty
rohanchkrabrty merged commit 7fd6055 into main Jul 22, 2026
8 checks passed
@rohanchkrabrty
rohanchkrabrty deleted the fix-member-invite branch July 22, 2026 08:57
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.

3 participants