summaryrefslogtreecommitdiffstats
path: root/css/Properties/Properties.scss
blob: ba108c53a1b300b93e88e6f9cb4f56fc9bbaf523 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/**
 * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>
 *
 * @author John Molakvoæ <skjnldsv@protonmail.com>
 *
 * @license GNU AGPL version 3 or any later version
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation, either version 3 of the
 * License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 *
 */

.property {
	@include generate-grid-span(1);
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	position: relative;
	width: $grid-column-width;

	&--last {
		margin-bottom: $grid-height-unit;
	}
	// no delete icon on addressbook selector
	&--addressbooks &__delete {
		display: none !important;
	}
	
	&__delete {
		position: absolute;
		top: 0;
		right: 0;
		width: $grid-height-unit;
		height: $grid-height-unit;
		margin: 0;
		border: 0;
		background-color: transparent;
		opacity: .5;
		display: none;
		&:hover,
		a:active,
		a:focus {
			opacity: .7;
		}
	}
	
	&:hover &__delete,
	a:active &__delete,
	a:focus &__delete {
		display: block;
	}
	
	// property row
	&__row {
		display: flex;
		align-items: center;
		padding-right: 44px;
		height: $grid-height-unit;
		position: relative;
	}
	
	// property label or multiselect within row
	&__label,
	&__label.multiselect {
		margin: $grid-input-margin;
		margin: $grid-input-margin 5px $grid-input-margin 0;
		height: $grid-input-height-with-margin;
		padding: $grid-input-padding 0;
		width: 120px;
		opacity: .7;
		user-select: none;
		background-size: 16px;

		&,
		.multiselect__input::placeholder {
			text-align: right;
		}

		&:not(.multiselect) {
			text-overflow: ellipsis;
			white-space: nowrap;
			overflow: hidden;
			overflow-x: hidden;
		}

		&.multiselect {
			&:hover,
			&:focus {
				opacity: 1;
			}
		}
	}

	&__label.multiselect {
		.multiselect__tags {
			border: none;
			.multiselect__single {
				@include icon-color('triangle-s', 'actions', $color-black, 1, true);
				background-repeat: no-repeat;
				background-position: center right 4px;
				padding-right: 24px;
			}
		}
	}

	// property value within row, after label
	&__value {
		flex: 1 1;
	}
}