@webiny/api-core 0.0.0-unstable.e2758ee1cf → 0.0.0-unstable.e6f0dc8ca7
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/ApiCoreFeature.d.ts +5 -1
- package/ApiCoreFeature.js +6 -0
- package/ApiCoreFeature.js.map +1 -1
- package/createApiCore.d.ts +1 -1
- package/createApiCore.js +2 -3
- package/createApiCore.js.map +1 -1
- package/domain/security/ApiToken.d.ts +1 -0
- package/domain/security/ApiToken.js +1 -0
- package/domain/security/ApiToken.js.map +1 -1
- package/exports/api/build-params.d.ts +1 -0
- package/exports/api/build-params.js +1 -0
- package/exports/api/build-params.js.map +1 -1
- package/exports/api/event-publisher.d.ts +1 -0
- package/exports/api/event-publisher.js +1 -0
- package/exports/api/event-publisher.js.map +1 -1
- package/exports/api/key-value-store.d.ts +1 -0
- package/exports/api/key-value-store.js +1 -0
- package/exports/api/key-value-store.js.map +1 -1
- package/exports/api/logger.d.ts +1 -0
- package/exports/api/logger.js +1 -0
- package/exports/api/logger.js.map +1 -1
- package/exports/api/security/api-key.d.ts +3 -3
- package/exports/api/security/api-key.js +3 -3
- package/exports/api/security/api-key.js.map +1 -1
- package/exports/api/security/authentication.d.ts +1 -1
- package/exports/api/security/authentication.js +1 -1
- package/exports/api/security/authentication.js.map +1 -1
- package/exports/api/security/role.d.ts +3 -3
- package/exports/api/security/role.js +3 -3
- package/exports/api/security/role.js.map +1 -1
- package/exports/api/security/user.d.ts +3 -3
- package/exports/api/security/user.js +3 -3
- package/exports/api/security/user.js.map +1 -1
- package/exports/api/security.d.ts +6 -0
- package/exports/api/security.js +5 -0
- package/exports/api/security.js.map +1 -1
- package/exports/api/system.d.ts +1 -1
- package/exports/api/system.js +1 -1
- package/exports/api/system.js.map +1 -1
- package/exports/api/tenancy.d.ts +4 -4
- package/exports/api/tenancy.js +4 -4
- package/exports/api/tenancy.js.map +1 -1
- package/exports/api.d.ts +7 -0
- package/exports/api.js +8 -0
- package/exports/api.js.map +1 -0
- package/features/ai/Ai.d.ts +26 -0
- package/features/ai/Ai.js +133 -0
- package/features/ai/Ai.js.map +1 -0
- package/features/ai/AiSdkTools.d.ts +11 -0
- package/features/ai/AiSdkTools.js +25 -0
- package/features/ai/AiSdkTools.js.map +1 -0
- package/features/ai/AnthropicSdkFactory.d.ts +10 -0
- package/features/ai/AnthropicSdkFactory.js +71 -0
- package/features/ai/AnthropicSdkFactory.js.map +1 -0
- package/features/ai/OpenAiSdkFactory.d.ts +10 -0
- package/features/ai/OpenAiSdkFactory.js +187 -0
- package/features/ai/OpenAiSdkFactory.js.map +1 -0
- package/features/ai/abstractions.d.ts +92 -0
- package/features/ai/abstractions.js +35 -0
- package/features/ai/abstractions.js.map +1 -0
- package/features/ai/feature.d.ts +4 -0
- package/features/ai/feature.js +16 -0
- package/features/ai/feature.js.map +1 -0
- package/features/ai/index.d.ts +3 -0
- package/features/ai/index.js +4 -0
- package/features/ai/index.js.map +1 -0
- package/features/buildParams/abstractions.d.ts +2 -0
- package/features/buildParams/abstractions.js +2 -0
- package/features/buildParams/abstractions.js.map +1 -1
- package/features/buildParams/feature.d.ts +5 -1
- package/features/encryption/EncryptionService.d.ts +10 -0
- package/features/encryption/EncryptionService.js +58 -0
- package/features/encryption/EncryptionService.js.map +1 -0
- package/features/encryption/abstractions.d.ts +9 -0
- package/features/encryption/abstractions.js +5 -0
- package/features/encryption/abstractions.js.map +1 -0
- package/features/encryption/feature.d.ts +4 -0
- package/features/encryption/feature.js +10 -0
- package/features/encryption/feature.js.map +1 -0
- package/features/encryption/index.d.ts +1 -0
- package/features/encryption/index.js +3 -0
- package/features/encryption/index.js.map +1 -0
- package/features/eventPublisher/abstractions.d.ts +2 -0
- package/features/eventPublisher/abstractions.js +3 -0
- package/features/eventPublisher/abstractions.js.map +1 -1
- package/features/eventPublisher/feature.d.ts +5 -1
- package/features/featureFlags/feature.d.ts +5 -1
- package/features/keyValueStore/GlobalKeyValueStore.js +3 -1
- package/features/keyValueStore/GlobalKeyValueStore.js.map +1 -1
- package/features/keyValueStore/KeyValueStoreRepository.d.ts +2 -2
- package/features/keyValueStore/KeyValueStoreRepository.js +2 -2
- package/features/keyValueStore/KeyValueStoreRepository.js.map +1 -1
- package/features/keyValueStore/abstractions.d.ts +10 -2
- package/features/keyValueStore/abstractions.js +4 -0
- package/features/keyValueStore/abstractions.js.map +1 -1
- package/features/keyValueStore/feature.d.ts +4 -1
- package/features/keyValueStore/feature.js.map +1 -1
- package/features/logger/abstractions.d.ts +1 -0
- package/features/logger/abstractions.js +1 -0
- package/features/logger/abstractions.js.map +1 -1
- package/features/logger/feature.d.ts +4 -1
- package/features/masker/Masker.d.ts +8 -0
- package/features/masker/Masker.js +21 -0
- package/features/masker/Masker.js.map +1 -0
- package/features/masker/abstractions.d.ts +11 -0
- package/features/masker/abstractions.js +4 -0
- package/features/masker/abstractions.js.map +1 -0
- package/features/masker/feature.d.ts +4 -0
- package/features/masker/feature.js +10 -0
- package/features/masker/feature.js.map +1 -0
- package/features/masker/index.d.ts +1 -0
- package/features/masker/index.js +3 -0
- package/features/masker/index.js.map +1 -0
- package/features/security/IdentityContext/abstractions.d.ts +1 -0
- package/features/security/IdentityContext/abstractions.js +1 -0
- package/features/security/IdentityContext/abstractions.js.map +1 -1
- package/features/security/IdentityContext/feature.d.ts +4 -1
- package/features/security/SecurityFeature.d.ts +5 -1
- package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js +1 -1
- package/features/security/apiKeys/CreateApiKey/CreateApiKeyUseCase.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/CreateApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/CreateApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/CreateApiKey/events.js +8 -4
- package/features/security/apiKeys/CreateApiKey/events.js.map +1 -1
- package/features/security/apiKeys/CreateApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/DeleteApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/DeleteApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/DeleteApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/DeleteApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/DeleteApiKey/events.js +8 -4
- package/features/security/apiKeys/DeleteApiKey/events.js.map +1 -1
- package/features/security/apiKeys/DeleteApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKeyBySlug/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKeyBySlug/feature.d.ts +4 -1
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.d.ts +1 -0
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.js +1 -0
- package/features/security/apiKeys/GetApiKeyByToken/abstractions.js.map +1 -1
- package/features/security/apiKeys/GetApiKeyByToken/feature.d.ts +4 -1
- package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js +1 -1
- package/features/security/apiKeys/ListApiKeys/ListApiKeysUseCase.js.map +1 -1
- package/features/security/apiKeys/ListApiKeys/abstractions.d.ts +1 -0
- package/features/security/apiKeys/ListApiKeys/abstractions.js +1 -0
- package/features/security/apiKeys/ListApiKeys/abstractions.js.map +1 -1
- package/features/security/apiKeys/ListApiKeys/feature.d.ts +4 -1
- package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js +1 -1
- package/features/security/apiKeys/UpdateApiKey/UpdateApiKeyUseCase.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/abstractions.d.ts +1 -0
- package/features/security/apiKeys/UpdateApiKey/abstractions.js +1 -0
- package/features/security/apiKeys/UpdateApiKey/abstractions.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/events.d.ts +6 -4
- package/features/security/apiKeys/UpdateApiKey/events.js +8 -4
- package/features/security/apiKeys/UpdateApiKey/events.js.map +1 -1
- package/features/security/apiKeys/UpdateApiKey/feature.d.ts +4 -1
- package/features/security/apiKeys/feature.d.ts +4 -1
- package/features/security/apiKeys/shared/abstractions.d.ts +5 -2
- package/features/security/apiKeys/shared/abstractions.js +3 -0
- package/features/security/apiKeys/shared/abstractions.js.map +1 -1
- package/features/security/apiKeys/shared/schemas.d.ts +10 -71
- package/features/security/apiKeys/shared/schemas.js +4 -4
- package/features/security/apiKeys/shared/schemas.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.d.ts +2 -2
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js +2 -2
- package/features/security/authentication/AuthenticationContext/SetIdTokenCookie.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/abstractions.d.ts +1 -0
- package/features/security/authentication/AuthenticationContext/abstractions.js +1 -0
- package/features/security/authentication/AuthenticationContext/abstractions.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/events.d.ts +6 -4
- package/features/security/authentication/AuthenticationContext/events.js +8 -4
- package/features/security/authentication/AuthenticationContext/events.js.map +1 -1
- package/features/security/authentication/AuthenticationContext/feature.d.ts +4 -1
- package/features/security/authentication/Authenticator/abstractions.d.ts +1 -0
- package/features/security/authentication/Authenticator/abstractions.js +1 -0
- package/features/security/authentication/Authenticator/abstractions.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.d.ts +1 -0
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.js +14 -2
- package/features/security/authorization/AuthorizationContext/AuthorizationContext.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/abstractions.d.ts +2 -0
- package/features/security/authorization/AuthorizationContext/abstractions.js +2 -0
- package/features/security/authorization/AuthorizationContext/abstractions.js.map +1 -1
- package/features/security/authorization/AuthorizationContext/feature.d.ts +4 -1
- package/features/security/authorization/Authorizer/abstractions.d.ts +1 -0
- package/features/security/authorization/Authorizer/abstractions.js +1 -0
- package/features/security/authorization/Authorizer/abstractions.js.map +1 -1
- package/features/security/authorization/GroupsTeamsAuthorizer/feature.d.ts +4 -1
- package/features/security/login/abstractions.d.ts +3 -2
- package/features/security/login/abstractions.js +4 -2
- package/features/security/login/abstractions.js.map +1 -1
- package/features/security/permissions/createPermissionSchema.d.ts +2 -0
- package/features/security/permissions/createPermissionSchema.js +8 -0
- package/features/security/permissions/createPermissionSchema.js.map +1 -0
- package/features/security/permissions/createPermissions.d.ts +5 -5
- package/features/security/permissions/createPermissions.js +198 -188
- package/features/security/permissions/createPermissions.js.map +1 -1
- package/features/security/permissions/index.d.ts +2 -1
- package/features/security/permissions/index.js +2 -1
- package/features/security/permissions/index.js.map +1 -1
- package/features/security/roles/CreateRole/CreateRoleUseCase.d.ts +1 -3
- package/features/security/roles/CreateRole/CreateRoleUseCase.js +3 -7
- package/features/security/roles/CreateRole/CreateRoleUseCase.js.map +1 -1
- package/features/security/roles/CreateRole/abstractions.d.ts +1 -0
- package/features/security/roles/CreateRole/abstractions.js +1 -0
- package/features/security/roles/CreateRole/abstractions.js.map +1 -1
- package/features/security/roles/CreateRole/events.d.ts +6 -4
- package/features/security/roles/CreateRole/events.js +8 -4
- package/features/security/roles/CreateRole/events.js.map +1 -1
- package/features/security/roles/CreateRole/feature.d.ts +4 -1
- package/features/security/roles/CreateRole/schema.d.ts +2 -20
- package/features/security/roles/CreateRole/schema.js +2 -2
- package/features/security/roles/CreateRole/schema.js.map +1 -1
- package/features/security/roles/DeleteRole/abstractions.d.ts +1 -0
- package/features/security/roles/DeleteRole/abstractions.js +1 -0
- package/features/security/roles/DeleteRole/abstractions.js.map +1 -1
- package/features/security/roles/DeleteRole/events.d.ts +6 -4
- package/features/security/roles/DeleteRole/events.js +8 -4
- package/features/security/roles/DeleteRole/events.js.map +1 -1
- package/features/security/roles/DeleteRole/feature.d.ts +4 -1
- package/features/security/roles/GetRole/abstractions.d.ts +1 -0
- package/features/security/roles/GetRole/abstractions.js +1 -0
- package/features/security/roles/GetRole/abstractions.js.map +1 -1
- package/features/security/roles/GetRole/feature.d.ts +4 -1
- package/features/security/roles/ListRoles/abstractions.d.ts +1 -0
- package/features/security/roles/ListRoles/abstractions.js +1 -0
- package/features/security/roles/ListRoles/abstractions.js.map +1 -1
- package/features/security/roles/ListRoles/feature.d.ts +4 -1
- package/features/security/roles/UpdateRole/UpdateRoleUseCase.js +1 -1
- package/features/security/roles/UpdateRole/UpdateRoleUseCase.js.map +1 -1
- package/features/security/roles/UpdateRole/abstractions.d.ts +1 -0
- package/features/security/roles/UpdateRole/abstractions.js +1 -0
- package/features/security/roles/UpdateRole/abstractions.js.map +1 -1
- package/features/security/roles/UpdateRole/events.d.ts +6 -4
- package/features/security/roles/UpdateRole/events.js +8 -4
- package/features/security/roles/UpdateRole/events.js.map +1 -1
- package/features/security/roles/UpdateRole/feature.d.ts +4 -1
- package/features/security/roles/UpdateRole/schema.d.ts +2 -18
- package/features/security/roles/UpdateRole/schema.js +2 -2
- package/features/security/roles/UpdateRole/schema.js.map +1 -1
- package/features/security/roles/feature.d.ts +4 -1
- package/features/security/roles/feature.js +2 -0
- package/features/security/roles/feature.js.map +1 -1
- package/features/security/roles/shared/RoleProvider.d.ts +13 -0
- package/features/security/roles/shared/RoleProvider.js +29 -0
- package/features/security/roles/shared/RoleProvider.js.map +1 -0
- package/features/security/roles/shared/RolesRepository.d.ts +3 -1
- package/features/security/roles/shared/RolesRepository.js +19 -18
- package/features/security/roles/shared/RolesRepository.js.map +1 -1
- package/features/security/roles/shared/abstractions.d.ts +19 -0
- package/features/security/roles/shared/abstractions.js +3 -0
- package/features/security/roles/shared/abstractions.js.map +1 -1
- package/features/security/shared/abstractions.d.ts +5 -14
- package/features/security/shared/abstractions.js +3 -16
- package/features/security/shared/abstractions.js.map +1 -1
- package/features/security/teams/CreateTeam/CreateTeamUseCase.d.ts +1 -3
- package/features/security/teams/CreateTeam/CreateTeamUseCase.js +3 -7
- package/features/security/teams/CreateTeam/CreateTeamUseCase.js.map +1 -1
- package/features/security/teams/CreateTeam/abstractions.d.ts +1 -0
- package/features/security/teams/CreateTeam/abstractions.js +1 -0
- package/features/security/teams/CreateTeam/abstractions.js.map +1 -1
- package/features/security/teams/CreateTeam/events.d.ts +6 -4
- package/features/security/teams/CreateTeam/events.js +8 -4
- package/features/security/teams/CreateTeam/events.js.map +1 -1
- package/features/security/teams/CreateTeam/feature.d.ts +4 -1
- package/features/security/teams/CreateTeam/index.d.ts +1 -1
- package/features/security/teams/CreateTeam/index.js +1 -1
- package/features/security/teams/CreateTeam/index.js.map +1 -1
- package/features/security/teams/CreateTeam/schema.d.ts +2 -12
- package/features/security/teams/DeleteTeam/abstractions.d.ts +1 -0
- package/features/security/teams/DeleteTeam/abstractions.js +1 -0
- package/features/security/teams/DeleteTeam/abstractions.js.map +1 -1
- package/features/security/teams/DeleteTeam/events.d.ts +6 -4
- package/features/security/teams/DeleteTeam/events.js +8 -4
- package/features/security/teams/DeleteTeam/events.js.map +1 -1
- package/features/security/teams/DeleteTeam/feature.d.ts +4 -1
- package/features/security/teams/GetTeam/abstractions.d.ts +1 -0
- package/features/security/teams/GetTeam/abstractions.js +1 -0
- package/features/security/teams/GetTeam/abstractions.js.map +1 -1
- package/features/security/teams/GetTeam/feature.d.ts +4 -1
- package/features/security/teams/ListTeams/abstractions.d.ts +1 -0
- package/features/security/teams/ListTeams/abstractions.js +1 -0
- package/features/security/teams/ListTeams/abstractions.js.map +1 -1
- package/features/security/teams/ListTeams/feature.d.ts +4 -1
- package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js +1 -1
- package/features/security/teams/UpdateTeam/UpdateTeamUseCase.js.map +1 -1
- package/features/security/teams/UpdateTeam/abstractions.d.ts +1 -0
- package/features/security/teams/UpdateTeam/abstractions.js +1 -0
- package/features/security/teams/UpdateTeam/abstractions.js.map +1 -1
- package/features/security/teams/UpdateTeam/events.d.ts +6 -4
- package/features/security/teams/UpdateTeam/events.js +8 -4
- package/features/security/teams/UpdateTeam/events.js.map +1 -1
- package/features/security/teams/UpdateTeam/feature.d.ts +4 -1
- package/features/security/teams/UpdateTeam/schema.d.ts +2 -10
- package/features/security/teams/feature.d.ts +4 -1
- package/features/security/teams/feature.js +6 -0
- package/features/security/teams/feature.js.map +1 -1
- package/features/security/teams/shared/TeamProvider.d.ts +13 -0
- package/features/security/teams/shared/TeamProvider.js +29 -0
- package/features/security/teams/shared/TeamProvider.js.map +1 -0
- package/features/security/teams/shared/TeamsRepository.js +20 -18
- package/features/security/teams/shared/TeamsRepository.js.map +1 -1
- package/features/security/teams/shared/abstractions.d.ts +18 -0
- package/features/security/teams/shared/abstractions.js +3 -0
- package/features/security/teams/shared/abstractions.js.map +1 -1
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.d.ts +17 -0
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js +76 -0
- package/features/security/teams/shared/decorators/TeamsRepositoryCachingDecorator.js.map +1 -0
- package/features/security/utils/verifyJwtUsingJwk.d.ts +2 -4
- package/features/security/utils/verifyJwtUsingJwk.js +1 -1
- package/features/security/utils/verifyJwtUsingJwk.js.map +1 -1
- package/features/system/InstallSystem/abstractions.d.ts +4 -5
- package/features/system/InstallSystem/abstractions.js +3 -4
- package/features/system/InstallSystem/abstractions.js.map +1 -1
- package/features/system/InstallSystem/events.js +2 -2
- package/features/system/InstallSystem/events.js.map +1 -1
- package/features/system/InstallSystem/feature.d.ts +5 -1
- package/features/system/InstallSystem/index.d.ts +1 -1
- package/features/system/InstallSystem/index.js +1 -1
- package/features/system/InstallSystem/index.js.map +1 -1
- package/features/system/SystemFeature.d.ts +4 -1
- package/features/task/TaskController/abstractions.d.ts +1 -0
- package/features/task/TaskController/abstractions.js +1 -0
- package/features/task/TaskController/abstractions.js.map +1 -1
- package/features/task/TaskDefinition/abstractions.d.ts +7 -1
- package/features/task/TaskDefinition/abstractions.js +1 -0
- package/features/task/TaskDefinition/abstractions.js.map +1 -1
- package/features/task/TaskService/abstractions.d.ts +1 -0
- package/features/task/TaskService/abstractions.js +1 -0
- package/features/task/TaskService/abstractions.js.map +1 -1
- package/features/tenancy/CreateTenant/abstractions.d.ts +9 -7
- package/features/tenancy/CreateTenant/abstractions.js +7 -5
- package/features/tenancy/CreateTenant/abstractions.js.map +1 -1
- package/features/tenancy/CreateTenant/events.js +3 -3
- package/features/tenancy/CreateTenant/events.js.map +1 -1
- package/features/tenancy/CreateTenant/feature.d.ts +5 -1
- package/features/tenancy/CreateTenant/index.d.ts +1 -1
- package/features/tenancy/CreateTenant/index.js +1 -1
- package/features/tenancy/CreateTenant/index.js.map +1 -1
- package/features/tenancy/DeleteTenant/abstractions.d.ts +9 -4
- package/features/tenancy/DeleteTenant/abstractions.js +7 -2
- package/features/tenancy/DeleteTenant/abstractions.js.map +1 -1
- package/features/tenancy/DeleteTenant/events.js +3 -3
- package/features/tenancy/DeleteTenant/events.js.map +1 -1
- package/features/tenancy/DeleteTenant/feature.d.ts +5 -1
- package/features/tenancy/DeleteTenant/index.d.ts +1 -1
- package/features/tenancy/DeleteTenant/index.js +1 -1
- package/features/tenancy/DeleteTenant/index.js.map +1 -1
- package/features/tenancy/GetRootTenant/feature.d.ts +5 -1
- package/features/tenancy/GetTenantById/abstractions.d.ts +3 -0
- package/features/tenancy/GetTenantById/abstractions.js +3 -9
- package/features/tenancy/GetTenantById/abstractions.js.map +1 -1
- package/features/tenancy/GetTenantById/feature.d.ts +5 -1
- package/features/tenancy/InstallTenant/abstractions.d.ts +5 -11
- package/features/tenancy/InstallTenant/abstractions.js +4 -13
- package/features/tenancy/InstallTenant/abstractions.js.map +1 -1
- package/features/tenancy/InstallTenant/events.js +2 -2
- package/features/tenancy/InstallTenant/events.js.map +1 -1
- package/features/tenancy/InstallTenant/feature.d.ts +5 -1
- package/features/tenancy/InstallTenant/index.d.ts +1 -1
- package/features/tenancy/InstallTenant/index.js +1 -1
- package/features/tenancy/InstallTenant/index.js.map +1 -1
- package/features/tenancy/ListTenants/feature.d.ts +5 -1
- package/features/tenancy/TenancyFeature.d.ts +4 -1
- package/features/tenancy/TenancyFeature.js.map +1 -1
- package/features/tenancy/TenantContext/abstractions.d.ts +1 -0
- package/features/tenancy/TenantContext/abstractions.js +1 -0
- package/features/tenancy/TenantContext/abstractions.js.map +1 -1
- package/features/tenancy/TenantContext/feature.d.ts +4 -1
- package/features/tenancy/UpdateTenant/abstractions.d.ts +9 -4
- package/features/tenancy/UpdateTenant/abstractions.js +7 -2
- package/features/tenancy/UpdateTenant/abstractions.js.map +1 -1
- package/features/tenancy/UpdateTenant/events.js +3 -3
- package/features/tenancy/UpdateTenant/events.js.map +1 -1
- package/features/tenancy/UpdateTenant/feature.d.ts +5 -1
- package/features/tenancy/UpdateTenant/index.d.ts +1 -1
- package/features/tenancy/UpdateTenant/index.js +1 -1
- package/features/tenancy/UpdateTenant/index.js.map +1 -1
- package/features/users/AdminUsersFeature.d.ts +4 -1
- package/features/users/AdminUsersFeature.js.map +1 -1
- package/features/users/CreateUser/CreateUserUseCase.js +1 -1
- package/features/users/CreateUser/CreateUserUseCase.js.map +1 -1
- package/features/users/CreateUser/abstractions.d.ts +1 -0
- package/features/users/CreateUser/abstractions.js +1 -1
- package/features/users/CreateUser/abstractions.js.map +1 -1
- package/features/users/CreateUser/events.d.ts +6 -4
- package/features/users/CreateUser/events.js +8 -4
- package/features/users/CreateUser/events.js.map +1 -1
- package/features/users/CreateUser/feature.d.ts +4 -1
- package/features/users/CreateUser/schema.d.ts +4 -36
- package/features/users/DeleteUser/abstractions.d.ts +1 -0
- package/features/users/DeleteUser/abstractions.js +1 -1
- package/features/users/DeleteUser/abstractions.js.map +1 -1
- package/features/users/DeleteUser/events.d.ts +6 -4
- package/features/users/DeleteUser/events.js +8 -4
- package/features/users/DeleteUser/events.js.map +1 -1
- package/features/users/DeleteUser/feature.d.ts +4 -1
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.d.ts +3 -3
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js +2 -2
- package/features/users/ExternalIdpUserSync/ExternalIdpUserSyncHandler.js.map +1 -1
- package/features/users/ExternalIdpUserSync/feature.d.ts +4 -1
- package/features/users/GetIdentityProfile/feature.d.ts +4 -1
- package/features/users/GetUser/abstractions.d.ts +1 -0
- package/features/users/GetUser/abstractions.js +1 -1
- package/features/users/GetUser/abstractions.js.map +1 -1
- package/features/users/GetUser/feature.d.ts +4 -1
- package/features/users/ListUserTeams/abstractions.d.ts +1 -0
- package/features/users/ListUserTeams/abstractions.js +1 -1
- package/features/users/ListUserTeams/abstractions.js.map +1 -1
- package/features/users/ListUserTeams/feature.d.ts +4 -1
- package/features/users/ListUsers/abstractions.d.ts +1 -0
- package/features/users/ListUsers/abstractions.js +1 -1
- package/features/users/ListUsers/abstractions.js.map +1 -1
- package/features/users/ListUsers/feature.d.ts +4 -1
- package/features/users/UpdateUser/UpdateUserUseCase.js +1 -1
- package/features/users/UpdateUser/UpdateUserUseCase.js.map +1 -1
- package/features/users/UpdateUser/abstractions.d.ts +1 -0
- package/features/users/UpdateUser/abstractions.js +1 -1
- package/features/users/UpdateUser/abstractions.js.map +1 -1
- package/features/users/UpdateUser/events.d.ts +6 -4
- package/features/users/UpdateUser/events.js +8 -4
- package/features/users/UpdateUser/events.js.map +1 -1
- package/features/users/UpdateUser/feature.d.ts +4 -1
- package/features/users/UpdateUser/schema.d.ts +4 -30
- package/features/users/shared/abstractions.d.ts +1 -0
- package/features/users/shared/abstractions.js +1 -1
- package/features/users/shared/abstractions.js.map +1 -1
- package/features/wcp/WcpContext/WcpContext.d.ts +3 -0
- package/features/wcp/WcpContext/WcpContext.js +9 -0
- package/features/wcp/WcpContext/WcpContext.js.map +1 -1
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.d.ts +15 -0
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js +24 -3
- package/features/wcp/WcpContext/decorators/WcpContextWithFeatureFlagsDecorator.js.map +1 -1
- package/features/wcp/WcpContext/feature.d.ts +5 -1
- package/features/wcp/WcpFeature.d.ts +4 -1
- package/features/wcp/WcpFeature.js.map +1 -1
- package/graphql/security/NotAuthorizedResponse.d.ts +1 -0
- package/graphql/security/NotAuthorizedResponse.js +1 -0
- package/graphql/security/NotAuthorizedResponse.js.map +1 -1
- package/graphql/wcp/graphql.js +1 -0
- package/graphql/wcp/graphql.js.map +1 -1
- package/idp/abstractions.d.ts +4 -0
- package/idp/abstractions.js +4 -0
- package/idp/abstractions.js.map +1 -1
- package/idp/feature.d.ts +4 -1
- package/legacy/security/createSecurityContext.js +0 -11
- package/legacy/security/createSecurityContext.js.map +1 -1
- package/legacy/security/plugins/authenticateUsingHttpHeader.d.ts +1 -1
- package/legacy/wcp/LegacyWcpContext.d.ts +3 -0
- package/legacy/wcp/LegacyWcpContext.js +9 -0
- package/legacy/wcp/LegacyWcpContext.js.map +1 -1
- package/legacy/wcp/context.d.ts +1 -3
- package/legacy/wcp/context.js +4 -2
- package/legacy/wcp/context.js.map +1 -1
- package/models/base/BaseModel.js +2 -2
- package/models/base/BaseModel.js.map +1 -1
- package/models/base/ModelBuilder.d.ts +2 -2
- package/models/base/ModelBuilder.js +21 -2
- package/models/base/ModelBuilder.js.map +1 -1
- package/models/cms/FieldBuilder.d.ts +3 -2
- package/models/cms/FieldBuilder.js +12 -17
- package/models/cms/FieldBuilder.js.map +1 -1
- package/models/cms/FieldBuilderRegistry.d.ts +1 -1
- package/models/cms/FieldBuilderRegistry.js.map +1 -1
- package/models/cms/FieldDefinitionsBuilder.d.ts +1 -0
- package/models/cms/FieldDefinitionsBuilder.js +15 -17
- package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
- package/models/cms/PrivateCmsModelBuilder.js +1 -1
- package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
- package/models/cms/abstractions.d.ts +1 -1
- package/models/cms/abstractions.js.map +1 -1
- package/models/cms/fieldsBuilder.md +4 -2
- package/models/simple/Page/abstractions.d.ts +1 -11
- package/package.json +27 -68
- package/types/security.d.ts +13 -10
- package/types/security.js.map +1 -1
- package/features/security/shared/abstractions.ts.bak +0 -52
- package/legacy/security/plugins/SecurityRolePlugin.d.ts +0 -16
- package/legacy/security/plugins/SecurityRolePlugin.js +0 -33
- package/legacy/security/plugins/SecurityRolePlugin.js.map +0 -1
- package/legacy/security/plugins/SecurityTeamPlugin.d.ts +0 -16
- package/legacy/security/plugins/SecurityTeamPlugin.js +0 -33
- package/legacy/security/plugins/SecurityTeamPlugin.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["mdbid","Result","EventPublisher","CreateApiKeyUseCase","CreateApiKeyUseCaseAbstraction","ApiKeysRepository","IdentityContext","createApiKeyInputSchema","ApiKeyBeforeCreateEvent","ApiKeyAfterCreateEvent","generateToken","ApiKeyValidationError","ApiKeyNotAuthorizedError","CreateApiKeyUseCaseImpl","constructor","identityContext","eventPublisher","repository","execute","input","hasPermission","getPermission","fail","validation","safeParse","success","error","
|
|
1
|
+
{"version":3,"names":["mdbid","Result","EventPublisher","CreateApiKeyUseCase","CreateApiKeyUseCaseAbstraction","ApiKeysRepository","IdentityContext","createApiKeyInputSchema","ApiKeyBeforeCreateEvent","ApiKeyAfterCreateEvent","generateToken","ApiKeyValidationError","ApiKeyNotAuthorizedError","CreateApiKeyUseCaseImpl","constructor","identityContext","eventPublisher","repository","execute","input","hasPermission","getPermission","fail","validation","safeParse","success","error","issues","message","token","identity","getIdentity","data","apiKey","id","name","slug","description","permissions","createdOn","Date","toISOString","createdBy","displayName","type","publish","result","create","isFail","ok","createImplementation","implementation","dependencies"],"sources":["CreateApiKeyUseCase.ts"],"sourcesContent":["import { mdbid } from \"@webiny/utils\";\nimport { Result } from \"@webiny/feature/api\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { CreateApiKeyUseCase as CreateApiKeyUseCaseAbstraction } from \"./abstractions.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { IdentityContext } from \"../../IdentityContext/abstractions.js\";\nimport { createApiKeyInputSchema } from \"../shared/schemas.js\";\nimport { ApiKeyBeforeCreateEvent, ApiKeyAfterCreateEvent } from \"./events.js\";\nimport type { ApiKey, CreateApiKeyInput } from \"../shared/types.js\";\nimport type { ApiKeyPermission } from \"~/types/security.js\";\nimport { generateToken } from \"../shared/generateToken.js\";\nimport { ApiKeyValidationError, ApiKeyNotAuthorizedError } from \"../shared/errors.js\";\n\nclass CreateApiKeyUseCaseImpl implements CreateApiKeyUseCaseAbstraction.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: ApiKeysRepository.Interface\n ) {}\n\n async execute(\n input: CreateApiKeyInput\n ): Promise<Result<ApiKey, CreateApiKeyUseCaseAbstraction.Error>> {\n const hasPermission =\n await this.identityContext.getPermission<ApiKeyPermission>(\"security.apiKey\");\n\n if (!hasPermission) {\n return Result.fail(new ApiKeyNotAuthorizedError());\n }\n\n const validation = createApiKeyInputSchema.safeParse(input);\n if (!validation.success) {\n return Result.fail(new ApiKeyValidationError(validation.error.issues[0].message));\n }\n\n const token = generateToken();\n const identity = this.identityContext.getIdentity();\n const data = validation.data;\n\n const apiKey: ApiKey = {\n id: mdbid(),\n name: data.name,\n slug: data.slug,\n description: data.description,\n token,\n permissions: data.permissions,\n createdOn: new Date().toISOString(),\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n }\n };\n\n await this.eventPublisher.publish(\n new ApiKeyBeforeCreateEvent({ apiKey, input: validation.data })\n );\n\n const result = await this.repository.create(apiKey);\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n await this.eventPublisher.publish(\n new ApiKeyAfterCreateEvent({ apiKey, input: validation.data })\n );\n\n return Result.ok(apiKey);\n }\n}\n\nexport const CreateApiKeyUseCase = CreateApiKeyUseCaseAbstraction.createImplementation({\n implementation: CreateApiKeyUseCaseImpl,\n dependencies: [IdentityContext, EventPublisher, ApiKeysRepository]\n});\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,eAAe;AACrC,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,cAAc;AACvB,SAASC,mBAAmB,IAAIC,8BAA8B;AAC9D,SAASC,iBAAiB;AAC1B,SAASC,eAAe;AACxB,SAASC,uBAAuB;AAChC,SAASC,uBAAuB,EAAEC,sBAAsB;AAGxD,SAASC,aAAa;AACtB,SAASC,qBAAqB,EAAEC,wBAAwB;AAExD,MAAMC,uBAAuB,CAAqD;EAC9EC,WAAWA,CACCC,eAA0C,EAC1CC,cAAwC,EACxCC,UAAuC,EACjD;IAAA,KAHUF,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAAuC,GAAvCA,UAAuC;EAChD;EAEH,MAAMC,OAAOA,CACTC,KAAwB,EACqC;IAC7D,MAAMC,aAAa,GACf,MAAM,IAAI,CAACL,eAAe,CAACM,aAAa,CAAmB,iBAAiB,CAAC;IAEjF,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOnB,MAAM,CAACqB,IAAI,CAAC,IAAIV,wBAAwB,CAAC,CAAC,CAAC;IACtD;IAEA,MAAMW,UAAU,GAAGhB,uBAAuB,CAACiB,SAAS,CAACL,KAAK,CAAC;IAC3D,IAAI,CAACI,UAAU,CAACE,OAAO,EAAE;MACrB,OAAOxB,MAAM,CAACqB,IAAI,CAAC,IAAIX,qBAAqB,CAACY,UAAU,CAACG,KAAK,CAACC,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;IACrF;IAEA,MAAMC,KAAK,GAAGnB,aAAa,CAAC,CAAC;IAC7B,MAAMoB,QAAQ,GAAG,IAAI,CAACf,eAAe,CAACgB,WAAW,CAAC,CAAC;IACnD,MAAMC,IAAI,GAAGT,UAAU,CAACS,IAAI;IAE5B,MAAMC,MAAc,GAAG;MACnBC,EAAE,EAAElC,KAAK,CAAC,CAAC;MACXmC,IAAI,EAAEH,IAAI,CAACG,IAAI;MACfC,IAAI,EAAEJ,IAAI,CAACI,IAAI;MACfC,WAAW,EAAEL,IAAI,CAACK,WAAW;MAC7BR,KAAK;MACLS,WAAW,EAAEN,IAAI,CAACM,WAAW;MAC7BC,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MACnCC,SAAS,EAAE;QACPR,EAAE,EAAEJ,QAAQ,CAACI,EAAE;QACfS,WAAW,EAAEb,QAAQ,CAACa,WAAW;QACjCC,IAAI,EAAEd,QAAQ,CAACc;MACnB;IACJ,CAAC;IAED,MAAM,IAAI,CAAC5B,cAAc,CAAC6B,OAAO,CAC7B,IAAIrC,uBAAuB,CAAC;MAAEyB,MAAM;MAAEd,KAAK,EAAEI,UAAU,CAACS;IAAK,CAAC,CAClE,CAAC;IAED,MAAMc,MAAM,GAAG,MAAM,IAAI,CAAC7B,UAAU,CAAC8B,MAAM,CAACd,MAAM,CAAC;IAEnD,IAAIa,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;MACjB,OAAO/C,MAAM,CAACqB,IAAI,CAACwB,MAAM,CAACpB,KAAK,CAAC;IACpC;IAEA,MAAM,IAAI,CAACV,cAAc,CAAC6B,OAAO,CAC7B,IAAIpC,sBAAsB,CAAC;MAAEwB,MAAM;MAAEd,KAAK,EAAEI,UAAU,CAACS;IAAK,CAAC,CACjE,CAAC;IAED,OAAO/B,MAAM,CAACgD,EAAE,CAAChB,MAAM,CAAC;EAC5B;AACJ;AAEA,OAAO,MAAM9B,mBAAmB,GAAGC,8BAA8B,CAAC8C,oBAAoB,CAAC;EACnFC,cAAc,EAAEtC,uBAAuB;EACvCuC,YAAY,EAAE,CAAC9C,eAAe,EAAEJ,cAAc,EAAEG,iBAAiB;AACrE,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,6 +10,7 @@ type CreateApiKeyError = ICreateApiKeyErrors[keyof ICreateApiKeyErrors] | ApiKey
|
|
|
10
10
|
export interface ICreateApiKey {
|
|
11
11
|
execute(input: CreateApiKeyInput): Promise<Result<ApiKey, CreateApiKeyError>>;
|
|
12
12
|
}
|
|
13
|
+
/** Create a new API key. */
|
|
13
14
|
export declare const CreateApiKeyUseCase: import("@webiny/di").Abstraction<ICreateApiKey>;
|
|
14
15
|
export declare namespace CreateApiKeyUseCase {
|
|
15
16
|
type Interface = ICreateApiKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","CreateApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey, CreateApiKeyInput } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface ICreateApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype CreateApiKeyError = ICreateApiKeyErrors[keyof ICreateApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface ICreateApiKey {\n execute(input: CreateApiKeyInput): Promise<Result<ApiKey, CreateApiKeyError>>;\n}\n\nexport const CreateApiKeyUseCase = createAbstraction<ICreateApiKey>(\"CreateApiKeyUseCase\");\n\nexport namespace CreateApiKeyUseCase {\n export type Interface = ICreateApiKey;\n export type Error = CreateApiKeyError;\n}\n\nexport interface ApiKeyBeforeCreatePayload {\n apiKey: ApiKey;\n input: CreateApiKeyInput;\n}\n\nexport interface ApiKeyAfterCreatePayload {\n apiKey: ApiKey;\n input: CreateApiKeyInput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","CreateApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey, CreateApiKeyInput } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface ICreateApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype CreateApiKeyError = ICreateApiKeyErrors[keyof ICreateApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface ICreateApiKey {\n execute(input: CreateApiKeyInput): Promise<Result<ApiKey, CreateApiKeyError>>;\n}\n\n/** Create a new API key. */\nexport const CreateApiKeyUseCase = createAbstraction<ICreateApiKey>(\"CreateApiKeyUseCase\");\n\nexport namespace CreateApiKeyUseCase {\n export type Interface = ICreateApiKey;\n export type Error = CreateApiKeyError;\n}\n\nexport interface ApiKeyBeforeCreatePayload {\n apiKey: ApiKey;\n input: CreateApiKeyInput;\n}\n\nexport interface ApiKeyAfterCreatePayload {\n apiKey: ApiKey;\n input: CreateApiKeyInput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD;AACA,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
@@ -5,8 +5,9 @@ export declare class ApiKeyBeforeCreateEvent extends DomainEvent<ApiKeyBeforeCre
|
|
|
5
5
|
eventType: "apiKey.beforeCreate";
|
|
6
6
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeCreateEvent>>;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
export declare
|
|
8
|
+
/** Hook into API key lifecycle before an API key is created. */
|
|
9
|
+
export declare const ApiKeyBeforeCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeCreateEvent>>;
|
|
10
|
+
export declare namespace ApiKeyBeforeCreateEventHandler {
|
|
10
11
|
type Interface = IEventHandler<ApiKeyBeforeCreateEvent>;
|
|
11
12
|
type Event = ApiKeyBeforeCreateEvent;
|
|
12
13
|
}
|
|
@@ -14,8 +15,9 @@ export declare class ApiKeyAfterCreateEvent extends DomainEvent<ApiKeyAfterCreat
|
|
|
14
15
|
eventType: "apiKey.afterCreate";
|
|
15
16
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterCreateEvent>>;
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
-
export declare
|
|
18
|
+
/** Hook into API key lifecycle after an API key is created. */
|
|
19
|
+
export declare const ApiKeyAfterCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterCreateEvent>>;
|
|
20
|
+
export declare namespace ApiKeyAfterCreateEventHandler {
|
|
19
21
|
type Interface = IEventHandler<ApiKeyAfterCreateEvent>;
|
|
20
22
|
type Event = ApiKeyAfterCreateEvent;
|
|
21
23
|
}
|
|
@@ -3,16 +3,20 @@ import { DomainEvent } from "../../../eventPublisher/index.js";
|
|
|
3
3
|
export class ApiKeyBeforeCreateEvent extends DomainEvent {
|
|
4
4
|
eventType = "apiKey.beforeCreate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return ApiKeyBeforeCreateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
/** Hook into API key lifecycle before an API key is created. */
|
|
11
|
+
export const ApiKeyBeforeCreateEventHandler = createAbstraction("ApiKeyBeforeCreateEventHandler");
|
|
10
12
|
export class ApiKeyAfterCreateEvent extends DomainEvent {
|
|
11
13
|
eventType = "apiKey.afterCreate";
|
|
12
14
|
getHandlerAbstraction() {
|
|
13
|
-
return
|
|
15
|
+
return ApiKeyAfterCreateEventHandler;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
|
-
|
|
18
|
+
|
|
19
|
+
/** Hook into API key lifecycle after an API key is created. */
|
|
20
|
+
export const ApiKeyAfterCreateEventHandler = createAbstraction("ApiKeyAfterCreateEventHandler");
|
|
17
21
|
|
|
18
22
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeCreateEvent","eventType","getHandlerAbstraction","
|
|
1
|
+
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeCreateEvent","eventType","getHandlerAbstraction","ApiKeyBeforeCreateEventHandler","ApiKeyAfterCreateEvent","ApiKeyAfterCreateEventHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"~/features/eventPublisher/index.js\";\nimport type { ApiKeyBeforeCreatePayload, ApiKeyAfterCreatePayload } from \"./abstractions.js\";\n\nexport class ApiKeyBeforeCreateEvent extends DomainEvent<ApiKeyBeforeCreatePayload> {\n eventType = \"apiKey.beforeCreate\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyBeforeCreateEventHandler;\n }\n}\n\n/** Hook into API key lifecycle before an API key is created. */\nexport const ApiKeyBeforeCreateEventHandler = createAbstraction<\n IEventHandler<ApiKeyBeforeCreateEvent>\n>(\"ApiKeyBeforeCreateEventHandler\");\n\nexport namespace ApiKeyBeforeCreateEventHandler {\n export type Interface = IEventHandler<ApiKeyBeforeCreateEvent>;\n export type Event = ApiKeyBeforeCreateEvent;\n}\n\nexport class ApiKeyAfterCreateEvent extends DomainEvent<ApiKeyAfterCreatePayload> {\n eventType = \"apiKey.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyAfterCreateEventHandler;\n }\n}\n\n/** Hook into API key lifecycle after an API key is created. */\nexport const ApiKeyAfterCreateEventHandler = createAbstraction<\n IEventHandler<ApiKeyAfterCreateEvent>\n>(\"ApiKeyAfterCreateEventHandler\");\n\nexport namespace ApiKeyAfterCreateEventHandler {\n export type Interface = IEventHandler<ApiKeyAfterCreateEvent>;\n export type Event = ApiKeyAfterCreateEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW;AAIpB,OAAO,MAAMC,uBAAuB,SAASD,WAAW,CAA4B;EAChFE,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,8BAA8B;EACzC;AACJ;;AAEA;AACA,OAAO,MAAMA,8BAA8B,GAAGL,iBAAiB,CAE7D,gCAAgC,CAAC;AAOnC,OAAO,MAAMM,sBAAsB,SAASL,WAAW,CAA2B;EAC9EE,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,6BAA6B;EACxC;AACJ;;AAEA;AACA,OAAO,MAAMA,6BAA6B,GAAGP,iBAAiB,CAE5D,+BAA+B,CAAC","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ type DeleteApiKeyError = IDeleteApiKeyErrors[keyof IDeleteApiKeyErrors] | ApiKey
|
|
|
9
9
|
export interface IDeleteApiKey {
|
|
10
10
|
execute(id: string): Promise<Result<void, DeleteApiKeyError>>;
|
|
11
11
|
}
|
|
12
|
+
/** Delete an API key. */
|
|
12
13
|
export declare const DeleteApiKeyUseCase: import("@webiny/di").Abstraction<IDeleteApiKey>;
|
|
13
14
|
export declare namespace DeleteApiKeyUseCase {
|
|
14
15
|
type Interface = IDeleteApiKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","DeleteApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError } from \"../shared/errors.js\";\nimport type { ApiKey } from \"../shared/types.js\";\n\nexport interface IDeleteApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n}\n\ntype DeleteApiKeyError = IDeleteApiKeyErrors[keyof IDeleteApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IDeleteApiKey {\n execute(id: string): Promise<Result<void, DeleteApiKeyError>>;\n}\n\nexport const DeleteApiKeyUseCase = createAbstraction<IDeleteApiKey>(\"DeleteApiKeyUseCase\");\n\nexport namespace DeleteApiKeyUseCase {\n export type Interface = IDeleteApiKey;\n export type Error = DeleteApiKeyError;\n}\n\nexport interface ApiKeyBeforeDeletePayload {\n apiKey: ApiKey;\n}\n\nexport interface ApiKeyAfterDeletePayload {\n apiKey: ApiKey;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAgBvD,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","DeleteApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError } from \"../shared/errors.js\";\nimport type { ApiKey } from \"../shared/types.js\";\n\nexport interface IDeleteApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n}\n\ntype DeleteApiKeyError = IDeleteApiKeyErrors[keyof IDeleteApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IDeleteApiKey {\n execute(id: string): Promise<Result<void, DeleteApiKeyError>>;\n}\n\n/** Delete an API key. */\nexport const DeleteApiKeyUseCase = createAbstraction<IDeleteApiKey>(\"DeleteApiKeyUseCase\");\n\nexport namespace DeleteApiKeyUseCase {\n export type Interface = IDeleteApiKey;\n export type Error = DeleteApiKeyError;\n}\n\nexport interface ApiKeyBeforeDeletePayload {\n apiKey: ApiKey;\n}\n\nexport interface ApiKeyAfterDeletePayload {\n apiKey: ApiKey;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAgBvD;AACA,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
@@ -5,8 +5,9 @@ export declare class ApiKeyBeforeDeleteEvent extends DomainEvent<ApiKeyBeforeDel
|
|
|
5
5
|
eventType: "apiKey.beforeDelete";
|
|
6
6
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeDeleteEvent>>;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
export declare
|
|
8
|
+
/** Hook into API key lifecycle before an API key is deleted. */
|
|
9
|
+
export declare const ApiKeyBeforeDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeDeleteEvent>>;
|
|
10
|
+
export declare namespace ApiKeyBeforeDeleteEventHandler {
|
|
10
11
|
type Interface = IEventHandler<ApiKeyBeforeDeleteEvent>;
|
|
11
12
|
type Event = ApiKeyBeforeDeleteEvent;
|
|
12
13
|
}
|
|
@@ -14,8 +15,9 @@ export declare class ApiKeyAfterDeleteEvent extends DomainEvent<ApiKeyAfterDelet
|
|
|
14
15
|
eventType: "apiKey.afterDelete";
|
|
15
16
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterDeleteEvent>>;
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
-
export declare
|
|
18
|
+
/** Hook into API key lifecycle after an API key is deleted. */
|
|
19
|
+
export declare const ApiKeyAfterDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterDeleteEvent>>;
|
|
20
|
+
export declare namespace ApiKeyAfterDeleteEventHandler {
|
|
19
21
|
type Interface = IEventHandler<ApiKeyAfterDeleteEvent>;
|
|
20
22
|
type Event = ApiKeyAfterDeleteEvent;
|
|
21
23
|
}
|
|
@@ -3,16 +3,20 @@ import { DomainEvent } from "../../../eventPublisher/index.js";
|
|
|
3
3
|
export class ApiKeyBeforeDeleteEvent extends DomainEvent {
|
|
4
4
|
eventType = "apiKey.beforeDelete";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return ApiKeyBeforeDeleteEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
/** Hook into API key lifecycle before an API key is deleted. */
|
|
11
|
+
export const ApiKeyBeforeDeleteEventHandler = createAbstraction("ApiKeyBeforeDeleteEventHandler");
|
|
10
12
|
export class ApiKeyAfterDeleteEvent extends DomainEvent {
|
|
11
13
|
eventType = "apiKey.afterDelete";
|
|
12
14
|
getHandlerAbstraction() {
|
|
13
|
-
return
|
|
15
|
+
return ApiKeyAfterDeleteEventHandler;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
|
-
|
|
18
|
+
|
|
19
|
+
/** Hook into API key lifecycle after an API key is deleted. */
|
|
20
|
+
export const ApiKeyAfterDeleteEventHandler = createAbstraction("ApiKeyAfterDeleteEventHandler");
|
|
17
21
|
|
|
18
22
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeDeleteEvent","eventType","getHandlerAbstraction","
|
|
1
|
+
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeDeleteEvent","eventType","getHandlerAbstraction","ApiKeyBeforeDeleteEventHandler","ApiKeyAfterDeleteEvent","ApiKeyAfterDeleteEventHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"~/features/eventPublisher/index.js\";\nimport type { ApiKeyBeforeDeletePayload, ApiKeyAfterDeletePayload } from \"./abstractions.js\";\n\nexport class ApiKeyBeforeDeleteEvent extends DomainEvent<ApiKeyBeforeDeletePayload> {\n eventType = \"apiKey.beforeDelete\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyBeforeDeleteEventHandler;\n }\n}\n\n/** Hook into API key lifecycle before an API key is deleted. */\nexport const ApiKeyBeforeDeleteEventHandler = createAbstraction<\n IEventHandler<ApiKeyBeforeDeleteEvent>\n>(\"ApiKeyBeforeDeleteEventHandler\");\n\nexport namespace ApiKeyBeforeDeleteEventHandler {\n export type Interface = IEventHandler<ApiKeyBeforeDeleteEvent>;\n export type Event = ApiKeyBeforeDeleteEvent;\n}\n\nexport class ApiKeyAfterDeleteEvent extends DomainEvent<ApiKeyAfterDeletePayload> {\n eventType = \"apiKey.afterDelete\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyAfterDeleteEventHandler;\n }\n}\n\n/** Hook into API key lifecycle after an API key is deleted. */\nexport const ApiKeyAfterDeleteEventHandler = createAbstraction<\n IEventHandler<ApiKeyAfterDeleteEvent>\n>(\"ApiKeyAfterDeleteEventHandler\");\n\nexport namespace ApiKeyAfterDeleteEventHandler {\n export type Interface = IEventHandler<ApiKeyAfterDeleteEvent>;\n export type Event = ApiKeyAfterDeleteEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW;AAIpB,OAAO,MAAMC,uBAAuB,SAASD,WAAW,CAA4B;EAChFE,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,8BAA8B;EACzC;AACJ;;AAEA;AACA,OAAO,MAAMA,8BAA8B,GAAGL,iBAAiB,CAE7D,gCAAgC,CAAC;AAOnC,OAAO,MAAMM,sBAAsB,SAASL,WAAW,CAA2B;EAC9EE,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,6BAA6B;EACxC;AACJ;;AAEA;AACA,OAAO,MAAMA,6BAA6B,GAAGP,iBAAiB,CAE5D,+BAA+B,CAAC","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ type GetApiKeyError = IGetApiKeyErrors[keyof IGetApiKeyErrors] | ApiKeysReposito
|
|
|
9
9
|
export interface IGetApiKey {
|
|
10
10
|
execute(id: string): Promise<Result<ApiKey | null, GetApiKeyError>>;
|
|
11
11
|
}
|
|
12
|
+
/** Retrieve an API key by ID. */
|
|
12
13
|
export declare const GetApiKeyUseCase: import("@webiny/di").Abstraction<IGetApiKey>;
|
|
13
14
|
export declare namespace GetApiKeyUseCase {
|
|
14
15
|
type Interface = IGetApiKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","GetApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport type { ApiKeyNotAuthorizedError } from \"~/features/security/apiKeys/shared/errors.js\";\n\nexport interface IGetApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n}\n\ntype GetApiKeyError = IGetApiKeyErrors[keyof IGetApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IGetApiKey {\n execute(id: string): Promise<Result<ApiKey | null, GetApiKeyError>>;\n}\n\nexport const GetApiKeyUseCase = createAbstraction<IGetApiKey>(\"GetApiKeyUseCase\");\n\nexport namespace GetApiKeyUseCase {\n export type Interface = IGetApiKey;\n export type Error = GetApiKeyError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAgBvD,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAAa,kBAAkB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","GetApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport type { ApiKeyNotAuthorizedError } from \"~/features/security/apiKeys/shared/errors.js\";\n\nexport interface IGetApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n}\n\ntype GetApiKeyError = IGetApiKeyErrors[keyof IGetApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IGetApiKey {\n execute(id: string): Promise<Result<ApiKey | null, GetApiKeyError>>;\n}\n\n/** Retrieve an API key by ID. */\nexport const GetApiKeyUseCase = createAbstraction<IGetApiKey>(\"GetApiKeyUseCase\");\n\nexport namespace GetApiKeyUseCase {\n export type Interface = IGetApiKey;\n export type Error = GetApiKeyError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAgBvD;AACA,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAAa,kBAAkB,CAAC","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ type GetApiKeyBySlugError = IGetApiKeyBySlugErrors[keyof IGetApiKeyBySlugErrors]
|
|
|
7
7
|
export interface IGetApiKeyBySlug {
|
|
8
8
|
execute(slug: string): Promise<Result<ApiKey | null, GetApiKeyBySlugError>>;
|
|
9
9
|
}
|
|
10
|
+
/** Retrieve an API key by its slug. */
|
|
10
11
|
export declare const GetApiKeyBySlugUseCase: import("@webiny/di").Abstraction<IGetApiKeyBySlug>;
|
|
11
12
|
export declare namespace GetApiKeyBySlugUseCase {
|
|
12
13
|
type Interface = IGetApiKeyBySlug;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","GetApiKeyBySlugUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\n\nexport interface IGetApiKeyBySlugErrors {\n // No use-case specific errors - only repository errors can occur\n}\n\ntype GetApiKeyBySlugError =\n | IGetApiKeyBySlugErrors[keyof IGetApiKeyBySlugErrors]\n | ApiKeysRepository.Error;\n\nexport interface IGetApiKeyBySlug {\n execute(slug: string): Promise<Result<ApiKey | null, GetApiKeyBySlugError>>;\n}\n\nexport const GetApiKeyBySlugUseCase = createAbstraction<IGetApiKeyBySlug>(\"GetApiKeyBySlugUseCase\");\n\nexport namespace GetApiKeyBySlugUseCase {\n export type Interface = IGetApiKeyBySlug;\n export type Error = GetApiKeyBySlugError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD,OAAO,MAAMC,sBAAsB,GAAGD,iBAAiB,CAAmB,wBAAwB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","GetApiKeyBySlugUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\n\nexport interface IGetApiKeyBySlugErrors {\n // No use-case specific errors - only repository errors can occur\n}\n\ntype GetApiKeyBySlugError =\n | IGetApiKeyBySlugErrors[keyof IGetApiKeyBySlugErrors]\n | ApiKeysRepository.Error;\n\nexport interface IGetApiKeyBySlug {\n execute(slug: string): Promise<Result<ApiKey | null, GetApiKeyBySlugError>>;\n}\n\n/** Retrieve an API key by its slug. */\nexport const GetApiKeyBySlugUseCase = createAbstraction<IGetApiKeyBySlug>(\"GetApiKeyBySlugUseCase\");\n\nexport namespace GetApiKeyBySlugUseCase {\n export type Interface = IGetApiKeyBySlug;\n export type Error = GetApiKeyBySlugError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD;AACA,OAAO,MAAMC,sBAAsB,GAAGD,iBAAiB,CAAmB,wBAAwB,CAAC","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ type GetApiKeyByTokenError = IGetApiKeyByTokenErrors[keyof IGetApiKeyByTokenErro
|
|
|
7
7
|
export interface IGetApiKeyByToken {
|
|
8
8
|
execute(token: string): Promise<Result<ApiKey | null, GetApiKeyByTokenError>>;
|
|
9
9
|
}
|
|
10
|
+
/** Retrieve an API key by its token value. */
|
|
10
11
|
export declare const GetApiKeyByTokenUseCase: import("@webiny/di").Abstraction<IGetApiKeyByToken>;
|
|
11
12
|
export declare namespace GetApiKeyByTokenUseCase {
|
|
12
13
|
type Interface = IGetApiKeyByToken;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","GetApiKeyByTokenUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\n\nexport interface IGetApiKeyByTokenErrors {\n // No use-case specific errors - only repository errors can occur\n}\n\ntype GetApiKeyByTokenError =\n | IGetApiKeyByTokenErrors[keyof IGetApiKeyByTokenErrors]\n | ApiKeysRepository.Error;\n\nexport interface IGetApiKeyByToken {\n execute(token: string): Promise<Result<ApiKey | null, GetApiKeyByTokenError>>;\n}\n\nexport const GetApiKeyByTokenUseCase =\n createAbstraction<IGetApiKeyByToken>(\"GetApiKeyByTokenUseCase\");\n\nexport namespace GetApiKeyByTokenUseCase {\n export type Interface = IGetApiKeyByToken;\n export type Error = GetApiKeyByTokenError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD,OAAO,MAAMC,uBAAuB,GAChCD,iBAAiB,CAAoB,yBAAyB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","GetApiKeyByTokenUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\n\nexport interface IGetApiKeyByTokenErrors {\n // No use-case specific errors - only repository errors can occur\n}\n\ntype GetApiKeyByTokenError =\n | IGetApiKeyByTokenErrors[keyof IGetApiKeyByTokenErrors]\n | ApiKeysRepository.Error;\n\nexport interface IGetApiKeyByToken {\n execute(token: string): Promise<Result<ApiKey | null, GetApiKeyByTokenError>>;\n}\n\n/** Retrieve an API key by its token value. */\nexport const GetApiKeyByTokenUseCase =\n createAbstraction<IGetApiKeyByToken>(\"GetApiKeyByTokenUseCase\");\n\nexport namespace GetApiKeyByTokenUseCase {\n export type Interface = IGetApiKeyByToken;\n export type Error = GetApiKeyByTokenError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD;AACA,OAAO,MAAMC,uBAAuB,GAChCD,iBAAiB,CAAoB,yBAAyB,CAAC","ignoreList":[]}
|
|
@@ -16,7 +16,7 @@ class ListApiKeysUseCaseImpl {
|
|
|
16
16
|
}
|
|
17
17
|
const validation = listApiKeysInputSchema.safeParse(params);
|
|
18
18
|
if (!validation.success) {
|
|
19
|
-
return Result.fail(new ApiKeyValidationError(validation.error.
|
|
19
|
+
return Result.fail(new ApiKeyValidationError(validation.error.issues[0].message));
|
|
20
20
|
}
|
|
21
21
|
return this.repository.list(validation.data);
|
|
22
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Result","ListApiKeysUseCase","ListApiKeysUseCaseAbstraction","ApiKeysRepository","IdentityContext","listApiKeysInputSchema","ApiKeyNotAuthorizedError","ApiKeyValidationError","ListApiKeysUseCaseImpl","constructor","repository","identityContext","execute","params","hasPermission","getPermission","fail","validation","safeParse","success","error","
|
|
1
|
+
{"version":3,"names":["Result","ListApiKeysUseCase","ListApiKeysUseCaseAbstraction","ApiKeysRepository","IdentityContext","listApiKeysInputSchema","ApiKeyNotAuthorizedError","ApiKeyValidationError","ListApiKeysUseCaseImpl","constructor","repository","identityContext","execute","params","hasPermission","getPermission","fail","validation","safeParse","success","error","issues","message","list","data","createImplementation","implementation","dependencies"],"sources":["ListApiKeysUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListApiKeysUseCase as ListApiKeysUseCaseAbstraction } from \"./abstractions.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { IdentityContext } from \"../../IdentityContext/abstractions.js\";\nimport { listApiKeysInputSchema } from \"../shared/schemas.js\";\nimport type { ApiKey, ListApiKeysInput } from \"../shared/types.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nclass ListApiKeysUseCaseImpl implements ListApiKeysUseCaseAbstraction.Interface {\n private repository: ApiKeysRepository.Interface;\n private identityContext: IdentityContext.Interface;\n\n constructor(\n repository: ApiKeysRepository.Interface,\n identityContext: IdentityContext.Interface\n ) {\n this.repository = repository;\n this.identityContext = identityContext;\n }\n\n async execute(\n params: ListApiKeysInput = {}\n ): Promise<Result<ApiKey[], ListApiKeysUseCaseAbstraction.Error>> {\n const hasPermission = await this.identityContext.getPermission(\"security.apiKey\");\n if (!hasPermission) {\n return Result.fail(new ApiKeyNotAuthorizedError());\n }\n\n const validation = listApiKeysInputSchema.safeParse(params);\n if (!validation.success) {\n return Result.fail(new ApiKeyValidationError(validation.error.issues[0].message));\n }\n\n return this.repository.list(validation.data);\n }\n}\n\nexport const ListApiKeysUseCase = ListApiKeysUseCaseAbstraction.createImplementation({\n implementation: ListApiKeysUseCaseImpl,\n dependencies: [ApiKeysRepository, IdentityContext]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,IAAIC,6BAA6B;AAC5D,SAASC,iBAAiB;AAC1B,SAASC,eAAe;AACxB,SAASC,sBAAsB;AAE/B,SAASC,wBAAwB,EAAEC,qBAAqB;AAExD,MAAMC,sBAAsB,CAAoD;EAI5EC,WAAWA,CACPC,UAAuC,EACvCC,eAA0C,EAC5C;IACE,IAAI,CAACD,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,eAAe,GAAGA,eAAe;EAC1C;EAEA,MAAMC,OAAOA,CACTC,MAAwB,GAAG,CAAC,CAAC,EACiC;IAC9D,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACH,eAAe,CAACI,aAAa,CAAC,iBAAiB,CAAC;IACjF,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOd,MAAM,CAACgB,IAAI,CAAC,IAAIV,wBAAwB,CAAC,CAAC,CAAC;IACtD;IAEA,MAAMW,UAAU,GAAGZ,sBAAsB,CAACa,SAAS,CAACL,MAAM,CAAC;IAC3D,IAAI,CAACI,UAAU,CAACE,OAAO,EAAE;MACrB,OAAOnB,MAAM,CAACgB,IAAI,CAAC,IAAIT,qBAAqB,CAACU,UAAU,CAACG,KAAK,CAACC,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;IACrF;IAEA,OAAO,IAAI,CAACZ,UAAU,CAACa,IAAI,CAACN,UAAU,CAACO,IAAI,CAAC;EAChD;AACJ;AAEA,OAAO,MAAMvB,kBAAkB,GAAGC,6BAA6B,CAACuB,oBAAoB,CAAC;EACjFC,cAAc,EAAElB,sBAAsB;EACtCmB,YAAY,EAAE,CAACxB,iBAAiB,EAAEC,eAAe;AACrD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ type ListApiKeysError = IListApiKeysErrors[keyof IListApiKeysErrors] | ApiKeysRe
|
|
|
11
11
|
export interface IListApiKeys {
|
|
12
12
|
execute(params?: ListApiKeysInput): Promise<Result<ApiKey[], ListApiKeysError>>;
|
|
13
13
|
}
|
|
14
|
+
/** List all API keys. */
|
|
14
15
|
export declare const ListApiKeysUseCase: import("@webiny/di").Abstraction<IListApiKeys>;
|
|
15
16
|
export declare namespace ListApiKeysUseCase {
|
|
16
17
|
type Interface = IListApiKeys;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","ListApiKeysUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ListApiKeysInput } from \"../shared/types.js\";\nimport type { ApiKey } from \"~/types/security.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface IListApiKeysErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype ListApiKeysError = IListApiKeysErrors[keyof IListApiKeysErrors] | ApiKeysRepository.Error;\n\nexport interface IListApiKeys {\n execute(params?: ListApiKeysInput): Promise<Result<ApiKey[], ListApiKeysError>>;\n}\n\nexport const ListApiKeysUseCase = createAbstraction<IListApiKeys>(\"ListApiKeysUseCase\");\n\nexport namespace ListApiKeysUseCase {\n export type Interface = IListApiKeys;\n export type Error = ListApiKeysError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAkBvD,OAAO,MAAMC,kBAAkB,GAAGD,iBAAiB,CAAe,oBAAoB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","ListApiKeysUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ListApiKeysInput } from \"../shared/types.js\";\nimport type { ApiKey } from \"~/types/security.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface IListApiKeysErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype ListApiKeysError = IListApiKeysErrors[keyof IListApiKeysErrors] | ApiKeysRepository.Error;\n\nexport interface IListApiKeys {\n execute(params?: ListApiKeysInput): Promise<Result<ApiKey[], ListApiKeysError>>;\n}\n\n/** List all API keys. */\nexport const ListApiKeysUseCase = createAbstraction<IListApiKeys>(\"ListApiKeysUseCase\");\n\nexport namespace ListApiKeysUseCase {\n export type Interface = IListApiKeys;\n export type Error = ListApiKeysError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAkBvD;AACA,OAAO,MAAMC,kBAAkB,GAAGD,iBAAiB,CAAe,oBAAoB,CAAC","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ class UpdateApiKeyUseCaseImpl {
|
|
|
19
19
|
}
|
|
20
20
|
const validation = updateApiKeyInputSchema.safeParse(input);
|
|
21
21
|
if (!validation.success) {
|
|
22
|
-
return Result.fail(new ApiKeyValidationError(validation.error.
|
|
22
|
+
return Result.fail(new ApiKeyValidationError(validation.error.issues[0].message));
|
|
23
23
|
}
|
|
24
24
|
const existingResult = await this.repository.get(id);
|
|
25
25
|
if (existingResult.isFail()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Result","UpdateApiKeyUseCase","UpdateApiKeyUseCaseAbstraction","ApiKeysRepository","IdentityContext","EventPublisher","updateApiKeyInputSchema","ApiKeyBeforeUpdateEvent","ApiKeyAfterUpdateEvent","ApiKeyNotAuthorizedError","ApiKeyValidationError","UpdateApiKeyUseCaseImpl","constructor","repository","identityContext","eventPublisher","execute","id","input","hasPermission","getPermission","fail","validation","safeParse","success","error","
|
|
1
|
+
{"version":3,"names":["Result","UpdateApiKeyUseCase","UpdateApiKeyUseCaseAbstraction","ApiKeysRepository","IdentityContext","EventPublisher","updateApiKeyInputSchema","ApiKeyBeforeUpdateEvent","ApiKeyAfterUpdateEvent","ApiKeyNotAuthorizedError","ApiKeyValidationError","UpdateApiKeyUseCaseImpl","constructor","repository","identityContext","eventPublisher","execute","id","input","hasPermission","getPermission","fail","validation","safeParse","success","error","issues","message","existingResult","get","isFail","existingApiKey","value","updatedApiKey","data","publish","original","updated","result","update","ok","createImplementation","implementation","dependencies"],"sources":["UpdateApiKeyUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { UpdateApiKeyUseCase as UpdateApiKeyUseCaseAbstraction } from \"./abstractions.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { IdentityContext } from \"../../IdentityContext/abstractions.js\";\nimport { EventPublisher } from \"~/features/eventPublisher/index.js\";\nimport { updateApiKeyInputSchema } from \"../shared/schemas.js\";\nimport { ApiKeyBeforeUpdateEvent, ApiKeyAfterUpdateEvent } from \"./events.js\";\nimport type { ApiKey, UpdateApiKeyInput } from \"../shared/types.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nclass UpdateApiKeyUseCaseImpl implements UpdateApiKeyUseCaseAbstraction.Interface {\n private repository: ApiKeysRepository.Interface;\n private identityContext: IdentityContext.Interface;\n private eventPublisher: EventPublisher.Interface;\n\n constructor(\n repository: ApiKeysRepository.Interface,\n identityContext: IdentityContext.Interface,\n eventPublisher: EventPublisher.Interface\n ) {\n this.repository = repository;\n this.identityContext = identityContext;\n this.eventPublisher = eventPublisher;\n }\n\n async execute(\n id: string,\n input: UpdateApiKeyInput\n ): Promise<Result<ApiKey, UpdateApiKeyUseCaseAbstraction.Error>> {\n const hasPermission = await this.identityContext.getPermission(\"security.apiKey\");\n if (!hasPermission) {\n return Result.fail(new ApiKeyNotAuthorizedError());\n }\n\n const validation = updateApiKeyInputSchema.safeParse(input);\n if (!validation.success) {\n return Result.fail(new ApiKeyValidationError(validation.error.issues[0].message));\n }\n\n const existingResult = await this.repository.get(id);\n if (existingResult.isFail()) {\n return Result.fail(existingResult.error);\n }\n\n const existingApiKey = existingResult.value;\n\n const updatedApiKey: ApiKey = {\n ...existingApiKey,\n ...validation.data\n };\n\n await this.eventPublisher.publish(\n new ApiKeyBeforeUpdateEvent({\n original: existingApiKey,\n updated: updatedApiKey,\n input: validation.data\n })\n );\n\n const result = await this.repository.update(updatedApiKey);\n\n if (result.isFail()) {\n return Result.fail(result.error);\n }\n\n await this.eventPublisher.publish(\n new ApiKeyAfterUpdateEvent({\n original: existingApiKey,\n updated: updatedApiKey,\n input: validation.data\n })\n );\n\n return Result.ok(updatedApiKey);\n }\n}\n\nexport const UpdateApiKeyUseCase = UpdateApiKeyUseCaseAbstraction.createImplementation({\n implementation: UpdateApiKeyUseCaseImpl,\n dependencies: [ApiKeysRepository, IdentityContext, EventPublisher]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,mBAAmB,IAAIC,8BAA8B;AAC9D,SAASC,iBAAiB;AAC1B,SAASC,eAAe;AACxB,SAASC,cAAc;AACvB,SAASC,uBAAuB;AAChC,SAASC,uBAAuB,EAAEC,sBAAsB;AAExD,SAASC,wBAAwB,EAAEC,qBAAqB;AAExD,MAAMC,uBAAuB,CAAqD;EAK9EC,WAAWA,CACPC,UAAuC,EACvCC,eAA0C,EAC1CC,cAAwC,EAC1C;IACE,IAAI,CAACF,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,cAAc,GAAGA,cAAc;EACxC;EAEA,MAAMC,OAAOA,CACTC,EAAU,EACVC,KAAwB,EACqC;IAC7D,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACL,eAAe,CAACM,aAAa,CAAC,iBAAiB,CAAC;IACjF,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOnB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,wBAAwB,CAAC,CAAC,CAAC;IACtD;IAEA,MAAMa,UAAU,GAAGhB,uBAAuB,CAACiB,SAAS,CAACL,KAAK,CAAC;IAC3D,IAAI,CAACI,UAAU,CAACE,OAAO,EAAE;MACrB,OAAOxB,MAAM,CAACqB,IAAI,CAAC,IAAIX,qBAAqB,CAACY,UAAU,CAACG,KAAK,CAACC,MAAM,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;IACrF;IAEA,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACf,UAAU,CAACgB,GAAG,CAACZ,EAAE,CAAC;IACpD,IAAIW,cAAc,CAACE,MAAM,CAAC,CAAC,EAAE;MACzB,OAAO9B,MAAM,CAACqB,IAAI,CAACO,cAAc,CAACH,KAAK,CAAC;IAC5C;IAEA,MAAMM,cAAc,GAAGH,cAAc,CAACI,KAAK;IAE3C,MAAMC,aAAqB,GAAG;MAC1B,GAAGF,cAAc;MACjB,GAAGT,UAAU,CAACY;IAClB,CAAC;IAED,MAAM,IAAI,CAACnB,cAAc,CAACoB,OAAO,CAC7B,IAAI5B,uBAAuB,CAAC;MACxB6B,QAAQ,EAAEL,cAAc;MACxBM,OAAO,EAAEJ,aAAa;MACtBf,KAAK,EAAEI,UAAU,CAACY;IACtB,CAAC,CACL,CAAC;IAED,MAAMI,MAAM,GAAG,MAAM,IAAI,CAACzB,UAAU,CAAC0B,MAAM,CAACN,aAAa,CAAC;IAE1D,IAAIK,MAAM,CAACR,MAAM,CAAC,CAAC,EAAE;MACjB,OAAO9B,MAAM,CAACqB,IAAI,CAACiB,MAAM,CAACb,KAAK,CAAC;IACpC;IAEA,MAAM,IAAI,CAACV,cAAc,CAACoB,OAAO,CAC7B,IAAI3B,sBAAsB,CAAC;MACvB4B,QAAQ,EAAEL,cAAc;MACxBM,OAAO,EAAEJ,aAAa;MACtBf,KAAK,EAAEI,UAAU,CAACY;IACtB,CAAC,CACL,CAAC;IAED,OAAOlC,MAAM,CAACwC,EAAE,CAACP,aAAa,CAAC;EACnC;AACJ;AAEA,OAAO,MAAMhC,mBAAmB,GAAGC,8BAA8B,CAACuC,oBAAoB,CAAC;EACnFC,cAAc,EAAE/B,uBAAuB;EACvCgC,YAAY,EAAE,CAACxC,iBAAiB,EAAEC,eAAe,EAAEC,cAAc;AACrE,CAAC,CAAC","ignoreList":[]}
|
|
@@ -10,6 +10,7 @@ type UpdateApiKeyError = IUpdateApiKeyErrors[keyof IUpdateApiKeyErrors] | ApiKey
|
|
|
10
10
|
export interface IUpdateApiKey {
|
|
11
11
|
execute(id: string, input: UpdateApiKeyInput): Promise<Result<ApiKey, UpdateApiKeyError>>;
|
|
12
12
|
}
|
|
13
|
+
/** Update an existing API key. */
|
|
13
14
|
export declare const UpdateApiKeyUseCase: import("@webiny/di").Abstraction<IUpdateApiKey>;
|
|
14
15
|
export declare namespace UpdateApiKeyUseCase {
|
|
15
16
|
type Interface = IUpdateApiKey;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","UpdateApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey, UpdateApiKeyInput } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface IUpdateApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype UpdateApiKeyError = IUpdateApiKeyErrors[keyof IUpdateApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IUpdateApiKey {\n execute(id: string, input: UpdateApiKeyInput): Promise<Result<ApiKey, UpdateApiKeyError>>;\n}\n\nexport const UpdateApiKeyUseCase = createAbstraction<IUpdateApiKey>(\"UpdateApiKeyUseCase\");\n\nexport namespace UpdateApiKeyUseCase {\n export type Interface = IUpdateApiKey;\n export type Error = UpdateApiKeyError;\n}\n\nexport interface ApiKeyBeforeUpdatePayload {\n original: ApiKey;\n updated: ApiKey;\n input: UpdateApiKeyInput;\n}\n\nexport interface ApiKeyAfterUpdatePayload {\n original: ApiKey;\n updated: ApiKey;\n input: UpdateApiKeyInput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","UpdateApiKeyUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { Result } from \"@webiny/feature/api\";\nimport type { ApiKey, UpdateApiKeyInput } from \"../shared/types.js\";\nimport { ApiKeysRepository } from \"../shared/abstractions.js\";\nimport { ApiKeyNotAuthorizedError, ApiKeyValidationError } from \"../shared/errors.js\";\n\nexport interface IUpdateApiKeyErrors {\n notAuthorized: ApiKeyNotAuthorizedError;\n validation: ApiKeyValidationError;\n}\n\ntype UpdateApiKeyError = IUpdateApiKeyErrors[keyof IUpdateApiKeyErrors] | ApiKeysRepository.Error;\n\nexport interface IUpdateApiKey {\n execute(id: string, input: UpdateApiKeyInput): Promise<Result<ApiKey, UpdateApiKeyError>>;\n}\n\n/** Update an existing API key. */\nexport const UpdateApiKeyUseCase = createAbstraction<IUpdateApiKey>(\"UpdateApiKeyUseCase\");\n\nexport namespace UpdateApiKeyUseCase {\n export type Interface = IUpdateApiKey;\n export type Error = UpdateApiKeyError;\n}\n\nexport interface ApiKeyBeforeUpdatePayload {\n original: ApiKey;\n updated: ApiKey;\n input: UpdateApiKeyInput;\n}\n\nexport interface ApiKeyAfterUpdatePayload {\n original: ApiKey;\n updated: ApiKey;\n input: UpdateApiKeyInput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAiBvD;AACA,OAAO,MAAMC,mBAAmB,GAAGD,iBAAiB,CAAgB,qBAAqB,CAAC","ignoreList":[]}
|
|
@@ -5,8 +5,9 @@ export declare class ApiKeyBeforeUpdateEvent extends DomainEvent<ApiKeyBeforeUpd
|
|
|
5
5
|
eventType: "apiKey.beforeUpdate";
|
|
6
6
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeUpdateEvent>>;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
export declare
|
|
8
|
+
/** Hook into API key lifecycle before an API key is updated. */
|
|
9
|
+
export declare const ApiKeyBeforeUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyBeforeUpdateEvent>>;
|
|
10
|
+
export declare namespace ApiKeyBeforeUpdateEventHandler {
|
|
10
11
|
type Interface = IEventHandler<ApiKeyBeforeUpdateEvent>;
|
|
11
12
|
type Event = ApiKeyBeforeUpdateEvent;
|
|
12
13
|
}
|
|
@@ -14,8 +15,9 @@ export declare class ApiKeyAfterUpdateEvent extends DomainEvent<ApiKeyAfterUpdat
|
|
|
14
15
|
eventType: "apiKey.afterUpdate";
|
|
15
16
|
getHandlerAbstraction(): import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterUpdateEvent>>;
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
-
export declare
|
|
18
|
+
/** Hook into API key lifecycle after an API key is updated. */
|
|
19
|
+
export declare const ApiKeyAfterUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<ApiKeyAfterUpdateEvent>>;
|
|
20
|
+
export declare namespace ApiKeyAfterUpdateEventHandler {
|
|
19
21
|
type Interface = IEventHandler<ApiKeyAfterUpdateEvent>;
|
|
20
22
|
type Event = ApiKeyAfterUpdateEvent;
|
|
21
23
|
}
|
|
@@ -3,16 +3,20 @@ import { DomainEvent } from "../../../eventPublisher/index.js";
|
|
|
3
3
|
export class ApiKeyBeforeUpdateEvent extends DomainEvent {
|
|
4
4
|
eventType = "apiKey.beforeUpdate";
|
|
5
5
|
getHandlerAbstraction() {
|
|
6
|
-
return
|
|
6
|
+
return ApiKeyBeforeUpdateEventHandler;
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
/** Hook into API key lifecycle before an API key is updated. */
|
|
11
|
+
export const ApiKeyBeforeUpdateEventHandler = createAbstraction("ApiKeyBeforeUpdateEventHandler");
|
|
10
12
|
export class ApiKeyAfterUpdateEvent extends DomainEvent {
|
|
11
13
|
eventType = "apiKey.afterUpdate";
|
|
12
14
|
getHandlerAbstraction() {
|
|
13
|
-
return
|
|
15
|
+
return ApiKeyAfterUpdateEventHandler;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
|
-
|
|
18
|
+
|
|
19
|
+
/** Hook into API key lifecycle after an API key is updated. */
|
|
20
|
+
export const ApiKeyAfterUpdateEventHandler = createAbstraction("ApiKeyAfterUpdateEventHandler");
|
|
17
21
|
|
|
18
22
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeUpdateEvent","eventType","getHandlerAbstraction","
|
|
1
|
+
{"version":3,"names":["createAbstraction","DomainEvent","ApiKeyBeforeUpdateEvent","eventType","getHandlerAbstraction","ApiKeyBeforeUpdateEventHandler","ApiKeyAfterUpdateEvent","ApiKeyAfterUpdateEventHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"~/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"~/features/eventPublisher/index.js\";\nimport type { ApiKeyBeforeUpdatePayload, ApiKeyAfterUpdatePayload } from \"./abstractions.js\";\n\nexport class ApiKeyBeforeUpdateEvent extends DomainEvent<ApiKeyBeforeUpdatePayload> {\n eventType = \"apiKey.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyBeforeUpdateEventHandler;\n }\n}\n\n/** Hook into API key lifecycle before an API key is updated. */\nexport const ApiKeyBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<ApiKeyBeforeUpdateEvent>\n>(\"ApiKeyBeforeUpdateEventHandler\");\n\nexport namespace ApiKeyBeforeUpdateEventHandler {\n export type Interface = IEventHandler<ApiKeyBeforeUpdateEvent>;\n export type Event = ApiKeyBeforeUpdateEvent;\n}\n\nexport class ApiKeyAfterUpdateEvent extends DomainEvent<ApiKeyAfterUpdatePayload> {\n eventType = \"apiKey.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return ApiKeyAfterUpdateEventHandler;\n }\n}\n\n/** Hook into API key lifecycle after an API key is updated. */\nexport const ApiKeyAfterUpdateEventHandler = createAbstraction<\n IEventHandler<ApiKeyAfterUpdateEvent>\n>(\"ApiKeyAfterUpdateEventHandler\");\n\nexport namespace ApiKeyAfterUpdateEventHandler {\n export type Interface = IEventHandler<ApiKeyAfterUpdateEvent>;\n export type Event = ApiKeyAfterUpdateEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW;AAIpB,OAAO,MAAMC,uBAAuB,SAASD,WAAW,CAA4B;EAChFE,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,8BAA8B;EACzC;AACJ;;AAEA;AACA,OAAO,MAAMA,8BAA8B,GAAGL,iBAAiB,CAE7D,gCAAgC,CAAC;AAOnC,OAAO,MAAMM,sBAAsB,SAASL,WAAW,CAA2B;EAC9EE,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,6BAA6B;EACxC;AACJ;;AAEA;AACA,OAAO,MAAMA,6BAA6B,GAAGP,iBAAiB,CAE5D,+BAA+B,CAAC","ignoreList":[]}
|
|
@@ -14,6 +14,7 @@ export interface IApiKeysRepository {
|
|
|
14
14
|
update(data: ApiKey): Promise<Result<void, RepositoryError>>;
|
|
15
15
|
delete(apiKey: ApiKey): Promise<Result<void, RepositoryError>>;
|
|
16
16
|
}
|
|
17
|
+
/** Persist and retrieve API keys. */
|
|
17
18
|
export declare const ApiKeysRepository: import("@webiny/di").Abstraction<IApiKeysRepository>;
|
|
18
19
|
export declare namespace ApiKeysRepository {
|
|
19
20
|
type Interface = IApiKeysRepository;
|
|
@@ -23,18 +24,20 @@ export type CodeApiKey = Pick<ApiKey, "name" | "permissions" | "slug"> & {
|
|
|
23
24
|
token: `wat_${string}`;
|
|
24
25
|
};
|
|
25
26
|
export interface IApiKeyFactory {
|
|
26
|
-
execute(): Promise<CodeApiKey[]
|
|
27
|
+
execute(): Promise<CodeApiKey[]>;
|
|
27
28
|
}
|
|
29
|
+
/** Provide code-defined API keys. */
|
|
28
30
|
export declare const ApiKeyFactory: import("@webiny/di").Abstraction<IApiKeyFactory>;
|
|
29
31
|
export declare namespace ApiKeyFactory {
|
|
30
32
|
type Interface = IApiKeyFactory;
|
|
31
|
-
type Return = Promise<CodeApiKey[]
|
|
33
|
+
type Return = Promise<CodeApiKey[]>;
|
|
32
34
|
type ApiKey = CodeApiKey;
|
|
33
35
|
}
|
|
34
36
|
export interface IApiKeyProvider {
|
|
35
37
|
getByToken(token: string): Promise<ApiKey | null>;
|
|
36
38
|
getBySlug(slug: string): Promise<ApiKey | null>;
|
|
37
39
|
}
|
|
40
|
+
/** Retrieve API keys by token or slug. */
|
|
38
41
|
export declare const ApiKeyProvider: import("@webiny/di").Abstraction<IApiKeyProvider>;
|
|
39
42
|
export declare namespace ApiKeyProvider {
|
|
40
43
|
type Interface = IApiKeyProvider;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
+
/** Persist and retrieve API keys. */
|
|
2
3
|
export const ApiKeysRepository = createAbstraction("ApiKeysRepository");
|
|
4
|
+
/** Provide code-defined API keys. */
|
|
3
5
|
export const ApiKeyFactory = createAbstraction("ApiKeyFactory");
|
|
6
|
+
/** Retrieve API keys by token or slug. */
|
|
4
7
|
export const ApiKeyProvider = createAbstraction("ApiKeyProvider");
|
|
5
8
|
|
|
6
9
|
//# sourceMappingURL=abstractions.js.map
|