gonets/FRONT/DEV/src/components/modalwindows/modalWindow.tsx

87 lines
3 KiB
TypeScript
Raw Normal View History

import { useModalContext } from "../../store";
import { IpConfirm, ConnectionError, AddDevice, RightsConfirm } from "./modalContainers";
import { ModalMap } from "./windowsType";
import Loader from "../UI/loader";
import { ModalWindow } from "./style";
2025-06-12 15:24:50 +05:00
import {NoteDevice} from "./modalContainers/NoteDevice";
2025-06-19 13:16:59 +05:00
import { NoteWifi } from "./modalContainers/NoteWifi";
import {ConnectNetwork} from "./modalContainers/ConnectNetwork";
import {DisconnectConfirm} from "./modalContainers/disconnectConfirm";
2025-06-27 17:50:08 +05:00
import {Settings} from "../settings/Settings";
type Props = {
isOpen: boolean,
type: string
data: any;
}
export default function WindowComponent({ isOpen, type, data }: Props) {
const { closeModal, closeLoader } = useModalContext()
return (
<>
{isOpen &&
<ModalWindow>
{type == ModalMap['1'] && data &&
<IpConfirm
ipData={data}
onClose={closeModal}
smoothClose={closeLoader}
/>
}
{type == ModalMap['2'] &&
<Loader loaderText={data} />
}
{type === ModalMap['3'] &&
<ConnectionError
message={data.message}
/>
}
2025-06-12 15:24:50 +05:00
{type === ModalMap['6'] && (
<NoteDevice
2025-06-19 13:16:59 +05:00
type={'devices'}
address={data.address}
2025-06-12 15:24:50 +05:00
currentNote={data.currentNote}
onClose={closeLoader}
/>
)}
2025-06-19 13:16:59 +05:00
{type === ModalMap['7'] && (
<NoteWifi
type={'wifi'}
address={data.address}
currentNote={data.currentNote}
onClose={closeLoader}
/>
)}
{type === ModalMap['8'] && (
<ConnectNetwork
address={data.address}
onClose={closeLoader}
/>
)}
{type === ModalMap['9'] && (
<DisconnectConfirm
address={data.address}
onClose={closeLoader}
/>
)}
{type === ModalMap['4'] && (
<AddDevice onSave={data?.onSave} onClose={closeLoader} />
)}
{type === ModalMap['5'] && (
<RightsConfirm onClose={closeLoader} />
)}
{type === ModalMap['10'] && (
<Settings
onClose={closeLoader}
/>
)}
</ModalWindow >
}
</>
)
}