ui: Various CSS amends (#8708)

* ui: Various CSS amends

1. Split out %icon-definition from %composite-row
2. Add hover effect to node listing
3. Fix up proxy level list components
4. Rename our various pills to use a 100-900 scale
5. Reogranize other icon related things (consul-kind and
consul-external-source)

* Fix up upstream test
This commit is contained in:
John Cowen 2020-09-22 18:20:44 +01:00 committed by GitHub
parent d97fb3f35c
commit d8fb480ca1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
41 changed files with 331 additions and 424 deletions

View File

@ -1,7 +1,7 @@
<ul data-test-proxy-exposed-paths>
{{#each items as |path|}}
<li>
<div>
<div class="header">
{{#let (concat address ':' path.Path) as |combinedAddress|}}
<p class="combined-address">
<span>
@ -14,7 +14,7 @@
</p>
{{/let}}
</div>
<div>
<div class="detail">
{{#if path.Protocol}}
<dl class="protocol">
<dt>

View File

@ -1,23 +1,17 @@
{{#if item}}
{{#let (if _externalSource _externalSource (service/external-source item)) as |externalSource|}}
{{#let (service/external-source item) as |externalSource|}}
{{#if externalSource}}
{{#if (has-block)}}
{{yield
(component 'consul-external-source' item=item _externalSource=externalSource)
}}
{{else}}
<span data-test-external-source={{externalSource}} class="consul-external-source {{externalSource}}">
{{#if label}}
{{label}}
<span data-test-external-source={{externalSource}} class="consul-external-source {{externalSource}}">
{{#if label}}
{{label}}
{{else}}
{{#if (eq externalSource 'aws')}}
Registered via {{uppercase externalSource}}
{{else}}
{{#if (eq externalSource 'aws')}}
<span>Registered via {{uppercase externalSource}}</span>
{{else}}
<span>Registered via {{capitalize externalSource}}</span>
{{/if}}
Registered via {{capitalize externalSource}}
{{/if}}
</span>
{{/if}}
{{/if}}
</span>
{{/if}}
{{/let}}
{{/if}}

View File

@ -1,15 +1,10 @@
{{#if item.Kind}}
{{#let (titleize (humanize item.Kind)) as |Name|}}
{{#if (has-block)}}
{{yield
(component 'consul-kind' item=item withInfo=withInfo)
}}
{{else}}
{{#if withInfo}}
<dl class="tooltip-panel">
<dt>
<span data-test-kind={{item.Kind}} class="consul-kind gateway">
<span>{{Name}}</span>
<span data-test-kind={{item.Kind}} class="consul-kind">
{{Name}}
</span>
</dt>
<dd>
@ -86,10 +81,9 @@
</dd>
</dl>
{{else}}
<span data-test-kind={{item.Kind}} class="consul-kind gateway">
<span>{{Name}}</span>
<span data-test-kind={{item.Kind}} class="consul-kind">
{{Name}}
</span>
{{/if}}
{{/if}}
{{/let}}
{{/if}}

View File

@ -61,14 +61,17 @@
</dl>
{{/if}}
{{#if (and checks item.Port)}}
<dl>
<dl class="port">
<dt>
Port
</dt>
<dd data-test-service-port={{item.Port}}>
<CopyButton
@value={{item.Port}}
@name="Port"
/>
</dt>
<dd data-test-service-port={{item.Port}}>:{{item.Port}}</dd>
:{{item.Port}}
</dd>
</dl>
{{/if}}
{{#if checks}}

View File

@ -1,12 +1,12 @@
<ul data-test-proxy-upstreams>
{{#each items as |item|}}
<li>
<div>
<div class="header">
<p data-test-destination-name>
{{item.DestinationName}}
</p>
</div>
<div>
<div class="detail">
{{#if (env 'CONSUL_NSPACES_ENABLED')}}
{{#if (not-eq item.DestinationType 'prepared_query')}}
<dl class="nspace">

View File

@ -1,40 +1,23 @@
%pill {
display: inline-flex;
align-items: center;
padding: 1px 5px;
position: relative;
align-items: center;
white-space: nowrap;
}
%pill button {
padding: 0;
width: 9px;
height: 9px;
%pill::before {
margin-right: 4px;
font-size: 0;
font-size: 0.8em;
}
%increased-pill {
%pill-200 {
@extend %pill;
padding: 5px 10px;
padding: 0 8px;
}
%pill-500 {
@extend %pill;
padding: 1px 5px;
}
%pill-700 {
@extend %pill;
padding: 4px 8px;
min-width: 87px;
}
%reduced-pill {
background-color: $gray-100;
padding: 0 8px;
border-radius: $decor-radius-100;
display: inline-block;
}
%reduced-pill > span {
font-size: 14px;
font-weight: normal;
position: relative;
color: $gray-500;
}
%reduced-pill::before {
width: 14px;
height: 14px;
margin-right: 2px;
margin-top: 1px;
position: relative;
}
%reduced-pill.leader::before {
margin-right: 4px;
}

View File

@ -1,40 +1,3 @@
%pill {
border-radius: $decor-radius-100;
}
%pill button {
background-color: $transparent;
/* font-size: 0; */
cursor: pointer;
}
%pill button::before {
@extend %with-cancel-plain-icon;
@extend %as-pseudo;
width: 10px;
height: 10px;
}
%reduced-pill::before {
@extend %as-pseudo;
}
%reduced-pill.kubernetes::before {
@extend %with-kubernetes-logo-color-icon;
}
%reduced-pill.terraform::before {
@extend %with-terraform-logo-color-icon;
}
%reduced-pill.nomad::before {
@extend %with-nomad-logo-color-icon;
}
%reduced-pill.consul::before {
@extend %with-consul-logo-color-icon;
}
%reduced-pill.aws::before {
@extend %with-logo-aws-color-icon;
}
%reduced-pill.gateway::before {
@extend %with-gateway-mask;
background-color: $gray-500;
}
%reduced-pill.leader::before {
@extend %with-star-outline-mask;
background-color: $gray-500;
}

View File

@ -3,12 +3,15 @@
/**/
@import './components/card/index';
@import './components/list-row/index';
@import './components/expanded-single-select/index';
@import './components/icon-definition';
@import './components/form-elements';
@import './components/breadcrumbs';
@import './components/anchors';
@import './components/progress';
@import './components/buttons';
@import './components/list-row';
@import './components/composite-row';
@import './components/secret-button';
@import './components/tabs';

View File

@ -1,19 +1,13 @@
@import './app-view/index';
main {
@extend %app-view;
}
%app-view-actions label + div {
/* We need this extra to allow tooltips to show */
overflow: visible !important;
}
main {
@extend %app-view;
}
%app-view > div > header {
@extend %app-view-header;
}
%app-view > div > div {
@extend %app-view-content;
}
%app-view > div.unauthorized,
%app-view > div.error {
@extend %app-view-error;
@ -25,9 +19,6 @@ main {
%app-view-actions button {
@extend %button-compact;
}
%app-view-content div > dl {
@extend %form-row;
}
[role='tabpanel'] > p:only-child,
%app-view-content > p:only-child {
@extend %app-view-content-empty;

View File

@ -7,16 +7,13 @@
align-items: center;
white-space: nowrap;
position: relative;
z-index: 1;
z-index: 4;
}
%app-view-actions {
margin-left: auto;
display: flex;
align-items: flex-start;
}
%app-view-header dl {
float: left;
}
/* units */
%app-view {
margin-top: 50px;
@ -37,11 +34,6 @@
%app-view-actions > *:not(:last-child) {
margin-right: 12px;
}
%app-view-header dl {
margin-top: 19px;
margin-bottom: 23px;
margin-right: 50px;
}
/* content */
%app-view-content h2 {

View File

@ -8,6 +8,7 @@
/* hoverable rows */
%composite-row.linkable,
.consul-service-instance-list > ul > li:not(:first-child),
.consul-node-list > ul > li:not(:first-child),
.consul-token-list > ul > li:not(:first-child),
.consul-policy-list > ul > li:not(:first-child),
.consul-role-list > ul > li:not(:first-child) {
@ -29,8 +30,67 @@
.consul-service-list li > div:first-child > dl:first-child dd {
margin-top: 1px;
}
.consul-service-list .detail,
.consul-service-instance-list .detail {
overflow-x: visible !important;
}
.consul-intention-permission-list > ul,
.proxy-exposed-paths > ul,
.proxy-upstreams > ul {
border-top: 1px solid $gray-200;
}
.consul-service-instance-list .port dt,
.consul-service-instance-list .port dt::before {
display: none;
}
.consul-service-instance-list .port .copy-button {
margin-right: 0;
}
// Copy Button
%composite-row .copy-button {
display: inline-flex;
}
%composite-row-header .copy-button {
margin-left: 4px;
}
%composite-row-detail .copy-button {
margin-right: 4px;
margin-top: 2px;
}
%composite-row .copy-button button {
padding: 0 !important;
margin: 0 !important;
}
/* buttons need to be displayed in order for the tooltip */
/* to track them */
%composite-row-header .copy-button button {
opacity: 0;
}
%composite-row-header:hover .copy-button button {
opacity: 1;
}
%composite-row .copy-button button:hover {
background-color: transparent !important;
}
%composite-row-detail > .consul-kind:first-child,
%composite-row-detail > .consul-external-source:first-child {
margin-left: -5px;
}
%composite-row-detail .policy::before {
@extend %with-file-fill-mask, %as-pseudo;
margin-right: 3px;
}
%composite-row-detail .role::before {
@extend %with-user-plain-mask, %as-pseudo;
margin-right: 3px;
}
%composite-row-detail .policy-management::before {
margin-right: 3px;
}
%composite-row-header .policy-management dd::before,
%composite-row-detail .policy-management::before {
@extend %with-star-fill-mask, %as-pseudo;
background-color: var(--brand-600);
}

View File

@ -17,31 +17,3 @@
%with-composite-row-intent:active {
@extend %list-row-intent;
}
%list-row-header > dl:first-child {
@extend %list-row-header-icon;
}
// TODO: %defined-by-icon
// Copy Button
%composite-row .copy-button {
display: inline-flex;
}
%composite-row .copy-button button {
padding: 0 !important;
margin: 0 !important;
}
%composite-row-detail .copy-button {
margin-right: 4px;
margin-top: 2px;
}
%composite-row-header .copy-button {
margin-left: 4px;
}
/* buttons need to be displayed in order for the tooltip */
/* to track them */
%composite-row-header .copy-button button {
opacity: 0;
}
%composite-row-header:hover .copy-button button {
opacity: 1;
}

View File

@ -25,3 +25,12 @@
justify-self: center;
align-self: center;
}
%composite-row-header:nth-last-child(2) {
grid-column-start: header;
grid-column-end: actions;
}
%composite-row-detail:last-child {
grid-column-start: detail;
grid-column-end: actions;
}

View File

@ -1,107 +0,0 @@
// TODO: %defined-by-icon
%composite-row-detail .policy::before {
@extend %with-file-fill-mask, %as-pseudo;
background-color: $gray-500;
margin-right: 3px;
}
%composite-row-detail .role::before {
@extend %with-user-plain-mask, %as-pseudo;
background-color: $gray-500;
margin-right: 3px;
}
%composite-row-detail .policy-management::before {
margin-right: 3px;
}
%composite-row-detail .policy-management::before,
%composite-row-header .policy-management dd::before {
@extend %with-star-fill-mask, %as-pseudo;
background-color: var(--brand-600);
}
// Health Checks
%composite-row-detail dl.passing dt::before,
%composite-row-header .passing dd::before {
@extend %with-check-circle-fill-color-mask, %as-pseudo;
background-color: $green-500;
}
%composite-row-detail dl.warning dt::before,
%composite-row-header .warning dd::before {
@extend %with-alert-triangle-color-mask, %as-pseudo;
background-color: $orange-500;
}
%composite-row-detail dl.critical dt::before,
%composite-row-header .critical dd::before {
@extend %with-cancel-square-fill-color-mask, %as-pseudo;
background-color: $red-500;
}
%composite-row-detail dl.empty dt::before,
%composite-row-header .empty dd::before {
@extend %with-minus-square-fill-color-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-header [rel='me'] dd::before {
@extend %with-check-circle-fill-mask, %as-pseudo;
background-color: $blue-500;
}
// Metadata
%composite-row .node a {
color: $gray-500;
}
%composite-row .node a:hover {
color: $color-action;
text-decoration: underline;
}
%composite-row dl.node dt::before {
@extend %with-git-commit-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row dl.address dt::before {
@extend %with-public-default-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row dl.proxy dt::before {
@extend %with-swap-horizontal-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.nspace dt::before {
@extend %with-folder-outline-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.datacenter dt::before {
@extend %with-user-organization-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.path dt::before {
@extend %with-path-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.port dt::before {
@extend %with-port-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.protocol dt::before {
@extend %with-protocol-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.lock-delay dt::before {
@extend %with-delay-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.ttl dt::before {
@extend %with-history-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.behavior dt::before {
@extend %with-info-circle-outline-mask, %as-pseudo;
background-color: $gray-500;
}
%composite-row-detail dl.checks dt::before {
@extend %with-health-mask, %as-pseudo;
background-color: $gray-500;
}
// In this case we do not need a background on the icon
%composite-row .combined-address .copy-button button:hover,
%composite-row-detail dt .copy-button button:hover {
background-color: transparent !important;
}

View File

@ -5,12 +5,15 @@
%consul-intention-list td.destination {
@extend %tbody-th;
}
%consul-intention-list td strong {
@extend %pill-700;
}
%consul-intention-list td.intent-allow strong {
@extend %increased-pill, %pill-allow;
@extend %pill-allow;
}
%consul-intention-list td.intent-deny strong {
@extend %increased-pill, %pill-deny;
@extend %pill-deny;
}
%consul-intention-list td.intent-l7-rules strong {
@extend %increased-pill, %pill-l7;
@extend %pill-l7;
}

View File

@ -3,9 +3,12 @@
%consul-intention-permission-list > ul > li {
@extend %list-row, %list-row-detail;
}
%consul-intention-permission-list strong {
@extend %pill-500;
}
%consul-intention-permission-list .intent-allow {
@extend %pill, %pill-allow;
@extend %pill-allow;
}
%consul-intention-permission-list .intent-deny {
@extend %pill, %pill-deny;
@extend %pill-deny;
}

View File

@ -8,7 +8,7 @@
@extend %with-tooltip;
}
%route-card > header ul li {
@extend %pill, %frame-gray-900;
@extend %pill-500, %frame-gray-900;
}
%discovery-chain-tween {
transition-duration: 0.1s;

View File

@ -1,5 +1,4 @@
@import './filter-bar/index';
@import './expanded-single-select/index';
.filter-bar {
@extend %filter-bar;
}
@ -11,12 +10,6 @@
%filter-bar [role='menuitem'] {
justify-content: normal !important;
}
html.template-acl.template-list .filter-bar {
@extend %filter-bar-reversed;
}
html.template-acl.template-list .filter-bar [role='radiogroup'] {
@extend %expanded-single-select;
}
%filter-bar span::before {
margin-right: 9px;
opacity: 0.4;
@ -27,19 +20,3 @@ html.template-acl.template-list .filter-bar [role='radiogroup'] {
color: $blue-500;
background-color: $gray-100;
}
%filter-bar .value-passing span::before {
@extend %with-check-circle-fill-icon, %as-pseudo;
}
%filter-bar .value-warning span::before {
@extend %with-alert-triangle-icon, %as-pseudo;
}
%filter-bar .value-critical span::before {
@extend %with-cancel-square-fill-icon, %as-pseudo;
}
%filter-bar .value-allow span::before {
@extend %with-arrow-right-icon, %as-pseudo;
}
%filter-bar .value-deny span::before {
@extend %with-deny-icon, %as-pseudo;
}

View File

@ -0,0 +1,64 @@
@import './icon-definition/index';
%icon-definition.passing dt::before,
%composite-row-header .passing dd::before {
@extend %with-check-circle-fill-mask, %as-pseudo;
color: $green-500;
}
%icon-definition.warning dt::before,
%composite-row-header .warning dd::before {
@extend %with-alert-triangle-mask, %as-pseudo;
color: $orange-500;
}
%icon-definition.critical dt::before,
%composite-row-header .critical dd::before {
@extend %with-cancel-square-fill-mask, %as-pseudo;
color: $red-500;
}
%icon-definition.empty dt::before,
%composite-row-header .empty dd::before {
@extend %with-minus-square-fill-mask, %as-pseudo;
color: $gray-500;
}
%composite-row-header [rel='me'] dd::before {
@extend %with-check-circle-fill-mask, %as-pseudo;
color: $blue-500;
}
%icon-definition.node dt::before {
@extend %with-git-commit-mask, %as-pseudo;
}
%icon-definition.address dt::before {
@extend %with-public-default-mask, %as-pseudo;
}
%icon-definition.proxy dt::before {
@extend %with-swap-horizontal-mask, %as-pseudo;
}
%icon-definition.nspace dt::before {
@extend %with-folder-outline-mask, %as-pseudo;
}
%icon-definition.datacenter dt::before {
@extend %with-user-organization-mask, %as-pseudo;
}
%icon-definition.path dt::before {
@extend %with-path-mask, %as-pseudo;
}
%icon-definition.port dt::before {
@extend %with-port-mask, %as-pseudo;
}
%icon-definition.protocol dt::before {
@extend %with-protocol-mask, %as-pseudo;
}
%icon-definition.lock-delay dt::before {
@extend %with-delay-mask, %as-pseudo;
}
%icon-definition.ttl dt::before {
@extend %with-history-mask, %as-pseudo;
}
%icon-definition.behavior dt::before {
@extend %with-info-circle-outline-mask, %as-pseudo;
}
%icon-definition.checks dt::before {
@extend %with-health-mask, %as-pseudo;
}

View File

@ -0,0 +1,2 @@
@import './skin';
@import './layout';

View File

@ -0,0 +1,18 @@
%icon-definition {
margin-top: 0;
margin-bottom: 0;
}
%icon-definition {
display: inline-flex;
flex-wrap: nowrap;
}
%icon-definition > dt {
align-self: center;
}
%icon-definition > dt > * {
display: none;
}
%icon-definition > dd {
margin-left: 4px;
white-space: nowrap;
}

View File

@ -0,0 +1,2 @@
%icon-definition {
}

View File

@ -1,4 +0,0 @@
@import './list-row/index';
.list-row {
@extend %list-row;
}

View File

@ -1,2 +1,8 @@
@import './skin';
@import './layout';
%list-row-detail dl {
@extend %icon-definition;
}
%list-row-header > dl:first-child {
@extend %list-row-header-icon;
}

View File

@ -4,9 +4,15 @@
/* whilst this isn't in the designs this makes our temporary rollover look better */
padding-left: 12px;
}
%list-row dl {
margin: 0;
padding: 0;
%list-row-detail,
%list-row-header-icon {
margin-right: 6px;
}
%list-row-header dt {
display: none;
}
%list-row-header dd::before {
font-size: 0.9em;
}
%list-row-detail,
%list-row-header {
@ -14,11 +20,6 @@
flex-wrap: nowrap;
overflow-x: hidden;
}
%list-row-detail ul,
%list-row-detail dl,
%list-row-header dl {
display: inline-flex;
}
%list-row-header *,
%list-row-detail * {
white-space: nowrap;
@ -29,20 +30,3 @@
%list-row-detail > span {
margin-right: 18px;
}
%list-row-detail dl.node dt::before {
margin-top: 3px;
}
%list-row-detail dl dt::before {
margin-right: 4px;
margin-top: 2px;
}
%list-row-header-icon {
margin-right: 6px;
margin-left: -2px;
}
%list-row-header dt {
display: none;
}
%list-row-header dd::before {
font-size: 0.9em;
}

View File

@ -21,3 +21,10 @@
%list-row-detail {
color: $gray-500;
}
%list-row-detail a {
color: inherit;
}
%list-row-detail a:hover {
color: $color-action;
text-decoration: underline;
}

View File

@ -10,3 +10,9 @@ html.template-with-modal {
%modal-dialog table {
min-height: 149px;
}
// TODO: float right here is too specific, this is currently used just for the role/policy selectors
label.type-dialog {
@extend %anchor;
cursor: pointer;
float: right;
}

View File

@ -1,47 +1,15 @@
%pill-allow:before,
%pill-deny:before,
%pill-l7:before {
@extend %as-pseudo;
margin-right: 5px;
font-size: 0.9em;
}
%pill-allow {
color: $green-800;
background-color: $green-100;
}
%pill-allow::before {
@extend %with-arrow-right-color-mask;
}
%pill-deny {
color: $red-800;
background-color: $red-100;
}
%pill-deny::before {
@extend %with-deny-color-mask;
}
%pill-l7 {
@extend %frame-gray-900;
}
%pill-l7::before {
@extend %with-layers-mask;
}
td strong {
@extend %pill, %frame-gray-900;
margin-right: 3px;
}
span.policy-service-identity,
span.policy-node-identity,
.consul-external-source,
.consul-kind,
.leader {
@extend %reduced-pill;
@extend %pill-200, %frame-gray-600;
}
span.policy-service-identity::before,
span.policy-node-identity::before {
display: inline-block;
width: auto;
vertical-align: baseline;
align-self: start;
font-size: inherit;
}
span.policy-node-identity::before {
content: 'Node Identity: ';
@ -49,3 +17,58 @@ span.policy-node-identity::before {
span.policy-service-identity::before {
content: 'Service Identity: ';
}
%pill.kubernetes::before {
@extend %with-kubernetes-logo-color-icon, %as-pseudo;
}
%pill.terraform::before {
@extend %with-terraform-logo-color-icon, %as-pseudo;
}
%pill.nomad::before {
@extend %with-nomad-logo-color-icon, %as-pseudo;
}
%pill.consul::before {
@extend %with-consul-logo-color-icon, %as-pseudo;
}
%pill.aws::before {
@extend %with-logo-aws-color-icon, %as-pseudo;
}
%pill.consul-kind::before {
@extend %with-gateway-mask, %as-pseudo;
}
%pill.leader::before {
@extend %with-star-outline-mask, %as-pseudo;
}
%pill-allow:before,
%pill-deny:before,
%pill-l7:before {
@extend %as-pseudo;
margin-right: 5px;
font-size: 0.9em;
}
%pill-allow,
%pill-deny,
%pill-l7 {
text-transform: capitalize;
font-weight: $typo-weight-normal;
font-size: $typo-size-600;
}
%pill-allow {
color: $green-800;
background-color: $green-100;
}
%pill-deny {
color: $red-800;
background-color: $red-100;
}
%pill-l7 {
@extend %frame-gray-900;
}
%pill-allow::before {
@extend %with-arrow-right-color-mask;
}
%pill-deny::before {
@extend %with-deny-color-mask;
}
%pill-l7::before {
@extend %with-layers-mask;
}

View File

@ -10,19 +10,6 @@
right: 5px;
}
/*TODO: Rename this to %app-view-brand-icon or similar */
%with-external-source-icon {
background-repeat: no-repeat;
background-size: contain;
width: 18px;
height: 18px;
--kubernetes-icon: #{$kubernetes-logo-color-svg};
--terraform-icon: #{$terraform-logo-color-svg};
--nomad-icon: #{$nomad-logo-color-svg};
--consul-icon: #{$consul-logo-color-svg};
--aws-icon: #{$aws-logo-color-svg};
}
table.consul-metadata-list tbody tr {
cursor: default;
}

View File

@ -1,16 +1,16 @@
%tooltip-panel {
margin: 0 !important;
}
%tooltip-panel dd > div {
top: auto !important;
overflow: visible;
}
%tooltip-panel,
%tooltip-panel dt {
cursor: pointer;
display: flex;
flex-direction: column;
}
%tooltip-panel dd > div.menu-panel {
top: auto;
overflow: visible;
}
%tooltip-panel dd {
display: none;
position: relative;
z-index: 1;
padding-top: 10px;
margin-bottom: -10px;
}

View File

@ -1,3 +1,6 @@
%tooltip-panel dt {
cursor: pointer;
}
/* This is the top chevron */
%tooltip-panel dd > div::before {
@extend %as-pseudo;

View File

@ -1,8 +1,3 @@
%app-view h1 span[data-tooltip] {
@extend %with-pseudo-tooltip;
text-indent: -9000px;
font-size: 0;
}
/* override structure min-width for the moment */
/* TODO: Clarify whether these should actually use */
/* the min-width from structure */

View File

@ -1,7 +1,5 @@
@import 'routes/dc/settings/index';
@import 'routes/dc/services/index';
@import 'routes/dc/nodes/index';
@import 'routes/dc/intention/index';
@import 'routes/dc/kv/index';
@import 'routes/dc/acls/index';
@import 'routes/dc/acls/tokens/index';

View File

@ -1,9 +1,12 @@
td a.is-management::after {
@extend %with-star-fill-mask, %as-pseudo;
background-color: var(--swatch-brand-600, $black);
height: 16px;
top: 2px;
padding-left: 32px;
html.template-acl.template-list main td strong {
@extend %pill-500, %frame-gray-900;
margin-right: 3px;
}
html.template-acl.template-list .filter-bar {
@extend %filter-bar-reversed;
}
html.template-acl.template-list .filter-bar [role='radiogroup'] {
@extend %expanded-single-select;
}
@media #{$--horizontal-tabs} {
.template-policy.template-list main header .actions,

View File

@ -1,12 +0,0 @@
// TODO: Move this out of here and into probably modal
.type-dialog {
@extend %anchor;
cursor: pointer;
float: right;
}
.template-token.template-edit main dd {
display: flex;
}
.template-token.template-edit main dl {
@extend %form-row;
}

View File

@ -1,21 +1,3 @@
html.template-node.template-show .sessions td:last-child {
justify-content: flex-end;
}
html.template-node.template-show .sessions td:first-child {
@extend %tbody-th;
}
html.template-node.template-list .unhealthy h2 {
margin-bottom: 0.7em;
}
html.template-node.template-show #meta-data table tr {
cursor: default;
}
html.template-node.template-show #services table tbody td em {
display: inline-block;
}
.healthy > div > ul > li {
padding-top: 16px;
}
.healthy h2 {
margin-bottom: 0em !important;
}

View File

@ -1,7 +1,10 @@
@media #{$--horizontal-tabs} {
.template-service.template-show main header .actions {
position: relative;
top: 48px;
margin-top: 0;
}
/* instance detail dl text*/
html.template-instance.template-show .app-view > header dl {
float: left;
margin-top: 19px;
margin-bottom: 23px;
margin-right: 50px;
}
html.template-instance.template-show .app-view > header dt {
font-weight: $typo-weight-bold;
}

View File

@ -82,7 +82,6 @@ pre code,
%button {
font-weight: $typo-weight-semibold;
}
%app-view-header dt,
%menu-panel dt,
%route-card section dt,
%route-card header:not(.short) dd,

View File

@ -26,8 +26,9 @@
{{#let (sort-by (comparator 'service' sort) filtered) as |sorted|}}
<ChangeableSet @dispatcher={{searchable 'service' sorted}} @terms={{search}}>
<BlockSlot @name="set" as |searched|>
<ConsulServiceList
<ConsulUpstreamList
@items={{searched}}
@dc={{dc}}
@nspace={{nspace}}
/>
</BlockSlot>

View File

@ -23,7 +23,7 @@ export default function(visitable, attribute, collection, text, intentions, filt
intentions: intentions(),
};
page.tabs.upstreamsTab = {
services: collection('.consul-service-list > ul > li:not(:first-child)', {
services: collection('.consul-upstream-list > ul > li:not(:first-child)', {
name: text('[data-test-service-name]'),
}),
};