/lo/todos and provides a list view of to-do items scoped to the current user or the entire organization, with filtering, search, and drag-to-reorder capability.
Overview
TheTodosPage uses the platform useTasks hook (mapping results through mapTaskToTodo) to load to-dos for the current organization. Two tabs — My and All — switch between the current user’s tasks and all organization tasks. Filters include status, priority, linked goal (rockId), due date range, and a search input. The includeCompleted toggle shows or hides completed items. To-do cards are rendered as TodoCardSwipeable components supporting swipe gestures. Tasks are reordered via useTaskReorder. The TodoFormDialog opens when the ”+” button is clicked or when the ?action=new query parameter is present (used by keyboard shortcuts). A “today” due-date filter is available.
Who it’s for
RequiresLO_PERMISSIONS.DASHBOARD_VIEW (lo.dashboard.view) via the shared LOViewGuard. Creating to-dos additionally requires lo.todos.create.
Before you start
lo.dashboard.viewpermission required.- An active organization context is required (
useOrganization).
Steps
1
Navigate to To-Dos
Go to
/lo/todos. The page loads your to-dos on the My tab.2
Switch tabs
Toggle between My (current user’s tasks) and All (organization-wide tasks).
3
Filter items
Use the status, priority, and due-date filters, or type in the search input to narrow results.
4
Show completed items
Enable the include-completed toggle to see finished to-dos.
5
Reorder
Drag
TodoCardSwipeable cards to reorder them; order is persisted via useTaskReorder.6
Create a to-do
Select the ”+” button or navigate to
/lo/todos?action=new to open TodoFormDialog.7
Open a to-do
Select a card to navigate to
/lo/todos/:todoId for full detail.Key concepts
- mapTaskToTodo: adapter that converts platform
Taskobjects to the LOTodotype. - TodoCardSwipeable: swipeable card component for mobile-friendly to-do management.
- sort_order: persisted ordering field updated via
useTaskReorder.
Viewing a to-do
The To-Do Details screen is accessible at/lo/todos/:todoId and shows the full detail for a single to-do item, including status/priority/overdue indicators, a comment thread, assignee, dates, and a linked goal.
The TodoDetailPage fetches the to-do via useTask (mapped through mapTaskToTodo) and useTaskMutation for mutations. The page displays a title, status badge (open/in_progress/complete/cancelled), priority badge (high/medium/low), an overdue indicator (when due date is past and status is not complete), a description, and a TodoCommentThread. Metadata panels show the assignee avatar, creation date, due date, and the linked goal if present. Action buttons allow completing, starting, cancelling, editing (via TodoFormDialog), and deleting (with an AlertDialog confirmation). If the to-do is not found, a “To-do not found” message is shown.
Permissions: lo.dashboard.view required; editing requires lo.todos.edit. The to-do identified by :todoId must exist in the active organization.
- Open a to-do: navigate to
/lo/todos/:todoIdor select a to-do from the To-Dos list. - Review details: read the title, status, priority, description, assignee, and due date. An overdue badge appears if the due date is past.
- Add a comment: use the
TodoCommentThreadsection to add comments to the to-do. - Change status: use the Start, Complete, or Cancel action buttons to update the to-do’s status.
- Edit: select Edit to open
TodoFormDialogwith the current values pre-filled. - Delete: select Delete and confirm in the
AlertDialogto permanently remove the to-do.
- Status values:
open,in_progress,complete,cancelled. - Priority values:
high,medium,low. - Overdue: computed via
isPastandisTodayfromdate-fnsagainst the due date when status is notcomplete.
Related
Leadership
Leadership core overview.
Governance & parity
Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or
billing advice. Verify against your organization’s policies and applicable
regulations before using it for clinical, compliance, or billing decisions.
Protected health information (PHI) shown in the product is governed by your
tenant’s access controls and is never exposed in this documentation.
Documentation sources
Documentation sources
- src/routes/lo.tsx
- src/cores/lo/pages/TodosPage.tsx
- src/cores/lo/pages/TodoDetailPage.tsx
- src/cores/lo/utils/taskAdapters.ts