// @flow import { observable } from "mobx"; import { inject, observer } from "mobx-react"; import * as React from "react"; import { withTranslation, type TFunction } from "react-i18next"; import { withRouter, type RouterHistory } from "react-router-dom"; import PoliciesStore from "stores/PoliciesStore"; import UiStore from "stores/UiStore"; import Group from "models/Group"; import GroupDelete from "scenes/GroupDelete"; import GroupEdit from "scenes/GroupEdit"; import { DropdownMenu } from "components/DropdownMenu"; import DropdownMenuItems from "components/DropdownMenu/DropdownMenuItems"; import Modal from "components/Modal"; type Props = { ui: UiStore, policies: PoliciesStore, group: Group, history: RouterHistory, onMembers: () => void, onOpen?: () => void, onClose?: () => void, t: TFunction, }; @observer class GroupMenu extends React.Component { @observable editModalOpen: boolean = false; @observable deleteModalOpen: boolean = false; onEdit = (ev: SyntheticEvent<>) => { ev.preventDefault(); this.editModalOpen = true; }; onDelete = (ev: SyntheticEvent<>) => { ev.preventDefault(); this.deleteModalOpen = true; }; handleEditModalClose = () => { this.editModalOpen = false; }; handleDeleteModalClose = () => { this.deleteModalOpen = false; }; render() { const { policies, group, onOpen, onClose, t } = this.props; const can = policies.abilities(group.id); return ( <> ); } } export default withTranslation()( inject("policies")(withRouter(GroupMenu)) );