// @flow import { observer } from "mobx-react"; import { CodeIcon } from "outline-icons"; import * as React from "react"; import { useTranslation, Trans } from "react-i18next"; import APITokenNew from "scenes/APITokenNew"; import { Action } from "components/Actions"; import Button from "components/Button"; import Heading from "components/Heading"; import HelpText from "components/HelpText"; import Modal from "components/Modal"; import PaginatedList from "components/PaginatedList"; import Scene from "components/Scene"; import Subheading from "components/Subheading"; import TokenListItem from "./components/TokenListItem"; import useBoolean from "hooks/useBoolean"; import useCurrentTeam from "hooks/useCurrentTeam"; import useStores from "hooks/useStores"; function Tokens() { const team = useCurrentTeam(); const { t } = useTranslation(); const { apiKeys, policies } = useStores(); const [newModalOpen, handleNewModalOpen, handleNewModalClose] = useBoolean(); const can = policies.abilities(team.id); return ( } actions={ <> {can.createApiKey && (