'use client'; import clsx from 'clsx'; import { useMemo, useState } from 'react'; import { LuReplace } from 'react-icons/lu'; import ConstituentaSelector from '@/components/select/ConstituentaSelector'; import Checkbox from '@/components/ui/Checkbox'; import FlexColumn from '@/components/ui/FlexColumn'; import Label from '@/components/ui/Label'; import Modal, { ModalProps } from '@/components/ui/Modal'; import { useRSForm } from '@/context/RSFormContext'; import { IConstituenta, ICstSubstituteData } from '@/models/rsform'; interface DlgSubstituteCstProps extends Pick { onSubstitute: (data: ICstSubstituteData) => void; } function DlgSubstituteCst({ hideWindow, onSubstitute }: DlgSubstituteCstProps) { const { schema } = useRSForm(); const [original, setOriginal] = useState(undefined); const [substitution, setSubstitution] = useState(undefined); const [transferTerm, setTransferTerm] = useState(false); const canSubmit = useMemo(() => { return !!original && !!substitution && substitution.id !== original.id; }, [original, substitution]); function handleSubmit() { const data: ICstSubstituteData = { original: original!.id, substitution: substitution!.id, transfer_term: transferTerm }; onSubstitute(data); } return ( ); } export default DlgSubstituteCst;