insomnia/app/ui/css/components/forms.less

282 lines
4.4 KiB
Plaintext
Raw Normal View History

2016-03-23 05:26:27 +00:00
@import '../constants/dimensions';
@import '../constants/colors';
.form-control {
outline: none;
border: 0;
margin-bottom: @padding-sm;
width: 100%;
box-sizing: border-box;
2016-03-23 05:26:27 +00:00
.input,
input,
2016-04-10 02:58:48 +00:00
textarea,
2017-01-24 22:25:21 +00:00
select,
button {
2016-03-23 05:26:27 +00:00
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;
2016-03-23 05:26:27 +00:00
}
Sync Proof of Concept (#33) * Maybe working POC * Change to use remote url * Other URL too * Some logic * Got the push part working * Made some updates * Fix * Update * Add status code check * Stuff * Implemented new sync api * A bit more robust * Debounce changes * Change timeout * Some fixes * Remove .less * Better error handling * Fix base url * Support for created vs updated docs * Try silent * Silence removal too * Small fix after merge * Fix test * Stuff * Implement key generation algorithm * Tidy * stuff * A bunch of stuff for the new API * Integrated the session stuff * Stuff * Just started on encryption * Lots of updates to encryption * Finished createResourceGroup function * Full encryption/decryption working (I think) * Encrypt localstorage with sessionID * Some more * Some extra checks * Now uses separate DB. Still needs to be simplified a LOT * Fix deletion bug * Fixed unicode bug with encryption * Simplified and working * A bunch of polish * Some stuff * Removed some workspace meta properties * Migrated a few more meta properties * Small changes * Fix body scrolling and url cursor jumping * Removed duplication of webpack port * Remove workspaces reduces * Some small fixes * Added sync modal and opt-in setting * Good start to sync flow * Refactored modal footer css * Update sync status * Sync logger * A bit better logging * Fixed a bunch of sync-related bugs * Fixed signup form button * Gravatar component * Split sync modal into tabs * Tidying * Some more error handling * start sending 'user agent * Login/signup error handling * Use real UUIDs * Fixed tests * Remove unused function * Some extra checks * Moved cloud sync setting to about page * Some small changes * Some things
2016-10-21 17:20:36 +00:00
input:invalid {
2017-01-23 22:41:31 +00:00
border: 1px solid var(--color-warning) !important;
2016-06-16 06:16:24 +00:00
}
label {
font-weight: 600;
display: block;
padding-top: @padding-xs;
* {
font-weight: normal;
}
}
&.form-control--thin {
label {
font-weight: normal;
}
margin-bottom: @padding-xxs;
}
&.form-control--padded,
2016-04-09 01:14:25 +00:00
&.form-control--outlined,
&.form-control--underlined {
2016-04-10 02:58:48 +00:00
textarea,
.input,
2017-01-24 22:25:21 +00:00
input,
select {
border: 1px solid var(--hl-md);
padding: @padding-sm;
2016-08-29 17:58:59 +00:00
border-radius: @radius-md;
2017-01-24 02:52:48 +00:00
background-color: @hl-xxs;
2016-03-23 05:26:27 +00:00
}
2016-04-09 01:14:25 +00:00
&:not(.form-control--tall) {
.input,
input,
select {
height: @line-height-xs;
}
}
.input[data-focused="on"],
textarea:focus,
2017-01-24 22:25:21 +00:00
select:focus,
2016-04-09 01:14:25 +00:00
input:focus {
background-color: transparent;
border-color: var(--hl-lg);
2016-04-09 01:14:25 +00:00
}
}
&.form-control--underlined .input[data-focused="on"],
2017-01-23 22:41:31 +00:00
&.form-control--underlined input:focus,
&.form-control--underlined textarea:focus {
border-color: var(--hl);
2017-01-23 22:41:31 +00:00
}
&.form-control--padded {
.input,
textarea,
2017-01-24 22:25:21 +00:00
select,
input {
border: 0;
}
}
2016-04-09 01:14:25 +00:00
&.form-control--underlined {
2016-04-10 02:58:48 +00:00
textarea,
2017-01-24 22:25:21 +00:00
select,
.input,
2016-04-09 01:14:25 +00:00
input {
2016-04-15 02:13:49 +00:00
border-radius: 0;
2016-04-09 01:14:25 +00:00
border-top: 0;
border-right: 0;
border-left: 0;
background: none;
padding-left: @padding-xxs;
padding-right: @padding-xxs;
2016-04-09 01:14:25 +00:00
}
2016-03-23 05:26:27 +00:00
}
}
2016-04-12 06:10:46 +00:00
.form-control--wide {
2016-04-10 02:58:48 +00:00
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);
&:hover {
color: var(--color-font);
}
}
2016-03-23 05:26:27 +00:00
.btn {
text-align: center;
2017-03-29 02:21:49 +00:00
background: var(--color-bg);
2016-03-23 05:26:27 +00:00
&:not(.btn--plain) {
padding: 0 (@padding-md * 1.5);
height: @line-height-md;
border: 1px solid transparent;
}
2016-03-23 05:26:27 +00:00
&.btn--compact {
2016-08-29 17:58:59 +00:00
padding: 0 @padding-md;
height: @line-height-sm;
2016-03-23 05:26:27 +00:00
}
&.btn--super-compact {
2016-08-29 17:58:59 +00:00
padding: 0 @padding-md;
height: @line-height-xs;
}
2016-09-09 18:28:57 +00:00
&.btn--super-duper-compact {
padding: 0 @padding-sm;
height: @line-height-xxs;
}
&.btn--outlined {
2016-08-29 17:58:59 +00:00
border: 1px solid @hl-lg;
border-radius: @radius-md;
}
2016-11-26 00:49:38 +00:00
&.btn--clicky {
.btn--super-compact;
.btn--outlined;
}
2017-03-29 02:21:49 +00:00
&.btn--clicky-small {
.btn--super-duper-compact;
.btn--outlined;
}
2016-03-23 05:26:27 +00:00
}
2016-11-24 01:24:59 +00:00
*:disabled {
2016-11-24 06:35:39 +00:00
opacity: 0.5;
}
2016-11-22 22:26:52 +00:00
.btn:focus:not(:disabled),
.btn.focus:not(:disabled),
.btn:hover:not(:disabled) {
background-color: @hl-xs;
2016-03-23 05:26:27 +00:00
}
2016-11-22 22:26:52 +00:00
.btn:active:not(:disabled) {
background-color: @hl-md;
2016-03-23 05:26:27 +00:00
}
2016-11-22 22:26:52 +00:00
.btn.btn--no-background {
opacity: 0.5;
background-color: transparent;
2016-11-22 22:26:52 +00:00
&:hover {
opacity: 1;
background-color: transparent;
2016-11-22 22:26:52 +00:00
}
}
textarea, input, .input, button, select {
transition: all 130ms ease-out;
2016-03-23 05:26:27 +00:00
box-sizing: border-box;
2016-03-23 18:34:39 +00:00
text-align: left;
2016-03-23 05:26:27 +00:00
font-size: inherit;
text-decoration: inherit;
background: none;
border: 0;
outline: 0;
margin: 0;
2016-07-08 06:02:40 +00:00
padding: 0;
2016-05-01 19:56:30 +00:00
color: inherit;
2016-03-23 05:26:27 +00:00
&::-webkit-input-placeholder {
2017-01-23 22:41:31 +00:00
color: @hl-lg;
2016-03-23 05:26:27 +00:00
}
}
2017-01-23 22:41:31 +00:00
input[type=number]::-webkit-inner-spin-button {
opacity: 0.8;
}
input.input--error {
2017-01-23 22:41:31 +00:00
border-color: var(--color-danger) !important;
}
2016-03-23 05:26:27 +00:00
button {
width: auto;
2016-04-04 07:15:30 +00:00
padding: 0;
margin: 0;
white-space: nowrap;
2016-03-23 05:26:27 +00:00
}
2016-04-30 05:01:57 +00:00
option {
background-color: var(--color-bg);
color: var(--color-font);
}
2016-04-30 05:01:57 +00:00
textarea.no-resize {
resize: none;
}
input[type="color"] {
height: @line-height-xs !important;
padding: @padding-xxs !important;
}