frontend-tutorial-framework/src/app/dashboard/dashboard.component.scss

181 lines
3.6 KiB
SCSS

@import "../../assets/scss/variables.scss";
@import "../../assets/scss/mixins/layout.scss";
@import "../../assets/scss/mixins/scrollbar";
@mixin set-tfw-web($layouts-key) {
.tfw-web {
.iframe-container {
display: flex;
flex-direction: column;
overflow: hidden;
@include set-component-size($layouts-key, 'web');
}
.iframe {
flex-grow: 1;
border: none;
margin: 0;
padding: 0;
}
.urlbar-container {
display: flex;
height: 37px;
background: #353535;
.btn {
background: #353535;
color: white;
align-self: center;
margin: 5px;
}
.btn:hover{
background: lighten(#353535, 10);
}
}
.urlbar {
flex-grow: 1;
height: 30px;
align-self: center;
border-radius: 15px;
}
}
}
.tfw-grid-main-components {
display: grid;
width: 100vw;
height: 100vh;
justify-content: center;
align-content: center;
grid-template-columns: repeat($grid-columns-count, 1fr);
grid-template-rows: repeat($grid-rows-count, 1fr);
.tfw-header,
.tfw-messages {
// Check whether the layout contains a web component
div[class*="web"] & {
border: 2px solid $tao-gray-100;
border-top: 0;
border-left: 0;
border-bottom: 0;
}
}
.tfw-header {
padding: $small;
padding-top: $tiny;
background-color: $tao-gray-50;
}
@include set-scrollbar-style('dark', '.tfw-messages');
.tfw-messages {
padding: $space;
padding-top: $hair;
background-color: $tao-gray-50;
overflow-y: scroll;
max-height: 95vmin;
div[class="terminal-ide-web"] & {
max-height: 55vmin;
}
}
.tfw-messages::-webkit-scrollbar {
width: 0px;
background: transparent;
}
.tfw-ide {
background-color: #1e1e1e; // vscode dark theme
}
.tfw-sidebar {
background-color: $tao-gray-50;
display: flex;
flex-direction: column;
justify-content: space-between;
padding-top: 5vh;
align-items: center;
border-left: 1px solid $tao-gray-400;
z-index: 999;
}
.tfw-terminal {
overflow-y: hidden;
background-color: $tao-gray-800;
padding-bottom: 2.2em;
}
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid rgba(255, 255, 255, 0.15);
margin: 2px 0 7px 0;
padding: 0;
}
.tfw-console-terminal-menu-button {
font-size: $font-size-small;
background-color: transparent;
border: none;
color: gray;
cursor: pointer;
outline: none;
}
.selected {
color: white;
cursor: default;
}
}
.deploy-blur {
filter: blur(3px);
z-index: -666;
}
.hidden {
@include hide-component();
}
.terminal-ide-web {
@include set-tfw-web('terminal-ide-web');
@include position-grid-items(map_get($layouts, 'terminal-ide-web'),'.tfw-');
}
.terminal-web {
@include set-tfw-web('terminal-web');
@include position-grid-items(map_get($layouts,'terminal-web'),'.tfw-');
}
.terminal-ide-vertical {
@include position-grid-items(map_get($layouts,'terminal-ide-vertical'),'.tfw-');
}
.terminal-ide-horizontal {
@include position-grid-items(map_get($layouts,'terminal-ide-horizontal'),'.tfw-');
}
.ide-web-vertical {
@include set-tfw-web('ide-web-vertical');
@include position-grid-items(map_get($layouts,'ide-web-vertical'),'.tfw-');
}
.terminal-only {
@include position-grid-items(map_get($layouts,'terminal-only'),'.tfw-');
}
.ide-only {
@include position-grid-items(map_get($layouts,'ide-only'),'.tfw-');
}
.web-only {
@include set-tfw-web('web-only');
@include position-grid-items(map_get($layouts,'web-only'),'.tfw-');
}