From 5e4ebdecb2776ae7ff1d499a864774c028e1e470 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20de=20Juvigny?= Date: Tue, 20 Dec 2022 14:55:38 +0100 Subject: [PATCH] Emit events for content type crud actions --- packages/core/admin/ee/server/services/audit-logs.js | 6 ++++++ .../content-type-builder/server/services/components.js | 9 +++++++++ .../server/services/content-types.js | 7 +++++++ 3 files changed, 22 insertions(+) diff --git a/packages/core/admin/ee/server/services/audit-logs.js b/packages/core/admin/ee/server/services/audit-logs.js index e0e20c361b..d2911f5f44 100644 --- a/packages/core/admin/ee/server/services/audit-logs.js +++ b/packages/core/admin/ee/server/services/audit-logs.js @@ -13,6 +13,12 @@ const defaultEvents = [ 'user.update', 'user.delete', 'admin.auth.success', + 'content-type.create', + 'content-type.update', + 'content-type.delete', + 'component.create', + 'component.update', + 'component.delete', ]; const getEventMap = (defaultEvents) => { diff --git a/packages/core/content-type-builder/server/services/components.js b/packages/core/content-type-builder/server/services/components.js index 6a24a39de7..d717e5b097 100644 --- a/packages/core/content-type-builder/server/services/components.js +++ b/packages/core/content-type-builder/server/services/components.js @@ -52,6 +52,9 @@ const createComponent = async ({ component, components = [] }) => { }); await builder.writeFiles(); + + strapi.eventHub.emit('component.create', { component: newComponent }); + return newComponent; }; @@ -81,6 +84,9 @@ const editComponent = async (uid, { component, components = [] }) => { }); await builder.writeFiles(); + + strapi.eventHub.emit('component.update', { component: updatedComponent }); + return updatedComponent; }; @@ -90,6 +96,9 @@ const deleteComponent = async (uid) => { const deletedComponent = builder.deleteComponent(uid); await builder.writeFiles(); + + strapi.eventHub.emit('component.delete', { component: deletedComponent }); + return deletedComponent; }; diff --git a/packages/core/content-type-builder/server/services/content-types.js b/packages/core/content-type-builder/server/services/content-types.js index 2ee7abf77e..45e31812fd 100644 --- a/packages/core/content-type-builder/server/services/content-types.js +++ b/packages/core/content-type-builder/server/services/content-types.js @@ -120,6 +120,8 @@ const createContentType = async ({ contentType, components = [] }, options = {}) await builder.writeFiles(); } + strapi.eventHub.emit('content-type.create', { contentType: newContentType }); + return newContentType; }; @@ -208,6 +210,9 @@ const editContentType = async (uid, { contentType, components = [] }) => { } await builder.writeFiles(); + + strapi.eventHub.emit('content-type.update', { contentType: updatedContentType }); + return updatedContentType; }; @@ -252,6 +257,8 @@ const deleteContentType = async (uid, defaultBuilder = undefined) => { } } + strapi.eventHub.emit('content-type.delete', { contentType }); + return contentType; };