diff --git a/src/App.tsx b/src/App.tsx index 51c366e..8a6766f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1324,508 +1324,10 @@ export default function App() {
No texts yet.
) : ( <> - {(foldersByParent.get(null) ?? []) - .filter((folder) => !hasSearch || visibleFolderIds?.has(folder.id)) - .map((folder) => { - const expanded = isFolderExpanded(folder.id); - const childFolders = foldersByParent.get(folder.id) ?? []; - const childTexts = textsByFolder.get(folder.id) ?? []; - return ( -
-
handleDragStartFolder(event, folder)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => handleFolderDrop(event, folder)} - onClick={() => toggleFolderExpanded(folder.id)} - > - -
{folder.name}
-
- {expanded ? ( -
- {childFolders - .filter((child) => !hasSearch || visibleFolderIds?.has(child.id)) - .map((child) => { - const childExpanded = isFolderExpanded(child.id); - const nestedFolders = foldersByParent.get(child.id) ?? []; - const nestedTexts = textsByFolder.get(child.id) ?? []; - return ( -
-
handleDragStartFolder(event, child)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => handleFolderDrop(event, child)} - onClick={() => toggleFolderExpanded(child.id)} - > - -
{child.name}
-
- {childExpanded ? ( -
- {nestedFolders - .filter( - (nested) => - !hasSearch || visibleFolderIds?.has(nested.id) - ) - .map((nested) => ( -
-
- handleDragStartFolder(event, nested) - } - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => handleFolderDrop(event, nested)} - onClick={() => toggleFolderExpanded(nested.id)} - > - -
- {nested.name} -
-
- {isFolderExpanded(nested.id) ? ( -
- {(foldersByParent.get(nested.id) ?? []) - .filter( - (nestedChild) => - !hasSearch || - visibleFolderIds?.has(nestedChild.id) - ) - .map((nestedChild) => ( -
-
- handleDragStartFolder(event, nestedChild) - } - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleFolderDrop(event, nestedChild) - } - onClick={() => toggleFolderExpanded(nestedChild.id)} - > - -
- {nestedChild.name} -
-
- {isFolderExpanded(nestedChild.id) ? ( -
- {(foldersByParent.get(nestedChild.id) ?? []) - .filter( - (deepChild) => - !hasSearch || - visibleFolderIds?.has(deepChild.id) - ) - .map((deepChild) => ( -
-
- handleDragStartFolder(event, deepChild) - } - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleFolderDrop(event, deepChild) - } - onClick={() => - toggleFolderExpanded(deepChild.id) - } - > - -
- {deepChild.name} -
-
- {isFolderExpanded(deepChild.id) ? ( -
- {(textsByFolder.get(deepChild.id) ?? []).map( - (text) => ( -
- handleDragStartText(event, text) - } - onDragEnd={handleDragEnd} - onDragOver={(event) => - event.preventDefault() - } - onDrop={(event) => - handleTextDrop( - event, - text.id, - text.folder_id ?? null - ) - } - onClick={() => - setSelectedTextId(text.id) - } - onContextMenu={(event) => - handleTextContextMenu(event, text.id) - } - > -
-
- {text.title} -
-
- Updated {formatDate(text.updated_at)} -
-
- -
- ) - )} -
- ) : null} -
- ))} - {(textsByFolder.get(nestedChild.id) ?? []).map( - (text) => ( -
- handleDragStartText(event, text) - } - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleTextDrop( - event, - text.id, - text.folder_id ?? null - ) - } - onClick={() => setSelectedTextId(text.id)} - onContextMenu={(event) => - handleTextContextMenu(event, text.id) - } - > -
-
- {text.title} -
-
- Updated {formatDate(text.updated_at)} -
-
- -
- ) - )} -
- ) : null} -
- ))} - {(textsByFolder.get(nested.id) ?? []).map((text) => ( -
handleDragStartText(event, text)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleTextDrop( - event, - text.id, - text.folder_id ?? null - ) - } - onClick={() => setSelectedTextId(text.id)} - onContextMenu={(event) => - handleTextContextMenu(event, text.id) - } - > -
-
{text.title}
-
- Updated {formatDate(text.updated_at)} -
-
- -
- ))} -
- ) : null} -
- ))} - {nestedTexts.map((text) => ( -
handleDragStartText(event, text)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleTextDrop( - event, - text.id, - text.folder_id ?? null - ) - } - onClick={() => setSelectedTextId(text.id)} - onContextMenu={(event) => - handleTextContextMenu(event, text.id) - } - > -
-
{text.title}
-
- Updated {formatDate(text.updated_at)} -
-
- -
- ))} -
- ) : null} -
- ); - })} - {childTexts.map((text) => ( -
handleDragStartText(event, text)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => - handleTextDrop(event, text.id, text.folder_id ?? null) - } - onClick={() => setSelectedTextId(text.id)} - onContextMenu={(event) => handleTextContextMenu(event, text.id)} - > -
-
{text.title}
-
- Updated {formatDate(text.updated_at)} -
-
- -
- ))} -
- ) : null} -
- ); - })} - {(textsByFolder.get(null) ?? []).map((text) => ( -
handleDragStartText(event, text)} - onDragEnd={handleDragEnd} - onDragOver={(event) => event.preventDefault()} - onDrop={(event) => handleTextDrop(event, text.id, text.folder_id ?? null)} - onClick={() => setSelectedTextId(text.id)} - onContextMenu={(event) => handleTextContextMenu(event, text.id)} - > -
-
{text.title}
-
Updated {formatDate(text.updated_at)}
-
- -
- ))} + {(foldersByParent.get(null) ?? []).map((folder) => renderFolder(folder, 0))} + {(textsByFolder.get(null) ?? []).map((text) => + renderTextItem(text, 0, null) + )} )}