diff --git a/server/models/Event.ts b/server/models/Event.ts index d78f816a21..e849b4ac3e 100644 --- a/server/models/Event.ts +++ b/server/models/Event.ts @@ -18,7 +18,7 @@ import { Length, } from "sequelize-typescript"; import { globalEventQueue } from "../queues"; -import { APIContext, Event as TEvent } from "../types"; +import { APIContext } from "../types"; import Collection from "./Collection"; import Document from "./Document"; import Team from "./Team"; @@ -172,80 +172,6 @@ class Event extends IdModel< options ); } - - static ACTIVITY_EVENTS: TEvent["name"][] = [ - "collections.create", - "collections.delete", - "collections.move", - "collections.permission_changed", - "collections.add_user", - "collections.remove_user", - "documents.publish", - "documents.unpublish", - "documents.archive", - "documents.unarchive", - "documents.move", - "documents.delete", - "documents.permanent_delete", - "documents.restore", - "documents.add_user", - "documents.remove_user", - "revisions.create", - "users.create", - "users.demote", - "userMemberships.update", - ]; - - static AUDIT_EVENTS: TEvent["name"][] = [ - "api_keys.create", - "api_keys.delete", - "authenticationProviders.update", - "collections.create", - "collections.update", - "collections.permission_changed", - "collections.move", - "collections.add_user", - "collections.remove_user", - "collections.add_group", - "collections.remove_group", - "collections.delete", - "documents.create", - "documents.publish", - "documents.update", - "documents.archive", - "documents.unarchive", - "documents.move", - "documents.delete", - "documents.permanent_delete", - "documents.restore", - "documents.add_user", - "documents.remove_user", - "groups.create", - "groups.update", - "groups.delete", - "pins.create", - "pins.update", - "pins.delete", - "revisions.create", - "shares.create", - "shares.update", - "shares.revoke", - "teams.update", - "users.create", - "users.update", - "users.signin", - "users.signout", - "users.promote", - "users.demote", - "users.invite", - "users.suspend", - "users.activate", - "users.delete", - "fileOperations.create", - "fileOperations.delete", - "webhookSubscriptions.create", - "webhookSubscriptions.delete", - ]; } export default Event; diff --git a/server/routes/api/events/events.ts b/server/routes/api/events/events.ts index 1a898534b7..f8591a73e4 100644 --- a/server/routes/api/events/events.ts +++ b/server/routes/api/events/events.ts @@ -1,5 +1,6 @@ import Router from "koa-router"; import { Op, WhereOptions } from "sequelize"; +import { EventHelper } from "@shared/utils/EventHelper"; import auth from "@server/middlewares/authentication"; import validate from "@server/middlewares/validate"; import { Event, User, Collection } from "@server/models"; @@ -29,7 +30,7 @@ router.post( } = ctx.input.body; let where: WhereOptions = { - name: Event.ACTIVITY_EVENTS, + name: EventHelper.ACTIVITY_EVENTS, teamId: user.teamId, }; @@ -43,7 +44,7 @@ router.post( if (auditLog) { authorize(user, "audit", user.team); - where.name = Event.AUDIT_EVENTS; + where.name = EventHelper.AUDIT_EVENTS; } if (name && (where.name as string[]).includes(name)) { diff --git a/shared/utils/EventHelper.ts b/shared/utils/EventHelper.ts new file mode 100644 index 0000000000..0bc05e15dd --- /dev/null +++ b/shared/utils/EventHelper.ts @@ -0,0 +1,75 @@ +export class EventHelper { + public static readonly ACTIVITY_EVENTS = [ + "collections.create", + "collections.delete", + "collections.move", + "collections.permission_changed", + "collections.add_user", + "collections.remove_user", + "documents.publish", + "documents.unpublish", + "documents.archive", + "documents.unarchive", + "documents.move", + "documents.delete", + "documents.permanent_delete", + "documents.restore", + "documents.add_user", + "documents.remove_user", + "revisions.create", + "users.create", + "users.demote", + "userMemberships.update", + ]; + + public static readonly AUDIT_EVENTS = [ + "api_keys.create", + "api_keys.delete", + "authenticationProviders.update", + "collections.create", + "collections.update", + "collections.permission_changed", + "collections.move", + "collections.add_user", + "collections.remove_user", + "collections.add_group", + "collections.remove_group", + "collections.delete", + "documents.create", + "documents.publish", + "documents.update", + "documents.archive", + "documents.unarchive", + "documents.move", + "documents.delete", + "documents.permanent_delete", + "documents.restore", + "documents.add_user", + "documents.remove_user", + "groups.create", + "groups.update", + "groups.delete", + "pins.create", + "pins.update", + "pins.delete", + "revisions.create", + "shares.create", + "shares.update", + "shares.revoke", + "teams.update", + "users.create", + "users.update", + "users.signin", + "users.signout", + "users.promote", + "users.demote", + "users.invite", + "users.suspend", + "users.activate", + "users.delete", + "fileOperations.create", + "fileOperations.delete", + "webhookSubscriptions.create", + "webhookSubscriptions.delete", + ]; +}