Files
notifications-admin/app/assets/stylesheets/components/navigation.scss
Ben Thorner c5196fbf07 Allow setting provider for any channel
Previously we could only select a provider when using the test
channel, but this is also required for others channels when we
do tests on the production network with individual MNOs.

In order to reduce duplication and improve consistency, I've reused
the new broadcast_service_name_tag macro to show the setting.
2021-05-20 14:46:04 +01:00

236 lines
4.4 KiB
SCSS

.navigation {
@include govuk-font($size: 19);
padding: 0 govuk-spacing(6) 0 0;
$padding-top: 14px;
$padding-bottom: 11px;
&-service-name,
&-organisation-link {
display: inline-block;
overflow: hidden;
// aligning to the baseline with overflow: hidden adds to the parent's height
// aligning to the top doesn't
// see: https://stackoverflow.com/questions/23529369/why-does-x-overflowhidden-cause-extra-space-below#answer-51088033
vertical-align: top;
white-space: nowrap;
text-overflow: ellipsis;
}
&-service-type {
@include bold-16;
position: relative;
display: inline-block;
margin-left: govuk-spacing(2);
padding: 0 govuk-spacing(1);
text-transform: uppercase;
letter-spacing: 0.05em;
&--training {
background: $grey-3;
color: mix($grey-1, $text-colour);
box-shadow: 0 -3px 0 0 $grey-3;
}
&--suspended {
background: $grey-3;
color: mix($grey-1, $text-colour);
box-shadow: 0 -3px 0 0 $grey-3;
}
&--live, &--test {
// This uses new Design System colours to match .govuk-tag--red
background: #F6D7D2;
color: #942514;
box-shadow: 0 -3px 0 0 #F6D7D2;
}
&--government {
background: #942514;
color: #F6D7D2;
box-shadow: 0 -3px 0 0 #942514;
}
}
&-service-switch,
&-service-back-to,
&-organisation-link {
&:link,
&:visited {
text-decoration: none;
}
&:hover {
text-decoration: underline;
}
}
&-service {
@include govuk-font($size: 19);
border-bottom: 1px solid $border-colour;
margin: 0 0 10px;
position: relative;
&-name {
padding: $padding-top 0 $padding-bottom 0;
max-width: 50%;
}
&-switch {
text-align: right;
position: absolute;
top: 0;
right: 0;
padding: $padding-top 0 $padding-bottom govuk-spacing(3);
&:focus {
padding: $padding-top 0px $padding-bottom + 1px govuk-spacing(3) + 10;
/* override default focus style to inset bottom underline */
box-shadow: inset 0 -4px $govuk-focus-text-colour;
}
}
&-back-to {
padding: $padding-top govuk-spacing(3) $padding-bottom 0;
display: inline-block;
}
}
&-organisation-link {
max-width: 25%;
padding: $padding-top 20px $padding-bottom 0;
margin-right: 5px;
box-sizing: border-box;
position: relative;
&:before {
content: "";
display: block;
position: absolute;
top: -1px;
bottom: 1px;
right: 2px;
width: 7px;
height: 7px;
margin: auto 0;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
border: solid;
border-width: 1px 1px 0 0;
border-color: $secondary-text-colour;
}
&:focus:before {
border-color: $govuk-focus-text-colour;
}
// hack to make the focus style fit in the navigation bar
&:focus {
box-shadow: inset 0 -3px $govuk-focus-text-colour, 0 1px $govuk-focus-text-colour;
}
}
li {
margin: 0;
list-style-type: none;
}
a {
display: block;
padding: 5px 0;
position: relative;
top: 5px;
&:link,
&:visited {
text-decoration: none;
}
&:hover {
text-decoration: underline;
}
&.selected {
@include bold-19;
position: relative;
// These two lines stop the width of the item jumping so much
// between selected and unselected states
left: -0.5px;
letter-spacing: -0.01em;
}
}
}
// https://github.com/alphagov/product-page-example/blob/master/source/stylesheets/modules/_sub-navigation.scss
.sub-navigation {
@include media(tablet) {
margin-top: govuk-spacing(6) * 1.5;
}
ol,
ul {
list-style: none;
padding: 0;
margin: 0;
ol,
ul {
margin-top: govuk-spacing(2);
border-top: 1px $grey-3 solid;
}
}
&__item {
@include core-16;
border-bottom: 1px $grey-3 solid;
display: block;
padding: govuk-spacing(2) 0;
a:link {
text-decoration: none;
}
a:hover,
a:active {
text-decoration: underline;
}
ol ol & {
padding-left: govuk-spacing(6);
&:last-of-type {
border-bottom: none;
padding-bottom: 0;
}
}
}
&__item--active {
@include bold-16;
a:link, a:visited {
color: $text-colour;
}
}
}