import { useEffect, useState } from "react"; import { BsmButton } from "renderer/components/shared/bsm-button.component"; import { BsmCheckbox } from "renderer/components/shared/bsm-checkbox.component"; import { BsmImage } from "renderer/components/shared/bsm-image.component"; import { useTranslation } from "renderer/hooks/use-translation.hook"; import { ConfigurationService } from "renderer/services/configuration.service"; import { MapsManagerService } from "renderer/services/maps-manager.service"; import { ModalComponent, ModalExitCode } from "renderer/services/modale.service"; import { BsmLocalMap } from "shared/models/maps/bsm-local-map.interface"; import BeatConflict from "../../../../../assets/images/apngs/beat-conflict.png"; import { useService } from "renderer/hooks/use-service.hook"; export const DeleteMapsModal: ModalComponent = ({ resolver, options: {data : { linked, maps }}}) => { const config = useService(ConfigurationService); const t = useTranslation(); const [remember, setRemember] = useState(false); useEffect(() => { const key = MapsManagerService.REMEMBER_CHOICE_DELETE_MAP_KEY; config.set(key, remember); }, [remember]); const multiple = maps.length > 1; const titleText = multiple ? "modals.maps-actions.delete-maps.title.multiple" : "modals.maps-actions.delete-maps.title.single"; const descText = multiple ? "modals.maps-actions.delete-maps.desc.multiple" : "modals.maps-actions.delete-maps.desc.single"; const infoText = multiple ? "modals.maps-actions.delete-maps.info.desc.multiple" : "modals.maps-actions.delete-maps.info.desc.single"; const infoTitleText = multiple ? "modals.maps-actions.delete-maps.info.title.multiple" : "modals.maps-actions.delete-maps.info.title.single"; return (

{t(titleText)}

{t(descText, multiple ? { nb: maps.length.toString() } : { name: maps.at(0).rawInfo._songName })}

{linked && (

{t(infoText)}

)} {!multiple && (
setRemember(val)} /> {t("modals.misc.remember-my-choice")}
)}
resolver({ exitCode: ModalExitCode.CANCELED })} withBar={false} text="misc.cancel" /> resolver({ exitCode: ModalExitCode.COMPLETED })} withBar={false} text="misc.delete" />
); };