feat: Improve rolling tasks logic, UI polish, and fix profile settings persistence
- Relocated 'Now Do This' button and adjusted header alignment - Hid scrollbars in All-Day Events section for cleaner UI - Fixed 'Failed to update profile' error and ensured settings persistence - Improved rolling task logic with collision detection and auto-reschedule - Cleaned up duplicate code and resolved lint errors - Updated documentation (task.md, walkthrough.md, implementation_plan.md)
This commit is contained in:
parent
b97230dcb4
commit
72e62ead4a
@ -39,6 +39,7 @@ model User {
|
||||
showSchedule Boolean @default(true)
|
||||
cellDuration Int @default(30)
|
||||
viewStyle String @default("grid")
|
||||
viewDays Int @default(7)
|
||||
fontSize String @default("M") // "S", "M", "L"
|
||||
headlineFont String @default("Inter")
|
||||
headlineFontSize String? @default("1.25rem")
|
||||
|
||||
@ -32,6 +32,7 @@ export async function GET(request: NextRequest) {
|
||||
showSchedule: true,
|
||||
cellDuration: true,
|
||||
viewStyle: true,
|
||||
viewDays: true,
|
||||
fontSize: true,
|
||||
headlineFont: true,
|
||||
headlineFontSize: true,
|
||||
@ -83,7 +84,7 @@ export async function PATCH(request: NextRequest) {
|
||||
language, dateFormat, timeFormat, startHour, endHour,
|
||||
showNextTask, calendarEditMode, focusTimerDuration, focusBreakDuration,
|
||||
showTimeGrid, showSomeday, showAllDayEvents, showSchedule,
|
||||
cellDuration, viewStyle, fontSize,
|
||||
cellDuration, viewStyle, viewDays, fontSize,
|
||||
headlineFont, headlineFontSize, headlineFontWeight,
|
||||
dateFontFamily, dateFontSize, dateFontWeight,
|
||||
timeTaskFontFamily, timeTaskFontSize, timeTaskFontWeight,
|
||||
@ -114,6 +115,7 @@ export async function PATCH(request: NextRequest) {
|
||||
...(showSchedule !== undefined && { showSchedule }),
|
||||
...(cellDuration !== undefined && !isNaN(cellDuration) && { cellDuration }),
|
||||
...(viewStyle !== undefined && { viewStyle }),
|
||||
...(viewDays !== undefined && !isNaN(viewDays) && { viewDays }),
|
||||
...(fontSize !== undefined && { fontSize }),
|
||||
...(headlineFont !== undefined && { headlineFont }),
|
||||
...(headlineFontSize !== undefined && { headlineFontSize }),
|
||||
@ -169,6 +171,7 @@ export async function PATCH(request: NextRequest) {
|
||||
showSchedule: true,
|
||||
cellDuration: true,
|
||||
viewStyle: true,
|
||||
viewDays: true,
|
||||
fontSize: true,
|
||||
headlineFont: true,
|
||||
headlineFontSize: true,
|
||||
|
||||
@ -1013,12 +1013,20 @@ h3 {
|
||||
}
|
||||
|
||||
.weekly-someday-lists-grid::-webkit-scrollbar-thumb {
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
background-color: rgba(0, 0, 0, 0.2);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.dark-mode .weekly-someday-lists-grid::-webkit-scrollbar-thumb {
|
||||
background-color: rgba(255, 255, 255, 0.2);
|
||||
}
|
||||
|
||||
.weekly-someday-lists-grid::-webkit-scrollbar-thumb:hover {
|
||||
background-color: rgba(0, 0, 0, 0.2);
|
||||
background-color: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
.dark-mode .weekly-someday-lists-grid::-webkit-scrollbar-thumb:hover {
|
||||
background-color: rgba(255, 255, 255, 0.3);
|
||||
}
|
||||
|
||||
/* Remove grid column classes as we are using flex now */
|
||||
@ -1060,6 +1068,36 @@ h3 {
|
||||
background-position: 0 40px; /* Offset for the header */
|
||||
}
|
||||
|
||||
.someday-drag-handle {
|
||||
cursor: grab;
|
||||
color: #ccc;
|
||||
padding: 2px;
|
||||
margin-right: 4px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-radius: 3px;
|
||||
transition: background-color 0.2s, color 0.2s;
|
||||
}
|
||||
|
||||
.someday-drag-handle:hover {
|
||||
background: rgba(0, 0, 0, 0.05);
|
||||
color: #888;
|
||||
}
|
||||
|
||||
.dark-mode .someday-drag-handle:hover {
|
||||
background: rgba(255, 255, 255, 0.1);
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.someday-list-delete-btn {
|
||||
opacity: 0;
|
||||
transition: opacity 0.2s;
|
||||
}
|
||||
|
||||
.weekly-someday-list-title-header:hover .someday-list-delete-btn {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
/* Placeholder styling */
|
||||
.weekly-someday-list.placeholder-list {
|
||||
background-image: repeating-linear-gradient(
|
||||
@ -1626,6 +1664,8 @@ h3 {
|
||||
border-radius: 0 4px 4px 0;
|
||||
margin: 1px 0;
|
||||
overflow: hidden;
|
||||
left: -10px;
|
||||
right: -15px;
|
||||
}
|
||||
|
||||
.time-slot-event .event-title-row {
|
||||
@ -1738,6 +1778,13 @@ h3 {
|
||||
padding: 0 0.25rem;
|
||||
min-height: 28px;
|
||||
border-right: 1px solid var(--weekly-border);
|
||||
overflow-y: auto;
|
||||
scrollbar-width: none; /* Firefox */
|
||||
-ms-overflow-style: none; /* IE/Edge */
|
||||
}
|
||||
|
||||
.all-day-events-column::-webkit-scrollbar {
|
||||
display: none; /* Chrome/Safari */
|
||||
}
|
||||
|
||||
.all-day-events-column:last-child {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user