.explore { flex: 1 1 auto; &-container { padding: $dashboard-padding; } &-wrapper { display: flex; > .explore-split { width: 50%; } } // Push split button a bit .explore-first-button { margin-left: 15px; } .explore-panel { margin-top: $panel-margin; } .explore-panel__body { padding: $panel-padding; } .explore-panel__header { padding: $panel-padding; padding-top: 5px; padding-bottom: 0; display: flex; cursor: pointer; margin-bottom: 5px; transition: all 0.1s linear; } .explore-panel__header-label { font-weight: 500; margin-right: $panel-margin; font-size: $font-size-h6; box-shadow: $text-shadow-faint; } .explore-panel__header-buttons { margin-right: $panel-margin; font-size: $font-size-lg; line-height: $font-size-h6; } // Make sure wrap buttons around on small screens .navbar { flex-wrap: wrap; height: auto; } .navbar-page-btn { margin-right: 1rem; // Explore icon in header .fa { font-size: 100%; opacity: 0.75; margin-right: 0.5em; } } // Toggle mode .navbar-button.active { color: $btn-active-text-color; background-color: $btn-active-bg; } .navbar-button--no-icon { line-height: 18px; } .result-options { margin: 2 * $panel-margin 0; } .time-series-disclaimer { width: 300px; margin: $panel-margin auto; padding: 10px 0; border-radius: $border-radius; text-align: center; background-color: $panel-bg; .disclaimer-icon { color: $yellow; margin-right: $panel-margin/2; } .show-all-time-series { cursor: pointer; color: $external-link-color; } } .navbar .elapsed-time { position: absolute; left: 0; right: 0; top: 3.5rem; text-align: center; font-size: 0.8rem; } .graph-legend { flex-wrap: wrap; } .explore-panel__loader { height: 2px; position: relative; overflow: hidden; background: none; margin: $panel-margin / 2; transition: background-color 1s ease; } .explore-panel__loader--active { background: $text-color-faint; } .explore-panel__loader--active:after { content: ' '; display: block; width: 25%; top: 0; top: -50%; height: 250%; position: absolute; animation: loader 2s cubic-bezier(0.17, 0.67, 0.83, 0.67); animation-iteration-count: 100; background: $blue; } @keyframes loader { from { left: -25%; } to { left: 100%; } } .datasource-picker { min-width: 200px; } .timepicker { display: flex; &-rangestring { margin-left: 0.5em; } } .run-icon { margin-left: 0.25em; transform: rotate(90deg); } .relative { position: relative; } .link { text-decoration: underline; } } .explore + .explore { border-left: 1px dotted $table-border; } .query-row { display: flex; position: relative; & + & { margin-top: 0.5rem; } } .query-row-tools { white-space: nowrap; } .query-row-status { position: absolute; top: 0; right: 90px; z-index: 1015; display: flex; flex-direction: column; justify-content: center; height: 34px; } .query-row-field { margin-right: 3px; width: 100%; } .query-transactions { display: table; } .query-transaction { display: table-row; color: $text-color-faint; line-height: 1.44; } .query-transaction--loading { animation: query-loading-color-change 1s alternate 100; } @keyframes query-loading-color-change { from { color: $text-color-faint; } to { color: $blue; } } .query-transaction__type, .query-transaction__duration { display: table-cell; font-size: $font-size-xs; text-align: right; padding-right: 0.25em; } // Prometheus-specifics, to be extracted to datasource soon .explore { .prom-query-field { display: flex; } .prom-query-field-wrapper { width: 100%; } .prom-query-field-info { margin: 0.25em 0.5em 0.5em; display: flex; details { margin-left: 1em; } } } // ReactTable basic overrides (does not include pivot/groups/filters) // When integrating ReactTable as new panel plugin, move to _panel_table.scss .ReactTable { border: none; } .ReactTable .rt-table { // Allow some space for the no-data text min-height: 90px; } .ReactTable .rt-thead.-header { box-shadow: none; background: $list-item-bg; border-top: 2px solid $body-bg; border-bottom: 2px solid $body-bg; height: 2em; } .ReactTable .rt-thead.-header .rt-th { text-align: left; color: $blue; font-weight: 500; } .ReactTable .rt-thead .rt-td, .ReactTable .rt-thead .rt-th { padding: 0.45em 0 0.45em 1.1em; border-right: none; box-shadow: none; } .ReactTable .rt-tbody .rt-td { padding: 0.45em 0 0.45em 1.1em; border-bottom: 2px solid $body-bg; border-right: 2px solid $body-bg; } .ReactTable .rt-tbody .rt-td:last-child { border-right: none; } .ReactTable .-pagination { border-top: none; box-shadow: none; margin-top: $panel-margin; } .ReactTable .-pagination .-btn { color: $blue; background: $list-item-bg; } .ReactTable .-pagination input, .ReactTable .-pagination select { color: $input-color; background-color: $input-bg; } .ReactTable .-loading { background: $input-bg; } .ReactTable .-loading.-active { opacity: 0.8; } .ReactTable .-loading > div { color: $input-color; } .ReactTable .rt-tr .rt-td:last-child { text-align: right; } .ReactTable .rt-noData { top: 60px; z-index: inherit; } // React-component cascade fix: show "loading" even though item can expand .rc-cascader-menu-item-loading:after { position: absolute; right: 12px; content: 'loading'; color: #767980; font-style: italic; } // TODO Experimental .cheat-sheet-item { margin: 2*$panel-margin 0; width: 50%; } .cheat-sheet-item__title { font-size: $font-size-h3; } .cheat-sheet-item__expression { margin: $panel-margin/2 0; cursor: pointer; }