@webiny/api-audit-logs 5.39.0-beta.1 → 5.39.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/app.js +7 -8
- package/app/app.js.map +1 -1
- package/config.js +3 -4
- package/config.js.map +1 -1
- package/package.json +24 -24
- package/subscriptions/apw/changeRequests.js +1 -2
- package/subscriptions/apw/changeRequests.js.map +1 -1
- package/utils/compressor.js +2 -2
- package/utils/compressor.js.map +1 -1
- package/utils/getAuditConfig.d.ts +6 -3
- package/utils/getAuditConfig.js +19 -16
- package/utils/getAuditConfig.js.map +1 -1
package/app/app.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.createApp = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
7
|
var _contants = require("./contants");
|
|
10
8
|
var _compressor = require("../utils/compressor");
|
|
11
9
|
var _apiSecurity = require("@webiny/api-security");
|
|
@@ -20,16 +18,17 @@ const toDate = value => {
|
|
|
20
18
|
}
|
|
21
19
|
};
|
|
22
20
|
const decompressData = entry => {
|
|
23
|
-
|
|
24
|
-
if (!((_entry$data = entry.data) !== null && _entry$data !== void 0 && _entry$data.data)) {
|
|
21
|
+
if (!entry.data?.data) {
|
|
25
22
|
return entry;
|
|
26
23
|
}
|
|
27
|
-
return
|
|
28
|
-
|
|
24
|
+
return {
|
|
25
|
+
...entry,
|
|
26
|
+
data: {
|
|
27
|
+
...entry.data,
|
|
29
28
|
timestamp: toDate(entry.data.timestamp),
|
|
30
29
|
data: _compressor.compressor.decompress(entry.data.data)
|
|
31
|
-
}
|
|
32
|
-
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
33
32
|
};
|
|
34
33
|
const createApp = () => {
|
|
35
34
|
return {
|
package/app/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_contants","require","_compressor","_apiSecurity","toDate","value","Date","decompressData","entry","
|
|
1
|
+
{"version":3,"names":["_contants","require","_compressor","_apiSecurity","toDate","value","Date","decompressData","entry","data","timestamp","compressor","decompress","createApp","name","AUDIT_LOGS_TYPE","apiName","fields","id","fieldId","type","storageId","label","settings","onEntry","onEntryList","entries","Promise","all","map","onAnyRequest","context","action","permissions","security","getPermissions","permission","NotAuthorizedError","message","exports"],"sources":["app.ts"],"sourcesContent":["import { IAcoAppRegisterParams, SearchRecord } from \"@webiny/api-aco/types\";\nimport { AUDIT_LOGS_TYPE } from \"./contants\";\nimport { compressor } from \"~/utils/compressor\";\nimport { NotAuthorizedError } from \"@webiny/api-security\";\n\nconst toDate = (value: string | Date) => {\n if (value instanceof Date) {\n return value;\n }\n try {\n return new Date(value);\n } catch {\n return value;\n }\n};\n\nconst decompressData = (entry: SearchRecord<any>): SearchRecord<any> => {\n if (!entry.data?.data) {\n return entry;\n }\n return {\n ...entry,\n data: {\n ...entry.data,\n timestamp: toDate(entry.data.timestamp),\n data: compressor.decompress(entry.data.data)\n }\n };\n};\n\nexport const createApp = (): IAcoAppRegisterParams => {\n return {\n name: AUDIT_LOGS_TYPE,\n apiName: \"AuditLogs\",\n fields: [\n {\n id: \"id\",\n fieldId: \"id\",\n type: \"text\",\n storageId: \"text@id\",\n label: \"ID\"\n },\n {\n id: \"message\",\n fieldId: \"message\",\n type: \"text\",\n storageId: \"text@message\",\n label: \"Message\"\n },\n {\n id: \"app\",\n fieldId: \"app\",\n type: \"text\",\n storageId: \"text@app\",\n label: \"App\"\n },\n {\n id: \"entity\",\n fieldId: \"entity\",\n type: \"text\",\n storageId: \"text@entity\",\n label: \"Entity\"\n },\n {\n id: \"entityId\",\n fieldId: \"entityId\",\n type: \"text\",\n storageId: \"text@entityId\",\n label: \"Entity ID\"\n },\n {\n id: \"action\",\n fieldId: \"action\",\n type: \"text\",\n storageId: \"text@action\",\n label: \"Action\"\n },\n {\n id: \"data\",\n fieldId: \"data\",\n type: \"text\",\n storageId: \"text@data\",\n label: \"Data\"\n },\n {\n id: \"timestamp\",\n fieldId: \"timestamp\",\n type: \"datetime\",\n settings: {\n type: \"dateTimeWithoutTimezone\"\n },\n storageId: \"datetime@timestamp\",\n label: \"Timestamp\"\n },\n {\n id: \"initiator\",\n fieldId: \"initiator\",\n type: \"text\",\n storageId: \"text@initiator\",\n label: \"Initiator\"\n }\n ],\n onEntry: async entry => {\n return decompressData(entry);\n },\n onEntryList: async entries => {\n return Promise.all(\n entries.map(entry => {\n return decompressData(entry);\n })\n );\n },\n onAnyRequest: async (context, action) => {\n const permissions = await context.security.getPermissions(\"al.*\");\n for (const permission of permissions) {\n if (permission.name === \"al.*\") {\n return;\n } else if (permission.name === `al.${action}`) {\n return;\n }\n }\n\n throw new NotAuthorizedError({\n message: \"You cannot access audit logs.\"\n });\n }\n };\n};\n"],"mappings":"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"}
|
package/config.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.auditLogsApps = exports.ActionType = exports.AUDIT = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
7
|
var _getAuditObject = require("./utils/getAuditObject");
|
|
10
8
|
let ActionType = /*#__PURE__*/function (ActionType) {
|
|
11
9
|
ActionType["CREATE"] = "CREATE";
|
|
@@ -230,9 +228,10 @@ const auditLogsApps = [{
|
|
|
230
228
|
linkToEntity(id) {
|
|
231
229
|
return `/page-builder/editor/${id}`;
|
|
232
230
|
},
|
|
233
|
-
actions: [commonActions.CREATE,
|
|
231
|
+
actions: [commonActions.CREATE, {
|
|
232
|
+
...commonActions.UPDATE,
|
|
234
233
|
newEntryDelay: 60
|
|
235
|
-
}
|
|
234
|
+
}, commonActions.DELETE, publishActions.PUBLISH, publishActions.UNPUBLISH]
|
|
236
235
|
}, {
|
|
237
236
|
type: "SETTINGS",
|
|
238
237
|
displayName: "Settings",
|
package/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_getAuditObject","require","ActionType","exports","commonActions","CREATE","type","displayName","UPDATE","DELETE","publishActions","PUBLISH","UNPUBLISH","importExportActions","IMPORT","EXPORT","auditLogsApps","app","entities","actions","linkToEntity","id","modelId","slug","_objectSpread2","default","newEntryDelay","AUDIT","getAuditObject"],"sources":["config.ts"],"sourcesContent":["import { getAuditObject } from \"~/utils/getAuditObject\";\nimport { App } from \"~/types\";\n\nexport enum ActionType {\n CREATE = \"CREATE\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n PUBLISH = \"PUBLISH\",\n UNPUBLISH = \"UNPUBLISH\",\n IMPORT = \"IMPORT\",\n EXPORT = \"EXPORT\"\n}\n\nconst commonActions = {\n CREATE: { type: ActionType.CREATE, displayName: \"Create\" },\n UPDATE: { type: ActionType.UPDATE, displayName: \"Update\" },\n DELETE: { type: ActionType.DELETE, displayName: \"Delete\" }\n};\n\nconst publishActions = {\n PUBLISH: { type: ActionType.PUBLISH, displayName: \"Publish\" },\n UNPUBLISH: { type: ActionType.UNPUBLISH, displayName: \"Unpublish\" }\n};\n\nconst importExportActions = {\n IMPORT: { type: ActionType.IMPORT, displayName: \"Import\" },\n EXPORT: { type: ActionType.EXPORT, displayName: \"Export\" }\n};\n\nexport const auditLogsApps: App[] = [\n {\n app: \"APW\",\n displayName: \"APW\",\n entities: [\n {\n type: \"CHANGE_REQUEST\",\n displayName: \"Change Request\",\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n { type: \"MARK_RESOLVED\", displayName: \"Mark resolved\" },\n { type: \"MARK_UNRESOLVED\", displayName: \"Mark unresolved\" }\n ]\n },\n {\n type: \"COMMENT\",\n displayName: \"Comment\",\n actions: [commonActions.CREATE]\n },\n {\n type: \"CONTENT_REVIEW\",\n displayName: \"Content Review\",\n linkToEntity(id) {\n return `/apw/content-reviews/${id}`;\n },\n actions: [commonActions.CREATE]\n },\n {\n type: \"WORKFLOW\",\n displayName: \"Workflow\",\n linkToEntity(id) {\n return `/apw/publishing-workflows?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"FILE_MANAGER\",\n displayName: \"File Manager\",\n entities: [\n {\n type: \"FILE\",\n displayName: \"File\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"FILE_FOLDER\",\n displayName: \"File folder\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"FORM_BUILDER\",\n displayName: \"Form Builder\",\n entities: [\n {\n type: \"FORM\",\n displayName: \"Form\",\n linkToEntity(id) {\n return `/form-builder/forms?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"FORM_REVISION\",\n displayName: \"Form revision\",\n linkToEntity(id) {\n return `/form-builder/forms?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"FORM_SUBMISSION\",\n displayName: \"Form submission\",\n actions: [importExportActions.EXPORT]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"HEADLESS_CMS\",\n displayName: \"Headless CMS\",\n entities: [\n {\n type: \"ENTRY\",\n displayName: \"Entry\",\n actions: [commonActions.CREATE, commonActions.DELETE]\n },\n {\n type: \"ENTRY_REVISION\",\n displayName: \"Entry revision\",\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"GROUP\",\n displayName: \"Group\",\n linkToEntity(id) {\n return `/cms/content-model-groups?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MODEL\",\n displayName: \"Model\",\n linkToEntity(modelId) {\n return `/cms/content-models/${modelId}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MODEL_FOLDER\",\n displayName: \"Model folder\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"I18N\",\n displayName: \"i18n\",\n entities: [\n {\n type: \"LOCALE\",\n displayName: \"Locale\",\n linkToEntity(id) {\n return `/i18n/locales?code=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"MAILER\",\n displayName: \"Mailer\",\n entities: [\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"PAGE_BUILDER\",\n displayName: \"Page Builder\",\n entities: [\n {\n type: \"BLOCK\",\n displayName: \"Block\",\n linkToEntity(id) {\n return `/page-builder/block-editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"BLOCK_CATEGORY\",\n displayName: \"Block category\",\n linkToEntity(slug) {\n return `/page-builder/block-categories?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"CATEGORY\",\n displayName: \"Category\",\n linkToEntity(slug) {\n return `/page-builder/categories?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MENU\",\n displayName: \"Menu\",\n linkToEntity(slug) {\n return `/page-builder/menus?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE\",\n displayName: \"Page\",\n linkToEntity(id) {\n return `/page-builder/editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"PAGE_ELEMENT\",\n displayName: \"Page element\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE_FOLDER\",\n displayName: \"Page folder\",\n linkToEntity(id) {\n return `/page-builder/pages?folderId=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE_REVISION\",\n displayName: \"Page revision\",\n linkToEntity(id) {\n return `/page-builder/editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n { ...commonActions.UPDATE, newEntryDelay: 60 },\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n },\n {\n type: \"TEMPLATE\",\n displayName: \"Template\",\n linkToEntity(id) {\n return `/page-builder/page-templates?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n }\n ]\n },\n {\n app: \"SECURITY\",\n displayName: \"Security\",\n entities: [\n {\n type: \"API_KEY\",\n displayName: \"API Key\",\n linkToEntity(id) {\n return `/access-management/api-keys?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"ROLE\",\n displayName: \"Role\",\n linkToEntity(id) {\n return `/access-management/roles?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"TEAM\",\n displayName: \"Team\",\n linkToEntity(id) {\n return `/access-management/teams?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"USER\",\n displayName: \"User\",\n linkToEntity(id) {\n return `/admin-users?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n }\n];\n\nexport const AUDIT = getAuditObject(auditLogsApps);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_getAuditObject","require","ActionType","exports","commonActions","CREATE","type","displayName","UPDATE","DELETE","publishActions","PUBLISH","UNPUBLISH","importExportActions","IMPORT","EXPORT","auditLogsApps","app","entities","actions","linkToEntity","id","modelId","slug","newEntryDelay","AUDIT","getAuditObject"],"sources":["config.ts"],"sourcesContent":["import { getAuditObject } from \"~/utils/getAuditObject\";\nimport { App } from \"~/types\";\n\nexport enum ActionType {\n CREATE = \"CREATE\",\n UPDATE = \"UPDATE\",\n DELETE = \"DELETE\",\n PUBLISH = \"PUBLISH\",\n UNPUBLISH = \"UNPUBLISH\",\n IMPORT = \"IMPORT\",\n EXPORT = \"EXPORT\"\n}\n\nconst commonActions = {\n CREATE: { type: ActionType.CREATE, displayName: \"Create\" },\n UPDATE: { type: ActionType.UPDATE, displayName: \"Update\" },\n DELETE: { type: ActionType.DELETE, displayName: \"Delete\" }\n};\n\nconst publishActions = {\n PUBLISH: { type: ActionType.PUBLISH, displayName: \"Publish\" },\n UNPUBLISH: { type: ActionType.UNPUBLISH, displayName: \"Unpublish\" }\n};\n\nconst importExportActions = {\n IMPORT: { type: ActionType.IMPORT, displayName: \"Import\" },\n EXPORT: { type: ActionType.EXPORT, displayName: \"Export\" }\n};\n\nexport const auditLogsApps: App[] = [\n {\n app: \"APW\",\n displayName: \"APW\",\n entities: [\n {\n type: \"CHANGE_REQUEST\",\n displayName: \"Change Request\",\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n { type: \"MARK_RESOLVED\", displayName: \"Mark resolved\" },\n { type: \"MARK_UNRESOLVED\", displayName: \"Mark unresolved\" }\n ]\n },\n {\n type: \"COMMENT\",\n displayName: \"Comment\",\n actions: [commonActions.CREATE]\n },\n {\n type: \"CONTENT_REVIEW\",\n displayName: \"Content Review\",\n linkToEntity(id) {\n return `/apw/content-reviews/${id}`;\n },\n actions: [commonActions.CREATE]\n },\n {\n type: \"WORKFLOW\",\n displayName: \"Workflow\",\n linkToEntity(id) {\n return `/apw/publishing-workflows?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"FILE_MANAGER\",\n displayName: \"File Manager\",\n entities: [\n {\n type: \"FILE\",\n displayName: \"File\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"FILE_FOLDER\",\n displayName: \"File folder\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"FORM_BUILDER\",\n displayName: \"Form Builder\",\n entities: [\n {\n type: \"FORM\",\n displayName: \"Form\",\n linkToEntity(id) {\n return `/form-builder/forms?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"FORM_REVISION\",\n displayName: \"Form revision\",\n linkToEntity(id) {\n return `/form-builder/forms?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"FORM_SUBMISSION\",\n displayName: \"Form submission\",\n actions: [importExportActions.EXPORT]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"HEADLESS_CMS\",\n displayName: \"Headless CMS\",\n entities: [\n {\n type: \"ENTRY\",\n displayName: \"Entry\",\n actions: [commonActions.CREATE, commonActions.DELETE]\n },\n {\n type: \"ENTRY_REVISION\",\n displayName: \"Entry revision\",\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"GROUP\",\n displayName: \"Group\",\n linkToEntity(id) {\n return `/cms/content-model-groups?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MODEL\",\n displayName: \"Model\",\n linkToEntity(modelId) {\n return `/cms/content-models/${modelId}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MODEL_FOLDER\",\n displayName: \"Model folder\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"I18N\",\n displayName: \"i18n\",\n entities: [\n {\n type: \"LOCALE\",\n displayName: \"Locale\",\n linkToEntity(id) {\n return `/i18n/locales?code=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n },\n {\n app: \"MAILER\",\n displayName: \"Mailer\",\n entities: [\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n }\n ]\n },\n {\n app: \"PAGE_BUILDER\",\n displayName: \"Page Builder\",\n entities: [\n {\n type: \"BLOCK\",\n displayName: \"Block\",\n linkToEntity(id) {\n return `/page-builder/block-editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"BLOCK_CATEGORY\",\n displayName: \"Block category\",\n linkToEntity(slug) {\n return `/page-builder/block-categories?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"CATEGORY\",\n displayName: \"Category\",\n linkToEntity(slug) {\n return `/page-builder/categories?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"MENU\",\n displayName: \"Menu\",\n linkToEntity(slug) {\n return `/page-builder/menus?slug=${slug}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE\",\n displayName: \"Page\",\n linkToEntity(id) {\n return `/page-builder/editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n },\n {\n type: \"PAGE_ELEMENT\",\n displayName: \"Page element\",\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE_FOLDER\",\n displayName: \"Page folder\",\n linkToEntity(id) {\n return `/page-builder/pages?folderId=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"PAGE_REVISION\",\n displayName: \"Page revision\",\n linkToEntity(id) {\n return `/page-builder/editor/${id}`;\n },\n actions: [\n commonActions.CREATE,\n { ...commonActions.UPDATE, newEntryDelay: 60 },\n commonActions.DELETE,\n publishActions.PUBLISH,\n publishActions.UNPUBLISH\n ]\n },\n {\n type: \"SETTINGS\",\n displayName: \"Settings\",\n actions: [commonActions.UPDATE]\n },\n {\n type: \"TEMPLATE\",\n displayName: \"Template\",\n linkToEntity(id) {\n return `/page-builder/page-templates?id=${id}`;\n },\n actions: [\n commonActions.CREATE,\n commonActions.UPDATE,\n commonActions.DELETE,\n importExportActions.EXPORT,\n importExportActions.IMPORT\n ]\n }\n ]\n },\n {\n app: \"SECURITY\",\n displayName: \"Security\",\n entities: [\n {\n type: \"API_KEY\",\n displayName: \"API Key\",\n linkToEntity(id) {\n return `/access-management/api-keys?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"ROLE\",\n displayName: \"Role\",\n linkToEntity(id) {\n return `/access-management/roles?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"TEAM\",\n displayName: \"Team\",\n linkToEntity(id) {\n return `/access-management/teams?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n },\n {\n type: \"USER\",\n displayName: \"User\",\n linkToEntity(id) {\n return `/admin-users?id=${id}`;\n },\n actions: [commonActions.CREATE, commonActions.UPDATE, commonActions.DELETE]\n }\n ]\n }\n];\n\nexport const AUDIT = getAuditObject(auditLogsApps);\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-audit-logs",
|
|
3
|
-
"version": "5.39.0-beta.
|
|
3
|
+
"version": "5.39.0-beta.3",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,33 +24,33 @@
|
|
|
24
24
|
"@babel/preset-env": "7.22.7",
|
|
25
25
|
"@babel/preset-typescript": "7.22.5",
|
|
26
26
|
"@babel/runtime": "7.22.6",
|
|
27
|
-
"@webiny/api-admin-users": "5.39.0-beta.
|
|
28
|
-
"@webiny/api-file-manager": "5.39.0-beta.
|
|
29
|
-
"@webiny/api-headless-cms": "5.39.0-beta.
|
|
30
|
-
"@webiny/api-i18n": "5.39.0-beta.
|
|
31
|
-
"@webiny/api-security": "5.39.0-beta.
|
|
32
|
-
"@webiny/api-tenancy": "5.39.0-beta.
|
|
33
|
-
"@webiny/api-wcp": "5.39.0-beta.
|
|
34
|
-
"@webiny/cli": "5.39.0-beta.
|
|
35
|
-
"@webiny/handler-aws": "5.39.0-beta.
|
|
36
|
-
"@webiny/handler-graphql": "5.39.0-beta.
|
|
37
|
-
"@webiny/plugins": "5.39.0-beta.
|
|
38
|
-
"@webiny/project-utils": "5.39.0-beta.
|
|
27
|
+
"@webiny/api-admin-users": "5.39.0-beta.3",
|
|
28
|
+
"@webiny/api-file-manager": "5.39.0-beta.3",
|
|
29
|
+
"@webiny/api-headless-cms": "5.39.0-beta.3",
|
|
30
|
+
"@webiny/api-i18n": "5.39.0-beta.3",
|
|
31
|
+
"@webiny/api-security": "5.39.0-beta.3",
|
|
32
|
+
"@webiny/api-tenancy": "5.39.0-beta.3",
|
|
33
|
+
"@webiny/api-wcp": "5.39.0-beta.3",
|
|
34
|
+
"@webiny/cli": "5.39.0-beta.3",
|
|
35
|
+
"@webiny/handler-aws": "5.39.0-beta.3",
|
|
36
|
+
"@webiny/handler-graphql": "5.39.0-beta.3",
|
|
37
|
+
"@webiny/plugins": "5.39.0-beta.3",
|
|
38
|
+
"@webiny/project-utils": "5.39.0-beta.3",
|
|
39
39
|
"graphql": "15.8.0",
|
|
40
40
|
"ttypescript": "1.5.15",
|
|
41
41
|
"typescript": "4.7.4"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@webiny/api": "5.39.0-beta.
|
|
45
|
-
"@webiny/api-aco": "5.39.0-beta.
|
|
46
|
-
"@webiny/api-apw": "5.39.0-beta.
|
|
47
|
-
"@webiny/api-form-builder": "5.39.0-beta.
|
|
48
|
-
"@webiny/api-mailer": "5.39.0-beta.
|
|
49
|
-
"@webiny/api-page-builder": "5.39.0-beta.
|
|
50
|
-
"@webiny/api-page-builder-import-export": "5.39.0-beta.
|
|
51
|
-
"@webiny/error": "5.39.0-beta.
|
|
52
|
-
"@webiny/handler": "5.39.0-beta.
|
|
53
|
-
"@webiny/utils": "5.39.0-beta.
|
|
44
|
+
"@webiny/api": "5.39.0-beta.3",
|
|
45
|
+
"@webiny/api-aco": "5.39.0-beta.3",
|
|
46
|
+
"@webiny/api-apw": "5.39.0-beta.3",
|
|
47
|
+
"@webiny/api-form-builder": "5.39.0-beta.3",
|
|
48
|
+
"@webiny/api-mailer": "5.39.0-beta.3",
|
|
49
|
+
"@webiny/api-page-builder": "5.39.0-beta.3",
|
|
50
|
+
"@webiny/api-page-builder-import-export": "5.39.0-beta.3",
|
|
51
|
+
"@webiny/error": "5.39.0-beta.3",
|
|
52
|
+
"@webiny/handler": "5.39.0-beta.3",
|
|
53
|
+
"@webiny/utils": "5.39.0-beta.3"
|
|
54
54
|
},
|
|
55
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "3846541fd9c1764e6a8041f0b4208d720eb9c314"
|
|
56
56
|
}
|
|
@@ -31,8 +31,7 @@ const onChangeRequestAfterUpdateHook = context => {
|
|
|
31
31
|
input
|
|
32
32
|
}) => {
|
|
33
33
|
try {
|
|
34
|
-
|
|
35
|
-
const resolved = (_input$data = input.data) === null || _input$data === void 0 ? void 0 : _input$data.resolved;
|
|
34
|
+
const resolved = input.data?.resolved;
|
|
36
35
|
if (resolved === true) {
|
|
37
36
|
const createAuditLog = (0, _getAuditConfig.getAuditConfig)(_config.AUDIT.APW.CHANGE_REQUEST.MARK_RESOLVED);
|
|
38
37
|
await createAuditLog("Change request marked as resolved", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_error","_interopRequireDefault","require","_config","_getAuditConfig","onChangeRequestAfterCreateHook","context","apw","changeRequest","onChangeRequestAfterCreate","subscribe","createAuditLog","getAuditConfig","AUDIT","APW","CHANGE_REQUEST","CREATE","id","error","WebinyError","from","message","code","exports","onChangeRequestAfterUpdateHook","onChangeRequestAfterUpdate","original","input","
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_config","_getAuditConfig","onChangeRequestAfterCreateHook","context","apw","changeRequest","onChangeRequestAfterCreate","subscribe","createAuditLog","getAuditConfig","AUDIT","APW","CHANGE_REQUEST","CREATE","id","error","WebinyError","from","message","code","exports","onChangeRequestAfterUpdateHook","onChangeRequestAfterUpdate","original","input","resolved","data","MARK_RESOLVED","before","after","MARK_UNRESOLVED","UPDATE","onChangeRequestAfterDeleteHook","onChangeRequestAfterDelete","DELETE"],"sources":["changeRequests.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\n\nimport { AUDIT } from \"~/config\";\nimport { getAuditConfig } from \"~/utils/getAuditConfig\";\nimport { AuditLogsContext } from \"~/types\";\n\nexport const onChangeRequestAfterCreateHook = (context: AuditLogsContext) => {\n context.apw.changeRequest.onChangeRequestAfterCreate.subscribe(async ({ changeRequest }) => {\n try {\n const createAuditLog = getAuditConfig(AUDIT.APW.CHANGE_REQUEST.CREATE);\n\n await createAuditLog(\n \"Change request created\",\n changeRequest,\n changeRequest.id,\n context\n );\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing onChangeRequestAfterCreateHook hook\",\n code: \"AUDIT_LOGS_AFTER_CHANGE_REQUEST_CREATE_HOOK\"\n });\n }\n });\n};\n\nexport const onChangeRequestAfterUpdateHook = (context: AuditLogsContext) => {\n context.apw.changeRequest.onChangeRequestAfterUpdate.subscribe(\n async ({ changeRequest, original, input }) => {\n try {\n const resolved = input.data?.resolved;\n\n if (resolved === true) {\n const createAuditLog = getAuditConfig(AUDIT.APW.CHANGE_REQUEST.MARK_RESOLVED);\n\n await createAuditLog(\n \"Change request marked as resolved\",\n { before: original, after: changeRequest },\n changeRequest.id,\n context\n );\n } else if (typeof resolved === \"boolean\" && resolved === false) {\n const createAuditLog = getAuditConfig(AUDIT.APW.CHANGE_REQUEST.MARK_UNRESOLVED);\n\n await createAuditLog(\n \"Change request marked as unresolved\",\n { before: original, after: changeRequest },\n changeRequest.id,\n context\n );\n } else {\n const createAuditLog = getAuditConfig(AUDIT.APW.CHANGE_REQUEST.UPDATE);\n\n await createAuditLog(\n \"Change request updated\",\n { before: original, after: changeRequest },\n changeRequest.id,\n context\n );\n }\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing onChangeRequestAfterUpdateHook hook\",\n code: \"AUDIT_LOGS_AFTER_CHANGE_REQUEST_UPDATE_HOOK\"\n });\n }\n }\n );\n};\n\nexport const onChangeRequestAfterDeleteHook = (context: AuditLogsContext) => {\n context.apw.changeRequest.onChangeRequestAfterDelete.subscribe(async ({ changeRequest }) => {\n try {\n const createAuditLog = getAuditConfig(AUDIT.APW.CHANGE_REQUEST.DELETE);\n\n await createAuditLog(\n \"Change request deleted\",\n changeRequest,\n changeRequest.id,\n context\n );\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing onChangeRequestAfterDeleteHook hook\",\n code: \"AUDIT_LOGS_AFTER_CHANGE_REQUEST_DELETE_HOOK\"\n });\n }\n });\n};\n"],"mappings":"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"}
|
package/utils/compressor.js
CHANGED
|
@@ -19,7 +19,7 @@ class GzipCompression {
|
|
|
19
19
|
let compression;
|
|
20
20
|
try {
|
|
21
21
|
const result = JSON.parse(data);
|
|
22
|
-
if (!
|
|
22
|
+
if (!result?.compression) {
|
|
23
23
|
return false;
|
|
24
24
|
}
|
|
25
25
|
compression = result.compression;
|
|
@@ -53,7 +53,7 @@ class GzipCompression {
|
|
|
53
53
|
let compression;
|
|
54
54
|
try {
|
|
55
55
|
const result = JSON.parse(data);
|
|
56
|
-
if (!
|
|
56
|
+
if (!result?.compression) {
|
|
57
57
|
return false;
|
|
58
58
|
}
|
|
59
59
|
compression = result.compression;
|
package/utils/compressor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_gzip","require","GZIP","TO_STORAGE_ENCODING","FROM_STORAGE_ENCODING","convertToBuffer","value","Buffer","from","GzipCompression","canCompress","data","compression","result","JSON","parse","console","log","compress","gzip","stringify","toString","ex","message","canDecompress","decompress","compressedValue","buf","ungzip","createCompressor","instance","compressor","exports"],"sources":["compressor.ts"],"sourcesContent":["import { compress as gzip, decompress as ungzip } from \"@webiny/utils/compression/gzip\";\n\nconst GZIP = \"gzip\";\nconst TO_STORAGE_ENCODING = \"base64\";\nconst FROM_STORAGE_ENCODING = \"utf8\";\n\nconst convertToBuffer = (value: string | Buffer) => {\n if (typeof value === \"string\") {\n return Buffer.from(value, TO_STORAGE_ENCODING);\n }\n return value;\n};\n\nexport interface OriginalData {\n [key: string]: any;\n}\n\nexport interface Compressor {\n canCompress(data: any): boolean;\n compress(data: any): Promise<string>;\n canDecompress(data: string): boolean;\n decompress(data: string): Promise<OriginalData | null>;\n}\n\nclass GzipCompression implements Compressor {\n public canCompress(data: any): boolean {\n let compression: string | undefined;\n try {\n const result = JSON.parse(data);\n if (!result?.compression) {\n return false;\n }\n compression = result.compression;\n } catch {\n return false;\n }\n /**\n * If already compressed, skip this.\n */\n if (compression) {\n if (compression !== \"GZIP\") {\n console.log(`Data is compressed with \"${compression}\". Cannot compress again.`);\n }\n return false;\n }\n return true;\n }\n public async compress(data: any) {\n try {\n const value = await gzip(JSON.stringify(data));\n\n return JSON.stringify({\n compression: GZIP,\n value: value.toString(TO_STORAGE_ENCODING)\n });\n } catch (ex) {\n console.log(`Could not compress given data.`, ex.message);\n return data;\n }\n }\n\n public canDecompress(data: string): boolean {\n let compression: string;\n try {\n const result = JSON.parse(data);\n if (!result?.compression) {\n return false;\n }\n compression = result.compression;\n } catch {\n return false;\n }\n if (compression !== GZIP) {\n console.log(\n `Could not decompress given data since its compression is not \"${GZIP}\". It is \"${compression}\".`\n );\n return false;\n }\n return true;\n }\n\n public async decompress(data: string): Promise<OriginalData | null> {\n let compressedValue: string;\n try {\n const result = JSON.parse(data);\n if (!result.value) {\n return null;\n }\n compressedValue = result.value;\n } catch {\n return null;\n }\n try {\n const buf = await ungzip(convertToBuffer(compressedValue));\n const value = buf.toString(FROM_STORAGE_ENCODING);\n return JSON.parse(value);\n } catch (ex) {\n console.log(`Could not decompress given data.`, ex.message);\n return null;\n }\n }\n}\n\nconst createCompressor = (): Pick<Compressor, \"compress\" | \"decompress\"> => {\n const instance = new GzipCompression();\n\n return {\n compress: async (data: any) => {\n if (!instance.canCompress(data)) {\n return data;\n }\n return instance.compress(data);\n },\n decompress(data: any) {\n if (!instance.canDecompress(data)) {\n return data;\n }\n return instance.decompress(data);\n }\n };\n};\n\nconst compressor = createCompressor();\n\nexport { compressor };\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,MAAMC,IAAI,GAAG,MAAM;AACnB,MAAMC,mBAAmB,GAAG,QAAQ;AACpC,MAAMC,qBAAqB,GAAG,MAAM;AAEpC,MAAMC,eAAe,GAAIC,KAAsB,IAAK;EAChD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC3B,OAAOC,MAAM,CAACC,IAAI,CAACF,KAAK,EAAEH,mBAAmB,CAAC;EAClD;EACA,OAAOG,KAAK;AAChB,CAAC;AAaD,MAAMG,eAAe,CAAuB;EACjCC,WAAWA,CAACC,IAAS,EAAW;IACnC,IAAIC,WAA+B;IACnC,IAAI;MACA,MAAMC,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACJ,IAAI,CAAC;MAC/B,IAAI,
|
|
1
|
+
{"version":3,"names":["_gzip","require","GZIP","TO_STORAGE_ENCODING","FROM_STORAGE_ENCODING","convertToBuffer","value","Buffer","from","GzipCompression","canCompress","data","compression","result","JSON","parse","console","log","compress","gzip","stringify","toString","ex","message","canDecompress","decompress","compressedValue","buf","ungzip","createCompressor","instance","compressor","exports"],"sources":["compressor.ts"],"sourcesContent":["import { compress as gzip, decompress as ungzip } from \"@webiny/utils/compression/gzip\";\n\nconst GZIP = \"gzip\";\nconst TO_STORAGE_ENCODING = \"base64\";\nconst FROM_STORAGE_ENCODING = \"utf8\";\n\nconst convertToBuffer = (value: string | Buffer) => {\n if (typeof value === \"string\") {\n return Buffer.from(value, TO_STORAGE_ENCODING);\n }\n return value;\n};\n\nexport interface OriginalData {\n [key: string]: any;\n}\n\nexport interface Compressor {\n canCompress(data: any): boolean;\n compress(data: any): Promise<string>;\n canDecompress(data: string): boolean;\n decompress(data: string): Promise<OriginalData | null>;\n}\n\nclass GzipCompression implements Compressor {\n public canCompress(data: any): boolean {\n let compression: string | undefined;\n try {\n const result = JSON.parse(data);\n if (!result?.compression) {\n return false;\n }\n compression = result.compression;\n } catch {\n return false;\n }\n /**\n * If already compressed, skip this.\n */\n if (compression) {\n if (compression !== \"GZIP\") {\n console.log(`Data is compressed with \"${compression}\". Cannot compress again.`);\n }\n return false;\n }\n return true;\n }\n public async compress(data: any) {\n try {\n const value = await gzip(JSON.stringify(data));\n\n return JSON.stringify({\n compression: GZIP,\n value: value.toString(TO_STORAGE_ENCODING)\n });\n } catch (ex) {\n console.log(`Could not compress given data.`, ex.message);\n return data;\n }\n }\n\n public canDecompress(data: string): boolean {\n let compression: string;\n try {\n const result = JSON.parse(data);\n if (!result?.compression) {\n return false;\n }\n compression = result.compression;\n } catch {\n return false;\n }\n if (compression !== GZIP) {\n console.log(\n `Could not decompress given data since its compression is not \"${GZIP}\". It is \"${compression}\".`\n );\n return false;\n }\n return true;\n }\n\n public async decompress(data: string): Promise<OriginalData | null> {\n let compressedValue: string;\n try {\n const result = JSON.parse(data);\n if (!result.value) {\n return null;\n }\n compressedValue = result.value;\n } catch {\n return null;\n }\n try {\n const buf = await ungzip(convertToBuffer(compressedValue));\n const value = buf.toString(FROM_STORAGE_ENCODING);\n return JSON.parse(value);\n } catch (ex) {\n console.log(`Could not decompress given data.`, ex.message);\n return null;\n }\n }\n}\n\nconst createCompressor = (): Pick<Compressor, \"compress\" | \"decompress\"> => {\n const instance = new GzipCompression();\n\n return {\n compress: async (data: any) => {\n if (!instance.canCompress(data)) {\n return data;\n }\n return instance.compress(data);\n },\n decompress(data: any) {\n if (!instance.canDecompress(data)) {\n return data;\n }\n return instance.decompress(data);\n }\n };\n};\n\nconst compressor = createCompressor();\n\nexport { compressor };\n"],"mappings":"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"}
|
|
@@ -11,11 +11,11 @@ export declare const getAuditConfig: (audit: AuditAction) => (message: string, d
|
|
|
11
11
|
data: {
|
|
12
12
|
data: string;
|
|
13
13
|
message: string;
|
|
14
|
+
action: string;
|
|
15
|
+
timestamp: Date;
|
|
14
16
|
app: string;
|
|
15
17
|
entity: string;
|
|
16
18
|
entityId: string;
|
|
17
|
-
action: string;
|
|
18
|
-
timestamp: Date;
|
|
19
19
|
initiator: string;
|
|
20
20
|
};
|
|
21
21
|
} | {
|
|
@@ -28,6 +28,9 @@ export declare const getAuditConfig: (audit: AuditAction) => (message: string, d
|
|
|
28
28
|
id: string;
|
|
29
29
|
entryId: string;
|
|
30
30
|
createdOn: string;
|
|
31
|
-
|
|
31
|
+
modifiedOn: string | null;
|
|
32
32
|
savedOn: string;
|
|
33
|
+
createdBy: import("@webiny/api-aco/types").User;
|
|
34
|
+
modifiedBy: import("@webiny/api-aco/types").User | null;
|
|
35
|
+
savedBy: import("@webiny/api-aco/types").User;
|
|
33
36
|
} | undefined>;
|
package/utils/getAuditConfig.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.getAuditConfig = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
8
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
10
9
|
var _utils = require("@webiny/utils");
|
|
11
10
|
var _compressor = require("./compressor");
|
|
@@ -25,15 +24,18 @@ const createAuditLog = async params => {
|
|
|
25
24
|
location: {
|
|
26
25
|
folderId: "root"
|
|
27
26
|
},
|
|
28
|
-
data:
|
|
27
|
+
data: {
|
|
28
|
+
...payload,
|
|
29
29
|
data: payloadData
|
|
30
|
-
}
|
|
30
|
+
}
|
|
31
31
|
};
|
|
32
|
-
await app.search.create(
|
|
33
|
-
|
|
32
|
+
await app.search.create({
|
|
33
|
+
...entry,
|
|
34
|
+
data: {
|
|
35
|
+
...entry.data,
|
|
34
36
|
data: await _compressor.compressor.compress(entry.data.data)
|
|
35
|
-
}
|
|
36
|
-
})
|
|
37
|
+
}
|
|
38
|
+
});
|
|
37
39
|
return entry;
|
|
38
40
|
} catch (error) {
|
|
39
41
|
throw _error.default.from(error, {
|
|
@@ -59,18 +61,17 @@ const createOrMergeAuditLog = async params => {
|
|
|
59
61
|
},
|
|
60
62
|
limit: 1
|
|
61
63
|
});
|
|
62
|
-
const existingLog = records
|
|
64
|
+
const existingLog = records?.[0];
|
|
63
65
|
if (existingLog) {
|
|
64
66
|
const existingLogDate = Date.parse(existingLog.savedOn);
|
|
65
67
|
const newLogDate = payload.timestamp.getTime();
|
|
66
68
|
|
|
67
69
|
// Check if the latest audit log is saved within delay range.
|
|
68
70
|
if (newLogDate - existingLogDate < delay * 1000) {
|
|
69
|
-
var _JSON$parse, _payload$data;
|
|
70
71
|
const existingLogData = await _compressor.compressor.decompress(existingLog.data);
|
|
71
72
|
// Update latest audit log with new "after" payload.
|
|
72
|
-
const beforePayloadData =
|
|
73
|
-
const afterPayloadData =
|
|
73
|
+
const beforePayloadData = JSON.parse(existingLogData?.data.data)?.before;
|
|
74
|
+
const afterPayloadData = payload.data?.after;
|
|
74
75
|
const updatedPayloadData = beforePayloadData ? JSON.stringify({
|
|
75
76
|
before: beforePayloadData,
|
|
76
77
|
after: afterPayloadData
|
|
@@ -78,13 +79,15 @@ const createOrMergeAuditLog = async params => {
|
|
|
78
79
|
const data = await _compressor.compressor.compress(updatedPayloadData);
|
|
79
80
|
try {
|
|
80
81
|
await app.search.update(existingLog.id, {
|
|
81
|
-
data:
|
|
82
|
+
data: {
|
|
83
|
+
...payload,
|
|
82
84
|
data
|
|
83
|
-
}
|
|
85
|
+
}
|
|
84
86
|
});
|
|
85
|
-
return
|
|
87
|
+
return {
|
|
88
|
+
...existingLog,
|
|
86
89
|
data: updatedPayloadData
|
|
87
|
-
}
|
|
90
|
+
};
|
|
88
91
|
} catch (error) {
|
|
89
92
|
throw _error.default.from(error, {
|
|
90
93
|
message: "Error while updating audit log",
|
|
@@ -114,7 +117,7 @@ const getAuditConfig = audit => {
|
|
|
114
117
|
action: audit.action.type,
|
|
115
118
|
data,
|
|
116
119
|
timestamp: new Date(),
|
|
117
|
-
initiator: identity
|
|
120
|
+
initiator: identity?.id
|
|
118
121
|
};
|
|
119
122
|
const app = aco.getApp("AuditLogs");
|
|
120
123
|
const delay = audit.action.newEntryDelay;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_error","_interopRequireDefault","require","_utils","_compressor","createAuditLog","params","app","payload","payloadData","JSON","stringify","data","entry","id","mdbid","title","message","content","tags","type","location","folderId","
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_utils","_compressor","createAuditLog","params","app","payload","payloadData","JSON","stringify","data","entry","id","mdbid","title","message","content","tags","type","location","folderId","search","create","compressor","compress","error","WebinyError","from","code","createOrMergeAuditLog","delay","records","list","where","entityId","initiator","limit","existingLog","existingLogDate","Date","parse","savedOn","newLogDate","timestamp","getTime","existingLogData","decompress","beforePayloadData","before","afterPayloadData","after","updatedPayloadData","update","getAuditConfig","audit","context","aco","security","console","log","identity","getIdentity","auditLogPayload","entity","action","getApp","newEntryDelay","exports"],"sources":["getAuditConfig.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { mdbid } from \"@webiny/utils\";\nimport { IAcoApp } from \"@webiny/api-aco/types\";\nimport { AuditAction, AuditLog, AuditLogsContext } from \"~/types\";\nimport { compressor } from \"~/utils/compressor\";\n\ninterface AuditLogPayload extends Omit<AuditLog, \"id\" | \"data\"> {\n data: Record<string, any>;\n}\n\ninterface CreateAuditLogParams {\n app: IAcoApp;\n payload: AuditLogPayload;\n}\n\nconst createAuditLog = async (params: CreateAuditLogParams) => {\n const { app, payload } = params;\n\n const payloadData = JSON.stringify(payload.data);\n\n try {\n const entry = {\n id: mdbid(),\n title: payload.message,\n content: payload.message,\n tags: [],\n type: \"AuditLogs\",\n location: { folderId: \"root\" },\n data: {\n ...payload,\n data: payloadData\n }\n };\n await app.search.create({\n ...entry,\n data: {\n ...entry.data,\n data: await compressor.compress(entry.data.data)\n }\n });\n return entry;\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while creating new audit log\",\n code: \"CREATE_AUDIT_LOG\"\n });\n }\n};\n\ninterface CreateOrMergeAuditLogParams {\n app: IAcoApp;\n payload: AuditLogPayload;\n delay: number;\n}\n\nconst createOrMergeAuditLog = async (params: CreateOrMergeAuditLogParams) => {\n const { app, payload, delay } = params;\n // Get the latest audit log of this entry.\n const [records] = await app.search.list({\n where: {\n type: \"AuditLogs\",\n data: {\n entityId: payload.entityId,\n initiator: payload.initiator\n }\n },\n limit: 1\n });\n const existingLog = records?.[0];\n\n if (existingLog) {\n const existingLogDate = Date.parse(existingLog.savedOn);\n const newLogDate = payload.timestamp.getTime();\n\n // Check if the latest audit log is saved within delay range.\n if (newLogDate - existingLogDate < delay * 1000) {\n const existingLogData = await compressor.decompress(\n existingLog.data as unknown as string\n );\n // Update latest audit log with new \"after\" payload.\n const beforePayloadData = JSON.parse(existingLogData?.data.data)?.before;\n const afterPayloadData = payload.data?.after;\n const updatedPayloadData = beforePayloadData\n ? JSON.stringify({ before: beforePayloadData, after: afterPayloadData })\n : JSON.stringify(payload.data);\n\n const data = await compressor.compress(updatedPayloadData);\n try {\n await app.search.update(existingLog.id, {\n data: {\n ...payload,\n data\n }\n });\n\n return {\n ...existingLog,\n data: updatedPayloadData\n };\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while updating audit log\",\n code: \"UPDATE_AUDIT_LOG\"\n });\n }\n }\n }\n\n return createAuditLog(params);\n};\n\nexport const getAuditConfig = (audit: AuditAction) => {\n return async (\n message: string,\n data: Record<string, any>,\n entityId: string,\n context: AuditLogsContext\n ) => {\n const { aco, security } = context;\n\n if (!aco) {\n console.log(\"No ACO defined.\");\n return;\n }\n\n const identity = security.getIdentity();\n\n const auditLogPayload = {\n message,\n app: audit.app.app,\n entity: audit.entity.type,\n entityId,\n action: audit.action.type,\n data,\n timestamp: new Date(),\n initiator: identity?.id\n };\n\n const app = aco.getApp(\"AuditLogs\");\n const delay = audit.action.newEntryDelay;\n\n // Check if there is delay on audit log creation for this action.\n if (delay) {\n return await createOrMergeAuditLog({\n app,\n payload: auditLogPayload,\n delay\n });\n }\n return await createAuditLog({\n app,\n payload: auditLogPayload\n });\n };\n};\n"],"mappings":"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"}
|