Remove the Bulma CSS Framework (#19878)
* Step one: remove bulma (#19587) * remove bulma and get app running * add back in each statments from bulma variables * remove space * address pr comments * add back copyright headedr * Step two: add back and organize relevant Bulma classes (#19664) * VAULT-14566 copy/paste bulma css for classes that it defines and we do not. * add three new helper files and move helpers.scss to a new directory called helper-classes * rename utils/colors to color_variables * integrate all bulma sizing into previous utils/spacing doc, address obvious duplicates and rename to spacing_variables. * small class name issues * clean up * comment clean up * Step three: add Bulma classes to relevant component styles (#19683) * add in bulma classes used in global-flash component * add in bulma classes used in the modal component * remaining bulma classes that can integrate into the vault css * remove replication-header.scss and replace with helper. * add bulma tabs classes to tabs component scss file * remove ui-wizard style * only do bulma explicit classes for now * add in breadcrumb styling from bulma * integrate bulma into css * remove unecessary tabs bulma styling * remove non-relevant bulma classes * remove non relevant bulma css * Step three cont. Bulma classes to component files (#19691) * return box-label to as before now that you have those bulma classes * missing modal bulma classes * add bulma class to box component * missed some bulma box classes * remove scss unecessary * add in bulma classes to icon component. * move up icon * missed modal class * clean up * size vars to icon * Step four: address core directory files (#19719) * move some basic helpers over to typography helper. * rename helpers to other * moveing generic classes to other relevant scss files. * rename generic to link * clean up * clean up * address core/box * remove hero because the class is not used anywhere. * add in level bulma css * welp forgot a file. * add in missing bulma classes into core/menu * UI/step four core files 2 (#19754) * address issue with input border and box shadow * remove the is-white class, it was being used very poorly, replaced with exisiting helpers. * organizing the forms and button core files * small amount of clean up * hot mess of colors dealing with just danger for now * removed moved over bulma classes * use helper for this one off * clean up * wip on the buttons * fix select select:: after * clean up select from bulma-classes. * clean up * clean up * small fix * Cleaning up the last of the core files (welp there's still more) (#19779) * one missing thing for level core. * replace no-underline and link-item with helper text-decoration-none * core/menu double check * handle core/message * create and add to bulma classes for core/columns * add in bulma-classes columns and column... not fun to qa later. * remove core/notification * core/progress bar * revert the hbs changes * fix over revert * Core files cont. Focus on core/form (#19794) * create input and textarea core files, move charts * remove input and textarea classes from bulma classes * remove input-hint component file, never a component * fix the mess that is help-text: * help and is-help and sub-text are a mess... * fix switch alignment issues * deal with file-name * clean file out of bulma-classes * create layout helper and move out some remaining button classes * deal with core/title * is-marginless move to helper * helper layout add to core * clean up * remove core/tables * test * Revert "test" This reverts commit e695dedfe933d71320cd7eeee33f6b21a8d54b37. * Core files continued (#19896) * test * combine input and textarea * clean up navbar brannd * clean up the single instance delete class used on the modal and match with flight icon * add back autocomplete to component * create core/file * alphabetize file css blocks * core/checkboxes create and address * combine b-checkboxes classes and remove from core the utils * address duplicate helper * Core files continued (#19930) * clean up helper and remove duplicate class * more clean up of the other helper * fix pagination, hot mess * add radio to checkbox styling * tag to tags rename singular * container core file * finally... changing forms to one element, field * finally remove bulma-classes * cleanup * comment cleanup * add comment about pagination * Consolidating our size variables with Bulma's (#19951) * remove bulma-size variables that are duplicates of our own * remove unused is-size-xx and duplicate font weights * remove duplicate class * ahh this is madness * remove column-gap var * remove duplicate sizing of * clean up breakpoints * replace border-radius:2px for var so folks know the common border-radius * replace header-height with new spacing var * replace body-size and console-size vars with other sizing vars * clean up final of size vars * radius override things blah fixed * last size var * add back * Finish size var clean up (#19970) * remove size-small, etc. * fix size-small things * remove label unused classes * move out font-family utils * Update Color Vars (remove bulma color vars and overrides) (#20031) * remove bulma_variables file * remove duplicate helper * replace hardcoded with color vars when appropriate * broaden font-family utils * add back box-link-hover-shadow * welp * fix pagination coloring * Small fixes post var and core file work (#20035) * fix auth-login splash container * fix some splash page issues * fix status menu * fix menu-list regression * fix regression on button text-decoration * fix tag regression * fix regression on select select * fix regression on field field * regression on textarea * button focus state regression * fix inputs * fix is-outlined buttons * Remove bulma switch (#20065) * remove bulma/switch * fix disbled style * Bulma removal: starting the clean up process (#20066) * remove unused class name * add todo * wip shamir-modal-flow usage of file styling * final fix * fix message type message-body css * better match * fix a.active on popup-menu-content * VAULT-14625 fix * blah overrides overrides and oh another override * fix breadcrumb link * fixes * fix readonly state and hover on inputs.scss * fix button style issue * fix modal title spacing issue * clean up * fix switch * fix checkbox issue and pr comment * fix issue with tabs * pr comment * Bulma clean up cont. (#20119) * gotta use rem on page container... it makes a difference, can't switch to px * missing helper for background color * fix textarea with icon * can't seem to replace rem with px ;/ * fix table issues * clean up columns.scss file * fix * fix rem vs px issues * address some todos * fix todo on help is-danger * best effort for sizing var clean up * reomve duplicate * clearify * welp forgot a word * address sr-only class definition * move to helper * replaced single use class with helper and cleaned up flexbox * move to make more sense * move around layout and container * color things * things * Cleanup 🧹 (#20196) * remove carry over classes from bulma * clean up title.scss * clean up title is-5 has-top-padding-m and box.scss * clean up breadcrumbs, buttons, c&r, columns * clean up core files * clean up cont looking at component files * clean up remaining component files * fix pagination * pr comments, thank you * add in merge color helper * Remove out of scope changes (#20218) * remove out of scope changes * fix test * add changelog * remove scope creep * fix scope creep cont * qa fixes * Fixes found while QA'ing Secret Engines (#20264) * fix active tab issue for both secret and auth mounts * use helper instead of :not last on content margin which causes problems * fix missing disabled on b-checkbox * quick fix * deal with body-size issue * fix order of other helper * small fixes from qa * update comments on the core files and change desktop font size from px back to rem * missed 16px replaced with 1rem * address chelseas comments * fixes that jordan noticed * remove unstable flexbox test * test fix * rename other to general * address claires qa comments * add in missing helper must have missed in earlier merge * fix button * small small small fix
This commit is contained in:
parent
2f63318cea
commit
dcff8c2a07
|
@ -0,0 +1,3 @@
|
|||
```release-note:improvement
|
||||
ui: Remove the Bulma CSS framework.
|
||||
```
|
|
@ -1,5 +1,5 @@
|
|||
{{#if this.policy.policyType}}
|
||||
<nav class="tabs">
|
||||
<nav class="tabs has-bottom-margin-l">
|
||||
<ul>
|
||||
<li class={{unless this.showExamplePolicy "active"}}>
|
||||
<button
|
||||
|
|
|
@ -18,13 +18,3 @@
|
|||
// Font comes from npm package: https://www.npmjs.com/package/text-security
|
||||
// We took the font we wanted and moved it into the ui/fonts folder
|
||||
@include font-face('text-security-square');
|
||||
|
||||
.sr-only {
|
||||
clip: rect(0 0 0 0);
|
||||
clip-path: inset(50%);
|
||||
height: 1px;
|
||||
overflow: hidden;
|
||||
position: absolute;
|
||||
white-space: nowrap;
|
||||
width: 1px;
|
||||
}
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: $spacing-m 0;
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
@ -67,7 +67,7 @@
|
|||
|
||||
.replication-actions-grid-item .action-block {
|
||||
width: 100%;
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
height: inherit;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.autocomplete-input {
|
||||
background: $white !important;
|
||||
border: 1px solid $grey-light;
|
||||
box-sizing: border-box;
|
||||
border-radius: 3px;
|
||||
width: 99%;
|
||||
padding: 4px 0;
|
||||
margin-left: 0.5%;
|
||||
margin-top: -4px;
|
||||
}
|
||||
|
||||
.autocomplete-input-option {
|
||||
padding: 12px;
|
||||
&:hover {
|
||||
background-color: $grey-lightest;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
|
@ -10,7 +10,7 @@ label.box-label {
|
|||
.box-label {
|
||||
@extend .box;
|
||||
@extend .is-centered;
|
||||
@extend .is-gapless;
|
||||
|
||||
border-color: $grey-light;
|
||||
border-radius: 3px;
|
||||
box-shadow: $box-link-shadow;
|
||||
|
@ -63,6 +63,6 @@ label.box-label {
|
|||
color: $grey;
|
||||
|
||||
.is-selected & {
|
||||
color: $text;
|
||||
color: $grey-darkest;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,27 +20,6 @@ $dark-gray: #535f73;
|
|||
.calendar-title {
|
||||
padding: $size-10 $size-8;
|
||||
}
|
||||
.calendar-widget-dropdown {
|
||||
@extend .button;
|
||||
@extend .is-ghost;
|
||||
@extend .has-icon-right;
|
||||
border: 0;
|
||||
color: $black;
|
||||
transition: background-color $speed;
|
||||
width: 150px;
|
||||
|
||||
&:hover {
|
||||
background-color: $ui-gray-100;
|
||||
border: 0;
|
||||
color: $blue;
|
||||
}
|
||||
|
||||
&.is-active {
|
||||
background-color: $ui-gray-100;
|
||||
border: 0;
|
||||
color: $blue;
|
||||
}
|
||||
}
|
||||
|
||||
.select-year {
|
||||
grid-area: select-year;
|
||||
|
@ -67,18 +46,18 @@ $dark-gray: #535f73;
|
|||
|
||||
> button {
|
||||
&.is-month-list {
|
||||
background-color: white;
|
||||
background-color: $white;
|
||||
color: black;
|
||||
text-align: center;
|
||||
border: 1px solid $ui-gray-200;
|
||||
border-radius: 2px;
|
||||
border: $light-border;
|
||||
border-radius: $radius;
|
||||
}
|
||||
&.is-current-month {
|
||||
border: 1px solid $ui-gray-900;
|
||||
}
|
||||
&:hover {
|
||||
background-color: lighten($dark-gray, 30%);
|
||||
color: white;
|
||||
color: $white;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
@ -104,7 +83,7 @@ $dark-gray: #535f73;
|
|||
grid-template-rows: 0.7fr 3fr;
|
||||
box-shadow: $box-shadow, $box-shadow-middle;
|
||||
background-color: white;
|
||||
border-radius: 2px;
|
||||
border-radius: $radius;
|
||||
}
|
||||
|
||||
.calendar-widget-grid {
|
||||
|
@ -118,12 +97,13 @@ $dark-gray: #535f73;
|
|||
// for modal-dialog tooltips
|
||||
.calendar-tooltip {
|
||||
background-color: $ui-gray-700;
|
||||
color: white;
|
||||
color: $white;
|
||||
font-size: $size-8;
|
||||
padding: $size-9;
|
||||
border-radius: $radius-large;
|
||||
width: 141px;
|
||||
}
|
||||
|
||||
.ember-modal-dialog {
|
||||
z-index: 1000;
|
||||
}
|
||||
|
|
|
@ -36,9 +36,9 @@ $gutter-grey: #2a2f36;
|
|||
|
||||
.cm-s-hashi-read-only {
|
||||
&.CodeMirror {
|
||||
background-color: $grey-lighter;
|
||||
background-color: $grey-lightest;
|
||||
border: none;
|
||||
color: #626873;
|
||||
color: $ui-gray-600;
|
||||
font-family: $family-monospace;
|
||||
-webkit-font-smoothing: auto;
|
||||
line-height: 1.4;
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
.confirm-wrapper {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border-radius: 2px;
|
||||
border-radius: $radius;
|
||||
box-shadow: $box-shadow, $box-shadow-middle;
|
||||
}
|
||||
|
||||
|
@ -37,16 +37,16 @@
|
|||
button.link,
|
||||
a {
|
||||
background-color: $white;
|
||||
color: $menu-item-color;
|
||||
color: $grey-darkest;
|
||||
|
||||
&:hover {
|
||||
background-color: $menu-item-hover-background-color;
|
||||
color: $menu-item-hover-color;
|
||||
background-color: $ui-gray-050;
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
&.is-active {
|
||||
background-color: $menu-item-active-background-color;
|
||||
color: $menu-item-active-color;
|
||||
background-color: $blue-500;
|
||||
color: $blue;
|
||||
}
|
||||
|
||||
&.is-destroy {
|
||||
|
@ -76,7 +76,7 @@
|
|||
}
|
||||
|
||||
.confirm-action > span {
|
||||
@include from($tablet) {
|
||||
@include from($mobile) {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
}
|
||||
|
@ -88,7 +88,7 @@
|
|||
.confirm-action-text:not(.is-block) {
|
||||
text-align: right;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
display: block;
|
||||
margin-bottom: $size-8;
|
||||
text-align: left;
|
||||
|
|
|
@ -11,8 +11,8 @@
|
|||
min-height: 0;
|
||||
overflow: scroll;
|
||||
right: 0;
|
||||
top: $header-height;
|
||||
transition: min-height $speed ease-out, transform $speed ease-in;
|
||||
top: 4rem;
|
||||
transition: min-height $speed $easing, transform $speed ease-in;
|
||||
will-change: transform, min-height;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
width: 100vw;
|
||||
|
@ -37,7 +37,7 @@
|
|||
color: $white;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-size: $body-size;
|
||||
font-size: 14px;
|
||||
font-weight: $font-weight-semibold;
|
||||
justify-content: flex-end;
|
||||
min-height: 100%;
|
||||
|
@ -48,19 +48,19 @@
|
|||
p {
|
||||
background: none;
|
||||
color: inherit;
|
||||
font-size: $body-size;
|
||||
font-size: 14px;
|
||||
min-height: 2rem;
|
||||
padding: 0;
|
||||
|
||||
&:not(.console-ui-command):not(.CodeMirror-line) {
|
||||
padding-left: $console-spacing;
|
||||
padding-left: $size-4;
|
||||
}
|
||||
}
|
||||
|
||||
.cm-s-hashi.CodeMirror {
|
||||
background-color: rgba($black, 0.5) !important;
|
||||
font-weight: $font-weight-normal;
|
||||
margin-left: $console-spacing;
|
||||
margin-left: $size-4;
|
||||
padding: $size-8 $size-4;
|
||||
}
|
||||
}
|
||||
|
@ -108,7 +108,7 @@
|
|||
}
|
||||
|
||||
.console-ui-alert {
|
||||
margin-left: calc(#{$console-spacing} - 0.33rem);
|
||||
margin-left: calc(#{$size-4} - 0.33rem);
|
||||
position: relative;
|
||||
|
||||
svg {
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
box-shadow: $box-shadow-middle, 0 0 1px $grey-dark;
|
||||
}
|
||||
.control-group-success.is-editor {
|
||||
background: $grey-lighter;
|
||||
background: $grey-lightest;
|
||||
}
|
||||
|
||||
.control-group a {
|
||||
|
@ -18,7 +18,7 @@
|
|||
.control-group-header {
|
||||
box-shadow: 0 0 1px currentColor;
|
||||
padding: $size-9 $size-6;
|
||||
background: $grey-lighter;
|
||||
background: $grey-lightest;
|
||||
color: $grey-dark;
|
||||
position: relative;
|
||||
strong {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
*/
|
||||
|
||||
.doc-link {
|
||||
color: $link;
|
||||
color: $blue;
|
||||
text-decoration: none;
|
||||
font-weight: $font-weight-semibold;
|
||||
&:hover {
|
||||
|
|
|
@ -5,8 +5,12 @@
|
|||
|
||||
.env-banner {
|
||||
align-self: center;
|
||||
border-radius: 3rem;
|
||||
background: linear-gradient(135deg, $blue, $purple);
|
||||
border-radius: $size-1;
|
||||
background: linear-gradient(
|
||||
135deg,
|
||||
$blue,
|
||||
hsl(271, 100%, 71%)
|
||||
); // only use case for purple in the app. define here instead of utils/color_var
|
||||
animation: env-banner-color-rotate 8s infinite linear alternate;
|
||||
color: $white;
|
||||
margin-top: -20px;
|
||||
|
|
|
@ -6,10 +6,6 @@
|
|||
.form-section {
|
||||
padding: 1.75rem 0;
|
||||
box-shadow: 0 -1px 0 0 rgba($black, 0.1);
|
||||
|
||||
> p.has-padding-bottom {
|
||||
padding-bottom: 1.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
.field:first-child .form-section,
|
||||
|
|
|
@ -3,6 +3,31 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.icon {
|
||||
align-items: center;
|
||||
display: inline-flex;
|
||||
height: $size-4;
|
||||
justify-content: center;
|
||||
vertical-align: middle;
|
||||
width: $size-4;
|
||||
// override the display if .button.icon to .button's default display: inline-block. See manage namespaces icon button in the namespace picker
|
||||
&.button {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
.icon-blue {
|
||||
color: $blue;
|
||||
}
|
||||
|
||||
.flight-icon {
|
||||
&.flight-icon-display-inline {
|
||||
vertical-align: middle;
|
||||
margin-left: $spacing-xxs;
|
||||
margin-right: $spacing-xxs;
|
||||
}
|
||||
}
|
||||
|
||||
.hs-icon {
|
||||
flex: 0 0 auto;
|
||||
display: inline-flex;
|
||||
|
@ -39,6 +64,7 @@
|
|||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.hs-icon-xl {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
|
@ -48,15 +74,3 @@
|
|||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
.flight-icon {
|
||||
&.flight-icon-display-inline {
|
||||
vertical-align: middle;
|
||||
margin-left: 4px;
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
.icon-blue {
|
||||
color: $blue;
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
box-shadow: none;
|
||||
}
|
||||
|
||||
@include from($tablet) {
|
||||
@include from($mobile) {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
|
@ -48,11 +48,13 @@
|
|||
}
|
||||
|
||||
.hs-icon {
|
||||
margin-right: 0.25rem;
|
||||
margin-right: $size-11;
|
||||
}
|
||||
|
||||
.icon-true {
|
||||
color: $green-500;
|
||||
}
|
||||
|
||||
.icon-false {
|
||||
color: $ui-gray-300;
|
||||
}
|
||||
|
@ -63,14 +65,14 @@
|
|||
}
|
||||
|
||||
.info-table-row:not(.is-mobile) .column {
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
&:first-child {
|
||||
padding-left: 0;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding: $size-8 0 0;
|
||||
}
|
||||
}
|
||||
|
@ -78,7 +80,7 @@
|
|||
&:last-child {
|
||||
padding-right: 0;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding: 0 0 $size-8;
|
||||
}
|
||||
}
|
||||
|
@ -86,8 +88,11 @@
|
|||
|
||||
.info-table-row-header {
|
||||
margin: 0;
|
||||
font-size: $size-8;
|
||||
color: $grey;
|
||||
font-weight: $font-weight-semibold;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
display: none;
|
||||
}
|
||||
.info-table-row:not(.is-mobile) .column:last-child {
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.info-table {
|
||||
&.vlt-table td {
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
.info-table-row {
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.input-hint {
|
||||
padding: 0 $size-9;
|
||||
font-size: $size-8;
|
||||
color: $grey;
|
||||
}
|
|
@ -3,11 +3,6 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.kmip-allowed-operations-header {
|
||||
@extend .title;
|
||||
@extend .is-6;
|
||||
padding-left: $spacing-s;
|
||||
}
|
||||
.kmip-role-allowed-operations {
|
||||
@extend .box;
|
||||
flex: 1 1 auto;
|
||||
|
|
|
@ -41,10 +41,10 @@ a.list-item-row,
|
|||
&:hover,
|
||||
&:focus,
|
||||
&:active {
|
||||
margin-left: #{-$column-gap} !important;
|
||||
margin-right: #{-$column-gap} !important;
|
||||
padding-left: $column-gap;
|
||||
padding-right: $column-gap;
|
||||
margin-left: #{-$size-9} !important;
|
||||
margin-right: #{-$size-9} !important;
|
||||
padding-left: $size-9;
|
||||
padding-right: $size-9;
|
||||
position: relative;
|
||||
box-shadow: 0 2px 0 -1px $grey-light, 0 -2px 0 -1px $grey-light, $box-link-hover-shadow,
|
||||
$box-shadow-middle;
|
||||
|
|
|
@ -3,6 +3,53 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file combines Bulma CSS with our own CSS that previously overrode Bulma. In the future we should adopt the HDS pagination.
|
||||
|
||||
.pagination-previous[disabled],
|
||||
.pagination-next[disabled],
|
||||
.pagination-link[disabled],
|
||||
.pagination-ellipsis[disabled] {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.pagination-previous,
|
||||
.pagination-next,
|
||||
.pagination-link,
|
||||
.pagination-ellipsis,
|
||||
.tabs {
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.pagination-previous,
|
||||
.pagination-next,
|
||||
.pagination-link,
|
||||
.pagination-ellipsis {
|
||||
align-items: center;
|
||||
box-shadow: none;
|
||||
display: inline-flex;
|
||||
font-size: $size-6;
|
||||
justify-content: flex-start;
|
||||
line-height: 1.5;
|
||||
margin: $size-11;
|
||||
padding-bottom: calc(0.5em - 1px);
|
||||
padding-left: calc(0.75em - 1px);
|
||||
padding-right: calc(0.75em - 1px);
|
||||
padding-top: calc(0.5em - 1px);
|
||||
position: relative;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.pagination-link.is-current {
|
||||
color: $white;
|
||||
}
|
||||
|
||||
.pagination-list {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
justify-content: flex-start;
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.list-pagination {
|
||||
@extend .has-slim-padding;
|
||||
position: relative;
|
||||
|
@ -29,8 +76,21 @@
|
|||
.pagination {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.pagination-list {
|
||||
flex-grow: 0;
|
||||
flex-wrap: wrap;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
}
|
||||
}
|
||||
.pagination,
|
||||
.pagination-list {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
.pagination-ellipsis {
|
||||
margin: 0;
|
||||
|
@ -38,6 +98,7 @@
|
|||
padding-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.list-pagination .pagination-previous,
|
||||
.list-pagination .pagination-next {
|
||||
@extend .button;
|
||||
|
@ -45,9 +106,11 @@
|
|||
@extend .is-outlined;
|
||||
@extend .is-compact;
|
||||
background: $white;
|
||||
border-color: $blue-500;
|
||||
color: $blue-500;
|
||||
max-width: 8rem;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
max-width: 2rem;
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
|
@ -55,7 +118,7 @@
|
|||
|
||||
.pagination-next-label,
|
||||
.pagination-previous-label {
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
@ -76,8 +139,62 @@
|
|||
}
|
||||
}
|
||||
|
||||
.list-pagination .pagination-next {
|
||||
@include until($tablet) {
|
||||
.pagination-previous {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
.pagination-next {
|
||||
order: 3;
|
||||
}
|
||||
|
||||
.pagination.is-centered {
|
||||
&.pagination-previous {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
&.pagination-list {
|
||||
justify-content: center;
|
||||
order: 2;
|
||||
}
|
||||
|
||||
&.pagination-next {
|
||||
order: 3;
|
||||
}
|
||||
}
|
||||
|
||||
.pagination.is-right {
|
||||
&.pagination-previous {
|
||||
order: 1;
|
||||
}
|
||||
|
||||
&.pagination-next {
|
||||
order: 2;
|
||||
}
|
||||
|
||||
&.pagination-list {
|
||||
justify-content: flex-end;
|
||||
order: 3;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (max-width: 768px) {
|
||||
.pagination {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.pagination-previous,
|
||||
.pagination-next {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
.pagination-list li {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.list-pagination .pagination-next {
|
||||
@include until($mobile) {
|
||||
order: 3;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
// need to be the same font and small
|
||||
.masked-input.masked .masked-value {
|
||||
font-size: 9px;
|
||||
font-family: $family-primary;
|
||||
font-family: $family-sans;
|
||||
line-height: 2.5;
|
||||
}
|
||||
|
||||
|
@ -80,7 +80,6 @@
|
|||
&:active,
|
||||
&.is-active,
|
||||
&:focus,
|
||||
&.is-focused,
|
||||
&:hover,
|
||||
&:focus:not(:active) {
|
||||
color: $blue;
|
||||
|
|
|
@ -3,31 +3,67 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.modal {
|
||||
align-items: center;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
top: 0;
|
||||
display: none;
|
||||
justify-content: center;
|
||||
overflow: hidden;
|
||||
position: fixed;
|
||||
z-index: 20;
|
||||
|
||||
&.is-active {
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
||||
.modal-background {
|
||||
background: rgba(235, 238, 242, 0.9);
|
||||
background: $ui-gray-100;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
opacity: 0.9;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.modal-card {
|
||||
box-shadow: $box-shadow-highest;
|
||||
border: 1px solid $grey-light;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
max-height: calc(100vh - 70px);
|
||||
margin-top: 60px;
|
||||
min-width: calc(100vw * 0.3);
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
|
||||
&-head {
|
||||
border-radius: 0;
|
||||
background-color: $grey-lightest;
|
||||
border-bottom: 1px solid $grey-light;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
&-foot {
|
||||
border-radius: 0;
|
||||
border: 0;
|
||||
background-color: $white;
|
||||
padding: 20px;
|
||||
|
||||
.button:not(:last-child) {
|
||||
margin-right: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
&-title.title {
|
||||
margin: 0;
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
.copy-text {
|
||||
|
@ -52,6 +88,14 @@
|
|||
align-items: center;
|
||||
}
|
||||
|
||||
.modal-card-body {
|
||||
background-color: $white;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
overflow: auto;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
pre {
|
||||
background-color: inherit;
|
||||
}
|
||||
|
@ -66,21 +110,13 @@ pre {
|
|||
}
|
||||
}
|
||||
|
||||
.modal-confirm-section .is-help {
|
||||
color: $grey;
|
||||
margin: $spacing-xxs 0;
|
||||
strong {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.modal-confirm-section {
|
||||
margin: $spacing-xl 0 $spacing-m;
|
||||
}
|
||||
|
||||
.modal-card-foot-outlined {
|
||||
background: #f7f8fa;
|
||||
border-top: 1px solid #bac1cc;
|
||||
background: $ui-gray-050;
|
||||
border-top: $base-border;
|
||||
}
|
||||
|
||||
.modal-radio-button {
|
||||
|
@ -113,3 +149,13 @@ pre {
|
|||
padding-left: $spacing-m;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (min-width: 769px), print {
|
||||
.modal-card,
|
||||
.modal-content {
|
||||
margin: 0 auto;
|
||||
max-height: calc(100vh - 40px);
|
||||
width: 640px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,11 +77,11 @@
|
|||
width: $drawer-width;
|
||||
}
|
||||
}
|
||||
|
||||
.namespace-picker-content .level-left {
|
||||
max-width: 210px;
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
-ms-word-break: break-all;
|
||||
word-break: break-all;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
|
|
@ -15,12 +15,12 @@
|
|||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
}
|
||||
.level-right {
|
||||
@include from($tablet) {
|
||||
@include from($mobile) {
|
||||
justify-content: flex-end;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
|
||||
.popup-menu-content,
|
||||
.ember-power-select-options {
|
||||
border-radius: 2px;
|
||||
border-radius: $radius;
|
||||
margin: -2px 0 0 0;
|
||||
|
||||
& > .box {
|
||||
border-radius: 2px;
|
||||
border-radius: $radius;
|
||||
box-shadow: $box-shadow, $box-shadow-middle;
|
||||
padding: 0;
|
||||
position: relative;
|
||||
|
@ -53,17 +53,17 @@
|
|||
.ember-power-select-option[aria-current='true'],
|
||||
a {
|
||||
background-color: $white;
|
||||
color: $menu-item-color;
|
||||
color: $grey-darkest;
|
||||
|
||||
&:hover {
|
||||
background-color: $menu-item-hover-background-color;
|
||||
color: $menu-item-hover-color;
|
||||
background-color: $ui-gray-050;
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
&.active,
|
||||
.is-active {
|
||||
background-color: $menu-item-active-background-color;
|
||||
color: $menu-item-active-color;
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
color: $blue;
|
||||
}
|
||||
|
||||
&.is-destroy {
|
||||
|
|
|
@ -11,13 +11,10 @@
|
|||
|
||||
.overflow-ellipsis {
|
||||
box-sizing: border-box;
|
||||
|
||||
&.is-closed {
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
}
|
||||
|
||||
.has-font-weight-normal {
|
||||
font-weight: $font-weight-normal;
|
||||
}
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
grid-template-rows: 0.2fr 1fr 0.2fr 1fr;
|
||||
}
|
||||
|
||||
&.has-border-danger:hover {
|
||||
&.has-error-border:hover {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.replication-header {
|
||||
.tabs-container {
|
||||
margin-bottom: $spacing-l;
|
||||
}
|
||||
}
|
|
@ -76,8 +76,8 @@ div > .ember-power-select-options {
|
|||
}
|
||||
|
||||
.ember-power-select-option[aria-current='true'] {
|
||||
background-color: $menu-item-hover-background-color;
|
||||
color: $menu-item-hover-color;
|
||||
background-color: $ui-gray-050;
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
.ember-power-select-option--no-matches-message {
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
.button {
|
||||
&:disabled {
|
||||
border-color: $vault-gray-300;
|
||||
border-color: $ui-gray-300;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -96,7 +96,7 @@
|
|||
border-radius: $radius;
|
||||
}
|
||||
|
||||
.selectable-card.has-border-danger {
|
||||
.selectable-card.has-error-border {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
margin-right: $size-8;
|
||||
}
|
||||
.progress {
|
||||
box-shadow: 0 0 0 4px $progress-bar-background-color;
|
||||
box-shadow: 0 0 0 4px $ui-gray-050;
|
||||
margin-top: $size-10;
|
||||
min-width: 90px;
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
margin: 0.75rem 0.75rem 0.75rem 0;
|
||||
padding: 0 0 0 0.75rem;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
background-color: $white;
|
||||
bottom: 0;
|
||||
left: -1.5rem;
|
||||
|
@ -26,7 +26,7 @@
|
|||
}
|
||||
|
||||
&.is-active {
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
transform: translateX(0);
|
||||
}
|
||||
|
||||
|
@ -45,7 +45,7 @@
|
|||
position: absolute;
|
||||
top: 0;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
display: block;
|
||||
}
|
||||
|
||||
|
@ -59,7 +59,7 @@
|
|||
padding-top: 5.25rem;
|
||||
position: relative;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding-top: $size-6;
|
||||
}
|
||||
}
|
||||
|
@ -67,7 +67,7 @@
|
|||
.menu-label {
|
||||
color: $grey-light;
|
||||
font-weight: $font-weight-bold;
|
||||
font-size: $size-small;
|
||||
font-size: $size-8;
|
||||
line-height: 1;
|
||||
margin-bottom: $size-8;
|
||||
padding-left: $size-5;
|
||||
|
@ -77,7 +77,7 @@
|
|||
border-top: $base-border;
|
||||
padding: $size-9 0;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding-top: $size-4;
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@
|
|||
border-right: 4px solid $blue;
|
||||
}
|
||||
}
|
||||
|
||||
// TODO will be removed with the navbar work. Reminder to remove the var $fullhd as this is the only use case.
|
||||
.tag {
|
||||
@include from($fullhd) {
|
||||
float: right;
|
||||
|
|
|
@ -3,15 +3,26 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the style for .tabs-container, .tabs and .tab
|
||||
|
||||
.page-header + .tabs-container {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.tabs {
|
||||
align-items: stretch;
|
||||
box-shadow: inset 0 -1px 0 $grey-light;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
overflow: hidden;
|
||||
overflow-x: auto;
|
||||
user-select: none;
|
||||
white-space: nowrap;
|
||||
|
||||
ul {
|
||||
border-color: transparent;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
min-height: 3rem;
|
||||
|
||||
> a {
|
||||
|
@ -25,9 +36,23 @@
|
|||
}
|
||||
}
|
||||
li {
|
||||
// solves for tools -> sub-tabs like "Unwrap data" -> "Data"
|
||||
&.is-active {
|
||||
border-bottom: 2px solid $blue;
|
||||
color: $blue;
|
||||
}
|
||||
// solves for tabs on secret engines
|
||||
> a &.active {
|
||||
border-color: $blue;
|
||||
color: $blue !important;
|
||||
border-bottom: 2px solid $blue;
|
||||
color: $blue;
|
||||
}
|
||||
// solves for tabs on auth mounts
|
||||
> a {
|
||||
&.active {
|
||||
color: $blue;
|
||||
background-color: transparent;
|
||||
border-bottom: 2px solid $blue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -37,19 +62,27 @@
|
|||
box-shadow: none;
|
||||
}
|
||||
&.active a,
|
||||
&.is-active a,
|
||||
&.active .tab {
|
||||
border-color: $blue;
|
||||
color: $blue;
|
||||
}
|
||||
}
|
||||
// important for auth tabs in active state, otherwise the border-bottom will not show.
|
||||
a {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
a,
|
||||
.tab {
|
||||
border-bottom: 2px solid transparent;
|
||||
color: $grey;
|
||||
font-weight: $font-weight-semibold;
|
||||
text-decoration: none;
|
||||
padding: $size-6 $size-8 $size-8;
|
||||
border-bottom: 2px solid transparent;
|
||||
text-decoration: none;
|
||||
transition: background-color $speed, border-color $speed;
|
||||
|
||||
&:hover,
|
||||
|
@ -59,6 +92,7 @@
|
|||
|
||||
&:hover {
|
||||
background-color: $ui-gray-050;
|
||||
color: $grey-darkest;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file is not being used. https://github.com/hashicorp/vault/pull/19220
|
||||
.ui-wizard-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
@ -23,7 +24,7 @@
|
|||
padding-right: 324px;
|
||||
padding-right: calc(324px + env(safe-area-inset-right));
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
padding-right: 0;
|
||||
padding-bottom: 50vh;
|
||||
}
|
||||
|
@ -38,7 +39,7 @@
|
|||
position: fixed;
|
||||
right: $size-8;
|
||||
bottom: $size-8;
|
||||
top: calc(#{$header-height} + #{$size-8});
|
||||
top: calc(#{4rem} + #{$size-8});
|
||||
overflow: auto;
|
||||
|
||||
p {
|
||||
|
@ -53,7 +54,7 @@
|
|||
z-index: 30;
|
||||
}
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
box-shadow: $box-shadow, 0 0 20px rgba($black, 0.24);
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
|
@ -79,7 +80,7 @@
|
|||
margin: $size-4 0;
|
||||
position: relative;
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
@ -103,9 +104,9 @@
|
|||
padding-bottom: $size-11;
|
||||
position: fixed;
|
||||
right: $size-8;
|
||||
top: calc(#{$header-height} + #{$size-8});
|
||||
top: calc(#{4rem} + #{$size-8});
|
||||
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
box-shadow: $box-shadow, 0 0 20px rgba($black, 0.24);
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
|
@ -141,7 +142,7 @@
|
|||
margin: $size-8 0 0;
|
||||
padding: 0 $size-8;
|
||||
border-top: solid 1px $white;
|
||||
border-image: linear-gradient(to right, $vault-gray-dark, $vault-gray) 1;
|
||||
border-image: linear-gradient(to right, $grey-dark, $grey) 1;
|
||||
border-width: 1px 0 0;
|
||||
button {
|
||||
font-size: $size-7;
|
||||
|
@ -196,8 +197,8 @@
|
|||
}
|
||||
|
||||
.progress-bar {
|
||||
background: $progress-bar-background-color;
|
||||
box-shadow: inset 0 0 0 1px $ui-gray-200;
|
||||
background: $ui-gray-050;
|
||||
box-shadow: inset $box-link-shadow;
|
||||
display: flex;
|
||||
height: $wizard-progress-bar-height;
|
||||
position: relative;
|
||||
|
|
|
@ -18,6 +18,11 @@
|
|||
}
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
th,
|
||||
td {
|
||||
padding: $spacing-s;
|
||||
|
@ -27,6 +32,8 @@
|
|||
color: $grey-dark;
|
||||
font-weight: 500;
|
||||
font-size: $size-8;
|
||||
text-align: left;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
tbody th {
|
||||
|
|
|
@ -3,55 +3,60 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// Start with Structure & Bulma variables as a foundation
|
||||
@import './utils/colors';
|
||||
@import './utils/spacing';
|
||||
@import 'bulma/sass/utilities/initial-variables';
|
||||
// Variables
|
||||
@import './utils/color_variables'; // colors need to come first.
|
||||
@import './utils/box-shadow_variables';
|
||||
@import './utils/font_variables';
|
||||
@import './utils/size_variables';
|
||||
|
||||
// Override variables where appropriate
|
||||
@import './utils/bulma_variables';
|
||||
// Element styling
|
||||
@import './core/element-styling';
|
||||
|
||||
// Utils
|
||||
// Mixins
|
||||
@import './utils/mixins';
|
||||
@import './utils/animations';
|
||||
|
||||
// Bring in the rest of Bulma
|
||||
@import 'bulma/bulma';
|
||||
@import 'bulma/switch';
|
||||
|
||||
// Override Bulma details where appropriate
|
||||
// Core Styles: each file styles a class that is not associated with a component. Ex: box and not box-label.
|
||||
@import './core/alert-banner';
|
||||
@import './core/generic';
|
||||
@import './core/box';
|
||||
@import './core/breadcrumb';
|
||||
@import './core/bulma-radio-checkboxes';
|
||||
@import './core/buttons';
|
||||
@import './core/footer';
|
||||
@import './core/forms';
|
||||
@import './core/charts';
|
||||
@import './core/helpers';
|
||||
@import './core/hero';
|
||||
@import './core/checkbox-and-radio';
|
||||
@import './core/columns';
|
||||
@import './core/containers';
|
||||
@import './core/control';
|
||||
@import './core/field';
|
||||
@import './core/file';
|
||||
@import './core/footer';
|
||||
@import './core/inputs';
|
||||
@import './core/label';
|
||||
@import './core/level';
|
||||
@import './core/link';
|
||||
@import './core/lists';
|
||||
@import './core/menu';
|
||||
@import './core/message';
|
||||
@import './core/navbar';
|
||||
@import './core/notification';
|
||||
@import './core/progress';
|
||||
@import './core/select';
|
||||
@import './core/switch';
|
||||
@import './core/tables';
|
||||
@import './core/tags';
|
||||
@import './core/tag';
|
||||
@import './core/title';
|
||||
@import './core/toggle';
|
||||
|
||||
// bulma additions
|
||||
@import './core/layout';
|
||||
@import './core/lists';
|
||||
// Helpers
|
||||
@import './helper-classes/colors';
|
||||
@import './helper-classes/flexbox-and-grid';
|
||||
@import './helper-classes/layout';
|
||||
@import './helper-classes/general';
|
||||
@import './helper-classes/spacing';
|
||||
@import './helper-classes/typography';
|
||||
|
||||
// Component specific styling
|
||||
@import './components/auth-buttons';
|
||||
@import './components/auth-form';
|
||||
@import './components/autocomplete-input';
|
||||
@import './components/b64-toggle';
|
||||
|
||||
@import './components/box-label';
|
||||
@import './components/box-radio';
|
||||
@import './components/calendar-widget';
|
||||
|
@ -67,10 +72,9 @@
|
|||
@import './components/form-section';
|
||||
@import './components/global-flash';
|
||||
@import './components/hover-copy-button';
|
||||
@import './components/icon';
|
||||
@import './components/init-illustration';
|
||||
@import './components/info-table';
|
||||
@import './components/info-table-row';
|
||||
@import './components/input-hint';
|
||||
@import './components/kmip-role-edit';
|
||||
@import './components/known-secondaries-card.scss';
|
||||
@import './components/license-banners';
|
||||
|
@ -93,7 +97,6 @@
|
|||
@import './components/read-more';
|
||||
@import './components/regex-validator';
|
||||
@import './components/replication-dashboard';
|
||||
@import './components/replication-header';
|
||||
@import './components/replication-mode-summary';
|
||||
@import './components/replication-page';
|
||||
@import './components/replication-primary-card';
|
||||
|
@ -101,9 +104,9 @@
|
|||
@import './components/role-item';
|
||||
@import './components/search-select';
|
||||
@import './components/selectable-card';
|
||||
@import './components/selectable-card-container.scss';
|
||||
@import './components/selectable-card-container';
|
||||
// action-block extends selectable-card
|
||||
@import './components/action-block.scss';
|
||||
@import './components/action-block';
|
||||
@import './components/shamir-modal-flow';
|
||||
@import './components/shamir-progress';
|
||||
@import './components/sidebar';
|
||||
|
@ -115,14 +118,11 @@
|
|||
@import './components/token-expire-warning';
|
||||
@import './components/toolbar';
|
||||
@import './components/tool-tip';
|
||||
@import './components/transform-edit.scss';
|
||||
@import './components/transform-edit';
|
||||
@import './components/transit-card';
|
||||
@import './components/ttl-picker';
|
||||
@import './components/unseal-warning';
|
||||
@import './components/ui-wizard';
|
||||
// @import './components/ui-wizard'; // remove, see PR https://github.com/hashicorp/vault/pull/19220
|
||||
@import './components/vault-loading';
|
||||
@import './components/vlt-radio';
|
||||
@import './components/vlt-table';
|
||||
|
||||
// bulma-free-zone
|
||||
@import './components/icon';
|
||||
|
|
|
@ -4,43 +4,37 @@
|
|||
*/
|
||||
|
||||
.box {
|
||||
background-color: $white;
|
||||
border-radius: 0;
|
||||
box-shadow: 0 0 0 1px rgba($grey-dark, 0.3);
|
||||
color: $ui-gray-900;
|
||||
display: block;
|
||||
padding: $size-5;
|
||||
|
||||
.title {
|
||||
&.has-padding-top {
|
||||
padding-top: $spacing-m;
|
||||
}
|
||||
&:not(:last-child) {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
p {
|
||||
&.has-padding-bottom {
|
||||
padding-bottom: $spacing-s;
|
||||
}
|
||||
|
||||
&.is-fullwidth {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
&.no-padding-top {
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
&.has-slim-padding {
|
||||
padding: 9px 0;
|
||||
}
|
||||
|
||||
&.no-top-shadow {
|
||||
box-shadow: inset 0 -1px 0 0 rgba($black, 0.1);
|
||||
}
|
||||
|
||||
&.has-container {
|
||||
box-shadow: 0 4px 4px rgba($black, 0.25);
|
||||
border: $base-border;
|
||||
padding: $spacing-l;
|
||||
}
|
||||
}
|
||||
.box.is-fullwidth {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
.box.no-padding-bottom {
|
||||
padding-bottom: 0;
|
||||
}
|
||||
.box.no-padding-top {
|
||||
padding-top: 0;
|
||||
}
|
||||
.box.has-slim-padding {
|
||||
padding: 9px 0;
|
||||
}
|
||||
.box.has-glow {
|
||||
box-shadow: 0 2px 4px 0 rgba($grey-dark, 0.5);
|
||||
}
|
||||
.box.is-rounded {
|
||||
border-radius: 3px;
|
||||
}
|
||||
.box.no-top-shadow {
|
||||
box-shadow: inset 0 -1px 0 0 rgba($black, 0.1);
|
||||
}
|
||||
.box.has-container {
|
||||
box-shadow: 0 4px 4px rgba($black, 0.25);
|
||||
border: 1px solid #bac1cc;
|
||||
padding: $spacing-l;
|
||||
}
|
||||
|
|
|
@ -4,24 +4,36 @@
|
|||
*/
|
||||
|
||||
.breadcrumb {
|
||||
-ms-user-select: text;
|
||||
-webkit-user-select: text;
|
||||
display: flex;
|
||||
user-select: text;
|
||||
min-height: 1.5rem;
|
||||
margin: 0;
|
||||
overflow-x: auto;
|
||||
white-space: nowrap;
|
||||
|
||||
&:not(:last-child) {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.is-sidebar + .column & {
|
||||
@include until($tablet) {
|
||||
@include until($mobile) {
|
||||
margin-left: $size-2;
|
||||
}
|
||||
}
|
||||
|
||||
ul,
|
||||
ol {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
|
||||
li {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
|
||||
& + li::before {
|
||||
display: none;
|
||||
}
|
||||
|
@ -31,9 +43,17 @@
|
|||
margin-left: 0;
|
||||
}
|
||||
}
|
||||
&.is-active a {
|
||||
color: $grey-darkest;
|
||||
cursor: default;
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
a {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
line-height: 1;
|
||||
padding: 0 $size-11 0 0;
|
||||
text-decoration: none;
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
@import '../sass-svg-uri/svg-uri';
|
||||
|
||||
.b-checkbox input[type='checkbox']:checked + label::before {
|
||||
border-color: $blue;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:checked + label::after,
|
||||
.b-checkbox input[type='radio']:checked + label::after {
|
||||
font-family: $family-monospace;
|
||||
/*checkmark from ionicons*/
|
||||
content: svg-uri(
|
||||
'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 512 512" fill="#{$blue}"><path d="M461.6 109.6l-54.9-43.3c-1.7-1.4-3.8-2.4-6.2-2.4-2.4 0-4.6 1-6.3 2.5L194.5 323s-78.5-75.5-80.7-77.7c-2.2-2.2-5.1-5.9-9.5-5.9s-6.4 3.1-8.7 5.4c-1.7 1.8-29.7 31.2-43.5 45.8-.8.9-1.3 1.4-2 2.1-1.2 1.7-2 3.6-2 5.7 0 2.2.8 4 2 5.7l2.8 2.6s139.3 133.8 141.6 136.1c2.3 2.3 5.1 5.2 9.2 5.2 4 0 7.3-4.3 9.2-6.2l249.1-320c1.2-1.7 2-3.6 2-5.8 0-2.5-1-4.6-2.4-6.4z"/></svg>'
|
||||
);
|
||||
}
|
||||
|
||||
.b-checkbox.no-label input[type='checkbox'] + label {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.checkbox-help-text {
|
||||
font-size: $size-7;
|
||||
color: $ui-gray-700;
|
||||
padding-left: 28px;
|
||||
}
|
|
@ -3,39 +3,218 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
$button-box-shadow-standard: 0 3px 1px 0 rgba($black, 0.12);
|
||||
|
||||
.button {
|
||||
align-items: center;
|
||||
background-color: $grey-lightest;
|
||||
border: 1px solid $grey-light;
|
||||
border-radius: $radius;
|
||||
box-shadow: $box-shadow-low;
|
||||
cursor: pointer;
|
||||
color: $ui-gray-800;
|
||||
display: inline-block;
|
||||
font-size: $size-small;
|
||||
font-size: $size-8;
|
||||
font-weight: $font-weight-semibold;
|
||||
height: 2.5rem;
|
||||
line-height: 1.6;
|
||||
min-width: 6rem;
|
||||
padding: $size-10 $size-8;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
transition: background-color $speed, border-color $speed, box-shadow $speed, color $speed;
|
||||
user-select: none;
|
||||
vertical-align: middle;
|
||||
white-space: nowrap;
|
||||
|
||||
&.is-icon {
|
||||
padding: 0.25rem $size-3;
|
||||
@keyframes spinAround {
|
||||
from {
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
to {
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active,
|
||||
&:focus,
|
||||
&.is-focused {
|
||||
&:focus {
|
||||
border-color: darken($grey-light, 10%);
|
||||
box-shadow: $button-box-shadow-standard;
|
||||
color: darken($grey-dark, 10%);
|
||||
}
|
||||
|
||||
&.is-inverted.is-outlined {
|
||||
&:focus:not(:active) {
|
||||
box-shadow: 0 0 0 0.125em rgba(21, 99, 255, 0.25);
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
background-color: $white;
|
||||
border-color: $ui-gray-050;
|
||||
box-shadow: none;
|
||||
cursor: not-allowed;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
// Button types: is-compact, is-danger, is-danger-outlined, is-flat, is-ghost, is-icon, is-loading, is-link, is-outline, is-primary, is-transparent.
|
||||
|
||||
&.is-compact {
|
||||
height: 2rem;
|
||||
padding: $size-11 $size-8;
|
||||
}
|
||||
|
||||
&.is-danger {
|
||||
background-color: $red-500;
|
||||
border-color: darken($red-500, 2%);
|
||||
color: $white;
|
||||
text-shadow: 0 1px 1px rgba($black, 0.25);
|
||||
|
||||
&:hover:not([disabled]) {
|
||||
background-color: darken($red-500, 5%);
|
||||
border-color: darken($red-500, 5%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: darken($red-500, 10%);
|
||||
border-color: darken($red-500, 10%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border-color: darken($red-500, 10%);
|
||||
box-shadow: $button-box-shadow-standard;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-danger-outlined {
|
||||
border: 1px solid $red-500;
|
||||
color: $red-500;
|
||||
}
|
||||
|
||||
&.is-flat {
|
||||
min-width: auto;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
&.is-ghost {
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
box-shadow: none;
|
||||
color: $blue;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
color: $blue-500;
|
||||
background-color: $grey-lightest;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-icon {
|
||||
padding: 0.25rem $size-3;
|
||||
}
|
||||
|
||||
&.is-loading {
|
||||
color: transparent !important;
|
||||
pointer-events: none;
|
||||
&::after {
|
||||
animation: spinAround 500ms infinite linear;
|
||||
border: 2px solid $ui-gray-300;
|
||||
border-radius: 290486px;
|
||||
border-right-color: transparent;
|
||||
border-top-color: transparent;
|
||||
content: '';
|
||||
display: block;
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
left: calc(50% - (1em / 2));
|
||||
top: calc(50% - (1em / 2));
|
||||
position: absolute !important;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-link {
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
color: $blue;
|
||||
text-decoration: none;
|
||||
font-weight: $font-weight-semibold;
|
||||
box-shadow: none;
|
||||
min-width: 4rem;
|
||||
}
|
||||
|
||||
&.is-primary {
|
||||
background-color: $blue;
|
||||
border-color: darken($blue, 2%);
|
||||
color: $white;
|
||||
font-weight: $font-weight-bold;
|
||||
text-shadow: 0 1px 1px rgba($black, 0.25);
|
||||
|
||||
&:disabled {
|
||||
background-color: $ui-gray-700;
|
||||
border-color: transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
&:hover:not([disabled]) {
|
||||
background-color: darken($blue, 5%);
|
||||
border-color: darken($blue, 5%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: darken($blue, 10%);
|
||||
border-color: darken($blue, 10%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border-color: darken($blue, 10%);
|
||||
box-shadow: $button-box-shadow-standard;
|
||||
}
|
||||
|
||||
&.is-loading::after {
|
||||
border-color: transparent transparent $white $white;
|
||||
}
|
||||
|
||||
&.is-underlined {
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
border-bottom: 2px solid darken($blue, 10%);
|
||||
border-radius: unset;
|
||||
color: darken($blue, 10%);
|
||||
}
|
||||
}
|
||||
// is-primary.is-outlined the only is-outlined buttons are primary.
|
||||
&.is-outlined {
|
||||
background-color: transparent;
|
||||
border-color: $blue;
|
||||
color: $blue;
|
||||
|
||||
&:hover,
|
||||
&:focus {
|
||||
background-color: transparent;
|
||||
border-color: darken($blue, 10%);
|
||||
color: $blue;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
border-color: darken($blue, 10%);
|
||||
color: darken($blue, 10%);
|
||||
}
|
||||
}
|
||||
|
||||
&.is-outlined [disabled] {
|
||||
background-color: transparent;
|
||||
border-color: $ui-gray-700;
|
||||
box-shadow: none;
|
||||
color: $ui-gray-700;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-transparent {
|
||||
|
@ -46,151 +225,7 @@ $button-box-shadow-standard: 0 3px 1px 0 rgba($black, 0.12);
|
|||
min-width: auto;
|
||||
padding: 0;
|
||||
}
|
||||
&.is-flat {
|
||||
min-width: auto;
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
@if $name == 'primary' {
|
||||
$color: $blue;
|
||||
}
|
||||
$color-invert: nth($pair, 2);
|
||||
|
||||
&.is-#{$name} {
|
||||
border-color: darken($color, 2%);
|
||||
background-color: $color;
|
||||
color: $color-invert;
|
||||
|
||||
&:hover:not([disabled]),
|
||||
&.is-hovered {
|
||||
background-color: darken($color, 5%);
|
||||
border-color: darken($color, 5%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: darken($color, 10%);
|
||||
border-color: darken($color, 10%);
|
||||
box-shadow: $box-shadow-middle;
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&.is-focused {
|
||||
border-color: darken($color, 10%);
|
||||
box-shadow: $button-box-shadow-standard;
|
||||
}
|
||||
|
||||
&.is-outlined {
|
||||
border-color: $color;
|
||||
color: $color;
|
||||
background-color: transparent;
|
||||
|
||||
&.is-important {
|
||||
border-color: $color;
|
||||
}
|
||||
|
||||
&:hover,
|
||||
&.is-hovered,
|
||||
&:focus,
|
||||
&.is-focused {
|
||||
background-color: transparent;
|
||||
border-color: darken($color, 10%);
|
||||
color: $color;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
border-color: darken($color, 10%);
|
||||
color: darken($color, 10%);
|
||||
}
|
||||
}
|
||||
|
||||
&.is-underlined {
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
border-bottom: 2px solid darken($color, 10%);
|
||||
border-radius: unset;
|
||||
color: darken($color, 10%);
|
||||
}
|
||||
}
|
||||
|
||||
&.is-inverted.is-outlined {
|
||||
border-color: rgba($color-invert, 0.5);
|
||||
color: rgba($color-invert, 0.9);
|
||||
|
||||
&:hover,
|
||||
&.is-hovered,
|
||||
&:focus,
|
||||
&.is-focused {
|
||||
background-color: transparent;
|
||||
border-color: $color-invert;
|
||||
color: $color-invert;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: rgba($color-invert, 0.2);
|
||||
border-color: $color-invert;
|
||||
color: $color-invert;
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.is-primary {
|
||||
font-weight: $font-weight-bold;
|
||||
text-shadow: 0 1px 1px rgba($black, 0.25);
|
||||
}
|
||||
|
||||
&.is-link {
|
||||
color: $link;
|
||||
text-decoration: none;
|
||||
font-weight: $font-weight-semibold;
|
||||
box-shadow: none;
|
||||
min-width: 4rem;
|
||||
}
|
||||
|
||||
&.is-ghost {
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
box-shadow: none;
|
||||
color: $blue;
|
||||
|
||||
&:hover {
|
||||
background-color: $grey-lightest;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-orange {
|
||||
background-color: $orange;
|
||||
border-color: $orange;
|
||||
color: $white;
|
||||
|
||||
&:hover,
|
||||
&.is-hovered {
|
||||
background-color: darken($orange, 5%);
|
||||
border-color: darken($orange, 5%);
|
||||
}
|
||||
}
|
||||
&.is-compact {
|
||||
height: 2rem;
|
||||
padding: $size-11 $size-8;
|
||||
}
|
||||
|
||||
.has-text-info & {
|
||||
font-weight: $font-weight-semibold;
|
||||
}
|
||||
|
||||
&.has-text-danger {
|
||||
border: 1px solid $red-500;
|
||||
}
|
||||
// End of button types
|
||||
|
||||
&.tool-tip-trigger {
|
||||
color: $grey-dark;
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
grid-column-start: 1;
|
||||
grid-column-end: span col4-end;
|
||||
grid-row-start: 1;
|
||||
box-shadow: inset 0 -1px 0 $vault-gray-200;
|
||||
box-shadow: inset 0 -1px 0 $ui-gray-200;
|
||||
}
|
||||
|
||||
.has-header-link {
|
||||
|
@ -68,9 +68,7 @@
|
|||
text-align: right;
|
||||
> button {
|
||||
&:hover,
|
||||
&.is-hovered,
|
||||
&:focus,
|
||||
&.is-focused {
|
||||
&:focus {
|
||||
background-color: transparent;
|
||||
background-color: darken($ui-gray-050, 5%);
|
||||
border-color: darken($ui-gray-300, 5%);
|
||||
|
@ -101,7 +99,7 @@
|
|||
grid-row-end: 5;
|
||||
padding-bottom: $spacing-xl;
|
||||
margin-bottom: $spacing-s;
|
||||
box-shadow: inset 0 -1px 0 $vault-gray-200;
|
||||
box-shadow: inset 0 -1px 0 $ui-gray-200;
|
||||
|
||||
> h2 {
|
||||
padding-left: 18px;
|
||||
|
@ -118,7 +116,7 @@
|
|||
grid-row-end: 5;
|
||||
padding-bottom: $spacing-xl;
|
||||
margin-bottom: $spacing-s;
|
||||
box-shadow: inset 0 -1px 0 $vault-gray-200;
|
||||
box-shadow: inset 0 -1px 0 $ui-gray-200;
|
||||
|
||||
> h2 {
|
||||
padding-left: 18px;
|
||||
|
@ -204,7 +202,7 @@ h2.chart-title {
|
|||
|
||||
p.chart-description {
|
||||
color: $ui-gray-700;
|
||||
font-size: $body-size;
|
||||
font-size: 14px;
|
||||
line-height: 18px;
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
|
@ -219,7 +217,7 @@ p.chart-subtext {
|
|||
h3.data-details {
|
||||
font-weight: $font-weight-bold;
|
||||
font-size: $size-8;
|
||||
line-height: $body-size;
|
||||
line-height: 14px;
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
|
||||
|
@ -231,7 +229,7 @@ p.data-details {
|
|||
// MISC STYLES
|
||||
|
||||
.light-dot {
|
||||
background-color: #bfd4ff;
|
||||
background-color: $blue-100;
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
border-radius: 50%;
|
||||
|
@ -239,7 +237,7 @@ p.data-details {
|
|||
}
|
||||
|
||||
.dark-dot {
|
||||
background-color: #1563ff;
|
||||
background-color: $blue-500;
|
||||
height: 10px;
|
||||
width: 10px;
|
||||
border-radius: 50%;
|
||||
|
|
|
@ -0,0 +1,124 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for .checkbox, .radio and .b-checkboxes. The prefix "b" comes from Bulma.
|
||||
|
||||
@import '../sass-svg-uri/svg-uri';
|
||||
|
||||
// checkbox and radio styling
|
||||
.checkbox,
|
||||
.radio {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
line-height: 1.25;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.checkbox input,
|
||||
.radio input {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.checkbox:hover,
|
||||
.radio:hover {
|
||||
color: hsl(0, 0%, 21%);
|
||||
}
|
||||
|
||||
.checkbox[disabled],
|
||||
.radio[disabled],
|
||||
.checkbox input[disabled],
|
||||
.radio input[disabled] {
|
||||
color: $grey;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
// radio only styling
|
||||
.radio + .radio {
|
||||
margin-left: 0.5em;
|
||||
}
|
||||
|
||||
// one-off checkbox class
|
||||
.checkbox-help-text {
|
||||
color: $ui-gray-700;
|
||||
font-size: $size-7;
|
||||
padding-left: 28px;
|
||||
}
|
||||
|
||||
// b-checkbox styling
|
||||
.b-checkbox {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.b-checkbox label::before {
|
||||
background-color: $white;
|
||||
border-radius: 3px;
|
||||
border: 1px solid $ui-gray-300;
|
||||
content: '';
|
||||
height: 17px;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
top: 1px;
|
||||
transition: background 0.1s ease-in-out;
|
||||
width: 17px;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:checked + label::before {
|
||||
border-color: $blue;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:checked + label::after,
|
||||
.b-checkbox input[type='radio']:checked + label::after {
|
||||
font-family: $family-monospace;
|
||||
/*checkmark from ionicons*/
|
||||
content: svg-uri(
|
||||
'<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 512 512" fill="#{$blue}"><path d="M461.6 109.6l-54.9-43.3c-1.7-1.4-3.8-2.4-6.2-2.4-2.4 0-4.6 1-6.3 2.5L194.5 323s-78.5-75.5-80.7-77.7c-2.2-2.2-5.1-5.9-9.5-5.9s-6.4 3.1-8.7 5.4c-1.7 1.8-29.7 31.2-43.5 45.8-.8.9-1.3 1.4-2 2.1-1.2 1.7-2 3.6-2 5.7 0 2.2.8 4 2 5.7l2.8 2.6s139.3 133.8 141.6 136.1c2.3 2.3 5.1 5.2 9.2 5.2 4 0 7.3-4.3 9.2-6.2l249.1-320c1.2-1.7 2-3.6 2-5.8 0-2.5-1-4.6-2.4-6.4z"/></svg>'
|
||||
);
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox'],
|
||||
.b-checkbox input[type='radio'] {
|
||||
cursor: pointer;
|
||||
opacity: 0;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.b-checkbox label::after {
|
||||
color: $ui-gray-800;
|
||||
font-size: 12px;
|
||||
height: 16px;
|
||||
left: 3px;
|
||||
position: absolute;
|
||||
top: 3px;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.b-checkbox label {
|
||||
display: inline;
|
||||
line-height: 1;
|
||||
margin-left: 0.5rem;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:focus + label::before,
|
||||
.b-checkbox input[type='radio']:focus + label::before {
|
||||
outline: thin dotted;
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:disabled + label::before,
|
||||
.b-checkbox input[type='radio']:disabled + label::before {
|
||||
background-color: $ui-gray-100;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.b-checkbox input[type='checkbox']:disabled + label,
|
||||
.b-checkbox input[type='radio']:disabled + label {
|
||||
opacity: 0.65;
|
||||
}
|
||||
|
||||
.b-checkbox > .sub-text {
|
||||
padding-left: 2rem;
|
||||
}
|
|
@ -0,0 +1,201 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for columns and column
|
||||
|
||||
// Columns (plural)
|
||||
.columns {
|
||||
margin-left: -$size-9;
|
||||
margin-right: -$size-9;
|
||||
margin-top: -$size-9;
|
||||
|
||||
&:last-child {
|
||||
margin-bottom: -$size-9;
|
||||
}
|
||||
|
||||
&.is-centered {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
&.is-gapless {
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
&.is-gapless > .column {
|
||||
margin: 0;
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
&.is-gapless:not(:last-child) {
|
||||
margin-bottom: $size-4;
|
||||
}
|
||||
|
||||
&.is-gapless:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
&.is-mobile {
|
||||
display: flex;
|
||||
|
||||
> .column.is-1 {
|
||||
flex: none;
|
||||
width: 8.33333%;
|
||||
}
|
||||
|
||||
> .column.is-3 {
|
||||
flex: none;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
> .column.is-10 {
|
||||
flex: none;
|
||||
width: 83.33333%;
|
||||
}
|
||||
|
||||
> .column.is-12 {
|
||||
flex: none;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-multiline {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
// columnGap does not take vars
|
||||
&.is-variable.is-1 {
|
||||
--columnGap: $i * 0.25rem;
|
||||
}
|
||||
|
||||
&.is-variable {
|
||||
--columnGap: 0.75rem;
|
||||
margin-left: calc(-1 * var(--columnGap));
|
||||
margin-right: calc(-1 * var(--columnGap));
|
||||
}
|
||||
|
||||
&.is-variable > .column {
|
||||
padding-left: var(--columnGap);
|
||||
padding-right: var(--columnGap);
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css columns
|
||||
@media screen and (min-width: 769px), print {
|
||||
.columns:not(.is-desktop) {
|
||||
display: flex;
|
||||
}
|
||||
.columns.is-variable.is-7-tablet {
|
||||
--columnGap: 1.75rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.columns.is-desktop {
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
||||
// Column (singular)
|
||||
.column {
|
||||
display: block;
|
||||
flex-basis: 0;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
padding: 0.75rem;
|
||||
|
||||
&.is-narrow {
|
||||
flex: none;
|
||||
width: unset;
|
||||
}
|
||||
|
||||
&.is-1 {
|
||||
flex: none;
|
||||
width: 8.33333%;
|
||||
}
|
||||
|
||||
&.is-3 {
|
||||
flex: none;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
&.is-5,
|
||||
.is-5-tablet {
|
||||
flex: none;
|
||||
width: 41.66667%;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css column (order matters here because some columns have several of these classes and they need to override in the correct order).
|
||||
@media screen and (min-width: 769px), print {
|
||||
.column {
|
||||
&.is-one-quarter {
|
||||
flex: none;
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
&.is-half {
|
||||
flex: none;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
&.is-two-thirds {
|
||||
flex: none;
|
||||
width: 66.6666%;
|
||||
}
|
||||
|
||||
&.is-one-third {
|
||||
flex: none;
|
||||
width: 33.3333%;
|
||||
}
|
||||
|
||||
&.is-5 {
|
||||
flex: none;
|
||||
width: 41.66667%;
|
||||
}
|
||||
|
||||
&.is-6,
|
||||
&.is-6-tablet {
|
||||
flex: none;
|
||||
width: 50%;
|
||||
}
|
||||
&.is-9 {
|
||||
flex: none;
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
&.is-7,
|
||||
&.is-7-tablet {
|
||||
flex: none;
|
||||
width: 58.33333%;
|
||||
}
|
||||
|
||||
&.is-12 {
|
||||
flex: none;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
&.is-full,
|
||||
&.is-full-tablet {
|
||||
flex: none;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.column.is-10-mobile {
|
||||
flex: none;
|
||||
width: 83.33333%;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.column.is-4-desktop {
|
||||
flex: none;
|
||||
width: 33.33333%;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for the larger container elements like page-container, section and container.
|
||||
|
||||
.ember-application > .ember-view {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.page-container {
|
||||
min-height: calc(100vh - 4rem);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-top: 4rem;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.section {
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
flex-direction: column;
|
||||
padding: 0 $size-4;
|
||||
|
||||
> .container {
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
|
||||
> .columns {
|
||||
flex-grow: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.container {
|
||||
flex-grow: 1;
|
||||
margin: 0 auto;
|
||||
position: relative;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1024px) {
|
||||
.container {
|
||||
max-width: 960px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1215px) {
|
||||
.container.is-widescreen:not(.is-max-desktop) {
|
||||
max-width: 1152px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1216px) {
|
||||
.container:not(.is-max-desktop) {
|
||||
max-width: 1152px;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 1408px) {
|
||||
.container:not(.is-max-desktop):not(.is-max-widescreen) {
|
||||
max-width: 1344px;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the style for .control
|
||||
|
||||
.control.has-icons-left .icon,
|
||||
.control.has-icons-right .icon {
|
||||
height: 2.5rem;
|
||||
}
|
||||
|
||||
.control.has-icons-right .input {
|
||||
padding-right: 2.25em;
|
||||
}
|
||||
|
||||
.control {
|
||||
font-size: 1rem;
|
||||
max-width: 100%;
|
||||
position: relative;
|
||||
text-align: left;
|
||||
|
||||
// Modifiers
|
||||
&.has-icons-left,
|
||||
&.has-icons-right {
|
||||
.input,
|
||||
.select select {
|
||||
padding-left: 2rem;
|
||||
|
||||
&:focus,
|
||||
&:active,
|
||||
&.is-active {
|
||||
& ~ .icon {
|
||||
color: currentColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
&.has-checkbox-right {
|
||||
label.checkbox {
|
||||
display: inline-flex;
|
||||
height: 2.5em;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
justify-content: flex-end;
|
||||
margin-left: auto;
|
||||
}
|
||||
.input,
|
||||
.select select {
|
||||
padding-right: 10em;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-align-end {
|
||||
display: flex;
|
||||
align-self: end;
|
||||
}
|
||||
}
|
||||
|
||||
.control.is-expanded {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
|
@ -0,0 +1,167 @@
|
|||
/* These come from bulma */
|
||||
html,
|
||||
body,
|
||||
p,
|
||||
ol,
|
||||
ul,
|
||||
li,
|
||||
dl,
|
||||
dt,
|
||||
dd,
|
||||
blockquote,
|
||||
figure,
|
||||
fieldset,
|
||||
legend,
|
||||
textarea,
|
||||
pre,
|
||||
iframe,
|
||||
hr,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
body,
|
||||
pre,
|
||||
strong,
|
||||
table th {
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-size: 100%;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
html {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: inherit;
|
||||
}
|
||||
*:before,
|
||||
*:after {
|
||||
box-sizing: inherit;
|
||||
}
|
||||
|
||||
img,
|
||||
embed,
|
||||
object {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
html {
|
||||
background-color: $white;
|
||||
font-size: 14px;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
min-width: 300px;
|
||||
overflow-x: hidden;
|
||||
overflow-y: scroll;
|
||||
text-rendering: optimizeLegibility;
|
||||
text-size-adjust: 100%;
|
||||
}
|
||||
|
||||
article,
|
||||
aside,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
body,
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
font-family: $family-sans;
|
||||
}
|
||||
|
||||
code,
|
||||
pre {
|
||||
-moz-osx-font-smoothing: auto;
|
||||
-webkit-font-smoothing: inherit;
|
||||
font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
||||
font-smooth: inherit;
|
||||
}
|
||||
|
||||
a strong,
|
||||
pre code {
|
||||
color: currentColor;
|
||||
}
|
||||
|
||||
body {
|
||||
font-size: $size-6;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
a {
|
||||
color: $blue-500;
|
||||
cursor: pointer;
|
||||
text-decoration: underline;
|
||||
|
||||
&:hover,
|
||||
&:active,
|
||||
&:focus {
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
code {
|
||||
background-color: transparent;
|
||||
color: $ui-gray-700;
|
||||
font-size: 1em;
|
||||
font-weight: 400;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
hr {
|
||||
background-color: $ui-gray-300;
|
||||
border: none;
|
||||
display: block;
|
||||
height: 1px;
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
img {
|
||||
height: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
form {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
label {
|
||||
cursor: pointer;
|
||||
}
|
|
@ -0,0 +1,141 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for .field, .field-body, .form-fieldset
|
||||
|
||||
.field {
|
||||
// cannot use :read-only selector because tag used for other purposes
|
||||
&.is-readOnly {
|
||||
background-color: $ui-gray-100;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-bottom: $size-4;
|
||||
}
|
||||
}
|
||||
// must come after field due to overriding the margin-bottom of not last-child
|
||||
.field-body .field {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.field.has-addons {
|
||||
flex-wrap: wrap;
|
||||
.control {
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-radius: 0;
|
||||
&:hover {
|
||||
z-index: 2;
|
||||
}
|
||||
&:focus,
|
||||
&:active,
|
||||
&.is-active {
|
||||
z-index: 3;
|
||||
&:hover {
|
||||
z-index: 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:first-of-type {
|
||||
flex-grow: 1;
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-bottom-left-radius: $radius;
|
||||
border-top-left-radius: $radius;
|
||||
}
|
||||
}
|
||||
&:last-child {
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-bottom-right-radius: $radius;
|
||||
border-top-right-radius: $radius;
|
||||
}
|
||||
}
|
||||
}
|
||||
& > .label {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
fieldset.form-fieldset {
|
||||
border: none;
|
||||
}
|
||||
|
||||
// field.is-grouped styles
|
||||
.field.is-grouped {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
|
||||
> .control.is-expanded {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
|
||||
> .control {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
> .control:not(:last-child) {
|
||||
margin-bottom: 0;
|
||||
margin-right: 0.75rem;
|
||||
}
|
||||
|
||||
> .control.is-expanded {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 1;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (min-width: 769px), print {
|
||||
.field.is-horizontal {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.field-body {
|
||||
display: flex;
|
||||
flex-basis: 0;
|
||||
flex-grow: 5;
|
||||
flex-shrink: 1;
|
||||
|
||||
> .field:not(:last-child) {
|
||||
margin-right: $size-9;
|
||||
}
|
||||
.field:not(.is-narrow) {
|
||||
flex-grow: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.field-label {
|
||||
flex-basis: 0;
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
margin-right: 1.5rem;
|
||||
text-align: right;
|
||||
|
||||
&.is-normal {
|
||||
padding-top: 0.375em;
|
||||
}
|
||||
|
||||
&.is-medium {
|
||||
font-size: 1.25rem;
|
||||
padding-top: 0.375em;
|
||||
}
|
||||
|
||||
&.is-large {
|
||||
font-size: 1.5rem;
|
||||
padding-top: 0.375em;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,99 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for file, file-cta, file-delete-button, file-icon, file-input, file-label, file-name.
|
||||
|
||||
.file {
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.file-cta {
|
||||
align-items: center;
|
||||
border: $base-border;
|
||||
border-radius: $radius;
|
||||
display: inline-flex;
|
||||
height: 2.25em;
|
||||
justify-content: flex-start;
|
||||
min-width: auto;
|
||||
padding-bottom: calc(0.375em -1px);
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
padding-top: calc(0.375em -1px);
|
||||
position: relative;
|
||||
vertical-align: top;
|
||||
white-space: nowrap;
|
||||
|
||||
&.button {
|
||||
height: $size-2; // in older parts of the code (Ex: shamir-modal-flow) this class is not a button. In newer parts of the code it is, and height needs to match the height of a button (2.5rem).
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.icon:first-child:last-child {
|
||||
display: inline-block;
|
||||
margin-right: 0.1rem;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.file-delete-button {
|
||||
@extend .button;
|
||||
@extend .is-transparent;
|
||||
color: $grey;
|
||||
position: absolute;
|
||||
right: $spacing-xs;
|
||||
}
|
||||
|
||||
.file-icon {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
height: 1em;
|
||||
justify-content: center;
|
||||
margin-right: 0.5em;
|
||||
width: 1em;
|
||||
}
|
||||
|
||||
.file-input {
|
||||
height: 0.01em;
|
||||
left: 0;
|
||||
outline: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 0.01em;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.file-label {
|
||||
align-items: stretch;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.file-name {
|
||||
@extend .input;
|
||||
border: $base-border;
|
||||
border-radius: $radius;
|
||||
box-shadow: 0 4px 1px rgba(10, 10, 10, 0.06) inset;
|
||||
display: block;
|
||||
font-size: 1em;
|
||||
line-height: 1.5;
|
||||
overflow: hidden;
|
||||
padding-bottom: calc(0.375em - 1px);
|
||||
padding-left: 1em;
|
||||
padding-right: 1em;
|
||||
padding-top: calc(0.375em - 1px);
|
||||
position: relative;
|
||||
text-align: left;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
|
||||
&:disabled {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
}
|
|
@ -1,373 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
form {
|
||||
margin: 0;
|
||||
}
|
||||
label {
|
||||
cursor: pointer;
|
||||
&.is-select-list {
|
||||
padding: 10px 0px;
|
||||
&:hover {
|
||||
color: $blue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.masked-font {
|
||||
font-family: obscure, text-security-square;
|
||||
letter-spacing: 2px;
|
||||
}
|
||||
|
||||
.label {
|
||||
color: $grey-darker;
|
||||
text-transform: uppercase;
|
||||
font-size: $size-small;
|
||||
}
|
||||
|
||||
.is-label,
|
||||
.b-checkbox .is-label {
|
||||
color: $grey-darker;
|
||||
display: inline-block;
|
||||
font-size: $body-size;
|
||||
font-weight: $font-weight-bold;
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
// Sizes
|
||||
&.is-small {
|
||||
font-size: $size-small;
|
||||
}
|
||||
&.is-medium {
|
||||
font-size: $size-medium;
|
||||
}
|
||||
&.is-large {
|
||||
font-size: $size-large;
|
||||
}
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
transform: translateY(0.2em);
|
||||
}
|
||||
|
||||
&::before {
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
||||
|
||||
.b-checkbox .is-label {
|
||||
display: inline;
|
||||
margin-left: $size-10;
|
||||
}
|
||||
|
||||
.b-checkbox > .sub-text {
|
||||
padding-left: 2rem;
|
||||
}
|
||||
|
||||
.help {
|
||||
&.is-danger {
|
||||
font-weight: $weight-bold;
|
||||
}
|
||||
}
|
||||
|
||||
.is-help {
|
||||
font-size: $size-small;
|
||||
margin-top: 0.25rem;
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
&.is-#{$name} {
|
||||
color: $color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.sub-text {
|
||||
color: $grey;
|
||||
margin-bottom: 0.25rem;
|
||||
font-size: $size-8;
|
||||
}
|
||||
.input,
|
||||
.textarea,
|
||||
.select select {
|
||||
border-color: $grey-light;
|
||||
color: $grey-dark;
|
||||
padding-left: $size-8;
|
||||
padding-right: $size-8;
|
||||
@include until($desktop) {
|
||||
font-size: 16px;
|
||||
}
|
||||
&::placeholder {
|
||||
opacity: 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
.input,
|
||||
.select select,
|
||||
.control.has-icons-left .icon,
|
||||
.control.has-icons-right .icon {
|
||||
height: 2.5rem;
|
||||
}
|
||||
|
||||
.input.variable {
|
||||
font-family: $family-monospace;
|
||||
}
|
||||
|
||||
.select select[disabled],
|
||||
.input[disabled],
|
||||
.textarea[disabled] {
|
||||
border-color: $grey-light;
|
||||
background-color: $ui-gray-100;
|
||||
color: $ui-gray-500;
|
||||
&:hover {
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
||||
|
||||
.control {
|
||||
max-width: 100%;
|
||||
|
||||
// Modifiers
|
||||
&.has-icons-left,
|
||||
&.has-icons-right {
|
||||
.input,
|
||||
.select select {
|
||||
padding-left: 2rem;
|
||||
|
||||
&:focus,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&.is-active {
|
||||
& ~ .icon {
|
||||
color: currentColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
&.has-checkbox-right {
|
||||
label.checkbox {
|
||||
display: inline-flex;
|
||||
height: 2.5em;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
justify-content: flex-end;
|
||||
margin-left: auto;
|
||||
}
|
||||
.input,
|
||||
.select select {
|
||||
padding-right: 10em;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-align-end {
|
||||
display: flex;
|
||||
align-self: end;
|
||||
}
|
||||
}
|
||||
|
||||
.input,
|
||||
.textarea {
|
||||
box-shadow: 0 4px 1px rgba($black, 0.06) inset;
|
||||
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: findColorInvert($color);
|
||||
$color-bg: nth($pair, 2);
|
||||
&.is-#{$name} {
|
||||
border-color: $color;
|
||||
background-color: $color-bg;
|
||||
&.is-inverted {
|
||||
border-color: rgba($color-invert, 0.3);
|
||||
background-color: $color-bg;
|
||||
&::placeholder {
|
||||
color: rgba($color-invert, 0.3);
|
||||
}
|
||||
&:focus,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&.is-active {
|
||||
border-color: rgba($color-invert, 1);
|
||||
background-color: $color-bg;
|
||||
color: $color-invert;
|
||||
&::placeholder {
|
||||
color: rgba($color-invert, 0.7);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
&:focus,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&.is-active {
|
||||
background-color: $input-focus-background-color;
|
||||
}
|
||||
}
|
||||
|
||||
.select select {
|
||||
background-color: $ui-gray-050;
|
||||
box-shadow: 0 3px 1px rgba($black, 0.12);
|
||||
|
||||
.has-background-grey-lighter & {
|
||||
background-color: $white;
|
||||
}
|
||||
}
|
||||
|
||||
.select:not(.is-multiple) {
|
||||
height: 2.5rem;
|
||||
}
|
||||
|
||||
.select:not(.is-multiple)::after {
|
||||
content: svg-uri(
|
||||
'<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z" fill="currentColor"/></svg>'
|
||||
);
|
||||
border: 0;
|
||||
height: 24px;
|
||||
margin: 0;
|
||||
right: $spacing-xs;
|
||||
transform: translateY(-50%);
|
||||
width: 24px;
|
||||
}
|
||||
|
||||
.field:not(:last-child) {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
.field-body .field {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.field {
|
||||
// cannot use :read-only selector because tag used for other purposes
|
||||
&.is-readOnly {
|
||||
background-color: $ui-gray-100;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
}
|
||||
.field.has-addons {
|
||||
flex-wrap: wrap;
|
||||
.control {
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-radius: 0;
|
||||
&:hover,
|
||||
&.is-hovered {
|
||||
z-index: 2;
|
||||
}
|
||||
&:focus,
|
||||
&.is-focused,
|
||||
&:active,
|
||||
&.is-active {
|
||||
z-index: 3;
|
||||
&:hover {
|
||||
z-index: 4;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:first-of-type {
|
||||
flex-grow: 1;
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-bottom-left-radius: $input-radius;
|
||||
border-top-left-radius: $input-radius;
|
||||
}
|
||||
}
|
||||
&:last-child {
|
||||
.button,
|
||||
.checkbox,
|
||||
.input,
|
||||
.select select {
|
||||
border-bottom-right-radius: $input-radius;
|
||||
border-top-right-radius: $input-radius;
|
||||
}
|
||||
}
|
||||
}
|
||||
& > .label {
|
||||
flex-grow: 1;
|
||||
flex-shrink: 0;
|
||||
width: 100%;
|
||||
}
|
||||
.checkbox {
|
||||
@include input;
|
||||
background-color: $grey-lightest;
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
&.is-#{$name} {
|
||||
border-color: $color;
|
||||
}
|
||||
}
|
||||
input {
|
||||
margin-right: 0.5em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.file-label {
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.file-input {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.file-cta {
|
||||
min-width: auto;
|
||||
|
||||
.icon:first-child:last-child {
|
||||
display: inline-block;
|
||||
margin-right: 0.1rem;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.file-name {
|
||||
@extend .input;
|
||||
}
|
||||
|
||||
.file-delete-button {
|
||||
@extend .button;
|
||||
@extend .is-transparent;
|
||||
color: $grey;
|
||||
position: absolute;
|
||||
right: 8px;
|
||||
}
|
||||
|
||||
fieldset.form-fieldset {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.has-warning-border {
|
||||
border: 1px solid $yellow-500;
|
||||
}
|
||||
|
||||
.has-error-border,
|
||||
select.has-error-border {
|
||||
border: 1px solid $red-500;
|
||||
}
|
||||
|
||||
.dropdown-has-error-border > div.ember-basic-dropdown-trigger {
|
||||
border: 1px solid $red-500;
|
||||
}
|
||||
|
||||
.autocomplete-input {
|
||||
background: $white !important;
|
||||
border: 1px solid $grey-light;
|
||||
box-sizing: border-box;
|
||||
border-radius: 3px;
|
||||
width: 99%;
|
||||
padding: 4px 0;
|
||||
margin-left: 0.5%;
|
||||
margin-top: -4px;
|
||||
}
|
||||
.autocomplete-input-option {
|
||||
padding: 12px;
|
||||
&:hover {
|
||||
background-color: $grey-lightest;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
|
@ -1,62 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// seriously ? yes. seriously.
|
||||
a {
|
||||
text-decoration: underline;
|
||||
&:hover,
|
||||
&:active,
|
||||
&:focus {
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
.menu a {
|
||||
text-decoration: none;
|
||||
}
|
||||
code {
|
||||
padding: 0;
|
||||
font-size: 1em;
|
||||
}
|
||||
.icon {
|
||||
min-width: 1.5rem;
|
||||
vertical-align: middle;
|
||||
}
|
||||
code,
|
||||
pre {
|
||||
font-smooth: inherit;
|
||||
-webkit-font-smoothing: inherit;
|
||||
}
|
||||
|
||||
input::-webkit-outer-spin-button,
|
||||
input::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.link {
|
||||
background: transparent;
|
||||
border: 0;
|
||||
color: $blue;
|
||||
cursor: pointer;
|
||||
display: inline;
|
||||
font: inherit;
|
||||
line-height: normal;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-weight: $font-weight-semibold;
|
||||
-webkit-user-select: text; /* Chrome all / Safari all */
|
||||
-moz-user-select: text; /* Firefox all */
|
||||
-ms-user-select: text; /* IE 10+ */
|
||||
user-select: text;
|
||||
|
||||
&[disabled] {
|
||||
opacity: 0.5;
|
||||
cursor: default;
|
||||
}
|
||||
}
|
||||
|
||||
.link-plain {
|
||||
text-decoration: none;
|
||||
}
|
|
@ -1,365 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.is-invisible {
|
||||
visibility: hidden;
|
||||
}
|
||||
.is-underline {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.is-no-underline {
|
||||
text-decoration: none;
|
||||
}
|
||||
.is-sideless {
|
||||
box-shadow: 0 2px 0 -1px $grey-light, 0 -2px 0 -1px $grey-light;
|
||||
}
|
||||
.is-bottomless {
|
||||
box-shadow: 0 -1px 0 0 $grey-light;
|
||||
}
|
||||
.has-only-top-shadow {
|
||||
box-shadow: 0 -1px 0 -1px $grey-light, 0 -2px 0 -1px $grey-light;
|
||||
}
|
||||
.has-bottom-shadow {
|
||||
box-shadow: $box-shadow !important;
|
||||
}
|
||||
.is-borderless {
|
||||
border: none !important;
|
||||
}
|
||||
.is-box-shadowless {
|
||||
box-shadow: none !important;
|
||||
}
|
||||
.is-relative {
|
||||
position: relative;
|
||||
}
|
||||
.is-fullwidth {
|
||||
width: 100%;
|
||||
}
|
||||
.is-in-bottom-right {
|
||||
position: absolute;
|
||||
bottom: 1rem;
|
||||
right: 1rem;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.has-background-transition {
|
||||
transition: background-color $easing $speed;
|
||||
}
|
||||
.is-flex-column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.is-flex-row {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
.is-flex-v-centered {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.is-flex-v-centered-tablet {
|
||||
@include tablet {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
.is-flex-center {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.is-flex-align-baseline {
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
}
|
||||
.is-flex-1 {
|
||||
flex-grow: 1;
|
||||
&.basis-0 {
|
||||
flex-basis: 0;
|
||||
}
|
||||
}
|
||||
.is-flex-wrap {
|
||||
flex-flow: row wrap;
|
||||
}
|
||||
.is-flex-end {
|
||||
display: flex !important;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
.is-flex-start {
|
||||
display: flex !important;
|
||||
justify-content: flex-start;
|
||||
|
||||
&.has-gap {
|
||||
gap: $spacing-m;
|
||||
}
|
||||
}
|
||||
.is-flex-full {
|
||||
flex-basis: 100%;
|
||||
}
|
||||
.is-no-flex-grow {
|
||||
flex-grow: 0 !important;
|
||||
}
|
||||
.is-flex-half {
|
||||
flex: 50%;
|
||||
}
|
||||
.is-auto-width {
|
||||
width: auto;
|
||||
}
|
||||
.is-min-width-0 {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.is-flex-between,
|
||||
.is-grouped-split {
|
||||
display: flex;
|
||||
justify-content: space-between !important;
|
||||
}
|
||||
|
||||
/* CSS GRID */
|
||||
// grid container
|
||||
.is-grid {
|
||||
display: grid;
|
||||
}
|
||||
.is-grid-3-columns {
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
}
|
||||
.is-medium-height {
|
||||
height: $medium-height;
|
||||
}
|
||||
// grid items
|
||||
.is-grid-column-span-3 {
|
||||
grid-column-end: span 3;
|
||||
}
|
||||
/* END OF CSS GRID */
|
||||
|
||||
.has-default-border {
|
||||
border: 1px solid $grey !important;
|
||||
}
|
||||
.has-no-pointer {
|
||||
pointer-events: none;
|
||||
}
|
||||
.has-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
.has-short-padding {
|
||||
padding: 0.25rem 1.25rem;
|
||||
}
|
||||
.has-tall-padding {
|
||||
padding: 2.25rem;
|
||||
}
|
||||
.has-side-padding-s {
|
||||
padding-left: $spacing-s;
|
||||
padding-right: $spacing-s;
|
||||
}
|
||||
.has-padding-m {
|
||||
padding: $spacing-m;
|
||||
}
|
||||
.has-bottom-padding-s {
|
||||
padding-bottom: $spacing-s;
|
||||
}
|
||||
.has-padding-xs {
|
||||
padding: $spacing-xs;
|
||||
}
|
||||
.has-padding-xxs {
|
||||
padding: $spacing-xxs;
|
||||
}
|
||||
.has-top-bottom-margin {
|
||||
margin: 1.25rem 0rem;
|
||||
}
|
||||
.has-top-bottom-margin-negative-m {
|
||||
margin-top: -$spacing-m;
|
||||
margin-bottom: -$spacing-m;
|
||||
}
|
||||
|
||||
.is-sideless.has-short-padding {
|
||||
padding: 0.25rem 1.25rem;
|
||||
}
|
||||
.has-current-color-fill {
|
||||
&,
|
||||
& svg {
|
||||
fill: currentColor;
|
||||
}
|
||||
}
|
||||
.is-word-break {
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
word-break: break-word;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
.truncate-second-line {
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
.is-font-mono {
|
||||
font-family: $family-monospace;
|
||||
}
|
||||
.is-size-8 {
|
||||
font-size: $size-8 !important;
|
||||
}
|
||||
.is-size-9 {
|
||||
font-size: $size-9 !important;
|
||||
}
|
||||
.is-hint {
|
||||
color: $grey;
|
||||
font-size: $size-8;
|
||||
padding: $size-8 0;
|
||||
}
|
||||
@each $name, $shade in $shades {
|
||||
.has-background-#{$name} {
|
||||
background: $shade !important;
|
||||
}
|
||||
}
|
||||
.has-background-transparent {
|
||||
background: transparent !important;
|
||||
}
|
||||
.has-background-gray-200 {
|
||||
background-color: $ui-gray-200;
|
||||
}
|
||||
.has-background-gray-100 {
|
||||
background-color: $ui-gray-100;
|
||||
}
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
.has-background-#{$name} {
|
||||
background: $color !important;
|
||||
}
|
||||
}
|
||||
.is-optional {
|
||||
color: $grey;
|
||||
font-size: $size-8;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
.has-top-padding-xxs {
|
||||
padding-top: $spacing-xxs;
|
||||
}
|
||||
.has-top-padding-s {
|
||||
padding-top: $spacing-s;
|
||||
}
|
||||
.has-top-padding-l {
|
||||
padding-top: $spacing-l;
|
||||
}
|
||||
.has-left-padding-l {
|
||||
padding-left: $spacing-l;
|
||||
}
|
||||
.has-top-padding-xxl {
|
||||
padding-top: $spacing-xxl;
|
||||
}
|
||||
.has-bottom-margin-xs {
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
.has-bottom-margin-s {
|
||||
margin-bottom: $spacing-s;
|
||||
}
|
||||
.has-bottom-margin-m {
|
||||
margin-bottom: $spacing-m;
|
||||
}
|
||||
.has-bottom-margin-l {
|
||||
margin-bottom: $spacing-l;
|
||||
}
|
||||
.has-bottom-margin-xl {
|
||||
margin-bottom: $spacing-xl;
|
||||
}
|
||||
.has-bottom-margin-xxl {
|
||||
margin-bottom: $spacing-xxl;
|
||||
}
|
||||
.has-top-margin-s {
|
||||
margin-top: $spacing-s;
|
||||
}
|
||||
.has-top-margin-xs {
|
||||
margin-top: $spacing-xs;
|
||||
}
|
||||
.has-top-margin-m {
|
||||
margin-top: $spacing-m;
|
||||
}
|
||||
.has-top-margin-l {
|
||||
margin-top: $spacing-l;
|
||||
}
|
||||
.has-top-margin-xl {
|
||||
margin-top: $spacing-xl;
|
||||
}
|
||||
.has-top-margin-xxl {
|
||||
margin-top: $spacing-xxl;
|
||||
}
|
||||
.has-top-margin-negative-s {
|
||||
margin-top: (-1 * $spacing-s);
|
||||
}
|
||||
.has-left-margin-xxs {
|
||||
margin-left: $spacing-xxs;
|
||||
}
|
||||
.has-left-margin-xs {
|
||||
margin-left: $spacing-xs;
|
||||
}
|
||||
.has-left-margin-s {
|
||||
margin-left: $spacing-s;
|
||||
}
|
||||
.has-left-margin-m {
|
||||
margin-left: $spacing-m;
|
||||
}
|
||||
.has-left-margin-l {
|
||||
margin-left: $spacing-l;
|
||||
}
|
||||
.has-left-margin-xl {
|
||||
margin-left: $spacing-xl;
|
||||
}
|
||||
.has-right-margin-m {
|
||||
margin-right: $spacing-m;
|
||||
}
|
||||
.has-right-margin-l {
|
||||
margin-right: $spacing-l;
|
||||
}
|
||||
.has-border-top-light {
|
||||
border-radius: 0;
|
||||
border-top: 1px solid $grey-light;
|
||||
}
|
||||
.has-border-bottom-light {
|
||||
border-radius: 0;
|
||||
border-bottom: 1px solid $grey-light;
|
||||
}
|
||||
.has-border-danger {
|
||||
border: 1px solid $danger;
|
||||
}
|
||||
|
||||
ul.bullet {
|
||||
list-style: disc;
|
||||
padding-left: $spacing-m;
|
||||
}
|
||||
|
||||
.has-text-semibold {
|
||||
font-weight: $font-weight-semibold;
|
||||
}
|
||||
.is-v-centered {
|
||||
vertical-align: middle;
|
||||
}
|
||||
.has-text-grey-400 {
|
||||
color: $ui-gray-400;
|
||||
}
|
||||
.has-text-red {
|
||||
color: $red;
|
||||
}
|
||||
.has-text-green {
|
||||
color: $green;
|
||||
}
|
||||
.has-text-align-center {
|
||||
text-align: center;
|
||||
}
|
||||
// Screen Readers only
|
||||
.sr-only {
|
||||
border: 0 !important;
|
||||
clip: rect(1px, 1px, 1px, 1px) !important;
|
||||
-webkit-clip-path: inset(50%) !important;
|
||||
clip-path: inset(50%) !important;
|
||||
height: 1px !important;
|
||||
overflow: hidden !important;
|
||||
margin: -1px !important;
|
||||
padding: 0 !important;
|
||||
position: absolute !important;
|
||||
width: 1px !important;
|
||||
white-space: nowrap !important;
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.hero-body {
|
||||
padding: 3rem 2rem 1rem;
|
||||
|
||||
svg {
|
||||
margin-bottom: $size-10;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,83 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the styles for .input, .textarea and .input-hint.
|
||||
|
||||
.input,
|
||||
.textarea {
|
||||
align-items: center;
|
||||
border-radius: $radius;
|
||||
border: $base-border;
|
||||
box-shadow: 0 4px 1px rgba($black, 0.06) inset;
|
||||
color: $grey-dark;
|
||||
display: inline-flex;
|
||||
font-size: $size-6;
|
||||
height: $size-2;
|
||||
line-height: 1.5;
|
||||
max-width: 100%;
|
||||
padding-bottom: calc(0.375em - 1px);
|
||||
padding-left: $size-8;
|
||||
padding-right: $size-8;
|
||||
padding-top: calc(0.375em - 1px);
|
||||
width: 100%;
|
||||
|
||||
&:focus,
|
||||
&:active,
|
||||
&.is-active,
|
||||
&:focus-visible {
|
||||
outline: none;
|
||||
background-color: $white;
|
||||
border-color: $blue-500 !important;
|
||||
box-shadow: 0 0 0 0.125em rgba(21, 99, 255, 0.25);
|
||||
}
|
||||
|
||||
&:hover {
|
||||
border-color: $ui-gray-300;
|
||||
}
|
||||
|
||||
@include until($desktop) {
|
||||
font-size: $size-6;
|
||||
}
|
||||
|
||||
&::placeholder {
|
||||
opacity: 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
.input[disabled],
|
||||
.textarea[disabled] {
|
||||
border-color: $grey-light;
|
||||
background-color: $ui-gray-100;
|
||||
color: $ui-gray-500;
|
||||
cursor: not-allowed;
|
||||
|
||||
&:hover {
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
||||
|
||||
.input[readonly],
|
||||
.textarea[readonly] {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
// textarea specific css
|
||||
.textarea {
|
||||
min-width: 100%;
|
||||
padding-bottom: 0.625em;
|
||||
padding-top: 0.625em;
|
||||
}
|
||||
|
||||
.textarea:not([rows]) {
|
||||
max-height: 600px;
|
||||
min-height: 120px;
|
||||
}
|
||||
|
||||
// custom input
|
||||
.input-hint {
|
||||
padding: 0 $size-9;
|
||||
font-size: $size-8;
|
||||
color: $grey;
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the style for .is-label
|
||||
|
||||
.is-label {
|
||||
color: $grey-darkest;
|
||||
display: inline-block;
|
||||
font-size: 14px;
|
||||
font-weight: $font-weight-bold;
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
|
||||
&::before,
|
||||
&::after {
|
||||
transform: translateY(0.2em);
|
||||
}
|
||||
|
||||
&::before {
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.ember-application > .ember-view {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.page-container {
|
||||
min-height: calc(100vh - #{$header-height});
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin-top: $header-height;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.section {
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
flex-direction: column;
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
|
||||
> .container {
|
||||
display: flex;
|
||||
flex-grow: 1;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
|
||||
> .columns {
|
||||
flex-grow: 1;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,10 +3,55 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.level {
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.level code {
|
||||
border-radius: $radius;
|
||||
}
|
||||
|
||||
.level:not(:last-child) {
|
||||
@include vault-block;
|
||||
}
|
||||
|
||||
.level-left,
|
||||
.level-right {
|
||||
flex-basis: auto;
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.level-right {
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.level-left {
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
|
||||
.level.is-mobile,
|
||||
.level.is-mobile .level-left,
|
||||
.level.is-mobile .level-right {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.level.is-mobile .level-left + .level-right {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.level.is-mobile .level-item:not(:last-child) {
|
||||
margin-bottom: 0;
|
||||
margin-right: $size-9;
|
||||
}
|
||||
|
||||
.level.is-mobile .level-item:not(.is-narrow) {
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
.level.has-padded-items {
|
||||
.level-item {
|
||||
flex: 0 1 auto;
|
||||
|
@ -18,3 +63,35 @@
|
|||
flex-basis: 25%;
|
||||
}
|
||||
}
|
||||
|
||||
.level-item {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
flex-basis: auto;
|
||||
flex-grow: 0;
|
||||
flex-shrink: 0;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (min-width: 769px), print {
|
||||
.level {
|
||||
display: flex;
|
||||
}
|
||||
.level > .level-item:not(.is-narrow) {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.level-left {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.level-right {
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.level-item:not(:last-child) {
|
||||
margin-bottom: $size-9;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.link {
|
||||
background: transparent;
|
||||
border: 0;
|
||||
color: $blue;
|
||||
cursor: pointer;
|
||||
display: inline;
|
||||
font: inherit;
|
||||
line-height: normal;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-weight: $font-weight-semibold;
|
||||
user-select: text;
|
||||
|
||||
&[disabled] {
|
||||
opacity: 0.5;
|
||||
cursor: default;
|
||||
}
|
||||
}
|
||||
// NICE TO HAVE: replace all instances with helper "is-no-underline"
|
||||
.link-plain {
|
||||
text-decoration: none;
|
||||
}
|
|
@ -3,12 +3,14 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines styles for list type items, like: .sep, .list-header and ul.bullet.
|
||||
|
||||
.sep {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
&:before {
|
||||
font-size: $size-5;
|
||||
color: $white-ter;
|
||||
color: $blue-500;
|
||||
content: '|';
|
||||
position: relative;
|
||||
}
|
||||
|
@ -21,3 +23,8 @@
|
|||
font-weight: $font-weight-semibold;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
ul.bullet {
|
||||
list-style: disc;
|
||||
padding-left: $spacing-m;
|
||||
}
|
||||
|
|
|
@ -3,6 +3,25 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.menu {
|
||||
font-size: $size-6;
|
||||
}
|
||||
|
||||
.menu a {
|
||||
display: block;
|
||||
padding: $size-10 $size-9;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.menu-label {
|
||||
letter-spacing: 0.1em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
.menu-list {
|
||||
line-height: 1.25;
|
||||
}
|
||||
|
||||
.column .menu-list a {
|
||||
border-radius: 0;
|
||||
border-right: 0 solid transparent;
|
||||
|
@ -10,7 +29,6 @@
|
|||
|
||||
&:hover,
|
||||
&.is-active {
|
||||
color: $menu-item-active-color;
|
||||
background-color: $menu-item-active-background-color;
|
||||
color: $blue;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,21 +10,15 @@
|
|||
padding: $spacing-s $spacing-m $spacing-m $spacing-s;
|
||||
position: relative;
|
||||
|
||||
&:not(:last-child) {
|
||||
margin-bottom: $size-4;
|
||||
}
|
||||
|
||||
.message-icon {
|
||||
color: $blue;
|
||||
margin-right: $spacing-xs;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: transparent;
|
||||
border: 0;
|
||||
color: $grey;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
right: $spacing-s;
|
||||
top: $spacing-m;
|
||||
}
|
||||
|
||||
.message-title {
|
||||
color: $blue-500;
|
||||
font-size: 16px;
|
||||
|
@ -36,19 +30,31 @@
|
|||
}
|
||||
}
|
||||
|
||||
.close-button {
|
||||
background: transparent;
|
||||
border: 0;
|
||||
color: $grey;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
right: $spacing-s;
|
||||
top: $spacing-m;
|
||||
}
|
||||
|
||||
.close-button + .message-title {
|
||||
padding-right: $spacing-m;
|
||||
}
|
||||
|
||||
.message-body {
|
||||
border: 0;
|
||||
padding: 1em 1.25em;
|
||||
margin-top: $spacing-xxs;
|
||||
}
|
||||
|
||||
.message-body.pre {
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
p {
|
||||
// was p selector only, but padding was getting overridden by the message-body above
|
||||
p.message-body {
|
||||
font-size: $size-8;
|
||||
border: 0;
|
||||
padding: 0;
|
||||
|
@ -69,10 +75,32 @@
|
|||
}
|
||||
}
|
||||
|
||||
// message types, see message-types.js
|
||||
&.is-danger {
|
||||
background: $red-010;
|
||||
border: 1px solid $red-050;
|
||||
|
||||
.message-body {
|
||||
color: $red-700;
|
||||
}
|
||||
|
||||
.message-icon {
|
||||
color: $red-500;
|
||||
}
|
||||
|
||||
.message-title {
|
||||
color: $red-700;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-highlight {
|
||||
background: $yellow-010;
|
||||
border: 1px solid $yellow-100;
|
||||
|
||||
.message-body {
|
||||
color: $ui-gray-900;
|
||||
}
|
||||
|
||||
.message-icon {
|
||||
color: $yellow-500;
|
||||
}
|
||||
|
@ -82,10 +110,31 @@
|
|||
}
|
||||
}
|
||||
|
||||
&.is-info {
|
||||
background-color: $blue-010;
|
||||
|
||||
.message-body {
|
||||
color: $blue-700;
|
||||
}
|
||||
|
||||
.message-header {
|
||||
background-color: $blue-500;
|
||||
color: $white;
|
||||
}
|
||||
|
||||
.message-title {
|
||||
color: $blue-700;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-success {
|
||||
background: $green-010;
|
||||
border: 1px solid $green-100;
|
||||
|
||||
.message-body {
|
||||
color: $green-900;
|
||||
}
|
||||
|
||||
.message-icon {
|
||||
color: $green-500;
|
||||
}
|
||||
|
@ -94,19 +143,6 @@
|
|||
color: $green-700;
|
||||
}
|
||||
}
|
||||
|
||||
&.is-danger {
|
||||
background: $red-010;
|
||||
border: 1px solid $red-050;
|
||||
|
||||
.message-icon {
|
||||
color: $red-500;
|
||||
}
|
||||
|
||||
.message-title {
|
||||
color: $red-700;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.message-inline {
|
||||
|
@ -123,11 +159,11 @@
|
|||
}
|
||||
|
||||
&.has-top {
|
||||
margin-top: 1rem;
|
||||
margin-top: $size-6;
|
||||
}
|
||||
|
||||
&.size-small {
|
||||
font-size: $size-7;
|
||||
font-size: $size-8;
|
||||
}
|
||||
|
||||
&.padding-top {
|
||||
|
@ -143,10 +179,6 @@
|
|||
}
|
||||
}
|
||||
|
||||
.has-text-highlight {
|
||||
color: $yellow-500;
|
||||
}
|
||||
|
||||
.message.message-marginless {
|
||||
margin: 0;
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
&.connected {
|
||||
background-color: $ui-gray-800;
|
||||
color: #c2c5cb;
|
||||
color: $ui-gray-300;
|
||||
|
||||
a {
|
||||
color: #c2c5cb;
|
||||
|
@ -42,25 +42,29 @@
|
|||
.navbar-actions {
|
||||
background-color: $black;
|
||||
display: flex;
|
||||
height: $header-height;
|
||||
height: 4rem;
|
||||
justify-content: flex-start;
|
||||
padding: $spacing-xs $spacing-s $spacing-xs 0;
|
||||
}
|
||||
|
||||
.navbar-brand {
|
||||
background: $vault-gray;
|
||||
align-items: stretch;
|
||||
background: $grey;
|
||||
border-radius: 0 $radius-large $radius-large 0;
|
||||
display: flex;
|
||||
margin-right: $spacing-s;
|
||||
min-height: auto;
|
||||
position: relative;
|
||||
z-index: 203;
|
||||
|
||||
.navbar-item {
|
||||
align-items: center;
|
||||
background-color: transparent;
|
||||
display: flex;
|
||||
padding: $spacing-xs $spacing-l;
|
||||
|
||||
&:hover,
|
||||
.is-active {
|
||||
&.is-active {
|
||||
background-color: transparent;
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +72,7 @@
|
|||
|
||||
.navbar-drawer-toggle {
|
||||
font-size: $size-6;
|
||||
color: $vault-gray;
|
||||
color: $grey;
|
||||
cursor: pointer;
|
||||
font-weight: $font-weight-semibold;
|
||||
margin-left: -$spacing-s;
|
||||
|
@ -133,7 +137,7 @@
|
|||
}
|
||||
|
||||
&.is-active {
|
||||
background-color: $vault-gray-700;
|
||||
background-color: $ui-gray-800;
|
||||
color: $white;
|
||||
}
|
||||
|
||||
|
@ -256,6 +260,7 @@
|
|||
.nav-user-button .icon {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.nav-user-button.may-expire .icon:first-of-type::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
|
@ -266,6 +271,7 @@
|
|||
border-radius: 50%;
|
||||
background: $yellow;
|
||||
}
|
||||
|
||||
.navbar-drawer-scroll {
|
||||
overflow: auto;
|
||||
height: 100%;
|
||||
|
@ -278,7 +284,7 @@
|
|||
left: 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: $header-height;
|
||||
top: 4rem;
|
||||
z-index: 1;
|
||||
|
||||
@include from($mobile) {
|
||||
|
@ -292,3 +298,12 @@
|
|||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (min-width: 1024px) {
|
||||
.navbar-item,
|
||||
.navbar-link {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,62 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.notification {
|
||||
padding: $spacing-m $spacing-m $spacing-m $spacing-s;
|
||||
|
||||
.title {
|
||||
font-weight: $weight-bold;
|
||||
}
|
||||
|
||||
&.has-border {
|
||||
border: 1px solid currentColor;
|
||||
border-left-width: 10px;
|
||||
}
|
||||
|
||||
@each $name, $pair in $colors {
|
||||
$color: nth($pair, 1);
|
||||
$color-invert: nth($pair, 2);
|
||||
$color-lightning: max((100% - lightness($color)) - 2%, 0%);
|
||||
$color-luminance: colorLuminance($color);
|
||||
$darken-percentage: $color-luminance * 70%;
|
||||
$desaturate-percentage: $color-luminance * 30%;
|
||||
&.is-#{$name} {
|
||||
background-color: lighten($color, $color-lightning);
|
||||
border-color: $color;
|
||||
color: desaturate(darken($color, $darken-percentage), $desaturate-percentage);
|
||||
.delete {
|
||||
color: $color;
|
||||
}
|
||||
.title {
|
||||
color: $color-invert;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.is-warning {
|
||||
.title,
|
||||
.delete {
|
||||
color: $yellow-darkest;
|
||||
}
|
||||
border-color: $orange;
|
||||
color: $yellow-darkest;
|
||||
}
|
||||
|
||||
& > .delete {
|
||||
&:before,
|
||||
&:after {
|
||||
content: none;
|
||||
}
|
||||
position: absolute;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
color: currentColor;
|
||||
right: 0.5rem;
|
||||
top: 0.5rem;
|
||||
height: 1.5rem;
|
||||
width: 1.5rem;
|
||||
}
|
||||
}
|
|
@ -4,12 +4,18 @@
|
|||
*/
|
||||
|
||||
.progress {
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
background: $progress-bar-background-color;
|
||||
box-shadow: inset 0 0 0 1px $ui-gray-200;
|
||||
appearance: none;
|
||||
background: $ui-gray-050;
|
||||
border: none;
|
||||
box-shadow: inset $box-link-shadow;
|
||||
border-radius: $radius;
|
||||
display: block;
|
||||
height: $size-6;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
margin-bottom: 0;
|
||||
width: 100%;
|
||||
|
||||
&.is-small {
|
||||
height: 0.5rem;
|
||||
}
|
||||
|
@ -17,23 +23,64 @@
|
|||
width: 30px;
|
||||
}
|
||||
&.is-medium {
|
||||
height: $size-5;
|
||||
width: 120px;
|
||||
}
|
||||
}
|
||||
|
||||
// style the container in chrome
|
||||
.progress[value]::-webkit-progress-bar {
|
||||
box-shadow: inset 0 0 0 1px $ui-gray-200;
|
||||
background-color: #ededed;
|
||||
box-shadow: inset $box-link-shadow;
|
||||
}
|
||||
|
||||
// style the bar in chrome
|
||||
.progress[value]::-webkit-progress-value {
|
||||
background-color: #4a4a4a;
|
||||
border-radius: $radius;
|
||||
transition: width 1s ease-out;
|
||||
transition: width 1s $easing;
|
||||
}
|
||||
|
||||
// style the bar in firefox
|
||||
.progress[value]::-moz-progress-bar {
|
||||
border-radius: $radius;
|
||||
transition: width 1s ease-out;
|
||||
transition: width 1s $easing;
|
||||
}
|
||||
|
||||
.progress::-ms-fill {
|
||||
background-color: #4a4a4a;
|
||||
border: none;
|
||||
}
|
||||
|
||||
// is-success and is-info are the two types of progress bars we have
|
||||
.progress.is-info::-webkit-progress-value {
|
||||
background-color: #3e8ed0;
|
||||
}
|
||||
|
||||
.progress.is-info::-moz-progress-bar {
|
||||
background-color: #3e8ed0;
|
||||
}
|
||||
|
||||
.progress.is-info::-ms-fill {
|
||||
background-color: #3e8ed0;
|
||||
}
|
||||
|
||||
.progress.is-info:indeterminate {
|
||||
background-image: linear-gradient(to right, #3e8ed0 30%, #ededed 30%);
|
||||
}
|
||||
|
||||
.progress.is-success::-webkit-progress-value {
|
||||
background-color: $green-500;
|
||||
}
|
||||
|
||||
.progress.is-success::-moz-progress-bar {
|
||||
background-color: $green-500;
|
||||
}
|
||||
|
||||
.progress.is-success::-ms-fill {
|
||||
background-color: $green-500;
|
||||
}
|
||||
|
||||
.progress.is-success:indeterminate {
|
||||
background-image: linear-gradient(to right, $green-500 30%, #ededed 30%);
|
||||
}
|
||||
|
|
|
@ -3,6 +3,82 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.select select {
|
||||
text-rendering: auto !important;
|
||||
select {
|
||||
width: 100%;
|
||||
appearance: none;
|
||||
}
|
||||
|
||||
.select select {
|
||||
background-color: $ui-gray-050;
|
||||
box-shadow: 0 3px 1px rgba($black, 0.12);
|
||||
border: 1px solid $grey-light;
|
||||
border-radius: $radius;
|
||||
color: $grey-dark;
|
||||
cursor: pointer;
|
||||
display: block;
|
||||
font-size: 1em;
|
||||
height: 2.5rem;
|
||||
max-width: 100%;
|
||||
outline: none;
|
||||
padding-bottom: calc(0.375em - 1px);
|
||||
padding-left: $size-8;
|
||||
padding-right: $size-8;
|
||||
padding-top: calc(0.375em - 1px);
|
||||
text-rendering: auto !important;
|
||||
|
||||
@include until($desktop) {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
&::placeholder {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
&:active,
|
||||
&:focus,
|
||||
&:focus-visible,
|
||||
&.is-active {
|
||||
border-color: $blue-500;
|
||||
box-shadow: 0 0 0 0.125em rgba(21, 99, 255, 0.25);
|
||||
}
|
||||
}
|
||||
|
||||
.select select:not([multiple]) {
|
||||
padding-right: $size-2;
|
||||
}
|
||||
|
||||
.select select[disabled] {
|
||||
border-color: $grey-light;
|
||||
background-color: $ui-gray-100;
|
||||
color: $ui-gray-500;
|
||||
cursor: not-allowed;
|
||||
user-select: none;
|
||||
&:hover {
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
||||
|
||||
.select {
|
||||
display: inline-block;
|
||||
height: 2.5rem;
|
||||
max-width: 100%;
|
||||
position: relative;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.select::after {
|
||||
content: svg-uri(
|
||||
'<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M12 5.83L15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17z" fill="currentColor"/></svg>'
|
||||
);
|
||||
border: 0;
|
||||
display: block;
|
||||
height: 24px;
|
||||
margin: 0;
|
||||
pointer-events: none;
|
||||
position: absolute;
|
||||
right: $spacing-xs;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
width: 24px;
|
||||
z-index: 4;
|
||||
}
|
||||
|
|
|
@ -3,38 +3,150 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the style for switch, with the nested classes: is-small, is-rounded, is-success
|
||||
|
||||
.switch[type='checkbox'] {
|
||||
&.is-small {
|
||||
+ label {
|
||||
font-size: $size-8;
|
||||
font-weight: bold;
|
||||
padding-left: $size-8 * 2.5;
|
||||
margin: 0 0.25rem;
|
||||
&::before {
|
||||
top: $size-8 / 5;
|
||||
height: $size-8;
|
||||
width: $size-8 * 2;
|
||||
}
|
||||
&::after {
|
||||
width: $size-8 * 0.8;
|
||||
height: $size-8 * 0.8;
|
||||
transform: translateX(0.15rem);
|
||||
left: 0;
|
||||
top: $size-8/ 4;
|
||||
}
|
||||
}
|
||||
&:checked + label::after {
|
||||
display: inline-block;
|
||||
outline: 0;
|
||||
opacity: 0;
|
||||
position: absolute;
|
||||
user-select: none;
|
||||
|
||||
+ label {
|
||||
align-items: center;
|
||||
cursor: pointer;
|
||||
display: inline-flex;
|
||||
font-size: $size-6;
|
||||
justify-content: flex-start;
|
||||
line-height: 1.5;
|
||||
padding-left: 3.5rem;
|
||||
position: relative;
|
||||
|
||||
&::before {
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: calc(50% - 1.5rem * 0.5);
|
||||
left: 0;
|
||||
transform: translateX(($size-8 * 2) - ($size-8 * 0.94));
|
||||
width: $size-1;
|
||||
height: $size-4;
|
||||
border: 0.1rem solid transparent;
|
||||
border-radius: $radius-large;
|
||||
background: $ui-gray-300;
|
||||
content: '';
|
||||
}
|
||||
|
||||
&::after {
|
||||
background: $white;
|
||||
border-radius: $radius-large;
|
||||
content: '';
|
||||
display: block;
|
||||
height: $size-6;
|
||||
left: $size-11;
|
||||
position: absolute;
|
||||
top: calc(50% - 1rem * 0.5);
|
||||
transform: translate3d(0, 0, 0);
|
||||
transition: all 0.25s ease-out;
|
||||
width: $size-6;
|
||||
}
|
||||
|
||||
&:checked::after {
|
||||
left: 1.625rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
.switch[type='checkbox'].is-small + label::after {
|
||||
will-change: left;
|
||||
|
||||
// is-rounded
|
||||
.switch[type='checkbox'].is-rounded {
|
||||
+ label {
|
||||
&::before {
|
||||
border-radius: 16px;
|
||||
}
|
||||
&::after {
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
&.is-small {
|
||||
+ label {
|
||||
&::before {
|
||||
border-radius: 16px;
|
||||
}
|
||||
&::after {
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.switch[type='checkbox']:focus + label {
|
||||
box-shadow: 0 0 1px $blue;
|
||||
// is-small
|
||||
.switch[type='checkbox'].is-small {
|
||||
+ label {
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
font-size: $size-8;
|
||||
font-weight: bold;
|
||||
height: 18px;
|
||||
padding-left: $size-8 * 2.5;
|
||||
position: relative;
|
||||
margin: 0 $size-11;
|
||||
&::before {
|
||||
border: 0.1rem solid transparent;
|
||||
border-radius: $radius-large;
|
||||
background: $ui-gray-300;
|
||||
display: block;
|
||||
content: '';
|
||||
height: $size-8;
|
||||
position: absolute;
|
||||
top: $size-8/ 5;
|
||||
width: $size-8 * 2;
|
||||
}
|
||||
&::after {
|
||||
background: $white;
|
||||
border-radius: $radius-large;
|
||||
content: '';
|
||||
display: block;
|
||||
height: $size-8 * 0.8;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
top: $size-8/ 4;
|
||||
transform: translateX(0.15rem);
|
||||
transition: all 0.25s ease-out;
|
||||
width: $size-8 * 0.8;
|
||||
will-change: left;
|
||||
|
||||
&:checked {
|
||||
left: $size-5;
|
||||
}
|
||||
}
|
||||
}
|
||||
&:checked + label::after {
|
||||
left: 0;
|
||||
transform: translateX(($size-8 * 2) - ($size-8 * 0.94));
|
||||
}
|
||||
}
|
||||
|
||||
// is-success
|
||||
.switch[type='checkbox'].is-success:checked + label::before {
|
||||
background: $blue;
|
||||
}
|
||||
|
||||
// focus
|
||||
.switch[type='checkbox']:focus + label {
|
||||
box-shadow: 0 0 1px $blue;
|
||||
}
|
||||
|
||||
// disabled
|
||||
.switch[type='checkbox'][disabled] {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
.switch[type='checkbox'][disabled] + label {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
.switch[type='checkbox'][disabled] + label:hover {
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
// misc.
|
||||
.field-body .switch[type='checkbox'] + label {
|
||||
margin-top: 0.375em;
|
||||
}
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.table {
|
||||
thead,
|
||||
.thead {
|
||||
box-shadow: 0 1px 0 0 $grey-light, 0 -1px 0 0 $grey-light;
|
||||
|
||||
th,
|
||||
.th {
|
||||
font-size: $size-8;
|
||||
color: $grey;
|
||||
font-weight: $font-weight-semibold;
|
||||
padding: 1rem 1.5rem 0;
|
||||
border-width: 0 0 1px 0;
|
||||
border-color: $grey-light;
|
||||
}
|
||||
}
|
||||
|
||||
.thead {
|
||||
box-shadow: 0 -1px 0 0 $grey-light;
|
||||
}
|
||||
td,
|
||||
.td {
|
||||
font-size: $size-6;
|
||||
color: $black;
|
||||
padding: 1rem 1.5rem;
|
||||
border-width: 0 0 1px 0;
|
||||
border-color: $grey-light;
|
||||
border-style: solid;
|
||||
}
|
||||
tr:hover {
|
||||
background: rgba($grey-lighter, 0.4);
|
||||
}
|
||||
}
|
||||
.table tbody tr:last-child td,
|
||||
.table tbody tr:last-child th {
|
||||
border-bottom-width: inherit;
|
||||
}
|
||||
.table.has-expanded-borders {
|
||||
border-collapse: inherit;
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the style for .tag
|
||||
|
||||
.tag:not(body) {
|
||||
align-items: center;
|
||||
background-color: $ui-gray-100;
|
||||
border-radius: $radius;
|
||||
color: $grey;
|
||||
display: inline-flex;
|
||||
font-size: $size-8;
|
||||
font-weight: $font-weight-normal;
|
||||
height: auto;
|
||||
justify-content: center;
|
||||
line-height: 1.5;
|
||||
margin-right: $size-10;
|
||||
padding: 0 $size-10;
|
||||
white-space: nowrap;
|
||||
vertical-align: middle;
|
||||
|
||||
code {
|
||||
color: $grey;
|
||||
}
|
||||
|
||||
.icon {
|
||||
height: 12px;
|
||||
margin-left: -0.25em;
|
||||
margin-right: 0.25em;
|
||||
min-width: 0;
|
||||
width: 12px;
|
||||
}
|
||||
|
||||
&.has-extra-padding {
|
||||
padding: $size-11 $spacing-xxs;
|
||||
}
|
||||
}
|
||||
|
||||
.tag {
|
||||
&.is-bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
&.is-light {
|
||||
background-color: whitesmoke;
|
||||
color: rgba(0, 0, 0, 0.7);
|
||||
}
|
||||
|
||||
&.is-outlined {
|
||||
background-color: transparent;
|
||||
border: 1px solid $grey-light;
|
||||
}
|
||||
|
||||
&.is-small {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
&.is-medium {
|
||||
font-size: $size-6;
|
||||
}
|
||||
|
||||
&.is-success {
|
||||
background-color: $green-500;
|
||||
color: $white;
|
||||
}
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
.tag:not(body) {
|
||||
background-color: $ui-gray-100;
|
||||
border-radius: 2px;
|
||||
color: $grey;
|
||||
height: auto;
|
||||
padding: 0 $size-10;
|
||||
margin-right: 0.5rem;
|
||||
font-weight: normal;
|
||||
|
||||
code {
|
||||
color: $grey;
|
||||
}
|
||||
|
||||
.icon {
|
||||
height: 12px;
|
||||
margin-left: -0.25em;
|
||||
margin-right: 0.25em;
|
||||
min-width: 0;
|
||||
width: 12px;
|
||||
}
|
||||
|
||||
&.has-extra-padding {
|
||||
padding: $size-11 $spacing-xxs;
|
||||
}
|
||||
}
|
||||
|
||||
.tag.is-outlined {
|
||||
background-color: transparent;
|
||||
border: 1px solid $grey-light;
|
||||
}
|
||||
|
||||
.tag.is-bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.tag.is-small {
|
||||
height: auto;
|
||||
}
|
|
@ -3,25 +3,49 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file styles the following styles: title, subtitle, form-section.title and title sizes
|
||||
|
||||
.title:not(:last-child),
|
||||
.subtitle:not(:last-child) {
|
||||
display: block;
|
||||
margin-bottom: 1rem;
|
||||
|
||||
&.has-bottom-margin-xs {
|
||||
margin-bottom: $spacing-xs;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
color: hsl(0, 0%, 21%);
|
||||
font-size: 2rem;
|
||||
font-weight: $font-weight-bold;
|
||||
line-height: 1.125;
|
||||
word-break: break-word;
|
||||
|
||||
> a {
|
||||
color: $black;
|
||||
text-decoration: none;
|
||||
}
|
||||
.has-font-weight-normal {
|
||||
font-weight: $font-weight-normal;
|
||||
|
||||
// title sizes
|
||||
&.is-2 {
|
||||
font-size: $size-2;
|
||||
}
|
||||
|
||||
&.is-3 {
|
||||
font-size: $size-3;
|
||||
}
|
||||
|
||||
&.is-4 {
|
||||
font-size: $size-4;
|
||||
}
|
||||
|
||||
&.is-5 {
|
||||
font-size: $size-5;
|
||||
}
|
||||
|
||||
&.is-6 {
|
||||
font-size: $size-6;
|
||||
}
|
||||
|
||||
&.is-7 {
|
||||
font-size: $size-7;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* COPIED FROM BULMA/SWITCH */
|
||||
/* COPIED FROM BULMA SWITCH */
|
||||
|
||||
.toggle[type='checkbox'] {
|
||||
outline: 0;
|
||||
user-select: none;
|
||||
|
@ -54,8 +55,8 @@
|
|||
height: 1rem;
|
||||
transform: translate3d(0, 0, 0);
|
||||
border-radius: 50%;
|
||||
background: white;
|
||||
transition: all 0.25s ease-out;
|
||||
background: $white;
|
||||
transition: all 0.25s $easing;
|
||||
content: '';
|
||||
}
|
||||
.toggle[type='checkbox']:checked + label::before {
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* This helper includes styles referencing background color, border color, and text color. */
|
||||
|
||||
// background colors
|
||||
.has-background-white-bis {
|
||||
background: $ui-gray-050;
|
||||
}
|
||||
|
||||
.has-background-gray-100 {
|
||||
background-color: $ui-gray-100;
|
||||
}
|
||||
|
||||
.has-background-gray-200 {
|
||||
background-color: $ui-gray-200;
|
||||
}
|
||||
|
||||
// borders
|
||||
.has-border-top-light {
|
||||
border-radius: 0;
|
||||
border-top: 1px solid $grey-light;
|
||||
}
|
||||
|
||||
.has-border-bottom-light {
|
||||
border-radius: 0;
|
||||
border-bottom: 1px solid $grey-light;
|
||||
}
|
||||
|
||||
.has-error-border,
|
||||
select.has-error-border {
|
||||
border: 1px solid $red-500;
|
||||
}
|
||||
|
||||
// specifically for the SearchSelect dropdown.
|
||||
.dropdown-has-error-border > div.ember-basic-dropdown-trigger {
|
||||
border: 1px solid $red-500;
|
||||
}
|
||||
|
||||
// text color
|
||||
.has-text-grey-light {
|
||||
color: $ui-gray-300 !important;
|
||||
}
|
||||
|
||||
.has-text-grey-400 {
|
||||
color: $ui-gray-400;
|
||||
}
|
||||
|
||||
.has-text-grey {
|
||||
color: $ui-gray-500 !important;
|
||||
}
|
||||
|
||||
.has-text-grey-dark {
|
||||
color: $ui-gray-700 !important;
|
||||
}
|
||||
|
||||
.has-text-white {
|
||||
color: $white !important;
|
||||
}
|
||||
|
||||
.has-text-black {
|
||||
color: $black !important;
|
||||
}
|
||||
|
||||
.has-text-info {
|
||||
color: $blue-500 !important;
|
||||
}
|
||||
|
||||
.has-text-success {
|
||||
color: $green-500 !important;
|
||||
}
|
||||
|
||||
.has-text-highlight {
|
||||
color: $yellow-500;
|
||||
}
|
||||
|
||||
.has-text-danger {
|
||||
color: $red-500 !important;
|
||||
}
|
|
@ -0,0 +1,115 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* Helpers that define anything with the CSS flexbox or CSS grid. */
|
||||
|
||||
/* Flexbox helpers */
|
||||
.is-flex {
|
||||
display: flex !important;
|
||||
}
|
||||
|
||||
.is-flex-column {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.is-flex-row {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
// Alignment of the items
|
||||
.is-flex-v-centered {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.is-flex-center {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.is-flex-align-baseline {
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
}
|
||||
|
||||
// Justify-content
|
||||
.is-centered {
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.is-flex-end {
|
||||
display: flex !important;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.is-flex-start {
|
||||
display: flex !important;
|
||||
justify-content: flex-start;
|
||||
|
||||
&.has-gap {
|
||||
gap: $spacing-m;
|
||||
}
|
||||
}
|
||||
|
||||
.is-flex-between,
|
||||
.is-grouped-split {
|
||||
display: flex;
|
||||
justify-content: space-between !important;
|
||||
}
|
||||
|
||||
// Flex basis, grow, stretch and flow
|
||||
.is-flex-full {
|
||||
flex-basis: 100%;
|
||||
}
|
||||
|
||||
.is-flex-1 {
|
||||
flex-grow: 1;
|
||||
&.basis-0 {
|
||||
flex-basis: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.is-no-flex-grow {
|
||||
flex-grow: 0 !important;
|
||||
}
|
||||
|
||||
.is-flex-wrap {
|
||||
flex-flow: row wrap;
|
||||
}
|
||||
|
||||
.is-flex-half {
|
||||
flex: 50%;
|
||||
}
|
||||
|
||||
/* Flex Responsive */
|
||||
@media screen and (min-width: 769px), print {
|
||||
.is-flex-v-centered-tablet {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
|
||||
/* CSS GRID */
|
||||
.is-grid {
|
||||
display: grid;
|
||||
}
|
||||
|
||||
.is-grid-3-columns {
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
}
|
||||
|
||||
.is-medium-height {
|
||||
height: 125px;
|
||||
}
|
||||
|
||||
.is-grid-column-span-3 {
|
||||
grid-column-end: span 3;
|
||||
}
|
|
@ -0,0 +1,100 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* This helper includes styles relating to: box-shadow, border, transition, pointer, grouped css in one helper, and screen-reader only.*/
|
||||
|
||||
// box-shadow helpers
|
||||
.has-only-top-shadow {
|
||||
box-shadow: 0 -1px 0 -1px $grey-light, 0 -2px 0 -1px $grey-light;
|
||||
}
|
||||
|
||||
.has-bottom-shadow {
|
||||
box-shadow: $box-shadow !important;
|
||||
}
|
||||
|
||||
.is-shadowless {
|
||||
box-shadow: none !important;
|
||||
}
|
||||
|
||||
.is-sideless {
|
||||
box-shadow: 0 2px 0 -1px $grey-light, 0 -2px 0 -1px $grey-light;
|
||||
}
|
||||
|
||||
// this helper needs to go after is-sideless as they are often used together and is-bottomless needs to override is-sideless (no this is not ideal).
|
||||
.is-bottomless {
|
||||
box-shadow: 0 -1px 0 0 $grey-light;
|
||||
}
|
||||
|
||||
// border helpers
|
||||
.has-default-border {
|
||||
border: 1px solid $grey !important;
|
||||
}
|
||||
|
||||
.is-borderless {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
// pointer helpers
|
||||
.has-no-pointer {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.has-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
// other
|
||||
.has-background-transition {
|
||||
transition: background-color ease-out $speed;
|
||||
}
|
||||
|
||||
.has-current-color-fill {
|
||||
&,
|
||||
& svg {
|
||||
fill: currentColor;
|
||||
}
|
||||
}
|
||||
|
||||
// large grouped css blocks
|
||||
.is-hint {
|
||||
color: $grey;
|
||||
font-size: $size-8;
|
||||
padding: $size-8 0;
|
||||
}
|
||||
|
||||
.is-optional {
|
||||
color: $grey;
|
||||
font-size: $size-8;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
||||
.is-word-break {
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
word-break: break-word;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.truncate-second-line {
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
// screen reader only
|
||||
.sr-only {
|
||||
border: 0;
|
||||
clip-path: inset(50%);
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0px;
|
||||
position: absolute;
|
||||
white-space: nowrap;
|
||||
width: 1px;
|
||||
}
|
|
@ -0,0 +1,90 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* This helper includes styles relating to: display, width, height, float, visibility, position, alignment. */
|
||||
|
||||
// display
|
||||
.is-block {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.is-hidden {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.is-inline {
|
||||
display: inline !important;
|
||||
}
|
||||
|
||||
.is-inline-block {
|
||||
display: inline-block !important;
|
||||
}
|
||||
|
||||
// position
|
||||
.is-in-bottom-right {
|
||||
position: absolute;
|
||||
bottom: 1rem;
|
||||
right: 1rem;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.is-relative {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
// visibility
|
||||
.is-invisible {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
// width and height
|
||||
.is-fullwidth {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.is-auto-width {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.is-min-width-0 {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.is-medium-height {
|
||||
height: 125px;
|
||||
}
|
||||
|
||||
// float
|
||||
.is-pulled-left {
|
||||
float: left !important;
|
||||
}
|
||||
|
||||
.is-pulled-right {
|
||||
float: right !important;
|
||||
}
|
||||
|
||||
// alignment
|
||||
.is-v-centered {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
// responsive css
|
||||
@media screen and (min-width: 769px), print {
|
||||
.is-hidden-tablet {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.is-hidden-mobile {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1215px) {
|
||||
.is-widescreen:not(.is-max-desktop) {
|
||||
max-width: 1152px;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,165 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* Helpers that define anything with the margin or padding. */
|
||||
|
||||
/* Notes
|
||||
- these helpers are generally defined in px but some (if they use $size-xx) are using rems.
|
||||
*/
|
||||
|
||||
.is-paddingless {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
.has-short-padding {
|
||||
padding: $size-11 $size-5;
|
||||
}
|
||||
|
||||
.has-tall-padding {
|
||||
padding: $size-2;
|
||||
}
|
||||
|
||||
.has-side-padding-s {
|
||||
padding-left: $spacing-s;
|
||||
padding-right: $spacing-s;
|
||||
}
|
||||
|
||||
.has-padding-m {
|
||||
padding: $spacing-m;
|
||||
}
|
||||
|
||||
.has-bottom-padding-s {
|
||||
padding-bottom: $spacing-s;
|
||||
}
|
||||
|
||||
.has-top-padding-s {
|
||||
padding-top: $spacing-s;
|
||||
}
|
||||
|
||||
.has-top-padding-m {
|
||||
padding-top: $spacing-m;
|
||||
}
|
||||
|
||||
.has-top-padding-l {
|
||||
padding-top: $spacing-l;
|
||||
}
|
||||
|
||||
.has-left-padding-xs {
|
||||
padding-left: $spacing-xs;
|
||||
}
|
||||
|
||||
.has-left-padding-s {
|
||||
padding-left: $spacing-s;
|
||||
}
|
||||
|
||||
.has-left-padding-l {
|
||||
padding-left: $spacing-l;
|
||||
}
|
||||
|
||||
.has-top-padding-xxl {
|
||||
padding-top: $spacing-xxl;
|
||||
}
|
||||
|
||||
// All Margin helpers
|
||||
.is-marginless {
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.has-top-bottom-margin {
|
||||
margin: $size-5 0rem;
|
||||
}
|
||||
|
||||
.has-top-bottom-margin-xxs {
|
||||
margin: $spacing-xxs 0;
|
||||
}
|
||||
|
||||
.has-top-bottom-margin-negative-m {
|
||||
margin-top: -$spacing-m;
|
||||
margin-bottom: -$spacing-m;
|
||||
}
|
||||
|
||||
.has-bottom-margin-xs {
|
||||
margin-bottom: $spacing-xs !important;
|
||||
}
|
||||
|
||||
.has-bottom-margin-s {
|
||||
margin-bottom: $spacing-s;
|
||||
}
|
||||
|
||||
.has-bottom-margin-m {
|
||||
margin-bottom: $spacing-m;
|
||||
}
|
||||
|
||||
.has-bottom-margin-l {
|
||||
margin-bottom: $spacing-l;
|
||||
}
|
||||
|
||||
.has-bottom-margin-xl {
|
||||
margin-bottom: $spacing-xl;
|
||||
}
|
||||
|
||||
.has-bottom-margin-xxl {
|
||||
margin-bottom: $spacing-xxl;
|
||||
}
|
||||
|
||||
.has-top-margin-s {
|
||||
margin-top: $spacing-s;
|
||||
}
|
||||
|
||||
.has-top-margin-xs {
|
||||
margin-top: $spacing-xs;
|
||||
}
|
||||
|
||||
.has-top-margin-m {
|
||||
margin-top: $spacing-m;
|
||||
}
|
||||
|
||||
.has-top-margin-l {
|
||||
margin-top: $spacing-l;
|
||||
}
|
||||
|
||||
.has-top-margin-xl {
|
||||
margin-top: $spacing-xl;
|
||||
}
|
||||
|
||||
.has-top-margin-xxl {
|
||||
margin-top: $spacing-xxl;
|
||||
}
|
||||
|
||||
.has-top-margin-negative-s {
|
||||
margin-top: (-1 * $spacing-s);
|
||||
}
|
||||
|
||||
.has-left-margin-xxs {
|
||||
margin-left: $spacing-xxs;
|
||||
}
|
||||
|
||||
.has-left-margin-xs {
|
||||
margin-left: $spacing-xs;
|
||||
}
|
||||
|
||||
.has-left-margin-s {
|
||||
margin-left: $spacing-s;
|
||||
}
|
||||
|
||||
.has-left-margin-m {
|
||||
margin-left: $spacing-m;
|
||||
}
|
||||
|
||||
.has-left-margin-l {
|
||||
margin-left: $spacing-l;
|
||||
}
|
||||
|
||||
.has-left-margin-xl {
|
||||
margin-left: $spacing-xl;
|
||||
}
|
||||
|
||||
.has-right-margin-m {
|
||||
margin-right: $spacing-m;
|
||||
}
|
||||
|
||||
.has-right-margin-l {
|
||||
margin-right: $spacing-l;
|
||||
}
|
|
@ -0,0 +1,102 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* This helper includes styles relating to: font-size, font-family, font-alignment, text-transform, text-weight, font-style, text-decoration. */
|
||||
|
||||
// font size helpers
|
||||
.is-size-4 {
|
||||
font-size: $size-4 !important;
|
||||
}
|
||||
|
||||
.is-size-5 {
|
||||
font-size: $size-5 !important;
|
||||
}
|
||||
|
||||
.is-size-6 {
|
||||
font-size: $size-6 !important;
|
||||
}
|
||||
|
||||
.is-size-7 {
|
||||
font-size: $size-7 !important;
|
||||
}
|
||||
|
||||
.is-size-8 {
|
||||
font-size: $size-8 !important;
|
||||
}
|
||||
|
||||
.is-size-9 {
|
||||
font-size: $size-9 !important;
|
||||
}
|
||||
|
||||
// Font weight
|
||||
.has-font-weight-normal {
|
||||
font-weight: $font-weight-normal;
|
||||
}
|
||||
|
||||
.has-text-weight-semibold {
|
||||
font-weight: $font-weight-semibold !important;
|
||||
}
|
||||
|
||||
.has-text-weight-bold {
|
||||
font-weight: $font-weight-bold !important;
|
||||
}
|
||||
|
||||
// Font family
|
||||
.is-font-mono {
|
||||
font-family: $family-monospace;
|
||||
}
|
||||
|
||||
.masked-font {
|
||||
font-family: obscure, text-security-square;
|
||||
letter-spacing: 2px;
|
||||
}
|
||||
|
||||
// Text decoration
|
||||
.is-underline {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.is-no-underline {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
// Text transformations
|
||||
.is-lowercase {
|
||||
text-transform: lowercase !important;
|
||||
}
|
||||
|
||||
.is-uppercase {
|
||||
text-transform: uppercase !important;
|
||||
}
|
||||
|
||||
// Text alignment
|
||||
.has-text-right {
|
||||
text-align: right !important;
|
||||
}
|
||||
|
||||
.has-text-centered {
|
||||
text-align: center !important;
|
||||
}
|
||||
|
||||
// Text color or styling
|
||||
.is-help {
|
||||
font-size: $size-8;
|
||||
margin-top: $size-11;
|
||||
}
|
||||
|
||||
.help {
|
||||
display: block;
|
||||
font-size: 0.85714rem;
|
||||
margin-top: $size-11;
|
||||
}
|
||||
|
||||
.sub-text {
|
||||
color: $grey;
|
||||
margin-bottom: $size-11;
|
||||
font-size: $size-8;
|
||||
|
||||
strong {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,24 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// TODO: lots of inconsistent variation on box-shadow usage. Fix.
|
||||
|
||||
// box
|
||||
$box-shadow: 0 0 0 1px rgba($black, 0.1);
|
||||
$box-shadow-low: 0 5px 1px -2px rgba($black, 0.12), 0 3px 2px -1px rgba($black, 0);
|
||||
$box-shadow-middle: 0 8px 4px -4px rgba($black, 0.1), 0 6px 8px -2px rgba($black, 0.05);
|
||||
$box-shadow-high: 0 12px 5px -7px rgba($black, 0.08), 0 11px 10px -3px rgba($black, 0.1);
|
||||
$box-shadow-highest: 0 16px 6px -10px rgba($black, 0.06), 0 16px 16px -4px rgba($black, 0.2);
|
||||
|
||||
// box-link
|
||||
$box-link-shadow: 0 0 0 1px $ui-gray-200;
|
||||
$box-link-hover-shadow: 0 0 0 1px $ui-gray-300;
|
||||
|
||||
// border
|
||||
$base-border: 1px solid $ui-gray-300;
|
||||
$light-border: 1px solid $ui-gray-200;
|
||||
|
||||
// button specific
|
||||
$button-box-shadow-standard: 0 3px 1px 0 rgba($black, 0.12);
|
|
@ -1,101 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// Color overrides
|
||||
$light: $grey-lightest;
|
||||
$primary: $grey-dark;
|
||||
$link: $blue;
|
||||
$text: $grey-darkest;
|
||||
$info: $blue;
|
||||
$success: $green;
|
||||
$warning: $yellow;
|
||||
$danger: $red;
|
||||
$black-bis: $ui-gray-900;
|
||||
$black-ter: $ui-gray-700;
|
||||
$grey-darker: $ui-gray-900;
|
||||
$grey-lighter: $ui-gray-050;
|
||||
$white-ter: rgba($white, 0.5);
|
||||
$white-bis: $ui-gray-050;
|
||||
$code: $grey-dark;
|
||||
$code-background: transparent;
|
||||
$border: $grey-light;
|
||||
|
||||
$hr-margin: 1rem 0;
|
||||
|
||||
$mobile: 769px;
|
||||
$header-height: 4rem;
|
||||
|
||||
//typography
|
||||
$family-sans: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu',
|
||||
'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
|
||||
$family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
||||
$family-primary: $family-sans;
|
||||
$body-size: 14px;
|
||||
$size-3: (24/14) + 0rem; // ~1.714rem ~27px
|
||||
$size-4: 1.5rem; // 24px
|
||||
$size-5: 1.25rem; // 20px
|
||||
$size-7: (13/14) + 0rem; // ~.929rem ~15px
|
||||
$size-8: (12/14) + 0rem; // ~.857rem ~13.7px
|
||||
$size-9: 0.75rem; // 12px
|
||||
$size-10: 0.5rem; // 8px
|
||||
$size-11: 0.25rem; // 4px
|
||||
$console-spacing: 1.5rem; // 24px
|
||||
$size-small: $size-8;
|
||||
$font-weight-normal: 400;
|
||||
$font-weight-semibold: 600;
|
||||
$font-weight-bold: 700;
|
||||
|
||||
//input
|
||||
$input-background-color: $white;
|
||||
$input-focus-background-color: $white;
|
||||
$input-border-color: $grey;
|
||||
|
||||
$radius: 2px;
|
||||
$radius-large: 4px;
|
||||
|
||||
//box
|
||||
$box-radius: 0;
|
||||
$box-shadow: 0 0 0 1px rgba($black, 0.1);
|
||||
$box-shadow-low: 0 5px 1px -2px rgba($black, 0.12), 0 3px 2px -1px rgba($black, 0);
|
||||
$box-shadow-middle: 0 8px 4px -4px rgba($black, 0.1), 0 6px 8px -2px rgba($black, 0.05);
|
||||
$box-shadow-high: 0 12px 5px -7px rgba($black, 0.08), 0 11px 10px -3px rgba($black, 0.1);
|
||||
$box-shadow-highest: 0 16px 6px -10px rgba($black, 0.06), 0 16px 16px -4px rgba($black, 0.2);
|
||||
|
||||
$breadcrumb-item-color: $blue;
|
||||
$breadcrumb-item-separator-color: rgba($blue, 0.5);
|
||||
$breadcrumb-item-active-color: $black;
|
||||
|
||||
$navbar-background-color: transparent;
|
||||
|
||||
$menu-item-hover-background-color: $blue;
|
||||
$menu-item-hover-color: $white;
|
||||
|
||||
$progress-bar-background-color: $ui-gray-050;
|
||||
|
||||
$base-border: 1px solid $ui-gray-300;
|
||||
$light-border: 1px solid $ui-gray-200;
|
||||
|
||||
//menu
|
||||
$menu-item-hover-color: $text;
|
||||
$menu-item-hover-background-color: $grey-lightest;
|
||||
$menu-item-active-color: $link;
|
||||
$menu-item-active-background-color: transparent;
|
||||
|
||||
$box-link-shadow: 0 0 0 1px $ui-gray-200;
|
||||
$box-link-hover-shadow: 0 0 0 1px $grey-light;
|
||||
|
||||
// Nav
|
||||
$drawer-width: 300px;
|
||||
|
||||
// animations
|
||||
$speed: 150ms;
|
||||
$speed-slow: $speed * 2;
|
||||
|
||||
// Wizard
|
||||
$wizard-progress-bar-height: 6px;
|
||||
$wizard-progress-check-size: 16px;
|
||||
|
||||
// Div height
|
||||
$medium-height: 125px;
|
|
@ -3,23 +3,6 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// Colors that will eventually be in Structure package
|
||||
|
||||
// Vault Gray
|
||||
$vault-gray-010: #fdfdfe;
|
||||
$vault-gray-050: #f7fafc;
|
||||
$vault-gray-100: #ebeef5;
|
||||
$vault-gray-200: #d3dbe6;
|
||||
$vault-gray-300: #b4bdcc;
|
||||
$vault-gray-400: #949fb0;
|
||||
$vault-gray-500: #7c8797;
|
||||
$vault-gray-600: #5a6370;
|
||||
$vault-gray-700: #3c434d;
|
||||
$vault-gray-800: #1d2126;
|
||||
$vault-gray-900: #060708;
|
||||
$vault-gray: $vault-gray-500;
|
||||
$vault-gray-dark: $vault-gray-700;
|
||||
|
||||
// UI Gray
|
||||
$ui-gray-010: #fbfbfc;
|
||||
$ui-gray-050: #f7f8fa;
|
||||
|
@ -38,6 +21,12 @@ $grey: $ui-gray-500;
|
|||
$grey-dark: $ui-gray-700;
|
||||
$grey-darkest: $ui-gray-900;
|
||||
|
||||
// Black
|
||||
$black: hsl(0, 0%, 4%); // in hex: #0a0a0a
|
||||
|
||||
// White
|
||||
$white: hsl(0, 0%, 100%);
|
||||
|
||||
// Blue
|
||||
$blue-010: #fbfcff;
|
||||
$blue-050: #f0f5ff;
|
|
@ -0,0 +1,16 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// Vars relating to font-family or font-weight.
|
||||
|
||||
$family-sans: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu',
|
||||
'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
|
||||
|
||||
$family-monospace: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
||||
|
||||
/* Font weight */
|
||||
$font-weight-normal: 400;
|
||||
$font-weight-semibold: 600;
|
||||
$font-weight-bold: 700;
|
|
@ -0,0 +1,51 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
/* General sizing in rem values used largely for text sizing.*/
|
||||
$size-1: 3rem; // 48px, same as $spacing-xxl
|
||||
$size-2: 2.5rem; // 40px
|
||||
$size-3: (24/14) + 0rem; // ~1.714rem ~27px
|
||||
$size-4: 1.5rem; // 24px same as $spacing-l
|
||||
$size-5: 1.25rem; // 20px
|
||||
$size-6: 1rem; // 16px same as $spacing-m
|
||||
$size-7: (13/14) + 0rem; // ~.929rem ~15px
|
||||
$size-8: (12/14) + 0rem; // ~.857rem ~13.7px
|
||||
$size-9: 0.75rem; // 12px same as $spacing-s
|
||||
$size-10: 0.5rem; // 8px same as $spacing-xs
|
||||
$size-11: 0.25rem; // 4px same as spacing-xxs
|
||||
|
||||
/* Spacing vars in px */
|
||||
$spacing-xxs: 4px;
|
||||
$spacing-xs: 8px;
|
||||
$spacing-s: 12px;
|
||||
$spacing-m: 16px;
|
||||
$spacing-l: 24px;
|
||||
$spacing-xl: 36px;
|
||||
$spacing-xxl: 48px;
|
||||
|
||||
/* Border radius */
|
||||
$radius: 2px;
|
||||
$radius-large: 4px;
|
||||
|
||||
/* Responsiveness */
|
||||
// 960, 1152, and 1344 have been chosen because they are divisible by both 12 and 16
|
||||
$mobile: 769px;
|
||||
// 960px container + 4rem
|
||||
$desktop: 960px + (2 * 32px);
|
||||
// 1344px container + 4rem
|
||||
$fullhd: 1344px + (2 * 32px);
|
||||
|
||||
/* Animations and transitions */
|
||||
$speed: 150ms;
|
||||
$speed-slow: $speed * 2;
|
||||
$easing: ease-out;
|
||||
|
||||
/* Nav */
|
||||
$drawer-width: 300px;
|
||||
|
||||
// Wizard
|
||||
// Not being used: https://github.com/hashicorp/vault/pull/19220
|
||||
// $wizard-progress-bar-height: 6px;
|
||||
// $wizard-progress-check-size: 16px;
|
|
@ -1,14 +0,0 @@
|
|||
/**
|
||||
* Copyright (c) HashiCorp, Inc.
|
||||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// Spacing that will eventually be in Structure package
|
||||
|
||||
$spacing-xxs: 4px;
|
||||
$spacing-xs: 8px;
|
||||
$spacing-s: 12px;
|
||||
$spacing-m: 16px;
|
||||
$spacing-l: 24px;
|
||||
$spacing-xl: 36px;
|
||||
$spacing-xxl: 48px;
|
|
@ -3,6 +3,8 @@
|
|||
* SPDX-License-Identifier: MPL-2.0
|
||||
*/
|
||||
|
||||
// This file defines the following mixins: css-arrow, css-top-arrow, css-bottom-arrow, from, until, and vault-block
|
||||
|
||||
@mixin css-arrow(
|
||||
$vertical-direction,
|
||||
$size,
|
||||
|
@ -68,6 +70,18 @@
|
|||
@include css-arrow('bottom', $size, $color, $border-width, $border-color, $left, $left-offset);
|
||||
}
|
||||
|
||||
@mixin from($breakpoint) {
|
||||
@media (min-width: $breakpoint) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin until($breakpoint) {
|
||||
@media (max-width: $breakpoint) {
|
||||
@content;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin vault-block {
|
||||
&:not(:last-child) {
|
||||
margin-bottom: (5/14) + 0rem;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<Icon @name="x" aria-label="Close console" />
|
||||
</button>
|
||||
<div class="console-ui-panel-content">
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p class="has-text-grey is-font-mono">
|
||||
The Vault Browser CLI provides an easy way to execute the most common CLI commands, such as write, read, delete, and
|
||||
list.
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{{this.label}}
|
||||
{{/if}}
|
||||
</label>
|
||||
<div class="file has-name is-fullwidth">
|
||||
<div class="file is-fullwidth">
|
||||
<div class="file-label" aria-label="Choose a file">
|
||||
<input id="file-input" class="file-input" type="file" onchange={{action "pickedFile"}} data-test-file-input />
|
||||
<label for="file-input" class="file-cta button">
|
||||
|
|
|
@ -38,7 +38,13 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
<div class="is-flex-start has-gap has-top-margin-l">
|
||||
<button id="restart" type="button" class="button has-text-danger" {{on "click" this.restartSetup}} data-test-restart>
|
||||
<button
|
||||
id="restart"
|
||||
type="button"
|
||||
class="button is-danger-outlined"
|
||||
{{on "click" this.restartSetup}}
|
||||
data-test-restart
|
||||
>
|
||||
Restart setup
|
||||
</button>
|
||||
<button id="cancel" type="button" {{on "click" this.redirectPreviousPage}} class="button is-primary" data-test-done>
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
/>
|
||||
{{/if}}
|
||||
{{#if @modelForData.isFolder}}
|
||||
<p class="help is-danger">
|
||||
<p class="help has-text-danger">
|
||||
The secret path may not end in
|
||||
<code>/</code>
|
||||
</p>
|
||||
|
|
|
@ -119,7 +119,7 @@
|
|||
<footer class="modal-card-foot modal-card-foot-outlined">
|
||||
<button
|
||||
type="button"
|
||||
class="button has-text-danger"
|
||||
class="button is-danger-outlined"
|
||||
{{on "click" (fn this.handleDelete this.deleteType (action (mut this.showDeleteModal) false))}}
|
||||
disabled={{if this.deleteType false true}}
|
||||
data-test-modal-delete
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
@modelValidations={{this.modelValidations}}
|
||||
@mode={{@mode}}
|
||||
/>
|
||||
<label class={{if (eq @mode "create") "title has-padding-top is-5" "title has-padding-top is-4"}}>
|
||||
<label class="title has-top-padding-m is-{{if (eq @mode 'create') '5' '4'}}">
|
||||
Additional options
|
||||
</label>
|
||||
{{/if}}
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
/>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="table info-table-row-header">
|
||||
<div class="info-table-row-header">
|
||||
<div class="info-table-row thead">
|
||||
<div class="th column is-one-quarter">
|
||||
Key
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
<h3 class="title is-5">{{@cardTitle}}</h3>
|
||||
<LinkTo
|
||||
@route={{@actionTo}}
|
||||
class="has-icon-right is-ghost is-no-underline has-text-semibold"
|
||||
class="has-icon-right is-ghost is-no-underline has-text-weight-semibold"
|
||||
@query={{hash itemType=@queryParam}}
|
||||
data-test-action-text={{@actionText}}
|
||||
>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
{{#if @unwrap_data}}
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<nav class="tabs">
|
||||
<nav class="tabs has-bottom-margin-l">
|
||||
<ul>
|
||||
{{! template-lint-configure no-nested-interactive "warn" }}
|
||||
<li
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<form onsubmit={{action @doSubmit (hash param=@param context=@context nonce=@nonce bits=@bits)}}>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<NamespaceReminder @mode="perform" @noun="datakey creation" />
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>Generate a new high-entropy key and value using <code>{{@key.name}}</code> as the encryption key.</p>
|
||||
</div>
|
||||
<div class="field">
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<form onsubmit={{action @doSubmit (hash ciphertext=@ciphertext context=@context nonce=@nonce)}}>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>You can decrypt ciphertext using <code>{{@key.name}}</code> as the encryption key.</p>
|
||||
</div>
|
||||
<div class="field">
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<NamespaceReminder @mode="perform" @noun="encryption" />
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>You can encrypt plaintext data using <code>{{@key.name}}</code> as the encryption key.</p>
|
||||
</div>
|
||||
<KeyVersionSelect @key={{@key}} @onVersionChange={{action (mut @key_version)}} @key_version={{@key_version}} />
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<NamespaceReminder @mode="perform" @noun="HMAC creation" />
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>
|
||||
Generate the digest of given data using the specified hash algorithm and
|
||||
<code>{{@key.name}}</code>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<form onsubmit={{action @doSubmit (hash ciphertext=@ciphertext context=@context nonce=@nonce key_version=@key_version)}}>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<NamespaceReminder @mode="perform" @noun="rewrap" />
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>
|
||||
You can rewrap the provided ciphertext using the latest version of
|
||||
<code>{{@key.name}}</code>
|
||||
|
@ -44,7 +44,7 @@
|
|||
{{/if}}
|
||||
</div>
|
||||
<div class="field box is-fullwidth is-bottomless">
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p class="help">
|
||||
Submitting this form will update the
|
||||
<code>ciphertext</code>
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
}}
|
||||
>
|
||||
<div class="box is-sideless is-fullwidth is-marginless">
|
||||
<div class="content">
|
||||
<div class="content has-bottom-margin-l">
|
||||
<p>Check whether the provided signature is valid for the given data.</p>
|
||||
</div>
|
||||
<div class="field">
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
</p.levelLeft>
|
||||
</PageHeader>
|
||||
|
||||
<div class="box is-fullwidth is-sideless is-flex-between is-box-shadowless is-marginless">
|
||||
<div class="box is-fullwidth is-sideless is-flex-between is-shadowless is-marginless">
|
||||
<p>
|
||||
Configure and enforce multi-factor authentication (MFA) for users logging into Vault, for any
|
||||
<br />
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue