import React from "react"; import PropTypes from "prop-types"; import Dropdown from "antd/lib/dropdown"; import Menu from "antd/lib/menu"; import Button from "antd/lib/button"; import { clientConfig } from "@/services/auth"; import PlusCircleFilledIcon from "@ant-design/icons/PlusCircleFilled"; import ShareAltOutlinedIcon from "@ant-design/icons/ShareAltOutlined"; import FileOutlinedIcon from "@ant-design/icons/FileOutlined"; import FileExcelOutlinedIcon from "@ant-design/icons/FileExcelOutlined"; import EllipsisOutlinedIcon from "@ant-design/icons/EllipsisOutlined"; import QueryResultsLink from "./QueryResultsLink"; export default function QueryControlDropdown(props) { const menu = ( {!props.query.isNew() && (!props.query.is_draft || !props.query.is_archived) && ( props.openAddToDashboardForm(props.selectedTab)}> Add to Dashboard )} {!clientConfig.disablePublicUrls && !props.query.isNew() && ( props.showEmbedDialog(props.query, props.selectedTab)} data-test="ShowEmbedDialogButton"> Embed Elsewhere )} Download as CSV File Download as TSV File Download as Excel File ); return ( ); } QueryControlDropdown.propTypes = { query: PropTypes.object.isRequired, // eslint-disable-line react/forbid-prop-types queryResult: PropTypes.object, // eslint-disable-line react/forbid-prop-types queryExecuting: PropTypes.bool.isRequired, showEmbedDialog: PropTypes.func.isRequired, embed: PropTypes.bool, apiKey: PropTypes.string, selectedTab: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), openAddToDashboardForm: PropTypes.func.isRequired, }; QueryControlDropdown.defaultProps = { queryResult: {}, embed: false, apiKey: "", selectedTab: "", };