Skip to content

Commit

Permalink
feat(calendar): add calendar fluent styles
Browse files Browse the repository at this point in the history
  • Loading branch information
TeyaVes authored and Juveniel committed Jul 22, 2022
1 parent bb2ff70 commit 7bddac5
Show file tree
Hide file tree
Showing 9 changed files with 1,003 additions and 3 deletions.
442 changes: 442 additions & 0 deletions packages/fluent/scss/calendar/_layout.scss

Large diffs are not rendered by default.

196 changes: 196 additions & 0 deletions packages/fluent/scss/calendar/_theme.scss
@@ -0,0 +1,196 @@
@use "../core/color-system" as *;
@use "../core/mixins" as *;
@use "_variables.scss" as *;

@mixin kendo-calendar--theme() {
.k-calendar {
@include fill(
var(--kendo-calendar-text, #{$kendo-calendar-text}),
var(--kendo-calendar-bg, #{$kendo-calendar-bg}),
var(--kendo-calendar-border, #{$kendo-calendar-border}),
);

// Header / footer
.k-header {
@include fill(
var(--kendo-calendar-header-text, #{$kendo-calendar-header-text}),
var(--kendo-calendar-header-bg, #{$kendo-calendar-header-bg}),
inherit,
);
}

// Today navigation
.k-nav-today {
color: var(--kendo-calendar-today-nav-text, #{$kendo-calendar-today-nav-text});

&:hover,
&.k-hover,
&:focus,
&.k-focus {
color: var(--kendo-calendar-today-nav-hover-text, #{$kendo-calendar-today-nav-hover-text});
}
}


// Header cells
.k-calendar-th {
color: var(--kendo-calendar-header-cell-text, #{$kendo-calendar-header-cell-text});
}

.k-calendar-caption,
.k-meta-header,
.k-month-header {
color: var(--kendo-calendar-caption-color, #{$kendo-calendar-caption-color});
}


.k-calendar-td {
--INTERNAL--kendo-calendar-cell-text: var( --kendo-calendar-cell-text );
--INTERNAL--kendo-calendar-cell-bg: var( --kendo-calendar-cell-bg );

@include fill(
var( --INTERNAL--kendo-calendar-cell-text, inherit ),
var( --INTERNAL--kendo-calendar-cell-bg, inherit )
);

.k-link {
--INTERNAL--kendo-calendar-cell-link-text: var( --kendo-calendar-cell-link-text );
--INTERNAL--kendo-calendar-cell-link-bg: var( --kendo-calendar-cell-link-bg );
--INTERNAL--kendo-calendar-cell-link-shadow: var( --kendo-calendar-cell-link-shadow );

@include fill(
var( --INTERNAL--kendo-calendar-cell-link-text, inherit ),
var( --INTERNAL--kendo-calendar-cell-link-bg, inherit )
);

box-shadow: var( --INTERNAL--kendo-calendar-cell-link-shadow, none );
}

&:hover .k-link,
&.k-hover .k-link {
--INTERNAL--kendo-calendar-cell-link-text: var( --kendo-calendar-cell-hover-text, #{$kendo-calendar-cell-hover-text} );
--INTERNAL--kendo-calendar-cell-link-bg: var( --kendo-calendar-cell-hover-bg, #{$kendo-calendar-cell-hover-bg} );
}

&:focus .k-link,
&.k-focus .k-link {
--INTERNAL--kendo-calendar-cell-link-shadow: var( --kendo-calendar-cell-focus-shadow, #{$kendo-calendar-cell-focus-shadow} );
}

&.k-selected .k-link{
--INTERNAL--kendo-calendar-cell-link-text: var( --kendo-calendar-cell-selected-text, #{$kendo-calendar-cell-selected-text} );
--INTERNAL--kendo-calendar-cell-link-bg: var( --kendo-calendar-cell-selected-bg, #{$kendo-calendar-cell-selected-bg} );
--INTERNAL--kendo-calendar-cell-link-shadow: var( --kendo-calendar-cell-selected-shadow, #{$kendo-calendar-cell-selected-shadow} );
}

&.k-selected:hover .k-link,
&.k-selected.k-hover .k-link {
--INTERNAL--kendo-calendar-cell-link-text: var( --kendo-calendar-cell-selected-hover-text, #{$kendo-calendar-cell-selected-hover-text} );
--INTERNAL--kendo-calendar-cell-link-bg: var( --kendo-calendar-cell-selected-hover-bg, #{$kendo-calendar-cell-selected-hover-bg} );
}

&.k-selected:focus .k-link,
&.k-selected.k-focus .k-link {
--INTERNAL--kendo-calendar-cell-link-shadow: var( --kendo-calendar-cell-selected-focus-shadow, #{$kendo-calendar-cell-selected-focus-shadow} );
}
}

// Special days

.k-today {
--kendo-calendar-cell-link-text: var( --kendo-calendar-today-text, #{$kendo-calendar-today-text} );
--kendo-calendar-cell-link-bg: var( --kendo-calendar-today-bg, #{$kendo-calendar-today-bg} );
--kendo-calendar-cell-hover-text: var( --kendo-calendar-today-hover-text, #{$kendo-calendar-today-hover-text} );
--kendo-calendar-cell-hover-bg: var( --kendo-calendar-today-hover-bg, #{$kendo-calendar-today-hover-bg} );
}

.k-weekend {
--kendo-calendar-cell-text: var( --kendo-calendar-weekend-text, #{$kendo-calendar-weekend-text} );
--kendo-calendar-cell-bg: var( --kendo-calendar-weekend-bg, #{$kendo-calendar-weekend-bg} );
}

.k-other-month {
--kendo-calendar-cell-text: var( --kendo-calendar-other-month-text, #{$kendo-calendar-other-month-text} );
--kendo-calendar-cell-bg: var( --kendo-calendar-other-month-bg, #{$kendo-calendar-other-month-bg} );
}

.k-alt {
// remove default k-alt background color
background-color: transparent;

--kendo-calendar-cell-text: var( --kendo-calendar-week-number-text, #{$kendo-calendar-week-number-text} );
--kendo-calendar-cell-bg: var( --kendo-calendar-week-number-bg, #{$kendo-calendar-week-number-bg} );
}


// Calendar navigation
.k-calendar-navigation {
@include fill(
var( --kendo-calendar-navigation-text, #{$kendo-calendar-navigation-text} ),
var( --kendo-calendar-navigation-bg, #{$kendo-calendar-navigation-bg} ),
);
box-shadow: inset -1px 0 var( --kendo-calendar-navigation-border, #{$kendo-calendar-navigation-border} );

li:hover,
li.k-hover {
color: var( --kendo-calendar-today-nav-hover-text, #{$kendo-calendar-today-nav-hover-text} );
}
}
.k-calendar-navigation-highlight {
@include fill(
var( --kendo-calendar-text, #{$kendo-calendar-text} ),
var( --kendo-calendar-bg, #{$kendo-calendar-bg} ),
var( --kendo-calendar-border, #{$kendo-calendar-border} )
);
}


&[dir="rtl"],
.k-rtl & {
.k-calendar-navigation {
box-shadow: inset 1px 0 var( --kendo-calendar-navigation-border, #{$kendo-calendar-navigation-border} );
}
}

// Invalid
&.k-invalid,
&.k-invalid:hover,
&.ng-invalid.ng-touched,
&.ng-invalid.ng-dirty {
border-color: var( --kendo-invalid-border, inherit );
}
}


// Scheduler integration
.k-scheduler .k-calendar .k-other-month {
@include fill(
var( --kendo-calendar-other-month-text, #{$kendo-calendar-other-month-text} )
transparent
);
}

// Range Selection

.k-calendar .k-calendar-td {

&.k-range-start,
&.k-range-end,
&.k-range-mid {
--kendo-calendar-cell-bg: var( --kendo-calendar-range-bg, #{$kendo-calendar-range-bg} );
--kendo-calendar-cell-text: var( --kendo-calendar-range-text, #{$kendo-calendar-range-text} );
--kendo-calendar-cell-link-bg: transparent;
--kendo-calendar-cell-hover-bg: transparent;
--kendo-calendar-cell-selected-shadow: none;

&::before {
border-color: var( --kendo-calendar-range-border, #{$kendo-calendar-range-border} );
}
}
}

.k-out-of-range {
pointer-events: none;
visibility: hidden;
}
}

0 comments on commit 7bddac5

Please sign in to comment.