@webiny/api-audit-logs 0.0.0-unstable.7be00a75a9 → 0.0.0-unstable.7c2def32a7
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/AuditLogsFeature.d.ts +8 -0
- package/AuditLogsFeature.js +32 -0
- package/AuditLogsFeature.js.map +1 -0
- package/abstractions.d.ts +14 -4
- package/abstractions.js +3 -2
- package/abstractions.js.map +1 -1
- package/domain/errors.d.ts +5 -0
- package/domain/errors.js +11 -0
- package/domain/errors.js.map +1 -0
- package/events/abstractions.d.ts +0 -5
- package/events/abstractions.js.map +1 -1
- package/features/AuditLogPermissions/AuditLogPermissions.d.ts +15 -0
- package/features/AuditLogPermissions/AuditLogPermissions.js +24 -0
- package/features/AuditLogPermissions/AuditLogPermissions.js.map +1 -0
- package/features/AuditLogPermissions/abstractions.d.ts +11 -0
- package/features/AuditLogPermissions/abstractions.js +5 -0
- package/features/AuditLogPermissions/abstractions.js.map +1 -0
- package/features/AuditLogPermissions/feature.d.ts +4 -0
- package/features/AuditLogPermissions/feature.js +11 -0
- package/features/AuditLogPermissions/feature.js.map +1 -0
- package/features/CreateAuditLog/CreateAuditLogGateway.d.ts +12 -0
- package/features/CreateAuditLog/CreateAuditLogGateway.js +23 -0
- package/features/CreateAuditLog/CreateAuditLogGateway.js.map +1 -0
- package/features/CreateAuditLog/CreateAuditLogRepository.d.ts +14 -0
- package/features/CreateAuditLog/CreateAuditLogRepository.js +25 -0
- package/features/CreateAuditLog/CreateAuditLogRepository.js.map +1 -0
- package/features/CreateAuditLog/CreateAuditLogUseCase.d.ts +24 -0
- package/features/CreateAuditLog/CreateAuditLogUseCase.js +70 -0
- package/features/CreateAuditLog/CreateAuditLogUseCase.js.map +1 -0
- package/features/CreateAuditLog/abstractions.d.ts +42 -0
- package/features/CreateAuditLog/abstractions.js +7 -0
- package/features/CreateAuditLog/abstractions.js.map +1 -0
- package/features/CreateAuditLog/feature.d.ts +4 -0
- package/features/CreateAuditLog/feature.js +15 -0
- package/features/CreateAuditLog/feature.js.map +1 -0
- package/features/GetAuditLog/GetAuditLogGateway.d.ts +13 -0
- package/features/GetAuditLog/GetAuditLogGateway.js +21 -0
- package/features/GetAuditLog/GetAuditLogGateway.js.map +1 -0
- package/features/GetAuditLog/GetAuditLogRepository.d.ts +16 -0
- package/features/GetAuditLog/GetAuditLogRepository.js +32 -0
- package/features/GetAuditLog/GetAuditLogRepository.js.map +1 -0
- package/features/GetAuditLog/GetAuditLogUseCase.d.ts +15 -0
- package/features/GetAuditLog/GetAuditLogUseCase.js +29 -0
- package/features/GetAuditLog/GetAuditLogUseCase.js.map +1 -0
- package/features/GetAuditLog/abstractions.d.ts +42 -0
- package/features/GetAuditLog/abstractions.js +7 -0
- package/features/GetAuditLog/abstractions.js.map +1 -0
- package/features/GetAuditLog/feature.d.ts +4 -0
- package/features/GetAuditLog/feature.js +15 -0
- package/features/GetAuditLog/feature.js.map +1 -0
- package/features/ListAuditLogs/ListAuditLogsGateway.d.ts +12 -0
- package/features/ListAuditLogs/ListAuditLogsGateway.js +24 -0
- package/features/ListAuditLogs/ListAuditLogsGateway.js.map +1 -0
- package/features/ListAuditLogs/ListAuditLogsRepository.d.ts +17 -0
- package/features/ListAuditLogs/ListAuditLogsRepository.js +38 -0
- package/features/ListAuditLogs/ListAuditLogsRepository.js.map +1 -0
- package/features/ListAuditLogs/ListAuditLogsUseCase.d.ts +15 -0
- package/features/ListAuditLogs/ListAuditLogsUseCase.js +27 -0
- package/features/ListAuditLogs/ListAuditLogsUseCase.js.map +1 -0
- package/features/ListAuditLogs/abstractions.d.ts +55 -0
- package/features/ListAuditLogs/abstractions.js +7 -0
- package/features/ListAuditLogs/abstractions.js.map +1 -0
- package/features/ListAuditLogs/feature.d.ts +4 -0
- package/features/ListAuditLogs/feature.js +15 -0
- package/features/ListAuditLogs/feature.js.map +1 -0
- package/features/RecordAuditLog/RecordAuditLogUseCase.d.ts +30 -0
- package/features/RecordAuditLog/RecordAuditLogUseCase.js +108 -0
- package/features/RecordAuditLog/RecordAuditLogUseCase.js.map +1 -0
- package/features/RecordAuditLog/abstractions.d.ts +26 -0
- package/features/RecordAuditLog/abstractions.js +5 -0
- package/features/RecordAuditLog/abstractions.js.map +1 -0
- package/features/RecordAuditLog/feature.d.ts +4 -0
- package/features/RecordAuditLog/feature.js +11 -0
- package/features/RecordAuditLog/feature.js.map +1 -0
- package/features/UpdateAuditLog/UpdateAuditLogGateway.d.ts +12 -0
- package/features/UpdateAuditLog/UpdateAuditLogGateway.js +23 -0
- package/features/UpdateAuditLog/UpdateAuditLogGateway.js.map +1 -0
- package/features/UpdateAuditLog/UpdateAuditLogRepository.d.ts +14 -0
- package/features/UpdateAuditLog/UpdateAuditLogRepository.js +25 -0
- package/features/UpdateAuditLog/UpdateAuditLogRepository.js.map +1 -0
- package/features/UpdateAuditLog/UpdateAuditLogUseCase.d.ts +18 -0
- package/features/UpdateAuditLog/UpdateAuditLogUseCase.js +53 -0
- package/features/UpdateAuditLog/UpdateAuditLogUseCase.js.map +1 -0
- package/features/UpdateAuditLog/abstractions.d.ts +42 -0
- package/features/UpdateAuditLog/abstractions.js +7 -0
- package/features/UpdateAuditLog/abstractions.js.map +1 -0
- package/features/UpdateAuditLog/feature.d.ts +4 -0
- package/features/UpdateAuditLog/feature.js +15 -0
- package/features/UpdateAuditLog/feature.js.map +1 -0
- package/graphql/AuditLogsGraphQLSchema.d.ts +10 -0
- package/graphql/AuditLogsGraphQLSchema.js +139 -0
- package/graphql/AuditLogsGraphQLSchema.js.map +1 -0
- package/index.d.ts +2 -8
- package/index.js +1 -25
- package/package.json +26 -25
- package/storage/types.d.ts +0 -35
- package/subscriptions/aco/handlers/AuditLogFolderAfterCreateHandler.d.ts +3 -3
- package/subscriptions/aco/handlers/AuditLogFolderAfterCreateHandler.js +18 -9
- package/subscriptions/aco/handlers/AuditLogFolderAfterCreateHandler.js.map +1 -1
- package/subscriptions/aco/handlers/AuditLogFolderAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/aco/handlers/AuditLogFolderAfterDeleteHandler.js +35 -13
- package/subscriptions/aco/handlers/AuditLogFolderAfterDeleteHandler.js.map +1 -1
- package/subscriptions/aco/handlers/AuditLogFolderAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/aco/handlers/AuditLogFolderAfterUpdateHandler.js +24 -15
- package/subscriptions/aco/handlers/AuditLogFolderAfterUpdateHandler.js.map +1 -1
- package/subscriptions/aco/index.d.ts +2 -2
- package/subscriptions/aco/index.js +4 -4
- package/subscriptions/aco/index.js.map +1 -1
- package/subscriptions/ai/handlers/AuditLogAiAfterGenerateTextHandler.d.ts +11 -0
- package/subscriptions/ai/handlers/AuditLogAiAfterGenerateTextHandler.js +45 -0
- package/subscriptions/ai/handlers/AuditLogAiAfterGenerateTextHandler.js.map +1 -0
- package/subscriptions/ai/handlers/AuditLogAiBeforeGenerateTextHandler.d.ts +11 -0
- package/subscriptions/ai/handlers/AuditLogAiBeforeGenerateTextHandler.js +42 -0
- package/subscriptions/ai/handlers/AuditLogAiBeforeGenerateTextHandler.js.map +1 -0
- package/subscriptions/ai/handlers/AuditLogAiGenerateTextErrorHandler.d.ts +11 -0
- package/subscriptions/ai/handlers/AuditLogAiGenerateTextErrorHandler.js +44 -0
- package/subscriptions/ai/handlers/AuditLogAiGenerateTextErrorHandler.js.map +1 -0
- package/subscriptions/ai/index.d.ts +2 -0
- package/subscriptions/ai/index.js +11 -0
- package/subscriptions/ai/index.js.map +1 -0
- package/subscriptions/fileManager/handlers/AuditLogFileAfterCreateHandler.d.ts +3 -3
- package/subscriptions/fileManager/handlers/AuditLogFileAfterCreateHandler.js +11 -7
- package/subscriptions/fileManager/handlers/AuditLogFileAfterCreateHandler.js.map +1 -1
- package/subscriptions/fileManager/handlers/AuditLogFileAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/fileManager/handlers/AuditLogFileAfterDeleteHandler.js +11 -7
- package/subscriptions/fileManager/handlers/AuditLogFileAfterDeleteHandler.js.map +1 -1
- package/subscriptions/fileManager/handlers/AuditLogFileAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/fileManager/handlers/AuditLogFileAfterUpdateHandler.js +14 -10
- package/subscriptions/fileManager/handlers/AuditLogFileAfterUpdateHandler.js.map +1 -1
- package/subscriptions/fileManager/handlers/AuditLogSettingsAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/fileManager/handlers/AuditLogSettingsAfterUpdateHandler.js +14 -10
- package/subscriptions/fileManager/handlers/AuditLogSettingsAfterUpdateHandler.js.map +1 -1
- package/subscriptions/fileManager/index.d.ts +2 -2
- package/subscriptions/fileManager/index.js +5 -5
- package/subscriptions/fileManager/index.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterCreateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterCreateEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterCreateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterDeleteEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterDeleteEventHandler.js +18 -9
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterDeleteEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterPublishEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterPublishEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterPublishEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterRestoreFromBinEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterRestoreFromBinEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterRestoreFromBinEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUnpublishEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUnpublishEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUnpublishEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUpdateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUpdateEventHandler.js +14 -10
- package/subscriptions/headlessCms/handlers/AuditLogEntryAfterUpdateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterCreateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterCreateEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterCreateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterDeleteEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterDeleteEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogEntryRevisionAfterDeleteEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterCreateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterCreateEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterCreateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterDeleteEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterDeleteEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterDeleteEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterUpdateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterUpdateEventHandler.js +14 -10
- package/subscriptions/headlessCms/handlers/AuditLogGroupAfterUpdateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterCreateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterCreateEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterCreateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterDeleteEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterDeleteEventHandler.js +11 -7
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterDeleteEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterUpdateEventHandler.d.ts +3 -3
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterUpdateEventHandler.js +14 -10
- package/subscriptions/headlessCms/handlers/AuditLogModelAfterUpdateEventHandler.js.map +1 -1
- package/subscriptions/headlessCms/index.d.ts +2 -2
- package/subscriptions/headlessCms/index.js +15 -15
- package/subscriptions/headlessCms/index.js.map +1 -1
- package/subscriptions/index.d.ts +2 -2
- package/subscriptions/index.js +9 -7
- package/subscriptions/index.js.map +1 -1
- package/subscriptions/mailer/handlers/AuditLogMailerSettingsAfterSaveHandler.d.ts +3 -3
- package/subscriptions/mailer/handlers/AuditLogMailerSettingsAfterSaveHandler.js +13 -9
- package/subscriptions/mailer/handlers/AuditLogMailerSettingsAfterSaveHandler.js.map +1 -1
- package/subscriptions/mailer/index.d.ts +2 -2
- package/subscriptions/mailer/index.js +2 -2
- package/subscriptions/mailer/index.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogApiKeyAfterCreateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogApiKeyAfterCreateHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogApiKeyAfterCreateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogApiKeyAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogApiKeyAfterDeleteHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogApiKeyAfterDeleteHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogApiKeyAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogApiKeyAfterUpdateHandler.js +14 -10
- package/subscriptions/security/handlers/AuditLogApiKeyAfterUpdateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogRoleAfterCreateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogRoleAfterCreateHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogRoleAfterCreateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogRoleAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogRoleAfterDeleteHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogRoleAfterDeleteHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogRoleAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogRoleAfterUpdateHandler.js +14 -10
- package/subscriptions/security/handlers/AuditLogRoleAfterUpdateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogTeamAfterCreateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogTeamAfterCreateHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogTeamAfterCreateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogTeamAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogTeamAfterDeleteHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogTeamAfterDeleteHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogTeamAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogTeamAfterUpdateHandler.js +14 -10
- package/subscriptions/security/handlers/AuditLogTeamAfterUpdateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogUserAfterCreateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogUserAfterCreateHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogUserAfterCreateHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogUserAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogUserAfterDeleteHandler.js +11 -7
- package/subscriptions/security/handlers/AuditLogUserAfterDeleteHandler.js.map +1 -1
- package/subscriptions/security/handlers/AuditLogUserAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/security/handlers/AuditLogUserAfterUpdateHandler.js +14 -10
- package/subscriptions/security/handlers/AuditLogUserAfterUpdateHandler.js.map +1 -1
- package/subscriptions/security/index.d.ts +2 -2
- package/subscriptions/security/index.js +13 -13
- package/subscriptions/security/index.js.map +1 -1
- package/subscriptions/websiteBuilder/index.d.ts +2 -2
- package/subscriptions/websiteBuilder/index.js +13 -13
- package/subscriptions/websiteBuilder/index.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterCreateHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterCreateHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterCreateHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterCreateRevisionFromHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterCreateRevisionFromHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterCreateRevisionFromHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterDeleteHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterDeleteHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterDuplicateHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterDuplicateHandler.js +14 -10
- package/subscriptions/websiteBuilder/pages/PageAfterDuplicateHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterMoveHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterMoveHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterMoveHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterPublishHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterPublishHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterPublishHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterUnpublishHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterUnpublishHandler.js +11 -7
- package/subscriptions/websiteBuilder/pages/PageAfterUnpublishHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/pages/PageAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/pages/PageAfterUpdateHandler.js +14 -10
- package/subscriptions/websiteBuilder/pages/PageAfterUpdateHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/redirects/RedirectAfterCreateHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/redirects/RedirectAfterCreateHandler.js +11 -7
- package/subscriptions/websiteBuilder/redirects/RedirectAfterCreateHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/redirects/RedirectAfterDeleteHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/redirects/RedirectAfterDeleteHandler.js +11 -7
- package/subscriptions/websiteBuilder/redirects/RedirectAfterDeleteHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/redirects/RedirectAfterMoveHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/redirects/RedirectAfterMoveHandler.js +11 -7
- package/subscriptions/websiteBuilder/redirects/RedirectAfterMoveHandler.js.map +1 -1
- package/subscriptions/websiteBuilder/redirects/RedirectAfterUpdateHandler.d.ts +3 -3
- package/subscriptions/websiteBuilder/redirects/RedirectAfterUpdateHandler.js +14 -10
- package/subscriptions/websiteBuilder/redirects/RedirectAfterUpdateHandler.js.map +1 -1
- package/types.d.ts +0 -23
- package/context/AuditLogsContextValue.d.ts +0 -10
- package/context/AuditLogsContextValue.js +0 -129
- package/context/AuditLogsContextValue.js.map +0 -1
- package/context/index.d.ts +0 -9
- package/context/index.js +0 -31
- package/context/index.js.map +0 -1
- package/graphql/schema.d.ts +0 -3
- package/graphql/schema.js +0 -115
- package/graphql/schema.js.map +0 -1
- package/index.js.map +0 -1
- package/storage/AccessPatternHandler.d.ts +0 -14
- package/storage/AccessPatternHandler.js +0 -39
- package/storage/AccessPatternHandler.js.map +0 -1
- package/storage/Converter.d.ts +0 -16
- package/storage/Converter.js +0 -49
- package/storage/Converter.js.map +0 -1
- package/storage/Storage.d.ts +0 -18
- package/storage/Storage.js +0 -81
- package/storage/Storage.js.map +0 -1
- package/storage/abstractions/AccessPattern.d.ts +0 -24
- package/storage/abstractions/AccessPattern.js +0 -0
- package/storage/abstractions/AccessPatternHandler.d.ts +0 -13
- package/storage/abstractions/AccessPatternHandler.js +0 -0
- package/storage/abstractions/Converter.d.ts +0 -6
- package/storage/abstractions/Converter.js +0 -0
- package/storage/accessPatterns/AppAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppAccessPattern.js +0 -35
- package/storage/accessPatterns/AppAccessPattern.js.map +0 -1
- package/storage/accessPatterns/AppCreatedByAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppCreatedByAccessPattern.js +0 -38
- package/storage/accessPatterns/AppCreatedByAccessPattern.js.map +0 -1
- package/storage/accessPatterns/AppEntityAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppEntityAccessPattern.js +0 -35
- package/storage/accessPatterns/AppEntityAccessPattern.js.map +0 -1
- package/storage/accessPatterns/AppEntityActionAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppEntityActionAccessPattern.js +0 -35
- package/storage/accessPatterns/AppEntityActionAccessPattern.js.map +0 -1
- package/storage/accessPatterns/AppEntityActionCreatedByAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppEntityActionCreatedByAccessPattern.js +0 -38
- package/storage/accessPatterns/AppEntityActionCreatedByAccessPattern.js.map +0 -1
- package/storage/accessPatterns/AppEntityCreatedByAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/AppEntityCreatedByAccessPattern.js +0 -38
- package/storage/accessPatterns/AppEntityCreatedByAccessPattern.js.map +0 -1
- package/storage/accessPatterns/BaseAccessPattern.d.ts +0 -32
- package/storage/accessPatterns/BaseAccessPattern.js +0 -60
- package/storage/accessPatterns/BaseAccessPattern.js.map +0 -1
- package/storage/accessPatterns/CreatedByAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/CreatedByAccessPattern.js +0 -38
- package/storage/accessPatterns/CreatedByAccessPattern.js.map +0 -1
- package/storage/accessPatterns/CreatedOnAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/CreatedOnAccessPattern.js +0 -38
- package/storage/accessPatterns/CreatedOnAccessPattern.js.map +0 -1
- package/storage/accessPatterns/DefaultAccessPattern.d.ts +0 -15
- package/storage/accessPatterns/DefaultAccessPattern.js +0 -35
- package/storage/accessPatterns/DefaultAccessPattern.js.map +0 -1
- package/storage/accessPatterns/EntityIdAccessPattern.d.ts +0 -9
- package/storage/accessPatterns/EntityIdAccessPattern.js +0 -38
- package/storage/accessPatterns/EntityIdAccessPattern.js.map +0 -1
- package/storage/accessPatterns/index.d.ts +0 -6
- package/storage/accessPatterns/index.js +0 -57
- package/storage/accessPatterns/index.js.map +0 -1
- package/storage/cursorSchema.d.ts +0 -4
- package/storage/cursorSchema.js +0 -22
- package/storage/cursorSchema.js.map +0 -1
- package/storage/entity.d.ts +0 -36
- package/storage/entity.js +0 -120
- package/storage/entity.js.map +0 -1
- package/storage/results/ListErrorResult.d.ts +0 -10
- package/storage/results/ListErrorResult.js +0 -12
- package/storage/results/ListErrorResult.js.map +0 -1
- package/storage/results/ListSuccessResult.d.ts +0 -14
- package/storage/results/ListSuccessResult.js +0 -17
- package/storage/results/ListSuccessResult.js.map +0 -1
- package/storage/results/index.d.ts +0 -2
- package/storage/results/index.js +0 -2
- package/storage/startKey.d.ts +0 -6
- package/storage/startKey.js +0 -8
- package/storage/startKey.js.map +0 -1
- package/utils/getAuditConfig.d.ts +0 -4
- package/utils/getAuditConfig.js +0 -86
- package/utils/getAuditConfig.js.map +0 -1
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Result } from "@webiny/feature/api";
|
|
2
|
+
import type { GenericRecord } from "@webiny/api/types.js";
|
|
3
|
+
import type { AuditAction } from "../../types.js";
|
|
4
|
+
import type { IAuditLog } from "../../storage/types.js";
|
|
5
|
+
import type { CreateAuditLogUseCase } from "../../features/CreateAuditLog/abstractions.js";
|
|
6
|
+
export interface RecordAuditLogInput {
|
|
7
|
+
audit: AuditAction;
|
|
8
|
+
message: string;
|
|
9
|
+
content: GenericRecord;
|
|
10
|
+
entityId: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* RecordAuditLog Use Case - Records an audit log for something the current identity did. Returns
|
|
14
|
+
* null when nothing was recorded: there's no identity, or merging into an earlier log failed.
|
|
15
|
+
*/
|
|
16
|
+
export interface IRecordAuditLogUseCase {
|
|
17
|
+
execute(input: RecordAuditLogInput): Promise<Result<IAuditLog | null, UseCaseError>>;
|
|
18
|
+
}
|
|
19
|
+
type UseCaseError = CreateAuditLogUseCase.Error;
|
|
20
|
+
export declare const RecordAuditLogUseCase: import("@webiny/di").Abstraction<IRecordAuditLogUseCase>;
|
|
21
|
+
export declare namespace RecordAuditLogUseCase {
|
|
22
|
+
type Interface = IRecordAuditLogUseCase;
|
|
23
|
+
type Input = RecordAuditLogInput;
|
|
24
|
+
type Error = UseCaseError;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/RecordAuditLog/abstractions.js","sources":["../../../src/features/RecordAuditLog/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport type { AuditAction } from \"~/types.js\";\nimport type { IAuditLog } from \"~/storage/types.js\";\nimport type { CreateAuditLogUseCase } from \"~/features/CreateAuditLog/abstractions.js\";\n\nexport interface RecordAuditLogInput {\n audit: AuditAction;\n message: string;\n content: GenericRecord;\n entityId: string;\n}\n\n/**\n * RecordAuditLog Use Case - Records an audit log for something the current identity did. Returns\n * null when nothing was recorded: there's no identity, or merging into an earlier log failed.\n */\nexport interface IRecordAuditLogUseCase {\n execute(input: RecordAuditLogInput): Promise<Result<IAuditLog | null, UseCaseError>>;\n}\n\ntype UseCaseError = CreateAuditLogUseCase.Error;\n\nexport const RecordAuditLogUseCase =\n createAbstraction<IRecordAuditLogUseCase>(\"RecordAuditLogUseCase\");\n\nexport namespace RecordAuditLogUseCase {\n export type Interface = IRecordAuditLogUseCase;\n export type Input = RecordAuditLogInput;\n export type Error = UseCaseError;\n}\n"],"names":["RecordAuditLogUseCase","createAbstraction"],"mappings":";AAwBO,MAAMA,wBACTC,kBAA0C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { RecordAuditLogUseCase } from "./RecordAuditLogUseCase.js";
|
|
3
|
+
const RecordAuditLogFeature = createFeature({
|
|
4
|
+
name: "AuditLogs/RecordAuditLog",
|
|
5
|
+
register (container) {
|
|
6
|
+
container.register(RecordAuditLogUseCase);
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
export { RecordAuditLogFeature };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/RecordAuditLog/feature.js","sources":["../../../src/features/RecordAuditLog/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { RecordAuditLogUseCase } from \"./RecordAuditLogUseCase.js\";\n\nexport const RecordAuditLogFeature = createFeature({\n name: \"AuditLogs/RecordAuditLog\",\n register(container) {\n container.register(RecordAuditLogUseCase);\n }\n});\n"],"names":["RecordAuditLogFeature","createFeature","container","RecordAuditLogUseCase"],"mappings":";;AAGO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AuditLogsStorage } from "../../abstractions.js";
|
|
2
|
+
import type { IAuditLog } from "../../storage/types.js";
|
|
3
|
+
import { UpdateAuditLogGateway as Abstraction } from "./abstractions.js";
|
|
4
|
+
declare class UpdateAuditLogGatewayImpl implements Abstraction.Interface {
|
|
5
|
+
private readonly storage;
|
|
6
|
+
constructor(storage: AuditLogsStorage.Interface);
|
|
7
|
+
update(auditLog: IAuditLog): Promise<IAuditLog>;
|
|
8
|
+
}
|
|
9
|
+
export declare const UpdateAuditLogGateway: typeof UpdateAuditLogGatewayImpl & {
|
|
10
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateAuditLogGateway>;
|
|
11
|
+
};
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { AuditLogsStorage } from "../../abstractions.js";
|
|
2
|
+
import { UpdateAuditLogGateway } from "./abstractions.js";
|
|
3
|
+
class UpdateAuditLogGatewayImpl {
|
|
4
|
+
constructor(storage){
|
|
5
|
+
this.storage = storage;
|
|
6
|
+
}
|
|
7
|
+
async update(auditLog) {
|
|
8
|
+
const result = await this.storage.store({
|
|
9
|
+
data: auditLog
|
|
10
|
+
});
|
|
11
|
+
if (!result.success) throw result.error;
|
|
12
|
+
return result.data;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const UpdateAuditLogGateway_UpdateAuditLogGateway = UpdateAuditLogGateway.createImplementation({
|
|
16
|
+
implementation: UpdateAuditLogGatewayImpl,
|
|
17
|
+
dependencies: [
|
|
18
|
+
AuditLogsStorage
|
|
19
|
+
]
|
|
20
|
+
});
|
|
21
|
+
export { UpdateAuditLogGateway_UpdateAuditLogGateway as UpdateAuditLogGateway };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=UpdateAuditLogGateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/UpdateAuditLog/UpdateAuditLogGateway.js","sources":["../../../src/features/UpdateAuditLog/UpdateAuditLogGateway.ts"],"sourcesContent":["import { AuditLogsStorage } from \"~/abstractions.js\";\nimport type { IAuditLog } from \"~/storage/types.js\";\nimport { UpdateAuditLogGateway as Abstraction } from \"./abstractions.js\";\n\nclass UpdateAuditLogGatewayImpl implements Abstraction.Interface {\n public constructor(private readonly storage: AuditLogsStorage.Interface) {}\n\n public async update(auditLog: IAuditLog): Promise<IAuditLog> {\n const result = await this.storage.store({ data: auditLog });\n if (!result.success) {\n throw result.error;\n }\n return result.data;\n }\n}\n\nexport const UpdateAuditLogGateway = Abstraction.createImplementation({\n implementation: UpdateAuditLogGatewayImpl,\n dependencies: [AuditLogsStorage]\n});\n"],"names":["UpdateAuditLogGatewayImpl","storage","auditLog","result","UpdateAuditLogGateway","Abstraction","AuditLogsStorage"],"mappings":";;AAIA,MAAMA;IACF,YAAoCC,OAAmC,CAAE;aAArCA,OAAO,GAAPA;IAAsC;IAE1E,MAAa,OAAOC,QAAmB,EAAsB;QACzD,MAAMC,SAAS,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAMD;QAAS;QACzD,IAAI,CAACC,OAAO,OAAO,EACf,MAAMA,OAAO,KAAK;QAEtB,OAAOA,OAAO,IAAI;IACtB;AACJ;AAEO,MAAMC,8CAAwBC,sBAAAA,oBAAgC,CAAC;IAClE,gBAAgBL;IAChB,cAAc;QAACM;KAAiB;AACpC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Result } from "@webiny/feature/api";
|
|
2
|
+
import { AuditLogPersistenceError } from "../../domain/errors.js";
|
|
3
|
+
import type { IAuditLog } from "../../storage/types.js";
|
|
4
|
+
import { UpdateAuditLogRepository as Abstraction } from "./abstractions.js";
|
|
5
|
+
import { UpdateAuditLogGateway } from "./abstractions.js";
|
|
6
|
+
declare class UpdateAuditLogRepositoryImpl implements Abstraction.Interface {
|
|
7
|
+
private readonly gateway;
|
|
8
|
+
constructor(gateway: UpdateAuditLogGateway.Interface);
|
|
9
|
+
update(auditLog: IAuditLog): Promise<Result<IAuditLog, AuditLogPersistenceError>>;
|
|
10
|
+
}
|
|
11
|
+
export declare const UpdateAuditLogRepository: typeof UpdateAuditLogRepositoryImpl & {
|
|
12
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateAuditLogRepository>;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Result } from "@webiny/feature/api";
|
|
2
|
+
import { AuditLogPersistenceError } from "../../domain/errors.js";
|
|
3
|
+
import { UpdateAuditLogGateway, UpdateAuditLogRepository } from "./abstractions.js";
|
|
4
|
+
class UpdateAuditLogRepositoryImpl {
|
|
5
|
+
constructor(gateway){
|
|
6
|
+
this.gateway = gateway;
|
|
7
|
+
}
|
|
8
|
+
async update(auditLog) {
|
|
9
|
+
try {
|
|
10
|
+
const updated = await this.gateway.update(auditLog);
|
|
11
|
+
return Result.ok(updated);
|
|
12
|
+
} catch (error) {
|
|
13
|
+
return Result.fail(new AuditLogPersistenceError(error));
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
const UpdateAuditLogRepository_UpdateAuditLogRepository = UpdateAuditLogRepository.createImplementation({
|
|
18
|
+
implementation: UpdateAuditLogRepositoryImpl,
|
|
19
|
+
dependencies: [
|
|
20
|
+
UpdateAuditLogGateway
|
|
21
|
+
]
|
|
22
|
+
});
|
|
23
|
+
export { UpdateAuditLogRepository_UpdateAuditLogRepository as UpdateAuditLogRepository };
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=UpdateAuditLogRepository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/UpdateAuditLog/UpdateAuditLogRepository.js","sources":["../../../src/features/UpdateAuditLog/UpdateAuditLogRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { AuditLogPersistenceError } from \"~/domain/errors.js\";\nimport type { IAuditLog } from \"~/storage/types.js\";\nimport { UpdateAuditLogRepository as Abstraction } from \"./abstractions.js\";\nimport { UpdateAuditLogGateway } from \"./abstractions.js\";\n\nclass UpdateAuditLogRepositoryImpl implements Abstraction.Interface {\n public constructor(private readonly gateway: UpdateAuditLogGateway.Interface) {}\n\n public async update(auditLog: IAuditLog): Promise<Result<IAuditLog, AuditLogPersistenceError>> {\n try {\n const updated = await this.gateway.update(auditLog);\n return Result.ok(updated);\n } catch (error) {\n return Result.fail(new AuditLogPersistenceError(error as Error));\n }\n }\n}\n\nexport const UpdateAuditLogRepository = Abstraction.createImplementation({\n implementation: UpdateAuditLogRepositoryImpl,\n dependencies: [UpdateAuditLogGateway]\n});\n"],"names":["UpdateAuditLogRepositoryImpl","gateway","auditLog","updated","Result","error","AuditLogPersistenceError","UpdateAuditLogRepository","Abstraction","UpdateAuditLogGateway"],"mappings":";;;AAMA,MAAMA;IACF,YAAoCC,OAAwC,CAAE;aAA1CA,OAAO,GAAPA;IAA2C;IAE/E,MAAa,OAAOC,QAAmB,EAAwD;QAC3F,IAAI;YACA,MAAMC,UAAU,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAACD;YAC1C,OAAOE,OAAO,EAAE,CAACD;QACrB,EAAE,OAAOE,OAAO;YACZ,OAAOD,OAAO,IAAI,CAAC,IAAIE,yBAAyBD;QACpD;IACJ;AACJ;AAEO,MAAME,oDAA2BC,yBAAAA,oBAAgC,CAAC;IACrE,gBAAgBR;IAChB,cAAc;QAACS;KAAsB;AACzC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Result } from "@webiny/feature/api";
|
|
2
|
+
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
|
+
import { AuditLogPermissions } from "../../features/AuditLogPermissions/abstractions.js";
|
|
4
|
+
import type { AuditLogPayload } from "../../types.js";
|
|
5
|
+
import type { IAuditLog } from "../../storage/types.js";
|
|
6
|
+
import { UpdateAuditLogUseCase as UseCaseAbstraction } from "./abstractions.js";
|
|
7
|
+
import { UpdateAuditLogRepository } from "./abstractions.js";
|
|
8
|
+
declare class UpdateAuditLogUseCaseImpl implements UseCaseAbstraction.Interface {
|
|
9
|
+
private readonly repository;
|
|
10
|
+
private readonly permissions;
|
|
11
|
+
private readonly eventPublisher;
|
|
12
|
+
constructor(repository: UpdateAuditLogRepository.Interface, permissions: AuditLogPermissions.Interface, eventPublisher: EventPublisher.Interface);
|
|
13
|
+
execute(original: IAuditLog, payload: Partial<AuditLogPayload>): Promise<Result<IAuditLog, UseCaseAbstraction.Error>>;
|
|
14
|
+
}
|
|
15
|
+
export declare const UpdateAuditLogUseCase: typeof UpdateAuditLogUseCaseImpl & {
|
|
16
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IUpdateAuditLogUseCase>;
|
|
17
|
+
};
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Result } from "@webiny/feature/api";
|
|
2
|
+
import { NotAuthorizedError } from "@webiny/api-core/features/security/shared/errors.js";
|
|
3
|
+
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
4
|
+
import { AuditLogPermissions } from "../AuditLogPermissions/abstractions.js";
|
|
5
|
+
import { AuditLogAfterUpdateEvent, AuditLogBeforeUpdateEvent } from "../../events/index.js";
|
|
6
|
+
import { UpdateAuditLogRepository, UpdateAuditLogUseCase } from "./abstractions.js";
|
|
7
|
+
class UpdateAuditLogUseCaseImpl {
|
|
8
|
+
constructor(repository, permissions, eventPublisher){
|
|
9
|
+
this.repository = repository;
|
|
10
|
+
this.permissions = permissions;
|
|
11
|
+
this.eventPublisher = eventPublisher;
|
|
12
|
+
}
|
|
13
|
+
async execute(original, payload) {
|
|
14
|
+
let content = original.content;
|
|
15
|
+
if (payload.content) content = JSON.stringify(payload.content);
|
|
16
|
+
const auditLog = {
|
|
17
|
+
...original,
|
|
18
|
+
...payload,
|
|
19
|
+
content
|
|
20
|
+
};
|
|
21
|
+
const canAccess = await this.permissions.canAccess(auditLog.action);
|
|
22
|
+
if (!canAccess) return Result.fail(new NotAuthorizedError({
|
|
23
|
+
message: "You cannot access audit logs."
|
|
24
|
+
}));
|
|
25
|
+
const beforeUpdateEvent = new AuditLogBeforeUpdateEvent({
|
|
26
|
+
original,
|
|
27
|
+
auditLog,
|
|
28
|
+
setAuditLog (input) {
|
|
29
|
+
Object.assign(auditLog, input);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
await this.eventPublisher.publish(beforeUpdateEvent);
|
|
33
|
+
const result = await this.repository.update(auditLog);
|
|
34
|
+
if (result.isFail()) return Result.fail(result.error);
|
|
35
|
+
const afterUpdateEvent = new AuditLogAfterUpdateEvent({
|
|
36
|
+
original,
|
|
37
|
+
auditLog
|
|
38
|
+
});
|
|
39
|
+
await this.eventPublisher.publish(afterUpdateEvent);
|
|
40
|
+
return Result.ok(result.value);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const UpdateAuditLogUseCase_UpdateAuditLogUseCase = UpdateAuditLogUseCase.createImplementation({
|
|
44
|
+
implementation: UpdateAuditLogUseCaseImpl,
|
|
45
|
+
dependencies: [
|
|
46
|
+
UpdateAuditLogRepository,
|
|
47
|
+
AuditLogPermissions,
|
|
48
|
+
EventPublisher
|
|
49
|
+
]
|
|
50
|
+
});
|
|
51
|
+
export { UpdateAuditLogUseCase_UpdateAuditLogUseCase as UpdateAuditLogUseCase };
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=UpdateAuditLogUseCase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/UpdateAuditLog/UpdateAuditLogUseCase.js","sources":["../../../src/features/UpdateAuditLog/UpdateAuditLogUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { NotAuthorizedError } from \"@webiny/api-core/features/security/shared/errors.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { AuditLogPermissions } from \"~/features/AuditLogPermissions/abstractions.js\";\nimport { AuditLogBeforeUpdateEvent } from \"~/events/index.js\";\nimport { AuditLogAfterUpdateEvent } from \"~/events/index.js\";\nimport type { AuditLogPayload } from \"~/types.js\";\nimport type { IAuditLog } from \"~/storage/types.js\";\nimport { UpdateAuditLogUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { UpdateAuditLogRepository } from \"./abstractions.js\";\n\nclass UpdateAuditLogUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(\n private readonly repository: UpdateAuditLogRepository.Interface,\n private readonly permissions: AuditLogPermissions.Interface,\n private readonly eventPublisher: EventPublisher.Interface\n ) {}\n\n public async execute(\n original: IAuditLog,\n payload: Partial<AuditLogPayload>\n ): Promise<Result<IAuditLog, UseCaseAbstraction.Error>> {\n let content = original.content;\n if (payload.content) {\n content = JSON.stringify(payload.content);\n }\n\n const auditLog: IAuditLog = {\n ...original,\n ...payload,\n content\n };\n\n const canAccess = await this.permissions.canAccess(auditLog.action);\n if (!canAccess) {\n return Result.fail(\n new NotAuthorizedError({ message: \"You cannot access audit logs.\" })\n );\n }\n\n const beforeUpdateEvent = new AuditLogBeforeUpdateEvent({\n original,\n auditLog,\n setAuditLog(input) {\n Object.assign(auditLog, input);\n }\n });\n await this.eventPublisher.publish(beforeUpdateEvent);\n\n const result = await this.repository.update(auditLog);\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n const afterUpdateEvent = new AuditLogAfterUpdateEvent({ original, auditLog });\n await this.eventPublisher.publish(afterUpdateEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdateAuditLogUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateAuditLogUseCaseImpl,\n dependencies: [UpdateAuditLogRepository, AuditLogPermissions, EventPublisher]\n});\n"],"names":["UpdateAuditLogUseCaseImpl","repository","permissions","eventPublisher","original","payload","content","JSON","auditLog","canAccess","Result","NotAuthorizedError","beforeUpdateEvent","AuditLogBeforeUpdateEvent","input","Object","result","afterUpdateEvent","AuditLogAfterUpdateEvent","UpdateAuditLogUseCase","UseCaseAbstraction","UpdateAuditLogRepository","AuditLogPermissions","EventPublisher"],"mappings":";;;;;;AAWA,MAAMA;IACF,YACqBC,UAA8C,EAC9CC,WAA0C,EAC1CC,cAAwC,CAC3D;aAHmBF,UAAU,GAAVA;aACAC,WAAW,GAAXA;aACAC,cAAc,GAAdA;IAClB;IAEH,MAAa,QACTC,QAAmB,EACnBC,OAAiC,EACmB;QACpD,IAAIC,UAAUF,SAAS,OAAO;QAC9B,IAAIC,QAAQ,OAAO,EACfC,UAAUC,KAAK,SAAS,CAACF,QAAQ,OAAO;QAG5C,MAAMG,WAAsB;YACxB,GAAGJ,QAAQ;YACX,GAAGC,OAAO;YACVC;QACJ;QAEA,MAAMG,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAACD,SAAS,MAAM;QAClE,IAAI,CAACC,WACD,OAAOC,OAAO,IAAI,CACd,IAAIC,mBAAmB;YAAE,SAAS;QAAgC;QAI1E,MAAMC,oBAAoB,IAAIC,0BAA0B;YACpDT;YACAI;YACA,aAAYM,KAAK;gBACbC,OAAO,MAAM,CAACP,UAAUM;YAC5B;QACJ;QACA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACF;QAElC,MAAMI,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAACR;QAC5C,IAAIQ,OAAO,MAAM,IACb,OAAON,OAAO,IAAI,CAACM,OAAO,KAAK;QAGnC,MAAMC,mBAAmB,IAAIC,yBAAyB;YAAEd;YAAUI;QAAS;QAC3E,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACS;QAElC,OAAOP,OAAO,EAAE,CAACM,OAAO,KAAK;IACjC;AACJ;AAEO,MAAMG,8CAAwBC,sBAAAA,oBAAuC,CAAC;IACzE,gBAAgBpB;IAChB,cAAc;QAACqB;QAA0BC;QAAqBC;KAAe;AACjF"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Result } from "@webiny/feature/api";
|
|
2
|
+
import type { NotAuthorizedError } from "@webiny/api-core/features/security/shared/errors.js";
|
|
3
|
+
import type { AuditLogPayload } from "../../types.js";
|
|
4
|
+
import type { IAuditLog } from "../../storage/types.js";
|
|
5
|
+
import type { AuditLogPersistenceError } from "../../domain/errors.js";
|
|
6
|
+
/**
|
|
7
|
+
* UpdateAuditLog Use Case - Updates an existing audit log with new values.
|
|
8
|
+
*/
|
|
9
|
+
export interface IUpdateAuditLogUseCase {
|
|
10
|
+
execute(original: IAuditLog, payload: Partial<AuditLogPayload>): Promise<Result<IAuditLog, UseCaseError>>;
|
|
11
|
+
}
|
|
12
|
+
export interface IUpdateAuditLogUseCaseErrors {
|
|
13
|
+
notAuthorized: NotAuthorizedError;
|
|
14
|
+
persistence: AuditLogPersistenceError;
|
|
15
|
+
}
|
|
16
|
+
type UseCaseError = IUpdateAuditLogUseCaseErrors[keyof IUpdateAuditLogUseCaseErrors];
|
|
17
|
+
export declare const UpdateAuditLogUseCase: import("@webiny/di").Abstraction<IUpdateAuditLogUseCase>;
|
|
18
|
+
export declare namespace UpdateAuditLogUseCase {
|
|
19
|
+
type Interface = IUpdateAuditLogUseCase;
|
|
20
|
+
type Error = UseCaseError;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* UpdateAuditLogRepository - Stores an updated audit log.
|
|
24
|
+
*/
|
|
25
|
+
export interface IUpdateAuditLogRepository {
|
|
26
|
+
update(auditLog: IAuditLog): Promise<Result<IAuditLog, AuditLogPersistenceError>>;
|
|
27
|
+
}
|
|
28
|
+
export declare const UpdateAuditLogRepository: import("@webiny/di").Abstraction<IUpdateAuditLogRepository>;
|
|
29
|
+
export declare namespace UpdateAuditLogRepository {
|
|
30
|
+
type Interface = IUpdateAuditLogRepository;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* UpdateAuditLogGateway - Writes an updated audit log to the audit logs storage.
|
|
34
|
+
*/
|
|
35
|
+
export interface IUpdateAuditLogGateway {
|
|
36
|
+
update(auditLog: IAuditLog): Promise<IAuditLog>;
|
|
37
|
+
}
|
|
38
|
+
export declare const UpdateAuditLogGateway: import("@webiny/di").Abstraction<IUpdateAuditLogGateway>;
|
|
39
|
+
export declare namespace UpdateAuditLogGateway {
|
|
40
|
+
type Interface = IUpdateAuditLogGateway;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
+
const UpdateAuditLogUseCase = createAbstraction("UpdateAuditLogUseCase");
|
|
3
|
+
const UpdateAuditLogRepository = createAbstraction("UpdateAuditLogRepository");
|
|
4
|
+
const UpdateAuditLogGateway = createAbstraction("UpdateAuditLogGateway");
|
|
5
|
+
export { UpdateAuditLogGateway, UpdateAuditLogRepository, UpdateAuditLogUseCase };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=abstractions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/UpdateAuditLog/abstractions.js","sources":["../../../src/features/UpdateAuditLog/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { NotAuthorizedError } from \"@webiny/api-core/features/security/shared/errors.js\";\nimport type { AuditLogPayload } from \"~/types.js\";\nimport type { IAuditLog } from \"~/storage/types.js\";\nimport type { AuditLogPersistenceError } from \"~/domain/errors.js\";\n\n/**\n * UpdateAuditLog Use Case - Updates an existing audit log with new values.\n */\nexport interface IUpdateAuditLogUseCase {\n execute(\n original: IAuditLog,\n payload: Partial<AuditLogPayload>\n ): Promise<Result<IAuditLog, UseCaseError>>;\n}\n\nexport interface IUpdateAuditLogUseCaseErrors {\n notAuthorized: NotAuthorizedError;\n persistence: AuditLogPersistenceError;\n}\n\ntype UseCaseError = IUpdateAuditLogUseCaseErrors[keyof IUpdateAuditLogUseCaseErrors];\n\nexport const UpdateAuditLogUseCase =\n createAbstraction<IUpdateAuditLogUseCase>(\"UpdateAuditLogUseCase\");\n\nexport namespace UpdateAuditLogUseCase {\n export type Interface = IUpdateAuditLogUseCase;\n export type Error = UseCaseError;\n}\n\n/**\n * UpdateAuditLogRepository - Stores an updated audit log.\n */\nexport interface IUpdateAuditLogRepository {\n update(auditLog: IAuditLog): Promise<Result<IAuditLog, AuditLogPersistenceError>>;\n}\n\nexport const UpdateAuditLogRepository = createAbstraction<IUpdateAuditLogRepository>(\n \"UpdateAuditLogRepository\"\n);\n\nexport namespace UpdateAuditLogRepository {\n export type Interface = IUpdateAuditLogRepository;\n}\n\n/**\n * UpdateAuditLogGateway - Writes an updated audit log to the audit logs storage.\n */\nexport interface IUpdateAuditLogGateway {\n update(auditLog: IAuditLog): Promise<IAuditLog>;\n}\n\nexport const UpdateAuditLogGateway =\n createAbstraction<IUpdateAuditLogGateway>(\"UpdateAuditLogGateway\");\n\nexport namespace UpdateAuditLogGateway {\n export type Interface = IUpdateAuditLogGateway;\n}\n"],"names":["UpdateAuditLogUseCase","createAbstraction","UpdateAuditLogRepository","UpdateAuditLogGateway"],"mappings":";AAwBO,MAAMA,wBACTC,kBAA0C;AAcvC,MAAMC,2BAA2BD,kBACpC;AAcG,MAAME,wBACTF,kBAA0C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { UpdateAuditLogUseCase } from "./UpdateAuditLogUseCase.js";
|
|
3
|
+
import { UpdateAuditLogRepository } from "./UpdateAuditLogRepository.js";
|
|
4
|
+
import { UpdateAuditLogGateway } from "./UpdateAuditLogGateway.js";
|
|
5
|
+
const UpdateAuditLogFeature = createFeature({
|
|
6
|
+
name: "AuditLogs/UpdateAuditLog",
|
|
7
|
+
register (container) {
|
|
8
|
+
container.register(UpdateAuditLogUseCase);
|
|
9
|
+
container.register(UpdateAuditLogRepository).inSingletonScope();
|
|
10
|
+
container.register(UpdateAuditLogGateway).inSingletonScope();
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
export { UpdateAuditLogFeature };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/UpdateAuditLog/feature.js","sources":["../../../src/features/UpdateAuditLog/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdateAuditLogUseCase } from \"./UpdateAuditLogUseCase.js\";\nimport { UpdateAuditLogRepository } from \"./UpdateAuditLogRepository.js\";\nimport { UpdateAuditLogGateway } from \"./UpdateAuditLogGateway.js\";\n\nexport const UpdateAuditLogFeature = createFeature({\n name: \"AuditLogs/UpdateAuditLog\",\n register(container) {\n container.register(UpdateAuditLogUseCase);\n container.register(UpdateAuditLogRepository).inSingletonScope();\n container.register(UpdateAuditLogGateway).inSingletonScope();\n }\n});\n"],"names":["UpdateAuditLogFeature","createFeature","container","UpdateAuditLogUseCase","UpdateAuditLogRepository","UpdateAuditLogGateway"],"mappings":";;;;AAKO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE,0BAA0B,gBAAgB;QAC7DF,UAAU,QAAQ,CAACG,uBAAuB,gBAAgB;IAC9D;AACJ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CoreGraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
|
|
2
|
+
import { GraphQLSchemaBuilder } from "@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js";
|
|
3
|
+
declare class AuditLogsGraphQLSchemaImpl implements CoreGraphQLSchemaFactory.Interface {
|
|
4
|
+
getSchemaKey: () => string;
|
|
5
|
+
execute(builder: GraphQLSchemaBuilder.Interface): CoreGraphQLSchemaFactory.Return;
|
|
6
|
+
}
|
|
7
|
+
export declare const AuditLogsGraphQLSchema: typeof AuditLogsGraphQLSchemaImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-graphql/graphql/abstractions.core.js").ICoreGraphQLSchemaFactory>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { resolve, resolveList } from "@webiny/api-graphql";
|
|
2
|
+
import { staticSchemaKey } from "@webiny/api-graphql/graphql/staticSchemaKey.js";
|
|
3
|
+
import { CoreGraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
|
|
4
|
+
import { createZodError } from "@webiny/utils";
|
|
5
|
+
import { GetAuditLogUseCase } from "../features/GetAuditLog/abstractions.js";
|
|
6
|
+
import { ListAuditLogsUseCase } from "../features/ListAuditLogs/abstractions.js";
|
|
7
|
+
import { getValidationSchema, listValidationSchema } from "./validation.js";
|
|
8
|
+
const TYPE_DEFS = `
|
|
9
|
+
type AuditLogCreatedBy {
|
|
10
|
+
id: ID!
|
|
11
|
+
displayName: String
|
|
12
|
+
type: String
|
|
13
|
+
}
|
|
14
|
+
type AuditLog {
|
|
15
|
+
id: ID!
|
|
16
|
+
createdBy: AuditLogCreatedBy!
|
|
17
|
+
createdOn: DateTime!
|
|
18
|
+
app: String!
|
|
19
|
+
action: String!
|
|
20
|
+
message: String!
|
|
21
|
+
entity: String!
|
|
22
|
+
entityId: String!
|
|
23
|
+
tags: [String!]!
|
|
24
|
+
expiresAt: DateTime!
|
|
25
|
+
content: String
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type AuditLogListMeta {
|
|
29
|
+
cursor: String
|
|
30
|
+
hasMoreItems: Boolean!
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
type AuditLogError {
|
|
34
|
+
code: String
|
|
35
|
+
message: String!
|
|
36
|
+
data: JSON
|
|
37
|
+
stack: String
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
type AuditLogListResponse {
|
|
41
|
+
data: [AuditLog!]
|
|
42
|
+
meta: AuditLogListMeta
|
|
43
|
+
error: AuditLogError
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
type AuditLogGetResponse {
|
|
47
|
+
data: AuditLog
|
|
48
|
+
error: AuditLogError
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
enum AuditLogsSort {
|
|
52
|
+
ASC
|
|
53
|
+
DESC
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
input ListAuditLogsWhere {
|
|
57
|
+
app: String
|
|
58
|
+
action: String
|
|
59
|
+
createdBy: String
|
|
60
|
+
entity: String
|
|
61
|
+
entityId: String
|
|
62
|
+
createdOn_gte: DateTime
|
|
63
|
+
createdOn_lte: DateTime
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
type AuditLogsQuery {
|
|
67
|
+
getAuditLog(id: ID!): AuditLogGetResponse
|
|
68
|
+
listAuditLogs(
|
|
69
|
+
where: ListAuditLogsWhere
|
|
70
|
+
sort: AuditLogsSort
|
|
71
|
+
limit: Number
|
|
72
|
+
after: String
|
|
73
|
+
): AuditLogListResponse!
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
extend type Query {
|
|
77
|
+
auditLogs: AuditLogsQuery
|
|
78
|
+
}
|
|
79
|
+
`;
|
|
80
|
+
class AuditLogsGraphQLSchemaImpl {
|
|
81
|
+
async execute(builder) {
|
|
82
|
+
builder.addTypeDefs(TYPE_DEFS);
|
|
83
|
+
builder.addResolver({
|
|
84
|
+
path: "Query.auditLogs",
|
|
85
|
+
dependencies: [],
|
|
86
|
+
resolver: ()=>()=>({})
|
|
87
|
+
});
|
|
88
|
+
builder.addResolver({
|
|
89
|
+
path: "AuditLogsQuery.getAuditLog",
|
|
90
|
+
dependencies: [
|
|
91
|
+
GetAuditLogUseCase
|
|
92
|
+
],
|
|
93
|
+
resolver (getAuditLog) {
|
|
94
|
+
return async ({ args })=>resolve(async ()=>{
|
|
95
|
+
const validation = await getValidationSchema.safeParseAsync(args);
|
|
96
|
+
if (!validation.success) throw createZodError(validation.error);
|
|
97
|
+
const result = await getAuditLog.execute(validation.data.id);
|
|
98
|
+
if (result.isFail()) throw result.error;
|
|
99
|
+
return result.value;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
builder.addResolver({
|
|
104
|
+
path: "AuditLogsQuery.listAuditLogs",
|
|
105
|
+
dependencies: [
|
|
106
|
+
ListAuditLogsUseCase
|
|
107
|
+
],
|
|
108
|
+
resolver (listAuditLogs) {
|
|
109
|
+
return async ({ args })=>resolveList(async ()=>{
|
|
110
|
+
const validation = await listValidationSchema.safeParseAsync(args);
|
|
111
|
+
if (!validation.success) throw createZodError(validation.error);
|
|
112
|
+
const result = await listAuditLogs.execute({
|
|
113
|
+
...validation.data,
|
|
114
|
+
...validation.data.where
|
|
115
|
+
});
|
|
116
|
+
if (result.isFail()) throw result.error;
|
|
117
|
+
return {
|
|
118
|
+
items: result.value.items,
|
|
119
|
+
meta: {
|
|
120
|
+
...result.value.meta,
|
|
121
|
+
totalCount: 0
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
return builder;
|
|
128
|
+
}
|
|
129
|
+
constructor(){
|
|
130
|
+
this.getSchemaKey = staticSchemaKey("api-audit-logs/AuditLogsGraphQLSchemaImpl");
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
const AuditLogsGraphQLSchema = CoreGraphQLSchemaFactory.createImplementation({
|
|
134
|
+
implementation: AuditLogsGraphQLSchemaImpl,
|
|
135
|
+
dependencies: []
|
|
136
|
+
});
|
|
137
|
+
export { AuditLogsGraphQLSchema };
|
|
138
|
+
|
|
139
|
+
//# sourceMappingURL=AuditLogsGraphQLSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql/AuditLogsGraphQLSchema.js","sources":["../../src/graphql/AuditLogsGraphQLSchema.ts"],"sourcesContent":["import { resolve } from \"@webiny/api-graphql\";\nimport { staticSchemaKey } from \"@webiny/api-graphql/graphql/staticSchemaKey.js\";\nimport { resolveList } from \"@webiny/api-graphql\";\nimport { CoreGraphQLSchemaFactory } from \"@webiny/api-graphql/graphql/abstractions.js\";\nimport { GraphQLSchemaBuilder } from \"@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js\";\nimport { createZodError } from \"@webiny/utils\";\nimport { GetAuditLogUseCase } from \"~/features/GetAuditLog/abstractions.js\";\nimport { ListAuditLogsUseCase } from \"~/features/ListAuditLogs/abstractions.js\";\nimport { getValidationSchema, listValidationSchema } from \"./validation.js\";\n\ninterface IListAuditLogsWhere {\n app?: string;\n action?: string;\n createdBy?: string;\n entity?: string;\n entityId?: string;\n createdOn_gte?: Date;\n createdOn_lte?: Date;\n}\n\ninterface IListAuditLogsArgs {\n where?: IListAuditLogsWhere;\n sort?: \"ASC\" | \"DESC\";\n limit?: number;\n after?: string;\n}\n\nconst TYPE_DEFS = /* GraphQL */ `\n type AuditLogCreatedBy {\n id: ID!\n displayName: String\n type: String\n }\n type AuditLog {\n id: ID!\n createdBy: AuditLogCreatedBy!\n createdOn: DateTime!\n app: String!\n action: String!\n message: String!\n entity: String!\n entityId: String!\n tags: [String!]!\n expiresAt: DateTime!\n content: String\n }\n\n type AuditLogListMeta {\n cursor: String\n hasMoreItems: Boolean!\n }\n\n type AuditLogError {\n code: String\n message: String!\n data: JSON\n stack: String\n }\n\n type AuditLogListResponse {\n data: [AuditLog!]\n meta: AuditLogListMeta\n error: AuditLogError\n }\n\n type AuditLogGetResponse {\n data: AuditLog\n error: AuditLogError\n }\n\n enum AuditLogsSort {\n ASC\n DESC\n }\n\n input ListAuditLogsWhere {\n app: String\n action: String\n createdBy: String\n entity: String\n entityId: String\n createdOn_gte: DateTime\n createdOn_lte: DateTime\n }\n\n type AuditLogsQuery {\n getAuditLog(id: ID!): AuditLogGetResponse\n listAuditLogs(\n where: ListAuditLogsWhere\n sort: AuditLogsSort\n limit: Number\n after: String\n ): AuditLogListResponse!\n }\n\n extend type Query {\n auditLogs: AuditLogsQuery\n }\n`;\n\nclass AuditLogsGraphQLSchemaImpl implements CoreGraphQLSchemaFactory.Interface {\n public getSchemaKey = staticSchemaKey(\"api-audit-logs/AuditLogsGraphQLSchemaImpl\");\n\n public async execute(builder: GraphQLSchemaBuilder.Interface): CoreGraphQLSchemaFactory.Return {\n builder.addTypeDefs(TYPE_DEFS);\n\n builder.addResolver({\n path: \"Query.auditLogs\",\n dependencies: [],\n resolver: () => () => ({})\n });\n\n builder.addResolver<{ id: string }>({\n path: \"AuditLogsQuery.getAuditLog\",\n dependencies: [GetAuditLogUseCase],\n resolver(getAuditLog: GetAuditLogUseCase.Interface) {\n return async ({ args }) => {\n return resolve(async () => {\n const validation = await getValidationSchema.safeParseAsync(args);\n\n if (!validation.success) {\n throw createZodError(validation.error);\n }\n\n const result = await getAuditLog.execute(validation.data.id);\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n };\n }\n });\n\n builder.addResolver<IListAuditLogsArgs>({\n path: \"AuditLogsQuery.listAuditLogs\",\n dependencies: [ListAuditLogsUseCase],\n resolver(listAuditLogs: ListAuditLogsUseCase.Interface) {\n return async ({ args }) => {\n return resolveList(async () => {\n const validation = await listValidationSchema.safeParseAsync(args);\n if (!validation.success) {\n throw createZodError(validation.error);\n }\n const result = await listAuditLogs.execute({\n ...validation.data,\n ...validation.data.where\n });\n if (result.isFail()) {\n throw result.error;\n }\n return {\n items: result.value.items,\n meta: {\n ...result.value.meta,\n totalCount: 0\n }\n };\n });\n };\n }\n });\n\n return builder;\n }\n}\n\nexport const AuditLogsGraphQLSchema = CoreGraphQLSchemaFactory.createImplementation({\n implementation: AuditLogsGraphQLSchemaImpl,\n dependencies: []\n});\n"],"names":["TYPE_DEFS","AuditLogsGraphQLSchemaImpl","builder","GetAuditLogUseCase","getAuditLog","args","resolve","validation","getValidationSchema","createZodError","result","ListAuditLogsUseCase","listAuditLogs","resolveList","listValidationSchema","staticSchemaKey","AuditLogsGraphQLSchema","CoreGraphQLSchemaFactory"],"mappings":";;;;;;;AA2BA,MAAMA,YAA0B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEjC,CAAC;AAED,MAAMC;IAGF,MAAa,QAAQC,OAAuC,EAAmC;QAC3FA,QAAQ,WAAW,CAACF;QAEpBE,QAAQ,WAAW,CAAC;YAChB,MAAM;YACN,cAAc,EAAE;YAChB,UAAU,IAAM,IAAO,EAAC;QAC5B;QAEAA,QAAQ,WAAW,CAAiB;YAChC,MAAM;YACN,cAAc;gBAACC;aAAmB;YAClC,UAASC,WAAyC;gBAC9C,OAAO,OAAO,EAAEC,IAAI,EAAE,GACXC,QAAQ;wBACX,MAAMC,aAAa,MAAMC,oBAAoB,cAAc,CAACH;wBAE5D,IAAI,CAACE,WAAW,OAAO,EACnB,MAAME,eAAeF,WAAW,KAAK;wBAGzC,MAAMG,SAAS,MAAMN,YAAY,OAAO,CAACG,WAAW,IAAI,CAAC,EAAE;wBAC3D,IAAIG,OAAO,MAAM,IACb,MAAMA,OAAO,KAAK;wBAEtB,OAAOA,OAAO,KAAK;oBACvB;YAER;QACJ;QAEAR,QAAQ,WAAW,CAAqB;YACpC,MAAM;YACN,cAAc;gBAACS;aAAqB;YACpC,UAASC,aAA6C;gBAClD,OAAO,OAAO,EAAEP,IAAI,EAAE,GACXQ,YAAY;wBACf,MAAMN,aAAa,MAAMO,qBAAqB,cAAc,CAACT;wBAC7D,IAAI,CAACE,WAAW,OAAO,EACnB,MAAME,eAAeF,WAAW,KAAK;wBAEzC,MAAMG,SAAS,MAAME,cAAc,OAAO,CAAC;4BACvC,GAAGL,WAAW,IAAI;4BAClB,GAAGA,WAAW,IAAI,CAAC,KAAK;wBAC5B;wBACA,IAAIG,OAAO,MAAM,IACb,MAAMA,OAAO,KAAK;wBAEtB,OAAO;4BACH,OAAOA,OAAO,KAAK,CAAC,KAAK;4BACzB,MAAM;gCACF,GAAGA,OAAO,KAAK,CAAC,IAAI;gCACpB,YAAY;4BAChB;wBACJ;oBACJ;YAER;QACJ;QAEA,OAAOR;IACX;;aA/DO,YAAY,GAAGa,gBAAgB;;AAgE1C;AAEO,MAAMC,yBAAyBC,yBAAyB,oBAAoB,CAAC;IAChF,gBAAgBhB;IAChB,cAAc,EAAE;AACpB"}
|
package/index.d.ts
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import { ContextPlugin } from "@webiny/api";
|
|
2
|
-
import type { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb/index.js";
|
|
3
|
-
export interface ICreateAuditLogsParams {
|
|
4
|
-
deleteLogsAfterDays: number | undefined;
|
|
5
|
-
tableName?: string;
|
|
6
|
-
documentClient?: DynamoDBDocument;
|
|
7
|
-
}
|
|
8
|
-
export declare const createAuditLogs: (params?: ICreateAuditLogsParams) => (ContextPlugin<import("./types.js").AuditLogsContext> | import("@webiny/handler-graphql/index.js").GraphQLSchemaPlugin<import("./types.js").AuditLogsContext>)[];
|
|
9
1
|
export * from "./config.js";
|
|
2
|
+
export { AuditLogsFeature } from "./AuditLogsFeature.js";
|
|
3
|
+
export type { AuditLogsFeatureConfig } from "./AuditLogsFeature.js";
|
package/index.js
CHANGED
|
@@ -1,26 +1,2 @@
|
|
|
1
|
-
import { ContextPlugin } from "@webiny/api";
|
|
2
|
-
import { createSubscriptionHooks } from "./subscriptions/index.js";
|
|
3
|
-
import { createAuditLogsContext } from "./context/index.js";
|
|
4
|
-
import { createGraphQLSchema } from "./graphql/schema.js";
|
|
5
|
-
import { AuditLogsContext } from "./abstractions.js";
|
|
6
1
|
export * from "./config.js";
|
|
7
|
-
|
|
8
|
-
const subscriptionsPlugin = new ContextPlugin((context)=>{
|
|
9
|
-
if (!context.wcp.canUseFeature("auditLogs")) return;
|
|
10
|
-
context.container.registerInstance(AuditLogsContext, context);
|
|
11
|
-
createSubscriptionHooks(context);
|
|
12
|
-
});
|
|
13
|
-
subscriptionsPlugin.name = "auditLogs.context.subscriptions";
|
|
14
|
-
return [
|
|
15
|
-
subscriptionsPlugin,
|
|
16
|
-
createGraphQLSchema(),
|
|
17
|
-
createAuditLogsContext({
|
|
18
|
-
tableName: params?.tableName,
|
|
19
|
-
deleteLogsAfterDays: params?.deleteLogsAfterDays,
|
|
20
|
-
documentClient: params?.documentClient
|
|
21
|
-
})
|
|
22
|
-
];
|
|
23
|
-
};
|
|
24
|
-
export { createAuditLogs };
|
|
25
|
-
|
|
26
|
-
//# sourceMappingURL=index.js.map
|
|
2
|
+
export { AuditLogsFeature } from "./AuditLogsFeature.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-audit-logs",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.7c2def32a7",
|
|
4
4
|
"exports": {
|
|
5
5
|
".": "./index.js",
|
|
6
6
|
"./*": "./*"
|
|
@@ -22,32 +22,33 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@webiny/
|
|
26
|
-
"@webiny/
|
|
27
|
-
"@webiny/
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
25
|
+
"@webiny/api-core-testing": "0.0.0-unstable.7c2def32a7",
|
|
26
|
+
"@webiny/api-headless-cms-testing": "0.0.0-unstable.7c2def32a7",
|
|
27
|
+
"@webiny/api-websockets": "0.0.0-unstable.7c2def32a7",
|
|
28
|
+
"@webiny/db-dynamodb": "0.0.0-unstable.7c2def32a7",
|
|
29
|
+
"@webiny/di": "2.0.0",
|
|
30
|
+
"@webiny/event-handler-core": "0.0.0-unstable.7c2def32a7",
|
|
31
|
+
"@webiny/handler": "0.0.0-unstable.7c2def32a7",
|
|
32
|
+
"@webiny/plugins": "0.0.0-unstable.7c2def32a7",
|
|
33
|
+
"graphql": "16.14.2",
|
|
34
|
+
"typescript": "7.0.2",
|
|
35
|
+
"vitest": "4.1.11"
|
|
31
36
|
},
|
|
32
37
|
"dependencies": {
|
|
33
|
-
"@webiny/api": "0.0.0-unstable.
|
|
34
|
-
"@webiny/api-aco": "0.0.0-unstable.
|
|
35
|
-
"@webiny/api-core": "0.0.0-unstable.
|
|
36
|
-
"@webiny/api-file-manager": "0.0.0-unstable.
|
|
37
|
-
"@webiny/api-
|
|
38
|
-
"@webiny/api-
|
|
39
|
-
"@webiny/api-
|
|
40
|
-
"@webiny/
|
|
41
|
-
"@webiny/build-tools": "0.0.0-unstable.
|
|
42
|
-
"@webiny/common-audit-logs": "0.0.0-unstable.
|
|
43
|
-
"@webiny/
|
|
44
|
-
"@webiny/
|
|
45
|
-
"@webiny/
|
|
46
|
-
"@webiny/
|
|
47
|
-
"@webiny/handler-db": "0.0.0-unstable.7be00a75a9",
|
|
48
|
-
"@webiny/handler-graphql": "0.0.0-unstable.7be00a75a9",
|
|
49
|
-
"@webiny/utils": "0.0.0-unstable.7be00a75a9",
|
|
50
|
-
"@webiny/wcp": "0.0.0-unstable.7be00a75a9",
|
|
38
|
+
"@webiny/api": "0.0.0-unstable.7c2def32a7",
|
|
39
|
+
"@webiny/api-aco": "0.0.0-unstable.7c2def32a7",
|
|
40
|
+
"@webiny/api-core": "0.0.0-unstable.7c2def32a7",
|
|
41
|
+
"@webiny/api-file-manager": "0.0.0-unstable.7c2def32a7",
|
|
42
|
+
"@webiny/api-graphql": "0.0.0-unstable.7c2def32a7",
|
|
43
|
+
"@webiny/api-headless-cms": "0.0.0-unstable.7c2def32a7",
|
|
44
|
+
"@webiny/api-mailer": "0.0.0-unstable.7c2def32a7",
|
|
45
|
+
"@webiny/api-website-builder": "0.0.0-unstable.7c2def32a7",
|
|
46
|
+
"@webiny/build-tools": "0.0.0-unstable.7c2def32a7",
|
|
47
|
+
"@webiny/common-audit-logs": "0.0.0-unstable.7c2def32a7",
|
|
48
|
+
"@webiny/error": "0.0.0-unstable.7c2def32a7",
|
|
49
|
+
"@webiny/feature": "0.0.0-unstable.7c2def32a7",
|
|
50
|
+
"@webiny/utils": "0.0.0-unstable.7c2def32a7",
|
|
51
|
+
"@webiny/wcp": "0.0.0-unstable.7c2def32a7",
|
|
51
52
|
"zod": "4.4.3"
|
|
52
53
|
},
|
|
53
54
|
"webiny": {
|