1
1
import { useTheme } from "@emotion/react" ;
2
2
import AutorenewIcon from "@mui/icons-material/Autorenew" ;
3
3
import LoadingButton from "@mui/lab/LoadingButton" ;
4
- import Badge from "@mui/material/Badge" ;
5
- import Divider from "@mui/material/Divider" ;
6
4
import Table from "@mui/material/Table" ;
7
5
import TableBody from "@mui/material/TableBody" ;
8
6
import TableCell from "@mui/material/TableCell" ;
@@ -21,16 +19,17 @@ import type {
21
19
} from "api/typesGenerated" ;
22
20
import { ErrorAlert } from "components/Alert/ErrorAlert" ;
23
21
import { Avatar } from "components/Avatar/Avatar" ;
24
- import { Loader } from "components/Loader/Loader " ;
22
+ import { Button } from "components/Button/Button " ;
25
23
import {
26
- MoreMenu ,
27
- MoreMenuContent ,
28
- MoreMenuItem ,
29
- MoreMenuTrigger ,
30
- ThreeDotsButton ,
31
- } from "components/MoreMenu/MoreMenu " ;
24
+ DropdownMenu ,
25
+ DropdownMenuContent ,
26
+ DropdownMenuItem ,
27
+ DropdownMenuTrigger ,
28
+ } from "components/DropdownMenu/DropdownMenu" ;
29
+ import { Loader } from "components/Loader/Loader " ;
32
30
import { Stack } from "components/Stack/Stack" ;
33
31
import { TableEmpty } from "components/TableEmpty/TableEmpty" ;
32
+ import { EllipsisVertical } from "lucide-react" ;
34
33
import type { ExternalAuthPollingState } from "pages/CreateWorkspacePage/CreateWorkspacePage" ;
35
34
import { type FC , useCallback , useEffect , useState } from "react" ;
36
35
import { useQuery } from "react-query" ;
@@ -181,12 +180,15 @@ const ExternalAuthRow: FC<ExternalAuthRowProps> = ({
181
180
</ LoadingButton >
182
181
</ TableCell >
183
182
< TableCell >
184
- < MoreMenu >
185
- < MoreMenuTrigger >
186
- < ThreeDotsButton size = "small" disabled = { ! authenticated } />
187
- </ MoreMenuTrigger >
188
- < MoreMenuContent >
189
- < MoreMenuItem
183
+ < DropdownMenu >
184
+ < DropdownMenuTrigger asChild >
185
+ < Button size = "icon-lg" variant = "subtle" aria-label = "Open menu" >
186
+ < EllipsisVertical aria-hidden = "true" />
187
+ < span className = "sr-only" > Open menu</ span >
188
+ </ Button >
189
+ </ DropdownMenuTrigger >
190
+ < DropdownMenuContent align = "end" >
191
+ < DropdownMenuItem
190
192
onClick = { async ( ) => {
191
193
onValidateExternalAuth ( ) ;
192
194
// This is kinda jank. It does a refetch of the thing
@@ -197,19 +199,18 @@ const ExternalAuthRow: FC<ExternalAuthRowProps> = ({
197
199
} }
198
200
>
199
201
Test Validate…
200
- </ MoreMenuItem >
201
- < Divider />
202
- < MoreMenuItem
203
- danger
202
+ </ DropdownMenuItem >
203
+ < DropdownMenuItem
204
+ className = "text-content-destructive focus:text-content-destructive"
204
205
onClick = { async ( ) => {
205
206
onUnlinkExternalAuth ( ) ;
206
207
await refetch ( ) ;
207
208
} }
208
209
>
209
210
Unlink…
210
- </ MoreMenuItem >
211
- </ MoreMenuContent >
212
- </ MoreMenu >
211
+ </ DropdownMenuItem >
212
+ </ DropdownMenuContent >
213
+ </ DropdownMenu >
213
214
</ TableCell >
214
215
</ TableRow >
215
216
) ;
0 commit comments