@webiny/api-workflows 0.0.0-unstable.81ae05e56b → 0.0.0-unstable.9f53ea597d
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.d.ts +1 -0
- package/domain/workflowState/WorkflowState.js +219 -319
- package/domain/workflowState/WorkflowState.js.map +1 -1
- package/domain/workflowState/WorkflowStateMapper.js +38 -35
- package/domain/workflowState/WorkflowStateMapper.js.map +1 -1
- package/domain/workflowState/abstractions.d.ts +3 -0
- 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 +60 -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.d.ts +4 -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.d.ts +1 -1
- package/features/notifications/ListNotificationTypes/ListNotificationTypesUseCase.js +23 -28
- 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.d.ts +4 -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.d.ts +4 -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.d.ts +2 -2
- package/features/workflow/CreateWorkflow/CreateWorkflowUseCase.js +40 -44
- 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.d.ts +2 -2
- package/features/workflow/CreateWorkflow/events.js +18 -15
- package/features/workflow/CreateWorkflow/events.js.map +1 -1
- package/features/workflow/CreateWorkflow/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflow/DeleteWorkflow/DeleteWorkflowUseCase.js +40 -45
- 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.d.ts +2 -2
- package/features/workflow/DeleteWorkflow/events.js +18 -15
- package/features/workflow/DeleteWorkflow/events.js.map +1 -1
- package/features/workflow/DeleteWorkflow/feature.d.ts +4 -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.d.ts +4 -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.d.ts +4 -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.d.ts +4 -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.d.ts +2 -2
- package/features/workflow/UpdateWorkflow/UpdateWorkflowUseCase.js +42 -46
- 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.d.ts +2 -2
- package/features/workflow/UpdateWorkflow/events.js +18 -15
- package/features/workflow/UpdateWorkflow/events.js.map +1 -1
- package/features/workflow/UpdateWorkflow/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflowState/ApproveWorkflowStateStep/events.js +10 -7
- package/features/workflowState/ApproveWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/ApproveWorkflowStateStep/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflowState/CancelWorkflowState/events.js +10 -7
- package/features/workflowState/CancelWorkflowState/events.js.map +1 -1
- package/features/workflowState/CancelWorkflowState/feature.d.ts +4 -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.d.ts +5 -3
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +88 -92
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.d.ts +9 -0
- package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js +13 -0
- package/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js.map +1 -0
- package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.d.ts +13 -0
- package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js +5 -0
- package/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js.map +1 -0
- package/features/workflowState/CreateWorkflowState/abstractions.js +3 -12
- package/features/workflowState/CreateWorkflowState/abstractions.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/events.d.ts +2 -2
- package/features/workflowState/CreateWorkflowState/events.js +10 -7
- package/features/workflowState/CreateWorkflowState/events.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/feature.d.ts +4 -1
- package/features/workflowState/CreateWorkflowState/feature.js +9 -6
- package/features/workflowState/CreateWorkflowState/feature.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/index.d.ts +1 -0
- package/features/workflowState/CreateWorkflowState/index.js +2 -3
- package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.d.ts +2 -2
- package/features/workflowState/DeleteTargetWorkflowState/DeleteTargetWorkflowStateUseCase.js +46 -44
- 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.d.ts +2 -2
- package/features/workflowState/DeleteTargetWorkflowState/events.js +10 -7
- package/features/workflowState/DeleteTargetWorkflowState/events.js.map +1 -1
- package/features/workflowState/DeleteTargetWorkflowState/feature.d.ts +4 -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.d.ts +4 -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.d.ts +1 -1
- package/features/workflowState/GetTargetWorkflowState/GetTargetWorkflowStateUseCase.js +25 -26
- 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.d.ts +4 -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.d.ts +1 -1
- package/features/workflowState/GetWorkflowState/GetWorkflowStateUseCase.js +24 -21
- 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.d.ts +4 -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.d.ts +1 -1
- package/features/workflowState/ListOwnWorkflowStates/ListOwnWorkflowStatesUseCase.js +34 -33
- 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.d.ts +4 -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.d.ts +1 -1
- package/features/workflowState/ListRequestedWorkflowStates/ListRequestedWorkflowStatesUseCase.js +42 -39
- 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.d.ts +4 -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/DefaultWorkflowStateFilter.d.ts +9 -0
- package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js +13 -0
- package/features/workflowState/ListWorkflowStates/DefaultWorkflowStateFilter.js.map +1 -0
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js +35 -32
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.d.ts +4 -2
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +58 -27
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.d.ts +8 -0
- package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js +5 -0
- package/features/workflowState/ListWorkflowStates/WorkflowStateFilter.js.map +1 -0
- package/features/workflowState/ListWorkflowStates/abstractions.js +3 -12
- package/features/workflowState/ListWorkflowStates/abstractions.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/feature.d.ts +4 -1
- package/features/workflowState/ListWorkflowStates/feature.js +9 -6
- package/features/workflowState/ListWorkflowStates/feature.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/index.d.ts +1 -0
- package/features/workflowState/ListWorkflowStates/index.js +2 -3
- package/features/workflowState/README.md +2 -2
- 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.d.ts +2 -2
- package/features/workflowState/RejectWorkflowStateStep/events.js +10 -7
- package/features/workflowState/RejectWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/RejectWorkflowStateStep/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflowState/StartWorkflowStateStep/events.js +10 -7
- package/features/workflowState/StartWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/StartWorkflowStateStep/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflowState/TakeOverWorkflowStateStep/events.js +10 -7
- package/features/workflowState/TakeOverWorkflowStateStep/events.js.map +1 -1
- package/features/workflowState/TakeOverWorkflowStateStep/feature.d.ts +4 -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.d.ts +2 -2
- package/features/workflowState/UpdateWorkflowState/UpdateWorkflowStateUseCase.js +45 -43
- 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.d.ts +2 -2
- package/features/workflowState/UpdateWorkflowState/events.js +10 -7
- package/features/workflowState/UpdateWorkflowState/events.js.map +1 -1
- package/features/workflowState/UpdateWorkflowState/feature.d.ts +4 -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 +5 -5
- package/graphql/validation/listWorkflowStates.js +30 -36
- package/graphql/validation/listWorkflowStates.js.map +1 -1
- package/graphql/validation/listWorkflows.d.ts +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 +133 -202
- package/graphql/workflowState.js.map +1 -1
- package/graphql/workflows.js +54 -79
- package/graphql/workflows.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.js +62 -69
- package/index.js.map +1 -1
- package/package.json +25 -21
- 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
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
import { DomainEvent } from "@webiny/api-core/features/
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
|
+
class WorkflowStateCancelEvent extends DomainEvent {
|
|
4
|
+
getHandlerAbstraction() {
|
|
5
|
+
return WorkflowStateCancelHandler;
|
|
6
|
+
}
|
|
7
|
+
constructor(...args){
|
|
8
|
+
super(...args), this.eventType = "workflowState.cancel";
|
|
9
|
+
}
|
|
8
10
|
}
|
|
9
|
-
|
|
11
|
+
const WorkflowStateCancelHandler = createAbstraction("WorkflowStateCancelHandler");
|
|
12
|
+
export { WorkflowStateCancelEvent, WorkflowStateCancelHandler };
|
|
10
13
|
|
|
11
14
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CancelWorkflowState/events.js","sources":["../../../../src/features/workflowState/CancelWorkflowState/events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WorkflowStateCancelPayload } from \"./abstractions.js\";\n\nexport class WorkflowStateCancelEvent extends DomainEvent<WorkflowStateCancelPayload> {\n eventType = \"workflowState.cancel\" as const;\n\n getHandlerAbstraction() {\n return WorkflowStateCancelHandler;\n }\n}\n\nexport const WorkflowStateCancelHandler = createAbstraction<\n IEventHandler<WorkflowStateCancelEvent>\n>(\"WorkflowStateCancelHandler\");\n\nexport namespace WorkflowStateCancelHandler {\n export type Interface = IEventHandler<WorkflowStateCancelEvent>;\n export type Event = WorkflowStateCancelEvent;\n}\n"],"names":["WorkflowStateCancelEvent","DomainEvent","WorkflowStateCancelHandler","createAbstraction"],"mappings":";;AAKO,MAAMA,iCAAiCC;IAG1C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAEO,MAAMA,6BAA6BC,kBAExC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { CancelWorkflowStateUseCase } from "./CancelWorkflowStateUseCase.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
const CancelWorkflowStateFeature = createFeature({
|
|
4
|
+
name: "WorkflowState/CancelWorkflowState",
|
|
5
|
+
register (container) {
|
|
6
|
+
container.register(CancelWorkflowStateUseCase);
|
|
7
|
+
}
|
|
8
8
|
});
|
|
9
|
+
export { CancelWorkflowStateFeature };
|
|
9
10
|
|
|
10
11
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/workflowState/CancelWorkflowState/feature.js","sources":["../../../../src/features/workflowState/CancelWorkflowState/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CancelWorkflowStateUseCase } from \"./CancelWorkflowStateUseCase.js\";\n\nexport const CancelWorkflowStateFeature = createFeature({\n name: \"WorkflowState/CancelWorkflowState\",\n register(container) {\n container.register(CancelWorkflowStateUseCase);\n }\n});\n"],"names":["CancelWorkflowStateFeature","createFeature","container","CancelWorkflowStateUseCase"],"mappings":";;AAGO,MAAMA,6BAA6BC,cAAc;IACpD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
|
|
@@ -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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
|
|
1
|
+
import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
|
|
2
2
|
import { GetUserTeamsUseCase } from "../../../features/internal/GetUserTeams/index.js";
|
|
3
|
-
import { EventPublisher } from "@webiny/api-core/features/
|
|
3
|
+
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
4
4
|
import { ListWorkflowsUseCase } from "../../../features/workflow/ListWorkflows/index.js";
|
|
5
5
|
import { GetTargetWorkflowStateUseCase } from "../GetTargetWorkflowState/index.js";
|
|
6
6
|
import { CreateWorkflowStateRepository, CreateWorkflowStateUseCase as UseCase } from "./abstractions.js";
|
|
7
|
+
import { WorkflowStateContextProvider } from "./WorkflowStateContextProvider.js";
|
|
7
8
|
declare class CreateWorkflowStateUseCaseImpl implements UseCase.Interface {
|
|
8
9
|
private identityContext;
|
|
9
10
|
private getUserTeams;
|
|
@@ -11,7 +12,8 @@ declare class CreateWorkflowStateUseCaseImpl implements UseCase.Interface {
|
|
|
11
12
|
private listWorkflows;
|
|
12
13
|
private getTargetState;
|
|
13
14
|
private repository;
|
|
14
|
-
|
|
15
|
+
private targetContextProvider;
|
|
16
|
+
constructor(identityContext: IdentityContext.Interface, getUserTeams: GetUserTeamsUseCase.Interface, eventPublisher: EventPublisher.Interface, listWorkflows: ListWorkflowsUseCase.Interface, getTargetState: GetTargetWorkflowStateUseCase.Interface, repository: CreateWorkflowStateRepository.Interface, targetContextProvider: WorkflowStateContextProvider.Interface);
|
|
15
17
|
execute(input: UseCase.Input): UseCase.Return;
|
|
16
18
|
}
|
|
17
19
|
export declare const CreateWorkflowStateUseCase: typeof CreateWorkflowStateUseCaseImpl & {
|
|
@@ -1,108 +1,104 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
2
|
import { parseIdentifier } from "@webiny/utils/parseIdentifier.js";
|
|
3
|
-
import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
|
|
3
|
+
import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
|
|
4
4
|
import { GetUserTeamsUseCase } from "../../internal/GetUserTeams/index.js";
|
|
5
|
-
import { EventPublisher } from "@webiny/api-core/features/
|
|
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
|
+
import { WorkflowStateContextProvider } from "./WorkflowStateContextProvider.js";
|
|
10
11
|
import { WorkflowState } from "../../../domain/workflowState/WorkflowState.js";
|
|
11
12
|
import { WorkflowStateRecordState } from "../../../domain/workflowState/abstractions.js";
|
|
12
|
-
import {
|
|
13
|
+
import { ActiveStateExistsError, MultipleWorkflowsFoundError, WorkflowStatePersistenceError, WorkflowStateValidationError } from "../../../domain/workflowState/errors.js";
|
|
13
14
|
import { WorkflowNotFoundError } from "../../../domain/workflow/errors.js";
|
|
14
15
|
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."));
|
|
16
|
+
constructor(identityContext, getUserTeams, eventPublisher, listWorkflows, getTargetState, repository, targetContextProvider){
|
|
17
|
+
this.identityContext = identityContext;
|
|
18
|
+
this.getUserTeams = getUserTeams;
|
|
19
|
+
this.eventPublisher = eventPublisher;
|
|
20
|
+
this.listWorkflows = listWorkflows;
|
|
21
|
+
this.getTargetState = getTargetState;
|
|
22
|
+
this.repository = repository;
|
|
23
|
+
this.targetContextProvider = targetContextProvider;
|
|
30
24
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
25
|
+
async execute(input) {
|
|
26
|
+
const { id: targetId, version } = parseIdentifier(input.targetRevisionId);
|
|
27
|
+
if (!version) return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state without version of a target record."));
|
|
28
|
+
const workflowsResult = await this.listWorkflows.execute({
|
|
29
|
+
where: {
|
|
30
|
+
app: input.app
|
|
31
|
+
},
|
|
32
|
+
limit: 1
|
|
33
|
+
});
|
|
34
|
+
if (workflowsResult.isFail()) return Result.fail(new WorkflowStatePersistenceError(workflowsResult.error));
|
|
35
|
+
const { items: workflows, meta } = workflowsResult.value;
|
|
36
|
+
const workflow = workflows[0];
|
|
37
|
+
if (!workflow) return Result.fail(new WorkflowNotFoundError({
|
|
38
|
+
id: "",
|
|
39
|
+
app: input.app
|
|
40
|
+
}));
|
|
41
|
+
if (meta.totalCount > 1) return Result.fail(new MultipleWorkflowsFoundError({
|
|
42
|
+
app: input.app,
|
|
43
|
+
targetRevisionId: input.targetRevisionId,
|
|
44
|
+
workflows,
|
|
45
|
+
meta
|
|
46
|
+
}));
|
|
47
|
+
const existingStateResult = await this.getTargetState.execute({
|
|
48
|
+
app: input.app,
|
|
49
|
+
targetRevisionId: input.targetRevisionId
|
|
50
|
+
});
|
|
51
|
+
if (existingStateResult.isOk()) return Result.fail(new ActiveStateExistsError({
|
|
52
|
+
app: input.app,
|
|
53
|
+
targetRevisionId: input.targetRevisionId
|
|
54
|
+
}));
|
|
55
|
+
if (0 === workflow.steps.length) return Result.fail(new WorkflowStateValidationError("Cannot create a workflow state for a workflow that has no steps defined."));
|
|
56
|
+
const identity = this.identityContext.getIdentity();
|
|
57
|
+
const targetContext = await this.targetContextProvider.provide({
|
|
58
|
+
app: input.app,
|
|
59
|
+
targetRevisionId: input.targetRevisionId
|
|
60
|
+
});
|
|
61
|
+
const record = {
|
|
62
|
+
workflowId: workflow.id,
|
|
63
|
+
comment: void 0,
|
|
64
|
+
state: WorkflowStateRecordState.pending,
|
|
65
|
+
app: input.app,
|
|
66
|
+
title: input.title,
|
|
67
|
+
targetId,
|
|
68
|
+
isActive: true,
|
|
69
|
+
targetRevisionId: input.targetRevisionId,
|
|
70
|
+
targetContext,
|
|
71
|
+
steps: workflow.steps.map((step)=>({
|
|
72
|
+
...step,
|
|
73
|
+
state: WorkflowStateRecordState.pending,
|
|
74
|
+
savedBy: null,
|
|
75
|
+
comment: null
|
|
76
|
+
}))
|
|
77
|
+
};
|
|
78
|
+
const createResult = await this.repository.execute(record);
|
|
79
|
+
if (createResult.isFail()) return Result.fail(createResult.error);
|
|
80
|
+
const createdRecord = createResult.value;
|
|
81
|
+
const teamsResult = await this.getUserTeams.execute(identity.id);
|
|
82
|
+
const teams = teamsResult.value;
|
|
83
|
+
const workflowState = new WorkflowState(createdRecord, teams, identity);
|
|
84
|
+
await this.eventPublisher.publish(new WorkflowStateAfterCreateEvent({
|
|
85
|
+
state: workflowState
|
|
86
|
+
}));
|
|
87
|
+
return Result.ok(workflowState);
|
|
39
88
|
}
|
|
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
89
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
90
|
+
const CreateWorkflowStateUseCase_CreateWorkflowStateUseCase = CreateWorkflowStateUseCase.createImplementation({
|
|
91
|
+
implementation: CreateWorkflowStateUseCaseImpl,
|
|
92
|
+
dependencies: [
|
|
93
|
+
IdentityContext,
|
|
94
|
+
GetUserTeamsUseCase,
|
|
95
|
+
EventPublisher,
|
|
96
|
+
ListWorkflowsUseCase,
|
|
97
|
+
GetTargetWorkflowStateUseCase,
|
|
98
|
+
CreateWorkflowStateRepository,
|
|
99
|
+
WorkflowStateContextProvider
|
|
100
|
+
]
|
|
106
101
|
});
|
|
102
|
+
export { CreateWorkflowStateUseCase_CreateWorkflowStateUseCase as CreateWorkflowStateUseCase };
|
|
107
103
|
|
|
108
104
|
//# 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 { WorkflowStateContextProvider } from \"./WorkflowStateContextProvider.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 private targetContextProvider: WorkflowStateContextProvider.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 targetContext = await this.targetContextProvider.provide({\n app: input.app,\n targetRevisionId: input.targetRevisionId\n });\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 targetContext,\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 WorkflowStateContextProvider\n ]\n});\n"],"names":["CreateWorkflowStateUseCaseImpl","identityContext","getUserTeams","eventPublisher","listWorkflows","getTargetState","repository","targetContextProvider","input","targetId","version","parseIdentifier","Result","WorkflowStateValidationError","workflowsResult","WorkflowStatePersistenceError","workflows","meta","workflow","WorkflowNotFoundError","MultipleWorkflowsFoundError","existingStateResult","ActiveStateExistsError","identity","targetContext","record","undefined","WorkflowStateRecordState","step","createResult","createdRecord","teamsResult","teams","workflowState","WorkflowState","WorkflowStateAfterCreateEvent","CreateWorkflowStateUseCase","UseCase","IdentityContext","GetUserTeamsUseCase","EventPublisher","ListWorkflowsUseCase","GetTargetWorkflowStateUseCase","CreateWorkflowStateRepository","WorkflowStateContextProvider"],"mappings":";;;;;;;;;;;;;;AAuBA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,YAA2C,EAC3CC,cAAwC,EACxCC,aAA6C,EAC7CC,cAAuD,EACvDC,UAAmD,EACnDC,qBAA6D,CACvE;aAPUN,eAAe,GAAfA;aACAC,YAAY,GAAZA;aACAC,cAAc,GAAdA;aACAC,aAAa,GAAbA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;aACAC,qBAAqB,GAArBA;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,gBAAgB,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC;YAC3D,KAAKhB,MAAM,GAAG;YACd,kBAAkBA,MAAM,gBAAgB;QAC5C;QAEA,MAAMiB,SAA8C;YAChD,YAAYP,SAAS,EAAE;YACvB,SAASQ;YACT,OAAOC,yBAAyB,OAAO;YACvC,KAAKnB,MAAM,GAAG;YACd,OAAOA,MAAM,KAAK;YAClBC;YACA,UAAU;YACV,kBAAkBD,MAAM,gBAAgB;YACxCgB;YACA,OAAON,SAAS,KAAK,CAAC,GAAG,CAACU,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,OAAOjB,OAAO,IAAI,CAACiB,aAAa,KAAK;QAGzC,MAAMC,gBAAgBD,aAAa,KAAK;QAExC,MAAME,cAAc,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAACR,SAAS,EAAE;QAC/D,MAAMS,QAAQD,YAAY,KAAK;QAC/B,MAAME,gBAAgB,IAAIC,cAAcJ,eAAeE,OAAOT;QAE9D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIY,8BAA8B;YAC9B,OAAOF;QACX;QAGJ,OAAOrB,OAAO,EAAE,CAACqB;IACrB;AACJ;AAEO,MAAMG,wDAA6BC,2BAAAA,oBAA4B,CAAC;IACnE,gBAAgBrC;IAChB,cAAc;QACVsC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type IWorkflowStateContextProvider } from "./WorkflowStateContextProvider.js";
|
|
2
|
+
import type { GenericRecord } from "@webiny/api/types.js";
|
|
3
|
+
declare class DefaultWorkflowStateContextProviderImpl implements IWorkflowStateContextProvider {
|
|
4
|
+
provide(): Promise<GenericRecord>;
|
|
5
|
+
}
|
|
6
|
+
export declare const DefaultContextProvider: typeof DefaultWorkflowStateContextProviderImpl & {
|
|
7
|
+
__abstraction: import("@webiny/di").Abstraction<IWorkflowStateContextProvider>;
|
|
8
|
+
};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { WorkflowStateContextProvider } from "./WorkflowStateContextProvider.js";
|
|
2
|
+
class DefaultWorkflowStateContextProviderImpl {
|
|
3
|
+
async provide() {
|
|
4
|
+
return {};
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
const DefaultContextProvider = WorkflowStateContextProvider.createImplementation({
|
|
8
|
+
implementation: DefaultWorkflowStateContextProviderImpl,
|
|
9
|
+
dependencies: []
|
|
10
|
+
});
|
|
11
|
+
export { DefaultContextProvider };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=DefaultWorkflowStateContextProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/DefaultWorkflowStateContextProvider.ts"],"sourcesContent":["import {\n WorkflowStateContextProvider,\n type IWorkflowStateContextProvider\n} from \"./WorkflowStateContextProvider.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\nclass DefaultWorkflowStateContextProviderImpl implements IWorkflowStateContextProvider {\n async provide(): Promise<GenericRecord> {\n return {};\n }\n}\n\nexport const DefaultContextProvider = WorkflowStateContextProvider.createImplementation({\n implementation: DefaultWorkflowStateContextProviderImpl,\n dependencies: []\n});\n"],"names":["DefaultWorkflowStateContextProviderImpl","DefaultContextProvider","WorkflowStateContextProvider"],"mappings":";AAMA,MAAMA;IACF,MAAM,UAAkC;QACpC,OAAO,CAAC;IACZ;AACJ;AAEO,MAAMC,yBAAyBC,6BAA6B,oBAAoB,CAAC;IACpF,gBAAgBF;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { GenericRecord } from "@webiny/api/types.js";
|
|
2
|
+
export interface IWorkflowStateContextProviderParams {
|
|
3
|
+
app: string;
|
|
4
|
+
targetRevisionId: string;
|
|
5
|
+
}
|
|
6
|
+
export interface IWorkflowStateContextProvider {
|
|
7
|
+
provide(params: IWorkflowStateContextProviderParams): Promise<GenericRecord>;
|
|
8
|
+
}
|
|
9
|
+
export declare const WorkflowStateContextProvider: import("@webiny/di").Abstraction<IWorkflowStateContextProvider>;
|
|
10
|
+
export declare namespace WorkflowStateContextProvider {
|
|
11
|
+
type Interface = IWorkflowStateContextProvider;
|
|
12
|
+
type Params = IWorkflowStateContextProviderParams;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.js","sources":["../../../../src/features/workflowState/CreateWorkflowState/WorkflowStateContextProvider.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\nexport interface IWorkflowStateContextProviderParams {\n app: string;\n targetRevisionId: string;\n}\n\nexport interface IWorkflowStateContextProvider {\n provide(params: IWorkflowStateContextProviderParams): Promise<GenericRecord>;\n}\n\nexport const WorkflowStateContextProvider = createAbstraction<IWorkflowStateContextProvider>(\n \"WorkflowStateContextProvider\"\n);\n\nexport namespace WorkflowStateContextProvider {\n export type Interface = IWorkflowStateContextProvider;\n export type Params = IWorkflowStateContextProviderParams;\n}\n"],"names":["WorkflowStateContextProvider","createAbstraction"],"mappings":";AAYO,MAAMA,+BAA+BC,kBACxC"}
|
|
@@ -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,5 +1,5 @@
|
|
|
1
|
-
import { DomainEvent } from "@webiny/api-core/features/
|
|
2
|
-
import type { IEventHandler } from "@webiny/api-core/features/
|
|
1
|
+
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
2
|
+
import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
3
|
import type { WorkflowStateAfterCreatePayload } from "./abstractions.js";
|
|
4
4
|
export declare class WorkflowStateAfterCreateEvent extends DomainEvent<WorkflowStateAfterCreatePayload> {
|
|
5
5
|
eventType: "workflowState.afterCreate";
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
import { DomainEvent } from "@webiny/api-core/features/
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
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,15 @@
|
|
|
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
|
+
import { DefaultContextProvider } from "./DefaultWorkflowStateContextProvider.js";
|
|
5
|
+
const CreateWorkflowStateFeature = createFeature({
|
|
6
|
+
name: "WorkflowState/CreateWorkflowState",
|
|
7
|
+
register (container) {
|
|
8
|
+
container.register(CreateWorkflowStateRepository).inSingletonScope();
|
|
9
|
+
container.register(DefaultContextProvider);
|
|
10
|
+
container.register(CreateWorkflowStateUseCase);
|
|
11
|
+
}
|
|
10
12
|
});
|
|
13
|
+
export { CreateWorkflowStateFeature };
|
|
11
14
|
|
|
12
15
|
//# sourceMappingURL=feature.js.map
|