Implement Undo system for AI and bulk actions

This commit is contained in:
Christian Vidal Wolf
2026-03-29 17:35:07 +02:00
parent 3db2bc0dae
commit e498325975
5 changed files with 105 additions and 2 deletions
+3 -1
View File
@@ -8,6 +8,7 @@ interface DimensionsViewProps {
headers: string[];
onEdit: (index: number) => void;
onSaveRow: (index: number, updatedRow: ExcelRow) => void;
onCaptureState: (message: string) => void;
}
interface DimensionGroup {
@@ -22,7 +23,7 @@ interface DimensionGroup {
};
}
export function DimensionsView({ data, headers, onEdit, onSaveRow }: DimensionsViewProps) {
export function DimensionsView({ data, headers, onEdit, onSaveRow, onCaptureState }: DimensionsViewProps) {
const [expandedGroups, setExpandedGroups] = useState<Set<string>>(new Set());
const [showOnlyInconsistent, setShowOnlyInconsistent] = useState(true);
const [syncing, setSyncing] = useState<string | null>(null);
@@ -100,6 +101,7 @@ export function DimensionsView({ data, headers, onEdit, onSaveRow }: DimensionsV
return;
}
onCaptureState(`Synced ${group.rows.length} products in ${group.innerDims} group`);
setSyncing(group.key);
try {
const first = group.rows[0].row;