Skip to content

Commit

Permalink
fix: disallow deletion of all login history entries (#4159)
Browse files Browse the repository at this point in the history
  • Loading branch information
nunogois committed Jul 6, 2023
1 parent e22662e commit 0dec247
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 80 deletions.

This file was deleted.

@@ -1,8 +1,6 @@
import { useEffect, useMemo, useState } from 'react';
import { TablePlaceholder, VirtualizedTable } from 'component/common/Table';
import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender';
import useToast from 'hooks/useToast';
import { formatUnknownError } from 'utils/formatUnknownError';
import { PageContent } from 'component/common/PageContent/PageContent';
import { PageHeader } from 'component/common/PageHeader/PageHeader';
import { IconButton, Tooltip, useMediaQuery } from '@mui/material';
Expand All @@ -23,8 +21,7 @@ import { useLoginHistoryApi } from 'hooks/api/actions/useLoginHistoryApi/useLogi
import { formatDateYMDHMS } from 'utils/formatDate';
import { useSearchParams } from 'react-router-dom';
import { createLocalStorage } from 'utils/createLocalStorage';
import { Delete, Download } from '@mui/icons-material';
import { LoginHistoryDeleteAllDialog } from './LoginHistoryDeleteAllDialog/LoginHistoryDeleteAllDialog';
import { Download } from '@mui/icons-material';

export type PageQueryType = Partial<
Record<'sort' | 'order' | 'search', string>
Expand All @@ -45,10 +42,8 @@ const AUTH_TYPE_LABEL: { [key: string]: string } = {
};

export const LoginHistoryTable = () => {
const { setToastData, setToastApiError } = useToast();

const { events, loading, refetch } = useLoginHistory();
const { removeAllEvents, downloadCSV } = useLoginHistoryApi();
const { events, loading } = useLoginHistory();
const { downloadCSV } = useLoginHistoryApi();

const [searchParams, setSearchParams] = useSearchParams();
const [initialState] = useState(() => ({
Expand All @@ -65,21 +60,6 @@ export const LoginHistoryTable = () => {
}));

const [searchValue, setSearchValue] = useState(initialState.globalFilter);
const [deleteAllOpen, setDeleteAllOpen] = useState(false);

const onDeleteAllConfirm = async () => {
try {
await removeAllEvents();
setToastData({
title: `History has been cleared`,
type: 'success',
});
refetch();
setDeleteAllOpen(false);
} catch (error: unknown) {
setToastApiError(formatUnknownError(error));
}
};

const isExtraSmallScreen = useMediaQuery(theme.breakpoints.down('sm'));
const isSmallScreen = useMediaQuery(theme.breakpoints.down('md'));
Expand Down Expand Up @@ -235,18 +215,6 @@ export const LoginHistoryTable = () => {
<Download />
</IconButton>
</Tooltip>
<Tooltip
title="Clear login history"
arrow
>
<IconButton
onClick={() =>
setDeleteAllOpen(true)
}
>
<Delete />
</IconButton>
</Tooltip>
</>
}
/>
Expand Down Expand Up @@ -294,11 +262,6 @@ export const LoginHistoryTable = () => {
/>
}
/>
<LoginHistoryDeleteAllDialog
open={deleteAllOpen}
setOpen={setDeleteAllOpen}
onConfirm={onDeleteAllConfirm}
/>
</PageContent>
);
};
Expand Up @@ -22,20 +22,8 @@ export const useLoginHistoryApi = () => {
window.location.assign(url);
};

const removeAllEvents = async () => {
const requestId = 'removeAllEvents';
const req = createRequest(
'api/admin/logins',
{ method: 'DELETE' },
requestId
);

await makeRequest(req.caller, req.id);
};

return {
downloadCSV,
removeAllEvents,
errors,
loading,
};
Expand Down

0 comments on commit 0dec247

Please sign in to comment.