From 0dd2fe3d72f539a5973db4c52ab11a526f57c2cd Mon Sep 17 00:00:00 2001 From: Alexander Platov Date: Mon, 21 Aug 2023 09:35:53 +0300 Subject: [PATCH] Team Calendar UI fixes (#3609) Signed-off-by: Alexander Platov --- packages/theme/styles/_layouts.scss | 1 + packages/theme/styles/button.scss | 10 +- .../src/components/DayCalendar.svelte | 377 +++++++++--------- 3 files changed, 195 insertions(+), 193 deletions(-) diff --git a/packages/theme/styles/_layouts.scss b/packages/theme/styles/_layouts.scss index b394a669ce..5c2b32fdd9 100644 --- a/packages/theme/styles/_layouts.scss +++ b/packages/theme/styles/_layouts.scss @@ -511,6 +511,7 @@ input.search { .mx-4 { margin: 0 1rem; } .mx-10 { margin: 0 2.5rem; } .mx-auto { margin: 0 auto; } +.my-1 { margin: .25rem 0; } .my-2 { margin: .5rem 0; } .my-3 { margin: .75rem 0; } .my-4 { margin: 1rem 0; } diff --git a/packages/theme/styles/button.scss b/packages/theme/styles/button.scss index a74a1823e8..eed24f9beb 100644 --- a/packages/theme/styles/button.scss +++ b/packages/theme/styles/button.scss @@ -105,8 +105,10 @@ } &:disabled { background-color: var(--theme-button-disabled); } &.selected { - background-color: var(--theme-button-hovered); - .btn-icon { color: var(--theme-caption-color); } + color: var(--theme-button-contrast-color); + background-color: var(--theme-accent-color); + .btn-icon { color: var(--theme-button-contrast-color); } + &:hover { color: var(--theme-button-contrast-color); } } } &.no-border { @@ -196,10 +198,6 @@ } &.regular, &.ghost { &:hover, &:active, &:focus { color: var(--theme-caption-color); } - &.selected { - color: var(--theme-button-contrast-color); - background-color: var(--theme-accent-color); - } } &.accented, &.brand, diff --git a/plugins/calendar-resources/src/components/DayCalendar.svelte b/plugins/calendar-resources/src/components/DayCalendar.svelte index 92add6af54..b85b91c546 100644 --- a/plugins/calendar-resources/src/components/DayCalendar.svelte +++ b/plugins/calendar-resources/src/components/DayCalendar.svelte @@ -181,10 +181,10 @@ const index = grid[event.day].columns.findIndex( (col) => col.elements[col.elements.length - 1].dueDate <= event.date ) + const intersects = grid[event.day].columns.filter((col) => + checkIntersect(col.elements[col.elements.length - 1], event) + ) if (index === -1) { - const intersects = grid[event.day].columns.filter((col) => - checkIntersect(col.elements[col.elements.length - 1], event) - ) const size = intersects.length + 1 grid[event.day].columns.forEach((col) => { if (checkIntersect(col.elements[col.elements.length - 1], event)) { @@ -195,9 +195,6 @@ elements: [{ id: event._id, date: event.date, dueDate: event.dueDate, cols: size }] }) } else { - const intersects = grid[event.day].columns.filter((col) => - checkIntersect(col.elements[col.elements.length - 1], event) - ) let maxCols = 1 intersects.forEach((col) => { if (col.elements[col.elements.length - 1].cols > maxCols) { @@ -454,47 +451,75 @@ bind:divScroll={scroller} fade={{ multipler: { top: (showHeader ? 3.5 : 0) + styleAD / fontSize, bottom: 0 } }} > -
checkSizes(element)} - > - {#if showHeader} - - {#each [...Array(displayedDaysCount).keys()] as dayOfWeek} - {@const day = getDay(weekMonday, dayOfWeek)} - - {/each} - {/if} - - + {#key newEvents}