@webiny/api-workflows 6.3.0 → 6.4.0-beta.0
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/constants.js +4 -3
- package/constants.js.map +1 -1
- package/domain/notifications/abstractions.js +8 -7
- package/domain/notifications/abstractions.js.map +1 -1
- package/domain/notifications/errors.js +7 -7
- package/domain/notifications/errors.js.map +1 -1
- package/domain/workflow/WorkflowMapper.js +22 -23
- package/domain/workflow/WorkflowMapper.js.map +1 -1
- package/domain/workflow/abstractions.js +3 -3
- package/domain/workflow/abstractions.js.map +1 -1
- package/domain/workflow/errors.js +26 -29
- package/domain/workflow/errors.js.map +1 -1
- package/domain/workflow/workflowModel.js +27 -25
- package/domain/workflow/workflowModel.js.map +1 -1
- package/domain/workflowState/WorkflowState.js +216 -319
- package/domain/workflowState/WorkflowState.js.map +1 -1
- package/domain/workflowState/WorkflowStateMapper.js +36 -35
- package/domain/workflowState/WorkflowStateMapper.js.map +1 -1
- package/domain/workflowState/abstractions.js +9 -9
- package/domain/workflowState/abstractions.js.map +1 -1
- package/domain/workflowState/errors.js +109 -122
- package/domain/workflowState/errors.js.map +1 -1
- package/domain/workflowState/guards/canReview.js +2 -3
- package/domain/workflowState/guards/canReview.js.map +1 -1
- package/domain/workflowState/guards/canTakeOver.js +2 -3
- package/domain/workflowState/guards/canTakeOver.js.map +1 -1
- package/domain/workflowState/guards/isInReview.js +2 -3
- package/domain/workflowState/guards/isInReview.js.map +1 -1
- package/domain/workflowState/guards/isRejected.js +2 -3
- package/domain/workflowState/guards/isRejected.js.map +1 -1
- package/domain/workflowState/guards/isStepOwner.js +2 -3
- package/domain/workflowState/guards/isStepOwner.js.map +1 -1
- package/domain/workflowState/stateModel.js +59 -51
- package/domain/workflowState/stateModel.js.map +1 -1
- package/features/internal/GetUserTeams/GetUserTeamsUseCase.js +20 -27
- package/features/internal/GetUserTeams/GetUserTeamsUseCase.js.map +1 -1
- package/features/internal/GetUserTeams/abstractions.js +2 -1
- package/features/internal/GetUserTeams/abstractions.js.map +1 -1
- package/features/internal/GetUserTeams/feature.js +6 -5
- package/features/internal/GetUserTeams/feature.js.map +1 -1
- package/features/internal/GetUserTeams/index.js +0 -2
- package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js +21 -17
- package/features/notifications/ListNotificationTypes/ListNotificationTypesRepository.js.map +1 -1
- package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js +22 -27
- package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js.map +1 -1
- package/features/notifications/ListNotificationTypes/abstractions.js +3 -12
- package/features/notifications/ListNotificationTypes/abstractions.js.map +1 -1
- package/features/notifications/ListNotificationTypes/feature.js +7 -6
- package/features/notifications/ListNotificationTypes/feature.js.map +1 -1
- package/features/notifications/ListNotificationTypes/index.js +0 -2
- package/features/notifications/NotificationTransport/MailNotificationTransport.js +29 -38
- package/features/notifications/NotificationTransport/MailNotificationTransport.js.map +1 -1
- package/features/notifications/NotificationTransport/abstractions.js +2 -1
- package/features/notifications/NotificationTransport/abstractions.js.map +1 -1
- package/features/notifications/NotificationTransport/feature.js +6 -5
- package/features/notifications/NotificationTransport/feature.js.map +1 -1
- package/features/notifications/NotificationTransport/index.js +0 -2
- package/features/shared/abstractions.js +0 -3
- package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js +35 -34
- package/features/workflow/CreateWorkflow/CreateWorkflowRepository.js.map +1 -1
- package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js +38 -42
- package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js.map +1 -1
- package/features/workflow/CreateWorkflow/abstractions.js +3 -16
- package/features/workflow/CreateWorkflow/abstractions.js.map +1 -1
- package/features/workflow/CreateWorkflow/events.js +17 -14
- package/features/workflow/CreateWorkflow/events.js.map +1 -1
- package/features/workflow/CreateWorkflow/feature.js +7 -6
- package/features/workflow/CreateWorkflow/feature.js.map +1 -1
- package/features/workflow/CreateWorkflow/index.js +2 -4
- package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js +24 -22
- package/features/workflow/DeleteWorkflow/DeleteWorkflowRepository.js.map +1 -1
- package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js +38 -43
- package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js.map +1 -1
- package/features/workflow/DeleteWorkflow/abstractions.js +3 -16
- package/features/workflow/DeleteWorkflow/abstractions.js.map +1 -1
- package/features/workflow/DeleteWorkflow/events.js +17 -14
- package/features/workflow/DeleteWorkflow/events.js.map +1 -1
- package/features/workflow/DeleteWorkflow/feature.js +7 -6
- package/features/workflow/DeleteWorkflow/feature.js.map +1 -1
- package/features/workflow/DeleteWorkflow/index.js +2 -4
- package/features/workflow/GetWorkflow/GetWorkflowRepository.js +33 -34
- package/features/workflow/GetWorkflow/GetWorkflowRepository.js.map +1 -1
- package/features/workflow/GetWorkflow/GetWorkflowUseCase.js +21 -23
- package/features/workflow/GetWorkflow/GetWorkflowUseCase.js.map +1 -1
- package/features/workflow/GetWorkflow/abstractions.js +3 -12
- package/features/workflow/GetWorkflow/abstractions.js.map +1 -1
- package/features/workflow/GetWorkflow/feature.js +7 -6
- package/features/workflow/GetWorkflow/feature.js.map +1 -1
- package/features/workflow/GetWorkflow/index.js +0 -2
- package/features/workflow/ListWorkflows/ListWorkflowsRepository.js +47 -52
- package/features/workflow/ListWorkflows/ListWorkflowsRepository.js.map +1 -1
- package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js +14 -13
- package/features/workflow/ListWorkflows/ListWorkflowsUseCase.js.map +1 -1
- package/features/workflow/ListWorkflows/abstractions.js +3 -12
- package/features/workflow/ListWorkflows/abstractions.js.map +1 -1
- package/features/workflow/ListWorkflows/feature.js +7 -6
- package/features/workflow/ListWorkflows/feature.js.map +1 -1
- package/features/workflow/ListWorkflows/index.js +0 -2
- package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js +24 -26
- package/features/workflow/StoreWorkflow/StoreWorkflowUseCase.js.map +1 -1
- package/features/workflow/StoreWorkflow/abstractions.js +2 -8
- package/features/workflow/StoreWorkflow/abstractions.js.map +1 -1
- package/features/workflow/StoreWorkflow/feature.js +8 -10
- package/features/workflow/StoreWorkflow/feature.js.map +1 -1
- package/features/workflow/StoreWorkflow/index.js +0 -2
- package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js +38 -37
- package/features/workflow/UpdateWorkflow/UpdateWorkflowRepository.js.map +1 -1
- package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js +40 -44
- package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js.map +1 -1
- package/features/workflow/UpdateWorkflow/abstractions.js +3 -16
- package/features/workflow/UpdateWorkflow/abstractions.js.map +1 -1
- package/features/workflow/UpdateWorkflow/events.js +17 -14
- package/features/workflow/UpdateWorkflow/events.js.map +1 -1
- package/features/workflow/UpdateWorkflow/feature.js +7 -6
- package/features/workflow/UpdateWorkflow/feature.js.map +1 -1
- package/features/workflow/UpdateWorkflow/index.js +2 -4
- package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js +26 -27
- package/features/workflowState/ApproveWorkflowStateStep/ApproveWorkflowStateStepUseCase.js.map +1 -1
- package/features/workflowState/ApproveWorkflowStateStep/abstractions.js +2 -1
- package/features/workflowState/ApproveWorkflowStateStep/abstractions.js.map +1 -1
- package/features/workflowState/ApproveWorkflowStateStep/events.js +9 -6
- package/features/workflowState/ApproveWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/ApproveWorkflowStateStep/feature.js +6 -5
- package/features/workflowState/ApproveWorkflowStateStep/feature.js.map +1 -1
- package/features/workflowState/ApproveWorkflowStateStep/index.js +0 -2
- package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js +21 -19
- package/features/workflowState/CancelWorkflowState/CancelWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/CancelWorkflowState/abstractions.js +2 -6
- package/features/workflowState/CancelWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/CancelWorkflowState/events.js +9 -6
- package/features/workflowState/CancelWorkflowState/events.js.map +1 -1
- package/features/workflowState/CancelWorkflowState/feature.js +6 -5
- package/features/workflowState/CancelWorkflowState/feature.js.map +1 -1
- package/features/workflowState/CancelWorkflowState/index.js +0 -2
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js +25 -22
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +78 -90
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/abstractions.js +3 -12
- package/features/workflowState/CreateWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/events.js +9 -6
- package/features/workflowState/CreateWorkflowState/events.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/feature.js +7 -6
- package/features/workflowState/CreateWorkflowState/feature.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/index.js +1 -3
- package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js +44 -42
- package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/DeleteTargetWorkflowState/abstractions.js +2 -1
- package/features/workflowState/DeleteTargetWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/DeleteTargetWorkflowState/events.js +9 -6
- package/features/workflowState/DeleteTargetWorkflowState/events.js.map +1 -1
- package/features/workflowState/DeleteTargetWorkflowState/feature.js +6 -5
- package/features/workflowState/DeleteTargetWorkflowState/feature.js.map +1 -1
- package/features/workflowState/DeleteTargetWorkflowState/index.js +0 -2
- package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js +16 -12
- package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateRepository.js.map +1 -1
- package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js +22 -21
- package/features/workflowState/DeleteWorkflowState/DeleteWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/DeleteWorkflowState/abstractions.js +3 -2
- package/features/workflowState/DeleteWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/DeleteWorkflowState/feature.js +7 -6
- package/features/workflowState/DeleteWorkflowState/feature.js.map +1 -1
- package/features/workflowState/DeleteWorkflowState/index.js +1 -3
- package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js +39 -43
- package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateRepository.js.map +1 -1
- package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js +24 -25
- package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/GetTargetWorkflowState/abstractions.js +3 -12
- package/features/workflowState/GetTargetWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/GetTargetWorkflowState/feature.js +7 -6
- package/features/workflowState/GetTargetWorkflowState/feature.js.map +1 -1
- package/features/workflowState/GetTargetWorkflowState/index.js +1 -3
- package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js +26 -23
- package/features/workflowState/GetWorkflowState/GetWorkflowStateRepository.js.map +1 -1
- package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js +23 -20
- package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/GetWorkflowState/abstractions.js +3 -12
- package/features/workflowState/GetWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/GetWorkflowState/feature.js +7 -6
- package/features/workflowState/GetWorkflowState/feature.js.map +1 -1
- package/features/workflowState/GetWorkflowState/index.js +1 -3
- package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js +33 -32
- package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js.map +1 -1
- package/features/workflowState/ListOwnWorkflowStates/abstractions.js +2 -6
- package/features/workflowState/ListOwnWorkflowStates/abstractions.js.map +1 -1
- package/features/workflowState/ListOwnWorkflowStates/feature.js +6 -5
- package/features/workflowState/ListOwnWorkflowStates/feature.js.map +1 -1
- package/features/workflowState/ListOwnWorkflowStates/index.js +0 -2
- package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js +41 -38
- package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js.map +1 -1
- package/features/workflowState/ListRequestedWorkflowStates/abstractions.js +2 -6
- package/features/workflowState/ListRequestedWorkflowStates/abstractions.js.map +1 -1
- package/features/workflowState/ListRequestedWorkflowStates/feature.js +6 -5
- package/features/workflowState/ListRequestedWorkflowStates/feature.js.map +1 -1
- package/features/workflowState/ListRequestedWorkflowStates/index.js +0 -2
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js +35 -32
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +26 -26
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/abstractions.js +3 -12
- package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/feature.js +7 -6
- package/features/workflowState/ListWorkflowStates/feature.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/index.js +1 -3
- package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js +26 -27
- package/features/workflowState/RejectWorkflowStateStep/RejectWorkflowStateStepUseCase.js.map +1 -1
- package/features/workflowState/RejectWorkflowStateStep/abstractions.js +2 -1
- package/features/workflowState/RejectWorkflowStateStep/abstractions.js.map +1 -1
- package/features/workflowState/RejectWorkflowStateStep/events.js +9 -6
- package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/RejectWorkflowStateStep/feature.js +6 -5
- package/features/workflowState/RejectWorkflowStateStep/feature.js.map +1 -1
- package/features/workflowState/RejectWorkflowStateStep/index.js +0 -2
- package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js +26 -27
- package/features/workflowState/StartWorkflowStateStep/StartWorkflowStateStepUseCase.js.map +1 -1
- package/features/workflowState/StartWorkflowStateStep/abstractions.js +2 -1
- package/features/workflowState/StartWorkflowStateStep/abstractions.js.map +1 -1
- package/features/workflowState/StartWorkflowStateStep/events.js +9 -6
- package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/StartWorkflowStateStep/feature.js +6 -5
- package/features/workflowState/StartWorkflowStateStep/feature.js.map +1 -1
- package/features/workflowState/StartWorkflowStateStep/index.js +0 -2
- package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js +26 -27
- package/features/workflowState/TakeOverWorkflowStateStep/TakeOverWorkflowStateStepUseCase.js.map +1 -1
- package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js +2 -1
- package/features/workflowState/TakeOverWorkflowStateStep/abstractions.js.map +1 -1
- package/features/workflowState/TakeOverWorkflowStateStep/events.js +9 -6
- package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/TakeOverWorkflowStateStep/feature.js +6 -5
- package/features/workflowState/TakeOverWorkflowStateStep/feature.js.map +1 -1
- package/features/workflowState/TakeOverWorkflowStateStep/index.js +0 -2
- package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js +39 -37
- package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateRepository.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +43 -41
- package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/abstractions.js +3 -12
- package/features/workflowState/UpdateWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/events.js +9 -6
- package/features/workflowState/UpdateWorkflowState/events.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/feature.js +7 -6
- package/features/workflowState/UpdateWorkflowState/feature.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/index.js +1 -3
- package/graphql/notifications.js +21 -24
- package/graphql/notifications.js.map +1 -1
- package/graphql/validation/approveWorkflowState.js +4 -3
- package/graphql/validation/approveWorkflowState.js.map +1 -1
- package/graphql/validation/cancelWorkflowState.js +3 -2
- package/graphql/validation/cancelWorkflowState.js.map +1 -1
- package/graphql/validation/createWorkflowState.js +5 -4
- package/graphql/validation/createWorkflowState.js.map +1 -1
- package/graphql/validation/deleteWorkflow.js +4 -3
- package/graphql/validation/deleteWorkflow.js.map +1 -1
- package/graphql/validation/getTargetWorkflowState.js +4 -3
- package/graphql/validation/getTargetWorkflowState.js.map +1 -1
- package/graphql/validation/getWorkflow.js +4 -3
- package/graphql/validation/getWorkflow.js.map +1 -1
- package/graphql/validation/getWorkflowState.js +3 -2
- package/graphql/validation/getWorkflowState.js.map +1 -1
- package/graphql/validation/listWorkflowStates.d.ts +4 -4
- package/graphql/validation/listWorkflowStates.js +30 -36
- package/graphql/validation/listWorkflowStates.js.map +1 -1
- package/graphql/validation/listWorkflows.js +15 -18
- package/graphql/validation/listWorkflows.js.map +1 -1
- package/graphql/validation/rejectWorkflowState.js +4 -3
- package/graphql/validation/rejectWorkflowState.js.map +1 -1
- package/graphql/validation/startWorkflowState.js +3 -2
- package/graphql/validation/startWorkflowState.js.map +1 -1
- package/graphql/validation/step.js +12 -17
- package/graphql/validation/step.js.map +1 -1
- package/graphql/validation/storeWorkflow.js +5 -4
- package/graphql/validation/storeWorkflow.js.map +1 -1
- package/graphql/validation/takeOverWorkflowStateStep.js +3 -2
- package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -1
- package/graphql/validation/workflow.js +4 -5
- package/graphql/validation/workflow.js.map +1 -1
- package/graphql/workflowState.js +132 -202
- package/graphql/workflowState.js.map +1 -1
- package/graphql/workflows.js +54 -79
- package/graphql/workflows.js.map +1 -1
- package/index.js +53 -67
- package/index.js.map +1 -1
- package/package.json +16 -16
- package/types.js +0 -3
- package/features/internal/GetUserTeams/index.js.map +0 -1
- package/features/notifications/ListNotificationTypes/index.js.map +0 -1
- package/features/notifications/NotificationTransport/index.js.map +0 -1
- package/features/shared/abstractions.js.map +0 -1
- package/features/workflow/CreateWorkflow/index.js.map +0 -1
- package/features/workflow/DeleteWorkflow/index.js.map +0 -1
- package/features/workflow/GetWorkflow/index.js.map +0 -1
- package/features/workflow/ListWorkflows/index.js.map +0 -1
- package/features/workflow/StoreWorkflow/index.js.map +0 -1
- package/features/workflow/UpdateWorkflow/index.js.map +0 -1
- package/features/workflowState/ApproveWorkflowStateStep/index.js.map +0 -1
- package/features/workflowState/CancelWorkflowState/index.js.map +0 -1
- package/features/workflowState/CreateWorkflowState/index.js.map +0 -1
- package/features/workflowState/DeleteTargetWorkflowState/index.js.map +0 -1
- package/features/workflowState/DeleteWorkflowState/index.js.map +0 -1
- package/features/workflowState/GetTargetWorkflowState/index.js.map +0 -1
- package/features/workflowState/GetWorkflowState/index.js.map +0 -1
- package/features/workflowState/ListOwnWorkflowStates/index.js.map +0 -1
- package/features/workflowState/ListRequestedWorkflowStates/index.js.map +0 -1
- package/features/workflowState/ListWorkflowStates/index.js.map +0 -1
- package/features/workflowState/RejectWorkflowStateStep/index.js.map +0 -1
- package/features/workflowState/StartWorkflowStateStep/index.js.map +0 -1
- package/features/workflowState/TakeOverWorkflowStateStep/index.js.map +0 -1
- package/features/workflowState/UpdateWorkflowState/index.js.map +0 -1
- package/types.js.map +0 -1
|
@@ -2,31 +2,34 @@ import { Result } from "@webiny/feature/api";
|
|
|
2
2
|
import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js";
|
|
3
3
|
import { WorkflowStateMapper, WorkflowStateModel } from "../../../domain/workflowState/abstractions.js";
|
|
4
4
|
import { WorkflowStatePersistenceError } from "../../../domain/workflowState/errors.js";
|
|
5
|
-
import { CreateWorkflowStateRepository
|
|
5
|
+
import { CreateWorkflowStateRepository } from "./abstractions.js";
|
|
6
6
|
class CreateWorkflowStateRepositoryImpl {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
return Result.fail(new WorkflowStatePersistenceError(error));
|
|
7
|
+
constructor(createEntry, model, mapper){
|
|
8
|
+
this.createEntry = createEntry;
|
|
9
|
+
this.model = model;
|
|
10
|
+
this.mapper = mapper;
|
|
11
|
+
}
|
|
12
|
+
async execute(input) {
|
|
13
|
+
try {
|
|
14
|
+
const createResult = await this.createEntry.execute(this.model, {
|
|
15
|
+
values: input
|
|
16
|
+
});
|
|
17
|
+
if (createResult.isFail()) return Result.fail(new WorkflowStatePersistenceError(createResult.error));
|
|
18
|
+
const record = this.mapper.fromCmsEntry(createResult.value);
|
|
19
|
+
return Result.ok(record);
|
|
20
|
+
} catch (error) {
|
|
21
|
+
return Result.fail(new WorkflowStatePersistenceError(error));
|
|
22
|
+
}
|
|
24
23
|
}
|
|
25
|
-
}
|
|
26
24
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
const CreateWorkflowStateRepository_CreateWorkflowStateRepository = CreateWorkflowStateRepository.createImplementation({
|
|
26
|
+
implementation: CreateWorkflowStateRepositoryImpl,
|
|
27
|
+
dependencies: [
|
|
28
|
+
CreateEntryUseCase,
|
|
29
|
+
WorkflowStateModel,
|
|
30
|
+
WorkflowStateMapper
|
|
31
|
+
]
|
|
30
32
|
});
|
|
33
|
+
export { CreateWorkflowStateRepository_CreateWorkflowStateRepository as CreateWorkflowStateRepository };
|
|
31
34
|
|
|
32
35
|
//# sourceMappingURL=CreateWorkflowStateRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/CreateWorkflowStateRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry/index.js\";\nimport { WorkflowStateMapper, WorkflowStateModel } from \"~/domain/workflowState/abstractions.js\";\nimport { WorkflowStatePersistenceError } from \"~/domain/workflowState/errors.js\";\nimport { CreateWorkflowStateRepository as Repository } from \"./abstractions.js\";\n\nclass CreateWorkflowStateRepositoryImpl implements Repository.Interface {\n constructor(\n private createEntry: CreateEntryUseCase.Interface,\n private model: WorkflowStateModel.Interface,\n private mapper: WorkflowStateMapper.Interface\n ) {}\n\n async execute(input: Repository.Input): Repository.Return {\n try {\n const createResult = await this.createEntry.execute<Repository.Input>(this.model, {\n values: input\n });\n\n if (createResult.isFail()) {\n return Result.fail(new WorkflowStatePersistenceError(createResult.error));\n }\n\n const record = this.mapper.fromCmsEntry(createResult.value);\n return Result.ok(record);\n } catch (error) {\n return Result.fail(new WorkflowStatePersistenceError(error as Error));\n }\n }\n}\n\nexport const CreateWorkflowStateRepository = Repository.createImplementation({\n implementation: CreateWorkflowStateRepositoryImpl,\n dependencies: [CreateEntryUseCase, WorkflowStateModel, WorkflowStateMapper]\n});\n"],"names":["CreateWorkflowStateRepositoryImpl","createEntry","model","mapper","input","createResult","Result","WorkflowStatePersistenceError","record","error","CreateWorkflowStateRepository","Repository","CreateEntryUseCase","WorkflowStateModel","WorkflowStateMapper"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,WAAyC,EACzCC,KAAmC,EACnCC,MAAqC,CAC/C;aAHUF,WAAW,GAAXA;aACAC,KAAK,GAALA;aACAC,MAAM,GAANA;IACT;IAEH,MAAM,QAAQC,KAAuB,EAAqB;QACtD,IAAI;YACA,MAAMC,eAAe,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAmB,IAAI,CAAC,KAAK,EAAE;gBAC9E,QAAQD;YACZ;YAEA,IAAIC,aAAa,MAAM,IACnB,OAAOC,OAAO,IAAI,CAAC,IAAIC,8BAA8BF,aAAa,KAAK;YAG3E,MAAMG,SAAS,IAAI,CAAC,MAAM,CAAC,YAAY,CAACH,aAAa,KAAK;YAC1D,OAAOC,OAAO,EAAE,CAACE;QACrB,EAAE,OAAOC,OAAO;YACZ,OAAOH,OAAO,IAAI,CAAC,IAAIC,8BAA8BE;QACzD;IACJ;AACJ;AAEO,MAAMC,8DAAgCC,8BAAAA,oBAA+B,CAAC;IACzE,gBAAgBX;IAChB,cAAc;QAACY;QAAoBC;QAAoBC;KAAoB;AAC/E"}
|
|
@@ -5,104 +5,92 @@ import { GetUserTeamsUseCase } from "../../internal/GetUserTeams/index.js";
|
|
|
5
5
|
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
6
6
|
import { ListWorkflowsUseCase } from "../../workflow/ListWorkflows/index.js";
|
|
7
7
|
import { GetTargetWorkflowStateUseCase } from "../GetTargetWorkflowState/index.js";
|
|
8
|
-
import { CreateWorkflowStateRepository, CreateWorkflowStateUseCase
|
|
8
|
+
import { CreateWorkflowStateRepository, CreateWorkflowStateUseCase } from "./abstractions.js";
|
|
9
9
|
import { WorkflowStateAfterCreateEvent } from "./events.js";
|
|
10
10
|
import { WorkflowState } from "../../../domain/workflowState/WorkflowState.js";
|
|
11
11
|
import { WorkflowStateRecordState } from "../../../domain/workflowState/abstractions.js";
|
|
12
|
-
import {
|
|
12
|
+
import { ActiveStateExistsError, MultipleWorkflowsFoundError, WorkflowStatePersistenceError, WorkflowStateValidationError } from "../../../domain/workflowState/errors.js";
|
|
13
13
|
import { WorkflowNotFoundError } from "../../../domain/workflow/errors.js";
|
|
14
14
|
class CreateWorkflowStateUseCaseImpl {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
async execute(input) {
|
|
24
|
-
const {
|
|
25
|
-
id: targetId,
|
|
26
|
-
version
|
|
27
|
-
} = parseIdentifier(input.targetRevisionId);
|
|
28
|
-
if (!version) {
|
|
29
|
-
return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state without version of a target record."));
|
|
15
|
+
constructor(identityContext, getUserTeams, eventPublisher, listWorkflows, getTargetState, repository){
|
|
16
|
+
this.identityContext = identityContext;
|
|
17
|
+
this.getUserTeams = getUserTeams;
|
|
18
|
+
this.eventPublisher = eventPublisher;
|
|
19
|
+
this.listWorkflows = listWorkflows;
|
|
20
|
+
this.getTargetState = getTargetState;
|
|
21
|
+
this.repository = repository;
|
|
30
22
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
23
|
+
async execute(input) {
|
|
24
|
+
const { id: targetId, version } = parseIdentifier(input.targetRevisionId);
|
|
25
|
+
if (!version) return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state without version of a target record."));
|
|
26
|
+
const workflowsResult = await this.listWorkflows.execute({
|
|
27
|
+
where: {
|
|
28
|
+
app: input.app
|
|
29
|
+
},
|
|
30
|
+
limit: 1
|
|
31
|
+
});
|
|
32
|
+
if (workflowsResult.isFail()) return Result.fail(new WorkflowStatePersistenceError(workflowsResult.error));
|
|
33
|
+
const { items: workflows, meta } = workflowsResult.value;
|
|
34
|
+
const workflow = workflows[0];
|
|
35
|
+
if (!workflow) return Result.fail(new WorkflowNotFoundError({
|
|
36
|
+
id: "",
|
|
37
|
+
app: input.app
|
|
38
|
+
}));
|
|
39
|
+
if (meta.totalCount > 1) return Result.fail(new MultipleWorkflowsFoundError({
|
|
40
|
+
app: input.app,
|
|
41
|
+
targetRevisionId: input.targetRevisionId,
|
|
42
|
+
workflows,
|
|
43
|
+
meta
|
|
44
|
+
}));
|
|
45
|
+
const existingStateResult = await this.getTargetState.execute({
|
|
46
|
+
app: input.app,
|
|
47
|
+
targetRevisionId: input.targetRevisionId
|
|
48
|
+
});
|
|
49
|
+
if (existingStateResult.isOk()) return Result.fail(new ActiveStateExistsError({
|
|
50
|
+
app: input.app,
|
|
51
|
+
targetRevisionId: input.targetRevisionId
|
|
52
|
+
}));
|
|
53
|
+
if (0 === workflow.steps.length) return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state for a workflow that has no steps defined."));
|
|
54
|
+
const identity = this.identityContext.getIdentity();
|
|
55
|
+
const record = {
|
|
56
|
+
workflowId: workflow.id,
|
|
57
|
+
comment: void 0,
|
|
58
|
+
state: WorkflowStateRecordState.pending,
|
|
59
|
+
app: input.app,
|
|
60
|
+
title: input.title,
|
|
61
|
+
targetId,
|
|
62
|
+
isActive: true,
|
|
63
|
+
targetRevisionId: input.targetRevisionId,
|
|
64
|
+
steps: workflow.steps.map((step)=>({
|
|
65
|
+
...step,
|
|
66
|
+
state: WorkflowStateRecordState.pending,
|
|
67
|
+
savedBy: null,
|
|
68
|
+
comment: null
|
|
69
|
+
}))
|
|
70
|
+
};
|
|
71
|
+
const createResult = await this.repository.execute(record);
|
|
72
|
+
if (createResult.isFail()) return Result.fail(createResult.error);
|
|
73
|
+
const createdRecord = createResult.value;
|
|
74
|
+
const teamsResult = await this.getUserTeams.execute(identity.id);
|
|
75
|
+
const teams = teamsResult.value;
|
|
76
|
+
const workflowState = new WorkflowState(createdRecord, teams, identity);
|
|
77
|
+
await this.eventPublisher.publish(new WorkflowStateAfterCreateEvent({
|
|
78
|
+
state: workflowState
|
|
79
|
+
}));
|
|
80
|
+
return Result.ok(workflowState);
|
|
39
81
|
}
|
|
40
|
-
const {
|
|
41
|
-
items: workflows,
|
|
42
|
-
meta
|
|
43
|
-
} = workflowsResult.value;
|
|
44
|
-
const workflow = workflows[0];
|
|
45
|
-
if (!workflow) {
|
|
46
|
-
return Result.fail(new WorkflowNotFoundError({
|
|
47
|
-
id: "",
|
|
48
|
-
app: input.app
|
|
49
|
-
}));
|
|
50
|
-
}
|
|
51
|
-
if (meta.totalCount > 1) {
|
|
52
|
-
return Result.fail(new MultipleWorkflowsFoundError({
|
|
53
|
-
app: input.app,
|
|
54
|
-
targetRevisionId: input.targetRevisionId,
|
|
55
|
-
workflows,
|
|
56
|
-
meta
|
|
57
|
-
}));
|
|
58
|
-
}
|
|
59
|
-
const existingStateResult = await this.getTargetState.execute({
|
|
60
|
-
app: input.app,
|
|
61
|
-
targetRevisionId: input.targetRevisionId
|
|
62
|
-
});
|
|
63
|
-
if (existingStateResult.isOk()) {
|
|
64
|
-
return Result.fail(new ActiveStateExistsError({
|
|
65
|
-
app: input.app,
|
|
66
|
-
targetRevisionId: input.targetRevisionId
|
|
67
|
-
}));
|
|
68
|
-
}
|
|
69
|
-
if (workflow.steps.length === 0) {
|
|
70
|
-
return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state for a workflow that has no steps defined."));
|
|
71
|
-
}
|
|
72
|
-
const identity = this.identityContext.getIdentity();
|
|
73
|
-
const record = {
|
|
74
|
-
workflowId: workflow.id,
|
|
75
|
-
comment: undefined,
|
|
76
|
-
state: WorkflowStateRecordState.pending,
|
|
77
|
-
app: input.app,
|
|
78
|
-
title: input.title,
|
|
79
|
-
targetId,
|
|
80
|
-
isActive: true,
|
|
81
|
-
targetRevisionId: input.targetRevisionId,
|
|
82
|
-
steps: workflow.steps.map(step => ({
|
|
83
|
-
...step,
|
|
84
|
-
state: WorkflowStateRecordState.pending,
|
|
85
|
-
savedBy: null,
|
|
86
|
-
comment: null
|
|
87
|
-
}))
|
|
88
|
-
};
|
|
89
|
-
const createResult = await this.repository.execute(record);
|
|
90
|
-
if (createResult.isFail()) {
|
|
91
|
-
return Result.fail(createResult.error);
|
|
92
|
-
}
|
|
93
|
-
const createdRecord = createResult.value;
|
|
94
|
-
const teamsResult = await this.getUserTeams.execute(identity.id);
|
|
95
|
-
const teams = teamsResult.value;
|
|
96
|
-
const workflowState = new WorkflowState(createdRecord, teams, identity);
|
|
97
|
-
await this.eventPublisher.publish(new WorkflowStateAfterCreateEvent({
|
|
98
|
-
state: workflowState
|
|
99
|
-
}));
|
|
100
|
-
return Result.ok(workflowState);
|
|
101
|
-
}
|
|
102
82
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
83
|
+
const CreateWorkflowStateUseCase_CreateWorkflowStateUseCase = CreateWorkflowStateUseCase.createImplementation({
|
|
84
|
+
implementation: CreateWorkflowStateUseCaseImpl,
|
|
85
|
+
dependencies: [
|
|
86
|
+
IdentityContext,
|
|
87
|
+
GetUserTeamsUseCase,
|
|
88
|
+
EventPublisher,
|
|
89
|
+
ListWorkflowsUseCase,
|
|
90
|
+
GetTargetWorkflowStateUseCase,
|
|
91
|
+
CreateWorkflowStateRepository
|
|
92
|
+
]
|
|
106
93
|
});
|
|
94
|
+
export { CreateWorkflowStateUseCase_CreateWorkflowStateUseCase as CreateWorkflowStateUseCase };
|
|
107
95
|
|
|
108
96
|
//# sourceMappingURL=CreateWorkflowStateUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { parseIdentifier } from \"@webiny/utils/parseIdentifier.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { GetUserTeamsUseCase } from \"~/features/internal/GetUserTeams/index.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { ListWorkflowsUseCase } from \"~/features/workflow/ListWorkflows/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"../GetTargetWorkflowState/index.js\";\nimport {\n CreateWorkflowStateRepository,\n CreateWorkflowStateUseCase as UseCase\n} from \"./abstractions.js\";\nimport { WorkflowStateAfterCreateEvent } from \"./events.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowStateRecordState } from \"~/domain/workflowState/abstractions.js\";\nimport {\n WorkflowStateValidationError,\n ActiveStateExistsError,\n MultipleWorkflowsFoundError,\n WorkflowStatePersistenceError\n} from \"~/domain/workflowState/errors.js\";\nimport { WorkflowNotFoundError } from \"~/domain/workflow/errors.js\";\n\nclass CreateWorkflowStateUseCaseImpl implements UseCase.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private getUserTeams: GetUserTeamsUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private listWorkflows: ListWorkflowsUseCase.Interface,\n private getTargetState: GetTargetWorkflowStateUseCase.Interface,\n private repository: CreateWorkflowStateRepository.Interface\n ) {}\n\n async execute(input: UseCase.Input): UseCase.Return {\n const { id: targetId, version } = parseIdentifier(input.targetRevisionId);\n if (!version) {\n return Result.fail(\n new WorkflowStateValidationError(\n \"Cannot create a workflow state without version of a target record.\"\n )\n );\n }\n\n const workflowsResult = await this.listWorkflows.execute({\n where: {\n app: input.app\n },\n limit: 1\n });\n\n if (workflowsResult.isFail()) {\n return Result.fail(new WorkflowStatePersistenceError(workflowsResult.error));\n }\n\n const { items: workflows, meta } = workflowsResult.value;\n const workflow = workflows[0];\n\n if (!workflow) {\n return Result.fail(\n new WorkflowNotFoundError({\n id: \"\",\n app: input.app\n })\n );\n }\n\n if (meta.totalCount > 1) {\n return Result.fail(\n new MultipleWorkflowsFoundError({\n app: input.app,\n targetRevisionId: input.targetRevisionId,\n workflows,\n meta\n })\n );\n }\n\n const existingStateResult = await this.getTargetState.execute({\n app: input.app,\n targetRevisionId: input.targetRevisionId\n });\n\n if (existingStateResult.isOk()) {\n return Result.fail(\n new ActiveStateExistsError({\n app: input.app,\n targetRevisionId: input.targetRevisionId\n })\n );\n }\n\n if (workflow.steps.length === 0) {\n return Result.fail(\n new WorkflowStateValidationError(\n \"Cannot create a workflow state for a workflow that has no steps defined.\"\n )\n );\n }\n\n const identity = this.identityContext.getIdentity();\n\n const record: CreateWorkflowStateRepository.Input = {\n workflowId: workflow.id,\n comment: undefined,\n state: WorkflowStateRecordState.pending,\n app: input.app,\n title: input.title,\n targetId,\n isActive: true,\n targetRevisionId: input.targetRevisionId,\n steps: workflow.steps.map(step => ({\n ...step,\n state: WorkflowStateRecordState.pending,\n savedBy: null,\n comment: null\n }))\n };\n\n const createResult = await this.repository.execute(record);\n if (createResult.isFail()) {\n return Result.fail(createResult.error);\n }\n\n const createdRecord = createResult.value;\n\n const teamsResult = await this.getUserTeams.execute(identity.id);\n const teams = teamsResult.value;\n const workflowState = new WorkflowState(createdRecord, teams, identity);\n\n await this.eventPublisher.publish(\n new WorkflowStateAfterCreateEvent({\n state: workflowState\n })\n );\n\n return Result.ok(workflowState);\n }\n}\n\nexport const CreateWorkflowStateUseCase = UseCase.createImplementation({\n implementation: CreateWorkflowStateUseCaseImpl,\n dependencies: [\n IdentityContext,\n GetUserTeamsUseCase,\n EventPublisher,\n ListWorkflowsUseCase,\n GetTargetWorkflowStateUseCase,\n CreateWorkflowStateRepository\n ]\n});\n"],"names":["CreateWorkflowStateUseCaseImpl","identityContext","getUserTeams","eventPublisher","listWorkflows","getTargetState","repository","input","targetId","version","parseIdentifier","Result","WorkflowStateValidationError","workflowsResult","WorkflowStatePersistenceError","workflows","meta","workflow","WorkflowNotFoundError","MultipleWorkflowsFoundError","existingStateResult","ActiveStateExistsError","identity","record","undefined","WorkflowStateRecordState","step","createResult","createdRecord","teamsResult","teams","workflowState","WorkflowState","WorkflowStateAfterCreateEvent","CreateWorkflowStateUseCase","UseCase","IdentityContext","GetUserTeamsUseCase","EventPublisher","ListWorkflowsUseCase","GetTargetWorkflowStateUseCase","CreateWorkflowStateRepository"],"mappings":";;;;;;;;;;;;;AAsBA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,YAA2C,EAC3CC,cAAwC,EACxCC,aAA6C,EAC7CC,cAAuD,EACvDC,UAAmD,CAC7D;aANUL,eAAe,GAAfA;aACAC,YAAY,GAAZA;aACAC,cAAc,GAAdA;aACAC,aAAa,GAAbA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,KAAoB,EAAkB;QAChD,MAAM,EAAE,IAAIC,QAAQ,EAAEC,OAAO,EAAE,GAAGC,gBAAgBH,MAAM,gBAAgB;QACxE,IAAI,CAACE,SACD,OAAOE,OAAO,IAAI,CACd,IAAIC,6BACA;QAKZ,MAAMC,kBAAkB,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YACrD,OAAO;gBACH,KAAKN,MAAM,GAAG;YAClB;YACA,OAAO;QACX;QAEA,IAAIM,gBAAgB,MAAM,IACtB,OAAOF,OAAO,IAAI,CAAC,IAAIG,8BAA8BD,gBAAgB,KAAK;QAG9E,MAAM,EAAE,OAAOE,SAAS,EAAEC,IAAI,EAAE,GAAGH,gBAAgB,KAAK;QACxD,MAAMI,WAAWF,SAAS,CAAC,EAAE;QAE7B,IAAI,CAACE,UACD,OAAON,OAAO,IAAI,CACd,IAAIO,sBAAsB;YACtB,IAAI;YACJ,KAAKX,MAAM,GAAG;QAClB;QAIR,IAAIS,KAAK,UAAU,GAAG,GAClB,OAAOL,OAAO,IAAI,CACd,IAAIQ,4BAA4B;YAC5B,KAAKZ,MAAM,GAAG;YACd,kBAAkBA,MAAM,gBAAgB;YACxCQ;YACAC;QACJ;QAIR,MAAMI,sBAAsB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC1D,KAAKb,MAAM,GAAG;YACd,kBAAkBA,MAAM,gBAAgB;QAC5C;QAEA,IAAIa,oBAAoB,IAAI,IACxB,OAAOT,OAAO,IAAI,CACd,IAAIU,uBAAuB;YACvB,KAAKd,MAAM,GAAG;YACd,kBAAkBA,MAAM,gBAAgB;QAC5C;QAIR,IAAIU,AAA0B,MAA1BA,SAAS,KAAK,CAAC,MAAM,EACrB,OAAON,OAAO,IAAI,CACd,IAAIC,6BACA;QAKZ,MAAMU,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QAEjD,MAAMC,SAA8C;YAChD,YAAYN,SAAS,EAAE;YACvB,SAASO;YACT,OAAOC,yBAAyB,OAAO;YACvC,KAAKlB,MAAM,GAAG;YACd,OAAOA,MAAM,KAAK;YAClBC;YACA,UAAU;YACV,kBAAkBD,MAAM,gBAAgB;YACxC,OAAOU,SAAS,KAAK,CAAC,GAAG,CAACS,CAAAA,OAAS;oBAC/B,GAAGA,IAAI;oBACP,OAAOD,yBAAyB,OAAO;oBACvC,SAAS;oBACT,SAAS;gBACb;QACJ;QAEA,MAAME,eAAe,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACJ;QACnD,IAAII,aAAa,MAAM,IACnB,OAAOhB,OAAO,IAAI,CAACgB,aAAa,KAAK;QAGzC,MAAMC,gBAAgBD,aAAa,KAAK;QAExC,MAAME,cAAc,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAACP,SAAS,EAAE;QAC/D,MAAMQ,QAAQD,YAAY,KAAK;QAC/B,MAAME,gBAAgB,IAAIC,cAAcJ,eAAeE,OAAOR;QAE9D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIW,8BAA8B;YAC9B,OAAOF;QACX;QAGJ,OAAOpB,OAAO,EAAE,CAACoB;IACrB;AACJ;AAEO,MAAMG,wDAA6BC,2BAAAA,oBAA4B,CAAC;IACnE,gBAAgBnC;IAChB,cAAc;QACVoC;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const CreateWorkflowStateUseCase = createAbstraction("CreateWorkflowStateUseCase");
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* CreateWorkflowState repository interface
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
export const CreateWorkflowStateRepository = createAbstraction("CreateWorkflowStateRepository");
|
|
2
|
+
const CreateWorkflowStateUseCase = createAbstraction("CreateWorkflowStateUseCase");
|
|
3
|
+
const CreateWorkflowStateRepository = createAbstraction("CreateWorkflowStateRepository");
|
|
4
|
+
export { CreateWorkflowStateRepository, CreateWorkflowStateUseCase };
|
|
14
5
|
|
|
15
6
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/abstractions.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { IWorkflowStateRecord } from \"~/domain/workflowState/abstractions.js\";\nimport {\n type ActiveStateExistsError,\n MultipleWorkflowsFoundError,\n type WorkflowStateNotFoundError,\n type WorkflowStatePersistenceError,\n type WorkflowStateValidationError\n} from \"~/domain/workflowState/errors.js\";\nimport type { WorkflowNotFoundError } from \"~/domain/workflow/errors.js\";\nimport type { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\n\nexport interface ICreateWorkflowStateUseCaseInput {\n app: string;\n targetRevisionId: string;\n title: string;\n}\n\nexport interface WorkflowStateAfterCreatePayload {\n state: WorkflowState;\n}\n\n/**\n * CreateWorkflowState use case interface\n */\nexport interface ICreateWorkflowStateUseCase {\n execute(input: ICreateWorkflowStateUseCaseInput): Promise<Result<WorkflowState, UseCaseError>>;\n}\n\nexport interface ICreateWorkflowStateUseCaseErrors {\n notFound: WorkflowStateNotFoundError;\n workflowNotFound: WorkflowNotFoundError;\n multipleWorkflows: MultipleWorkflowsFoundError;\n activeExists: ActiveStateExistsError;\n validation: WorkflowStateValidationError;\n persistence: WorkflowStatePersistenceError;\n}\n\ntype UseCaseError = ICreateWorkflowStateUseCaseErrors[keyof ICreateWorkflowStateUseCaseErrors];\n\nexport const CreateWorkflowStateUseCase = createAbstraction<ICreateWorkflowStateUseCase>(\n \"CreateWorkflowStateUseCase\"\n);\n\nexport namespace CreateWorkflowStateUseCase {\n export type Interface = ICreateWorkflowStateUseCase;\n export type Input = ICreateWorkflowStateUseCaseInput;\n export type Return = Promise<Result<WorkflowState, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n/**\n * CreateWorkflowState repository interface\n */\n\nexport type ICreateWorkflowStateRepositoryInput = Omit<\n IWorkflowStateRecord,\n \"id\" | \"savedBy\" | \"createdOn\" | \"savedOn\" | \"createdBy\"\n>;\n\nexport interface ICreateWorkflowStateRepository {\n execute(\n input: ICreateWorkflowStateRepositoryInput\n ): Promise<Result<IWorkflowStateRecord, RepositoryError>>;\n}\n\nexport interface ICreateWorkflowStateRepositoryErrors {\n persistence: WorkflowStatePersistenceError;\n}\n\ntype RepositoryError =\n ICreateWorkflowStateRepositoryErrors[keyof ICreateWorkflowStateRepositoryErrors];\n\nexport const CreateWorkflowStateRepository = createAbstraction<ICreateWorkflowStateRepository>(\n \"CreateWorkflowStateRepository\"\n);\n\nexport namespace CreateWorkflowStateRepository {\n export type Interface = ICreateWorkflowStateRepository;\n export type Input = ICreateWorkflowStateRepositoryInput;\n export type Return = Promise<Result<IWorkflowStateRecord, RepositoryError>>;\n export type Error = RepositoryError;\n}\n"],"names":["CreateWorkflowStateUseCase","createAbstraction","CreateWorkflowStateRepository"],"mappings":";AAyCO,MAAMA,6BAA6BC,kBACtC;AAgCG,MAAMC,gCAAgCD,kBACzC"}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
2
|
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
class WorkflowStateAfterCreateEvent extends DomainEvent {
|
|
4
|
+
getHandlerAbstraction() {
|
|
5
|
+
return WorkflowStateAfterCreateHandler;
|
|
6
|
+
}
|
|
7
|
+
constructor(...args){
|
|
8
|
+
super(...args), this.eventType = "workflowState.afterCreate";
|
|
9
|
+
}
|
|
8
10
|
}
|
|
9
|
-
|
|
11
|
+
const WorkflowStateAfterCreateHandler = createAbstraction("WorkflowStateAfterCreateHandler");
|
|
12
|
+
export { WorkflowStateAfterCreateEvent, WorkflowStateAfterCreateHandler };
|
|
10
13
|
|
|
11
14
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/events.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WorkflowStateAfterCreatePayload } from \"./abstractions.js\";\n\nexport class WorkflowStateAfterCreateEvent extends DomainEvent<WorkflowStateAfterCreatePayload> {\n eventType = \"workflowState.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return WorkflowStateAfterCreateHandler;\n }\n}\n\nexport const WorkflowStateAfterCreateHandler = createAbstraction<\n IEventHandler<WorkflowStateAfterCreateEvent>\n>(\"WorkflowStateAfterCreateHandler\");\n\nexport namespace WorkflowStateAfterCreateHandler {\n export type Interface = IEventHandler<WorkflowStateAfterCreateEvent>;\n export type Event = WorkflowStateAfterCreateEvent;\n}\n"],"names":["WorkflowStateAfterCreateEvent","DomainEvent","WorkflowStateAfterCreateHandler","createAbstraction"],"mappings":";;AAKO,MAAMA,sCAAsCC;IAG/C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAEO,MAAMA,kCAAkCC,kBAE7C"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { CreateWorkflowStateUseCase } from "./CreateWorkflowStateUseCase.js";
|
|
3
3
|
import { CreateWorkflowStateRepository } from "./CreateWorkflowStateRepository.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const CreateWorkflowStateFeature = createFeature({
|
|
5
|
+
name: "WorkflowState/CreateWorkflowState",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(CreateWorkflowStateRepository).inSingletonScope();
|
|
8
|
+
container.register(CreateWorkflowStateUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { CreateWorkflowStateFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/feature.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateWorkflowStateUseCase } from \"./CreateWorkflowStateUseCase.js\";\nimport { CreateWorkflowStateRepository } from \"./CreateWorkflowStateRepository.js\";\n\nexport const CreateWorkflowStateFeature = createFeature({\n name: \"WorkflowState/CreateWorkflowState\",\n register(container) {\n container.register(CreateWorkflowStateRepository).inSingletonScope();\n container.register(CreateWorkflowStateUseCase);\n }\n});\n"],"names":["CreateWorkflowStateFeature","createFeature","container","CreateWorkflowStateRepository","CreateWorkflowStateUseCase"],"mappings":";;;AAIO,MAAMA,6BAA6BC,cAAc;IACpD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,+BAA+B,gBAAgB;QAClED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { CreateWorkflowStateRepository, CreateWorkflowStateUseCase } from "./abstractions.js";
|
|
2
2
|
export { WorkflowStateAfterCreateHandler } from "./events.js";
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=index.js.map
|
package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js
CHANGED
|
@@ -5,55 +5,57 @@ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.j
|
|
|
5
5
|
import { GetWorkflowUseCase } from "../../workflow/GetWorkflow/index.js";
|
|
6
6
|
import { GetTargetWorkflowStateUseCase } from "../GetTargetWorkflowState/index.js";
|
|
7
7
|
import { DeleteWorkflowStateRepository } from "../DeleteWorkflowState/index.js";
|
|
8
|
-
import { DeleteTargetWorkflowStateUseCase
|
|
8
|
+
import { DeleteTargetWorkflowStateUseCase } from "./abstractions.js";
|
|
9
9
|
import { WorkflowStateAfterDeleteEvent } from "./events.js";
|
|
10
10
|
import { WorkflowState } from "../../../domain/workflowState/WorkflowState.js";
|
|
11
11
|
import { WorkflowNotFoundError } from "../../../domain/workflow/errors.js";
|
|
12
12
|
class DeleteTargetWorkflowStateUseCaseImpl {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
async execute(app, targetRevisionId) {
|
|
22
|
-
const stateResult = await this.getTargetWorkflowState.execute({
|
|
23
|
-
app,
|
|
24
|
-
targetRevisionId
|
|
25
|
-
});
|
|
26
|
-
if (stateResult.isFail()) {
|
|
27
|
-
return Result.ok();
|
|
13
|
+
constructor(identityContext, getUserTeams, eventPublisher, getWorkflow, getTargetWorkflowState, repository){
|
|
14
|
+
this.identityContext = identityContext;
|
|
15
|
+
this.getUserTeams = getUserTeams;
|
|
16
|
+
this.eventPublisher = eventPublisher;
|
|
17
|
+
this.getWorkflow = getWorkflow;
|
|
18
|
+
this.getTargetWorkflowState = getTargetWorkflowState;
|
|
19
|
+
this.repository = repository;
|
|
28
20
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
21
|
+
async execute(app, targetRevisionId) {
|
|
22
|
+
const stateResult = await this.getTargetWorkflowState.execute({
|
|
23
|
+
app,
|
|
24
|
+
targetRevisionId
|
|
25
|
+
});
|
|
26
|
+
if (stateResult.isFail()) return Result.ok();
|
|
27
|
+
const record = stateResult.value;
|
|
28
|
+
const workflowResult = await this.getWorkflow.execute({
|
|
29
|
+
app: record.app,
|
|
30
|
+
id: record.workflowId
|
|
31
|
+
});
|
|
32
|
+
if (workflowResult.isFail()) return Result.fail(new WorkflowNotFoundError({
|
|
33
|
+
id: record.workflowId,
|
|
34
|
+
app: record.app
|
|
35
|
+
}));
|
|
36
|
+
const deleteResult = await this.repository.execute(record.id);
|
|
37
|
+
if (deleteResult.isFail()) return deleteResult;
|
|
38
|
+
const identity = this.identityContext.getIdentity();
|
|
39
|
+
const teamsResult = await this.getUserTeams.execute(identity.id);
|
|
40
|
+
const teams = teamsResult.value;
|
|
41
|
+
const state = new WorkflowState(record, teams, identity);
|
|
42
|
+
await this.eventPublisher.publish(new WorkflowStateAfterDeleteEvent({
|
|
43
|
+
state
|
|
44
|
+
}));
|
|
45
|
+
return Result.ok();
|
|
39
46
|
}
|
|
40
|
-
const deleteResult = await this.repository.execute(record.id);
|
|
41
|
-
if (deleteResult.isFail()) {
|
|
42
|
-
return deleteResult;
|
|
43
|
-
}
|
|
44
|
-
const identity = this.identityContext.getIdentity();
|
|
45
|
-
const teamsResult = await this.getUserTeams.execute(identity.id);
|
|
46
|
-
const teams = teamsResult.value;
|
|
47
|
-
const state = new WorkflowState(record, teams, identity);
|
|
48
|
-
await this.eventPublisher.publish(new WorkflowStateAfterDeleteEvent({
|
|
49
|
-
state
|
|
50
|
-
}));
|
|
51
|
-
return Result.ok();
|
|
52
|
-
}
|
|
53
47
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
const DeleteTargetWorkflowStateUseCase_DeleteTargetWorkflowStateUseCase = DeleteTargetWorkflowStateUseCase.createImplementation({
|
|
49
|
+
implementation: DeleteTargetWorkflowStateUseCaseImpl,
|
|
50
|
+
dependencies: [
|
|
51
|
+
IdentityContext,
|
|
52
|
+
GetUserTeamsUseCase,
|
|
53
|
+
EventPublisher,
|
|
54
|
+
GetWorkflowUseCase,
|
|
55
|
+
GetTargetWorkflowStateUseCase,
|
|
56
|
+
DeleteWorkflowStateRepository
|
|
57
|
+
]
|
|
57
58
|
});
|
|
59
|
+
export { DeleteTargetWorkflowStateUseCase_DeleteTargetWorkflowStateUseCase as DeleteTargetWorkflowStateUseCase };
|
|
58
60
|
|
|
59
61
|
//# sourceMappingURL=DeleteTargetWorkflowStateUseCase.js.map
|
package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js","sources":["../../../../src/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { GetUserTeamsUseCase } from \"~/features/internal/GetUserTeams/index.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { GetWorkflowUseCase } from \"~/features/workflow/GetWorkflow/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"../GetTargetWorkflowState/index.js\";\nimport { DeleteWorkflowStateRepository } from \"../DeleteWorkflowState/index.js\";\nimport { DeleteTargetWorkflowStateUseCase as UseCase } from \"./abstractions.js\";\nimport { WorkflowStateAfterDeleteEvent } from \"./events.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowNotFoundError } from \"~/domain/workflow/errors.js\";\n\nclass DeleteTargetWorkflowStateUseCaseImpl implements UseCase.Interface {\n constructor(\n private identityContext: IdentityContext.Interface,\n private getUserTeams: GetUserTeamsUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private getWorkflow: GetWorkflowUseCase.Interface,\n private getTargetWorkflowState: GetTargetWorkflowStateUseCase.Interface,\n private repository: DeleteWorkflowStateRepository.Interface\n ) {}\n\n async execute(app: string, targetRevisionId: string): UseCase.Return {\n const stateResult = await this.getTargetWorkflowState.execute({ app, targetRevisionId });\n if (stateResult.isFail()) {\n return Result.ok();\n }\n\n const record = stateResult.value;\n\n const workflowResult = await this.getWorkflow.execute({\n app: record.app,\n id: record.workflowId\n });\n\n if (workflowResult.isFail()) {\n return Result.fail(\n new WorkflowNotFoundError({\n id: record.workflowId,\n app: record.app\n })\n );\n }\n\n const deleteResult = await this.repository.execute(record.id);\n if (deleteResult.isFail()) {\n return deleteResult;\n }\n\n const identity = this.identityContext.getIdentity();\n const teamsResult = await this.getUserTeams.execute(identity.id);\n const teams = teamsResult.value;\n const state = new WorkflowState(record, teams, identity);\n\n await this.eventPublisher.publish(\n new WorkflowStateAfterDeleteEvent({\n state\n })\n );\n\n return Result.ok();\n }\n}\n\nexport const DeleteTargetWorkflowStateUseCase = UseCase.createImplementation({\n implementation: DeleteTargetWorkflowStateUseCaseImpl,\n dependencies: [\n IdentityContext,\n GetUserTeamsUseCase,\n EventPublisher,\n GetWorkflowUseCase,\n GetTargetWorkflowStateUseCase,\n DeleteWorkflowStateRepository\n ]\n});\n"],"names":["DeleteTargetWorkflowStateUseCaseImpl","identityContext","getUserTeams","eventPublisher","getWorkflow","getTargetWorkflowState","repository","app","targetRevisionId","stateResult","Result","record","workflowResult","WorkflowNotFoundError","deleteResult","identity","teamsResult","teams","state","WorkflowState","WorkflowStateAfterDeleteEvent","DeleteTargetWorkflowStateUseCase","UseCase","IdentityContext","GetUserTeamsUseCase","EventPublisher","GetWorkflowUseCase","GetTargetWorkflowStateUseCase","DeleteWorkflowStateRepository"],"mappings":";;;;;;;;;;;AAYA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,YAA2C,EAC3CC,cAAwC,EACxCC,WAAyC,EACzCC,sBAA+D,EAC/DC,UAAmD,CAC7D;aANUL,eAAe,GAAfA;aACAC,YAAY,GAAZA;aACAC,cAAc,GAAdA;aACAC,WAAW,GAAXA;aACAC,sBAAsB,GAAtBA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,GAAW,EAAEC,gBAAwB,EAAkB;QACjE,MAAMC,cAAc,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;YAAEF;YAAKC;QAAiB;QACtF,IAAIC,YAAY,MAAM,IAClB,OAAOC,OAAO,EAAE;QAGpB,MAAMC,SAASF,YAAY,KAAK;QAEhC,MAAMG,iBAAiB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAClD,KAAKD,OAAO,GAAG;YACf,IAAIA,OAAO,UAAU;QACzB;QAEA,IAAIC,eAAe,MAAM,IACrB,OAAOF,OAAO,IAAI,CACd,IAAIG,sBAAsB;YACtB,IAAIF,OAAO,UAAU;YACrB,KAAKA,OAAO,GAAG;QACnB;QAIR,MAAMG,eAAe,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACH,OAAO,EAAE;QAC5D,IAAIG,aAAa,MAAM,IACnB,OAAOA;QAGX,MAAMC,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,MAAMC,cAAc,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAACD,SAAS,EAAE;QAC/D,MAAME,QAAQD,YAAY,KAAK;QAC/B,MAAME,QAAQ,IAAIC,cAAcR,QAAQM,OAAOF;QAE/C,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIK,8BAA8B;YAC9BF;QACJ;QAGJ,OAAOR,OAAO,EAAE;IACpB;AACJ;AAEO,MAAMW,oEAAmCC,iCAAAA,oBAA4B,CAAC;IACzE,gBAAgBtB;IAChB,cAAc;QACVuB;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
2
|
+
const DeleteTargetWorkflowStateUseCase = createAbstraction("DeleteTargetWorkflowStateUseCase");
|
|
3
|
+
export { DeleteTargetWorkflowStateUseCase };
|
|
3
4
|
|
|
4
5
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/DeleteTargetWorkflowState/abstractions.js","sources":["../../../../src/features/workflowState/DeleteTargetWorkflowState/abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport {\n type WorkflowStateNotFoundError,\n WorkflowStatePersistenceError\n} from \"~/domain/workflowState/errors.js\";\nimport type { WorkflowNotFoundError } from \"~/domain/workflow/errors.js\";\nimport type { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\n\nexport interface WorkflowStateAfterDeletePayload {\n state: WorkflowState;\n}\n\nexport interface IDeleteTargetWorkflowStateUseCase {\n execute(app: string, targetRevisionId: string): Promise<Result<void, UseCaseError>>;\n}\n\nexport interface IDeleteTargetWorkflowStateUseCaseErrors {\n notFound: WorkflowStateNotFoundError;\n workflowNotFound: WorkflowNotFoundError;\n persistence: WorkflowStatePersistenceError;\n}\n\ntype UseCaseError =\n IDeleteTargetWorkflowStateUseCaseErrors[keyof IDeleteTargetWorkflowStateUseCaseErrors];\n\nexport const DeleteTargetWorkflowStateUseCase =\n createAbstraction<IDeleteTargetWorkflowStateUseCase>(\"DeleteTargetWorkflowStateUseCase\");\n\nexport namespace DeleteTargetWorkflowStateUseCase {\n export type Interface = IDeleteTargetWorkflowStateUseCase;\n export type Return = Promise<Result<void, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"names":["DeleteTargetWorkflowStateUseCase","createAbstraction"],"mappings":";AA0BO,MAAMA,mCACTC,kBAAqD"}
|