Skip to content

Commit 57ac21e

Browse files
feat(deployments): reuse delete modal (Issue #1519) (#2151)
1 parent c4c6dfe commit 57ac21e

File tree

13 files changed

+336
-269
lines changed

13 files changed

+336
-269
lines changed

apps/ai-dial-admin/src/app/[lang]/deployment-images/[id]/page.tsx

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import { notFound } from 'next/navigation';
22

3-
import { getImage, getImageContainers, getImageVersions } from '@/src/app/actions/deployments';
3+
import { getImage, getImageVersions } from '@/src/app/actions/deployments';
44
import ImageView from '@/src/components/Images/View/ImageView';
55
import { SaveValidationContextProvider } from '@/src/context/SaveValidationContext';
6-
import { Container } from '@/src/models/deployments/containers';
76
import { Image, ImageVersion } from '@/src/models/deployments/images';
87
import { errorObjLog } from '@/src/server/logger';
98
import { getRouteByType } from '@/src/utils/deployments/entity';
@@ -19,7 +18,6 @@ interface Params {
1918
export default async function Page(params: Params) {
2019
let image: Image | null = null;
2120
let versions: ImageVersion[] | null = null;
22-
let dependencies: Container[] | null = null;
2321

2422
try {
2523
const imageResponse = await getImage((await params.params).id);
@@ -28,11 +26,9 @@ export default async function Page(params: Params) {
2826
imageResponse.response.name,
2927
getImageType(getRouteByType(imageResponse.response.$type)),
3028
);
31-
const dependenciesResponses = await getImageContainers((await params.params).id);
3229

3330
image = imageResponse.response as Image;
3431
versions = versionsResponse.response as ImageVersion[];
35-
dependencies = dependenciesResponses.response as Container[];
3632
} catch (e) {
3733
errorObjLog(e, 'Failed to fetch interceptor image page');
3834
}
@@ -43,7 +39,7 @@ export default async function Page(params: Params) {
4339

4440
return (
4541
<SaveValidationContextProvider>
46-
<ImageView image={image} versions={versions || []} dependencies={dependencies || []} />
42+
<ImageView image={image} versions={versions || []} />
4743
</SaveValidationContextProvider>
4844
);
4945
}

apps/ai-dial-admin/src/components/Containers/List/ContainersList.tsx

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import { IMAGE_BUILD_POLL_INTERVAL } from '@/src/constants/deployments/images';
2828
import ListView from '@/src/components/ListView/ListView';
2929
import HeaderButtons from '@/src/components/Containers/List/HeaderButtons';
3030
import ContainerDuplicate from '@/src/components/Deployments/Modals/ContainerDuplicate';
31-
import EntityDeleteModal from '@/src/components/Deployments/Modals/EntityDelete';
31+
3232
import {
3333
getDeleteOperation,
3434
getDuplicateOperation,
@@ -38,6 +38,7 @@ import {
3838
} from '@/src/constants/grid-columns/actions';
3939
import { getUrnForEntity, onOpenInNewTab } from '@/src/utils/open-in-new-tab';
4040
import { CONTAINERS_COLUMNS } from '@/src/constants/grid-columns/grid-columns';
41+
import Delete from '@/src/components/EntityView/Modals/Delete/Delete';
4142

4243
interface Props {
4344
route: ApplicationRoute;
@@ -165,12 +166,6 @@ const ContainersList: FC<Props> = ({ route, containersList }) => {
165166
[currentContainer, route, router, showNotification],
166167
);
167168

168-
const onDelete = useCallback(() => {
169-
if (currentContainer?.name) {
170-
deleteContainer(currentContainer.name).then(refreshCb(router, showNotification));
171-
}
172-
}, [currentContainer, router, showNotification]);
173-
174169
const columnDefs = [
175170
...CONTAINERS_COLUMNS(t, getTranslatedType(route, t), route),
176171
ACTION_COLUMN([
@@ -306,18 +301,11 @@ const ContainersList: FC<Props> = ({ route, containersList }) => {
306301
modalType === ModalType.delete &&
307302
currentContainer &&
308303
createPortal(
309-
<EntityDeleteModal
310-
title={t(ContainersI18nKey.DeleteModalTitle, {
311-
type: getTranslatedType(route, t),
312-
entityType: getTranslatedDeploymentType(route, t),
313-
})}
314-
description={t(ContainersI18nKey.DeleteModalDescription, {
315-
entityType: getTranslatedDeploymentType(route, t),
316-
})}
317-
isModalOpen={isModalOpen}
318-
onClose={onCloseModal}
319-
onApply={onDelete}
320-
route={route}
304+
<Delete
305+
onRemoveEntity={deleteContainer}
306+
view={route}
307+
entity={{ ...currentContainer }}
308+
onCloseModal={onCloseModal}
321309
/>,
322310
document.body,
323311
)}

apps/ai-dial-admin/src/components/Containers/List/DependenciesList.tsx

Lines changed: 0 additions & 47 deletions
This file was deleted.

apps/ai-dial-admin/src/components/Containers/List/tests/DependenciesList.spec.tsx

Lines changed: 0 additions & 36 deletions
This file was deleted.

apps/ai-dial-admin/src/components/Deployments/Modals/EntityDelete.tsx

Lines changed: 0 additions & 62 deletions
This file was deleted.

0 commit comments

Comments
 (0)