364 lines
8.0 KiB
SCSS
364 lines
8.0 KiB
SCSS
|
// Timeline
|
||
|
// *******************************************************************************
|
||
|
|
||
|
@import '../../scss/_custom-variables/libs';
|
||
|
|
||
|
.timeline {
|
||
|
position: relative;
|
||
|
height: 100%;
|
||
|
width: 100%;
|
||
|
padding: 0;
|
||
|
list-style: none;
|
||
|
|
||
|
.timeline-header {
|
||
|
display: flex;
|
||
|
justify-content: space-between;
|
||
|
align-items: center;
|
||
|
flex-direction: row;
|
||
|
> *:first-child {
|
||
|
margin-right: 0.5rem;
|
||
|
}
|
||
|
}
|
||
|
// End Indicator
|
||
|
.timeline-end-indicator {
|
||
|
position: absolute;
|
||
|
bottom: -1.35rem;
|
||
|
left: -0.65rem;
|
||
|
|
||
|
i {
|
||
|
font-size: $timeline-end-indicator-font-size;
|
||
|
color: $timeline-border-color;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Timeline Item
|
||
|
.timeline-item {
|
||
|
position: relative;
|
||
|
padding-left: 1.4rem;
|
||
|
|
||
|
.timeline-event {
|
||
|
position: relative;
|
||
|
width: 100%;
|
||
|
min-height: $timeline-item-min-height;
|
||
|
background-color: $timeline-item-bg-color;
|
||
|
border-radius: $timeline-item-border-radius;
|
||
|
padding: $timeline-item-padding-y $timeline-item-padding-x $timeline-item-padding-y - 0.1625;
|
||
|
|
||
|
.timeline-event-time {
|
||
|
position: absolute;
|
||
|
top: 1.2rem;
|
||
|
font-size: $timeline-event-time-size;
|
||
|
color: $timeline-event-time-color;
|
||
|
}
|
||
|
}
|
||
|
// Timeline Point Indicator
|
||
|
|
||
|
.timeline-indicator,
|
||
|
.timeline-indicator-advanced {
|
||
|
position: absolute;
|
||
|
left: -1rem;
|
||
|
top: 0.64rem;
|
||
|
z-index: 2;
|
||
|
height: $timeline-indicator-size;
|
||
|
width: $timeline-indicator-size;
|
||
|
display: flex;
|
||
|
align-items: center;
|
||
|
justify-content: center;
|
||
|
text-align: center;
|
||
|
border-radius: 50%;
|
||
|
}
|
||
|
|
||
|
.timeline-indicator {
|
||
|
box-shadow: 0 0 0 10px $body-bg;
|
||
|
}
|
||
|
|
||
|
//For advanced Timeline Indicator Background
|
||
|
.timeline-indicator-advanced {
|
||
|
background-color: $card-bg;
|
||
|
top: 0;
|
||
|
}
|
||
|
|
||
|
.timeline-point {
|
||
|
position: absolute;
|
||
|
left: -0.38rem;
|
||
|
top: 0;
|
||
|
z-index: 2;
|
||
|
display: block;
|
||
|
height: $timeline-point-size;
|
||
|
width: $timeline-point-size;
|
||
|
border-radius: 50%;
|
||
|
background-color: $timeline-point-color;
|
||
|
box-shadow: 0 0 0 10px $card-bg;
|
||
|
}
|
||
|
|
||
|
// Transparent Timeline Item
|
||
|
&.timeline-item-transparent {
|
||
|
.timeline-event {
|
||
|
top: -0.9rem;
|
||
|
background-color: transparent;
|
||
|
|
||
|
@include ltr-style {
|
||
|
padding-left: 0;
|
||
|
}
|
||
|
|
||
|
&.timeline-event-shadow {
|
||
|
padding-left: 2rem;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Timeline outline
|
||
|
&.timeline-outline {
|
||
|
.timeline-item {
|
||
|
.timeline-point {
|
||
|
outline: unset;
|
||
|
background-color: $card-bg !important;
|
||
|
border: 2px solid $primary;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
// Timeline Center
|
||
|
&.timeline-center {
|
||
|
.timeline-end-indicator {
|
||
|
bottom: -1.4rem;
|
||
|
left: 50%;
|
||
|
margin-left: 0.55rem;
|
||
|
}
|
||
|
|
||
|
.timeline-item {
|
||
|
width: 50%;
|
||
|
clear: both;
|
||
|
&.timeline-item-left,
|
||
|
&:nth-of-type(odd):not(.timeline-item-left):not(.timeline-item-right) {
|
||
|
float: left;
|
||
|
padding-left: 0;
|
||
|
padding-right: 2.25rem;
|
||
|
padding-bottom: 2.5rem;
|
||
|
border-left: 0;
|
||
|
border-right: 1px solid $timeline-border-color;
|
||
|
.timeline-event {
|
||
|
.timeline-event-time {
|
||
|
right: -10.2rem;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.timeline-point {
|
||
|
left: 100%;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
&.timeline-item-right,
|
||
|
&:nth-of-type(even):not(.timeline-item-left):not(.timeline-item-right) {
|
||
|
float: right;
|
||
|
right: 1px;
|
||
|
padding-left: 2.25rem;
|
||
|
padding-bottom: 2.5rem;
|
||
|
border-left: 1px solid $timeline-border-color;
|
||
|
|
||
|
.timeline-event {
|
||
|
.timeline-event-time {
|
||
|
left: -10.2rem;
|
||
|
}
|
||
|
.timeline-point {
|
||
|
left: 0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.timeline-point {
|
||
|
left: 50%;
|
||
|
margin-left: -0.6875rem;
|
||
|
}
|
||
|
.timeline-point-indicator {
|
||
|
left: 50%;
|
||
|
margin-left: -0.3125rem;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// To remove arrows (visible while switching tabs) in widgets
|
||
|
&.timeline-advance {
|
||
|
.timeline-item {
|
||
|
.timeline-event {
|
||
|
&:before,
|
||
|
&:after {
|
||
|
border: transparent;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// LTR only
|
||
|
@include ltr-only {
|
||
|
.timeline:not(.timeline-center) {
|
||
|
padding-left: 0.5rem;
|
||
|
}
|
||
|
.timeline-item {
|
||
|
border-left: 1px solid $timeline-border-color;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// RTL
|
||
|
@include rtl-only {
|
||
|
.timeline:not(.timeline-center) {
|
||
|
padding-right: 0.5rem;
|
||
|
.timeline-item {
|
||
|
border-right: 1px solid $timeline-border-color;
|
||
|
}
|
||
|
|
||
|
.timeline-end-indicator {
|
||
|
left: auto;
|
||
|
right: -0.75rem;
|
||
|
}
|
||
|
|
||
|
.timeline-item {
|
||
|
padding-left: 0;
|
||
|
padding-right: 2rem;
|
||
|
border-right: 1px solid $timeline-border-color;
|
||
|
|
||
|
&.timeline-item-transparent {
|
||
|
.timeline-event {
|
||
|
padding-right: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.timeline-point {
|
||
|
right: -0.38rem;
|
||
|
left: auto;
|
||
|
}
|
||
|
.timeline-indicator {
|
||
|
right: -0.75rem;
|
||
|
left: auto;
|
||
|
}
|
||
|
.timeline-indicator-advanced {
|
||
|
right: -1rem;
|
||
|
left: auto;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@include media-breakpoint-up(md) {
|
||
|
.timeline.timeline-center .timeline-item {
|
||
|
&.timeline-item-left,
|
||
|
&:nth-of-type(odd):not(.timeline-item-left):not(.timeline-item-right) {
|
||
|
.timeline-indicator {
|
||
|
left: calc(100% - calc(#{$timeline-indicator-size}/ 2));
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
// To Change Timeline Center's Alignment om small Screen
|
||
|
|
||
|
@include media-breakpoint-down(md) {
|
||
|
.timeline {
|
||
|
&.timeline-center {
|
||
|
.timeline-end-indicator {
|
||
|
left: -2px;
|
||
|
}
|
||
|
|
||
|
.timeline-item {
|
||
|
border-right: 0 !important;
|
||
|
left: 1rem;
|
||
|
&:not(:last-child) {
|
||
|
border-left: 1px solid $timeline-border-color !important;
|
||
|
}
|
||
|
float: left !important;
|
||
|
width: 100%;
|
||
|
padding-left: 3rem !important;
|
||
|
padding-right: 1.5rem !important;
|
||
|
|
||
|
.timeline-event {
|
||
|
.timeline-event-time {
|
||
|
top: -1.7rem;
|
||
|
left: 0 !important;
|
||
|
right: auto !important;
|
||
|
}
|
||
|
}
|
||
|
.timeline-point {
|
||
|
left: -0.7rem !important;
|
||
|
margin-left: 0 !important;
|
||
|
}
|
||
|
.timeline-point-indicator {
|
||
|
left: 0 !important;
|
||
|
margin-left: -0.3125rem !important;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
// RTL: Timeline Center's Alignment om small Screen
|
||
|
@include rtl-only {
|
||
|
.timeline {
|
||
|
&.timeline-center {
|
||
|
.timeline-item {
|
||
|
border-left: 0 !important;
|
||
|
right: 1rem !important;
|
||
|
&:not(:last-child) {
|
||
|
border-right: 1px solid $timeline-border-color !important;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
.timeline-item {
|
||
|
float: right !important;
|
||
|
width: 100%;
|
||
|
padding-right: 3.5rem !important;
|
||
|
padding-left: 1.5rem !important;
|
||
|
.timeline-event {
|
||
|
.timeline-event-time {
|
||
|
top: -1.2rem;
|
||
|
right: 0 !important;
|
||
|
left: auto !important;
|
||
|
}
|
||
|
}
|
||
|
.timeline-point {
|
||
|
right: -0.7rem !important;
|
||
|
margin-right: 0 !important;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@include media-breakpoint-down(md) {
|
||
|
.timeline .timeline-item .timeline-indicator,
|
||
|
.timeline .timeline-item .timeline-indicator-advanced {
|
||
|
@include rtl-style {
|
||
|
left: auto;
|
||
|
right: -0.6875rem;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@include rtl-only {
|
||
|
.timeline-center {
|
||
|
.timeline-item {
|
||
|
padding-left: 0;
|
||
|
padding-right: 3rem;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
@include media-breakpoint-down(sm) {
|
||
|
.timeline {
|
||
|
.timeline-header {
|
||
|
flex-direction: column;
|
||
|
align-items: flex-start;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
// For Contextual Colors
|
||
|
@each $color, $value in $theme-colors {
|
||
|
@if $color !=primary and $color !=light {
|
||
|
@include template-timeline-point-variant(
|
||
|
'.timeline-point-#{$color}',
|
||
|
if($color== 'dark' and $dark-style, $light, $value)
|
||
|
);
|
||
|
@include template-timeline-indicator-variant(
|
||
|
'.timeline-indicator-#{$color}',
|
||
|
if($color== 'dark' and $dark-style, $light, $value)
|
||
|
);
|
||
|
}
|
||
|
}
|