-
-
Notifications
You must be signed in to change notification settings - Fork 669
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Project owners UI #6949
feat: Project owners UI #6949
Conversation
Tymek
commented
Apr 26, 2024
•
edited
Loading
edited
The latest updates on your projects. Learn more about Vercel for Git ↗︎
1 Ignored Deployment
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 2 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 2 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
e78cee6
to
19660d2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work! The images look nice 🔥
I've got some questions about the implementation, though. But it's a lot of lines of code, so it's hard to follow. Can we walk through it together on Monday?
@@ -44,7 +44,7 @@ export const GroupPopover = ({ | |||
}} | |||
> | |||
<StyledName>{user?.name || user?.username}</StyledName> | |||
<div>{user?.email}</div> | |||
<div>{user?.description || user?.email}</div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm a little unsure about this one: why are you changing the behavior of an existing component here? Will this have unintended consequences? Do we even use group descriptions in the new api? Isn't it just the group name?
...erview/FeatureOverviewEnvironments/FeatureOverviewEnvironment/FeatureOverviewEnvironment.tsx
Show resolved
Hide resolved
frontend/src/component/project/NewProjectCard/NewProjectCard.styles.ts
Outdated
Show resolved
Hide resolved
frontend/src/component/project/NewProjectCard/ProjectOwners/ProjectOwners.tsx
Show resolved
Hide resolved
frontend/src/component/project/NewProjectCard/ProjectOwners/ProjectOwners.tsx
Show resolved
Hide resolved
<Typography | ||
component='h2' | ||
variant='h3' | ||
sx={(theme) => ({ marginBottom: theme.spacing(2) })} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you move this out of a styled component and into sx?
const StyledContainer = styled('div')(({ theme }) => ({ | ||
display: 'flex', | ||
flexDirection: 'column', | ||
gap: theme.spacing(4), | ||
})); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So you moved the spacing here, right: why? For readability? I agree that it makes sense to let the parent control how items within it are spaced, but it adds another layer of nesting 🤷🏼
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does the badge have children?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's review this one later
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
<StyledParagraphInfo data-loading> | ||
{memberCount} | ||
</StyledParagraphInfo> | ||
<p data-loading> | ||
{memberCount === 1 ? 'member' : 'members'} | ||
</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be one paragraph, not two
frontend/src/component/project/NewProjectCard/NewProjectCard.tsx
Outdated
Show resolved
Hide resolved
<StyledParagraphInfo data-loading> | ||
{health}% | ||
</StyledParagraphInfo> | ||
<p data-loading>health</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should also be one paragraph
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Code Health Quality Gates: OK
- Declining Code Health: 1 findings(s) 🚩
const StyledBadgeIcon = styled('span')< | ||
IBadgeIconProps & { hasChildren?: boolean } | ||
>(({ theme, color = 'neutral', iconRight = false, hasChildren }) => ({ | ||
display: 'flex', | ||
color: | ||
color === 'disabled' | ||
? theme.palette.action.disabled | ||
: theme.palette[color].main, | ||
margin: iconRight | ||
? theme.spacing(0, 0, 0, hasChildren ? 0.5 : 0) | ||
: theme.spacing(0, hasChildren ? 0.5 : 0, 0, 0), | ||
})); | ||
|
||
const BadgeIcon = (color: Color, icon: ReactElement, iconRight = false) => ( | ||
<StyledBadgeIcon color={color} iconRight={iconRight}> | ||
const BadgeIcon = ( | ||
color: Color, | ||
icon: ReactElement, | ||
iconRight = false, | ||
hasChildren = false, | ||
) => ( | ||
<StyledBadgeIcon | ||
color={color} | ||
iconRight={iconRight} | ||
hasChildren={hasChildren} | ||
> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could be refactored to using flexbox/grid and the gap property
Remember to handle projects with 0 member that aren't the default project. |