import { observer } from "mobx-react"; import { WebhooksIcon } from "outline-icons"; import * as React from "react"; import { useTranslation, Trans } from "react-i18next"; import WebhookSubscription from "~/models/WebhookSubscription"; import { Action } from "~/components/Actions"; import Button from "~/components/Button"; import Heading from "~/components/Heading"; import Modal from "~/components/Modal"; import PaginatedList from "~/components/PaginatedList"; import Scene from "~/components/Scene"; import Text from "~/components/Text"; import env from "~/env"; import useBoolean from "~/hooks/useBoolean"; import useCurrentTeam from "~/hooks/useCurrentTeam"; import usePolicy from "~/hooks/usePolicy"; import useStores from "~/hooks/useStores"; import WebhookSubscriptionListItem from "./components/WebhookSubscriptionListItem"; import WebhookSubscriptionNew from "./components/WebhookSubscriptionNew"; function Webhooks() { const team = useCurrentTeam(); const { t } = useTranslation(); const { webhookSubscriptions } = useStores(); const [newModalOpen, handleNewModalOpen, handleNewModalClose] = useBoolean(); const can = usePolicy(team); const appName = env.APP_NAME; return ( } actions={ <> {can.createWebhookSubscription && (