Portal/rsconcept/frontend/src/dialogs/DlgEditOperation/TabSynthesis.tsx

56 lines
1.5 KiB
TypeScript
Raw Normal View History

2024-07-29 16:55:48 +03:00
import { ErrorData } from '@/components/info/InfoError';
import PickSubstitutions from '@/components/select/PickSubstitutions';
2024-08-26 17:24:46 +03:00
import TextArea from '@/components/ui/TextArea';
2024-07-29 16:55:48 +03:00
import DataLoader from '@/components/wrap/DataLoader';
2024-08-26 17:24:46 +03:00
import { useConceptOptions } from '@/context/ConceptOptionsContext';
import { ICstSubstitute } from '@/models/oss';
import { IRSForm } from '@/models/rsform';
2024-07-29 16:55:48 +03:00
import { prefixes } from '@/utils/constants';
interface TabSynthesisProps {
loading: boolean;
error: ErrorData;
2024-08-26 17:24:46 +03:00
validationText: string;
isCorrect: boolean;
2024-07-29 16:55:48 +03:00
schemas: IRSForm[];
2024-07-29 16:55:48 +03:00
substitutions: ICstSubstitute[];
setSubstitutions: React.Dispatch<React.SetStateAction<ICstSubstitute[]>>;
suggestions: ICstSubstitute[];
2024-07-29 16:55:48 +03:00
}
2024-08-26 17:24:46 +03:00
function TabSynthesis({
schemas,
loading,
error,
validationText,
isCorrect,
substitutions,
setSubstitutions,
suggestions
2024-08-26 17:24:46 +03:00
}: TabSynthesisProps) {
const { colors } = useConceptOptions();
2024-07-29 16:55:48 +03:00
return (
2024-12-12 13:17:24 +03:00
<DataLoader isLoading={loading} error={error}>
<div className='cc-fade-in cc-column mt-3'>
<PickSubstitutions
schemas={schemas}
prefixID={prefixes.dlg_cst_substitutes_list}
rows={8}
substitutions={substitutions}
setSubstitutions={setSubstitutions}
suggestions={suggestions}
/>
<TextArea
disabled
value={validationText}
rows={4}
style={{ borderColor: isCorrect ? undefined : colors.fgRed }}
/>
</div>
2024-07-29 16:55:48 +03:00
</DataLoader>
);
}
export default TabSynthesis;