mirror of https://github.com/hashicorp/consul
121 lines
3.1 KiB
SCSS
121 lines
3.1 KiB
SCSS
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: BUSL-1.1
|
|
*/
|
|
|
|
@import './layout';
|
|
%composite-row {
|
|
@extend %list-row;
|
|
}
|
|
%composite-row > .header {
|
|
@extend %composite-row-header, %list-row-header;
|
|
}
|
|
%composite-row > .detail {
|
|
@extend %composite-row-detail, %list-row-detail;
|
|
}
|
|
%composite-row > .actions {
|
|
@extend %composite-row-actions;
|
|
}
|
|
%with-composite-row-intent:hover,
|
|
%with-composite-row-intent:focus,
|
|
%with-composite-row-intent:active {
|
|
@extend %list-row-intent;
|
|
}
|
|
|
|
/* project level */
|
|
|
|
.list-collection > ul > li:not(:first-child) {
|
|
@extend %composite-row;
|
|
}
|
|
/* 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),
|
|
.consul-auth-method-list > ul > li:not(:first-child) {
|
|
@extend %with-composite-row-intent;
|
|
}
|
|
// TODO: This hides the iconless dt's in the below lists as they don't have
|
|
// tooltips the todo would be to wrap these texts in spans
|
|
.consul-nspace-list > ul > li:not(:first-child) dt,
|
|
.consul-token-list > ul > li:not(:first-child) dt,
|
|
.consul-policy-list > ul li:not(:first-child) dl:not(.datacenter) dt,
|
|
.consul-role-list > ul > li:not(:first-child) dt {
|
|
@extend %iconless-dt;
|
|
}
|
|
%iconless-dt {
|
|
display: none;
|
|
}
|
|
%iconless-dt + dd {
|
|
margin-left: 0 !important;
|
|
}
|
|
/* TODO: the service list has a 1px offset */
|
|
.consul-policy-list dl.datacenter dt,
|
|
.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 {
|
|
border-top: 1px solid var(--token-color-surface-interactive-active);
|
|
}
|
|
.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 .copy-button button {
|
|
@extend %body-100-medium;
|
|
}
|
|
%composite-row-header .copy-button {
|
|
margin-left: 4px;
|
|
}
|
|
%composite-row-detail .copy-button {
|
|
margin-top: 2px;
|
|
}
|
|
%composite-row .copy-button button {
|
|
padding: 0 !important;
|
|
margin: 0 !important;
|
|
}
|
|
%composite-row-header .copy-button button {
|
|
display: none;
|
|
}
|
|
%composite-row-header:hover .copy-button button {
|
|
display: block;
|
|
}
|
|
%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-text-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;
|
|
--icon-color: var(--token-color-consul-brand);
|
|
}
|