UNPKG

13 kBtext/lessView Raw
1/******************************************************************************
2 *
3 * Copyright (c) 2017, the Perspective Authors.
4 *
5 * This file is part of the Perspective library, distributed under the terms of
6 * the Apache License 2.0. The full license can be found in the LICENSE file.
7 *
8 */
9
10@import "./column_labels.less";
11@import "./variables.less";
12
13:host:hover #config_button {
14 opacity: 1;
15}
16
17#config_button {
18 background: none;
19 opacity: 1 !important;
20}
21
22.button {
23 padding: var(--button--padding, 12px 14px 24px 8px);
24}
25
26[settings="true"] #config_button {
27 opacity: 1 !important;
28}
29
30@keyframes expand {
31 from {
32 opacity: 0;
33 }
34}
35
36:host {
37 position: relative;
38 display: inline-block;
39 overflow: hidden;
40 word-wrap: "normal";
41
42 --highcharts-full--gradient: linear-gradient(
43 #4d342f 0%,
44 #e4521b 22.5%,
45 #feeb65 42.5%,
46 #f0f0f0 50%,
47 #dcedc8 57.5%,
48 #42b3d5 67.5%,
49 #1a237e 100%
50 );
51
52 --highcharts-positive--gradient: linear-gradient(
53 #dcedc8 0%,
54 #42b3d5 35%,
55 #1a237e 100%
56 );
57 --highcharts-negative--gradient: linear-gradient(
58 #feeb65 100%,
59 #e4521b 70%,
60 #4d342f 0%
61 );
62 --hypergrid-tree-header--background: #fff;
63 --hypergrid-tree-header--color: #666;
64 --hypergrid-header--background: #fff;
65 --hypergrid-separator--color: #666;
66 --hypergrid-header--color: #666;
67 --hypergrid-positive--color: #1078d1;
68 --hypergrid-negative--color: rgb(255, 136, 136);
69 --hypergrid--font-size: 12px;
70 --hypergrid-header--font-size: 12px;
71 --hypergrid--font-family: Helvetica, @sans-serif-fonts;
72 --hypergrid-header--font-family: Helvetica, @sans-serif-fonts;
73 --hypergrid-row-hover--background: #f6f6f6;
74 --hypergrid-row-hover--color: #666;
75 --hypergrid-cell-hover--background: #eeeeee;
76 --hypergrid-cell-hover--color: #666;
77
78 --integer--hypergrid--text-align: right;
79 --float--hypergrid--text-align: right;
80
81 --d3fc-series: rgba(31, 119, 180, 0.5);
82 --d3fc-series-1: #0366d6;
83 --d3fc-series-2: #ff7f0e;
84 --d3fc-series-3: #2ca02c;
85 --d3fc-series-4: #d62728;
86 --d3fc-series-5: #9467bd;
87 --d3fc-series-6: #8c564b;
88 --d3fc-series-7: #e377c2;
89 --d3fc-series-8: #7f7f7f;
90 --d3fc-series-9: #bcbd22;
91 --d3fc-series-10: #17becf;
92 --d3fc-full--gradient: linear-gradient(
93 #4d342f 0%,
94 #e4521b 22.5%,
95 #feeb65 42.5%,
96 #f0f0f0 50%,
97 #dcedc8 57.5%,
98 #42b3d5 67.5%,
99 #1a237e 100%
100 );
101 --d3fc-positive--gradient: linear-gradient(
102 #dcedc8 0%,
103 #42b3d5 35%,
104 #1a237e 100%
105 );
106 --d3fc-negative--gradient: linear-gradient(
107 #feeb65 100%,
108 #e4521b 70%,
109 #4d342f 0%
110 );
111
112 #pivot_chart {
113 position: absolute;
114 width: 100%;
115 height: 100%;
116 display: grid;
117 justify-content: stretch;
118 }
119 .hidden {
120 display: none;
121 }
122 .psp-icon {
123 color: #999;
124 &:hover {
125 cursor: pointer;
126 }
127 }
128 .psp-icon__add {
129 display: flex;
130 width: 20px;
131 min-width: 20px;
132 margin-top: -2px;
133 height: 0px;
134 font-family: var(--column-add--font-family, inherit);
135 &:before {
136 font-feature-settings: "liga";
137 content: var(--column-add--before, "+");
138 }
139 }
140 .psp-title__columnName {
141 display: flex;
142 margin-left: 34px;
143 margin-top: 3px;
144 font-size: 12px;
145 color: #666;
146 }
147 .side_panel-action:hover {
148 cursor: pointer;
149 }
150 * {
151 box-sizing: border-box;
152 line-height: 1.42857143;
153 }
154 #app {
155 display: flex;
156 position: relative;
157 width: 100%;
158 height: 100%;
159 }
160 #app.hide_message {
161 #drop_target {
162 display: none;
163 }
164 }
165 .chart {
166 padding: 15px;
167 }
168 #pivot_chart_container {
169 flex-grow: 1;
170 position: relative;
171 border: var(--plugin--border, none);
172 overflow: hidden;
173 }
174 .config {
175 display: flex;
176 }
177 #row_pivots #psp_row,
178 #column_pivots #psp_row,
179 #sort #psp_row,
180 #filters #psp_row {
181 display: inline;
182 }
183 ul {
184 min-height: 20px;
185 }
186 #active_columns perspective-row {
187 animation: expand 0.3s ease-out;
188 --column-selector--color: var(--active--color, #999);
189 --is_visible--before: var(--active-column-selector--content, "\25CF");
190 }
191 #inactive_columns perspective-row {
192 animation: expand 0.3s ease-out;
193 --column-selector--color: var(--inactive-column-selector--color, #999);
194 --is_visible--before: var(--inactive-column-selector--content, "\25CB");
195 --row_draggable--animation: none;
196 &:hover {
197 transition: none;
198 opacity: 1;
199 }
200 }
201 #top_panel perspective-row {
202 animation: expand 0.3s ease-out;
203 --column-name--flex: 1;
204 }
205 #active_columns,
206 #inactive_columns {
207 list-style: none;
208 padding: 0px;
209 width: 100%;
210 margin: var(--column-container--margin, 8px 0px 0px 0px);
211 overflow-y: overlay;
212 overflow-x: hidden;
213 position: relative;
214 }
215 #inactive_columns {
216 perspective-row {
217 opacity: var(--inactive-column--opacity, 1);
218 transition: opacity 0.3s; // --row_draggable--transition: margin-left 0.5s;
219 &.active {
220 --row_draggable--margin: 0px 0px 0px 10px;
221 opacity: 0;
222 height: 0 !important;
223 overflow: hidden;
224 }
225 }
226 }
227 .columns_horizontal #sub_columns.collapse #side_panel__actions {
228 margin-top: 0px;
229 }
230 #sub_columns {
231 min-height: 33.3%;
232 flex-shrink: 100000;
233 display: flex;
234 flex-direction: column;
235 overflow-x: hidden;
236 width: 100%;
237 &.collapse {
238 #inactive_columns {
239 display: none;
240 }
241 flex-shrink: 0;
242 min-height: 64px;
243 }
244 }
245 .column {
246 display: flex;
247 list-style: none;
248 flex-direction: column;
249 flex: 1;
250 }
251 .rrow {
252 display: flex;
253 flex-grow: 1;
254 min-height: 24px;
255 align-items: center;
256 max-width: 400px;
257 list-style: none;
258 min-width: 140px;
259 margin: var(--column-drop-container--margin, 5px 10px 0px 0px);
260 }
261 .rrow > div {
262 display: flex;
263 min-height: 24px;
264 flex-direction: column;
265 justify-content: flex-end;
266 }
267 #top_panel > .rrow > * {
268 width: 100%;
269 padding: 12px 0px 12px 0px;
270 margin: -12px 0px -12px 0px;
271 }
272 .rrow #psp_row {
273 white-space: nowrap;
274 }
275 #sort perspective-row {
276 --sort_order-display: inline;
277 --sort_order-padding: 0 0 0 4px;
278 &[sort-order="asc"] {
279 --row-sort-order--before: var(--sort-order-asc--before, "\2191");
280 }
281 &[sort-order="desc"] {
282 --row-sort-order--before: var(--sort-order-desc--before, "\2193");
283 }
284 &[sort-order="none"] {
285 --row-sort-order--before: var(--sort-order-none--before, "-");
286 }
287 &[sort-order="asc abs"] {
288 --row-sort-order--before: var(
289 --sort-order-asc-abs--before,
290 "\21E7"
291 );
292 }
293 &[sort-order="desc abs"] {
294 --row-sort-order--before: var(
295 --sort-order-desc-abs--before,
296 "\21E9"
297 );
298 }
299 &[sort-order="col asc"] {
300 --row-sort-order--before: var(
301 --sort-order-col-asc--before,
302 "\2192"
303 );
304 }
305 &[sort-order="col desc"] {
306 --row-sort-order--before: var(
307 --sort-order-col-desc--before,
308 "\2190"
309 );
310 }
311 &[sort-order="col asc abs"] {
312 --row-sort-order--before: var(
313 --sort-order-col-asc-abs--before,
314 "\21E8"
315 );
316 }
317 &[sort-order="col desc abs"] {
318 --row-sort-order--before: var(
319 --sort-order-col-desc-abs--before,
320 "\21E6"
321 );
322 }
323 }
324 #top_panel perspective-row {
325 padding: 0px 10px 0px 0px;
326 }
327 #top_panel perspective-row::after {
328 content: ",";
329 }
330 #top_panel perspective-row:last-child::after {
331 display: none;
332 content: "" !important;
333 }
334
335 label {
336 white-space: nowrap;
337 display: inline-block;
338 vertical-align: middle;
339 margin-bottom: 0px;
340 }
341 #drop_target {
342 position: absolute;
343 left: 0px;
344 top: 0px;
345 right: 0px;
346 bottom: 0px;
347 padding: 30px;
348 }
349 #drop_target_inner {
350 width: 100%;
351 height: 100%;
352 display: flex;
353 align-items: center;
354 justify-content: center;
355 }
356 #drop_target_inner h3 {
357 font-weight: 300;
358 }
359 #config_button {
360 position: absolute;
361 top: 0;
362 left: 0;
363 opacity: 0;
364 display: flex;
365 align-items: center;
366 justify-content: center;
367 transition: opacity 0.2s ease-out;
368 &:hover {
369 color: var(--active--color, inherit);
370 }
371 }
372 .button {
373 cursor: pointer;
374 font-size: 16px;
375 font-weight: normal;
376 }
377 ul {
378 padding: 0px;
379 margin: 0;
380 font-size: 12px;
381 }
382 select::-ms-expand {
383 display: none;
384 }
385 select {
386 -webkit-appearance: none;
387 -moz-appearance: none;
388 -ms-appearance: none;
389 appearance: none;
390 background: var(
391 --select--background,
392 url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNC45IDEwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0LjkgMTA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojQUFBQUFBO30KPC9zdHlsZT4KPHRpdGxlPmFycm93czwvdGl0bGU+Cjxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iMS40LDQuNyAyLjUsMy4yIDMuNSw0LjcgIi8+Cjxwb2x5Z29uIGNsYXNzPSJzdDAiIHBvaW50cz0iMy41LDUuMyAyLjUsNi44IDEuNCw1LjMgIi8+Cjwvc3ZnPg==)
393 no-repeat 95% 50%
394 );
395 background-color: #fff;
396 color: inherit;
397 border-radius: 5px;
398 height: 24px;
399 padding: var(--select--padding, 0px 0px 0px 6px);
400 font-size: 12px;
401 font-family: inherit;
402 }
403 input {
404 padding: 0 10px 0 10px;
405 }
406 .centered {
407 display: flex;
408 align-items: center;
409 justify-content: center;
410 }
411 #top_panel {
412 display: flex;
413 flex-wrap: wrap;
414 justify-content: flex-start;
415 padding: var(--top_panel--padding, 5px 0px 10px 0px);
416 max-width: 1000px;
417 z-index: 1;
418 perspective-row {
419 margin-bottom: -1px;
420 display: var(--top-panel-row--display, inline-block);
421 --psp_row-display: inline-block;
422 }
423 }
424 #side_panel {
425 position: relative;
426 flex: 0 0 auto;
427 padding: var(--side_panel--padding, 10px 10px 0px 11px);
428 }
429 #side_panel > div {
430 display: flex;
431 }
432 #vis_selector_container {
433 min-height: 29px;
434 margin-left: var(--column_selector--width, 20px);
435 overflow: hidden;
436 }
437 #vis_selector {
438 flex-grow: 1;
439 }
440 #transpose_button {
441 cursor: pointer;
442 min-width: 5px;
443 max-width: 5px;
444 flex-grow: 0;
445 color: #999;
446 font-family: Arial;
447 font-size: 12px;
448 &:hover {
449 color: var(--active--color, inherit);
450 }
451 }
452
453 #resize_bar {
454 position: absolute;
455 top: 0;
456 right: 0;
457 bottom: 0;
458 width: 8px;
459 cursor: col-resize;
460 }
461
462 ::-webkit-scrollbar {
463 width: 8px;
464 height: 8px;
465 }
466
467 :hover::-webkit-scrollbar-thumb {
468 background-color: rgba(0, 0, 0, 0.3);
469 }
470
471 ::-webkit-scrollbar-thumb {
472 border-radius: 4px;
473 background-color: rgba(0, 0, 0, 0);
474 }
475
476 ::-webkit-scrollbar-corner {
477 background-color: rgba(0, 0, 0, 0);
478 }
479}