Skip to content

fix: bump apsara to rc.8 and SDK dialog refactors#1627

Merged
rohanchkrabrty merged 9 commits into
mainfrom
fix-frontier-more-bugs
May 20, 2026
Merged

fix: bump apsara to rc.8 and SDK dialog refactors#1627
rohanchkrabrty merged 9 commits into
mainfrom
fix-frontier-more-bugs

Conversation

@rohanchkrabrty
Copy link
Copy Markdown
Contributor

Summary

  • Bump @raystack/apsara to 1.0.0-rc.8 across web/sdk, web/apps/admin, and web/apps/client-demo
  • Migrate all AlertDialog usages to the rc.8 Header + Body pattern; drop the removed showCloseButton prop and the now-dead border-bottom: none CSS workarounds
  • Drop redundant width={400} overrides on Dialog.Content / AlertDialog.Content and justify="end" gap={5} props (or wrapping <Flex>s) inside AlertDialog.Footer — these are rc.8 defaults
  • Redesign delete-organization and revoke-session dialogs per Figma: switch from Dialog to AlertDialog, title in Header, content in Body, action buttons in Footer
  • Project member support, emptystate update, SDK action-menu behavior fixes, and miscellaneous SDK refinements

@vercel
Copy link
Copy Markdown

vercel Bot commented May 19, 2026

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

Project Deployment Actions Updated (UTC)
frontier Ready Ready Preview, Comment May 20, 2026 7:25am

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 19, 2026

Warning

Rate limit exceeded

@rohanchkrabrty has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 9 minutes and 53 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 21051d6a-b9ab-4a24-b7bc-16c7e151294a

📥 Commits

Reviewing files that changed from the base of the PR and between 3fd24ce and 52bd65b.

⛔ Files ignored due to path filters (1)
  • web/pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (49)
  • web/apps/admin/package.json
  • web/apps/admin/src/components/assign-role.tsx
  • web/apps/client-demo/package.json
  • web/sdk/admin/components/AssignRole.tsx
  • web/sdk/admin/views/organizations/details/layout/add-tokens-dialog.tsx
  • web/sdk/admin/views/organizations/details/members/remove-member.tsx
  • web/sdk/admin/views/organizations/details/projects/members/assign-role.tsx
  • web/sdk/admin/views/organizations/details/projects/members/remove-member.tsx
  • web/sdk/admin/views/organizations/details/projects/rename-project.tsx
  • web/sdk/admin/views/organizations/details/security/block-organization.tsx
  • web/sdk/admin/views/organizations/details/security/domains-list.tsx
  • web/sdk/admin/views/users/details/layout/suspend-user.tsx
  • web/sdk/admin/views/users/details/security/block-user.tsx
  • web/sdk/package.json
  • web/sdk/react/components/image-upload/image-upload.tsx
  • web/sdk/react/views-new/billing/components/confirm-cycle-switch-dialog.tsx
  • web/sdk/react/views-new/general/components/delete-organization-dialog.module.css
  • web/sdk/react/views-new/general/components/delete-organization-dialog.tsx
  • web/sdk/react/views-new/members/components/remove-member-dialog.tsx
  • web/sdk/react/views-new/members/components/update-role-dialog.tsx
  • web/sdk/react/views-new/members/members-view.tsx
  • web/sdk/react/views-new/pat/components/pat-created-dialog.tsx
  • web/sdk/react/views-new/pat/components/pat-form-dialog.tsx
  • web/sdk/react/views-new/pat/components/regenerate-pat-dialog.tsx
  • web/sdk/react/views-new/pat/components/revoke-pat-dialog.module.css
  • web/sdk/react/views-new/pat/components/revoke-pat-dialog.tsx
  • web/sdk/react/views-new/plans/components/confirm-plan-change-dialog.tsx
  • web/sdk/react/views-new/projects/components/add-project-dialog.tsx
  • web/sdk/react/views-new/projects/components/delete-project-dialog.tsx
  • web/sdk/react/views-new/projects/components/edit-project-dialog.tsx
  • web/sdk/react/views-new/projects/components/remove-member-dialog.tsx
  • web/sdk/react/views-new/projects/components/update-role-dialog.tsx
  • web/sdk/react/views-new/projects/project-details-view.tsx
  • web/sdk/react/views-new/security/components/add-domain-dialog.tsx
  • web/sdk/react/views-new/security/components/delete-domain-dialog.tsx
  • web/sdk/react/views-new/security/components/verify-domain-dialog.tsx
  • web/sdk/react/views-new/service-accounts/components/add-service-account-dialog.tsx
  • web/sdk/react/views-new/service-accounts/components/delete-service-account-dialog.module.css
  • web/sdk/react/views-new/service-accounts/components/delete-service-account-dialog.tsx
  • web/sdk/react/views-new/service-accounts/components/manage-project-access-dialog.tsx
  • web/sdk/react/views-new/service-accounts/components/revoke-token-dialog.module.css
  • web/sdk/react/views-new/service-accounts/components/revoke-token-dialog.tsx
  • web/sdk/react/views-new/sessions/components/revoke-session-confirm-dialog.tsx
  • web/sdk/react/views-new/sessions/components/revoke-session-dialog.tsx
  • web/sdk/react/views-new/teams/components/add-team-dialog.tsx
  • web/sdk/react/views-new/teams/components/delete-team-dialog.tsx
  • web/sdk/react/views-new/teams/components/edit-team-dialog.tsx
  • web/sdk/react/views-new/teams/components/remove-member-dialog.tsx
  • web/sdk/react/views-new/tokens/components/add-tokens-dialog.tsx
