Skip to content

Commit 942842f

Browse files
committed
refactor: replace deprecated Popover in UserRoleCell
1 parent a869695 commit 942842f

File tree

1 file changed

+34
-47
lines changed

1 file changed

+34
-47
lines changed

site/src/pages/OrganizationSettingsPage/UserTable/UserRoleCell.tsx

Lines changed: 34 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,14 @@
1616
import { type Interpolation, type Theme, useTheme } from "@emotion/react";
1717
import MUITooltip from "@mui/material/Tooltip";
1818
import type { LoginType, SlimRole } from "api/typesGenerated";
19-
import {
20-
Popover,
21-
PopoverContent,
22-
PopoverTrigger,
23-
} from "components/deprecated/Popover/Popover";
2419
import { Pill } from "components/Pill/Pill";
2520
import { TableCell } from "components/Table/Table";
21+
import {
22+
Tooltip,
23+
TooltipContent,
24+
TooltipProvider,
25+
TooltipTrigger,
26+
} from "components/Tooltip/Tooltip";
2627
import type { FC } from "react";
2728
import { EditRolesButton } from "./EditRolesButton";
2829

@@ -109,51 +110,37 @@ const OverflowRolePill: FC<OverflowRolePillProps> = ({ roles }) => {
109110
const theme = useTheme();
110111

111112
return (
112-
<Popover mode="hover">
113-
<PopoverTrigger>
114-
<Pill
115-
css={{
116-
backgroundColor: theme.palette.background.paper,
117-
borderColor: theme.palette.divider,
118-
}}
119-
>
120-
+{roles.length} more
121-
</Pill>
122-
</PopoverTrigger>
123-
124-
<PopoverContent
125-
disableRestoreFocus
126-
disableScrollLock
127-
css={{
128-
".MuiPaper-root": {
129-
display: "flex",
130-
flexFlow: "row wrap",
131-
columnGap: 8,
132-
rowGap: 12,
133-
padding: "12px 16px",
134-
alignContent: "space-around",
135-
minWidth: "auto",
136-
},
137-
}}
138-
anchorOrigin={{ vertical: -4, horizontal: "center" }}
139-
transformOrigin={{ vertical: "bottom", horizontal: "center" }}
140-
>
141-
{roles.map((role) => (
113+
<TooltipProvider>
114+
<Tooltip delayDuration={0}>
115+
<TooltipTrigger asChild>
142116
<Pill
143-
key={role.name}
144-
css={role.global ? styles.globalRoleBadge : styles.roleBadge}
117+
css={{
118+
backgroundColor: theme.palette.background.paper,
119+
borderColor: theme.palette.divider,
120+
}}
145121
>
146-
{role.global ? (
147-
<MUITooltip title="This user has this role for all organizations.">
148-
<span>{role.display_name || role.name}*</span>
149-
</MUITooltip>
150-
) : (
151-
role.display_name || role.name
152-
)}
122+
+{roles.length} more
153123
</Pill>
154-
))}
155-
</PopoverContent>
156-
</Popover>
124+
</TooltipTrigger>
125+
126+
<TooltipContent className="flex flex-row flex-wrap content-around gap-x-2 gap-y-3 px-4 py-3 border-surface-quaternary">
127+
{roles.map((role) => (
128+
<Pill
129+
key={role.name}
130+
css={role.global ? styles.globalRoleBadge : styles.roleBadge}
131+
>
132+
{role.global ? (
133+
<MUITooltip title="This user has this role for all organizations.">
134+
<span>{role.display_name || role.name}*</span>
135+
</MUITooltip>
136+
) : (
137+
role.display_name || role.name
138+
)}
139+
</Pill>
140+
))}
141+
</TooltipContent>
142+
</Tooltip>
143+
</TooltipProvider>
157144
);
158145
};
159146

0 commit comments

Comments
 (0)