import { Stack, Divider, Text } from "@mantine/core"; import { useTranslation } from "react-i18next"; import { ChangeMetadataParameters, createCustomMetadataFunctions } from "../../../hooks/tools/changeMetadata/useChangeMetadataParameters"; import { useMetadataExtraction } from "../../../hooks/tools/changeMetadata/useMetadataExtraction"; import DeleteAllStep from "./steps/DeleteAllStep"; import StandardMetadataStep from "./steps/StandardMetadataStep"; import DocumentDatesStep from "./steps/DocumentDatesStep"; import AdvancedOptionsStep from "./steps/AdvancedOptionsStep"; interface ChangeMetadataSingleStepProps { parameters: ChangeMetadataParameters; onParameterChange: (key: K, value: ChangeMetadataParameters[K]) => void; disabled?: boolean; } const ChangeMetadataSingleStep = ({ parameters, onParameterChange, disabled = false }: ChangeMetadataSingleStepProps) => { const { t } = useTranslation(); // Get custom metadata functions using the utility const { addCustomMetadata, removeCustomMetadata, updateCustomMetadata } = createCustomMetadataFunctions( parameters, onParameterChange ); // Extract metadata from uploaded files const { isExtractingMetadata } = useMetadataExtraction({ updateParameter: onParameterChange, }); const isDeleteAllEnabled = parameters.deleteAll; const fieldsDisabled = disabled || isDeleteAllEnabled || isExtractingMetadata; return ( {/* Delete All */} {t('changeMetadata.deleteAll.label', 'Delete All Metadata')} {/* Standard Metadata Fields */} {t('changeMetadata.standardFields.title', 'Standard Metadata')} {/* Document Dates */} {t('changeMetadata.dates.title', 'Document Dates')} {/* Advanced Options */} {t('changeMetadata.advanced.title', 'Advanced Options')} ); }; export default ChangeMetadataSingleStep;