exadel-inc/esl

View on GitHub
packages/esl-website/src/collection-grid/collection-grid.less

Summary

Maintainability
Test Coverage
@import (reference) '../common/variables.less';
 
// TODO: refactor
.collection-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
justify-content: space-around;
grid-gap: 15px 30px;
 
&-item {
display: flex;
flex-direction: column;
justify-self: center;
width: 100%;
max-width: 310px;
border: 1px solid #c8d6f0;
transition:
color 0.25s ease-in-out,
border-color 0.25s ease-in-out;
 
color: inherit;
&:hover {
text-decoration: none;
}
}
 
&-box {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
 
&-item:hover &-box {
color: @primary-blue;
}
 
&-title {
min-height: 60px;
font-size: 1.2rem;
font-weight: 600;
color: inherit;
padding: 5px 15px;
transition: color 0.25s ease-in-out;
}
&-compact &-title {
min-height: 50px;
}
 
&-item.draft &-box {
opacity: 0.3;
transition:
opacity 0.25s ease-in-out,
color 0.1s linear;
}
&-item.draft:hover &-box {
opacity: 1;
transition:
opacity 0.25s ease-in-out,
color 0.1s linear;
}
 
&-divider {
margin: 0;
border-color: #c8d6f0;
}
 
&-svg {
min-height: 200px;
padding: 20px;
 
svg {
width: 100%;
max-height: 160px;
}
}
&-compact &-svg {
min-height: 180px;
svg {
max-height: 140px;
}
}
 
&-alt {
text-align: center;
font-size: 2.25rem;
font-weight: 500;
font-family: 'Ubuntu', sans-serif;
 
color: white;
-webkit-text-stroke: 1px @nav-dark-selected;
text-shadow:
-1px -1px 0 @nav-dark-selected,
1px -1px 0 @nav-dark-selected,
-1px 1px 0 @nav-dark-selected,
1px 1px 0 @nav-dark-selected;
}
 
&-alt-small {
font-size: 1.75rem;
}
 
&-column {
grid-template-columns: repeat(2, 1fr);
}
@media @md-xl {
&-column&-compact {
grid-template-columns: repeat(4, 1fr);
}
}
 
&-column &-item {
background-color: transparent;
border-radius: 0.75rem;
border: 1px solid #c8d6f0;
max-width: 100%;
height: 100%;
flex-direction: row;
svg {
display: none;
}
 
&:hover {
.arrows-icon.right {
display: block;
border-color: @primary-blue;
}
border-color: @primary-blue;
}
}
 
&-column &-svg {
min-height: 60px;
padding: 10px;
max-width: 30px;
order: -1;
 
svg {
width: 100%;
}
}
 
&-column &-title {
border-bottom: none;
justify-content: start;
padding: 0;
}
.arrows-icon {
border: solid black;
border-width: 0 2px 2px 0;
display: none;
padding: 3px;
&:hover {
display: block;
}
}
.arrows-icon.right {
transform: rotate(-45deg);
}
 
&-bg-white &-item {
color: black;
background-color: white;
}
}