Files
outline/server/policies/webhookSubscription.ts
2024-04-06 06:32:15 -07:00

17 lines
462 B
TypeScript

import { User, Team, WebhookSubscription } from "@server/models";
import { allow } from "./cancan";
import { and, isTeamAdmin, isTeamMutable } from "./utils";
allow(User, "createWebhookSubscription", Team, (actor, team) =>
and(
//
isTeamAdmin(actor, team),
isTeamMutable(actor),
!actor.isSuspended
)
);
allow(User, "listWebhookSubscription", Team, isTeamAdmin);
allow(User, ["read", "update", "delete"], WebhookSubscription, isTeamAdmin);