Vulture/VApp/node_modules/vuetify/lib/components/VInput/VInput.sass

116 lines
2.7 KiB
Sass
Raw Normal View History

@use 'sass:math'
@use 'sass:selector'
@use '../../styles/tools'
@use './variables' as *
.v-input
display: grid
flex: 1 1 auto
font-size: $input-font-size
font-weight: $input-font-weight
line-height: $input-line-height
&--disabled
pointer-events: none
@at-root
@include tools.density('v-input', $input-density) using ($modifier)
--v-input-control-height: #{$input-control-height + $modifier}
--v-input-padding-top: #{16px + $modifier * .5}
.v-input--vertical
grid-template-areas: "append" "control" "prepend"
grid-template-rows: max-content auto max-content
grid-template-columns: min-content
.v-input__prepend
margin-block-start: $input-affix-margin-inside
.v-input__append
margin-block-end: $input-affix-margin-inside
.v-input--horizontal
grid-template-areas: "prepend control append" "a messages b"
grid-template-columns: max-content minmax(0, 1fr) max-content
grid-template-rows: auto auto
.v-input__prepend
margin-inline-end: $input-affix-margin-inside
.v-input__append
margin-inline-start: $input-affix-margin-inside
.v-input__details
align-items: flex-end
display: flex
font-size: $input-details-font-size
font-weight: $input-details-font-weight
grid-area: messages
letter-spacing: $input-details-letter-spacing
line-height: $input-details-line-height
min-height: $input-details-min-height
padding-top: $input-details-padding-above
overflow: hidden
justify-content: space-between
.v-input__details,
.v-input__prepend,
.v-input__append
> .v-icon
opacity: var(--v-medium-emphasis-opacity)
.v-input--disabled &,
.v-input--error &
> .v-icon,
.v-messages
opacity: 1
.v-input--disabled &
opacity: var(--v-disabled-opacity)
.v-input--error:not(.v-input--disabled) &
> .v-icon,
.v-messages
color: rgb(var(--v-theme-error))
.v-input__prepend,
.v-input__append
display: flex
align-items: flex-start
padding-top: var(--v-input-padding-top)
.v-input--center-affix &
align-items: center
padding-top: 0
.v-input__prepend
grid-area: prepend
.v-input__append
grid-area: append
.v-input__control
display: flex
grid-area: control
.v-input
&--hide-spin-buttons
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
-webkit-appearance: none
margin: 0
input[type=number]
-moz-appearance: textfield
&--plain-underlined
.v-input__prepend,
.v-input__append
$this: &
align-items: flex-start
@at-root
@include tools.density('v-input', $input-density) using ($modifier)
@at-root #{selector.append(&, $this)}
padding-top: calc(var(--v-input-padding-top) + #{math.max(0px, 4px + $modifier * .25)})