import React, { Component } from "react"; import PropTypes from "prop-types"; import { Link } from "react-router"; import permissionUtils from "utilities/permissions"; import Button from "components/buttons/Button"; import FleetAce from "components/FleetAce"; import queryInterface from "interfaces/query"; import userInterface from "interfaces/user"; import SecondarySidePanelContainer from "components/side_panels/SecondarySidePanelContainer"; const baseClass = "query-details-side-panel"; class QueryDetailsSidePanel extends Component { static propTypes = { onEditQuery: PropTypes.func.isRequired, query: queryInterface.isRequired, currentUser: userInterface, }; handleEditQueryClick = (evt) => { evt.preventDefault(); const { onEditQuery, query } = this.props; return onEditQuery(query); }; renderPacks = () => { const { query } = this.props; const { packs } = query; if (!packs || (packs && !packs.length)) { return (
There are no packs associated with this query.
); } return (Query
{name}
{!permissionUtils.isOnlyObserver(currentUser) && ( <>SQL
Description
{description || <>No description available.>}
{!permissionUtils.isOnlyObserver(currentUser) && ( <>Packs
{renderPacks()} > )}