UNPKG

@finos/perspective-viewer

Version:

The `<perspective-viewer>` Custom Element, frontend for Perspective.js

220 lines (185 loc) 5.57 kB
/****************************************************************************** * * Copyright (c) 2017, the Perspective Authors. * * This file is part of the Perspective library, distributed under the terms * of the Apache License 2.0. The full license can be found in the LICENSE * file. * */ :host { #status_bar { overflow: hidden; display: flex; align-items: center; .section { box-shadow: 8px 0px 0px -7px var(--inactive--color, #ccc); display: flex; align-items: center; &:nth-child(2) { flex: 1; } &:nth-child(3) { span:first-child:not(:last-child) { margin-right: 5px; } span:last-child:not(:first-child) { margin-left: 5px; } } } #menu-bar { overflow: hidden; .button { height: 36px; } } #plugin-settings { margin-left: auto; } #counter-arrow::before { content: var(--status-bar-counter--content, "arrow_back"); } span { font-size: 12px; margin: 0px 10px; user-select: none; height: 100%; line-height: 36px; &:before { text-transform: none; margin-right: 4px; font-family: var(--button--font-family, inherit); font-display: block; vertical-align: bottom; } &:hover { color: inherit; } } span#rows { margin-left: 2px; } span.icon { font-family: var(--button--font-family, inherit); font-display: block; height: 100%; line-height: 36px; margin: 0; } span#status { &:before { color: #ccc; content: var(--status-icon--content, "\2B24"); } &.connected, &.error, &.initializing { opacity: 1; } &.connected:before { color: rgb(51, 159, 77); } &.initializing:before { color: rgb(223, 198, 57); } &.error:before { color: rgb(252, 64, 52); } } span#export { &:before { content: var(--export-button-icon--content, "\2193"); } } span#lock { &:before { content: "lock_open"; } } span#reset { &:before { content: var(--reset-button-icon--content, "\27F3"); } } span#copy { &:before { content: var(--copy-button-icon--content, "\1F4CB"); } } span#theme { &:before { content: var(--theme-button-icon--content, "T"); } } span.button { margin: 0px; padding: 0 5px 0px 10px; transition: background-color 0.2s; color: var(--inactive--color, #ccc); & > span, & > .dropdown-width-container { pointer-events: none; overflow: hidden; display: none; font-weight: 300; } &:before { font-size: 14px; } &:hover, &.modal-target { min-width: 75px; color: inherit; cursor: pointer; background-color: rgba(0, 0, 0, 0.05); transition: none; & > span { display: contents; } & > .dropdown-width-container { display: inline; pointer-events: all; & > select { cursor: pointer; margin-left: -28px; padding-left: 28px; width: calc(100% + 28px); height: 36px; } } } } } } // Status bar status icon animations :host #status_bar.updating span#status { animation-name: status-bar-updating; animation-duration: var(--status-icon-updating--animation-duration, 1s); animation-iteration-count: infinite; } :host #status_bar span#status { animation-name: status-bar; animation-duration: var(--status-icon--animation-duration, 0.5s); animation-iteration-count: 1; } @keyframes status-bar-updating { 0% { filter: var(--status-icon-updating-keyframes-start--filter, opacity(1)); transform: var(--status-icon-updating-keyframes-start--transform, none); } 100% { filter: var(--status-icon-updating-keyframes-end--filter, opacity(0.2)); transform: var(--status-icon-updating-keyframes-end--transform, none); } } @keyframes status-bar { 0% { filter: var(--status-icon-keyframes-start--filter, saturate(4)); transform: var(--status-icon-keyframes-start--transform, none); } 100% { filter: var(--status-icon-keyframes-end--filter, saturate(1)); transform: var(--status-icon-keyframes-end--transform, none); } }