mirror of
https://github.com/Kong/insomnia
synced 2024-11-08 23:00:30 +00:00
377 lines
6.1 KiB
Plaintext
377 lines
6.1 KiB
Plaintext
@import '../constants/dimensions';
|
|
@import '../constants/colors';
|
|
|
|
.form-control {
|
|
outline: none;
|
|
border: 0;
|
|
margin-bottom: @padding-sm;
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
|
|
&.form-control--btn-right {
|
|
position: relative;
|
|
|
|
input {
|
|
padding-right: 2em;
|
|
}
|
|
|
|
&:hover .form-control__right {
|
|
opacity: 0.8;
|
|
}
|
|
|
|
.form-control__right {
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
padding: 0 @padding-sm;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
margin: 0;
|
|
opacity: 0.5;
|
|
|
|
&:hover {
|
|
opacity: 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
.input,
|
|
input,
|
|
textarea,
|
|
select,
|
|
button {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: block;
|
|
margin-top: @padding-xs;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
button,
|
|
input[type='radio'],
|
|
input[type='checkbox'] {
|
|
width: auto;
|
|
}
|
|
|
|
input[type='radio'],
|
|
input[type='checkbox'] {
|
|
height: 1rem;
|
|
float: left;
|
|
margin-top: @padding-xxs;
|
|
margin-right: @padding-xs;
|
|
}
|
|
|
|
& > button {
|
|
width: auto;
|
|
}
|
|
|
|
input:invalid {
|
|
border: 1px solid var(--color-warning) !important;
|
|
}
|
|
|
|
label {
|
|
font-weight: 600;
|
|
display: block;
|
|
margin-top: @padding-xs;
|
|
padding-top: 0;
|
|
|
|
* {
|
|
font-weight: normal;
|
|
}
|
|
}
|
|
|
|
&.form-control--thin {
|
|
label {
|
|
font-weight: normal;
|
|
}
|
|
|
|
margin-bottom: @padding-xxs;
|
|
}
|
|
|
|
&.form-control--padded,
|
|
&.form-control--outlined,
|
|
&.form-control--underlined {
|
|
textarea,
|
|
.input,
|
|
input,
|
|
select {
|
|
border: 1px solid var(--hl-md);
|
|
padding: @padding-sm;
|
|
border-radius: @radius-md;
|
|
background-color: @hl-xxs;
|
|
}
|
|
|
|
// Because <select> is weird
|
|
select {
|
|
padding-top: 0;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
&:not(.form-control--tall) {
|
|
.input,
|
|
input,
|
|
select {
|
|
height: @line-height-xs;
|
|
}
|
|
}
|
|
|
|
.input[data-focused='on'],
|
|
textarea:focus,
|
|
select:focus,
|
|
input:focus {
|
|
background-color: transparent;
|
|
border-color: var(--hl-lg);
|
|
}
|
|
}
|
|
|
|
&.form-control--underlined .input[data-focused='on'],
|
|
&.form-control--underlined input:focus,
|
|
&.form-control--underlined textarea:focus {
|
|
border-color: var(--hl);
|
|
}
|
|
|
|
&.form-control--padded {
|
|
.input,
|
|
textarea,
|
|
select,
|
|
input {
|
|
border: 0;
|
|
}
|
|
}
|
|
|
|
&.form-control--underlined {
|
|
textarea,
|
|
select,
|
|
.input,
|
|
input {
|
|
border-radius: 0;
|
|
border-top: 0;
|
|
border-right: 0;
|
|
border-left: 0;
|
|
background: none;
|
|
padding-left: @padding-xxs;
|
|
padding-right: @padding-xxs;
|
|
}
|
|
}
|
|
|
|
&.form-control--inactive {
|
|
textarea,
|
|
.input,
|
|
input,
|
|
.btn,
|
|
select {
|
|
border-style: dashed;
|
|
opacity: @opacity-subtle;
|
|
color: @hl-xl;
|
|
}
|
|
}
|
|
}
|
|
|
|
.form-control--wide {
|
|
margin-left: 0 !important;
|
|
margin-right: 0 !important;
|
|
}
|
|
|
|
.form-control--no-label::before {
|
|
content: 'nothing';
|
|
opacity: 0;
|
|
padding-top: @padding-xs;
|
|
display: block;
|
|
}
|
|
|
|
.form-row {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
align-content: center;
|
|
flex-direction: row;
|
|
|
|
& > * {
|
|
width: 100%;
|
|
margin-left: @padding-xxs;
|
|
margin-right: @padding-xxs;
|
|
}
|
|
|
|
& > p {
|
|
margin: 0;
|
|
}
|
|
|
|
& > *:first-child {
|
|
margin-left: 0;
|
|
}
|
|
|
|
& > *:last-child {
|
|
margin-right: 0;
|
|
}
|
|
}
|
|
|
|
.icon {
|
|
text-align: center;
|
|
color: var(--hl);
|
|
|
|
&.icon--success {
|
|
color: var(--color-success);
|
|
}
|
|
|
|
&:hover {
|
|
color: var(--color-font);
|
|
}
|
|
}
|
|
|
|
.btn {
|
|
text-align: center;
|
|
background: var(--color-bg);
|
|
|
|
&:not(.btn--plain) {
|
|
padding: 0 calc(@padding-md * 1.5);
|
|
height: @line-height-md;
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
&.btn--compact {
|
|
padding: 0 @padding-md;
|
|
height: @line-height-sm;
|
|
}
|
|
|
|
&.btn--super-compact {
|
|
padding: 0 @padding-md;
|
|
height: @line-height-xs;
|
|
}
|
|
|
|
&.btn--super-duper-compact {
|
|
padding: 0 @padding-sm;
|
|
height: @line-height-xxs;
|
|
}
|
|
|
|
&.btn--micro {
|
|
font-size: @font-size-xs;
|
|
line-height: @font-size-xs;
|
|
padding: @padding-xxs @padding-xs;
|
|
height: auto;
|
|
border-radius: 3px;
|
|
}
|
|
|
|
&.btn--outlined {
|
|
border: 1px solid @hl-lg;
|
|
border-radius: @radius-md;
|
|
}
|
|
|
|
&.btn--clicky {
|
|
.btn--super-compact;
|
|
.btn--outlined;
|
|
}
|
|
|
|
&.btn--clicky-small {
|
|
.btn--super-duper-compact;
|
|
.btn--outlined;
|
|
}
|
|
|
|
&.btn--expandable-small {
|
|
padding: 0 @padding-md;
|
|
min-height: @line-height-sm;
|
|
height: unset;
|
|
}
|
|
}
|
|
|
|
*:disabled {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.btn:focus:not(:disabled),
|
|
.btn.focus:not(:disabled),
|
|
.btn:hover:not(:disabled) {
|
|
background-color: @hl-xs;
|
|
}
|
|
|
|
.btn:active:not(:disabled) {
|
|
background-color: @hl-md;
|
|
}
|
|
|
|
.btn.btn--no-background {
|
|
opacity: 0.5;
|
|
background-color: transparent;
|
|
|
|
&:hover {
|
|
opacity: 1;
|
|
background-color: transparent;
|
|
}
|
|
}
|
|
|
|
textarea,
|
|
input,
|
|
.input,
|
|
button,
|
|
select {
|
|
transition: all 130ms ease-out;
|
|
box-sizing: border-box;
|
|
text-align: left;
|
|
font-size: inherit;
|
|
text-decoration: inherit;
|
|
background: none;
|
|
border: 0;
|
|
outline: 0;
|
|
margin: 0;
|
|
padding: 0;
|
|
color: inherit;
|
|
|
|
// Explicitly set font-family because browser stylesheet
|
|
// will use default it
|
|
font-family: var(--font-family);
|
|
|
|
&::-webkit-input-placeholder {
|
|
color: @hl-lg;
|
|
}
|
|
}
|
|
|
|
input[type='number']::-webkit-inner-spin-button {
|
|
opacity: 0.8;
|
|
}
|
|
|
|
input.input--error,
|
|
.input.input--error {
|
|
border-color: var(--color-danger) !important;
|
|
}
|
|
|
|
button {
|
|
width: auto;
|
|
padding: 0;
|
|
margin: 0;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
option {
|
|
background-color: var(--color-bg);
|
|
color: var(--color-font);
|
|
}
|
|
|
|
textarea.no-resize {
|
|
resize: none;
|
|
}
|
|
|
|
input[type='color'] {
|
|
height: @line-height-xs !important;
|
|
padding: @padding-xxs !important;
|
|
}
|
|
|
|
label {
|
|
// So we can highlight from CSS checkbox selector
|
|
position: relative;
|
|
z-index: 1;
|
|
|
|
input[type='checkbox']:focus,
|
|
input[type='radio']:focus {
|
|
&::before {
|
|
z-index: -1;
|
|
content: ' ';
|
|
position: absolute;
|
|
top: calc(-@padding-xxs * -1);
|
|
bottom: calc(-@padding-xxs * -1);
|
|
left: calc(-@padding-xxs * -1);
|
|
right: calc(-@padding-xxs * -1);
|
|
border-radius: @radius-sm;
|
|
background-color: var(--hl-sm);
|
|
}
|
|
}
|
|
}
|