1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-04-01 01:18:10 +02:00

fix: bulk update delete flag (#3466)

Allow deleting with BULK_UPDATE flag turned off
This commit is contained in:
Tymoteusz Czech 2023-04-06 19:50:19 +02:00 committed by GitHub
parent e0b59ba689
commit e864657ef8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 2 deletions

View File

@ -5,6 +5,7 @@ import Input from 'component/common/Input/Input';
import { formatUnknownError } from 'utils/formatUnknownError';
import useToast from 'hooks/useToast';
import useProjectApi from 'hooks/api/actions/useProjectApi/useProjectApi';
import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig';
interface IArchivedFeatureDeleteConfirmProps {
deletedFeatures: string[];
@ -34,14 +35,21 @@ export const ArchivedFeatureDeleteConfirm = ({
}: IArchivedFeatureDeleteConfirmProps) => {
const [confirmName, setConfirmName] = useState('');
const { setToastData, setToastApiError } = useToast();
const { deleteFeatures } = useProjectApi();
const { deleteFeature, deleteFeatures } = useProjectApi();
const { uiConfig } = useUiConfig();
const onDeleteFeatureToggle = async () => {
try {
if (deletedFeatures.length === 0) {
return;
}
await deleteFeatures(projectId, deletedFeatures);
if (uiConfig?.flags?.bulkOperations) {
await deleteFeatures(projectId, deletedFeatures);
} else {
await deleteFeature(deletedFeatures[0]);
}
await refetch();
setToastData({
type: 'success',

View File

@ -223,6 +223,15 @@ const useProjectApi = () => {
return makeRequest(req.caller, req.id);
};
const deleteFeature = async (featureId: string) => {
const path = `api/admin/archive/${featureId}`;
const req = createRequest(path, {
method: 'DELETE',
});
return makeRequest(req.caller, req.id);
};
const deleteFeatures = async (projectId: string, featureIds: string[]) => {
const path = `api/admin/projects/${projectId}/delete`;
const req = createRequest(path, {
@ -267,6 +276,7 @@ const useProjectApi = () => {
archiveFeatures,
reviveFeatures,
staleFeatures,
deleteFeature,
deleteFeatures,
searchProjectUser,
errors,