prometheus/web/ui/react-app/src/App.css
Julius Volz bca6e90ea6
Integrate beginning of React UI (#5694)
* Initial commit from Create React App

Signed-off-by: Julius Volz <[email protected]>

* Initial Prometheus expression browser code

Signed-off-by: Julius Volz <[email protected]>

* Grpahing, try out echarts

Signed-off-by: Julius Volz <[email protected]>

* Switch to flot

Signed-off-by: Julius Volz <[email protected]>

* Add metrics fetching and stuff

Signed-off-by: Julius Volz <[email protected]>

* Autosuggest and graph improvements

Signed-off-by: Julius Volz <[email protected]>

* Start implementing graph controls, add loading spinner

Signed-off-by: Julius Volz <[email protected]>

* So many new features and fixes

Signed-off-by: Julius Volz <[email protected]>

* Fixed and built more features

Signed-off-by: Julius Volz <[email protected]>

* Make datetimepicker clear work

Signed-off-by: Julius Volz <[email protected]>

* Don't abort when executing empty expression

Signed-off-by: Julius Volz <[email protected]>

* Remove TabPaneAlert

Signed-off-by: Julius Volz <[email protected]>

* Split components into separate files

Signed-off-by: Julius Volz <[email protected]>

* Add table time input

Signed-off-by: Julius Volz <[email protected]>

* Move first files to TypeScript!

Signed-off-by: Julius Volz <[email protected]>

* More TypeScript conversions

Signed-off-by: Julius Volz <[email protected]>

* More TS conversions

Signed-off-by: Julius Volz <[email protected]>

* More TS conversions

Signed-off-by: Julius Volz <[email protected]>

* More TS conversions

Signed-off-by: Julius Volz <[email protected]>

* More TS conversions

Signed-off-by: Julius Volz <[email protected]>

* More TS fixes

Signed-off-by: Julius Volz <[email protected]>

* Convert Graph to TS

Signed-off-by: Julius Volz <[email protected]>

* Changes

Signed-off-by: Julius Volz <[email protected]>

* Resize detector, start building legend, axis font colors

Signed-off-by: Julius Volz <[email protected]>

* Make graph legend work

Signed-off-by: Julius Volz <[email protected]>

* Add URL params support and much more

Signed-off-by: Julius Volz <[email protected]>

* Put panel state into panel list, write URL options

Signed-off-by: Julius Volz <[email protected]>

* Change order of Graph and Table tabs

Signed-off-by: Julius Volz <[email protected]>

* Generalize time input naming more

Signed-off-by: Julius Volz <[email protected]>

* Work on history functionality

Signed-off-by: Julius Volz <[email protected]>

* npm updates

Signed-off-by: Julius Volz <[email protected]>

* Move loading indicator into "Execute" button

Signed-off-by: Julius Volz <[email protected]>

* Fix typo

Signed-off-by: Julius Volz <[email protected]>

* Revert "Move loading indicator into "Execute" button"

This reverts commit ce7daee1f1af35da6c0d8b5517272839285ccfec.

Signed-off-by: Julius Volz <[email protected]>

* Improve error message when failing to fetch server time

Signed-off-by: Julius Volz <[email protected]>

* Move all code to Prometheus repo target dir

Signed-off-by: Julius Volz <[email protected]>

* Add react-app Makefile step and check in generated assets

Signed-off-by: Julius Volz <[email protected]>

* Add preliminary npm packages notice to NOTICE file

Signed-off-by: Julius Volz <[email protected]>

* Update React app's favicon and metadata

Signed-off-by: Julius Volz <[email protected]>

* Remove RP server refs, cleanups

Signed-off-by: Julius Volz <[email protected]>

* Use CircleCI image that includes NodeJS

Signed-off-by: Julius Volz <[email protected]>

* Add some missing React output assets

Signed-off-by: Julius Volz <[email protected]>

* Preserve CRLF in generated React files

Signed-off-by: Julius Volz <[email protected]>

* Switch from npm to yarn for React UI

Signed-off-by: Julius Volz <[email protected]>

* Save npm licenses and include them in release tarball

Signed-off-by: Julius Volz <[email protected]>

* Install npm on Travis

Signed-off-by: Julius Volz <[email protected]>

* Remove npm license tarball from source

Signed-off-by: Julius Volz <[email protected]>

* Remove React graph bundle from source

Signed-off-by: Julius Volz <[email protected]>

* Don't check in any compiled web assets

Signed-off-by: Julius Volz <[email protected]>

* Update README.md with node/yarn/React UI info

Signed-off-by: Julius Volz <[email protected]>

* Fix asset build step on CircleCI promu crossbuild

Signed-off-by: Julius Volz <[email protected]>

* Try to fix multi-arch go generate

Signed-off-by: Julius Volz <[email protected]>

* Remove check_assets from Travis CI build

Signed-off-by: Julius Volz <[email protected]>

* Prevent rebuilding of unchanged React app parts

Signed-off-by: Julius Volz <[email protected]>

* Fix npm license tarball path for promu

Signed-off-by: Julius Volz <[email protected]>

* Simplify Makefile

Signed-off-by: Julius Volz <[email protected]>

* Clarify build instructions in README.md

Signed-off-by: Julius Volz <[email protected]>

* Make minimal JS test pass

Signed-off-by: Julius Volz <[email protected]>

* Integrate React app tests into Makefile

Signed-off-by: Julius Volz <[email protected]>

* Separate react-app-tests target, but run it from CI

Signed-off-by: Julius Volz <[email protected]>

* Fix working directory for React app tests

Signed-off-by: Julius Volz <[email protected]>

* Remove local modifications to Makefile.common

This means that CircleCI will not run the React app tests, but at least
Travis still will...

Signed-off-by: Julius Volz <[email protected]>

* Depend on node_modules path for npm_licenses target

Signed-off-by: Julius Volz <[email protected]>

* Simplify tarball/docker/build Makefile targets

Signed-off-by: Julius Volz <[email protected]>

* Include React tests in "test" target

Signed-off-by: Julius Volz <[email protected]>

* Remove reference to removed "check_assets" target

Signed-off-by: Julius Volz <[email protected]>

* Do initial resize of expression input field

Signed-off-by: Julius Volz <[email protected]>

* Add React app proxying to local Prometheus in dev mode

Signed-off-by: Julius Volz <[email protected]>
2019-10-17 14:38:09 +02:00

181 lines
3 KiB
CSS

body {
padding-top: 10px; /* TODO remove */
}
.panel {
margin-bottom: 20px;
}
.expression-input {
margin-bottom: 10px;
}
.expression-input textarea {
/* font-family: Menlo,Monaco,Consolas,'Courier New',monospace; */
resize: none;
}
button.execute-btn {
width: 84px;
}
.alert.alert-danger {
margin-bottom: 10px;
}
.nav-tabs .nav-link {
cursor: pointer;
}
.tab-content {
border-left: 1px solid #dee2e6;
border-right: 1px solid #dee2e6;
border-bottom: 1px solid #dee2e6;
padding: 10px;
}
.tab-content .alert {
margin-bottom: 0;
}
.data-table.table {
margin: 10px 0 2px 0;
}
.data-table > tbody > tr > td {
padding: 5px 0 5px 8px;
font-size: 0.8em;
overflow: hidden;
}
.autosuggest-dropdown {
position: absolute;
border: 1px solid #ced4da;
border-radius: .25rem;
background-color: #fff;
color: #495057;
font-size: 1rem;
z-index: 1000;
min-width: 10rem;
top: 100%;
left: 56px;
float: left;
padding: .5rem 1px .5rem 1px;
margin: -5px;
list-style: none;
}
.autosuggest-dropdown li {
width: 100%;
padding: .25rem 1.5rem;
clear: both;
white-space: nowrap;
background-color: transparent;
border: 0;
display: block;
}
.graph-controls, .table-controls {
margin-bottom: 10px;
}
.graph-controls input {
text-align: center;
}
.graph-controls .range-input input {
width: 50px;
}
.graph-controls .time-input input {
border-right: none;
}
div.time-input {
width: 240px !important;
}
.table-controls input {
text-align: center;
}
.graph-controls input.resolution-input {
width: 90px;
}
.graph-controls .time-input, .graph-controls .resolution-input, .graph-controls .stacked-input {
margin-left: 20px;
}
.graph-controls .clear-time-btn {
background: #fff;
border-left: none;
border-top: 1px solid #ced4da;
border-bottom: 1px solid #ced4da;
color: #495057;
}
.graph-legend {
margin: 15px 0 15px 25px;
font-size: 0.8em;
}
.graph-legend .legend-swatch {
padding: 5px;
height: 5px;
outline-offset: 1px;
outline: 1.5px solid #ccc;
margin: 2px 8px 2px 0;
}
.legend-metric-name {
margin-right: 1px;
}
.legend-label-name {
font-weight: bold;
}
.graph {
margin: 0 5px 0 5px;
}
.graph-chart {
height: 500px;
width: 100%;
/* This is picked up by Flot's axis label font renderer,
which ignores "color" and uses "fill" instead. */
fill: #495057;
font-size: 0.8em;
}
.graph-chart .flot-overlay {
cursor: crosshair;
}
.graph-tooltip {
background: rgba(0,0,0,.8);
color: #fff;
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
white-space: nowrap;
padding: 8px;
border-radius: 3px;
}
.graph-tooltip .labels {
font-size: 11px;
line-height: 11px;
}
.graph-tooltip .detail-swatch {
display: inline-block;
width: 10px;
height: 10px;
margin: 0 5px 0 0;
}
.add-panel-btn {
margin-bottom: 20px;
}