import React, { useEffect, useRef } from 'react'; import 'mathlive'; const MathField = ({ value, onChange }) => { const mfe = useRef(null); // Konfiguracja useEffect(() => { const field = mfe.current; if (!field) return; field.setOptions({ virtualKeyboardMode: "manual", locale: "pl", }); // Nasłuchiwanie zmian w polu const handleInput = (e) => onChange(e.target.value); field.addEventListener('input', handleInput); return () => field.removeEventListener('input', handleInput); }, [onChange]); // Synchronizacja wartości z zewnętrznym stanem useEffect(() => { if (mfe.current && mfe.current.value !== value) { mfe.current.value = value; } }, [value]); return ( ); }; export default MathField;