📝 Walkthrough

Walkthrough

This PR upgrades the @raystack/apsara component library from RC.6 to RC.8, refactors AlertDialog components to use the new header-based structure, standardizes dialog sizing by removing fixed-width constraints, updates data-fetching hooks with fetch-state tracking, replaces Radix icons with SVG assets and horizontal-dots menu icons, enhances table styling with hover-based action visibility, and improves Projects and Teams views with filtering, initial-load detection, and menu extraction.

Changes

Apsara RC.8 Dependency Upgrade and Hook Fetch-State Tracking

Layer / File(s) Summary
Package dependency version updates
web/apps/admin/package.json, web/apps/client-demo/package.json, web/sdk/package.json
Bumps @raystack/apsara from 1.0.0-rc.6 to 1.0.0-rc.8 across web apps and SDK.
Hook return-type updates for fetch state
web/sdk/react/hooks/useOrganizationProjects.ts, web/sdk/react/hooks/useOrganizationTeams.ts
UseOrganizationProjectsReturn and useOrganizationTeams now expose isFetched boolean alongside existing properties to distinguish initial load from later loading states.

Dialog Markup and Sizing Standardization

Layer / File(s) Summary
AlertDialog header-based structure refactoring
web/sdk/admin/views/organizations/details/security/block-organization.tsx, web/sdk/admin/views/organizations/details/security/domains-list.tsx, web/sdk/admin/views/users/details/security/block-user.tsx, web/sdk/react/views-new/general/components/delete-organization-dialog.tsx, web/sdk/react/views-new/members/components/update-role-dialog.tsx, web/sdk/react/views-new/pat/components/revoke-pat-dialog.tsx, web/sdk/react/views-new/service-accounts/components/delete-service-account-dialog.tsx, web/sdk/react/views-new/service-accounts/components/revoke-token-dialog.tsx, web/sdk/react/views-new/sessions/components/revoke-session-confirm-dialog.tsx, web/sdk/react/views-new/sessions/components/revoke-session-dialog.tsx
Replaces AlertDialog.Body with Text elements and content width props with the new AlertDialog.Header containing AlertDialog.Title and AlertDialog.Description pattern.
Dialog width prop removal and footer layout simplification
web/apps/admin/src/components/assign-role.tsx, web/sdk/admin/components/AssignRole.tsx, web/sdk/admin/views/organizations/details/layout/add-tokens-dialog.tsx, web/sdk/admin/views/organizations/details/members/remove-member.tsx, web/sdk/admin/views/organizations/details/projects/members/assign-role.tsx, web/sdk/admin/views/organizations/details/projects/members/remove-member.tsx, web/sdk/admin/views/organizations/details/projects/rename-project.tsx, web/sdk/react/components/image-upload/image-upload.tsx, web/sdk/react/views-new/billing/components/confirm-cycle-switch-dialog.tsx, web/sdk/react/views-new/members/components/remove-member-dialog.tsx, web/sdk/react/views-new/pat/components/pat-created-dialog.tsx, web/sdk/react/views-new/pat/components/pat-form-dialog.tsx, web/sdk/react/views-new/pat/components/regenerate-pat-dialog.tsx, web/sdk/react/views-new/plans/components/confirm-plan-change-dialog.tsx, web/sdk/react/views-new/projects/components/add-project-dialog.tsx, web/sdk/react/views-new/projects/components/delete-project-dialog.tsx, web/sdk/react/views-new/projects/components/remove-member-dialog.tsx, web/sdk/react/views-new/security/components/add-domain-dialog.tsx, web/sdk/react/views-new/security/components/delete-domain-dialog.tsx, web/sdk/react/views-new/security/components/verify-domain-dialog.tsx, web/sdk/react/views-new/service-accounts/components/add-service-account-dialog.tsx, web/sdk/react/views-new/service-accounts/components/manage-project-access-dialog.tsx, web/sdk/react/views-new/teams/components/add-team-dialog.tsx, web/sdk/react/views-new/teams/components/delete-team-dialog.tsx, web/sdk/react/views-new/teams/components/edit-team-dialog.tsx, web/sdk/react/views-new/teams/components/remove-member-dialog.tsx, web/sdk/react/views-new/tokens/components/add-tokens-dialog.tsx
Removes fixed-width props from Dialog.Content and AlertDialog.Content throughout the codebase; simplifies footer button layouts by removing Flex wrapper containers.
Edit project dialog privacy field removal
web/sdk/react/views-new/projects/components/edit-project-dialog.tsx, web/sdk/react/views-new/projects/components/edit-project-dialog.module.css
Removes privacy field support from the edit-project form by updating the validation schema, form initialization, removing the radio UI, and deleting the .radioOptions CSS class.

