amis2/scss/components/form/_transfer.scss
2020-05-29 16:43:53 +08:00

178 lines
3.0 KiB
SCSS

.#{$ns}Transfer {
display: flex;
flex-direction: row;
flex-wrap: wrap;
min-height: px2rem(300px);
&--inline {
display: inline-flex;
flex-wrap: nowrap;
}
&-title {
display: flex;
align-items: center;
background: $Transfer-title-bg;
height: px2rem(30px);
line-height: $Form-input-lineHeight;
font-size: $Form-input-fontSize;
padding: (px2rem(30px) - $Form-input-lineHeight * $Form-input-fontSize)/2
$gap-sm;
flex-direction: row;
&--light {
background: transparent;
}
> span {
flex-grow: 1;
}
}
&-select,
&-result {
width: 0;
min-width: px2rem(200px);
flex-grow: 1;
border: $Form-input-borderWidth solid $Form-input-borderColor;
display: flex;
flex-direction: column;
}
&-select > &-checkboxes,
&-result > &-selections {
flex-grow: 1;
max-height: 100%;
overflow: auto;
}
&-search + &-checkboxes {
border-top: 1px solid $borderColor;
}
&-checkboxes .#{$ns}ListCheckboxes-placeholder {
height: 100%;
display: flex;
align-items: center;
text-align: center;
justify-content: center;
}
&-search {
padding: $gap-sm;
}
&-mid {
min-width: px2rem(10px);
display: flex;
flex-direction: column;
justify-content: center;
}
&-arrow {
width: 40px;
height: 30px;
display: flex;
justify-content: center;
align-items: center;
border: 1px solid $borderColor;
margin: 0 10px;
color: $icon-color;
> svg {
top: 0;
width: 14px;
height: 14px;
}
}
&-checkAll,
&-clearAll {
user-select: none;
cursor: pointer;
&.is-disabled {
pointer-events: none;
color: $text--muted-color;
}
}
&-tabs {
display: flex;
flex-direction: column;
height: 100%;
> .#{$ns}Tabs-links {
border-top: 0 none;
padding: 5px 0 0 5px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items: center;
> .#{$ns}Tabs-link > a:first-child {
font-size: 12px;
padding: 7px 8px;
}
.#{$ns}TabsTransfer-tabsMid {
flex-grow: 1;
}
> .#{$ns}SearchBox {
margin: -5px 5px 0 10px;
&.is-active {
width: 150px;
margin-right: 10px;
padding-left: 10px;
}
}
}
> .#{$ns}Tabs-content {
flex-grow: 1;
position: relative;
padding: 5px 0 0;
> .#{$ns}Tabs-pane {
position: relative;
min-height: 100%;
&.is-active {
display: flex;
flex-direction: column;
> .#{$ns}Transfer-checkboxes {
flex-grow: 1;
max-height: 100%;
overflow: auto;
}
}
}
}
}
}
.#{$ns}TabsTransfer {
.#{$ns}Transfer-title {
height: 40px;
}
// .#{$ns}Transfer-result {
// flex-grow: unset;
// }
&-placeholder {
@include checkboxes-placeholder();
}
}
.#{$ns}TransferControl {
position: relative;
&.is-inline {
display: inline-block;
}
}