Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 1 | @charset "utf-8"; |
Nils Diewald | ab4d3ca | 2015-04-17 01:48:43 +0000 | [diff] [blame] | 2 | @import "../util"; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 3 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 4 | $left-padding: 4em; // 32pt; // 2.8em; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 5 | $border-size: 2px; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 6 | $bracket-size: .4em; // 4pt; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 7 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 8 | /** |
| 9 | * Virtual Collection Builder |
| 10 | */ |
Akron | 5c829e9 | 2017-05-12 18:10:00 +0200 | [diff] [blame] | 11 | |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 12 | .vc { |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 13 | margin-top: 4pt; |
| 14 | |
| 15 | /** |
| 16 | * Rules for all docGroups |
| 17 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 18 | .docGroup { |
| 19 | position: relative; |
| 20 | display: inline-block; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 21 | margin-left: $left-padding; // 28pt |
| 22 | |
| 23 | .docGroup { display: block; } |
| 24 | |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 25 | color: $nearly-white; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 26 | padding: 4pt 2pt 4pt 0pt; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 27 | border: { |
| 28 | radius: $standard-border-radius * 2; |
| 29 | style: solid; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 30 | width: 0 $bracket-size; // .6em .5em |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 31 | } |
| 32 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 33 | // Whiten on hover |
| 34 | &:hover { |
| 35 | background-color: rgba(255,255,255,.06); |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 36 | } |
| 37 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 38 | &[data-operation] { |
| 39 | > .doc:first-child::before, |
| 40 | > .docGroup:first-child::before { |
| 41 | content: none; |
| 42 | } |
| 43 | > .doc::before, |
| 44 | > .docGroup::before { |
| 45 | display: inline-block; |
| 46 | position: absolute; |
| 47 | text-align: right; |
| 48 | width: $left-padding; |
| 49 | margin-left: -1 * ($left-padding + .5em); // -28pt |
| 50 | color: $dark-green; |
Nils Diewald | 1fcb2ad | 2015-04-20 19:19:18 +0000 | [diff] [blame] | 51 | line-height: 1.5em; |
| 52 | border-top: $border-size solid transparent; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 53 | } |
| 54 | > .docGroup::before { |
| 55 | margin-left: -1 * ($left-padding + .5em) + (-1 * $bracket-size); |
| 56 | } |
| 57 | } |
| 58 | |
| 59 | // Or operation |
| 60 | &[data-operation=or] { |
| 61 | border-color: $dark-orange; |
| 62 | > .doc::before, |
| 63 | > .docGroup::before { |
| 64 | // This will be overruled by JS! |
| 65 | content: "or"; |
| 66 | } |
| 67 | } |
| 68 | |
| 69 | // And operation |
| 70 | &[data-operation=and] { |
| 71 | > .doc::before, |
| 72 | > .docGroup::before { |
| 73 | // This will be overruled by JS! |
| 74 | content: "and"; |
| 75 | } |
| 76 | } |
| 77 | |
| 78 | |
| 79 | /** |
| 80 | * All operators on groups |
| 81 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 82 | > .operators { |
| 83 | position: absolute; |
| 84 | display: block; |
| 85 | top: 10px; |
| 86 | vertical-align: middle; |
| 87 | left: 3px; |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 88 | > span:first-child { |
Akron | 8b592d4 | 2018-01-26 18:33:06 +0100 | [diff] [blame] | 89 | border: { |
| 90 | top-left-radius: 0; |
| 91 | bottom-left-radius: 0; |
| 92 | } |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 93 | } |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 94 | margin-left: 100%; |
| 95 | padding: 0; |
| 96 | } |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 97 | } |
| 98 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 99 | |
| 100 | /** |
| 101 | * All document rules |
| 102 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 103 | .doc { |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 104 | padding-left: $left-padding; |
Nils Diewald | 4c22125 | 2015-04-21 20:19:25 +0000 | [diff] [blame] | 105 | > span + span, |
Nils Diewald | 9c12506 | 2015-05-05 23:54:17 +0000 | [diff] [blame] | 106 | > span + div + span { |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 107 | margin-left: 5pt; |
| 108 | } |
Nils Diewald | 9c12506 | 2015-05-05 23:54:17 +0000 | [diff] [blame] | 109 | |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 110 | > span.key, |
| 111 | > span.value { |
| 112 | font-weight: bold; |
Nils Diewald | 9c12506 | 2015-05-05 23:54:17 +0000 | [diff] [blame] | 113 | &[data-type=regex] { |
| 114 | font-style: italic; |
| 115 | &::after, &::before { |
| 116 | content: '/'; |
| 117 | } |
| 118 | } |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 119 | } |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 120 | |
| 121 | /** |
| 122 | * All operators on docs |
| 123 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 124 | > .operators { |
| 125 | display: inline-block; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 126 | margin-left: 10px; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 127 | } |
| 128 | > span.key { |
| 129 | position: relative; |
| 130 | > ul { |
Akron | 8b592d4 | 2018-01-26 18:33:06 +0100 | [diff] [blame] | 131 | margin: 0; |
| 132 | margin-left: 3.3em; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 133 | } |
| 134 | } |
| 135 | } |
| 136 | |
| 137 | .rewritten { |
| 138 | .rewrite { |
| 139 | margin-left: 4pt; |
| 140 | display: inline-block; |
| 141 | color: $dark-orange; |
| 142 | &::after { |
Akron | 5c829e9 | 2017-05-12 18:10:00 +0200 | [diff] [blame] | 143 | font: { |
| 144 | family: FontAwesome; |
| 145 | style: normal; |
| 146 | weight: normal; |
| 147 | } |
| 148 | content: $fa-rewrite; |
| 149 | text-decoration: underline; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 150 | } |
| 151 | span { |
Akron | 5c829e9 | 2017-05-12 18:10:00 +0200 | [diff] [blame] | 152 | display: none; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 153 | } |
| 154 | } |
| 155 | } |
| 156 | |
Nils Diewald | 4c22125 | 2015-04-21 20:19:25 +0000 | [diff] [blame] | 157 | .doc > span { |
Nils Diewald | 1fcb2ad | 2015-04-20 19:19:18 +0000 | [diff] [blame] | 158 | cursor: pointer; |
Nils Diewald | 4c22125 | 2015-04-21 20:19:25 +0000 | [diff] [blame] | 159 | &:hover { |
| 160 | color: $dark-green; |
| 161 | } |
Nils Diewald | 1fcb2ad | 2015-04-20 19:19:18 +0000 | [diff] [blame] | 162 | } |
| 163 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 164 | /** |
| 165 | * All operators |
| 166 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 167 | .operators { |
| 168 | opacity: 0; |
| 169 | white-space: nowrap; |
| 170 | padding: 0; |
| 171 | font-size: 0; |
| 172 | line-height: 0; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 173 | text-align: center; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 174 | } |
| 175 | |
| 176 | > .docGroup { |
| 177 | margin-left: 0; |
| 178 | } |
| 179 | |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 180 | .doc, .docGroup { |
| 181 | &:hover > .operators { |
| 182 | opacity: 1; |
| 183 | } |
| 184 | } |
| 185 | |
Nils Diewald | 4c22125 | 2015-04-21 20:19:25 +0000 | [diff] [blame] | 186 | .menu { |
| 187 | display: inline-block; |
| 188 | } |
Nils Diewald | c4c4b83 | 2015-05-05 16:00:08 +0000 | [diff] [blame] | 189 | |
| 190 | div.value { |
| 191 | position: absolute; |
| 192 | display: inline-block; |
Akron | c1457bf | 2015-06-11 19:24:00 +0200 | [diff] [blame] | 193 | z-index: 8000; |
Nils Diewald | c4c4b83 | 2015-05-05 16:00:08 +0000 | [diff] [blame] | 194 | @include choose-item; |
| 195 | box-shadow: $choose-box-shadow; |
| 196 | padding: 4pt; |
Akron | c1457bf | 2015-06-11 19:24:00 +0200 | [diff] [blame] | 197 | margin-top: -6pt; |
Nils Diewald | c4c4b83 | 2015-05-05 16:00:08 +0000 | [diff] [blame] | 198 | border: { |
| 199 | width: $border-size; |
| 200 | style: solid; |
| 201 | radius: $standard-border-radius; |
| 202 | } |
| 203 | input { |
| 204 | border-width: 0; |
| 205 | } |
| 206 | > div { |
| 207 | padding: 2pt; |
| 208 | cursor: pointer; |
| 209 | font: { |
| 210 | size: 80%; |
| 211 | style: italic; |
| 212 | } |
| 213 | display: inline-block; |
| 214 | @include choose-item; |
| 215 | border: { |
| 216 | width: $border-size; |
| 217 | style: solid; |
| 218 | radius: $standard-border-radius; |
| 219 | } |
| 220 | |
| 221 | &:hover { |
| 222 | @include choose-hover; |
| 223 | } |
| 224 | } |
| 225 | &.regex { |
Nils Diewald | 9c12506 | 2015-05-05 23:54:17 +0000 | [diff] [blame] | 226 | > input { |
| 227 | font-style: italic; |
| 228 | } |
| 229 | |
Nils Diewald | c4c4b83 | 2015-05-05 16:00:08 +0000 | [diff] [blame] | 230 | > div { |
| 231 | @include choose-active; |
| 232 | } |
| 233 | } |
| 234 | } |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 235 | } |
| 236 | |
| 237 | |
Nils Diewald | 359a72c | 2015-04-20 17:40:29 +0000 | [diff] [blame] | 238 | /** |
| 239 | * The z-index cascade for groups. |
| 240 | */ |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 241 | $dg-index : 30; |
Nils Diewald | a944fab | 2015-04-08 21:02:04 +0000 | [diff] [blame] | 242 | .docGroup { |
| 243 | > .operators { |
| 244 | z-index: $dg-index; |
| 245 | } |
| 246 | .docGroup { |
| 247 | > .operators { |
| 248 | z-index: $dg-index + 1; |
| 249 | } |
| 250 | .docGroup { |
| 251 | > .operators { |
| 252 | z-index: $dg-index + 2; |
| 253 | } |
| 254 | .docGroup { |
| 255 | > .operators { |
| 256 | z-index: $dg-index + 3; |
| 257 | } |
| 258 | .docGroup { |
| 259 | > .operators { |
| 260 | z-index: $dg-index + 4; |
| 261 | } |
| 262 | .docGroup { |
| 263 | > .operators { |
| 264 | z-index: $dg-index + 5; |
| 265 | } |
| 266 | .docGroup { |
| 267 | > .operators { |
| 268 | z-index: $dg-index + 6; |
| 269 | } |
| 270 | } |
| 271 | } |
| 272 | } |
| 273 | } |
| 274 | } |
| 275 | } |
| 276 | } |
Nils Diewald | fccfbcb | 2015-04-29 20:48:19 +0000 | [diff] [blame] | 277 | |
Akron | c1457bf | 2015-06-11 19:24:00 +0200 | [diff] [blame] | 278 | #collection { |
Nils Diewald | 7148c6f | 2015-05-04 15:07:53 +0000 | [diff] [blame] | 279 | line-height: 1em; |
| 280 | border-radius: $standard-border-radius; |
| 281 | } |
Nils Diewald | fccfbcb | 2015-04-29 20:48:19 +0000 | [diff] [blame] | 282 | |
Akron | 5c829e9 | 2017-05-12 18:10:00 +0200 | [diff] [blame] | 283 | |
| 284 | #vc-choose > span.rewritten { |
Nils Diewald | fccfbcb | 2015-04-29 20:48:19 +0000 | [diff] [blame] | 285 | &::after { |
Akron | 5c829e9 | 2017-05-12 18:10:00 +0200 | [diff] [blame] | 286 | color: $dark-orange; |
| 287 | padding: 0; |
| 288 | padding-left: 4px; |
| 289 | font: { |
| 290 | family: FontAwesome; |
| 291 | style: normal; |
| 292 | weight: normal; |
| 293 | } |
| 294 | content: $fa-rewrite; |
| 295 | text-decoration: underline; |
Nils Diewald | fccfbcb | 2015-04-29 20:48:19 +0000 | [diff] [blame] | 296 | } |
Akron | 6bb7158 | 2016-06-10 20:41:08 +0200 | [diff] [blame] | 297 | } |