
webapp.src.components.QueryHeader.jsx Maven / Gradle / Ivy
/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import React from "react";
import {
getProgressBarPercentage,
getProgressBarTitle,
getQueryStateColor,
isQueryEnded
} from "../utils";
export class QueryHeader extends React.Component {
constructor(props) {
super(props);
}
renderProgressBar() {
const query = this.props.query;
const progressBarStyle = {width: getProgressBarPercentage(query) + "%", backgroundColor: getQueryStateColor(query)};
if (isQueryEnded(query)) {
return (
{getProgressBarTitle(query, false)}
);
}
return (
{name};
}
return {name};
}
render() {
const query = this.props.query;
return (
{this.renderTab("query.html", "Overview")}
{this.renderTab("plan.html", "Live Plan")}
{this.renderTab("stage.html", "Stage Performance")}
{this.renderTab("timeline.html", "Splits")}
JSON
{this.renderProgressBar()}
);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy