@use "../core/_index.scss" as *;
@use "./_variables.scss" as *;
@use "@progress/kendo-theme-core/scss/components/scheduler/_theme.scss" as *;

@mixin kendo-scheduler--theme() {
    @include kendo-scheduler--theme-base();

    .k-scheduler-layout td.k-selected,
    .k-scheduler-layout .k-scheduler-cell.k-selected {
        background-color: k-color(base-active);
    }

    // Agenda view
    .k-scheduler-agendaview {
        // Hover
        .k-scheduler-content tr:hover,
        .k-scheduler-content tr.k-hover,
        .k-scheduler-content .k-scheduler-row:hover,
        .k-scheduler-content .k-scheduler-row.k-hover {
            @include fill(
                k-color(on-base),
                k-color(base-hover),
                color-mix(in srgb, k-color(border) 10%, transparent)
            );
        }

        .k-scheduler-content tr:hover .k-scheduler-datecolumn,
        .k-scheduler-content tr:hover .k-scheduler-groupcolumn,
        .k-scheduler-content tr.k-hover .k-scheduler-datecolumn,
        .k-scheduler-content tr.k-hover .k-scheduler-groupcolumn {
            @include fill(
                $kendo-scheduler-text,
                $kendo-scheduler-bg,
                $kendo-scheduler-border
            );
        }

        // Selected
        .k-scheduler-content tr.k-selected {
            @include fill(
                $kendo-scheduler-selected-text,
                $kendo-scheduler-selected-bg,
                $kendo-scheduler-selected-border
            );
        }

        .k-scheduler-content tr.k-selected .k-scheduler-datecolumn,
        .k-scheduler-content tr.k-selected .k-scheduler-groupcolumn {
            background-color: $kendo-scheduler-bg;
        }
    }

    // Marquee
    .k-scheduler-marquee::before,
    .k-scheduler-marquee::after {
        border-color: $kendo-scheduler-marquee-color;
    }

    // Edit dialog
    .k-scheduler-edit-dialog {
        .k-dialog-actions {
            border-color: $kendo-scheduler-border;
        }
    }

    // Year view
    .k-scheduler-yearview {
        .k-day-indicator {
            @include fill( $bg: $kendo-scheduler-yearview-indicator-bg );
        }

        .k-selected .k-day-indicator {
            @include fill( $bg: $kendo-scheduler-yearview-indicator-selected-bg );
        }
    }

    // Tooltip
    .k-tooltip.k-scheduler-tooltip {
        @include fill(
            $kendo-scheduler-tooltip-text,
            $kendo-scheduler-tooltip-bg,
            $kendo-scheduler-tooltip-border
        );
        @include box-shadow( $kendo-scheduler-tooltip-shadow );

        .k-callout {
            @include fill( $color: $kendo-scheduler-tooltip-callout-color );
        }

        .k-tooltip-title .k-day {
            color: k-color(primary-emphasis);
        }
    }

    .k-scheduler-header {
       background-color: $kendo-scheduler-toolbar-bg;
    }
}
