dd250788f6
The backend retired /api/briefing/* and the RSS feature entirely. This
Flutter change mirrors what landed web-side: rename the briefing surface
to journal, repoint at /api/journal/*, and drop the news/RSS UI since
its endpoints no longer exist.
New (mirrors briefing structure with adapted shapes):
- lib/data/api/journal_api.dart — getToday, getDay, getDays, triggerPrep
- lib/data/models/journal_day.dart — {day_date, conversation, messages}
- lib/providers/journal_provider.dart — async notifier, sendReply, polling,
silent refresh, regeneratePrep. Mirrors the briefing notifier 1:1
- lib/widgets/journal_prep_card.dart — adapted briefing_digest_card
- lib/screens/journal/journal_screen.dart — adapted briefing_screen,
weather card preserved (rendered from msg_metadata.sections.weather
on the daily-prep assistant message). News cards / RSS reactions /
article-discuss removed
- lib/screens/journal/journal_history_screen.dart — past days picker
pulls /api/journal/days, drills into /api/journal/day/<iso>
Wiring:
- Routes.briefing → Routes.journal (constants.dart)
- Routes.news removed
- briefingApiProvider → journalApiProvider (api_client_provider.dart)
- newsApiProvider removed
- app.dart: shell tab "Briefing" → "Journal"; News destination removed
from nav rail, bottom nav, and the More sheet
- splash_screen.dart and login_screen.dart: redirect Routes.journal
instead of Routes.briefing
- chat_api.dart: drop openArticleInChat (calls deleted /api/chat/from-article)
- settings_provider.dart: drop rssEnabled getter and rssEnabledProvider
Deleted:
- lib/screens/briefing/ (whole directory)
- lib/screens/news/ (whole directory)
- lib/data/api/briefing_api.dart, news_api.dart
- lib/data/models/briefing_conversation.dart, briefing_feed.dart, news_item.dart
- lib/providers/briefing_provider.dart, news_provider.dart
- lib/widgets/briefing_digest_card.dart, news_card.dart
- test cases for NewsItem and BriefingFeed in test/widget_test.dart
flutter analyze: 0 issues.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
23 lines
819 B
Dart
23 lines
819 B
Dart
abstract class Routes {
|
|
static const splash = '/';
|
|
static const setup = '/setup';
|
|
static const login = '/login';
|
|
static const notes = '/notes';
|
|
static const noteDetail = '/notes/:id';
|
|
static const noteEdit = '/notes/:id/edit';
|
|
static const noteNew = '/notes/new';
|
|
static const tasks = '/tasks';
|
|
static const taskNew = '/tasks/new';
|
|
static const taskEdit = '/tasks/:id/edit';
|
|
static const knowledge = '/knowledge';
|
|
static const projects = '/projects';
|
|
static const projectEdit = '/projects/:id/edit';
|
|
static const conversations = '/chat';
|
|
static const chat = '/chat/:id';
|
|
static const quickCapture = '/quick-capture';
|
|
static const settings = '/settings';
|
|
static const journal = '/journal';
|
|
static const calendar = '/calendar';
|
|
static const projectTasks = '/projects/:id/tasks';
|
|
}
|