feat(app): the home dashboard: streak, goal, week, activity
Home opens on a study dashboard. The streak's flame sits in the app bar and opens a sheet of how it stands this week. Below: the study goal (a ring of the day's or week's progress, set and removed in its sheet), the week (each day studied, rested, missed or to come with the cards falling due; days to go back and on; today or a day to come made a rest day), and a year of activity as a heatmap, its weekdays staying in view while the weeks scroll. A long press arranges the dashboard: drag a widget elsewhere, hide or show it; the arrangement is synced. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
d846ee4582
commit
111532435f
1 changed files with 1747 additions and 63 deletions
|
|
@ -27,13 +27,6 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get homeTitle => 'Home';
|
||||
|
||||
@override
|
||||
String get homeLibraryIntro =>
|
||||
'Your studysets and cards are in your library.';
|
||||
|
||||
@override
|
||||
String get homeOpenLibrary => 'Open library';
|
||||
|
||||
@override
|
||||
String get libraryTitle => 'Library';
|
||||
|
||||
|
|
@ -974,6 +967,189 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get composerLabelRegion => 'Answer';
|
||||
|
||||
@override
|
||||
String get homeStreakTooltip => 'Study streak';
|
||||
|
||||
@override
|
||||
String get homeArrange => 'Arrange widgets';
|
||||
|
||||
@override
|
||||
String get homeDone => 'Done';
|
||||
|
||||
@override
|
||||
String get homeDragToReorder => 'Drag to reorder';
|
||||
|
||||
@override
|
||||
String homeShowWidget(String label) {
|
||||
return 'Show $label';
|
||||
}
|
||||
|
||||
@override
|
||||
String homeHideWidget(String label) {
|
||||
return 'Hide $label';
|
||||
}
|
||||
|
||||
@override
|
||||
String get homeAllHidden => 'All widgets are hidden';
|
||||
|
||||
@override
|
||||
String get homeAllHiddenHint => 'Long-press here to bring some back.';
|
||||
|
||||
@override
|
||||
String get homeWidgetGoal => 'Study goal';
|
||||
|
||||
@override
|
||||
String get homeWidgetWeek => 'Week overview';
|
||||
|
||||
@override
|
||||
String get homeWidgetActivity => 'Activity heatmap';
|
||||
|
||||
@override
|
||||
String get homeActivityTitle => 'Your activity';
|
||||
|
||||
@override
|
||||
String streakDays(num count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count day streak',
|
||||
one: '1 day streak',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get streakStart => 'Study today to start your streak.';
|
||||
|
||||
@override
|
||||
String get streakGrow =>
|
||||
'Keep it going: study at least once a day to grow your streak.';
|
||||
|
||||
@override
|
||||
String get streakFirstDay =>
|
||||
'Review some cards today to light the first day.';
|
||||
|
||||
@override
|
||||
String get streakComeBack => 'Come back tomorrow to keep your streak.';
|
||||
|
||||
@override
|
||||
String get streakKeepAlive => 'Study today to keep your streak alive.';
|
||||
|
||||
@override
|
||||
String get goalEditTitle => 'Edit study goal';
|
||||
|
||||
@override
|
||||
String get goalSetTitle => 'Set a study goal';
|
||||
|
||||
@override
|
||||
String get goalDescriptionDaily =>
|
||||
'Review a number of flashcards each day. Every card you rate counts.';
|
||||
|
||||
@override
|
||||
String get goalDescriptionWeekly =>
|
||||
'Review a number of flashcards each week, from Monday. Every card you rate counts.';
|
||||
|
||||
@override
|
||||
String get goalPeriod => 'Period';
|
||||
|
||||
@override
|
||||
String get goalPerDay => 'Per day';
|
||||
|
||||
@override
|
||||
String get goalPerWeek => 'Per week';
|
||||
|
||||
@override
|
||||
String get goalCardsPerDay => 'Cards per day';
|
||||
|
||||
@override
|
||||
String get goalCardsPerWeek => 'Cards per week';
|
||||
|
||||
@override
|
||||
String get goalSave => 'Save goal';
|
||||
|
||||
@override
|
||||
String get goalRemove => 'Remove goal';
|
||||
|
||||
@override
|
||||
String get goalEmptySubtitle =>
|
||||
'Review a set number of cards each day or week.';
|
||||
|
||||
@override
|
||||
String get goalDailyHeadline => 'Daily goal';
|
||||
|
||||
@override
|
||||
String get goalWeeklyHeadline => 'Weekly goal';
|
||||
|
||||
@override
|
||||
String goalProgressToday(int reviewed, int target) {
|
||||
return '$reviewed of $target cards today';
|
||||
}
|
||||
|
||||
@override
|
||||
String goalProgressThisWeek(int reviewed, int target) {
|
||||
return '$reviewed of $target cards this week';
|
||||
}
|
||||
|
||||
@override
|
||||
String get goalMet => 'Goal met: nice work!';
|
||||
|
||||
@override
|
||||
String goalRemaining(int count) {
|
||||
return '$count to go';
|
||||
}
|
||||
|
||||
@override
|
||||
String get weekToday => 'Today';
|
||||
|
||||
@override
|
||||
String get weekPreviousDay => 'Previous day';
|
||||
|
||||
@override
|
||||
String get weekNextDay => 'Next day';
|
||||
|
||||
@override
|
||||
String get weekRestDay => 'Rest day';
|
||||
|
||||
@override
|
||||
String weekDueCount(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count cards due',
|
||||
one: '1 card due',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get heatmapLess => 'Less';
|
||||
|
||||
@override
|
||||
String get heatmapMore => 'More';
|
||||
|
||||
@override
|
||||
String heatmapTotal(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count activities in the last year',
|
||||
one: '1 activity in the last year',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String heatmapDay(int count, String date) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count activities',
|
||||
one: '1 activity',
|
||||
zero: 'Nothing',
|
||||
);
|
||||
return '$_temp0 · $date';
|
||||
}
|
||||
|
||||
@override
|
||||
String get commonCancel => 'Cancel';
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue