| 167 | * Handles project selection and loads its sessions |
| 168 | */ |
| 169 | const handleProjectClick = async (project: Project) => { |
| 170 | try { |
| 171 | setLoading(true); |
| 172 | setError(null); |
| 173 | const sessionList = await api.getProjectSessions(project.id); |
| 174 | setSessions(sessionList); |
| 175 | setSelectedProject(project); |
| 176 | } catch (err) { |
| 177 | console.error("Failed to load sessions:", err); |
| 178 | setError("Failed to load sessions for this project."); |
| 179 | } finally { |
| 180 | setLoading(false); |
| 181 | } |
| 182 | }; |
| 183 | |
| 184 | /** |
| 185 | * Opens the project directory picker |