Refactor and reorder functions in App.tsx

This commit is contained in:
2026-01-31 19:10:24 +01:00
parent 14203c33a1
commit cd512e8456

View File

@@ -723,6 +723,34 @@ export default function App() {
[refreshTexts] [refreshTexts]
); );
const handleDeleteText = useCallback(
async (promptId: string) => {
await deleteText(promptId);
await refreshTexts();
if (selectedTextId === promptId) {
setSelectedTextId(null);
localStorage.removeItem("textdb.selectedTextId");
}
},
[refreshTexts, selectedTextId]
);
const handleDeleteFolder = useCallback(
async (folderId: string) => {
await deleteFolder(folderId);
await Promise.all([refreshFolders(), refreshTexts()]);
setExpandedFolders((prev) => {
const next = new Set(prev);
next.delete(folderId);
return next;
});
if (editingFolderId === folderId) {
clearFolderEditing();
}
},
[clearFolderEditing, editingFolderId, refreshFolders, refreshTexts]
);
const handleTextContextMenu = useCallback( const handleTextContextMenu = useCallback(
async (event: React.MouseEvent, text: Text) => { async (event: React.MouseEvent, text: Text) => {
event.preventDefault(); event.preventDefault();
@@ -1036,34 +1064,6 @@ export default function App() {
await createTextFromFile(path); await createTextFromFile(path);
}, [createTextFromFile]); }, [createTextFromFile]);
const handleDeleteText = useCallback(
async (promptId: string) => {
await deleteText(promptId);
await refreshTexts();
if (selectedTextId === promptId) {
setSelectedTextId(null);
localStorage.removeItem("textdb.selectedTextId");
}
},
[refreshTexts, selectedTextId]
);
const handleDeleteFolder = useCallback(
async (folderId: string) => {
await deleteFolder(folderId);
await Promise.all([refreshFolders(), refreshTexts()]);
setExpandedFolders((prev) => {
const next = new Set(prev);
next.delete(folderId);
return next;
});
if (editingFolderId === folderId) {
clearFolderEditing();
}
},
[clearFolderEditing, editingFolderId, refreshFolders, refreshTexts]
);
const handleSaveVersion = useCallback(async () => { const handleSaveVersion = useCallback(async () => {
if (!selectedTextId || !canSave) return; if (!selectedTextId || !canSave) return;
const normalizedTitle = title.trim() || DEFAULT_TITLE; const normalizedTitle = title.trim() || DEFAULT_TITLE;