From 04d0f324601373b1e110d8abf02651c0a0f260a8 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Fri, 7 Nov 2025 16:49:09 +0100 Subject: [PATCH 01/19] feat: change small appointments text display --- .../scss/widgets/base/scheduler/_index.scss | 16 ++++++++++++++ .../scss/widgets/fluent/scheduler/_index.scss | 8 +++++++ .../widgets/generic/scheduler/_index.scss | 7 ++++++ .../widgets/material/scheduler/_index.scss | 7 ++++++ .../appointments/appointment/m_appointment.ts | 22 +++++++++++++++++++ .../js/__internal/scheduler/m_classes.ts | 2 ++ .../options/get_min_appointment_size.ts | 4 ++-- 7 files changed, 64 insertions(+), 2 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss index 620d7de3db56..9c07a70aaef4 100644 --- a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss @@ -781,3 +781,19 @@ $scheduler-appointment-form-label-padding: 20px; } } } + +.dx-scheduler-appointment-extra-short { + .dx-scheduler-appointment-title { + display: block; + font-size: 8px; + line-height: 12px; + } +} + +.dx-scheduler-appointment-short { + .dx-scheduler-appointment-title { + display: block; + font-size: 12px; + line-height: 18px; + } +} diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index b95df8374361..86cc792f3aef 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -974,3 +974,11 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; .dx-scheduler-header-panel-empty-cell { margin-top: 0; } + +.dx-scheduler-appointment-extra-short, +.dx-scheduler-appointment-short { + .dx-scheduler-appointment-content { + padding: 0 8px 0 12px; + } +} + diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index ee0d7255f517..b96bfac06939 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -591,3 +591,10 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c background: $base-bg; } } + +.dx-scheduler-appointment-extra-short, +.dx-scheduler-appointment-short { + .dx-scheduler-appointment-content { + padding: 0 7px; + } +} diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index 97d27fdfb051..ceb79cd798bd 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -943,3 +943,10 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; .dx-scheduler-header-panel-empty-cell { margin-top: 0; } + +.dx-scheduler-appointment-extra-short, +.dx-scheduler-appointment-short { + .dx-scheduler-appointment-content { + padding: 0 7px; + } +} diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index d92be8078b3b..4e4bb69e6e95 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -18,10 +18,12 @@ import { APPOINTMENT_HAS_RESOURCE_COLOR_CLASS, DIRECTION_APPOINTMENT_CLASSES, EMPTY_APPOINTMENT_CLASS, + EXTRA_SHORT_APPOINTMENT_CLASS, RECURRENCE_APPOINTMENT_CLASS, REDUCED_APPOINTMENT_CLASS, REDUCED_APPOINTMENT_ICON, REDUCED_APPOINTMENT_PARTS_CLASSES, + SHORT_APPOINTMENT_CLASS, } from '../../m_classes'; import type { SubscribeKey, SubscribeMethods } from '../../m_subscribes'; import { validateRRule } from '../../recurrence/validate_rule'; @@ -156,6 +158,7 @@ export class Appointment extends DOMComponent { this._renderAppointmentGeometry(); this._renderAriaLabel(); this._renderEmptyClass(); + this._renderShortAppointmentClass(); this._renderReducedAppointment(); this._renderAllDayClass(); this._renderDragSourceClass(); @@ -227,6 +230,25 @@ export class Appointment extends DOMComponent { } } + _renderShortAppointmentClass() { + const geometry: any = this.option('geometry'); + + if (!geometry || geometry.empty) { + return; + } + + const { height } = geometry; + + // Extra short appointments (10 minutes, ~12px in Fluent default) + if (height > 0 && height <= 13) { + (this.$element() as any).addClass(EXTRA_SHORT_APPOINTMENT_CLASS); + } + // Short appointments (15 minutes, ~19px in Fluent default) + else if (height > 13 && height <= 20) { + (this.$element() as any).addClass(SHORT_APPOINTMENT_CLASS); + } + } + _renderReducedAppointment() { const reducedPart: any = this.option('reduced'); diff --git a/packages/devextreme/js/__internal/scheduler/m_classes.ts b/packages/devextreme/js/__internal/scheduler/m_classes.ts index bc75e49b2287..8c2d0194d15f 100644 --- a/packages/devextreme/js/__internal/scheduler/m_classes.ts +++ b/packages/devextreme/js/__internal/scheduler/m_classes.ts @@ -3,6 +3,8 @@ export const REDUCED_APPOINTMENT_CLASS = 'dx-scheduler-appointment-reduced'; export const REDUCED_APPOINTMENT_ICON = 'dx-scheduler-appointment-reduced-icon'; export const RECURRENCE_APPOINTMENT_CLASS = 'dx-scheduler-appointment-recurrence'; export const EMPTY_APPOINTMENT_CLASS = 'dx-scheduler-appointment-empty'; +export const SHORT_APPOINTMENT_CLASS = 'dx-scheduler-appointment-short'; +export const EXTRA_SHORT_APPOINTMENT_CLASS = 'dx-scheduler-appointment-extra-short'; export const ALL_DAY_APPOINTMENT_CLASS = 'dx-scheduler-all-day-appointment'; export const REDUCED_APPOINTMENT_PARTS_CLASSES = { head: 'dx-scheduler-appointment-head', diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts index a7c1419ab287..b19b745663d7 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts @@ -8,8 +8,8 @@ interface Options { isAdaptivityEnabled: boolean; } -const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 18; -const APPOINTMENT_DEFAULT_HEIGHT = 20; +const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 12; +const APPOINTMENT_DEFAULT_HEIGHT = 12; const APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH = 40; const APPOINTMENT_DEFAULT_VERTICAL_WIDTH = 50; const APPOINTMENT_MIN_HEIGHT = 35; From 1425862254b9959be116e33dd4c062120a5b61cb Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 10 Nov 2025 09:17:13 +0100 Subject: [PATCH 02/19] css: update 15 min compact appts --- .../scss/widgets/fluent/scheduler/_index.scss | 8 ++++++++ .../scss/widgets/generic/scheduler/_index.scss | 8 ++++++++ .../scss/widgets/material/scheduler/_index.scss | 8 ++++++++ 3 files changed, 24 insertions(+) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index 86cc792f3aef..abc328510e47 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -982,3 +982,11 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } } +@if $size == "compact" { + .dx-scheduler-appointment-short { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } +} + diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index b96bfac06939..f7be1c1f80d7 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -598,3 +598,11 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c padding: 0 7px; } } + +@if $size == "compact" { + .dx-scheduler-appointment-short { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } +} diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index ceb79cd798bd..5197e5369f10 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -950,3 +950,11 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; padding: 0 7px; } } + +@if $size == "compact" { + .dx-scheduler-appointment-short { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } +} From 453921dfb7483568a109cf947071f49d463b804b Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 10 Nov 2025 13:37:46 +0100 Subject: [PATCH 03/19] css: update appts --- .../scss/widgets/base/scheduler/_index.scss | 26 ++++++++++-- .../scss/widgets/fluent/scheduler/_index.scss | 25 +++++++++-- .../widgets/generic/scheduler/_index.scss | 25 +++++++++-- .../widgets/material/scheduler/_index.scss | 25 +++++++++-- .../appointments/appointment/m_appointment.ts | 42 +++++++++++++++---- .../js/__internal/scheduler/m_classes.ts | 7 +++- 6 files changed, 126 insertions(+), 24 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss index 9c07a70aaef4..5a8606e1af3b 100644 --- a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss @@ -782,17 +782,35 @@ $scheduler-appointment-form-label-padding: 20px; } } -.dx-scheduler-appointment-extra-short { +.dx-scheduler-appointment-10min { .dx-scheduler-appointment-title { - display: block; font-size: 8px; line-height: 12px; } } -.dx-scheduler-appointment-short { +.dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + font-size: 12px; + line-height: 18px; + } +} + +.dx-scheduler-appointment-20min { + .dx-scheduler-appointment-title { + font-size: 12px; + } +} + +.dx-scheduler-appointment-25min { + .dx-scheduler-appointment-title { + font-size: 12px; + line-height: 18px; + } +} + +.dx-scheduler-appointment-30min { .dx-scheduler-appointment-title { - display: block; font-size: 12px; line-height: 18px; } diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index abc328510e47..db53e860d292 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -975,16 +975,35 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; margin-top: 0; } -.dx-scheduler-appointment-extra-short, -.dx-scheduler-appointment-short { +.dx-scheduler-appointment-10min, +.dx-scheduler-appointment-15min { .dx-scheduler-appointment-content { padding: 0 8px 0 12px; } } +@if $size == "default" { + .dx-scheduler-appointment-25min { + .dx-scheduler-appointment-content { + padding: 0 8px 0 12px; + } + } +} + @if $size == "compact" { - .dx-scheduler-appointment-short { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } + + .dx-scheduler-appointment-30min { + .dx-scheduler-appointment-content { + padding: 0 8px 0 12px; + } + .dx-scheduler-appointment-title { + font-size: 10px; line-height: 12px; } } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index f7be1c1f80d7..81bcd855678e 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -592,16 +592,35 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c } } -.dx-scheduler-appointment-extra-short, -.dx-scheduler-appointment-short { +.dx-scheduler-appointment-10min, +.dx-scheduler-appointment-15min { .dx-scheduler-appointment-content { padding: 0 7px; } } +@if $size == "default" { + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } + } +} + @if $size == "compact" { - .dx-scheduler-appointment-short { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } + + .dx-scheduler-appointment-30min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } + .dx-scheduler-appointment-title { + font-size: 10px; line-height: 12px; } } diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index 5197e5369f10..fc447ada5e4f 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -944,16 +944,35 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; margin-top: 0; } -.dx-scheduler-appointment-extra-short, -.dx-scheduler-appointment-short { +.dx-scheduler-appointment-10min, +.dx-scheduler-appointment-15min { .dx-scheduler-appointment-content { padding: 0 7px; } } +@if $size == "default" { + .dx-scheduler-appointment-25min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } + } +} + @if $size == "compact" { - .dx-scheduler-appointment-short { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } + } + + .dx-scheduler-appointment-30min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } + .dx-scheduler-appointment-title { + font-size: 10px; line-height: 12px; } } diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index 4e4bb69e6e95..5ea13256e699 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -13,17 +13,20 @@ import { hide, show } from '@ts/ui/tooltip/m_tooltip'; import { ALL_DAY_APPOINTMENT_CLASS, + APPOINTMENT_10MIN_CLASS, + APPOINTMENT_15MIN_CLASS, + APPOINTMENT_20MIN_CLASS, + APPOINTMENT_25MIN_CLASS, + APPOINTMENT_30MIN_CLASS, APPOINTMENT_CONTENT_CLASSES, APPOINTMENT_DRAG_SOURCE_CLASS, APPOINTMENT_HAS_RESOURCE_COLOR_CLASS, DIRECTION_APPOINTMENT_CLASSES, EMPTY_APPOINTMENT_CLASS, - EXTRA_SHORT_APPOINTMENT_CLASS, RECURRENCE_APPOINTMENT_CLASS, REDUCED_APPOINTMENT_CLASS, REDUCED_APPOINTMENT_ICON, REDUCED_APPOINTMENT_PARTS_CLASSES, - SHORT_APPOINTMENT_CLASS, } from '../../m_classes'; import type { SubscribeKey, SubscribeMethods } from '../../m_subscribes'; import { validateRRule } from '../../recurrence/validate_rule'; @@ -237,15 +240,36 @@ export class Appointment extends DOMComponent { return; } - const { height } = geometry; + // Get appointment duration in minutes + const startDate = this.dataAccessors.get('startDate', this.rawAppointment); + const endDate = this.dataAccessors.get('endDate', this.rawAppointment); - // Extra short appointments (10 minutes, ~12px in Fluent default) - if (height > 0 && height <= 13) { - (this.$element() as any).addClass(EXTRA_SHORT_APPOINTMENT_CLASS); + if (!startDate || !endDate) { + return; } - // Short appointments (15 minutes, ~19px in Fluent default) - else if (height > 13 && height <= 20) { - (this.$element() as any).addClass(SHORT_APPOINTMENT_CLASS); + + const durationMs = new Date(endDate).getTime() - new Date(startDate).getTime(); + const durationMinutes = Math.round(durationMs / (1000 * 60)); + + // Apply classes based on actual appointment duration + switch (true) { + case durationMinutes <= 10: + (this.$element() as any).addClass(APPOINTMENT_10MIN_CLASS); + break; + case durationMinutes <= 15: + (this.$element() as any).addClass(APPOINTMENT_15MIN_CLASS); + break; + case durationMinutes <= 20: + (this.$element() as any).addClass(APPOINTMENT_20MIN_CLASS); + break; + case durationMinutes <= 25: + (this.$element() as any).addClass(APPOINTMENT_25MIN_CLASS); + break; + case durationMinutes <= 35: + (this.$element() as any).addClass(APPOINTMENT_30MIN_CLASS); + break; + default: + break; } } diff --git a/packages/devextreme/js/__internal/scheduler/m_classes.ts b/packages/devextreme/js/__internal/scheduler/m_classes.ts index 8c2d0194d15f..a97a95260b0b 100644 --- a/packages/devextreme/js/__internal/scheduler/m_classes.ts +++ b/packages/devextreme/js/__internal/scheduler/m_classes.ts @@ -3,8 +3,11 @@ export const REDUCED_APPOINTMENT_CLASS = 'dx-scheduler-appointment-reduced'; export const REDUCED_APPOINTMENT_ICON = 'dx-scheduler-appointment-reduced-icon'; export const RECURRENCE_APPOINTMENT_CLASS = 'dx-scheduler-appointment-recurrence'; export const EMPTY_APPOINTMENT_CLASS = 'dx-scheduler-appointment-empty'; -export const SHORT_APPOINTMENT_CLASS = 'dx-scheduler-appointment-short'; -export const EXTRA_SHORT_APPOINTMENT_CLASS = 'dx-scheduler-appointment-extra-short'; +export const APPOINTMENT_10MIN_CLASS = 'dx-scheduler-appointment-10min'; +export const APPOINTMENT_15MIN_CLASS = 'dx-scheduler-appointment-15min'; +export const APPOINTMENT_20MIN_CLASS = 'dx-scheduler-appointment-20min'; +export const APPOINTMENT_25MIN_CLASS = 'dx-scheduler-appointment-25min'; +export const APPOINTMENT_30MIN_CLASS = 'dx-scheduler-appointment-30min'; export const ALL_DAY_APPOINTMENT_CLASS = 'dx-scheduler-all-day-appointment'; export const REDUCED_APPOINTMENT_PARTS_CLASSES = { head: 'dx-scheduler-appointment-head', From 5e1c84ccb9b88c11b55e1a47d3c479dde21cc4ed Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 11 Nov 2025 10:49:00 +0100 Subject: [PATCH 04/19] css: remove unsused styling --- .../scss/widgets/base/scheduler/_index.scss | 20 ------------------- .../scss/widgets/fluent/scheduler/_index.scss | 19 ------------------ .../widgets/generic/scheduler/_index.scss | 19 ------------------ .../widgets/material/scheduler/_index.scss | 19 ------------------ .../appointments/appointment/m_appointment.ts | 12 ----------- .../js/__internal/scheduler/m_classes.ts | 3 --- 6 files changed, 92 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss index 5a8606e1af3b..f66e9aa9a460 100644 --- a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss @@ -795,23 +795,3 @@ $scheduler-appointment-form-label-padding: 20px; line-height: 18px; } } - -.dx-scheduler-appointment-20min { - .dx-scheduler-appointment-title { - font-size: 12px; - } -} - -.dx-scheduler-appointment-25min { - .dx-scheduler-appointment-title { - font-size: 12px; - line-height: 18px; - } -} - -.dx-scheduler-appointment-30min { - .dx-scheduler-appointment-title { - font-size: 12px; - line-height: 18px; - } -} diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index db53e860d292..60cc91011df3 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -982,30 +982,11 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } } -@if $size == "default" { - .dx-scheduler-appointment-25min { - .dx-scheduler-appointment-content { - padding: 0 8px 0 12px; - } - } -} - @if $size == "compact" { .dx-scheduler-appointment-15min { .dx-scheduler-appointment-title { line-height: 12px; } } - - .dx-scheduler-appointment-30min { - .dx-scheduler-appointment-content { - padding: 0 8px 0 12px; - } - - .dx-scheduler-appointment-title { - font-size: 10px; - line-height: 12px; - } - } } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index 81bcd855678e..0eab61eb4719 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -599,29 +599,10 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c } } -@if $size == "default" { - .dx-scheduler-appointment-20min { - .dx-scheduler-appointment-content { - padding: 0 7px; - } - } -} - @if $size == "compact" { .dx-scheduler-appointment-15min { .dx-scheduler-appointment-title { line-height: 12px; } } - - .dx-scheduler-appointment-30min { - .dx-scheduler-appointment-content { - padding: 0 7px; - } - - .dx-scheduler-appointment-title { - font-size: 10px; - line-height: 12px; - } - } } diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index fc447ada5e4f..359fc1dd50af 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -951,29 +951,10 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; } } -@if $size == "default" { - .dx-scheduler-appointment-25min { - .dx-scheduler-appointment-content { - padding: 0 7px; - } - } -} - @if $size == "compact" { .dx-scheduler-appointment-15min { .dx-scheduler-appointment-title { line-height: 12px; } } - - .dx-scheduler-appointment-30min { - .dx-scheduler-appointment-content { - padding: 0 7px; - } - - .dx-scheduler-appointment-title { - font-size: 10px; - line-height: 12px; - } - } } diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index 5ea13256e699..aa46b3df1327 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -15,9 +15,6 @@ import { ALL_DAY_APPOINTMENT_CLASS, APPOINTMENT_10MIN_CLASS, APPOINTMENT_15MIN_CLASS, - APPOINTMENT_20MIN_CLASS, - APPOINTMENT_25MIN_CLASS, - APPOINTMENT_30MIN_CLASS, APPOINTMENT_CONTENT_CLASSES, APPOINTMENT_DRAG_SOURCE_CLASS, APPOINTMENT_HAS_RESOURCE_COLOR_CLASS, @@ -259,15 +256,6 @@ export class Appointment extends DOMComponent { case durationMinutes <= 15: (this.$element() as any).addClass(APPOINTMENT_15MIN_CLASS); break; - case durationMinutes <= 20: - (this.$element() as any).addClass(APPOINTMENT_20MIN_CLASS); - break; - case durationMinutes <= 25: - (this.$element() as any).addClass(APPOINTMENT_25MIN_CLASS); - break; - case durationMinutes <= 35: - (this.$element() as any).addClass(APPOINTMENT_30MIN_CLASS); - break; default: break; } diff --git a/packages/devextreme/js/__internal/scheduler/m_classes.ts b/packages/devextreme/js/__internal/scheduler/m_classes.ts index a97a95260b0b..f9120b1f4155 100644 --- a/packages/devextreme/js/__internal/scheduler/m_classes.ts +++ b/packages/devextreme/js/__internal/scheduler/m_classes.ts @@ -5,9 +5,6 @@ export const RECURRENCE_APPOINTMENT_CLASS = 'dx-scheduler-appointment-recurrence export const EMPTY_APPOINTMENT_CLASS = 'dx-scheduler-appointment-empty'; export const APPOINTMENT_10MIN_CLASS = 'dx-scheduler-appointment-10min'; export const APPOINTMENT_15MIN_CLASS = 'dx-scheduler-appointment-15min'; -export const APPOINTMENT_20MIN_CLASS = 'dx-scheduler-appointment-20min'; -export const APPOINTMENT_25MIN_CLASS = 'dx-scheduler-appointment-25min'; -export const APPOINTMENT_30MIN_CLASS = 'dx-scheduler-appointment-30min'; export const ALL_DAY_APPOINTMENT_CLASS = 'dx-scheduler-all-day-appointment'; export const REDUCED_APPOINTMENT_PARTS_CLASSES = { head: 'dx-scheduler-appointment-head', From cee06cd3050db5ba14edd014d3dffaa4c88f8161 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 11 Nov 2025 10:56:44 +0100 Subject: [PATCH 05/19] fix: return old sizing and remove comments --- .../scheduler/appointments/appointment/m_appointment.ts | 2 -- .../generate_view_model/options/get_min_appointment_size.ts | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index aa46b3df1327..696df9030100 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -237,7 +237,6 @@ export class Appointment extends DOMComponent { return; } - // Get appointment duration in minutes const startDate = this.dataAccessors.get('startDate', this.rawAppointment); const endDate = this.dataAccessors.get('endDate', this.rawAppointment); @@ -248,7 +247,6 @@ export class Appointment extends DOMComponent { const durationMs = new Date(endDate).getTime() - new Date(startDate).getTime(); const durationMinutes = Math.round(durationMs / (1000 * 60)); - // Apply classes based on actual appointment duration switch (true) { case durationMinutes <= 10: (this.$element() as any).addClass(APPOINTMENT_10MIN_CLASS); diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts index b19b745663d7..a7c1419ab287 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts @@ -8,8 +8,8 @@ interface Options { isAdaptivityEnabled: boolean; } -const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 12; -const APPOINTMENT_DEFAULT_HEIGHT = 12; +const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 18; +const APPOINTMENT_DEFAULT_HEIGHT = 20; const APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH = 40; const APPOINTMENT_DEFAULT_VERTICAL_WIDTH = 50; const APPOINTMENT_MIN_HEIGHT = 35; From a2fcddc65d25410b52c0988c57ec5f4f5e84bd98 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 11 Nov 2025 11:30:00 +0100 Subject: [PATCH 06/19] fix: apply styles only in needed sections --- .../scss/widgets/base/scheduler/_index.scss | 22 +++++++++++-------- .../scss/widgets/fluent/scheduler/_index.scss | 22 +++++++++++-------- .../widgets/generic/scheduler/_index.scss | 22 +++++++++++-------- .../widgets/material/scheduler/_index.scss | 22 +++++++++++-------- .../options/get_min_appointment_size.ts | 4 ++-- 5 files changed, 54 insertions(+), 38 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss index f66e9aa9a460..6cc6a228e2c7 100644 --- a/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/base/scheduler/_index.scss @@ -782,16 +782,20 @@ $scheduler-appointment-form-label-padding: 20px; } } -.dx-scheduler-appointment-10min { - .dx-scheduler-appointment-title { - font-size: 8px; - line-height: 12px; +.dx-scheduler-work-space-day, +.dx-scheduler-work-space-week, +.dx-scheduler-work-space-work-week { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-title { + font-size: 8px; + line-height: 12px; + } } -} -.dx-scheduler-appointment-15min { - .dx-scheduler-appointment-title { - font-size: 12px; - line-height: 18px; + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + font-size: 12px; + line-height: 18px; + } } } diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index 60cc91011df3..99e162a4ed80 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -975,17 +975,21 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; margin-top: 0; } -.dx-scheduler-appointment-10min, -.dx-scheduler-appointment-15min { - .dx-scheduler-appointment-content { - padding: 0 8px 0 12px; +.dx-scheduler-work-space-day, +.dx-scheduler-work-space-week, +.dx-scheduler-work-space-work-week { + .dx-scheduler-appointment-10min, + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-content { + padding: 0 8px 0 12px; + } } -} -@if $size == "compact" { - .dx-scheduler-appointment-15min { - .dx-scheduler-appointment-title { - line-height: 12px; + @if $size == "compact" { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } } } } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index 0eab61eb4719..76c3c1b62e7c 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -592,17 +592,21 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c } } -.dx-scheduler-appointment-10min, -.dx-scheduler-appointment-15min { - .dx-scheduler-appointment-content { - padding: 0 7px; +.dx-scheduler-work-space-day, +.dx-scheduler-work-space-week, +.dx-scheduler-work-space-work-week { + .dx-scheduler-appointment-10min, + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } } -} -@if $size == "compact" { - .dx-scheduler-appointment-15min { - .dx-scheduler-appointment-title { - line-height: 12px; + @if $size == "compact" { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } } } } diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index 359fc1dd50af..62965d441256 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -944,17 +944,21 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; margin-top: 0; } -.dx-scheduler-appointment-10min, -.dx-scheduler-appointment-15min { - .dx-scheduler-appointment-content { - padding: 0 7px; +.dx-scheduler-work-space-day, +.dx-scheduler-work-space-week, +.dx-scheduler-work-space-work-week { + .dx-scheduler-appointment-10min, + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-content { + padding: 0 7px; + } } -} -@if $size == "compact" { - .dx-scheduler-appointment-15min { - .dx-scheduler-appointment-title { - line-height: 12px; + @if $size == "compact" { + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: 12px; + } } } } diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts index a7c1419ab287..b19b745663d7 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts @@ -8,8 +8,8 @@ interface Options { isAdaptivityEnabled: boolean; } -const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 18; -const APPOINTMENT_DEFAULT_HEIGHT = 20; +const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 12; +const APPOINTMENT_DEFAULT_HEIGHT = 12; const APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH = 40; const APPOINTMENT_DEFAULT_VERTICAL_WIDTH = 50; const APPOINTMENT_MIN_HEIGHT = 35; From 910584c09466d80650a1cf12d80ff814b8ef2c3a Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Thu, 13 Nov 2025 21:13:09 +0100 Subject: [PATCH 07/19] css: fix styles --- .../scss/widgets/fluent/scheduler/_index.scss | 48 +++++++++++++++ .../widgets/generic/scheduler/_index.scss | 58 ++++++++++++++++++- .../widgets/material/scheduler/_index.scss | 57 ++++++++++++++++++ 3 files changed, 162 insertions(+), 1 deletion(-) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index 99e162a4ed80..f2d345b03864 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -985,11 +985,59 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } } + @if $size == "default" { + .dx-scheduler-appointment-10min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 14px; + } + + .dx-scheduler-appointment-recurrence-icon { + top: 0px; + right: 2px; + font-size: 12px; + } + } + + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 14px; + } + + .dx-scheduler-appointment-recurrence-icon { + top: unset; + bottom: 2px; + right: 2px; + font-size: 12px; + } + } + } + @if $size == "compact" { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-content { + display: none; + } + } + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 14px; + } + .dx-scheduler-appointment-title { line-height: 12px; } + + .dx-scheduler-appointment-recurrence-icon { + bottom: 0; + } + } + + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-recurrence-icon { + top: 0; + right: 5px; + } } } } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index 76c3c1b62e7c..d2ad3c3bac39 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -602,10 +602,66 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c } } + @if $size == "default" { + .dx-scheduler-appointment-10min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 16px; + } + + .dx-scheduler-appointment-title { + line-height: 16px; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 14px; + top: 2px; + right: 2px; + } + } + + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 20px; + } + + .dx-scheduler-appointment-title { + line-height: 24px; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 18px; + top: 4px; + right: 2px; + } + } + + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-title { + line-height: 24px; + } + } + } + @if $size == "compact" { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-content { + display: none; + } + } + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 16px; + } + .dx-scheduler-appointment-title { - line-height: 12px; + line-height: 16px; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 14px; + top: 2px; + right: 2px; } } } diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index 62965d441256..2e12c14d3388 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -954,11 +954,68 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; } } + @if $size == "default" { + .dx-scheduler-appointment-10min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 14px; + } + + .dx-scheduler-appointment-title { + line-height: 12px; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 12px; + top: 0; + right: 2px; + } + } + + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 18px; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 16px; + top: 1px; + right: 2px; + } + } + } + @if $size == "compact" { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-content { + display: none; + } + } + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: 14px; + } + .dx-scheduler-appointment-title { + font-size: 8px; line-height: 12px; } + + .dx-scheduler-appointment-recurrence-icon { + font-size: 12px; + top: 1px; + right: 2px; + } + } + + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-title { + line-height: 12px; + } + + .dx-scheduler-appointment-recurrence-icon { + top: 0; + } } } } From a92d6a5df976e1a6654f5964580ae765b1749eeb Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Fri, 14 Nov 2025 11:28:09 +0100 Subject: [PATCH 08/19] css: extract all into variables --- .../scss/widgets/fluent/scheduler/_index.scss | 122 +++++++--------- .../scss/widgets/fluent/scheduler/_sizes.scss | 37 +++++ .../widgets/generic/scheduler/_index.scss | 60 +++----- .../widgets/generic/scheduler/_sizes.scss | 37 +++++ .../widgets/material/scheduler/_index.scss | 138 ++++++++---------- .../widgets/material/scheduler/_sizes.scss | 40 +++++ .../appointments/appointment/m_appointment.ts | 4 + .../js/__internal/scheduler/m_classes.ts | 1 + 8 files changed, 258 insertions(+), 181 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index f2d345b03864..dff2de728ae5 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -198,6 +198,61 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; .dx-scheduler-date-table-row:nth-child(even) .dx-scheduler-date-table-cell { border-top-style: dashed; } + + .dx-scheduler-appointment-10min, + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-content { + padding: $fluent-scheduler-appointment-short-content-padding; + } + } + + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: $fluent-scheduler-appointment-15min-recurrence-padding-right; + } + + .dx-scheduler-appointment-recurrence-icon { + top: unset; + bottom: $fluent-scheduler-appointment-15min-icon-bottom; + right: $fluent-scheduler-appointment-15min-icon-right; + font-size: $fluent-scheduler-appointment-15min-icon-font-size; + } + } + + @if $size == "default" { + .dx-scheduler-appointment-10min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: $fluent-scheduler-appointment-10min-recurrence-padding-right; + } + + .dx-scheduler-appointment-recurrence-icon { + top: $fluent-scheduler-appointment-10min-icon-top; + right: $fluent-scheduler-appointment-10min-icon-right; + font-size: $fluent-scheduler-appointment-10min-icon-font-size; + } + } + } + + @if $size == "compact" { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-content { + display: none; + } + } + + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + line-height: $fluent-scheduler-appointment-15min-title-line-height; + } + } + + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-recurrence-icon { + top: $fluent-scheduler-appointment-20min-icon-top; + right: $fluent-scheduler-appointment-20min-icon-right; + } + } + } } .dx-scheduler-header-panel { @@ -975,70 +1030,3 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; margin-top: 0; } -.dx-scheduler-work-space-day, -.dx-scheduler-work-space-week, -.dx-scheduler-work-space-work-week { - .dx-scheduler-appointment-10min, - .dx-scheduler-appointment-15min { - .dx-scheduler-appointment-content { - padding: 0 8px 0 12px; - } - } - - @if $size == "default" { - .dx-scheduler-appointment-10min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 14px; - } - - .dx-scheduler-appointment-recurrence-icon { - top: 0px; - right: 2px; - font-size: 12px; - } - } - - .dx-scheduler-appointment-15min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 14px; - } - - .dx-scheduler-appointment-recurrence-icon { - top: unset; - bottom: 2px; - right: 2px; - font-size: 12px; - } - } - } - - @if $size == "compact" { - .dx-scheduler-appointment-10min { - .dx-scheduler-appointment-content { - display: none; - } - } - - .dx-scheduler-appointment-15min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 14px; - } - - .dx-scheduler-appointment-title { - line-height: 12px; - } - - .dx-scheduler-appointment-recurrence-icon { - bottom: 0; - } - } - - .dx-scheduler-appointment-20min { - .dx-scheduler-appointment-recurrence-icon { - top: 0; - right: 5px; - } - } - } -} - diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss index d166f79774e6..c51741f47e4d 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss @@ -38,6 +38,21 @@ $fluent-scheduler-days-of-week-button-size: null !default; $fluent-scheduler-days-of-week-buttons-gap: null !default; $fluent-scheduler-recurrence-end-item-height: null !default; +$fluent-scheduler-appointment-short-content-padding: null !default; +$fluent-scheduler-appointment-10min-recurrence-padding-right: null !default; +$fluent-scheduler-appointment-10min-title-line-height: null !default; +$fluent-scheduler-appointment-10min-icon-font-size: null !default; +$fluent-scheduler-appointment-10min-icon-top: null !default; +$fluent-scheduler-appointment-10min-icon-right: null !default; +$fluent-scheduler-appointment-15min-recurrence-padding-right: null !default; +$fluent-scheduler-appointment-15min-title-line-height: null !default; +$fluent-scheduler-appointment-15min-icon-font-size: null !default; +$fluent-scheduler-appointment-15min-icon-top: null !default; +$fluent-scheduler-appointment-15min-icon-bottom: null !default; +$fluent-scheduler-appointment-15min-icon-right: null !default; +$fluent-scheduler-appointment-20min-icon-top: null !default; +$fluent-scheduler-appointment-20min-icon-right: null !default; + $scheduler-left-column-width: 65px !default; $fluent-scheduler-timeline-date-table-cell-height: 50px !default; @@ -120,6 +135,18 @@ $header-panel-time-cell-padding: null !default; $fluent-scheduler-recurrence-end-item-height: 32px !default; $agenda-appointment-title-font-size: 14px; + + $fluent-scheduler-appointment-short-content-padding: 0 8px 0 12px !default; + + $fluent-scheduler-appointment-10min-recurrence-padding-right: 14px !default; + $fluent-scheduler-appointment-10min-icon-font-size: 12px !default; + $fluent-scheduler-appointment-10min-icon-top: 0 !default; + $fluent-scheduler-appointment-10min-icon-right: 2px !default; + + $fluent-scheduler-appointment-15min-recurrence-padding-right: 14px !default; + $fluent-scheduler-appointment-15min-icon-font-size: 12px !default; + $fluent-scheduler-appointment-15min-icon-bottom: 2px !default; + $fluent-scheduler-appointment-15min-icon-right: 2px !default; } @else if $size == "compact" { @@ -168,4 +195,14 @@ $header-panel-time-cell-padding: null !default; $fluent-scheduler-recurrence-end-item-height: 22px !default; $agenda-appointment-title-font-size: 13px; + + $fluent-scheduler-appointment-short-content-padding: 0 8px 0 12px !default; + + $fluent-scheduler-appointment-15min-recurrence-padding-right: 16px !default; + $fluent-scheduler-appointment-15min-icon-font-size: 12px !default; + $fluent-scheduler-appointment-15min-title-line-height: 12px !default; + $fluent-scheduler-appointment-15min-icon-bottom: 0 !default; + + $fluent-scheduler-appointment-20min-icon-top: 0 !default; + $fluent-scheduler-appointment-20min-icon-right: 5px !default; } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss index d2ad3c3bac39..8f53d0ebe4a9 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_index.scss @@ -598,46 +598,46 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c .dx-scheduler-appointment-10min, .dx-scheduler-appointment-15min { .dx-scheduler-appointment-content { - padding: 0 7px; + padding: $generic-scheduler-appointment-short-content-padding; } } - @if $size == "default" { - .dx-scheduler-appointment-10min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 16px; - } + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: $generic-scheduler-appointment-15min-recurrence-padding-right; + } - .dx-scheduler-appointment-title { - line-height: 16px; - } + .dx-scheduler-appointment-title { + line-height: $generic-scheduler-appointment-15min-title-line-height; + } - .dx-scheduler-appointment-recurrence-icon { - font-size: 14px; - top: 2px; - right: 2px; - } + .dx-scheduler-appointment-recurrence-icon { + font-size: $generic-scheduler-appointment-15min-icon-font-size; + top: $generic-scheduler-appointment-15min-icon-top; + right: $generic-scheduler-appointment-15min-icon-right; } + } - .dx-scheduler-appointment-15min { + @if $size == "default" { + .dx-scheduler-appointment-10min { &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 20px; + padding-right: $generic-scheduler-appointment-10min-recurrence-padding-right; } .dx-scheduler-appointment-title { - line-height: 24px; + line-height: $generic-scheduler-appointment-10min-title-line-height; } - + .dx-scheduler-appointment-recurrence-icon { - font-size: 18px; - top: 4px; - right: 2px; + font-size: $generic-scheduler-appointment-10min-icon-font-size; + top: $generic-scheduler-appointment-10min-icon-top; + right: $generic-scheduler-appointment-10min-icon-right; } } .dx-scheduler-appointment-20min { .dx-scheduler-appointment-title { - line-height: 24px; + line-height: $generic-scheduler-appointment-20min-title-line-height; } } } @@ -648,21 +648,5 @@ $generic-scheduler-agenda-group-header-padding: $generic-scheduler-agenda-time-c display: none; } } - - .dx-scheduler-appointment-15min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 16px; - } - - .dx-scheduler-appointment-title { - line-height: 16px; - } - - .dx-scheduler-appointment-recurrence-icon { - font-size: 14px; - top: 2px; - right: 2px; - } - } } } diff --git a/packages/devextreme-scss/scss/widgets/generic/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/generic/scheduler/_sizes.scss index 1fd72f9012d0..47e7a569b5bf 100644 --- a/packages/devextreme-scss/scss/widgets/generic/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/generic/scheduler/_sizes.scss @@ -43,6 +43,19 @@ $generic-scheduler-days-of-week-button-size: null !default; $generic-scheduler-days-of-week-buttons-gap: null !default; $generic-scheduler-recurrence-end-item-height: null !default; +$generic-scheduler-appointment-short-content-padding: null !default; +$generic-scheduler-appointment-10min-recurrence-padding-right: null !default; +$generic-scheduler-appointment-10min-title-line-height: null !default; +$generic-scheduler-appointment-10min-icon-font-size: null !default; +$generic-scheduler-appointment-10min-icon-top: null !default; +$generic-scheduler-appointment-10min-icon-right: null !default; +$generic-scheduler-appointment-15min-recurrence-padding-right: null !default; +$generic-scheduler-appointment-15min-title-line-height: null !default; +$generic-scheduler-appointment-15min-icon-font-size: null !default; +$generic-scheduler-appointment-15min-icon-top: null !default; +$generic-scheduler-appointment-15min-icon-right: null !default; +$generic-scheduler-appointment-20min-title-line-height: null !default; + $agenda-appointment-title-font-size: null !default; $scheduler-timeline-cell-height: null !default; @@ -97,6 +110,22 @@ $generic-scheduler-group-header-agenda-font-size: 14px !default; $agenda-appointment-title-font-size: 16px; $scheduler-timeline-cell-height: 78px !default; + + $generic-scheduler-appointment-short-content-padding: 0 7px !default; + + $generic-scheduler-appointment-10min-recurrence-padding-right: 16px !default; + $generic-scheduler-appointment-10min-title-line-height: 16px !default; + $generic-scheduler-appointment-10min-icon-font-size: 14px !default; + $generic-scheduler-appointment-10min-icon-top: 2px !default; + $generic-scheduler-appointment-10min-icon-right: 2px !default; + + $generic-scheduler-appointment-15min-recurrence-padding-right: 20px !default; + $generic-scheduler-appointment-15min-title-line-height: 24px !default; + $generic-scheduler-appointment-15min-icon-font-size: 18px !default; + $generic-scheduler-appointment-15min-icon-top: 4px !default; + $generic-scheduler-appointment-15min-icon-right: 2px !default; + + $generic-scheduler-appointment-20min-title-line-height: 24px !default; } @else if $size == "compact" { @@ -147,4 +176,12 @@ $generic-scheduler-group-header-agenda-font-size: 14px !default; $agenda-appointment-title-font-size: 16px; $scheduler-timeline-cell-height: 50px !default; + + $generic-scheduler-appointment-short-content-padding: 0 7px !default; + + $generic-scheduler-appointment-15min-recurrence-padding-right: 16px !default; + $generic-scheduler-appointment-15min-title-line-height: 16px !default; + $generic-scheduler-appointment-15min-icon-font-size: 14px !default; + $generic-scheduler-appointment-15min-icon-top: 2px !default; + $generic-scheduler-appointment-15min-icon-right: 2px !default; } diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index 2e12c14d3388..faabee4d5eeb 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -171,6 +171,68 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; height: 2px; } + + .dx-scheduler-appointment-10min, + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-content { + padding: $material-scheduler-appointment-short-content-padding; + } + } + + .dx-scheduler-appointment-15min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: $material-scheduler-appointment-15min-recurrence-padding-right; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: $material-scheduler-appointment-15min-icon-font-size; + top: $material-scheduler-appointment-15min-icon-top; + right: $material-scheduler-appointment-15min-icon-right; + } + } + + @if $size == "default" { + .dx-scheduler-appointment-10min { + &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { + padding-right: $material-scheduler-appointment-10min-recurrence-padding-right; + } + + .dx-scheduler-appointment-title { + line-height: $material-scheduler-appointment-10min-title-line-height; + } + + .dx-scheduler-appointment-recurrence-icon { + font-size: $material-scheduler-appointment-10min-icon-font-size; + top: $material-scheduler-appointment-10min-icon-top; + right: $material-scheduler-appointment-10min-icon-right; + } + } + } + + @if $size == "compact" { + .dx-scheduler-appointment-10min { + .dx-scheduler-appointment-content { + display: none; + } + } + + .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-title { + font-size: $material-scheduler-appointment-15min-title-font-size; + line-height: $material-scheduler-appointment-15min-title-line-height; + } + } + + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-title { + line-height: $material-scheduler-appointment-20min-title-line-height; + } + + .dx-scheduler-appointment-recurrence-icon { + top: $material-scheduler-appointment-20min-icon-top; + } + } + } } .dx-scheduler-header-panel { @@ -943,79 +1005,3 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; .dx-scheduler-header-panel-empty-cell { margin-top: 0; } - -.dx-scheduler-work-space-day, -.dx-scheduler-work-space-week, -.dx-scheduler-work-space-work-week { - .dx-scheduler-appointment-10min, - .dx-scheduler-appointment-15min { - .dx-scheduler-appointment-content { - padding: 0 7px; - } - } - - @if $size == "default" { - .dx-scheduler-appointment-10min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 14px; - } - - .dx-scheduler-appointment-title { - line-height: 12px; - } - - .dx-scheduler-appointment-recurrence-icon { - font-size: 12px; - top: 0; - right: 2px; - } - } - - .dx-scheduler-appointment-15min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 18px; - } - - .dx-scheduler-appointment-recurrence-icon { - font-size: 16px; - top: 1px; - right: 2px; - } - } - } - - @if $size == "compact" { - .dx-scheduler-appointment-10min { - .dx-scheduler-appointment-content { - display: none; - } - } - - .dx-scheduler-appointment-15min { - &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { - padding-right: 14px; - } - - .dx-scheduler-appointment-title { - font-size: 8px; - line-height: 12px; - } - - .dx-scheduler-appointment-recurrence-icon { - font-size: 12px; - top: 1px; - right: 2px; - } - } - - .dx-scheduler-appointment-20min { - .dx-scheduler-appointment-title { - line-height: 12px; - } - - .dx-scheduler-appointment-recurrence-icon { - top: 0; - } - } - } -} diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_sizes.scss index 5c6536739134..9ce522f53ecd 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_sizes.scss @@ -25,6 +25,21 @@ $material-tooltip-marker-dimension: null !default; $material-scheduler-appointment-tooltip-title-margin-top: null !default; $material-scheduler-appointment-tooltip-remove-padding-top: null !default; +$material-scheduler-appointment-short-content-padding: null !default; +$material-scheduler-appointment-10min-recurrence-padding-right: null !default; +$material-scheduler-appointment-10min-title-line-height: null !default; +$material-scheduler-appointment-10min-icon-font-size: null !default; +$material-scheduler-appointment-10min-icon-top: null !default; +$material-scheduler-appointment-10min-icon-right: null !default; +$material-scheduler-appointment-15min-recurrence-padding-right: null !default; +$material-scheduler-appointment-15min-title-font-size: null !default; +$material-scheduler-appointment-15min-title-line-height: null !default; +$material-scheduler-appointment-15min-icon-font-size: null !default; +$material-scheduler-appointment-15min-icon-top: null !default; +$material-scheduler-appointment-15min-icon-right: null !default; +$material-scheduler-appointment-20min-title-line-height: null !default; +$material-scheduler-appointment-20min-icon-top: null !default; + $scheduler-left-column-width: 65px !default; $material-scheduler-timeline-date-table-cell-height: 50px !default; $material-scheduler-navigator-icon-font-size: $material-base-icon-size; @@ -116,6 +131,19 @@ $scheduler-timeline-cell-height: 50px !default; $material-scheduler-recurrence-end-item-height: 32px !default; $agenda-appointment-title-font-size: 14px; + + $material-scheduler-appointment-short-content-padding: 0 7px !default; + + $material-scheduler-appointment-10min-recurrence-padding-right: 14px !default; + $material-scheduler-appointment-10min-title-line-height: 12px !default; + $material-scheduler-appointment-10min-icon-font-size: 12px !default; + $material-scheduler-appointment-10min-icon-top: 0 !default; + $material-scheduler-appointment-10min-icon-right: 2px !default; + + $material-scheduler-appointment-15min-recurrence-padding-right: 18px !default; + $material-scheduler-appointment-15min-icon-font-size: 16px !default; + $material-scheduler-appointment-15min-icon-top: 1px !default; + $material-scheduler-appointment-15min-icon-right: 2px !default; } @else if $size == "compact" { @@ -167,4 +195,16 @@ $scheduler-timeline-cell-height: 50px !default; $material-scheduler-recurrence-end-item-height: 32px !default; $agenda-appointment-title-font-size: 13px; + + $material-scheduler-appointment-short-content-padding: 0 7px !default; + + $material-scheduler-appointment-15min-recurrence-padding-right: 14px !default; + $material-scheduler-appointment-15min-title-font-size: 8px !default; + $material-scheduler-appointment-15min-title-line-height: 14px !default; + $material-scheduler-appointment-15min-icon-font-size: 12px !default; + $material-scheduler-appointment-15min-icon-top: 1px !default; + $material-scheduler-appointment-15min-icon-right: 2px !default; + + $material-scheduler-appointment-20min-title-line-height: 12px !default; + $material-scheduler-appointment-20min-icon-top: 0 !default; } diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index 696df9030100..9a9a0d8213eb 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -15,6 +15,7 @@ import { ALL_DAY_APPOINTMENT_CLASS, APPOINTMENT_10MIN_CLASS, APPOINTMENT_15MIN_CLASS, + APPOINTMENT_20MIN_CLASS, APPOINTMENT_CONTENT_CLASSES, APPOINTMENT_DRAG_SOURCE_CLASS, APPOINTMENT_HAS_RESOURCE_COLOR_CLASS, @@ -254,6 +255,9 @@ export class Appointment extends DOMComponent { case durationMinutes <= 15: (this.$element() as any).addClass(APPOINTMENT_15MIN_CLASS); break; + case durationMinutes <= 20: + (this.$element() as any).addClass(APPOINTMENT_20MIN_CLASS); + break; default: break; } diff --git a/packages/devextreme/js/__internal/scheduler/m_classes.ts b/packages/devextreme/js/__internal/scheduler/m_classes.ts index f9120b1f4155..cf378a48d77b 100644 --- a/packages/devextreme/js/__internal/scheduler/m_classes.ts +++ b/packages/devextreme/js/__internal/scheduler/m_classes.ts @@ -5,6 +5,7 @@ export const RECURRENCE_APPOINTMENT_CLASS = 'dx-scheduler-appointment-recurrence export const EMPTY_APPOINTMENT_CLASS = 'dx-scheduler-appointment-empty'; export const APPOINTMENT_10MIN_CLASS = 'dx-scheduler-appointment-10min'; export const APPOINTMENT_15MIN_CLASS = 'dx-scheduler-appointment-15min'; +export const APPOINTMENT_20MIN_CLASS = 'dx-scheduler-appointment-20min'; export const ALL_DAY_APPOINTMENT_CLASS = 'dx-scheduler-all-day-appointment'; export const REDUCED_APPOINTMENT_PARTS_CLASSES = { head: 'dx-scheduler-appointment-head', From b69252085e4d5f266b30fa6449fe6b3cef16a763 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Fri, 14 Nov 2025 14:36:55 +0100 Subject: [PATCH 09/19] css: fix 20 min compact fluent appt --- .../scss/widgets/fluent/scheduler/_index.scss | 11 +++++++++++ .../scss/widgets/fluent/scheduler/_sizes.scss | 6 ++++++ 2 files changed, 17 insertions(+) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index dff2de728ae5..3b25a1134740 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -219,6 +219,12 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } } + .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-title { + line-height: $fluent-scheduler-appointment-20min-title-line-height; + } + } + @if $size == "default" { .dx-scheduler-appointment-10min { &.dx-scheduler-appointment-recurrence .dx-scheduler-appointment-content { @@ -247,6 +253,11 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } .dx-scheduler-appointment-20min { + .dx-scheduler-appointment-content { + padding: $fluent-scheduler-appointment-short-content-padding; + padding-right: $fluent-scheduler-appointment-20min-recurrence-padding-right; + } + .dx-scheduler-appointment-recurrence-icon { top: $fluent-scheduler-appointment-20min-icon-top; right: $fluent-scheduler-appointment-20min-icon-right; diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss index c51741f47e4d..a8008de8bd18 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss @@ -51,7 +51,9 @@ $fluent-scheduler-appointment-15min-icon-top: null !default; $fluent-scheduler-appointment-15min-icon-bottom: null !default; $fluent-scheduler-appointment-15min-icon-right: null !default; $fluent-scheduler-appointment-20min-icon-top: null !default; +$fluent-scheduler-appointment-20min-recurrence-padding-right: null !default; $fluent-scheduler-appointment-20min-icon-right: null !default; +$fluent-scheduler-appointment-20min-title-line-height: null !default; $scheduler-left-column-width: 65px !default; $fluent-scheduler-timeline-date-table-cell-height: 50px !default; @@ -147,6 +149,8 @@ $header-panel-time-cell-padding: null !default; $fluent-scheduler-appointment-15min-icon-font-size: 12px !default; $fluent-scheduler-appointment-15min-icon-bottom: 2px !default; $fluent-scheduler-appointment-15min-icon-right: 2px !default; + + $fluent-scheduler-appointment-20min-title-line-height: 20px !default; } @else if $size == "compact" { @@ -203,6 +207,8 @@ $header-panel-time-cell-padding: null !default; $fluent-scheduler-appointment-15min-title-line-height: 12px !default; $fluent-scheduler-appointment-15min-icon-bottom: 0 !default; + $fluent-scheduler-appointment-20min-recurrence-padding-right: 20px !default; $fluent-scheduler-appointment-20min-icon-top: 0 !default; $fluent-scheduler-appointment-20min-icon-right: 5px !default; + $fluent-scheduler-appointment-20min-title-line-height: 18px !default; } From d3cb491dc245db1a5105e963497a8c6d4a4ade0a Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 13:24:58 +0100 Subject: [PATCH 10/19] fix: fix css test --- .../devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss index a8008de8bd18..cd00121d4f0c 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss @@ -40,14 +40,12 @@ $fluent-scheduler-recurrence-end-item-height: null !default; $fluent-scheduler-appointment-short-content-padding: null !default; $fluent-scheduler-appointment-10min-recurrence-padding-right: null !default; -$fluent-scheduler-appointment-10min-title-line-height: null !default; $fluent-scheduler-appointment-10min-icon-font-size: null !default; $fluent-scheduler-appointment-10min-icon-top: null !default; $fluent-scheduler-appointment-10min-icon-right: null !default; $fluent-scheduler-appointment-15min-recurrence-padding-right: null !default; $fluent-scheduler-appointment-15min-title-line-height: null !default; $fluent-scheduler-appointment-15min-icon-font-size: null !default; -$fluent-scheduler-appointment-15min-icon-top: null !default; $fluent-scheduler-appointment-15min-icon-bottom: null !default; $fluent-scheduler-appointment-15min-icon-right: null !default; $fluent-scheduler-appointment-20min-icon-top: null !default; From 6fef033f78a9a3b13c01e6ec6c6e40b3e797035a Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 14:16:14 +0100 Subject: [PATCH 11/19] fix: fix allDay and monthly appointments render --- .../appointments/appointment/m_appointment.ts | 4 +++ .../generate_grid_view_model.ts | 2 +- .../options/get_max_level.ts | 6 ++++ .../options/get_min_appointment_size.ts | 36 +++++++++++++++---- .../options/get_panel_collector_options.ts | 15 ++++---- .../options/option_manager.ts | 1 + .../steps/add_emptiness.ts | 23 ++++++------ 7 files changed, 63 insertions(+), 24 deletions(-) diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index 9a9a0d8213eb..a9d68ae53db9 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -248,6 +248,10 @@ export class Appointment extends DOMComponent { const durationMs = new Date(endDate).getTime() - new Date(startDate).getTime(); const durationMinutes = Math.round(durationMs / (1000 * 60)); + if (durationMinutes === 0) { + return; + } + switch (true) { case durationMinutes <= 10: (this.$element() as any).addClass(APPOINTMENT_10MIN_CLASS); diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/generate_grid_view_model.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/generate_grid_view_model.ts index 0a4c41219567..b91034f26441 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/generate_grid_view_model.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/generate_grid_view_model.ts @@ -69,7 +69,7 @@ export const generateGridViewModel = ( const step6 = cropByVirtualScreen(step5, optionManager.getVirtualCropOptions()); const step7 = addDirection(step6, 'horizontal', viewOrientation); - const step8 = addEmptiness(step7, { isTimelineView, isAdaptivityEnabled }); + const step8 = addEmptiness(step7, { isTimelineView, isAdaptivityEnabled, isMonthView }); return step8; }; diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts index b80f4d86f1f3..d896a9c1c2dd 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts @@ -12,6 +12,8 @@ interface Options { viewOrientation: Orientation; isTimelineView: boolean; isAdaptivityEnabled: boolean; + isAllDayPanel?: boolean; + isMonthView?: boolean; } const ADAPTIVITY_MIN_APPOINTMENT_COUNT = 0; @@ -25,6 +27,8 @@ export const getMaxLevel = ({ viewOrientation, isTimelineView, isAdaptivityEnabled, + isAllDayPanel = false, + isMonthView = false, }: Options): number => { switch (maxAppointmentsPerCell) { case 'auto': { @@ -42,6 +46,8 @@ export const getMaxLevel = ({ isTimelineView, isAdaptivityEnabled, viewOrientation, + isAllDayPanel, + isMonthView, }); const minAbstractSize = getAbstractSizeByViewOrientation( defaultAppointmentSize, diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts index b19b745663d7..58c33c211213 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts @@ -6,10 +6,16 @@ import type { RealSize } from '../steps/add_geometry/types'; interface Options { isTimelineView: boolean; isAdaptivityEnabled: boolean; + isAllDayPanel?: boolean; + isMonthView?: boolean; } const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 12; const APPOINTMENT_DEFAULT_HEIGHT = 12; +const COMPACT_THEME_ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT = 18; +const ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT = 20; +const COMPACT_THEME_MONTH_APPOINTMENT_DEFAULT_HEIGHT = 18; +const MONTH_APPOINTMENT_DEFAULT_HEIGHT = 20; const APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH = 40; const APPOINTMENT_DEFAULT_VERTICAL_WIDTH = 50; const APPOINTMENT_MIN_HEIGHT = 35; @@ -19,15 +25,27 @@ const ADAPTIVE_APPOINTMENT_DEFAULT_WIDTH = 30; // used for vertical view // TODO get rid of depending from themes const isCompactTheme = (): boolean => (currentTheme() || '').split('.').pop() === 'compact'; -const getMinAppointmentHeightByTheme = (): number => ( - isCompactTheme() +const getMinAppointmentHeightByTheme = (isAllDayPanel = false, isMonthView = false): number => { + if (isAllDayPanel) { + return isCompactTheme() + ? COMPACT_THEME_ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT + : ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT; + } + if (isMonthView) { + return isCompactTheme() + ? COMPACT_THEME_MONTH_APPOINTMENT_DEFAULT_HEIGHT + : MONTH_APPOINTMENT_DEFAULT_HEIGHT; + } + return isCompactTheme() ? COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT - : APPOINTMENT_DEFAULT_HEIGHT -); + : APPOINTMENT_DEFAULT_HEIGHT; +}; export const getMinAppointmentSize = ({ isTimelineView, isAdaptivityEnabled, + isAllDayPanel = false, + isMonthView = false, }: Options): RealSize => { if (isAdaptivityEnabled) { return { @@ -38,7 +56,9 @@ export const getMinAppointmentSize = ({ return { width: APPOINTMENT_MIN_WIDTH, - height: isTimelineView ? APPOINTMENT_MIN_HEIGHT : getMinAppointmentHeightByTheme(), + height: isTimelineView + ? APPOINTMENT_MIN_HEIGHT + : getMinAppointmentHeightByTheme(isAllDayPanel, isMonthView), }; }; @@ -46,6 +66,8 @@ export const getDefaultAppointmentSize = ({ isTimelineView, isAdaptivityEnabled, viewOrientation, + isAllDayPanel = false, + isMonthView = false, }: Options & { viewOrientation: Orientation; }): RealSize => { @@ -60,6 +82,8 @@ export const getDefaultAppointmentSize = ({ width: viewOrientation === 'vertical' ? APPOINTMENT_DEFAULT_VERTICAL_WIDTH : APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH, - height: isTimelineView ? TIMELINE_APPOINTMENT_DEFAULT_HEIGHT : getMinAppointmentHeightByTheme(), + height: isTimelineView + ? TIMELINE_APPOINTMENT_DEFAULT_HEIGHT + : getMinAppointmentHeightByTheme(isAllDayPanel, isMonthView), }; }; diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_panel_collector_options.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_panel_collector_options.ts index ac985434b4d1..7b8a7cc0557b 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_panel_collector_options.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_panel_collector_options.ts @@ -21,6 +21,7 @@ export const getPanelCollectorOptions = (schedulerStore: Scheduler, { collectorCSS, DOMMetaData, panelName, + isMonthView, }: { DOMMetaData: { dateTableCellsMeta: RealSize[][]; @@ -32,6 +33,7 @@ export const getPanelCollectorOptions = (schedulerStore: Scheduler, { isAdaptivityEnabled: boolean; collectorCSS: CollectorCSS; panelName: PanelName; + isMonthView?: boolean; }): { allDayPanelCellSize: RealSize; cellSize: RealSize; @@ -64,21 +66,20 @@ export const getPanelCollectorOptions = (schedulerStore: Scheduler, { ? cellSize.width * ALL_DAY_COLLECTOR_WIDTH_FACTOR : 0, ); - const maxLevel = getMaxLevel({ + const maxLevelOptions = { maxAppointmentsPerCell, cellSize, collectorSize: collectorSizes.collectorWithMarginsSize, viewOrientation, isTimelineView, isAdaptivityEnabled, - }); + isAllDayPanel: panelName === 'allDayPanel', + isMonthView, + }; + const maxLevel = getMaxLevel(maxLevelOptions); const minLevel = viewOrientation === 'vertical' ? MIN_LEVEL_VERTICAL_VIEW : getMaxLevel({ + ...maxLevelOptions, maxAppointmentsPerCell: 'auto', - cellSize, - collectorSize: collectorSizes.collectorWithMarginsSize, - viewOrientation, - isTimelineView, - isAdaptivityEnabled, }); return { diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/option_manager.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/option_manager.ts index b830eae445bb..74ccbd36e673 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/option_manager.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/option_manager.ts @@ -94,6 +94,7 @@ export class OptionManager { collectorCSS, DOMMetaData: workspace.getDOMElementsMetaData(), panelName, + isMonthView, }); const { diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts index e4965e473403..89491919943e 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts @@ -4,13 +4,16 @@ import type { Empty, Geometry } from './add_geometry/types'; export const addEmptiness = ( entities: T[], - options: { isTimelineView: boolean; isAdaptivityEnabled: boolean }, -): (T & Empty)[] => { - const minSize = getMinAppointmentSize(options); - return entities.map((entity) => ({ - ...entity, - empty: !entity.isAllDayPanelOccupied && ( - entity.height < minSize.height || entity.width < minSize.width - ), - })); -}; + options: { isTimelineView: boolean; isAdaptivityEnabled: boolean; isMonthView?: boolean }, +): (T & Empty)[] => entities.map((entity) => { + const minSize = getMinAppointmentSize({ + ...options, + isAllDayPanel: entity.isAllDayPanelOccupied, + }); + return { + ...entity, + empty: !entity.isAllDayPanelOccupied && ( + entity.height < minSize.height || entity.width < minSize.width + ), + }; + }); From 3a0754936fbdfeaa4a150d2f0c06b0258c69b493 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 15:00:16 +0100 Subject: [PATCH 12/19] feat: update etalons --- ...ch-3-apr-week-view (fluent.blue.light).png | Bin 25530 -> 27190 bytes .../28-march-day-view (fluent.blue.light).png | Bin 12750 -> 14408 bytes .../29-march-day-view (fluent.blue.light).png | Bin 12380 -> 14058 bytes ...t-tooltip-template (fluent.blue.light).png | Bin 44219 -> 45708 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-3-apr-week-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-3-apr-week-view (fluent.blue.light).png index 831843a070dab9e50134ebd6cb4dc7e164eea887..5f30e2a1d893924c8f66823dffe44387e3afc744 100644 GIT binary patch literal 27190 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 literal 25530 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-day-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-day-view (fluent.blue.light).png index e0bd72439ba3867d84654fb0d8379bc2a8da4959..a1dd10429e39def5dc52ba2c8c1b7a7772568cf1 100644 GIT binary patch literal 14408 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 A0RR91 literal 12750 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ⅅ49r0MUho>M|Rz-HLSy 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 BiZ%cM diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/29-march-day-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/29-march-day-view (fluent.blue.light).png index 743d1a03cc98fb0a57f256a48a1f20e005d4f6ca..84fa88ca6dc32c83c80abf86afa919aec5da7825 100644 GIT binary patch literal 14058 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 literal 12380 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 GA^!_)T%URX diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/templates/etalons/appointment-tooltip-template (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/templates/etalons/appointment-tooltip-template (fluent.blue.light).png index 7e9fbbfcac6f50713a4eb7f845e4ca1e29620d44..f6def659755d27d59dfa62cdfe8f96d29d9ca789 100644 GIT binary patch delta 33348 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 QK7fCw#^yV7cQ~E=fAy+V-T(jq delta 31847 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 From fab4b2c58a6e0e56d77ac14be026f405d62eb459 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 15:01:24 +0100 Subject: [PATCH 13/19] fix: fix allDay appointemnts render --- .../scheduler/appointments/appointment/m_appointment.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index a9d68ae53db9..95784155471e 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -248,7 +248,7 @@ export class Appointment extends DOMComponent { const durationMs = new Date(endDate).getTime() - new Date(startDate).getTime(); const durationMinutes = Math.round(durationMs / (1000 * 60)); - if (durationMinutes === 0) { + if (durationMinutes === 0 || this.option('allDay')) { return; } From ad49b5a8f0928d29b33a04049f1785d0e4501d66 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 15:01:31 +0100 Subject: [PATCH 14/19] fix: fix jest tests --- .../view_model/generate_view_model/options/get_max_level.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts index d896a9c1c2dd..7cb233729a90 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts @@ -42,12 +42,13 @@ export const getMaxLevel = ({ return ADAPTIVITY_MIN_APPOINTMENT_COUNT; } + const detectedIsMonthView = isMonthView || (viewOrientation === 'horizontal' && !isTimelineView); const defaultAppointmentSize = getDefaultAppointmentSize({ isTimelineView, isAdaptivityEnabled, viewOrientation, isAllDayPanel, - isMonthView, + isMonthView: detectedIsMonthView, }); const minAbstractSize = getAbstractSizeByViewOrientation( defaultAppointmentSize, From 12d97be6a222899145eba74b087193a93a72173d Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 15:16:42 +0100 Subject: [PATCH 15/19] feat: update etalons --- ...end-17_first-day-0 (fluent.blue.light).png | Bin 21931 -> 24720 bytes ...end-17_first-day-0 (fluent.blue.light).png | Bin 76160 -> 93965 bytes ...end-17_first-day-0 (fluent.blue.light).png | Bin 58946 -> 71656 bytes ...end-17_first-day-3 (fluent.blue.light).png | Bin 58396 -> 70578 bytes ...735_start-9_end-17 (fluent.blue.light).png | Bin 37274 -> 39916 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_day_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_day_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png index 29b612e89c1d31788982a3c2d6272d68d6c7ec4a..db1beddae2218d30daa1632cbd0274389973d104 100644 GIT binary patch delta 11846 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_week_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_week_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png index 4c0bfcc5ff5af7efdad0123a7203a6367120cbfb..7a2c01ac6dbf1fd09b92a3b72fad95c155185ed2 100644 GIT binary patch delta 28480 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ℑWmqlV;= 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 delta 10535 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_workWeek_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_usual-appts_workWeek_offset--735_start-9_end-17_first-day-0 (fluent.blue.light).png index 84ea08ff89b9dc1864a51e33e74c01fd32d83218..a02ad69f94b3a4c9d7d66513a4c4f6b6fd064924 100644 GIT binary patch delta 16264 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 F{|EPcxKjWC delta 3457 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_virtual-scrolling_week_offset--735_start-9_end-17 (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/viewOffset/markup/etalons/view_markup_virtual-scrolling_week_offset--735_start-9_end-17 (fluent.blue.light).png index c84c1192a9e67d4ecabd4a1d79d3dc5b89dffe0c..c1650e19c23462eda6189c142afc8cc0de7e2d90 100644 GIT binary patch delta 14214 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 Y5Sn2BJTgvU_trm`SB#$g7i+?uRsaA1 delta 11552 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 Cb5Xzm From b618cce25a0f44e5637b78f5380bf61ba5e8785b Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Mon, 17 Nov 2025 17:10:47 +0100 Subject: [PATCH 16/19] feat: update etalons --- ...ch-3-apr-week-view (fluent.blue.light).png | Bin 27190 -> 25530 bytes .../28-march-day-view (fluent.blue.light).png | Bin 14408 -> 12750 bytes .../29-march-day-view (fluent.blue.light).png | Bin 14058 -> 12380 bytes ...t-tooltip-template (fluent.blue.light).png | Bin 45708 -> 44219 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-3-apr-week-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-3-apr-week-view (fluent.blue.light).png index 5f30e2a1d893924c8f66823dffe44387e3afc744..831843a070dab9e50134ebd6cb4dc7e164eea887 100644 GIT binary patch literal 25530 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 literal 27190 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-day-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/28-march-day-view (fluent.blue.light).png index a1dd10429e39def5dc52ba2c8c1b7a7772568cf1..e0bd72439ba3867d84654fb0d8379bc2a8da4959 100644 GIT binary patch literal 12750 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ⅅ49r0MUho>M|Rz-HLSy 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 BiZ%cM literal 14408 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 A0RR91 diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/29-march-day-view (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/appointments/allDay/etalons/29-march-day-view (fluent.blue.light).png index 84fa88ca6dc32c83c80abf86afa919aec5da7825..743d1a03cc98fb0a57f256a48a1f20e005d4f6ca 100644 GIT binary patch literal 12380 zcmeHucT`jP+Ac+4q=bVbAT5ko=pZ1yiGYZ7=^aFxbV4siL5g$%K_Ey`IvARC2pH)Q zI?_Us5^5-+1PI|q=iD>joH^^RyVjX|?#%biKkwS>xAyvF?|0{Yp7(j)yoIpfG!u_fRtIq#M_sXrxUV6vv{A_N4-6!kn+E4Ks`CvE_e8`Af3O&yp!ip#Y~!RlyiZvNr+4MZ*?gQ!SkiI3~icmf)8yaWtxTfT!E?cofbpiJP#vaW)3& zB%FKhwQczm2Z!YrR326FOy&^Gdgesf)bHCiCtuEKIXFCJi0SBFQU6=PfAa{uy?vE~ zqw~jvPCOF-^Pz-l|C_B^sK-{PxP*gWsbpPSJh-V{VMO@2eY&Z>zBhU9z3pCftv?8q z%FT&tJjcr`DJjKqx`(90WjmIc?Mp7c+f6=)opyqEXeBW5Zxxl4o;J_Nb3a&wvj)S%yfck)g*=}73b^W4-zwrjST)pB06*%i&> zd87v5i>19ySuRmNyW8G~G(FU!zBPNP_T+4j2|oh%jQWDlI1lr|OA=C8JtvrT^&%vB z?aiyyQfl7f1>v!w$k23~Cz3daXw!pBb1S5aq zN0-rhFc_Pog_yQPoa)`8wl%mSdihdVd*uVrz7m*i9Pk{Tg|opg$)6laoKl=WTi-sH zRZ?o%iXu86hwW0Iuh!39U30&iPvI+BY~WwS!*!){3I<0g^rwA{nsW_jAKg!}w61uO z%UW5Z=P^jM{LJtJo=Mf-Y9B2zlHZz=vKD;%5zJ!Id2LhkLHK~6w!4h-vjy0(w98+K@b)Ipi5lOL+#|2;$UMC4&EDz>hIOch zyMon)nz|mnjEsalYZd>nygD1%U}8PEOx1j~mrAs;QKcFuX3kKi(p)?6{&|g@l|9T3 z&}Xlrz6L7hdCpBCeGO0mTB*LH;2jXQ?jB)!WL4L6|2bi^7p>xDvX8)ex@FXB3^F;L zR`puV;$JOs^e|x+G|VC5(;wsH+GmSI|Zyd>g>9+ebuF|(RjYzg1pI;wx_6#vej(X_Fv zqnB5Y3|7okb%t)lRhlpEZ9s4F`4`SEWQs#YB+q0&n9C`~Kkh-VnBtsa10{x*_GNbo z6=D6HdTS}w*@b-&ye2w}9e}!jsOs&{IC`^pW5m3s_Gm2=94kJHB^J~_otc=mr@T#3 zJ8|NGI9V3Q3WD8VwRek&-xKAB6-&<8n0@f5Nx#Lc<^NDejw*?c!n@Z-*Z#KS+GR2V z3<{H2nySg-UpRs@F(stMVOO0{hO6rLu$R+!X`bTjw|6~gbmwe`O&8lg66=5LT0iy< zNTQQ-d9x|i-Vq zaMZV`k@SR(klPm*T8J~h8b|r`R6BAr4tO{&lE7ViH+Oz$pto%!Ri1p;OBa!)Q54VI za0Vo!rPpV)`*B@TD6HG74MEuiKBxTf6iCRJr_^IE3RJyc zi=7iD0#|7Rkra7ckv_~%^;XY|3hSjwl|1uB>^3H3I~k^Cd{-oEgoNx?R&8}=V&y!Q zOMi3YDYltTp7~5twO|(Ie!xd1GrGpaduAF$Ko)D?_y$-{_LI73Lg^+0j31Dr#Oea# zDAGe&nxrkVdHnAx7<*f9Cm1*0g+BA~xv!DB>>6K5HKN)Ni3&-{m&@hW8rj-0GTjzQ z2OQ6`q)O`U4({8C%{BKn2gHVjs624?ZjJEushciZgEE<;3CzXGnUEukyRnVOveg_p zO&uo0yRi=%8{1Y~m`d-)COA@!xwAPPUGXQqjYR;r+%v89g^f&ecGv*Q zMbrAj)<7$HYGyLJIy?6RKjRDYP1uL|{qDxMd1h@%UyH++57;a}Tegl5^?BV6)FzZQ z=W5!nAFe)a*JTC$hR`*5%Ahp~NOWEC|3jc?>vQ+LBy!F3ukd^1;O%~&pA3HHzc!wn z{{hbU9eF7S?lyXBa`F+#DQo?!{)bZi>mz3_VzsWAZu^~?B9PfsU2AzK^bOjrs@^+8 zOOC)hnTx|6WZ|-Crz>+$vo>lECDMH>K1Mq?HQm+UDM=Ta-frm?oE8;;;VI#X5$kNT z{ursGk-5dGWs&{+KNIiaX;Z*~_c#v$D_O=DctvBt72O(8qs`Q68S94L!$Y}d40N~S zVOv|-QGG>l6mM$E>h6m*f$8bfeFUt7MU9N2b{5rf$o;|0Bv+!YeOv`JE(mLTBDoM+ z=HeQ|Flki6#Q?dboTw^AY)rMdX2ls-dgx;w#9#Uh&$S`pizFo(ZZ4r>eTe#uCVexCHfu$t7-Q?GpTieA{^(0zMOlcMBxV zGP5|57LynZKt-ll7e7S5g5lmYt6lM8Alb`dIrWn5H1t{$LyoCM@!ax|*0+T*!( zt*wvW1!Pp^{PWz+q2);UK>nx-4f1JxNJLaIRn^4-*dR-&pr93Dd8rXhmC(55TZWKZr0{QH}^viAoGfF~%6Gvv5hV zB?8ElMcz63_w3ILsEqNzi?a*EOAiV6A!@lgSfzhbC40D$LTCx0AB=$e-}|YnibMSK zBa-~uo|e;teN-*FK7J4XX$3D}d$B)Alj?G7(Co0!gPst3iXcDxh{nuxeEQJxcdjL2DqfHpM+@zdJM3i2PAy2mDIJ_{E-L2p z>%qNCkv2;-gY(jX)o|}{{cbCluur}cZ%F#-*yHo5#|;Z9fsT?5;<+CTu6P~ab?e%@ z+mA-m@vADhmG?brh9h*c^fz<}kil65H+1Zn@jK<5k^GvY_4G5l<+l6Dm{Sng{8wu7+iKmH;p0@)N^E32pw%jU5m2t z{oMGD)UL!yk4($qyL@6iz9u(+(v>DqHn{kTprC5)yl&ape)Dcx)R1h0ZjubXoqYtH zU-a-Lf$1nfi@BtOR8{p~U&a-C?y{ze3EbMO=>x=Po9ZygXeY}yuzFx8lTQkBrnhx= zv~|3##d6+as{hH|;Y^~ab4sjof-=*L^ANF6EGrc6V-T@sC&KcN|(vK#P@6b@;LS{4v z0lD+wFS)r&1UA`(oeaORC!lDpa%M}%$6Bf=O;=}dcvR)~vSR}q&}k$1-pJLtz(rwu z9$@;@zLiGbdP8UhK?%Mr17LR$0AFd*Gtqaw1TSi7=|YR6OaJ4buIjKSb#Wg9W15JW zgY4sd>Ja5TOr>SoSOA4?w&d5vq2#s`O8vHL{3=KHM#m^a1uR!-j4cW$k+QirxL0XX zj7xndB-g8+$bJ*1*S)bC=|bYO_=~=Aeyd6ByPaR8acyenFJQR#^Dg-eOzW&ExJRP} z?t8vO0daA|;J^QSK=~$Lzji>jGTcC0vR5F@t;%*W zHQLw_WZ7<=^uJ|-{@X6pR238+=#>xb&!2ogqB*q;_i1}<<2e$cyo0N8Hw&+J~? z_So8E3b?N8BR==l{xsO4`9#Wzp5TqsZ0yia1*Dc8xxqhiAj1W3+sM_m^bhUb_~5$l zcqDIyStXN`Cy>JH?@ zYqUI;hcC&#HSmhvws;!L$Urr<_9D=?roQ51JLqg1RP!u1h~efnz&brbkBnA5bLf4Z z?q$}9v<39H%Js%lD%W?Zu@DTq8tmE|L9YOa9QgUzLPGI{@B(A(JVTZy3&N|T>3oFW z@0f>?5in84=#PIb!e`KWqE@=;DwKX(um3lK>V`o;P+o3rSI;ry?wN*M+HD9M(K5lK z>tD6%=rK_yCMdK9>FhaAK6G5#x7o)c`a;VCW1Ry^%9i(qS3Z=M8|~fEl@_Hk(!cB0 zdTc1}=cp|V@b) zhUYD*T&dtFi*NpQLhIb!K&+6dX`>#>a>*%rtx6 zQQ3Id(KKCBn`jH-PikxYP`kANWRktqQj?R$7*w#iW4qONd`y7o0sqxWyd$E;^VP>N zk|)5`{g~Hyez^wU&*hCONK0F7(HZ6MPB%5d?>7|(NF1!w`dMr5ZFn^V_Z-Wv=Z953 z^Y4F5iCi~s(D=1h5};}+U1gqY#xV=>F$8_QWXiU)kjaMjd2-@(FExpr@`J1V`sx43bHRRf-MgFPrt1~5}#vs))ix^ibrS)Qp& z#+tBz*SrO^$2%tsO+l~K)aad31=iXnu!o_qdQBQ3h+u$IegdJKN3 zoFIKdV808pBEWcgagmn(88#8ZJS(mfd66)SdHlm4D6IZOup~4e*(v=Mevcd=lD^M} zGnnS=e!&UCpi}t5pC)*94gboX!%4ZE35kolRW6E1o!MFh99%+?-x%@&XY`j%2kkM* z_^$uleeYKPELu20z`z=CdKII<-q#1pI@>#lj4x>rJn)M^R*s6WtuKcEY0VsJtOQzR zK)}(ta)6~N9Ltz7vme#|RJGU8!Rem3oK+=OSbpNl;O4B=#tQ#t4=?r9Kc+t^lmOS} zf!Hlwv-)bK_yT(K#l}?2#jy4eAE|}eOcz&YmtC{-QwV=HS5{beWN1K`h<+RC-zPtv z)&vnxaB_m!T514eY0+kq)0LQ6ISPUcIB+VD3`vE0dMrFc2E0O9O2QwJmBK#vpc&q& zDvtd|&6q#R>onvEh%SYI>E`B^l2qZ7#M%T6G9Cl4D=pQ(-1_tAhrjddKOFdZC*DxyUa^J>9@1Z;%|M%}L#aP)8*k6x>s!|r8s6KGEeLjhnt4cY|XN`#~ z)Xd5?{N~+U--+chzCvC2z#)SPL>UF3rDu~OyRD%p?UcsIMhWD8Kxtyv51A`nc0UI+ z_LCGassY#kwQIKU;sdv;`a@83|m|A?tdC%{I|gMK_I#^7(*_7Bo~SoMp?FW)#m}pw465L z>+AiK*s_M!1Tn)UsS@H`FaL#aRWK&qgjw;HOT$c5osB@6-Cr>p@2XPua`;F*nCPk=ygM435XR2DLukwS8JHls(zpHr{VK@!If8b)&P}_K5U3 zvl|~h>r6lv%XC4Vr{hbY7H>m`uOO_0Dw=G|>r=Dz^vuN6*LwVsr0JcXC;SJL_QfF- z`3Q&MVQ$JeIAQKcXu_~kLFSpjf&oh_Z;AIj&lemS4{ek0w-zR zq_L;CQ{P%{N*MK5R2t|I>CWY$0jssF(f@E5oDw)^oHrxpCsU5W`(BFL`3A&-(CydY7=sR zpx9a$EG^KaU^v@S_>W5PKr5O{MxiugR*Etb^LJz>LMd3*uL6bZ6jLt?zYp{2O3VrK zT1^1(Tn{Dp*KP$0e^w+XD^(zO)V_1BK z!u6&N38#KQF0HR8JgMwgVGrsV+JpLUqshpBoWohMA#|iJ+H*klDHj_-bX+;K7-qwDx30Ck3cq|hAM8LqL5-aQWa@db%Xj_ zrPx_j!s|hUB|MtfQ0huQsY*2i1&f(?OIXC21mcRF#kpp&kRv(2)8>El#UFP4L+vyaBCGj(be1fA|*IZ<4X+SWgKCf6yG zDF!i6EVv03xP?U8Ozretq>%2UP8|>~Ot{{B{pH=HPIkkwU)}j%!$e%13#mkpD(wkqXMY+{O^r$ zZfY>6cN1&fR7Av5+)uQ43k(ZqMDKOxT{~oVsW|SII%{+T`B&uXj)^wsTZ>WfWT%N_ zDVTrJ)7$BXkQe&rrwL^kHW?gYi|m+#4i~nuF(^b#O1;$;iq)77l$<*E6;HA`@xDJila> z5gPD1dXX5O7rnG{QCf)9?(^Y~>3Pw7G~9YZSF&t8D*F$2BQgGW!mh8`uJ48vheglS zF$Xo_Ia?s`G{b>PpDhN%PEp9_?r{N&`rL8MN2v`SD`An<7_XeE`8qf7Fds#Ip= zPghkRK7VmtmF!aDb^81F6ZQTx3)!6_bZvs>-|GlWVsic5BR1kxgYeY=k*cz$(uccN GA^!_)T%URX literal 14058 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 diff --git a/e2e/testcafe-devextreme/tests/scheduler/common/layout/templates/etalons/appointment-tooltip-template (fluent.blue.light).png b/e2e/testcafe-devextreme/tests/scheduler/common/layout/templates/etalons/appointment-tooltip-template (fluent.blue.light).png index f6def659755d27d59dfa62cdfe8f96d29d9ca789..7e9fbbfcac6f50713a4eb7f845e4ca1e29620d44 100644 GIT binary patch delta 31847 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 delta 33348 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 QK7fCw#^yV7cQ~E=fAy+V-T(jq From 4fc47a11406c3ccdd672093ea27641c85c7f4c63 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 18 Nov 2025 14:17:57 +0100 Subject: [PATCH 17/19] feat: try to apply classes via height and optimize --- .../scss/widgets/fluent/scheduler/_index.scss | 6 -- .../widgets/material/scheduler/_index.scss | 6 -- .../appointments/appointment/m_appointment.ts | 47 +++++---- .../options/get_max_level.ts | 7 -- .../options/get_min_appointment_size.ts | 55 ++++------- .../steps/add_emptiness.test.ts | 96 +++++++++++++++---- .../steps/add_emptiness.ts | 13 ++- 7 files changed, 138 insertions(+), 92 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index 3b25a1134740..115e955107e2 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -240,12 +240,6 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } @if $size == "compact" { - .dx-scheduler-appointment-10min { - .dx-scheduler-appointment-content { - display: none; - } - } - .dx-scheduler-appointment-15min { .dx-scheduler-appointment-title { line-height: $fluent-scheduler-appointment-15min-title-line-height; diff --git a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss index faabee4d5eeb..fa91e2e47ff8 100644 --- a/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/material/scheduler/_index.scss @@ -210,12 +210,6 @@ $material-scheduler-agenda-time-panel-cell-padding: 8px; } @if $size == "compact" { - .dx-scheduler-appointment-10min { - .dx-scheduler-appointment-content { - display: none; - } - } - .dx-scheduler-appointment-15min { .dx-scheduler-appointment-title { font-size: $material-scheduler-appointment-15min-title-font-size; diff --git a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts index 95784155471e..3000c9569800 100644 --- a/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts +++ b/packages/devextreme/js/__internal/scheduler/appointments/appointment/m_appointment.ts @@ -9,6 +9,10 @@ import type { dxElementWrapper } from '@js/core/renderer'; import $ from '@js/core/renderer'; import { extend } from '@js/core/utils/extend'; import Resizable from '@js/ui/resizable'; +import { + current, + isCompact, +} from '@js/ui/themes'; import { hide, show } from '@ts/ui/tooltip/m_tooltip'; import { @@ -159,7 +163,7 @@ export class Appointment extends DOMComponent { this._renderAppointmentGeometry(); this._renderAriaLabel(); this._renderEmptyClass(); - this._renderShortAppointmentClass(); + this._renderAppointmentDurationClass(); this._renderReducedAppointment(); this._renderAllDayClass(); this._renderDragSourceClass(); @@ -231,35 +235,46 @@ export class Appointment extends DOMComponent { } } - _renderShortAppointmentClass() { + _renderAppointmentDurationClass() { + const theme = current(); const geometry: any = this.option('geometry'); - if (!geometry || geometry.empty) { + if (!geometry || geometry.empty || this.option('allDay') || !theme) { return; } - const startDate = this.dataAccessors.get('startDate', this.rawAppointment); - const endDate = this.dataAccessors.get('endDate', this.rawAppointment); + const themeType = theme.split('.')[0]; - if (!startDate || !endDate) { - return; + interface AppointmentClassThresholds { + default: { 10: number; 15: number; 20: number }; + compact: { 10: number; 15: number; 20: number }; } + const themeThresholds: Record = { + fluent: { + default: { 10: 14, 15: 20, 20: 26 }, + compact: { 10: 10, 15: 15, 20: 19 }, + }, + material: { + default: { 10: 13, 15: 20, 20: 26 }, + compact: { 10: 10, 15: 15, 20: 19 }, + }, + generic: { + default: { 10: 17, 15: 26, 20: 34 }, + compact: { 10: 13, 15: 19, 20: 25 }, + }, + }; - const durationMs = new Date(endDate).getTime() - new Date(startDate).getTime(); - const durationMinutes = Math.round(durationMs / (1000 * 60)); - - if (durationMinutes === 0 || this.option('allDay')) { - return; - } + const thresholds = themeThresholds[themeType][isCompact(theme) ? 'compact' : 'default']; + const { height } = geometry; switch (true) { - case durationMinutes <= 10: + case height < thresholds[10]: (this.$element() as any).addClass(APPOINTMENT_10MIN_CLASS); break; - case durationMinutes <= 15: + case height < thresholds[15]: (this.$element() as any).addClass(APPOINTMENT_15MIN_CLASS); break; - case durationMinutes <= 20: + case height < thresholds[20]: (this.$element() as any).addClass(APPOINTMENT_20MIN_CLASS); break; default: diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts index 7cb233729a90..b80f4d86f1f3 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_max_level.ts @@ -12,8 +12,6 @@ interface Options { viewOrientation: Orientation; isTimelineView: boolean; isAdaptivityEnabled: boolean; - isAllDayPanel?: boolean; - isMonthView?: boolean; } const ADAPTIVITY_MIN_APPOINTMENT_COUNT = 0; @@ -27,8 +25,6 @@ export const getMaxLevel = ({ viewOrientation, isTimelineView, isAdaptivityEnabled, - isAllDayPanel = false, - isMonthView = false, }: Options): number => { switch (maxAppointmentsPerCell) { case 'auto': { @@ -42,13 +38,10 @@ export const getMaxLevel = ({ return ADAPTIVITY_MIN_APPOINTMENT_COUNT; } - const detectedIsMonthView = isMonthView || (viewOrientation === 'horizontal' && !isTimelineView); const defaultAppointmentSize = getDefaultAppointmentSize({ isTimelineView, isAdaptivityEnabled, viewOrientation, - isAllDayPanel, - isMonthView: detectedIsMonthView, }); const minAbstractSize = getAbstractSizeByViewOrientation( defaultAppointmentSize, diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts index 58c33c211213..0da8dcdd8852 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/options/get_min_appointment_size.ts @@ -6,16 +6,13 @@ import type { RealSize } from '../steps/add_geometry/types'; interface Options { isTimelineView: boolean; isAdaptivityEnabled: boolean; - isAllDayPanel?: boolean; isMonthView?: boolean; + isAllDayAppointment?: boolean; } -const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 12; -const APPOINTMENT_DEFAULT_HEIGHT = 12; -const COMPACT_THEME_ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT = 18; -const ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT = 20; -const COMPACT_THEME_MONTH_APPOINTMENT_DEFAULT_HEIGHT = 18; -const MONTH_APPOINTMENT_DEFAULT_HEIGHT = 20; +const COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT = 18; +const APPOINTMENT_DEFAULT_HEIGHT = 20; +const DAY_VIEW_APPOINTMENT_MIN_HEIGHT = 12; const APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH = 40; const APPOINTMENT_DEFAULT_VERTICAL_WIDTH = 50; const APPOINTMENT_MIN_HEIGHT = 35; @@ -25,28 +22,22 @@ const ADAPTIVE_APPOINTMENT_DEFAULT_WIDTH = 30; // used for vertical view // TODO get rid of depending from themes const isCompactTheme = (): boolean => (currentTheme() || '').split('.').pop() === 'compact'; -const getMinAppointmentHeightByTheme = (isAllDayPanel = false, isMonthView = false): number => { - if (isAllDayPanel) { - return isCompactTheme() - ? COMPACT_THEME_ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT - : ALL_DAY_APPOINTMENT_DEFAULT_HEIGHT; - } - if (isMonthView) { - return isCompactTheme() - ? COMPACT_THEME_MONTH_APPOINTMENT_DEFAULT_HEIGHT - : MONTH_APPOINTMENT_DEFAULT_HEIGHT; - } - return isCompactTheme() +const getMinAppointmentHeightByTheme = (): number => ( + isCompactTheme() ? COMPACT_THEME_APPOINTMENT_DEFAULT_HEIGHT - : APPOINTMENT_DEFAULT_HEIGHT; + : APPOINTMENT_DEFAULT_HEIGHT +); + +const getVerticalViewMinHeight = (options: Options): number => { + if (options.isMonthView || options.isAllDayAppointment) { + return getMinAppointmentHeightByTheme(); + } + + return DAY_VIEW_APPOINTMENT_MIN_HEIGHT; }; -export const getMinAppointmentSize = ({ - isTimelineView, - isAdaptivityEnabled, - isAllDayPanel = false, - isMonthView = false, -}: Options): RealSize => { +export const getMinAppointmentSize = (options: Options): RealSize => { + const { isTimelineView, isAdaptivityEnabled } = options; if (isAdaptivityEnabled) { return { width: ADAPTIVE_APPOINTMENT_DEFAULT_WIDTH, @@ -54,11 +45,11 @@ export const getMinAppointmentSize = ({ }; } + const verticalSize = getVerticalViewMinHeight(options); + return { width: APPOINTMENT_MIN_WIDTH, - height: isTimelineView - ? APPOINTMENT_MIN_HEIGHT - : getMinAppointmentHeightByTheme(isAllDayPanel, isMonthView), + height: isTimelineView ? APPOINTMENT_MIN_HEIGHT : verticalSize, }; }; @@ -66,8 +57,6 @@ export const getDefaultAppointmentSize = ({ isTimelineView, isAdaptivityEnabled, viewOrientation, - isAllDayPanel = false, - isMonthView = false, }: Options & { viewOrientation: Orientation; }): RealSize => { @@ -82,8 +71,6 @@ export const getDefaultAppointmentSize = ({ width: viewOrientation === 'vertical' ? APPOINTMENT_DEFAULT_VERTICAL_WIDTH : APPOINTMENT_DEFAULT_HORIZONTAL_WIDTH, - height: isTimelineView - ? TIMELINE_APPOINTMENT_DEFAULT_HEIGHT - : getMinAppointmentHeightByTheme(isAllDayPanel, isMonthView), + height: isTimelineView ? TIMELINE_APPOINTMENT_DEFAULT_HEIGHT : getMinAppointmentHeightByTheme(), }; }; diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts index 3357d0583ea6..7ef0df742b5a 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts @@ -3,37 +3,93 @@ import { describe, expect, it } from '@jest/globals'; import { addEmptiness } from './add_emptiness'; describe('addEmptiness', () => { - it('should return set empty for timeline view', () => { + it('should set empty for timeline view when height is below min threshold', () => { expect(addEmptiness([ - { height: 34, width: 41 }, - { height: 36, width: 41 }, - ] as any, { isTimelineView: true, isAdaptivityEnabled: false })).toEqual([ - { height: 34, width: 41, empty: true }, - { height: 36, width: 41, empty: false }, + { + height: 34, width: 41, allDay: false, isAllDayPanelOccupied: false, + }, + { + height: 36, width: 41, allDay: false, isAllDayPanelOccupied: false, + }, + ] as any, { isTimelineView: true, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ + { + height: 34, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: true, + }, + { + height: 36, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, + }, + ]); + }); + + it('should use reduced min height for day and week views', () => { + expect(addEmptiness([ + { + height: 10, width: 39, allDay: false, isAllDayPanelOccupied: false, + }, + { + height: 14, width: 41, allDay: false, isAllDayPanelOccupied: false, + }, + ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ + { + height: 10, width: 39, allDay: false, isAllDayPanelOccupied: false, empty: true, + }, + { + height: 14, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, + }, + ]); + }); + + it('should keep legacy min height for month view', () => { + expect(addEmptiness([ + { + height: 19, width: 41, allDay: false, isAllDayPanelOccupied: false, + }, + { + height: 22, width: 41, allDay: false, isAllDayPanelOccupied: false, + }, + ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: true })).toEqual([ + { + height: 19, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: true, + }, + { + height: 22, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, + }, ]); }); - it('should return set empty for general view', () => { + it('should keep legacy min height for allDay appointments placed in regular panel', () => { expect(addEmptiness([ - { height: 34, width: 39 }, - { height: 36, width: 41 }, - { height: 20, width: 20, isAllDayPanelOccupied: true }, - ] as any, { isTimelineView: false, isAdaptivityEnabled: false })).toEqual([ - { height: 34, width: 39, empty: true }, - { height: 36, width: 41, empty: false }, { - height: 20, width: 20, isAllDayPanelOccupied: true, empty: false, + height: 15, width: 41, allDay: true, isAllDayPanelOccupied: false, + }, + { + height: 25, width: 41, allDay: true, isAllDayPanelOccupied: false, + }, + ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ + { + height: 15, width: 41, allDay: true, isAllDayPanelOccupied: false, empty: true, + }, + { + height: 25, width: 41, allDay: true, isAllDayPanelOccupied: false, empty: false, }, ]); }); - it('should return set empty for adaptivity view', () => { + it('should respect adaptivity min size', () => { expect(addEmptiness([ - { height: 25, width: 40 }, - { height: 30, width: 40 }, - ] as any, { isTimelineView: false, isAdaptivityEnabled: true })).toEqual([ - { height: 25, width: 40, empty: true }, - { height: 30, width: 40, empty: false }, + { + height: 25, width: 40, allDay: false, isAllDayPanelOccupied: false, + }, + { + height: 30, width: 40, allDay: false, isAllDayPanelOccupied: false, + }, + ] as any, { isTimelineView: false, isAdaptivityEnabled: true, isMonthView: false })).toEqual([ + { + height: 25, width: 40, allDay: false, isAllDayPanelOccupied: false, empty: true, + }, + { + height: 30, width: 40, allDay: false, isAllDayPanelOccupied: false, empty: false, + }, ]); }); }); diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts index 89491919943e..37acb1c1dc1f 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.ts @@ -2,14 +2,21 @@ import type { AllDayPanelOccupation } from '../../types'; import { getMinAppointmentSize } from '../options/get_min_appointment_size'; import type { Empty, Geometry } from './add_geometry/types'; -export const addEmptiness = ( +interface AddEmptinessOptions { + isTimelineView: boolean; + isAdaptivityEnabled: boolean; + isMonthView: boolean; +} + +export const addEmptiness = ( entities: T[], - options: { isTimelineView: boolean; isAdaptivityEnabled: boolean; isMonthView?: boolean }, + options: AddEmptinessOptions, ): (T & Empty)[] => entities.map((entity) => { const minSize = getMinAppointmentSize({ ...options, - isAllDayPanel: entity.isAllDayPanelOccupied, + isAllDayAppointment: entity.allDay, }); + return { ...entity, empty: !entity.isAllDayPanelOccupied && ( From 7964bb1390423434b358b1d05b396eaab9bf644a Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 18 Nov 2025 14:25:32 +0100 Subject: [PATCH 18/19] test: undo changes to test add_emptiness --- .../steps/add_emptiness.test.ts | 90 ++++--------------- 1 file changed, 17 insertions(+), 73 deletions(-) diff --git a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts index 7ef0df742b5a..e038204cfaa2 100644 --- a/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts +++ b/packages/devextreme/js/__internal/scheduler/view_model/generate_view_model/steps/add_emptiness.test.ts @@ -3,93 +3,37 @@ import { describe, expect, it } from '@jest/globals'; import { addEmptiness } from './add_emptiness'; describe('addEmptiness', () => { - it('should set empty for timeline view when height is below min threshold', () => { + it('should return set empty for timeline view', () => { expect(addEmptiness([ - { - height: 34, width: 41, allDay: false, isAllDayPanelOccupied: false, - }, - { - height: 36, width: 41, allDay: false, isAllDayPanelOccupied: false, - }, + { height: 34, width: 41 }, + { height: 36, width: 41 }, ] as any, { isTimelineView: true, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ - { - height: 34, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: true, - }, - { - height: 36, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, - }, + { height: 34, width: 41, empty: true }, + { height: 36, width: 41, empty: false }, ]); }); - it('should use reduced min height for day and week views', () => { + it('should return set empty for general view', () => { expect(addEmptiness([ - { - height: 10, width: 39, allDay: false, isAllDayPanelOccupied: false, - }, - { - height: 14, width: 41, allDay: false, isAllDayPanelOccupied: false, - }, + { height: 34, width: 39 }, + { height: 36, width: 41 }, + { height: 20, width: 20, isAllDayPanelOccupied: true }, ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ + { height: 34, width: 39, empty: true }, + { height: 36, width: 41, empty: false }, { - height: 10, width: 39, allDay: false, isAllDayPanelOccupied: false, empty: true, - }, - { - height: 14, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, + height: 20, width: 20, isAllDayPanelOccupied: true, empty: false, }, ]); }); - it('should keep legacy min height for month view', () => { + it('should return set empty for adaptivity view', () => { expect(addEmptiness([ - { - height: 19, width: 41, allDay: false, isAllDayPanelOccupied: false, - }, - { - height: 22, width: 41, allDay: false, isAllDayPanelOccupied: false, - }, - ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: true })).toEqual([ - { - height: 19, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: true, - }, - { - height: 22, width: 41, allDay: false, isAllDayPanelOccupied: false, empty: false, - }, - ]); - }); - - it('should keep legacy min height for allDay appointments placed in regular panel', () => { - expect(addEmptiness([ - { - height: 15, width: 41, allDay: true, isAllDayPanelOccupied: false, - }, - { - height: 25, width: 41, allDay: true, isAllDayPanelOccupied: false, - }, - ] as any, { isTimelineView: false, isAdaptivityEnabled: false, isMonthView: false })).toEqual([ - { - height: 15, width: 41, allDay: true, isAllDayPanelOccupied: false, empty: true, - }, - { - height: 25, width: 41, allDay: true, isAllDayPanelOccupied: false, empty: false, - }, - ]); - }); - - it('should respect adaptivity min size', () => { - expect(addEmptiness([ - { - height: 25, width: 40, allDay: false, isAllDayPanelOccupied: false, - }, - { - height: 30, width: 40, allDay: false, isAllDayPanelOccupied: false, - }, + { height: 25, width: 40 }, + { height: 30, width: 40 }, ] as any, { isTimelineView: false, isAdaptivityEnabled: true, isMonthView: false })).toEqual([ - { - height: 25, width: 40, allDay: false, isAllDayPanelOccupied: false, empty: true, - }, - { - height: 30, width: 40, allDay: false, isAllDayPanelOccupied: false, empty: false, - }, + { height: 25, width: 40, empty: true }, + { height: 30, width: 40, empty: false }, ]); }); }); From 798aff4f36b632f118c67ffbb4a6bdf39295aef5 Mon Sep 17 00:00:00 2001 From: Sergio Bur Date: Tue, 18 Nov 2025 15:53:10 +0100 Subject: [PATCH 19/19] css: fix 20 min appointment styling --- .../devextreme-scss/scss/widgets/fluent/scheduler/_index.scss | 4 ++-- .../devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss index 115e955107e2..0aca051d78a5 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_index.scss @@ -200,7 +200,8 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; } .dx-scheduler-appointment-10min, - .dx-scheduler-appointment-15min { + .dx-scheduler-appointment-15min, + .dx-scheduler-appointment-20min { .dx-scheduler-appointment-content { padding: $fluent-scheduler-appointment-short-content-padding; } @@ -248,7 +249,6 @@ $fluent-scheduler-agenda-time-panel-cell-padding: 8px; .dx-scheduler-appointment-20min { .dx-scheduler-appointment-content { - padding: $fluent-scheduler-appointment-short-content-padding; padding-right: $fluent-scheduler-appointment-20min-recurrence-padding-right; } diff --git a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss index cd00121d4f0c..3ab1c3abf665 100644 --- a/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss +++ b/packages/devextreme-scss/scss/widgets/fluent/scheduler/_sizes.scss @@ -148,7 +148,7 @@ $header-panel-time-cell-padding: null !default; $fluent-scheduler-appointment-15min-icon-bottom: 2px !default; $fluent-scheduler-appointment-15min-icon-right: 2px !default; - $fluent-scheduler-appointment-20min-title-line-height: 20px !default; + $fluent-scheduler-appointment-20min-title-line-height: 24px !default; } @else if $size == "compact" {