mirror of
https://github.com/christianvidalwolf-prog/Craze-Data-check.git
synced 2026-08-03 15:15:24 +02:00
Implement Undo system for AI and bulk actions
This commit is contained in:
@@ -9,9 +9,10 @@ interface EditPanelProps {
|
||||
rowIndex: number;
|
||||
onSave: (rowIndex: number, updatedRow: ExcelRow) => void;
|
||||
onClose: () => void;
|
||||
onCaptureState: (message: string) => void;
|
||||
}
|
||||
|
||||
export function EditPanel({ row, rowIndex, onSave, onClose }: EditPanelProps) {
|
||||
export function EditPanel({ row, rowIndex, onSave, onClose, onCaptureState }: EditPanelProps) {
|
||||
const [formData, setFormData] = useState({
|
||||
longDe: row[COLUMNS.LONG_DE] || '',
|
||||
longEn: row[COLUMNS.LONG_EN] || '',
|
||||
@@ -100,6 +101,10 @@ export function EditPanel({ row, rowIndex, onSave, onClose }: EditPanelProps) {
|
||||
};
|
||||
|
||||
const handleSave = () => {
|
||||
const hasModifications = Object.keys(formData).some(k => isModified(k as keyof typeof formData));
|
||||
if (hasModifications) {
|
||||
onCaptureState(`Updated product ${row[COLUMNS.ARTICLE_NO]}`);
|
||||
}
|
||||
const newRow = [...row];
|
||||
newRow[COLUMNS.LONG_DE] = formData.longDe;
|
||||
newRow[COLUMNS.LONG_EN] = formData.longEn;
|
||||
|
||||
Reference in New Issue
Block a user