+
+
+
{t('inbox.title')}
+
-
- {t(
- 'taskViews.inbox',
- "Inbox is where all uncategorized tasks are located. Tasks that have not been assigned to a project or don't have a due date will appear here. This is your 'brain dump' area where you can quickly note down tasks and organize them later."
+
+ {t(
+ 'taskViews.inbox',
+ "Inbox is where all uncategorized tasks are located. Tasks that have not been assigned to a project or don't have a due date will appear here. This is your 'brain dump' area where you can quickly note down tasks and organize them later."
+ )}
+
+
+ {inboxItems.length === 0 ? (
+
+
+
+ {t('inbox.empty')}
+
+
+ {t('inbox.emptyDescription')}
+
+
+ ) : (
+
+ {inboxItems.map((item) => (
+
+ ))}
+
)}
-
-
- {inboxItems.map((item) => (
-
- ))}
-
-
- {/* Task Modal - Always render it but control visibility with isOpen */}
- {/* Add error boundary protection for modal rendering */}
- {(() => {
- try {
- return (
-
{
- setIsTaskModalOpen(false);
- setTaskToEdit(null);
- }}
- task={
- taskToEdit || {
- name: '',
- status: 'not_started',
- priority: 'medium',
- }
- }
- onSave={handleSaveTask}
- onDelete={async () => {}} // No need to delete since it's a new task
- projects={Array.isArray(projects) ? projects : []}
- onCreateProject={handleCreateProject}
- />
- );
- } catch (error) {
- console.error('TaskModal rendering error:', error);
- return null;
- }
- })()}
-
- {/* Project Modal - Only render when needed to prevent infinite loops */}
- {isProjectModalOpen &&
- (() => {
+ {/* Task Modal - Always render it but control visibility with isOpen */}
+ {/* Add error boundary protection for modal rendering */}
+ {(() => {
try {
return (
- {
- setIsProjectModalOpen(false);
- setProjectToEdit(null);
+ setIsTaskModalOpen(false);
+ setTaskToEdit(null);
}}
- onSave={handleSaveProject}
- project={projectToEdit || undefined}
- areas={[]}
+ task={
+ taskToEdit || {
+ name: '',
+ status: 'not_started',
+ priority: 'medium',
+ }
+ }
+ onSave={handleSaveTask}
+ onDelete={async () => {}} // No need to delete since it's a new task
+ projects={Array.isArray(projects) ? projects : []}
+ onCreateProject={handleCreateProject}
/>
);
} catch (error) {
- console.error('ProjectModal rendering error:', error);
+ console.error('TaskModal rendering error:', error);
return null;
}
})()}
- {/* Note Modal - Always render it but control visibility with isOpen */}
- {(() => {
- try {
- return (
- {
- setIsNoteModalOpen(false);
- setNoteToEdit(null);
- }}
- onSave={handleSaveNote}
- note={noteToEdit}
- projects={Array.isArray(projects) ? projects : []}
- onCreateProject={handleCreateProject}
- />
- );
- } catch (error) {
- console.error('NoteModal rendering error:', error);
- return null;
- }
- })()}
+ {/* Project Modal - Only render when needed to prevent infinite loops */}
+ {isProjectModalOpen &&
+ (() => {
+ try {
+ return (
+ {
+ setIsProjectModalOpen(false);
+ setProjectToEdit(null);
+ }}
+ onSave={handleSaveProject}
+ project={projectToEdit || undefined}
+ areas={[]}
+ />
+ );
+ } catch (error) {
+ console.error('ProjectModal rendering error:', error);
+ return null;
+ }
+ })()}
- {/* Edit Inbox Item Modal */}
- {isEditModalOpen && itemToEdit !== null && (
- {
- setIsEditModalOpen(false);
- setItemToEdit(null);
- }}
- onSave={async () => {}} // Not used in edit mode
- initialText={
- inboxItems.find((item) => item.id === itemToEdit)
- ?.content || ''
+ {/* Note Modal - Always render it but control visibility with isOpen */}
+ {(() => {
+ try {
+ return (
+ {
+ setIsNoteModalOpen(false);
+ setNoteToEdit(null);
+ }}
+ onSave={handleSaveNote}
+ note={noteToEdit}
+ projects={Array.isArray(projects) ? projects : []}
+ onCreateProject={handleCreateProject}
+ />
+ );
+ } catch (error) {
+ console.error('NoteModal rendering error:', error);
+ return null;
}
- editMode={true}
- onEdit={handleSaveEditedItem}
- />
- )}
+ })()}
+
+ {/* Edit Inbox Item Modal */}
+ {isEditModalOpen && itemToEdit !== null && (
+ {
+ setIsEditModalOpen(false);
+ setItemToEdit(null);
+ }}
+ onSave={async () => {}} // Not used in edit mode
+ initialText={
+ inboxItems.find((item) => item.id === itemToEdit)
+ ?.content || ''
+ }
+ editMode={true}
+ onEdit={handleSaveEditedItem}
+ />
+ )}
+