Icon and Asset Replacements

Layer / File(s) Summary
Menu action icons: vertical to horizontal dots
web/sdk/react/views-new/members/components/member-columns.tsx, web/sdk/react/views-new/projects/components/member-columns.tsx, web/sdk/react/views-new/projects/components/project-columns.tsx, web/sdk/react/views-new/service-accounts/components/service-account-columns.tsx, web/sdk/react/views-new/teams/components/member-columns.tsx, web/sdk/react/views-new/teams/components/team-columns.tsx
Changes action menu trigger icons from DotsVerticalIcon to DotsHorizontalIcon across components; adjusts icon button sizes from 3 to 2.
Empty state icon replacements with SVG assets
web/sdk/react/views-new/billing/billing-view.tsx, web/sdk/react/views-new/pat/pat-view.tsx, web/sdk/react/views-new/service-accounts/service-accounts-view.tsx
Replaces Radix icons (ExclamationTriangleIcon, LockClosedIcon) with imported SVG assets and updates button styling in empty states.

Table Styling and Cell Visibility Enhancements

Layer / File(s) Summary
ActionCell CSS module additions for hover visibility
web/sdk/react/views-new/members/members-view.module.css, web/sdk/react/views-new/projects/components/member-columns.module.css, web/sdk/react/views-new/projects/components/project-columns.module.css, web/sdk/react/views-new/teams/components/member-columns.module.css, web/sdk/react/views-new/teams/components/team-columns.module.css
Introduces .actionsCell styling (hidden by default, visible on tr:hover) across table components.
Table cell padding standardization
web/sdk/react/views-new/members/members-view.module.css, web/sdk/react/views-new/projects/project-details-view.module.css, web/sdk/react/views-new/teams/team-details-view.module.css
Adds consistent table cell padding (padding: var(--rs-space-3)) to .tableRow > td selectors.

