feat: add click-based connector creation mode with empty space support (#108)

* fix: eliminate re-render loop causing export failures

- Remove onModelUpdated callback that triggered infinite re-render cycles
- Replace debounce hack with controlled useEffect-based export timing
- Ensure DOM stability before export execution to prevent null containerRef
- Add isExporting guard to prevent concurrent export operations

Resolves issue where image export functionality was completely broken due to
infinite re-rendering caused by onModelUpdated callback.

Fixes #84

* Update packages/fossflow-lib/src/components/ExportImageDialog/ExportImageDialog.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fixed connectors

* Fix duplicate downloadFile

---------

Co-authored-by: Manfred Michaelis <mm@michm.de>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Stan <stanleylsmith@pm.me>
This commit is contained in:
Stan
2025-08-25 14:43:06 +00:00
committed by GitHub
parent ea0bce0d28
commit 5ff21cc35f

View File

@@ -105,6 +105,7 @@ export const ExportImageDialog = ({ onClose, quality = 1.5 }: Props) => {
}, 100);
return () => clearTimeout(timer);
}, [showGrid, backgroundColor]);
const downloadFile = useCallback(() => {
@@ -117,7 +118,6 @@ export const ExportImageDialog = ({ onClose, quality = 1.5 }: Props) => {
downloadFileUtil(data, generateGenericFilename('png'));
}, [imageData]);
>>>>>>> 10145c9 (fix: eliminate re-render loop causing export failures)
useEffect(() => {
const timer = setTimeout(() => {