waveterm/frontend/app/mixins.scss
Evan Simkowitz 2e91ee843c
Switch from Less to Scss (#1335)
Less hasn't received an update in over a year and the parser is missing
some modern syntax like relative colors so this switches us to scss
2024-11-21 16:05:04 -08:00

269 lines
5.0 KiB
SCSS

// Copyright 2024, Command Line Inc.
// SPDX-License-Identifier: Apache-2.0
@mixin ellipsis(){
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
@mixin border-radius-mixin(){
&.border-radius-2 {
border-radius: 4px;
}
&.border-radius-3 {
border-radius: 3px;
}
&.border-radius-4 {
border-radius: 4px;
}
&.border-radius-5 {
border-radius: 5px;
}
&.border-radius-6 {
border-radius: 6px;
}
&.border-radius-7 {
border-radius: 7px;
}
&.border-radius-8 {
border-radius: 8px;
}
&.border-radius-9 {
border-radius: 9px;
}
&.border-radius-10 {
border-radius: 10px;
}
}
@mixin vertical-padding-mixin(){
&.vertical-padding-0 {
padding-top: 0px;
padding-bottom: 0px;
}
&.vertical-padding-1 {
padding-top: 1px;
padding-bottom: 1px;
}
&.vertical-padding-2 {
padding-top: 2px;
padding-bottom: 2px;
}
&.vertical-padding-3 {
padding-top: 3px;
padding-bottom: 3px;
}
&.vertical-padding-4 {
padding-top: 4px;
padding-bottom: 4px;
}
&.vertical-padding-5 {
padding-top: 5px;
padding-bottom: 5px;
}
&.vertical-padding-6 {
padding-top: 6px;
padding-bottom: 6px;
}
&.vertical-padding-7 {
padding-top: 7px;
padding-bottom: 7px;
}
&.vertical-padding-8 {
padding-top: 8px;
padding-bottom: 8px;
}
&.vertical-padding-9 {
padding-top: 9px;
padding-bottom: 9px;
}
&.vertical-padding-10 {
padding-top: 10px;
padding-bottom: 10px;
}
}
@mixin horizontal-padding-mixin(){
&.horizontal-padding-0 {
padding-left: 0px;
padding-right: 0px;
}
&.horizontal-padding-1 {
padding-left: 1px;
padding-right: 1px;
}
&.horizontal-padding-2 {
padding-left: 2px;
padding-right: 2px;
}
&.horizontal-padding-3 {
padding-left: 3px;
padding-right: 3px;
}
&.horizontal-padding-4 {
padding-left: 4px;
padding-right: 4px;
}
&.horizontal-padding-5 {
padding-left: 5px;
padding-right: 5px;
}
&.horizontal-padding-6 {
padding-left: 6px;
padding-right: 6px;
}
&.horizontal-padding-7 {
padding-left: 7px;
padding-right: 7px;
}
&.horizontal-padding-8 {
padding-left: 8px;
padding-right: 8px;
}
&.horizontal-padding-9 {
padding-left: 9px;
padding-right: 9px;
}
&.horizontal-padding-10 {
padding-left: 10px;
padding-right: 10px;
}
}
@mixin font-size-mixin(){
&.font-size-10 {
font-size: 10px;
}
&.font-size-11 {
font-size: 11px;
}
&.font-size-12 {
font-size: 12px;
}
&.font-size-13 {
font-size: 13px;
}
&.font-size-14 {
font-size: 14px;
}
&.font-size-15 {
font-size: 15px;
}
&.font-size-16 {
font-size: 16px;
}
&.font-size-17 {
font-size: 17px;
}
&.font-size-18 {
font-size: 18px;
}
&.font-size-19 {
font-size: 19px;
}
&.font-size-20 {
font-size: 20px;
}
&.font-size-21 {
font-size: 21px;
}
&.font-size-22 {
font-size: 22px;
}
&.font-size-23 {
font-size: 23px;
}
&.font-size-24 {
font-size: 24px;
}
&.font-size-25 {
font-size: 25px;
}
&.font-size-26 {
font-size: 26px;
}
}
@mixin font-weight-mixin(){
&.font-weight-100 {
font-weight: 100;
}
&.font-weight-200 {
font-weight: 200;
}
&.font-weight-300 {
font-weight: 300;
}
&.font-weight-400 {
font-weight: 400;
}
&.font-weight-500 {
font-weight: 500;
}
&.font-weight-600 {
font-weight: 600;
}
&.font-weight-700 {
font-weight: 700;
}
}
@mixin avatar-dims-mixin(){
&.size-xs {
width: 20px;
height: 20px;
font-size: 7px; // 18px * (20 / 50)
.status-indicator {
width: 5px; // scaled indicator size
height: 5px;
}
}
&.size-sm {
width: 30px;
height: 30px;
font-size: 11px; // 18px * (30 / 50)
.status-indicator {
width: 7px;
height: 7px;
}
}
&.size-md {
width: 40px;
height: 40px;
font-size: 14px; // 18px * (40 / 50)
.status-indicator {
width: 9px;
height: 9px;
}
}
&.size-lg {
width: 45px;
height: 45px;
font-size: 16px; // 18px * (45 / 50)
.status-indicator {
width: 10px;
height: 10px;
}
}
&.size-xl {
width: 50px;
height: 50px;
font-size: 18px; // base size
.status-indicator {
width: 12px;
height: 12px;
}
}
}