View Layer Enhancements and Component Extraction

Layer / File(s) Summary
AddMemberMenuContent component extraction
web/sdk/react/views-new/projects/components/add-member-menu.tsx
Extracts menu body logic into a new exported AddMemberMenuContent component accepting optional asSubmenu flag for reusability as a submenu.
Projects view: org projects filtering and initial-load handling
web/sdk/react/views-new/projects/projects-view.tsx
Adds showOrgProjects state toggle, canListOrgProjects permission check, and showInitialSkeleton logic to distinguish initial fetch from later loading; conditionally renders filter UI and empty-state based on permissions.
Projects view: add member submenu wiring
web/sdk/react/views-new/projects/projects-view.tsx
Extends project dropdown menu with an "Add a member" submenu item when payload?.canUpdate is true.
Projects filter CSS module
web/sdk/react/views-new/projects/projects-view.module.css
Adds .projectsFilter CSS class with flex and shadow styling.
Teams view: initial-load state and empty-state branch
web/sdk/react/views-new/teams/teams-view.tsx
Adds isFetched destructuring from hook, derives showInitialSkeleton and hasNoTeams state, and introduces an early-return empty-state branch with a themed EmptyState.
Teams view: controlled filter and skeleton refactoring
web/sdk/react/views-new/teams/teams-view.tsx
Converts teams filter Select to controlled component and switches skeleton logic to use showInitialSkeleton for initial-fetch detection.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~50 minutes

Possibly related PRs

  • raystack/frontier#1600: The main PR's AssignRole dialog UI tweaks (removing the width={400} prop on Dialog.Content) overlap with this PR's Apsara v1 (rc.6) migration updates to the same AssignRole components.
  • raystack/frontier#1488: Main PR tweaks the same revamped members dialogs and views from this PR (e.g., remove-member-dialog.tsx, update-role-dialog.tsx, and members-view.tsx dialog handle/markup adjustments).
  • raystack/frontier#1510: The main PR makes UI and layout adjustments in the existing teams components that directly overlap with the teams page structures introduced by this PR.

Suggested reviewers

  • rohilsurana
  • rsbh
  • paanSinghCoder
🚥 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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


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 and usage tips.

@rohanchkrabrty rohanchkrabrty changed the base branch from main to fix-frontier-bugs May 19, 2026 21:00
@coveralls
Copy link
Copy Markdown

coveralls commented May 19, 2026

Coverage Report for CI Build 26147893434

Warning

Build has drifted: This PR's base is out of sync with its target branch, so coverage data may include unrelated changes.
Quick fix: rebase this PR. Learn more →

Coverage remained the same at 42.592%

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: 37953
Covered Lines: 16165
Line Coverage: 42.59%
Coverage Strength: 11.91 hits per line

💛 - Coveralls

Base automatically changed from fix-frontier-bugs to main May 20, 2026 07:19
Comment thread web/sdk/react/views-new/members/components/remove-member-dialog.tsx Outdated
@rohanchkrabrty rohanchkrabrty enabled auto-merge (squash) May 20, 2026 07:25
@rohanchkrabrty rohanchkrabrty merged commit 339b867 into main May 20, 2026
8 checks passed
@rohanchkrabrty rohanchkrabrty deleted the fix-frontier-more-bugs branch May 20, 2026 07:30
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