diff --git a/static/skywire-manager-src/src/app/components/pages/settings/password/password.component.scss b/static/skywire-manager-src/src/app/components/pages/settings/password/password.component.scss
index f322889f6a..79d3995c2e 100644
--- a/static/skywire-manager-src/src/app/components/pages/settings/password/password.component.scss
+++ b/static/skywire-manager-src/src/app/components/pages/settings/password/password.component.scss
@@ -8,9 +8,3 @@ app-button {
float: right;
margin-right: 32px;
}
-
-.help-container {
- color: $light-gray;
- height: 0px;
- text-align: right;
-}
diff --git a/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.html b/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.html
index 3714e7b5c0..251b6f6182 100644
--- a/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.html
+++ b/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.html
@@ -1,11 +1,11 @@
-
-
diff --git a/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.scss b/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.scss
index 239e23fc37..6e9502c6c4 100644
--- a/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.scss
+++ b/static/skywire-manager-src/src/app/components/pages/settings/refresh-rate/refresh-rate.component.scss
@@ -14,8 +14,3 @@ mat-form-field ::ng-deep {
}
}
-.help-container {
- color: $light-gray;
- height: 0px;
- text-align: right;
-}
diff --git a/static/skywire-manager-src/src/assets/i18n/en.json b/static/skywire-manager-src/src/assets/i18n/en.json
index 66d7f9a182..543eccab68 100644
--- a/static/skywire-manager-src/src/assets/i18n/en.json
+++ b/static/skywire-manager-src/src/assets/i18n/en.json
@@ -107,8 +107,10 @@
"processing": "Looking for updates...",
"processing-button": "Please wait",
"no-update": "Currently, there are no new updates for the visors.",
- "update-available": "There is an update available for {{ number }} visors. Click the 'Install update' button to continue. The currently installed version is {{ currentVersion }} and the new version is {{ newVersion }}.",
- "update-available-different": "There is an update available for {{ number }} visors. Click the 'Install update' button to continue. There are different versions installed in the visors and the new version is {{ newVersion }}.",
+ "update-available-single": "There is an update available for 1 visor:",
+ "update-available-multiple": "There are updates available for {{ number }} visors:",
+ "update-available-confirmation": "Click the 'Install update' button to continue.",
+ "version-change": "From {{ currentVersion }} to {{ newVersion }}",
"done": "The visor {{ name }} is being updated.",
"done-all": "Operation completed. All visors are being updated.",
"update-error": "Could not install the update in visor {{ name }}. Please, try again later.",
@@ -196,8 +198,10 @@
"title": "Update",
"processing": "Looking for updates...",
"processing-button": "Please wait",
- "no-update": "Currently, there is no update for the visor. The currently installed version is {{ version }}.",
- "update-available": "There is an update available for the visor. Click the 'Install update' button to continue. The currently installed version is {{ currentVersion }} and the new version is {{ newVersion }}.",
+ "no-update": "Currently, there is no update for the visor. The currently installed version is:",
+ "update-available1": "There is an update available for the visor:",
+ "update-available2": "Click the 'Install update' button to install it.",
+ "version-change": "From {{ currentVersion }} to {{ newVersion }}",
"done": "The visor is being updated.",
"update-error": "Could not install the update. Please, try again later.",
"install": "Install update"
diff --git a/static/skywire-manager-src/src/assets/img/background-pattern.png b/static/skywire-manager-src/src/assets/img/background-pattern.png
new file mode 100644
index 0000000000..15f8183323
Binary files /dev/null and b/static/skywire-manager-src/src/assets/img/background-pattern.png differ
diff --git a/static/skywire-manager-src/src/assets/img/icon-separator.png b/static/skywire-manager-src/src/assets/img/icon-separator.png
new file mode 100644
index 0000000000..ae65938b82
Binary files /dev/null and b/static/skywire-manager-src/src/assets/img/icon-separator.png differ
diff --git a/static/skywire-manager-src/src/assets/img/modal-background-pattern.png b/static/skywire-manager-src/src/assets/img/modal-background-pattern.png
new file mode 100644
index 0000000000..33f259744b
Binary files /dev/null and b/static/skywire-manager-src/src/assets/img/modal-background-pattern.png differ
diff --git a/static/skywire-manager-src/src/assets/scss/_backgrounds.scss b/static/skywire-manager-src/src/assets/scss/_backgrounds.scss
index 091413f3f7..63c622a208 100644
--- a/static/skywire-manager-src/src/assets/scss/_backgrounds.scss
+++ b/static/skywire-manager-src/src/assets/scss/_backgrounds.scss
@@ -1,10 +1,44 @@
-@import "variables";
-@import "~bootstrap/scss/functions";
-@import '~@angular/material/theming';
-
// Main app background.
-.mat-app-background {
- background: linear-gradient($blue, $blue-light) no-repeat fixed !important;
+.app-background {
+ width: 100%;
+ height: 100%;
+ top: 0;
+ left: 0;
+ position: fixed;
+ background: linear-gradient($blue-dark-Background1, $blue-dark-Background2) no-repeat fixed !important;
+ box-shadow: inset 0 0 200px 0 rgba(96, 141, 205, 0.25);
+}
+
+.no-gradient-for-elevated-box {
+ box-shadow: 5px 5px 7px 0 rgba(0, 0, 0, 0.35) ! important;
+}
+
+.elevated-box {
+ background-image: url('/assets/img/background-pattern.png');
+ box-shadow: inset 0 0 55px 0 rgba(53, 87, 134, 0.4), 5px 5px 7px 0 rgba(0, 0, 0, 0.35);
+ border: $box-border solid 1px;
+}
+
+.rounded-elevated-box {
+ width: 100%;
+ @extend .elevated-box;
+ border-radius: $mat-dialog-radius;
+ overflow: hidden;
+ padding: 3px;
+
+ .box-internal-container {
+ border-radius: $mat-dialog-radius;
+ padding: $containers-padding - 3px;
+ border: scale-color($box-border, $alpha: -65%) solid 1px;
+ overflow: hidden;
+ }
+}
+
+.small-rounded-elevated-box {
+ @extend .rounded-elevated-box;
+ width: unset;
+ padding: 0;
+ box-shadow: inset 0 0 20px 0 rgba(53, 87, 134, 0.4), 5px 5px 7px 0 rgba(0, 0, 0, 0.35);
}
// Backgrounds for the rounded boxes used as containers in the app.
diff --git a/static/skywire-manager-src/src/assets/scss/_dialogs.scss b/static/skywire-manager-src/src/assets/scss/_dialogs.scss
index b1fd483c51..6fda0fe90d 100644
--- a/static/skywire-manager-src/src/assets/scss/_dialogs.scss
+++ b/static/skywire-manager-src/src/assets/scss/_dialogs.scss
@@ -1,14 +1,12 @@
-@import "variables";
-@import "fonts";
-@import "backgrounds";
-@import "~bootstrap/scss/functions";
-@import 'text';
-
// Modal windows.
mat-dialog-container.mat-dialog-container {
border-radius: $mat-dialog-radius !important;
padding: $mat-dialog-padding !important;
+ background-image: url('/assets/img/modal-background-pattern.png');
+ box-shadow: inset 0 0 100px 0 rgba(255, 255, 255, 0.5), 5px 5px 15px 0 rgba(0, 0, 0, 1);
+ background-color: $modal-background;
+
.mat-dialog-actions {
padding-bottom: $mat-dialog-padding;
}
@@ -16,7 +14,6 @@ mat-dialog-container.mat-dialog-container {
.mat-dialog-content {
margin-bottom: -$mat-dialog-padding !important;
- padding-bottom: $mat-dialog-padding !important;
}
app-dialog {
@@ -56,14 +53,20 @@ app-dialog {
color: $black;
.title {
- border-bottom: $separator 1px solid;
- margin-bottom: 10px;
+ margin-bottom: 2px;
font-size: $font-size-base;
- margin-top: 30px;
+ margin-top: 25px;
+ color: $blue-medium;
+
+ mat-icon {
+ margin-right: 5px;
+ position: relative;
+ top: 2px;
+ }
}
.item {
- margin-top: 5px;
+ margin-top: 2px;
span {
color: $lighter-gray;
diff --git a/static/skywire-manager-src/src/assets/scss/_forms.scss b/static/skywire-manager-src/src/assets/scss/_forms.scss
index f2f406350f..de870922c5 100644
--- a/static/skywire-manager-src/src/assets/scss/_forms.scss
+++ b/static/skywire-manager-src/src/assets/scss/_forms.scss
@@ -1,6 +1,3 @@
-@import "variables";
-@import "text";
-@import "~bootstrap/scss/functions";
//
// Input
//
@@ -54,3 +51,36 @@
mat-form-field {
display: block !important;
}
+
+// White form fields, to be shown with the dark background.
+.white-form-field {
+ color: $white;
+
+ .mat-select-value-text, .mat-form-field-label, .mat-select-value, .mat-select-arrow {
+ color: $white !important;
+ }
+
+ .mat-form-field-underline {
+ background-color: scale-color($white, $alpha: -50%) !important;
+ }
+
+ .mat-form-field-ripple {
+ background-color: $white !important;
+ }
+
+ .mat-input-element {
+ caret-color: $white;
+ }
+}
+
+// Container for the white help icons shown in the forms, to be shown with the dark background.
+.form-help-icon-container {
+ height: 0px;
+ text-align: right;
+ color: $blue-medium;
+}
+
+.white-form-help-icon-container {
+ @extend .form-help-icon-container;
+ color: scale-color($white, $alpha: -20%);
+}
diff --git a/static/skywire-manager-src/src/assets/scss/_responsive_tables.scss b/static/skywire-manager-src/src/assets/scss/_responsive_tables.scss
index 1c97ebe050..c1a36bebf4 100644
--- a/static/skywire-manager-src/src/assets/scss/_responsive_tables.scss
+++ b/static/skywire-manager-src/src/assets/scss/_responsive_tables.scss
@@ -1,8 +1,3 @@
-@import "variables";
-@import "bootstrap_overrides";
-@import "~bootstrap/scss/functions";
-@import "~bootstrap/scss/mixins/text-truncate";
-
// Backgrounds for the tables used in the app.
$responsive-table-colors: (
// Background, background:hover, font color
@@ -42,12 +37,6 @@ $responsive-table-colors: (
}
tr {
- &:last-of-type {
- td, th {
- border-bottom: none;
- }
- }
-
.sortable-column {
@extend .selectable;
@@ -101,19 +90,13 @@ $responsive-table-colors: (
}
.mat-checkbox-background, .mat-checkbox-frame {
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- position: absolute;
box-sizing: border-box;
- pointer-events: none;
width: 18px;
height: 18px;
- background: rgba(30, 34, 39, 0.10) !important;
+ background: rgba(0, 0, 0, 0.3) !important;
border-radius: 6px;
border-width: 2px;
- border-color: rgba(0, 0, 0, 0.15);
+ border-color: rgba(0, 0, 0, 0.5);
}
.mat-ripple-element {
@@ -202,6 +185,8 @@ $responsive-table-colors: (
.title {
margin-right: auto;
+ font-size: $font-size-base;
+ font-weight: bold;
}
mat-icon {
@@ -215,7 +200,8 @@ $responsive-table-colors: (
color: $blue-dark;
border-radius: 1000px;
cursor: pointer;
- opacity: 0.9;
+
+ @extend .subtle-transparent-button;
@media (max-width: (map-get($grid-breakpoints, md) - 1)) {
& {
@@ -225,9 +211,13 @@ $responsive-table-colors: (
font-size: 24px !important;
}
}
+ }
+}
- &:hover {
- opacity: 1;
- }
+// Allows to remove the margin at the right of the last mat-icon element inside
+// generic-title-container, to make it be shown correctly when there is a paginator.
+.paginator-icons-fixer {
+ mat-icon:last-of-type {
+ margin-right: 0 !important;
}
}
diff --git a/static/skywire-manager-src/src/assets/scss/_tables.scss b/static/skywire-manager-src/src/assets/scss/_tables.scss
index df07a42e48..2af7342106 100644
--- a/static/skywire-manager-src/src/assets/scss/_tables.scss
+++ b/static/skywire-manager-src/src/assets/scss/_tables.scss
@@ -1,7 +1,3 @@
-@import "variables";
-@import "~bootstrap/scss/functions";
-@import "~bootstrap/scss/mixins/text-truncate";
-
// This file will most likelly not be needed anymore after removing old code.
$tables-colors: (
diff --git a/static/skywire-manager-src/src/assets/scss/_variables.scss b/static/skywire-manager-src/src/assets/scss/_variables.scss
index f12450d4d5..d341ef5233 100644
--- a/static/skywire-manager-src/src/assets/scss/_variables.scss
+++ b/static/skywire-manager-src/src/assets/scss/_variables.scss
@@ -7,17 +7,24 @@ $black: #202226;
$blue-light: #00C3FF;
$blue: #0072FF;
+$blue-medium: #215f9e;
$blue-dark: #154B6C;
-$blue-panel: rgba(32, 34, 38, .44);
+$blue-dark-Background1: #060a10;
+$blue-dark-Background2: #0a1421;
$red: #DA3439;
$green: #2ECC54;
$light-gray: #777;
$lighter-gray: #999;
+$modal-background: #e0e5ec;
+$modal-separator: scale-color($blue-medium, $alpha: -80%);
+
$nav-bg: rgba(255, 255, 255, 0.1);
-$separator: rgba(0, 0, 0, 0.12);
+$box-border: rgba(156, 197, 255, 0.33);
+$separator: rgba(255, 255, 255, 0.15);
+$grey-separator: rgba(0, 0, 0, 0.12);
$white-separator: rgba(255, 255, 255, 0.44);
$theme-colors: (
@@ -27,7 +34,7 @@ $theme-colors: (
blue: $blue,
blue-dark: $blue-dark,
translucid: rgba(32, 34, 38, .44),
- translucid-hover: rgba(0, 0, 0, 0.1),
+ translucid-hover: rgba(0, 0, 0, 0.2),
translucid-white: rgba(255, 255, 255, .44),
translucid-dark: rgba(21, 75, 108, .91),
white: $white,
@@ -67,7 +74,7 @@ $mat-dialog-radius: 10px;
//
// Container
//
-$containers-padding: 20px;
+$containers-padding: 15px;
//
// Sizes
diff --git a/static/skywire-manager-src/src/assets/scss/utilities/_utilities.scss b/static/skywire-manager-src/src/assets/scss/utilities/_utilities.scss
index 3dac6de45b..856773ba49 100644
--- a/static/skywire-manager-src/src/assets/scss/utilities/_utilities.scss
+++ b/static/skywire-manager-src/src/assets/scss/utilities/_utilities.scss
@@ -1,3 +1,5 @@
+@import "bootstrap_overrides";
+
// General utilities for the app.
.cursor-pointer {
@@ -46,3 +48,33 @@
}
}
}
+
+.transparent-button {
+ opacity: 0.5;
+
+ &:hover {
+ opacity: 1;
+ }
+}
+
+.subtle-transparent-button {
+ opacity: 0.85;
+
+ &:hover {
+ opacity: 1;
+ }
+}
+
+// Controls the padding of the elements in the main area when a details bar is shown at the left.
+@media (max-width: (map-get($grid-breakpoints, md) - 1)) , (min-width: map-get($grid-breakpoints, lg)) and (max-width: (map-get($grid-breakpoints, xl) - 1)) {
+ .small-node-list-margins {
+ padding: 0 !important;
+ }
+}
+
+// Controls the padding of the elements in the main area when no details bar is shown at the left.
+@media (max-width: (map-get($grid-breakpoints, md) - 1)) {
+ .full-node-list-margins {
+ padding: 0 !important;
+ }
+}
diff --git a/static/skywire-manager-src/src/index.html b/static/skywire-manager-src/src/index.html
index aae66f39b1..1cb2d32d81 100644
--- a/static/skywire-manager-src/src/index.html
+++ b/static/skywire-manager-src/src/index.html
@@ -1,14 +1,15 @@
-
-
-
Skywire Manager
-
-
-
-
-
-
-
-
+
+
+
Skywire Manager
+
+
+
+
+
+
+
+
+
diff --git a/static/skywire-manager-src/src/theme.scss b/static/skywire-manager-src/src/theme.scss
index 69e6f360ca..ec9733f191 100644
--- a/static/skywire-manager-src/src/theme.scss
+++ b/static/skywire-manager-src/src/theme.scss
@@ -8,8 +8,8 @@ $general-typography: mat-typography-config(
@include mat-core($general-typography);
$mat-skywire-primary: (
- 100: $blue-light,
- 500: $blue,
+ 100: $blue-medium,
+ 500: $blue-medium,
contrast: (
100: $white,
500: $white,