WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Conversation

@scott-ray-wilson
Copy link
Contributor

@scott-ray-wilson scott-ray-wilson commented Dec 3, 2025

Context

This PR updates the style / layout and UX of the project identity membership page. More targeted improvements to come such as the authentication section, but this first PR includes the initial pass.

PR also includes early iterations of new v3 components, to be stabilized in future PRs.

Screenshots

project identity:
CleanShot 2025-12-08 at 16 40 34@2x

organization identity assigned to project:
CleanShot 2025-12-08 at 16 43 09@2x

Steps to verify the change

Ensure all existing project identity membership functionality is preserved and no regressions introducted:

  • can edit project identity (shouldn't see edit for org)
  • can add, remove and edit roles
  • can add, remove and edit additional privileges (temp UI but should be functional)
  • can add, remove and edit project identity auth methods (and link to org access control for org identities)
  • permission boundaries are still enforced

Type

  • Fix
  • Feature
  • Improvement
  • Breaking
  • Docs
  • Chore

Checklist

  • Title follows the conventional commit format: type(scope): short description (scope is optional, e.g., fix: prevent crash on sync or fix(api): handle null response).
  • Tested locally
  • Updated docs (if needed)
  • Read the contributing guide

@maidul98
Copy link
Collaborator

maidul98 commented Dec 3, 2025

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Dec 3, 2025

Greptile Overview

Greptile Summary

This PR introduces significant UI improvements to the project identity membership page and adds early iterations of new v3 components.

Key Changes:

  • Refactored the project identity details page layout with new card-based design using v3 components
  • Introduced new v3 component library including: UnstableButton, UnstableCard, UnstableTable, UnstableDropdownMenu, UnstableAccordion, UnstableAlert, UnstableEmpty, UnstableIconButton, UnstableBadge
  • Consolidated authentication method display into a shared ViewIdentityAuth component with accordion-based UI
  • Replaced inline buttons with dropdown menus for better UX
  • Removed ViewIdentityAuthModal in favor of inline accordion-based auth method display
  • Added delete identity functionality directly to the project identity page

Architecture Notes:

  • The v3 components follow a consistent pattern using Radix UI primitives with cva for variant styling
  • Components are prefixed with "Unstable" to indicate they are work-in-progress
  • The shared ViewIdentityAuth component can work in both project and organization contexts using VariablePermissionCan

Issues Flagged in Previous Threads:

  • displayName mismatch in IconButton.tsx (sets "IconButton" instead of "UnstableIconButton")
  • Missing params in navigate call in handleDeleteIdentity function

Confidence Score: 4/5

  • This PR is a UI refactoring with low risk - no backend changes, API modifications, or security-sensitive code.
  • The PR is primarily a UI improvement introducing new v3 components and refactoring existing pages. Two issues were previously flagged (displayName mismatch and missing navigate params) which are minor but should be addressed. No breaking API changes or security concerns identified.
  • frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx (missing params in navigate call), frontend/src/components/v3/generic/IconButton/IconButton.tsx (displayName mismatch)

Important Files Changed

File Analysis

Filename Score Overview
frontend/src/components/v3/generic/IconButton/IconButton.tsx 4/5 New v3 IconButton component with variant and size props. Minor displayName inconsistency (already flagged in previous threads).
frontend/src/pages/project/IdentityDetailsByIDPage/IdentityDetailsByIDPage.tsx 3/5 Major refactoring of project identity page with new v3 components. Missing params in navigate call for handleDeleteIdentity (already flagged).
frontend/src/components/v3/generic/Button/Button.tsx 5/5 New v3 Button component supporting button, link, and anchor elements with various variants.
frontend/src/components/v3/generic/Card/Card.tsx 5/5 New v3 Card component with header, title, description, action, content, and footer sub-components.
frontend/src/components/v3/generic/Dropdown/Dropdown.tsx 5/5 New v3 Dropdown component wrapping Radix UI primitives with various sub-components.
frontend/src/components/v3/generic/Table/Table.tsx 5/5 New v3 Table component with header, body, row, cell, and footer sub-components.
frontend/src/pages/organization/IdentityDetailsByIDPage/components/ViewIdentityAuth/ViewIdentityAuth.tsx 5/5 New shared ViewIdentityAuth component with accordion-based auth method display and edit/delete functionality.

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

38 files reviewed, 2 comments

Edit Code Review Agent Settings | Greptile

@scott-ray-wilson scott-ray-wilson changed the title [DRAFT] Eng 4250 improvement: project identity page UI improvements + v3 component progress Dec 3, 2025
@scott-ray-wilson
Copy link
Contributor Author

@greptile review this

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

67 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

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.

4 participants