1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/src/renderer/components/mixins.scss
Roman 30d22bfb6d
Always preload app fonts at earliest stages (#5117)
* always preload app fonts at earliest stages, fix #5019

Signed-off-by: Roman <ixrock@gmail.com>

* attempt to fix tests, clean up

Signed-off-by: Roman <ixrock@gmail.com>
2022-03-29 12:15:46 -04:00

79 lines
1.9 KiB
SCSS
Executable File

/**
* Copyright (c) OpenLens Authors. All rights reserved.
* Licensed under MIT License. See LICENSE in root directory for more information.
*/
//-- Mixins
@import "+workloads/workloads-mixins";
@import "+storage/storage-mixins";
@import "+nodes/nodes-mixins";
@import "+namespaces/namespaces-mixins";
@import "table/table.mixins";
@import "+network/network-mixins";
// Hide scrollbar but keep the element scrollable
@mixin hidden-scrollbar {
overflow: auto;
// Chrome, Safari
&::-webkit-scrollbar {
width: 0;
height: 0;
background: transparent;
}
}
@mixin stripeLinesAnimation($color1: #ccc, $color2: transparent, $spacing: 1rem) {
background: repeating-linear-gradient(-45deg, $color2, $color2, $spacing, $color1 $spacing, $color1 $spacing * 2);
background-size: 200% 200%;
animation: stripeLines 10s linear infinite;
@keyframes stripeLines {
100% {
background-position: 100% 100%;
}
}
}
@mixin pseudo-link($color: var(--primary)) {
color: $color;
text-decoration: underline;
cursor: pointer;
}
@mixin set-draggable($is-draggable: true) {
@if ($is-draggable) {
-webkit-user-select: none;
-webkit-app-region: drag;
} @else {
-webkit-app-region: no-drag;
}
}
@mixin theme-light() {
$selector: "theme-light"; // keep in sync with class in `theme.store.ts`
body.#{$selector} {
@content;
}
:global(body.#{$selector}) {
@content; // css-modules (*.module.scss)
}
}
// Makes custom @font-family available at earlier stages.
// Element must exist in DOM as soon as possible to initiate preloading.
@mixin font-preload($fontFamily) {
position: absolute;
visibility: hidden;
height: 0;
&:before {
width: 0;
display: block;
overflow: hidden;
content: "x"; // some text required to start applying font in document
font-family: $fontFamily; // imported name in @font-face declaration
@content;
}
}