From 25fd3a15946c6e05938a4ace2b6f278111605f79 Mon Sep 17 00:00:00 2001 From: Meierschlumpf Date: Mon, 19 Dec 2022 19:01:50 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20functionallity=20to=20remove?= =?UTF-8?q?=20modal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Dashboard/Tiles/Widgets/WidgetsRemoveModal.tsx | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/components/Dashboard/Tiles/Widgets/WidgetsRemoveModal.tsx b/src/components/Dashboard/Tiles/Widgets/WidgetsRemoveModal.tsx index 7829ca8a5..5740875ee 100644 --- a/src/components/Dashboard/Tiles/Widgets/WidgetsRemoveModal.tsx +++ b/src/components/Dashboard/Tiles/Widgets/WidgetsRemoveModal.tsx @@ -2,9 +2,11 @@ import React from 'react'; import { Button, Group, Stack, Text } from '@mantine/core'; import { ContextModalProps } from '@mantine/modals'; import { useTranslation } from 'next-i18next'; +import { useConfigContext } from '../../../../config/provider'; +import { useConfigStore } from '../../../../config/store'; export type WidgetsRemoveModalInnerProps = { - integration: string; + widgetId: string; }; export const WidgetsRemoveModal = ({ @@ -12,9 +14,15 @@ export const WidgetsRemoveModal = ({ id, innerProps, }: ContextModalProps) => { - const { t } = useTranslation([`modules/${innerProps.integration}`, 'common']); + const { t } = useTranslation([`modules/${innerProps.widgetId}`, 'common']); + const { name: configName } = useConfigContext(); + if (!configName) return null; + const updateConfig = useConfigStore((x) => x.updateConfig); const handleDeletion = () => { - // TODO: remove tile + updateConfig(configName, (prev) => ({ + ...prev, + widgets: prev.widgets.filter((w) => w.id !== innerProps.widgetId), + })); context.closeModal(id); };