import React from 'react' import { Button, Tooltip, Col, Popconfirm } from 'antd' import { ButtonProps } from 'antd/lib/button/button' import { IProject } from 'containers/Projects/types' import { IDashboard } from '../types' import ModulePermission from 'containers/Account/components/checkModulePermission' import ShareDownloadPermission from 'containers/Account/components/checkShareDownloadPermission' const utilStyles = require('assets/less/util.less') interface IToolbarProps { currentProject: IProject currentDashboard: IDashboard showAddDashboardItem: () => void onOpenSharePanel: () => void onOpenLinkageConfig: () => void onOpenGlobalControlConfig: () => void onDownloadDashboard: () => void } export class Toolbar extends React.PureComponent { public render () { const { currentDashboard } = this.props if (!currentDashboard) { return null } const { currentProject, showAddDashboardItem, onOpenSharePanel, onOpenLinkageConfig, onOpenGlobalControlConfig, onDownloadDashboard } = this.props const AddButton = ModulePermission(currentProject, 'viz', true)(Button) const ShareButton = ShareDownloadPermission(currentProject, 'share')(Button) const DownloadButton = ShareDownloadPermission(currentProject, 'download')(Button) const LinkageButton = ModulePermission(currentProject, 'viz', false)(Button) const GlobalFilterButton = ModulePermission(currentProject, 'viz', false)(Button) let addButton let shareButton let downloadButton let linkageButton let globalFilterButton addButton = ( ) shareButton = ( ) downloadButton = ( ) linkageButton = ( ) globalFilterButton = ( ) return ( {addButton} {shareButton} {downloadButton} {linkageButton} {globalFilterButton} ) } } export default Toolbar