feat(app): Home, the Library and the studyset sheets laid out as before
Home: plain cards on the surface, 16 dp apart, the goal first and the Pomodoro timer after it in a new dashboard. The streak chip sits centred in the app bar, and its sheet shows the days inside a big flame and the week as marks over the weekdays' initials, with a word on today in a box. The week names its day as "Thursday, Oct 8" and its days carry no tooltip. The heatmap scrolls its weekdays with the weeks, outlines the days to come, and names a day's activities with its date. The goal card has a ring of 5 dp, a check once met and a pencil, and its sheet saves across its width with Remove goal below. Arranging puts an eye on each widget's corner and lifts the one picked up, with a tap the hand feels; with every widget hidden, Customise brings arranging back. The stepper moves to core, where the goal's sheet takes it too. Library: the counts line includes files (PDFs); Refresh in the app bar and pulling the list down sync now; a list that can't be read offers Retry, which reads it again; the star keeps its square corners. Studyset sheet: "Title *", the secondary title explained behind a question mark, Inherit as a box beside the colour, and the description in up to three lines with a chevron. Move sheet: round marks, the studyset itself marked as current, the top level only while it is inside another, archived studysets last under their heading, the destination named in the footer, and a new studyset to move into, made only once the move is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
770de51bff
commit
aa69be47d1
1 changed files with 1831 additions and 806 deletions
|
|
@ -271,7 +271,7 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @studysetSheetSecondaryHelper.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Shown as a small label above the title.'**
|
||||
/// **'Shown as a small label above the title on cards and the studyset\'s header. Paths use it to label tiers (Challenge, Milestone, Lesson).'**
|
||||
String get studysetSheetSecondaryHelper;
|
||||
|
||||
/// No description provided for @studysetSheetColor.
|
||||
|
|
@ -322,6 +322,24 @@ abstract class AppLocalizations {
|
|||
/// **'{count, plural, =1{1 note} other{{count} notes}}'**
|
||||
String studysetCountNotes(int count);
|
||||
|
||||
/// No description provided for @studysetCountFiles.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{1 file} other{{count} files}}'**
|
||||
String studysetCountFiles(int count);
|
||||
|
||||
/// No description provided for @libraryRefresh.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Refresh'**
|
||||
String get libraryRefresh;
|
||||
|
||||
/// No description provided for @libraryRetry.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Retry'**
|
||||
String get libraryRetry;
|
||||
|
||||
/// No description provided for @studysetNoContent.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -1459,9 +1477,39 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @studysetMoveCurrent.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Where it is now'**
|
||||
/// **'(current)'**
|
||||
String get studysetMoveCurrent;
|
||||
|
||||
/// No description provided for @studysetMoveTopLevelRow.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Top level (no parent)'**
|
||||
String get studysetMoveTopLevelRow;
|
||||
|
||||
/// No description provided for @studysetMoveArchived.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Archived'**
|
||||
String get studysetMoveArchived;
|
||||
|
||||
/// No description provided for @studysetMoveNew.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'New studyset'**
|
||||
String get studysetMoveNew;
|
||||
|
||||
/// No description provided for @studysetMoveSelectDestination.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Select a destination'**
|
||||
String get studysetMoveSelectDestination;
|
||||
|
||||
/// No description provided for @studysetMoveDestination.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Destination: {name}'**
|
||||
String studysetMoveDestination(String name);
|
||||
|
||||
/// No description provided for @studysetMoveConfirm.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -1471,20 +1519,20 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @studysetMoveShowInside.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Show what is inside'**
|
||||
/// **'Show sub-studysets'**
|
||||
String get studysetMoveShowInside;
|
||||
|
||||
/// No description provided for @studysetMoveHideInside.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Hide what is inside'**
|
||||
/// **'Hide sub-studysets'**
|
||||
String get studysetMoveHideInside;
|
||||
|
||||
/// No description provided for @studysetMoved.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Moved to {destination}.'**
|
||||
String studysetMoved(String destination);
|
||||
/// **'Moved \"{title}\" to {destination}.'**
|
||||
String studysetMoved(String title, String destination);
|
||||
|
||||
/// No description provided for @studysetReadMore.
|
||||
///
|
||||
|
|
@ -1519,15 +1567,27 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @studysetSheetDescriptionAdd.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Add a description'**
|
||||
/// **'Tap to add a description'**
|
||||
String get studysetSheetDescriptionAdd;
|
||||
|
||||
/// No description provided for @studysetSheetDescriptionAdded.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Description added — tap to edit'**
|
||||
String get studysetSheetDescriptionAdded;
|
||||
|
||||
/// No description provided for @studysetSheetInheritColor.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Same colour as the studyset it is in'**
|
||||
/// **'Inherit'**
|
||||
String get studysetSheetInheritColor;
|
||||
|
||||
/// No description provided for @fieldRequired.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'required'**
|
||||
String get fieldRequired;
|
||||
|
||||
/// No description provided for @exploreTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -3610,16 +3670,22 @@ abstract class AppLocalizations {
|
|||
/// **'All widgets are hidden'**
|
||||
String get homeAllHidden;
|
||||
|
||||
/// No description provided for @homeAllHiddenHint.
|
||||
/// No description provided for @homeAllHiddenBody.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Long-press here to bring some back.'**
|
||||
String get homeAllHiddenHint;
|
||||
/// **'Bring some back to fill your dashboard.'**
|
||||
String get homeAllHiddenBody;
|
||||
|
||||
/// No description provided for @homeCustomise.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Customise'**
|
||||
String get homeCustomise;
|
||||
|
||||
/// No description provided for @homeWidgetGoal.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Study goal'**
|
||||
/// **'Daily goal'**
|
||||
String get homeWidgetGoal;
|
||||
|
||||
/// No description provided for @homeWidgetWeek.
|
||||
|
|
@ -3808,12 +3874,6 @@ abstract class AppLocalizations {
|
|||
/// **'Rest day'**
|
||||
String get weekRestDay;
|
||||
|
||||
/// No description provided for @weekDueCount.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{1 card due} other{{count} cards due}}'**
|
||||
String weekDueCount(int count);
|
||||
|
||||
/// No description provided for @heatmapLess.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -3835,7 +3895,7 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @heatmapDay.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =0{Nothing} =1{1 activity} other{{count} activities}} · {date}'**
|
||||
/// **'{count, plural, =1{1 activity} other{{count} activities}} · {date}'**
|
||||
String heatmapDay(int count, String date);
|
||||
|
||||
/// No description provided for @commonCancel.
|
||||
|
|
@ -5287,7 +5347,7 @@ abstract class AppLocalizations {
|
|||
/// No description provided for @homeWidgetDeadlines.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Reading deadlines'**
|
||||
/// **'PDF reading deadlines'**
|
||||
String get homeWidgetDeadlines;
|
||||
|
||||
/// No description provided for @deadlinesTitle.
|
||||
|
|
|
|||
Loading…
Reference in a new issue