mirror of https://github.com/hashicorp/consul
John Cowen
3 years ago
committed by
GitHub
87 changed files with 366 additions and 336 deletions
@ -1,32 +1,28 @@
|
||||
%anchor-decoration, |
||||
%anchor-decoration-active { |
||||
text-decoration: none; |
||||
@import './skin'; |
||||
a[rel*='external']::after { |
||||
@extend %with-exit-icon, %as-pseudo; |
||||
margin-left: 8px; |
||||
} |
||||
%anchor-decoration-intent { |
||||
text-decoration: underline; |
||||
%main-content label a[rel*='help'] { |
||||
color: $gray-400; |
||||
} |
||||
%anchor, |
||||
%anchor-intent, |
||||
%anchor-active { |
||||
color: $color-action; |
||||
%main-content a[rel*='help']::after { |
||||
@extend %with-info-circle-outline-icon, %as-pseudo; |
||||
opacity: 0.4; |
||||
} |
||||
%anchor-decoration:hover, |
||||
%anchor-decoration:focus { |
||||
@extend %anchor-decoration-intent; |
||||
%main-content h2 a { |
||||
color: $gray-900; |
||||
} |
||||
%anchor-decoration:active { |
||||
@extend %anchor-decoration-active; |
||||
%main-content h2 a[rel*='help']::after { |
||||
font-size: 0.65em; |
||||
margin-top: 0.2em; |
||||
margin-left: 0.2em; |
||||
} |
||||
%anchor { |
||||
@extend %anchor-decoration; |
||||
cursor: pointer; |
||||
background-color: $transparent; |
||||
|
||||
.tab-section > p:only-child [rel*='help']::after { |
||||
content: none; |
||||
} |
||||
%anchor:hover, |
||||
%anchor:focus { |
||||
@extend %anchor-intent; |
||||
} |
||||
%anchor:active { |
||||
@extend %anchor-active; |
||||
outline: 0; |
||||
%main-content p a, |
||||
%main-content dd a { |
||||
@extend %anchor; |
||||
} |
||||
|
@ -0,0 +1,32 @@
|
||||
%anchor-decoration, |
||||
%anchor-decoration-active { |
||||
text-decoration: none; |
||||
} |
||||
%anchor-decoration-intent { |
||||
text-decoration: underline; |
||||
} |
||||
%anchor, |
||||
%anchor-intent, |
||||
%anchor-active { |
||||
color: $color-action; |
||||
} |
||||
%anchor-decoration:hover, |
||||
%anchor-decoration:focus { |
||||
@extend %anchor-decoration-intent; |
||||
} |
||||
%anchor-decoration:active { |
||||
@extend %anchor-decoration-active; |
||||
} |
||||
%anchor { |
||||
@extend %anchor-decoration; |
||||
cursor: pointer; |
||||
background-color: $transparent; |
||||
} |
||||
%anchor:hover, |
||||
%anchor:focus { |
||||
@extend %anchor-intent; |
||||
} |
||||
%anchor:active { |
||||
@extend %anchor-active; |
||||
outline: 0; |
||||
} |
@ -1,2 +1,5 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
||||
.auth-form { |
||||
@extend %auth-form; |
||||
} |
@ -1,2 +1,21 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
||||
button[type='submit'], |
||||
button.type-submit, |
||||
a.type-create { |
||||
@extend %primary-button; |
||||
} |
||||
// TODO: Once we move action-groups to use aria menu we can get rid of |
||||
// some of this and just use not(aria-haspopup) |
||||
button[type='reset'], |
||||
header .actions button[type='button']:not(.copy-btn), |
||||
button.type-cancel { |
||||
@extend %secondary-button; |
||||
} |
||||
.with-confirmation .type-delete, |
||||
%app-view-content form button[type='button'].type-delete { |
||||
@extend %dangerous-button; |
||||
} |
||||
button.copy-btn { |
||||
@extend %copy-button; |
||||
} |
||||
|
@ -0,0 +1,11 @@
|
||||
--- |
||||
class: ember |
||||
state: needs-love |
||||
--- |
||||
|
||||
# CodeEditor |
||||
|
||||
```hbs preview-template |
||||
<CodeEditor /> |
||||
|
||||
``` |
@ -1,4 +1,5 @@
|
||||
@import './code-editor/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
// yet to pull the CodeMirror skin into the placeholder |
||||
.code-editor { |
||||
@extend %code-editor; |
@ -1,4 +1,24 @@
|
||||
@import './composite-row/index'; |
||||
@import './layout'; |
||||
@import './skin'; |
||||
%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; |
@ -1,4 +1,5 @@
|
||||
@import './confirmation-dialog/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
div.with-confirmation { |
||||
@extend %confirmation-dialog, %confirmation-dialog-inline; |
||||
} |
@ -1,4 +1,5 @@
|
||||
@import './definition-table/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
.definition-table { |
||||
@extend %definition-table; |
||||
} |
@ -1,5 +1,8 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
||||
.oidc-select { |
||||
@extend %oidc-select; |
||||
} |
||||
%oidc-select label { |
||||
@extend %form-element; |
||||
} |
@ -1,2 +1,46 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
||||
span.policy-service-identity, |
||||
span.policy-node-identity, |
||||
.leader, |
||||
.consul-auth-method-type, |
||||
.topology-metrics-source-type, |
||||
.consul-transparent-proxy { |
||||
@extend %pill-200, %frame-gray-600; |
||||
} |
||||
span.policy-service-identity::before, |
||||
span.policy-node-identity::before { |
||||
width: auto; |
||||
align-self: start; |
||||
font-size: inherit; |
||||
} |
||||
span.policy-node-identity::before { |
||||
content: 'Node Identity: '; |
||||
} |
||||
span.policy-service-identity::before { |
||||
content: 'Service Identity: '; |
||||
} |
||||
%pill.kubernetes::before { |
||||
@extend %with-logo-kubernetes-color-icon, %as-pseudo; |
||||
} |
||||
%pill.terraform::before { |
||||
@extend %with-logo-terraform-color-icon, %as-pseudo; |
||||
} |
||||
%pill.nomad::before { |
||||
@extend %with-logo-nomad-color-icon, %as-pseudo; |
||||
} |
||||
%pill.consul::before { |
||||
@extend %with-logo-consul-color-icon, %as-pseudo; |
||||
} |
||||
%pill.aws::before { |
||||
@extend %with-logo-aws-color-icon, %as-pseudo; |
||||
} |
||||
%pill.leader::before { |
||||
@extend %with-star-outline-mask, %as-pseudo; |
||||
} |
||||
%pill.jwt::before { |
||||
@extend %with-logo-jwt-color-icon, %as-pseudo; |
||||
} |
||||
%pill.oidc::before { |
||||
@extend %with-logo-oidc-color-icon, %as-pseudo; |
||||
} |
||||
|
@ -1,4 +1,5 @@
|
||||
@import './progress/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
.progress.indeterminate { |
||||
@extend %progress-indeterminate; |
||||
} |
@ -1,4 +1,5 @@
|
||||
@import './radio-card/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
.radio-card { |
||||
@extend %radio-card; |
||||
} |
@ -0,0 +1,31 @@
|
||||
--- |
||||
class: ember |
||||
state: needs-love |
||||
--- |
||||
# radio-group |
||||
|
||||
A component for creating horizontally laid out radio groups. It seems like we |
||||
do not use the Ember component at all, but we do use the CSS component here, |
||||
so we should look at this and decide exactly what to use, and whether it needs |
||||
refactoring/deprecating. |
||||
|
||||
```hbs preview-template |
||||
<RadioGroup @items={{ |
||||
array |
||||
(hash |
||||
key="value-1" |
||||
value="Value 1" |
||||
) |
||||
(hash |
||||
key="value-2" |
||||
value="Value 2" |
||||
) |
||||
}} /> |
||||
``` |
||||
|
||||
|
||||
```css |
||||
[role="radio-group"] { |
||||
@extend %radio-group; |
||||
} |
||||
``` |
@ -1,4 +1,5 @@
|
||||
@import './secret-button/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
.type-reveal { |
||||
@extend %secret-button; |
||||
} |
@ -1,2 +1,53 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
||||
%main-content table { |
||||
@extend %table; |
||||
} |
||||
%table-actions { |
||||
@extend %more-popover-menu; |
||||
overflow: visible; |
||||
} |
||||
%table-actions > [type='checkbox'] + label { |
||||
position: absolute; |
||||
right: 5px; |
||||
} |
||||
|
||||
table.consul-metadata-list tbody tr { |
||||
cursor: default; |
||||
} |
||||
table.consul-metadata-list tbody tr:hover { |
||||
box-shadow: none; |
||||
} |
||||
|
||||
%table th span::after { |
||||
@extend %with-info-circle-outline-mask, %as-pseudo; |
||||
color: $gray-500; |
||||
margin-left: 4px; |
||||
} |
||||
%table tbody tr { |
||||
cursor: pointer; |
||||
} |
||||
%table td:first-child { |
||||
padding: 0; |
||||
} |
||||
%table tbody tr:hover { |
||||
box-shadow: $decor-elevation-300; |
||||
} |
||||
|
||||
%table td.folder::before { |
||||
@extend %with-folder-outline-mask, %as-pseudo; |
||||
background-color: $gray-300; |
||||
margin-top: 1px; |
||||
margin-right: 5px; |
||||
} |
||||
/**/ |
||||
|
||||
@media #{$--lt-wide-table} { |
||||
/* hide actions on narrow screens, you can always click in do everything from there */ |
||||
%table tr > .actions { |
||||
display: none; |
||||
} |
||||
.consul-intention-list tr > :nth-last-child(2) { |
||||
display: none; |
||||
} |
||||
} |
||||
|
@ -1,4 +1,3 @@
|
||||
@import './dom-recycling-table/index'; |
||||
table.dom-recycling { |
||||
@extend %dom-recycling-table; |
||||
} |
@ -1,4 +1,5 @@
|
||||
@import './tabular-details/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
table.with-details { |
||||
@extend %tabular-details; |
||||
} |
@ -1,4 +1,5 @@
|
||||
@import './tooltip-panel/index'; |
||||
@import './skin'; |
||||
@import './layout'; |
||||
.tooltip-panel { |
||||
@extend %tooltip-panel; |
||||
} |
@ -1,27 +0,0 @@
|
||||
a[rel*='external']::after { |
||||
@extend %with-exit-icon, %as-pseudo; |
||||
margin-left: 8px; |
||||
} |
||||
%main-content label a[rel*='help'] { |
||||
color: $gray-400; |
||||
} |
||||
%main-content a[rel*='help']::after { |
||||
@extend %with-info-circle-outline-icon, %as-pseudo; |
||||
opacity: 0.4; |
||||
} |
||||
%main-content h2 a { |
||||
color: $gray-900; |
||||
} |
||||
%main-content h2 a[rel*='help']::after { |
||||
font-size: 0.65em; |
||||
margin-top: 0.2em; |
||||
margin-left: 0.2em; |
||||
} |
||||
|
||||
.tab-section > p:only-child [rel*='help']::after { |
||||
content: none; |
||||
} |
||||
%main-content p a, |
||||
%main-content dd a { |
||||
@extend %anchor; |
||||
} |
@ -1 +0,0 @@
|
||||
@import './app-view/index'; |
@ -1,4 +0,0 @@
|
||||
@import './auth-form/index'; |
||||
.auth-form { |
||||
@extend %auth-form; |
||||
} |
@ -1,4 +0,0 @@
|
||||
@import './auth-modal/index'; |
||||
#login-toggle + div { |
||||
@extend %auth-modal; |
||||
} |
@ -1,7 +0,0 @@
|
||||
main header nav:first-child { |
||||
position: absolute; |
||||
top: 12px; |
||||
} |
||||
main header nav:first-child ol { |
||||
@extend %breadcrumbs; |
||||
} |
@ -1,19 +0,0 @@
|
||||
button[type='submit'], |
||||
button.type-submit, |
||||
a.type-create { |
||||
@extend %primary-button; |
||||
} |
||||
// TODO: Once we move action-groups to use aria menu we can get rid of |
||||
// some of this and just use not(aria-haspopup) |
||||
button[type='reset'], |
||||
header .actions button[type='button']:not(.copy-btn), |
||||
button.type-cancel { |
||||
@extend %secondary-button; |
||||
} |
||||
.with-confirmation .type-delete, |
||||
%app-view-content form button[type='button'].type-delete { |
||||
@extend %dangerous-button; |
||||
} |
||||
button.copy-btn { |
||||
@extend %copy-button; |
||||
} |
@ -1,19 +0,0 @@
|
||||
@import './layout'; |
||||
@import './skin'; |
||||
%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; |
||||
} |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,4 +0,0 @@
|
||||
@import 'consul-ui/components/empty-state/index'; |
||||
.empty-state { |
||||
@extend %empty-state; |
||||
} |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,43 +0,0 @@
|
||||
label span { |
||||
@extend %user-select-none; |
||||
} |
||||
.has-error { |
||||
@extend %form-element-error; |
||||
} |
||||
// 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; |
||||
} |
||||
.type-toggle { |
||||
@extend %form-element, %sliding-toggle; |
||||
} |
||||
.checkbox-group { |
||||
@extend %checkbox-group; |
||||
} |
||||
%main-content form { |
||||
@extend %form; |
||||
} |
||||
span.label { |
||||
@extend %form-element-label; |
||||
} |
||||
%form table, |
||||
%radio-group, |
||||
%checkbox-group, |
||||
%main-content form dl { |
||||
@extend %form-row; |
||||
} |
||||
%radio-group label, |
||||
%main-content .type-select, |
||||
%main-content .type-password, |
||||
%main-content .type-text { |
||||
@extend %form-element; |
||||
} |
||||
%app-view-content form:not(.filter-bar) [role='radiogroup'], |
||||
%modal-window [role='radiogroup'] { |
||||
@extend %radio-group; |
||||
} |
||||
%sliding-toggle + .checkbox-group { |
||||
margin-top: -1em; |
||||
} |
@ -1,3 +0,0 @@
|
||||
.menu-panel { |
||||
@extend %menu-panel; |
||||
} |
@ -1,4 +0,0 @@
|
||||
@import './oidc-select/index'; |
||||
.oidc-select { |
||||
@extend %oidc-select; |
||||
} |
@ -1,44 +0,0 @@
|
||||
span.policy-service-identity, |
||||
span.policy-node-identity, |
||||
.leader, |
||||
.consul-auth-method-type, |
||||
.topology-metrics-source-type, |
||||
.consul-transparent-proxy { |
||||
@extend %pill-200, %frame-gray-600; |
||||
} |
||||
span.policy-service-identity::before, |
||||
span.policy-node-identity::before { |
||||
width: auto; |
||||
align-self: start; |
||||
font-size: inherit; |
||||
} |
||||
span.policy-node-identity::before { |
||||
content: 'Node Identity: '; |
||||
} |
||||
span.policy-service-identity::before { |
||||
content: 'Service Identity: '; |
||||
} |
||||
%pill.kubernetes::before { |
||||
@extend %with-logo-kubernetes-color-icon, %as-pseudo; |
||||
} |
||||
%pill.terraform::before { |
||||
@extend %with-logo-terraform-color-icon, %as-pseudo; |
||||
} |
||||
%pill.nomad::before { |
||||
@extend %with-logo-nomad-color-icon, %as-pseudo; |
||||
} |
||||
%pill.consul::before { |
||||
@extend %with-logo-consul-color-icon, %as-pseudo; |
||||
} |
||||
%pill.aws::before { |
||||
@extend %with-logo-aws-color-icon, %as-pseudo; |
||||
} |
||||
%pill.leader::before { |
||||
@extend %with-star-outline-mask, %as-pseudo; |
||||
} |
||||
%pill.jwt::before { |
||||
@extend %with-logo-jwt-color-icon, %as-pseudo; |
||||
} |
||||
%pill.oidc::before { |
||||
@extend %with-logo-oidc-color-icon, %as-pseudo; |
||||
} |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
@ -1,51 +0,0 @@
|
||||
%main-content table { |
||||
@extend %table; |
||||
} |
||||
%table-actions { |
||||
@extend %more-popover-menu; |
||||
overflow: visible; |
||||
} |
||||
%table-actions > [type='checkbox'] + label { |
||||
position: absolute; |
||||
right: 5px; |
||||
} |
||||
|
||||
table.consul-metadata-list tbody tr { |
||||
cursor: default; |
||||
} |
||||
table.consul-metadata-list tbody tr:hover { |
||||
box-shadow: none; |
||||
} |
||||
|
||||
%table th span::after { |
||||
@extend %with-info-circle-outline-mask, %as-pseudo; |
||||
color: $gray-500; |
||||
margin-left: 4px; |
||||
} |
||||
%table tbody tr { |
||||
cursor: pointer; |
||||
} |
||||
%table td:first-child { |
||||
padding: 0; |
||||
} |
||||
%table tbody tr:hover { |
||||
box-shadow: $decor-elevation-300; |
||||
} |
||||
|
||||
%table td.folder::before { |
||||
@extend %with-folder-outline-mask, %as-pseudo; |
||||
background-color: $gray-300; |
||||
margin-top: 1px; |
||||
margin-right: 5px; |
||||
} |
||||
/**/ |
||||
|
||||
@media #{$--lt-wide-table} { |
||||
/* hide actions on narrow screens, you can always click in do everything from there */ |
||||
%table tr > .actions { |
||||
display: none; |
||||
} |
||||
.consul-intention-list tr > :nth-last-child(2) { |
||||
display: none; |
||||
} |
||||
} |
@ -1,2 +0,0 @@
|
||||
@import './skin'; |
||||
@import './layout'; |
Loading…
Reference in new issue