123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 |
- @import "../../node_modules/bootstrap/scss/functions";
- // @import "your-custom-variables";
- @import "../../node_modules/bootstrap/scss/variables";
- @import "../../node_modules/bootstrap/scss/mixins";
- $dselect-clear-icon-width: .625rem;
- .dselect-wrapper {
- // Toggler
- .form-select {
- padding-left: $form-select-padding-x;
- display: flex;
- align-items: center;
- flex-wrap: wrap;
- gap: .25rem;
- text-align: left;
- &.show { // ref: form-select:focus
- border-color: $form-select-focus-border-color;
- outline: 0;
- @if $enable-shadows {
- @include box-shadow($form-select-box-shadow, $form-select-focus-box-shadow);
- } @else {
- // Avoid using mixin so we can pass custom focus shadow properly
- box-shadow: $form-select-focus-box-shadow;
- }
- }
- &.dselect-clearable {
- padding-right: add($form-select-indicator-padding + ($form-select-padding-x / 2), $dselect-clear-icon-width);
- }
- &.form-select-sm {
- padding-left: $form-select-padding-x-sm;
- &.dselect-clearable {
- padding-right: add($form-select-indicator-padding + ($form-select-padding-x-sm / 2), $dselect-clear-icon-width);
- }
- }
- &.form-select-lg {
- padding-left: $form-select-padding-x-lg;
- &.dselect-clearable {
- padding-right: add($form-select-indicator-padding + ($form-select-padding-x-lg / 2), $dselect-clear-icon-width);
- }
- }
- }
- // Menu
- .dropdown-menu {
- padding: $form-select-padding-x / 2;
- width: 100%;
- > .flex-column {
- gap:$form-select-padding-x / 2;
- }
- }
- .form-select-sm + .dropdown-menu {
- padding: $form-select-padding-x-sm / 2;
- @include font-size($form-select-font-size-sm);
- }
- .form-select-lg + .dropdown-menu {
- padding: $form-select-padding-x-lg / 2;
- @include font-size($form-select-font-size-lg);
- }
- // Item
- .dropdown-item,
- .dropdown-header {
- padding-left: $form-select-padding-x / 2;
- padding-right: $form-select-padding-x / 2;
- }
- .form-select-sm + .dropdown-menu .dropdown-item,
- .form-select-sm + .dropdown-menu .dropdown-header {
- padding-left: $form-select-padding-x-sm / 2;
- padding-right: $form-select-padding-x-sm / 2;
- }
- .form-select-lg + .dropdown-menu .dropdown-item,
- .form-select-lg + .dropdown-menu .dropdown-header {
- padding-left: $form-select-padding-x-lg / 2;
- padding-right: $form-select-padding-x-lg / 2;
- }
- // Search input
- .form-control {
- border-radius: 0;
- box-shadow: none !important;
- border-color: $input-border-color !important;
- padding: $dropdown-item-padding-y subtract($form-select-padding-x / 2, $input-border-width);
- font-size: inherit;
- }
- .form-select-sm + .dropdown-menu .form-control {
- padding: subtract($dropdown-item-padding-y, 1px) subtract($form-select-padding-x-sm / 2, $input-border-width);
- }
- .form-select-lg + .dropdown-menu .form-control {
- padding: $dropdown-item-padding-y subtract($form-select-padding-x-lg / 2, $input-border-width);
- }
- // No results
- .dselect-no-results {
- padding: $dropdown-item-padding-y $form-select-padding-x / 2;
- }
- .form-select-sm + .dropdown-menu .dselect-no-results {
- padding: subtract($dropdown-item-padding-y, 1px) $form-select-padding-x-sm / 2;
- }
- .form-select-lg + .dropdown-menu .dselect-no-results {
- padding: $dropdown-item-padding-y $form-select-padding-x-lg / 2;
- }
- // Tag
- .dselect-tag {
- background-color: $secondary;
- color: $light;
- padding-left: add(.5rem, 14px);
- padding-right: .5rem;
- border-radius: $border-radius;
- height: calc(#{$form-select-line-height} * #{$font-size-base});
- line-height: calc((#{$form-select-line-height} * #{$font-size-base}) - 1px);
- position: relative;
- }
- .form-select-sm .dselect-tag {
- height: auto;
- line-height: inherit;
- }
- .form-select-lg .dselect-tag {
- height: calc(#{$form-select-line-height} * #{$font-size-lg});
- line-height: calc(#{$form-select-line-height} * #{$font-size-lg});
- }
- .dselect-tag-remove {
- position: absolute;
- left: .25rem;
- top: 50%;
- margin-top: -7px;
- color: rgba($light, .35);
- @include transition(color .15s ease-in-out);
- &:hover {
- color: $light;
- }
- }
- // Placeholder
- .dselect-placeholder {
- color: $input-placeholder-color;
- }
- // Optgroups
- .dropdown-header ~ .dropdown-item {
- padding-left: $form-select-padding-x;
- padding-right: $form-select-padding-x;
- }
- .form-select-sm + .dropdown-menu .dropdown-header {
- font-size: .85em;
- ~ .dropdown-item {
- padding-left: $form-select-padding-x-sm;
- padding-right: $form-select-padding-x-sm;
- }
- }
- .form-select-lg + .dropdown-menu .dropdown-header {
- font-size: .85em;
- ~ .dropdown-item {
- padding-left: $form-select-padding-x-lg;
- padding-right: $form-select-padding-x-lg;
- }
- }
- // Clear
- .dselect-clear {
- position: absolute;
- padding: 0;
- border: 0;
- box-shadow: none;
- top: 0;
- bottom: 0;
- right: $form-select-indicator-padding;
- display: flex;
- align-items: center;
- color: $text-muted;
- cursor: pointer;
- &:hover {
- color: inherit;
- }
- svg {
- width: $dselect-clear-icon-width;
- height: $dselect-clear-icon-width;
- }
- }
- [data-dselect-text=""] ~ .dselect-clear {
- display: none;
- }
- // Validation
- .was-validated .form-select:invalid + & .form-select,
- .form-select.is-invalid + & .form-select {
- border-color: $form-feedback-invalid-color;
- &.show,
- &:focus {
- box-shadow: 0 0 $input-btn-focus-blur $input-focus-width rgba($form-feedback-invalid-color, $input-btn-focus-color-opacity);
- }
- }
- .was-validated .form-select:valid + & .form-select,
- .form-select.is-valid + & .form-select {
- border-color: $form-feedback-valid-color;
- &.show,
- &:focus {
- box-shadow: 0 0 $input-btn-focus-blur $input-focus-width rgba($form-feedback-valid-color, $input-btn-focus-color-opacity);
- }
- }
- }
|