open-nomad/ui/app/styles/core/forms.scss
Phil Renaud ffd16dfec6
[ui, epic] SSO and Auth improvements (#15110)
* Top nav auth dropdown (#15055)

* Basic dropdown styles

* Some cleanup

* delog

* Default nomad hover state styles

* Component separation-of-concerns and acceptance tests for auth dropdown

* lintfix

* [ui, sso] Handle token expiry 500s (#15073)

* Handle error states generally

* Dont direct, just redirect

* no longer need explicit error on controller

* Redirect on token-doesnt-exist

* Forgot to import our time lib

* Linting on _blank

* Redirect tests

* changelog

* [ui, sso] warn user about pending token expiry (#15091)

* Handle error states generally

* Dont direct, just redirect

* no longer need explicit error on controller

* Linting on _blank

* Custom notification actions and shift the template to within an else block

* Lintfix

* Make the closeAction optional

* changelog

* Add a mirage token that will always expire in 11 minutes

* Test for token expiry with ember concurrency waiters

* concurrency handling for earlier test, and button redirect test

* [ui] if ACLs are disabled, remove the Sign In link from the top of the UI (#15114)

* Remove top nav link if ACLs disabled

* Change to an enabled-by-default model since you get no agent config when ACLs are disabled but you lack a token

* PR feedback addressed; down with double negative conditionals

* lintfix

* ember getter instead of ?.prop

* [SSO] Auth Methods and Mock OIDC Flow (#15155)

* Big ol first pass at a redirect sign in flow

* dont recursively add queryparams on redirect

* Passing state and code qps

* In which I go off the deep end and embed a faux provider page in the nomad ui

* Buggy but self-contained flow

* Flow auto-delay added and a little more polish to resetting token

* secret passing turned to accessor passing

* Handle SSO Failure

* General cleanup and test fix

* Lintfix

* SSO flow acceptance tests

* Percy snapshots added

* Explicitly note the OIDC test route is mirage only

* Handling failure case for complete-auth

* Leentfeex

* Tokens page styles (#15273)

* styling and moving columns around

* autofocus and enter press handling

* Styles refined

* Split up manager and regular tests

* Standardizing to a binary status state

* Serialize auth-methods response to use "name" as primary key (#15380)

* Serializer for unique-by-name

* Use @classic because of class extension
2022-11-28 10:44:52 -05:00

122 lines
1.8 KiB
SCSS

@mixin input {
@include control;
background-color: #fff;
border-color: $grey-blue;
color: $text;
&:hover,
&.is-hovered,
&:active,
&.is-active,
&:focus,
&.is-focused {
border-color: darken($grey-blue, 5%);
}
&[disabled] {
background-color: $grey-blue;
border-color: darken($grey-blue, 5%);
}
}
.input,
.textarea {
@include input;
box-shadow: none;
padding: 0.4em 0.75em;
height: auto;
&::placeholder {
color: $grey-blue;
}
&.is-compact {
padding: 0.25em 0.75em;
margin: -0.25em -0.25em -0.25em 0;
}
}
.field {
&.is-inline {
display: inline-block;
}
&.is-horizontal {
.field-label {
margin-right: 1rem;
padding-top: 0.3em;
font-weight: $weight-semibold;
white-space: nowrap;
&.is-small {
padding-top: 0.55em;
}
&.is-multiline {
white-space: normal;
}
}
}
&.is-sub-field {
margin-left: 2em;
}
&:not(:last-child) {
margin-bottom: 1rem;
}
}
.form {
&.is-small {
font-size: 0.85rem;
.label {
font-size: 0.85rem;
}
}
.label {
font-weight: $weight-medium;
}
.group-heading {
text-transform: uppercase;
letter-spacing: 0.05ch;
margin-bottom: 1.5em;
color: $grey;
font-weight: $weight-medium;
}
}
.mock-sso-provider {
margin: 25vh auto;
width: 500px;
top: 25vh;
height: auto;
max-height: 50vh;
box-shadow: 0 0 0 100vw rgba(0, 2, 30, 0.8);
padding: 1rem;
text-align: center;
background-color: white;
h1 {
font-size: 2rem;
font-weight: 400;
}
h2 {
margin-bottom: 1rem;
font-size: 1rem;
}
.providers {
display: grid;
gap: 0.5rem;
button {
background-color: #444;
color: white;
&.error {
background-color: darkred;
}
}
}
}