b279f23372
1. Addition of external source icons for services marked as such. 2. New %with-tooltip css component (wip) 3. New 'no healthcheck' icon as external sources might not have healthchecks, also minus icon on node cards in the service detail view 4. If a service doesn't have healthchecks, we use the [Services] tabs as the default instead of the [Health Checks] tab in the Service detail page. 5. `css-var` helper. The idea here is that it will eventually be replaced with pure css custom properties instead of having to use JS. It would be nice to be able to build the css variables into the JS at build time (you'd probably still want to specify in config which variables you wanted available in JS), but that's possible future work. Lastly there is probably a tiny bit more testing edits here than usual, I noticed that there was an area where the dynamic mocking wasn't happening, it was just using the mocks from consul-api-double, the mocks I was 'dynamically' setting happened to be the same as the ones in consul-api-double. I've fixed this here also but it wasn't effecting anything until actually made certain values dynamic.
82 lines
1.7 KiB
SCSS
82 lines
1.7 KiB
SCSS
%healthchecked-resource header span,
|
|
%healthchecked-resource header em,
|
|
%healthchecked-resource li:not(:last-child) span {
|
|
overflow: hidden;
|
|
display: inline-block;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
max-width: 100%;
|
|
}
|
|
%healthchecked-resource li:last-child:not(:only-child) {
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
}
|
|
%healthchecked-resource,
|
|
%healthchecked-resource header,
|
|
%healthchecked-resource li {
|
|
position: relative;
|
|
}
|
|
%healthchecked-resource header strong {
|
|
position: absolute;
|
|
}
|
|
%healthchecked-resource a,
|
|
%healthchecked-resource header a > * {
|
|
display: block;
|
|
}
|
|
%healthchecked-resource li::before {
|
|
left: 11px;
|
|
top: 50%;
|
|
margin-top: -0.49em !important;
|
|
}
|
|
.healthy .healthchecked-resource header span {
|
|
padding-right: 20px;
|
|
}
|
|
.healthy .healthchecked-resource li {
|
|
position: absolute;
|
|
top: 8px;
|
|
right: 16px;
|
|
border: none;
|
|
}
|
|
.healthy .healthchecked-resource li::before {
|
|
left: 0;
|
|
}
|
|
.healthy .healthchecked-resource li span {
|
|
display: none;
|
|
}
|
|
.healthy .healthchecked-resource li a {
|
|
padding-left: 0;
|
|
}
|
|
%healthchecked-resource header strong {
|
|
top: 2.8em;
|
|
left: 15px;
|
|
}
|
|
%healthchecked-resource header span {
|
|
margin-bottom: 1.75em;
|
|
}
|
|
%healthchecked-resource header a {
|
|
padding: 12px 15px;
|
|
}
|
|
.unhealthy .healthchecked-resource header a {
|
|
padding-bottom: 15px;
|
|
}
|
|
.unhealthy .healthchecked-resource header.with-service a {
|
|
padding-bottom: 25px;
|
|
}
|
|
%healthchecked-resource li a {
|
|
padding: 3px 15px;
|
|
padding-top: 4px;
|
|
padding-left: 39px;
|
|
height: 31px;
|
|
}
|
|
%healthchecked-resource li:not(.passing) strong,
|
|
.healthy .healthchecked-resource li:only-child strong {
|
|
display: none;
|
|
}
|
|
%healthchecked-resource ul:empty {
|
|
position: absolute;
|
|
top: 18px;
|
|
right: 20px;
|
|
width: 1em;
|
|
height: 1em;
|
|
}
|