Files
flights_web_raw/apps/react/src/styles/_layout.scss
T
gnezim 9356945d93 Task 10: Create test helper files and base test templates
- Create helpers directory structure
- Add api-helpers.ts with authentication and API mocking functions
- Add ui-helpers.ts with common UI interaction utilities
- Add data-helpers.ts with test data generators
- Create base.spec.ts as reusable test template
- Update support/index.ts to import and expose helper modules globally
2026-04-05 19:19:49 +03:00

379 lines
8.0 KiB
SCSS

@use 'sass:math';
@mixin custom-input {
@include flex-center-align();
@include control-border-shadow();
height: $standard-button-height;
padding: 0 $space-l;
font-size: $font-size-l;
font-weight: $font-regular;
color: $text-color;
transition-duration: 0.2s;
@include font-overflow();
&:enabled:hover:not(.p-state-error) {
border-color: $blue-light;
}
&:enabled:focus:not(.p-state-error) {
box-shadow: 0 0 0 0.2em $focus-shadow;
border-color: $blue-light;
}
}
html {
overflow: auto;
}
body,
html {
height: 100%;
}
* {
-webkit-tap-highlight-color: transparent;
}
body {
background-color: $blue-dark !important;
background-image: url('../assets/img/background.jpg');
background-repeat: no-repeat;
background-size: 100%;
font-size: $font-size-m;
font-family: $font-family;
font-weight: $font-regular;
color: $text-color;
line-height: normal;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
display: flex;
flex-direction: column;
span.pi {
display: none !important;
}
overflow: auto;
}
.header {
flex: 0 0 auto;
}
flights-root {
display: block;
flex: 1 0 auto;
padding: 0 24px;
}
.footer {
flex: 0 0 auto;
.main-module__footer {
margin-top: $space-xxxl;
}
}
.page-title {
width: auto;
display: inline-block;
max-width: 100%;
white-space: normal !important;
}
p-breadcrumb {
display: block;
}
section.frame {
background-color: $white;
@include box-shadow-small;
border-radius: $border-radius;
padding: 0;
}
.sr-text-hide {
opacity: 0;
visibility: hidden;
}
.description {
@include font-small();
@include font-overflow();
}
@mixin flex-center-align {
@warn 'dont use flex-center-align; use just "display: flex; align-items: center;';
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-items: center;
}
.scroll--panel--custom {
width: 100%;
min-height: 100px;
height: 400px; //window-height
.p-scrollpanel {
padding: 3px 0;
}
.p-scrollpanel-bar {
background-color: $blue-light;
transition: background-color 0.3s, opacity 0.3s;
width: 5px;
margin-left: -3px;
}
.p-scrollpanel-bar:hover,
.p-scrollpanel-grabbed {
background-color: $blue;
}
.p-scrollpanel-bar-x {
display: none;
}
.p-scrollpanel-content {
padding-right: 0px;
padding-bottom: 0px;
overflow: scroll !important;
}
}
.you-search-panel {
height: auto !important;
min-height: 20px;
}
@mixin scrollBarY {
opacity: 1;
background-color: $blue-light;
width: 4px;
margin-left: -5px;
border-radius: 5px;
&:hover {
background-color: $blue;
}
}
.content--scroll-panel {
.p-scrollpanel {
padding: $space-s 0;
.p-scrollpanel-wrapper {
padding: $space-xl - $space-s 0;
.row {
display: flex;
padding: 0 0 0 $space-xl;
&.country-start-row {
margin-top: $space-xl;
&:first-child {
margin-top: 0;
}
.contry {
position: sticky;
}
}
}
}
.p-scrollpanel-bar-y {
@include scrollBarY();
}
}
}
.p-tooltip {
z-index: 100001 !important;
}
p-checkbox {
display: flex;
align-items: center;
.p-checkbox div.p-checkbox-box {
@include control-border-shadow();
background-position: center center;
background-repeat: no-repeat;
background-image: url('../assets/img/check.svg');
background-size: 0 auto;
&.p-highlight {
border-color: $blue-light;
background-color: $blue-extra-light;
background-size: 13.65px auto;
&:hover {
background-color: $blue-extra-light !important;
}
}
}
.p-checkbox .p-checkbox-box:not(.p-state-disabled):hover {
background-color: $blue-extra-light;
border-color: $blue-light;
}
&:hover {
.p-checkbox-box:not(.p-state-disabled):hover {
border-color: $blue-light;
}
}
}
body {
.p-overlaypanel {
border: 1px solid $border-blue;
box-shadow: 0 2px 2px #b1b1b125;
border-radius: 3px;
&:before {
border-bottom-color: $border-blue;
}
.p-overlaypanel-content {
padding: 20px;
.share-elements {
display: flex;
align-items: flex-start;
> div + div {
margin-left: $space-m;
}
.share-element {
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
text-align: center;
@include font-small();
font-size: 10px;
width: 60px;
height: 55px;
margin-right: 15px;
background-position: center top;
background-repeat: no-repeat;
cursor: pointer;
transition-duration: 0.2s;
&:hover {
color: $blue-light;
}
&:last-child {
margin-right: 0;
}
&.facebook {
background-image: url('../assets/img/share/facebook.svg');
}
&.vk {
background-image: url('../assets/img/share/vk.svg');
}
&.twitter {
background-image: url('../assets/img/share/twitter.svg');
}
&.copy {
background-image: url('../assets/img/share/copy.svg');
}
&.weibo {
background-image: url('../assets/img/share/weibo.svg');
background-size: 29px;
}
}
}
}
}
}
p-accordion .p-accordion-content button.button-clear {
display: none;
position: absolute;
right: $buttons-width;
top: 0px;
bottom: 0px;
width: $buttons-width !important;
border: none;
border-radius: 0;
background: rgb(255, 255, 255);
background: linear-gradient(270deg, rgba(255, 255, 255, 1) 80%, rgba(255, 255, 255, 0) 100%);
.p-button-label {
background-image: url('../assets/img/close.svg');
background-repeat: no-repeat;
background-size: 10px 10px;
height: 100%;
background-position: center center;
transition-duration: 0.2s;
position: relative;
&:before {
display: none;
position: absolute;
content: '';
top: 0;
left: 0;
bottom: 0;
width: 1px;
background-color: $border-input;
}
}
&-opened {
.p-button-label {
transform: rotate(180deg);
}
}
&:hover {
background-color: $white !important;
.p-button-label {
&:before {
display: block;
}
}
}
}
.app-show-debug {
display: inline-flex;
align-items: center;
width: auto;
border: none;
background-color: #e2740b;
padding: 3px 10px 4px 10px;
margin-bottom: 5px;
color: #fff;
border-radius: 3px;
font-size: 12px;
margin-bottom: 10px;
height: 25px;
margin-right: 10px;
}
.app-hide-debug {
width: auto;
margin-bottom: 10px;
height: 25px;
}
@import './pages/adaptive/layout-adaptive';
@import './_layout-print';