@webiny/api-workflows 0.0.0-unstable.6844005670 → 0.0.0-unstable.7be00a75a9
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.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 +2 -2
- package/features/workflowState/CreateWorkflowState/CreateWorkflowStateUseCase.js +80 -92
- 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.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 +7 -6
- package/features/workflowState/CreateWorkflowState/feature.js.map +1 -1
- package/features/workflowState/CreateWorkflowState/index.js +1 -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/ListWorkflowStatesRepository.js +35 -32
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesRepository.js.map +1 -1
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.d.ts +1 -1
- package/features/workflowState/ListWorkflowStates/ListWorkflowStatesUseCase.js +27 -27
- 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.d.ts +4 -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/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.d.ts +1 -7
- package/graphql/validation/approveWorkflowState.js +4 -3
- package/graphql/validation/approveWorkflowState.js.map +1 -1
- package/graphql/validation/cancelWorkflowState.d.ts +1 -5
- package/graphql/validation/cancelWorkflowState.js +3 -2
- package/graphql/validation/cancelWorkflowState.js.map +1 -1
- package/graphql/validation/createWorkflowState.d.ts +1 -9
- package/graphql/validation/createWorkflowState.js +5 -4
- package/graphql/validation/createWorkflowState.js.map +1 -1
- package/graphql/validation/deleteWorkflow.d.ts +1 -7
- package/graphql/validation/deleteWorkflow.js +4 -3
- package/graphql/validation/deleteWorkflow.js.map +1 -1
- package/graphql/validation/getTargetWorkflowState.d.ts +1 -7
- package/graphql/validation/getTargetWorkflowState.js +4 -3
- package/graphql/validation/getTargetWorkflowState.js.map +1 -1
- package/graphql/validation/getWorkflow.d.ts +1 -7
- package/graphql/validation/getWorkflow.js +4 -3
- package/graphql/validation/getWorkflow.js.map +1 -1
- package/graphql/validation/getWorkflowState.d.ts +1 -5
- package/graphql/validation/getWorkflowState.js +3 -2
- package/graphql/validation/getWorkflowState.js.map +1 -1
- package/graphql/validation/listWorkflowStates.d.ts +14 -96
- package/graphql/validation/listWorkflowStates.js +30 -36
- package/graphql/validation/listWorkflowStates.js.map +1 -1
- package/graphql/validation/listWorkflows.d.ts +6 -36
- package/graphql/validation/listWorkflows.js +15 -18
- package/graphql/validation/listWorkflows.js.map +1 -1
- package/graphql/validation/rejectWorkflowState.d.ts +1 -7
- package/graphql/validation/rejectWorkflowState.js +4 -3
- package/graphql/validation/rejectWorkflowState.js.map +1 -1
- package/graphql/validation/startWorkflowState.d.ts +1 -5
- package/graphql/validation/startWorkflowState.js +3 -2
- package/graphql/validation/startWorkflowState.js.map +1 -1
- package/graphql/validation/step.d.ts +8 -36
- package/graphql/validation/step.js +12 -17
- package/graphql/validation/step.js.map +1 -1
- package/graphql/validation/storeWorkflow.d.ts +14 -86
- package/graphql/validation/storeWorkflow.js +5 -4
- package/graphql/validation/storeWorkflow.js.map +1 -1
- package/graphql/validation/takeOverWorkflowStateStep.d.ts +1 -5
- package/graphql/validation/takeOverWorkflowStateStep.js +3 -2
- package/graphql/validation/takeOverWorkflowStateStep.js.map +1 -1
- package/graphql/validation/workflow.d.ts +13 -60
- 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.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 +1 @@
|
|
|
1
|
-
{"version":3,"names":["GraphQLSchemaPlugin","resolve","resolveList","createZodError","listWorkflowStatesValidation","startWorkflowStateValidation","approveWorkflowStateValidation","rejectWorkflowStateValidation","cancelWorkflowStateValidation","createWorkflowStateValidation","getTargetWorkflowStateValidation","getWorkflowStateValidation","takeOverWorkflowStateStepValidation","GetWorkflowStateUseCase","GetTargetWorkflowStateUseCase","ListWorkflowStatesUseCase","ListOwnWorkflowStatesUseCase","ListRequestedWorkflowStatesUseCase","CreateWorkflowStateUseCase","StartWorkflowStateStepUseCase","ApproveWorkflowStateStepUseCase","RejectWorkflowStateStepUseCase","CancelWorkflowStateUseCase","TakeOverWorkflowStateStepUseCase","WorkflowStateNotFoundError","createWorkflowStateSchema","typeDefs","resolvers","WorkflowState","isActive","parent","WorkflowsQuery","getWorkflowState","_","args","context","result","safeParseAsync","success","error","container","stateResult","execute","data","id","isFail","value","getTargetWorkflowState","app","targetRevisionId","listWorkflowStates","listResult","where","values","listOwnWorkflowStates","listRequestedWorkflowStates","WorkflowsMutation","createWorkflowState","createResult","title","startWorkflowStateStep","startResult","approveWorkflowStateStep","approveResult","comment","rejectWorkflowStateStep","rejectResult","cancelWorkflowState","cancelResult","takeOverWorkflowStateStep","takeOverResult"],"sources":["workflowState.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowStatesValidation } from \"./validation/listWorkflowStates.js\";\nimport { startWorkflowStateValidation } from \"./validation/startWorkflowState.js\";\nimport { approveWorkflowStateValidation } from \"./validation/approveWorkflowState.js\";\nimport { rejectWorkflowStateValidation } from \"./validation/rejectWorkflowState.js\";\nimport { cancelWorkflowStateValidation } from \"./validation/cancelWorkflowState.js\";\nimport { createWorkflowStateValidation } from \"./validation/createWorkflowState.js\";\nimport { getTargetWorkflowStateValidation } from \"./validation/getTargetWorkflowState.js\";\nimport { getWorkflowStateValidation } from \"./validation/getWorkflowState.js\";\nimport { takeOverWorkflowStateStepValidation } from \"./validation/takeOverWorkflowStateStep.js\";\nimport { GetWorkflowStateUseCase } from \"~/features/workflowState/GetWorkflowState/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"~/features/workflowState/GetTargetWorkflowState/index.js\";\nimport { ListWorkflowStatesUseCase } from \"~/features/workflowState/ListWorkflowStates/index.js\";\nimport { ListOwnWorkflowStatesUseCase } from \"~/features/workflowState/ListOwnWorkflowStates/index.js\";\nimport { ListRequestedWorkflowStatesUseCase } from \"~/features/workflowState/ListRequestedWorkflowStates/index.js\";\nimport { CreateWorkflowStateUseCase } from \"~/features/workflowState/CreateWorkflowState/index.js\";\nimport { StartWorkflowStateStepUseCase } from \"~/features/workflowState/StartWorkflowStateStep/index.js\";\nimport { ApproveWorkflowStateStepUseCase } from \"~/features/workflowState/ApproveWorkflowStateStep/index.js\";\nimport { RejectWorkflowStateStepUseCase } from \"~/features/workflowState/RejectWorkflowStateStep/index.js\";\nimport { CancelWorkflowStateUseCase } from \"~/features/workflowState/CancelWorkflowState/index.js\";\nimport { TakeOverWorkflowStateStepUseCase } from \"~/features/workflowState/TakeOverWorkflowStateStep/index.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowStateNotFoundError } from \"~/domain/workflowState/errors.js\";\n\nexport const createWorkflowStateSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n enum CmsEntryStateValue {\n pending\n inReview\n approved\n rejected\n }\n\n type CmsEntrySystemWorkflow {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n extend type CmsEntrySystem {\n workflow: CmsEntrySystemWorkflow\n }\n\n input ListWhereInputCmsEntrySystemWorkflowStateInput {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n input ListWhereInputCmsEntrySystemWorkflowInput {\n workflowId: String\n stepId: ID\n state: ListWhereInputCmsEntrySystemWorkflowStateInput\n stepName: String\n }\n\n extend input ListWhereInputCmsEntrySystem {\n workflow: ListWhereInputCmsEntrySystemWorkflowInput\n }\n\n type WorkflowStateIdentity {\n id: String!\n displayName: String\n type: String\n }\n\n type WorkflowStateStepNotification {\n id: String!\n }\n\n type WorkflowStateStepTeam {\n id: String!\n }\n\n type WorkflowStateStep {\n # workflow related\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStateStepTeam!]!\n notifications: [WorkflowStateStepNotification!]\n # state related\n state: CmsEntryStateValue!\n comment: String\n savedBy: WorkflowStateIdentity\n # current user can take action on this step?\n canReview: Boolean!\n # is current user an owner of the step?\n isOwner: Boolean!\n # can current user take over this step?\n canTakeOver: Boolean!\n }\n\n type WorkflowState {\n id: String!\n app: String!\n title: String!\n isActive: Boolean!\n done: Boolean!\n workflowId: String!\n targetId: String!\n targetRevisionId: String!\n comment: String\n state: CmsEntryStateValue!\n steps: [WorkflowStateStep!]\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: WorkflowStateIdentity!\n savedBy: WorkflowStateIdentity!\n currentStep: WorkflowStateStep!\n nextStep: WorkflowStateStep\n previousStep: WorkflowStateStep\n }\n\n type ListWorkflowStatesResponse {\n data: [WorkflowState!]\n error: WorkflowError\n meta: ListWorkflowsMeta\n }\n\n enum ListWorkflowStatesSort {\n createdOn_ASC\n createdOn_DESC\n savedOn_ASC\n savedOn_DESC\n }\n\n input ListWorkflowStatesWhereStepsInput {\n id: String\n id_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n savedBy: String\n savedBy_in: [String!]\n }\n\n input ListWorkflowStatesWhereTeamsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereNotificationsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereInput {\n app: String\n app_in: [String!]\n workflowId: String\n workflowId_in: [String!]\n targetId: String\n targetId_in: [String!]\n targetRevisionId: String\n targetRevisionId_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n createdOn_gte: DateTime\n createdOn_lte: DateTime\n savedOn_gte: DateTime\n savedOn_lte: DateTime\n createdBy: String\n savedBy: String\n isActive: Boolean\n steps: ListWorkflowStatesWhereStepsInput\n teams: ListWorkflowStatesWhereTeamsInput\n notifications: ListWorkflowStatesWhereNotificationsInput\n }\n\n type WorkflowStateResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n type CancelWorkflowStateResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type TakeOverWorkflowStateStepResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n extend type WorkflowsQuery {\n getWorkflowState(id: ID!): WorkflowStateResponse!\n # always returns active workflow state for the given targetRevisionId - or null\n getTargetWorkflowState(app: String!, targetRevisionId: ID!): WorkflowStateResponse!\n listWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listOwnWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listRequestedWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n }\n\n extend type WorkflowsMutation {\n createWorkflowState(\n app: String!\n targetRevisionId: ID!\n title: String!\n ): WorkflowStateResponse!\n startWorkflowStateStep(id: ID!): WorkflowStateResponse!\n approveWorkflowStateStep(id: ID!, comment: String): WorkflowStateResponse!\n rejectWorkflowStateStep(id: ID!, comment: String!): WorkflowStateResponse!\n cancelWorkflowState(id: ID!): CancelWorkflowStateResponse!\n takeOverWorkflowStateStep(id: ID!): TakeOverWorkflowStateStepResponse!\n }\n `,\n resolvers: {\n WorkflowState: {\n isActive: (parent: Partial<WorkflowState>) => {\n return parent.isActive || false;\n }\n },\n WorkflowsQuery: {\n getWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await getWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);\n const stateResult = await getWorkflowState.execute(result.data.id);\n\n if (stateResult.isFail()) {\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n getTargetWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState | null>(async () => {\n const result = await getTargetWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getTargetWorkflowState = context.container.resolve(\n GetTargetWorkflowStateUseCase\n );\n const stateResult = await getTargetWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId\n });\n /**\n * TODO determine if we want to throw error or return null when not found.\n */\n if (stateResult.isFail()) {\n if (stateResult.error instanceof WorkflowStateNotFoundError) {\n return null;\n }\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n listWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflowStates =\n context.container.resolve(ListWorkflowStatesUseCase);\n const listResult = await listWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listOwnWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listOwnWorkflowStates = context.container.resolve(\n ListOwnWorkflowStatesUseCase\n );\n const listResult = await listOwnWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listRequestedWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listRequestedWorkflowStates = context.container.resolve(\n ListRequestedWorkflowStatesUseCase\n );\n const listResult = await listRequestedWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n createWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await createWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const createWorkflowState = context.container.resolve(\n CreateWorkflowStateUseCase\n );\n const createResult = await createWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId,\n title: result.data.title\n });\n\n if (createResult.isFail()) {\n throw createResult.error;\n }\n\n return createResult.value;\n });\n },\n startWorkflowStateStep(_, args, context) {\n return resolve<WorkflowState>(async () => {\n const result = await startWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const startWorkflowStateStep = context.container.resolve(\n StartWorkflowStateStepUseCase\n );\n const startResult = await startWorkflowStateStep.execute(result.data.id);\n\n if (startResult.isFail()) {\n throw startResult.error;\n }\n\n return startResult.value;\n });\n },\n approveWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await approveWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const approveWorkflowStateStep = context.container.resolve(\n ApproveWorkflowStateStepUseCase\n );\n const approveResult = await approveWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (approveResult.isFail()) {\n throw approveResult.error;\n }\n\n return approveResult.value;\n });\n },\n rejectWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await rejectWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const rejectWorkflowStateStep = context.container.resolve(\n RejectWorkflowStateStepUseCase\n );\n const rejectResult = await rejectWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (rejectResult.isFail()) {\n throw rejectResult.error;\n }\n\n return rejectResult.value;\n });\n },\n cancelWorkflowState: (_, args, context) => {\n return resolve<boolean>(async () => {\n const result = await cancelWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const cancelWorkflowState = context.container.resolve(\n CancelWorkflowStateUseCase\n );\n const cancelResult = await cancelWorkflowState.execute(result.data.id);\n\n if (cancelResult.isFail()) {\n throw cancelResult.error;\n }\n\n return true;\n });\n },\n takeOverWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result =\n await takeOverWorkflowStateStepValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const takeOverWorkflowStateStep = context.container.resolve(\n TakeOverWorkflowStateStepUseCase\n );\n const takeOverResult = await takeOverWorkflowStateStep.execute(\n result.data.id\n );\n\n if (takeOverResult.isFail()) {\n throw takeOverResult.error;\n }\n\n return takeOverResult.value;\n });\n }\n }\n }\n });\n};\n"],"mappings":"AAAA,SAASA,mBAAmB,EAAEC,OAAO,EAAEC,WAAW,QAAQ,yBAAyB;AACnF,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,4BAA4B;AACrC,SAASC,4BAA4B;AACrC,SAASC,8BAA8B;AACvC,SAASC,6BAA6B;AACtC,SAASC,6BAA6B;AACtC,SAASC,6BAA6B;AACtC,SAASC,gCAAgC;AACzC,SAASC,0BAA0B;AACnC,SAASC,mCAAmC;AAC5C,SAASC,uBAAuB;AAChC,SAASC,6BAA6B;AACtC,SAASC,yBAAyB;AAClC,SAASC,4BAA4B;AACrC,SAASC,kCAAkC;AAC3C,SAASC,0BAA0B;AACnC,SAASC,6BAA6B;AACtC,SAASC,+BAA+B;AACxC,SAASC,8BAA8B;AACvC,SAASC,0BAA0B;AACnC,SAASC,gCAAgC;AAEzC,SAASC,0BAA0B;AAEnC,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,OAAO,IAAIzB,mBAAmB,CAAC;IAC3B0B,QAAQ,EAAE,aAAc;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"graphql/workflowState.js","sources":["../../src/graphql/workflowState.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowStatesValidation } from \"./validation/listWorkflowStates.js\";\nimport { startWorkflowStateValidation } from \"./validation/startWorkflowState.js\";\nimport { approveWorkflowStateValidation } from \"./validation/approveWorkflowState.js\";\nimport { rejectWorkflowStateValidation } from \"./validation/rejectWorkflowState.js\";\nimport { cancelWorkflowStateValidation } from \"./validation/cancelWorkflowState.js\";\nimport { createWorkflowStateValidation } from \"./validation/createWorkflowState.js\";\nimport { getTargetWorkflowStateValidation } from \"./validation/getTargetWorkflowState.js\";\nimport { getWorkflowStateValidation } from \"./validation/getWorkflowState.js\";\nimport { takeOverWorkflowStateStepValidation } from \"./validation/takeOverWorkflowStateStep.js\";\nimport { GetWorkflowStateUseCase } from \"~/features/workflowState/GetWorkflowState/index.js\";\nimport { GetTargetWorkflowStateUseCase } from \"~/features/workflowState/GetTargetWorkflowState/index.js\";\nimport { ListWorkflowStatesUseCase } from \"~/features/workflowState/ListWorkflowStates/index.js\";\nimport { ListOwnWorkflowStatesUseCase } from \"~/features/workflowState/ListOwnWorkflowStates/index.js\";\nimport { ListRequestedWorkflowStatesUseCase } from \"~/features/workflowState/ListRequestedWorkflowStates/index.js\";\nimport { CreateWorkflowStateUseCase } from \"~/features/workflowState/CreateWorkflowState/index.js\";\nimport { StartWorkflowStateStepUseCase } from \"~/features/workflowState/StartWorkflowStateStep/index.js\";\nimport { ApproveWorkflowStateStepUseCase } from \"~/features/workflowState/ApproveWorkflowStateStep/index.js\";\nimport { RejectWorkflowStateStepUseCase } from \"~/features/workflowState/RejectWorkflowStateStep/index.js\";\nimport { CancelWorkflowStateUseCase } from \"~/features/workflowState/CancelWorkflowState/index.js\";\nimport { TakeOverWorkflowStateStepUseCase } from \"~/features/workflowState/TakeOverWorkflowStateStep/index.js\";\nimport { WorkflowState } from \"~/domain/workflowState/WorkflowState.js\";\nimport { WorkflowStateNotFoundError } from \"~/domain/workflowState/errors.js\";\n\nexport const createWorkflowStateSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n enum CmsEntryStateValue {\n pending\n inReview\n approved\n rejected\n }\n\n type CmsEntrySystemWorkflow {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n extend type CmsEntrySystem {\n workflow: CmsEntrySystemWorkflow\n }\n\n input ListWhereInputCmsEntrySystemWorkflowStateInput {\n workflowId: String\n stepId: ID\n stepName: String\n state: CmsEntryStateValue\n }\n\n input ListWhereInputCmsEntrySystemWorkflowInput {\n workflowId: String\n stepId: ID\n state: ListWhereInputCmsEntrySystemWorkflowStateInput\n stepName: String\n }\n\n extend input ListWhereInputCmsEntrySystem {\n workflow: ListWhereInputCmsEntrySystemWorkflowInput\n }\n\n type WorkflowStateIdentity {\n id: String!\n displayName: String\n type: String\n }\n\n type WorkflowStateStepNotification {\n id: String!\n }\n\n type WorkflowStateStepTeam {\n id: String!\n }\n\n type WorkflowStateStep {\n # workflow related\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStateStepTeam!]!\n notifications: [WorkflowStateStepNotification!]\n # state related\n state: CmsEntryStateValue!\n comment: String\n savedBy: WorkflowStateIdentity\n # current user can take action on this step?\n canReview: Boolean!\n # is current user an owner of the step?\n isOwner: Boolean!\n # can current user take over this step?\n canTakeOver: Boolean!\n }\n\n type WorkflowState {\n id: String!\n app: String!\n title: String!\n isActive: Boolean!\n done: Boolean!\n workflowId: String!\n targetId: String!\n targetRevisionId: String!\n comment: String\n state: CmsEntryStateValue!\n steps: [WorkflowStateStep!]\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: WorkflowStateIdentity!\n savedBy: WorkflowStateIdentity!\n currentStep: WorkflowStateStep!\n nextStep: WorkflowStateStep\n previousStep: WorkflowStateStep\n }\n\n type ListWorkflowStatesResponse {\n data: [WorkflowState!]\n error: WorkflowError\n meta: ListWorkflowsMeta\n }\n\n enum ListWorkflowStatesSort {\n createdOn_ASC\n createdOn_DESC\n savedOn_ASC\n savedOn_DESC\n }\n\n input ListWorkflowStatesWhereStepsInput {\n id: String\n id_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n savedBy: String\n savedBy_in: [String!]\n }\n\n input ListWorkflowStatesWhereTeamsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereNotificationsInput {\n id: String\n id_in: [String!]\n }\n\n input ListWorkflowStatesWhereInput {\n app: String\n app_in: [String!]\n workflowId: String\n workflowId_in: [String!]\n targetId: String\n targetId_in: [String!]\n targetRevisionId: String\n targetRevisionId_in: [String!]\n state: CmsEntryStateValue\n state_in: [CmsEntryStateValue!]\n createdOn_gte: DateTime\n createdOn_lte: DateTime\n savedOn_gte: DateTime\n savedOn_lte: DateTime\n createdBy: String\n savedBy: String\n isActive: Boolean\n steps: ListWorkflowStatesWhereStepsInput\n teams: ListWorkflowStatesWhereTeamsInput\n notifications: ListWorkflowStatesWhereNotificationsInput\n }\n\n type WorkflowStateResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n type CancelWorkflowStateResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type TakeOverWorkflowStateStepResponse {\n data: WorkflowState\n error: WorkflowError\n }\n\n extend type WorkflowsQuery {\n getWorkflowState(id: ID!): WorkflowStateResponse!\n # always returns active workflow state for the given targetRevisionId - or null\n getTargetWorkflowState(app: String!, targetRevisionId: ID!): WorkflowStateResponse!\n listWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listOwnWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n listRequestedWorkflowStates(\n where: ListWorkflowStatesWhereInput\n sort: [ListWorkflowStatesSort!]\n limit: Int\n after: String\n ): ListWorkflowStatesResponse!\n }\n\n extend type WorkflowsMutation {\n createWorkflowState(\n app: String!\n targetRevisionId: ID!\n title: String!\n ): WorkflowStateResponse!\n startWorkflowStateStep(id: ID!): WorkflowStateResponse!\n approveWorkflowStateStep(id: ID!, comment: String): WorkflowStateResponse!\n rejectWorkflowStateStep(id: ID!, comment: String!): WorkflowStateResponse!\n cancelWorkflowState(id: ID!): CancelWorkflowStateResponse!\n takeOverWorkflowStateStep(id: ID!): TakeOverWorkflowStateStepResponse!\n }\n `,\n resolvers: {\n WorkflowState: {\n isActive: (parent: Partial<WorkflowState>) => {\n return parent.isActive || false;\n }\n },\n WorkflowsQuery: {\n getWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await getWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflowState = context.container.resolve(GetWorkflowStateUseCase);\n const stateResult = await getWorkflowState.execute(result.data.id);\n\n if (stateResult.isFail()) {\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n getTargetWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState | null>(async () => {\n const result = await getTargetWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getTargetWorkflowState = context.container.resolve(\n GetTargetWorkflowStateUseCase\n );\n const stateResult = await getTargetWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId\n });\n /**\n * TODO determine if we want to throw error or return null when not found.\n */\n if (stateResult.isFail()) {\n if (stateResult.error instanceof WorkflowStateNotFoundError) {\n return null;\n }\n throw stateResult.error;\n }\n\n return stateResult.value;\n });\n },\n listWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflowStates =\n context.container.resolve(ListWorkflowStatesUseCase);\n const listResult = await listWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listOwnWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listOwnWorkflowStates = context.container.resolve(\n ListOwnWorkflowStatesUseCase\n );\n const listResult = await listOwnWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n },\n listRequestedWorkflowStates: async (_, args, context) => {\n return resolveList<WorkflowState>(async () => {\n const result = await listWorkflowStatesValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listRequestedWorkflowStates = context.container.resolve(\n ListRequestedWorkflowStatesUseCase\n );\n const listResult = await listRequestedWorkflowStates.execute({\n ...result.data,\n where: {\n values: {\n ...result.data?.where\n }\n }\n });\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n createWorkflowState: async (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await createWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const createWorkflowState = context.container.resolve(\n CreateWorkflowStateUseCase\n );\n const createResult = await createWorkflowState.execute({\n app: result.data.app,\n targetRevisionId: result.data.targetRevisionId,\n title: result.data.title\n });\n\n if (createResult.isFail()) {\n throw createResult.error;\n }\n\n return createResult.value;\n });\n },\n startWorkflowStateStep(_, args, context) {\n return resolve<WorkflowState>(async () => {\n const result = await startWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const startWorkflowStateStep = context.container.resolve(\n StartWorkflowStateStepUseCase\n );\n const startResult = await startWorkflowStateStep.execute(result.data.id);\n\n if (startResult.isFail()) {\n throw startResult.error;\n }\n\n return startResult.value;\n });\n },\n approveWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await approveWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const approveWorkflowStateStep = context.container.resolve(\n ApproveWorkflowStateStepUseCase\n );\n const approveResult = await approveWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (approveResult.isFail()) {\n throw approveResult.error;\n }\n\n return approveResult.value;\n });\n },\n rejectWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result = await rejectWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const rejectWorkflowStateStep = context.container.resolve(\n RejectWorkflowStateStepUseCase\n );\n const rejectResult = await rejectWorkflowStateStep.execute(\n result.data.id,\n result.data.comment\n );\n\n if (rejectResult.isFail()) {\n throw rejectResult.error;\n }\n\n return rejectResult.value;\n });\n },\n cancelWorkflowState: (_, args, context) => {\n return resolve<boolean>(async () => {\n const result = await cancelWorkflowStateValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const cancelWorkflowState = context.container.resolve(\n CancelWorkflowStateUseCase\n );\n const cancelResult = await cancelWorkflowState.execute(result.data.id);\n\n if (cancelResult.isFail()) {\n throw cancelResult.error;\n }\n\n return true;\n });\n },\n takeOverWorkflowStateStep: (_, args, context) => {\n return resolve<WorkflowState>(async () => {\n const result =\n await takeOverWorkflowStateStepValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const takeOverWorkflowStateStep = context.container.resolve(\n TakeOverWorkflowStateStepUseCase\n );\n const takeOverResult = await takeOverWorkflowStateStep.execute(\n result.data.id\n );\n\n if (takeOverResult.isFail()) {\n throw takeOverResult.error;\n }\n\n return takeOverResult.value;\n });\n }\n }\n }\n });\n};\n"],"names":["createWorkflowStateSchema","GraphQLSchemaPlugin","parent","_","args","context","resolve","result","getWorkflowStateValidation","createZodError","getWorkflowState","GetWorkflowStateUseCase","stateResult","getTargetWorkflowStateValidation","getTargetWorkflowState","GetTargetWorkflowStateUseCase","WorkflowStateNotFoundError","resolveList","listWorkflowStatesValidation","listWorkflowStates","ListWorkflowStatesUseCase","listResult","listOwnWorkflowStates","ListOwnWorkflowStatesUseCase","listRequestedWorkflowStates","ListRequestedWorkflowStatesUseCase","createWorkflowStateValidation","createWorkflowState","CreateWorkflowStateUseCase","createResult","startWorkflowStateValidation","startWorkflowStateStep","StartWorkflowStateStepUseCase","startResult","approveWorkflowStateValidation","approveWorkflowStateStep","ApproveWorkflowStateStepUseCase","approveResult","rejectWorkflowStateValidation","rejectWorkflowStateStep","RejectWorkflowStateStepUseCase","rejectResult","cancelWorkflowStateValidation","cancelWorkflowState","CancelWorkflowStateUseCase","cancelResult","takeOverWorkflowStateStepValidation","takeOverWorkflowStateStep","TakeOverWorkflowStateStepUseCase","takeOverResult"],"mappings":"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"}
|
package/graphql/workflows.js
CHANGED
|
@@ -8,9 +8,8 @@ import { GetWorkflowUseCase } from "../features/workflow/GetWorkflow/index.js";
|
|
|
8
8
|
import { ListWorkflowsUseCase } from "../features/workflow/ListWorkflows/index.js";
|
|
9
9
|
import { StoreWorkflowUseCase } from "../features/workflow/StoreWorkflow/index.js";
|
|
10
10
|
import { DeleteWorkflowUseCase } from "../features/workflow/DeleteWorkflow/index.js";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
typeDefs: /* GraphQL */`
|
|
11
|
+
const createWorkflowsSchema = ()=>new GraphQLSchemaPlugin({
|
|
12
|
+
typeDefs: `
|
|
14
13
|
type WorkflowError {
|
|
15
14
|
code: String
|
|
16
15
|
message: String
|
|
@@ -135,82 +134,58 @@ export const createWorkflowsSchema = () => {
|
|
|
135
134
|
workflows: WorkflowsMutation
|
|
136
135
|
}
|
|
137
136
|
`,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
}
|
|
188
|
-
if (storeResult.isFail()) {
|
|
189
|
-
throw storeResult.error;
|
|
190
|
-
}
|
|
191
|
-
return storeResult.value;
|
|
192
|
-
});
|
|
193
|
-
},
|
|
194
|
-
deleteWorkflow: async (_, args, context) => {
|
|
195
|
-
return resolve(async () => {
|
|
196
|
-
const result = await deleteWorkflowValidation.safeParseAsync(args);
|
|
197
|
-
if (!result.success) {
|
|
198
|
-
throw createZodError(result.error);
|
|
199
|
-
}
|
|
200
|
-
const deleteWorkflow = context.container.resolve(DeleteWorkflowUseCase);
|
|
201
|
-
const deleteResult = await deleteWorkflow.execute({
|
|
202
|
-
app: result.data.app,
|
|
203
|
-
id: result.data.id
|
|
204
|
-
});
|
|
205
|
-
if (deleteResult.isFail()) {
|
|
206
|
-
throw deleteResult.error;
|
|
207
|
-
}
|
|
208
|
-
return true;
|
|
209
|
-
});
|
|
137
|
+
resolvers: {
|
|
138
|
+
Query: {
|
|
139
|
+
workflows: ()=>({})
|
|
140
|
+
},
|
|
141
|
+
Mutation: {
|
|
142
|
+
workflows: ()=>({})
|
|
143
|
+
},
|
|
144
|
+
WorkflowsQuery: {
|
|
145
|
+
getWorkflow: async (_, args, context)=>resolve(async ()=>{
|
|
146
|
+
const result = await getWorkflowValidation.safeParseAsync(args);
|
|
147
|
+
if (!result.success) throw createZodError(result.error);
|
|
148
|
+
const getWorkflow = context.container.resolve(GetWorkflowUseCase);
|
|
149
|
+
const workflowResult = await getWorkflow.execute(args);
|
|
150
|
+
if (workflowResult.isFail()) throw new NotFoundError(`Workflow in app "${args.app}" with id "${args.id}" was not found!`);
|
|
151
|
+
return workflowResult.value;
|
|
152
|
+
}),
|
|
153
|
+
listWorkflows: async (_, args, context)=>resolveList(async ()=>{
|
|
154
|
+
const result = await listWorkflowsValidation.safeParseAsync(args);
|
|
155
|
+
if (!result.success) throw createZodError(result.error);
|
|
156
|
+
const listWorkflows = context.container.resolve(ListWorkflowsUseCase);
|
|
157
|
+
const listResult = await listWorkflows.execute(result.data);
|
|
158
|
+
if (listResult.isFail()) throw listResult.error;
|
|
159
|
+
return listResult.value;
|
|
160
|
+
})
|
|
161
|
+
},
|
|
162
|
+
WorkflowsMutation: {
|
|
163
|
+
storeWorkflow: async (_, args, context)=>resolve(async ()=>{
|
|
164
|
+
const result = await storeWorkflowValidation.safeParseAsync(args);
|
|
165
|
+
if (!result.success) throw createZodError(result.error);
|
|
166
|
+
const storeWorkflow = context.container.resolve(StoreWorkflowUseCase);
|
|
167
|
+
const storeResult = await storeWorkflow.execute({
|
|
168
|
+
app: result.data.app,
|
|
169
|
+
id: result.data.id,
|
|
170
|
+
...result.data.data
|
|
171
|
+
});
|
|
172
|
+
if (storeResult.isFail()) throw storeResult.error;
|
|
173
|
+
return storeResult.value;
|
|
174
|
+
}),
|
|
175
|
+
deleteWorkflow: async (_, args, context)=>resolve(async ()=>{
|
|
176
|
+
const result = await deleteWorkflowValidation.safeParseAsync(args);
|
|
177
|
+
if (!result.success) throw createZodError(result.error);
|
|
178
|
+
const deleteWorkflow = context.container.resolve(DeleteWorkflowUseCase);
|
|
179
|
+
const deleteResult = await deleteWorkflow.execute({
|
|
180
|
+
app: result.data.app,
|
|
181
|
+
id: result.data.id
|
|
182
|
+
});
|
|
183
|
+
if (deleteResult.isFail()) throw deleteResult.error;
|
|
184
|
+
return true;
|
|
185
|
+
})
|
|
186
|
+
}
|
|
210
187
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
});
|
|
214
|
-
};
|
|
188
|
+
});
|
|
189
|
+
export { createWorkflowsSchema };
|
|
215
190
|
|
|
216
191
|
//# sourceMappingURL=workflows.js.map
|
package/graphql/workflows.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["GraphQLSchemaPlugin","NotFoundError","resolve","resolveList","createZodError","listWorkflowsValidation","getWorkflowValidation","storeWorkflowValidation","deleteWorkflowValidation","GetWorkflowUseCase","ListWorkflowsUseCase","StoreWorkflowUseCase","DeleteWorkflowUseCase","createWorkflowsSchema","typeDefs","resolvers","Query","workflows","Mutation","WorkflowsQuery","getWorkflow","_","args","context","result","safeParseAsync","success","error","container","workflowResult","execute","isFail","app","id","value","listWorkflows","listResult","data","WorkflowsMutation","storeWorkflow","storeResult","deleteWorkflow","deleteResult"],"sources":["workflows.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, NotFoundError, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowsValidation } from \"./validation/listWorkflows.js\";\nimport { getWorkflowValidation } from \"./validation/getWorkflow.js\";\nimport { storeWorkflowValidation } from \"./validation/storeWorkflow.js\";\nimport { deleteWorkflowValidation } from \"./validation/deleteWorkflow.js\";\nimport { GetWorkflowUseCase } from \"~/features/workflow/GetWorkflow/index.js\";\nimport { ListWorkflowsUseCase } from \"~/features/workflow/ListWorkflows/index.js\";\nimport { StoreWorkflowUseCase } from \"~/features/workflow/StoreWorkflow/index.js\";\nimport { DeleteWorkflowUseCase } from \"~/features/workflow/DeleteWorkflow/index.js\";\n\nexport const createWorkflowsSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type WorkflowError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n input WorkflowStepNotificationInput {\n id: String!\n }\n\n input WorkflowStepTeamInput {\n id: String!\n }\n\n input WorkflowStepInput {\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStepTeamInput!]!\n notifications: [WorkflowStepNotificationInput!]\n }\n\n input StoreWorkflowInput {\n name: String!\n steps: [WorkflowStepInput!]!\n }\n\n type WorkflowStepNotification {\n id: String!\n }\n\n type WorkflowStepTeam {\n id: String!\n }\n\n type WorkflowStep {\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStepTeam!]!\n notifications: [WorkflowStepNotification!]\n }\n\n type Workflow {\n id: String!\n app: String!\n name: String!\n steps: [WorkflowStep!]!\n }\n\n type ListWorkflowsMeta {\n cursor: String\n hasMoreItems: Boolean!\n totalCount: Int!\n }\n\n type ListWorkflowsResponse {\n data: [Workflow!]\n meta: ListWorkflowsMeta\n error: WorkflowError\n }\n\n type GetWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n input ListWorkflowsWhereInput {\n app: String\n app_in: [String!]\n id: String\n id_in: [String!]\n }\n\n enum ListWorkflowsSort {\n createdOn_ASC\n createdOn_DESC\n }\n\n type WorkflowsQuery {\n listWorkflows(\n where: ListWorkflowsWhereInput\n limit: Int\n sort: [ListWorkflowsSort!]\n after: String\n ): ListWorkflowsResponse!\n getWorkflow(app: String!, id: ID!): GetWorkflowResponse!\n }\n\n type CreateWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n type StoreWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n type DeleteWorkflowResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type WorkflowsMutation {\n storeWorkflow(\n app: String!\n id: ID!\n data: StoreWorkflowInput!\n ): StoreWorkflowResponse!\n deleteWorkflow(app: String!, id: ID!): DeleteWorkflowResponse!\n }\n\n extend type Query {\n workflows: WorkflowsQuery\n }\n\n extend type Mutation {\n workflows: WorkflowsMutation\n }\n `,\n resolvers: {\n Query: {\n workflows: () => ({})\n },\n Mutation: {\n workflows: () => ({})\n },\n WorkflowsQuery: {\n getWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await getWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflow = context.container.resolve(GetWorkflowUseCase);\n const workflowResult = await getWorkflow.execute(args);\n\n if (workflowResult.isFail()) {\n throw new NotFoundError(\n `Workflow in app \"${args.app}\" with id \"${args.id}\" was not found!`\n );\n }\n\n return workflowResult.value;\n });\n },\n listWorkflows: async (_, args, context) => {\n return resolveList(async () => {\n const result = await listWorkflowsValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflows = context.container.resolve(ListWorkflowsUseCase);\n const listResult = await listWorkflows.execute(result.data);\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n storeWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await storeWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const storeWorkflow = context.container.resolve(StoreWorkflowUseCase);\n const storeResult = await storeWorkflow.execute({\n app: result.data.app,\n id: result.data.id,\n ...result.data.data\n });\n\n if (storeResult.isFail()) {\n throw storeResult.error;\n }\n\n return storeResult.value;\n });\n },\n deleteWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await deleteWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const deleteWorkflow = context.container.resolve(DeleteWorkflowUseCase);\n const deleteResult = await deleteWorkflow.execute({\n app: result.data.app,\n id: result.data.id\n });\n\n if (deleteResult.isFail()) {\n throw deleteResult.error;\n }\n\n return true;\n });\n }\n }\n }\n });\n};\n"],"mappings":"AAAA,SAASA,mBAAmB,EAAEC,aAAa,EAAEC,OAAO,EAAEC,WAAW,QAAQ,yBAAyB;AAClG,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,uBAAuB;AAChC,SAASC,qBAAqB;AAC9B,SAASC,uBAAuB;AAChC,SAASC,wBAAwB;AACjC,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAC7B,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACvC,OAAO,IAAIb,mBAAmB,CAAC;IAC3Bc,QAAQ,EAAE,aAAc;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;IACDC,SAAS,EAAE;MACPC,KAAK,EAAE;QACHC,SAAS,EAAEA,CAAA,MAAO,CAAC,CAAC;MACxB,CAAC;MACDC,QAAQ,EAAE;QACND,SAAS,EAAEA,CAAA,MAAO,CAAC,CAAC;MACxB,CAAC;MACDE,cAAc,EAAE;QACZC,WAAW,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;UACrC,OAAOrB,OAAO,CAA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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"graphql/workflows.js","sources":["../../src/graphql/workflows.ts"],"sourcesContent":["import { GraphQLSchemaPlugin, NotFoundError, resolve, resolveList } from \"@webiny/handler-graphql\";\nimport { createZodError } from \"@webiny/utils\";\nimport { listWorkflowsValidation } from \"./validation/listWorkflows.js\";\nimport { getWorkflowValidation } from \"./validation/getWorkflow.js\";\nimport { storeWorkflowValidation } from \"./validation/storeWorkflow.js\";\nimport { deleteWorkflowValidation } from \"./validation/deleteWorkflow.js\";\nimport { GetWorkflowUseCase } from \"~/features/workflow/GetWorkflow/index.js\";\nimport { ListWorkflowsUseCase } from \"~/features/workflow/ListWorkflows/index.js\";\nimport { StoreWorkflowUseCase } from \"~/features/workflow/StoreWorkflow/index.js\";\nimport { DeleteWorkflowUseCase } from \"~/features/workflow/DeleteWorkflow/index.js\";\n\nexport const createWorkflowsSchema = () => {\n return new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type WorkflowError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n input WorkflowStepNotificationInput {\n id: String!\n }\n\n input WorkflowStepTeamInput {\n id: String!\n }\n\n input WorkflowStepInput {\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStepTeamInput!]!\n notifications: [WorkflowStepNotificationInput!]\n }\n\n input StoreWorkflowInput {\n name: String!\n steps: [WorkflowStepInput!]!\n }\n\n type WorkflowStepNotification {\n id: String!\n }\n\n type WorkflowStepTeam {\n id: String!\n }\n\n type WorkflowStep {\n id: String!\n title: String!\n color: String!\n description: String\n teams: [WorkflowStepTeam!]!\n notifications: [WorkflowStepNotification!]\n }\n\n type Workflow {\n id: String!\n app: String!\n name: String!\n steps: [WorkflowStep!]!\n }\n\n type ListWorkflowsMeta {\n cursor: String\n hasMoreItems: Boolean!\n totalCount: Int!\n }\n\n type ListWorkflowsResponse {\n data: [Workflow!]\n meta: ListWorkflowsMeta\n error: WorkflowError\n }\n\n type GetWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n input ListWorkflowsWhereInput {\n app: String\n app_in: [String!]\n id: String\n id_in: [String!]\n }\n\n enum ListWorkflowsSort {\n createdOn_ASC\n createdOn_DESC\n }\n\n type WorkflowsQuery {\n listWorkflows(\n where: ListWorkflowsWhereInput\n limit: Int\n sort: [ListWorkflowsSort!]\n after: String\n ): ListWorkflowsResponse!\n getWorkflow(app: String!, id: ID!): GetWorkflowResponse!\n }\n\n type CreateWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n type StoreWorkflowResponse {\n data: Workflow\n error: WorkflowError\n }\n\n type DeleteWorkflowResponse {\n data: Boolean\n error: WorkflowError\n }\n\n type WorkflowsMutation {\n storeWorkflow(\n app: String!\n id: ID!\n data: StoreWorkflowInput!\n ): StoreWorkflowResponse!\n deleteWorkflow(app: String!, id: ID!): DeleteWorkflowResponse!\n }\n\n extend type Query {\n workflows: WorkflowsQuery\n }\n\n extend type Mutation {\n workflows: WorkflowsMutation\n }\n `,\n resolvers: {\n Query: {\n workflows: () => ({})\n },\n Mutation: {\n workflows: () => ({})\n },\n WorkflowsQuery: {\n getWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await getWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const getWorkflow = context.container.resolve(GetWorkflowUseCase);\n const workflowResult = await getWorkflow.execute(args);\n\n if (workflowResult.isFail()) {\n throw new NotFoundError(\n `Workflow in app \"${args.app}\" with id \"${args.id}\" was not found!`\n );\n }\n\n return workflowResult.value;\n });\n },\n listWorkflows: async (_, args, context) => {\n return resolveList(async () => {\n const result = await listWorkflowsValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const listWorkflows = context.container.resolve(ListWorkflowsUseCase);\n const listResult = await listWorkflows.execute(result.data);\n\n if (listResult.isFail()) {\n throw listResult.error;\n }\n\n return listResult.value;\n });\n }\n },\n WorkflowsMutation: {\n storeWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await storeWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const storeWorkflow = context.container.resolve(StoreWorkflowUseCase);\n const storeResult = await storeWorkflow.execute({\n app: result.data.app,\n id: result.data.id,\n ...result.data.data\n });\n\n if (storeResult.isFail()) {\n throw storeResult.error;\n }\n\n return storeResult.value;\n });\n },\n deleteWorkflow: async (_, args, context) => {\n return resolve(async () => {\n const result = await deleteWorkflowValidation.safeParseAsync(args);\n if (!result.success) {\n throw createZodError(result.error);\n }\n\n const deleteWorkflow = context.container.resolve(DeleteWorkflowUseCase);\n const deleteResult = await deleteWorkflow.execute({\n app: result.data.app,\n id: result.data.id\n });\n\n if (deleteResult.isFail()) {\n throw deleteResult.error;\n }\n\n return true;\n });\n }\n }\n }\n });\n};\n"],"names":["createWorkflowsSchema","GraphQLSchemaPlugin","_","args","context","resolve","result","getWorkflowValidation","createZodError","getWorkflow","GetWorkflowUseCase","workflowResult","NotFoundError","resolveList","listWorkflowsValidation","listWorkflows","ListWorkflowsUseCase","listResult","storeWorkflowValidation","storeWorkflow","StoreWorkflowUseCase","storeResult","deleteWorkflowValidation","deleteWorkflow","DeleteWorkflowUseCase","deleteResult"],"mappings":";;;;;;;;;;AAWO,MAAMA,wBAAwB,IAC1B,IAAIC,oBAAoB;QAC3B,UAAwB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4HzB,CAAC;QACD,WAAW;YACP,OAAO;gBACH,WAAW,IAAO,EAAC;YACvB;YACA,UAAU;gBACN,WAAW,IAAO,EAAC;YACvB;YACA,gBAAgB;gBACZ,aAAa,OAAOC,GAAGC,MAAMC,UAClBC,QAAQ;wBACX,MAAMC,SAAS,MAAMC,sBAAsB,cAAc,CAACJ;wBAC1D,IAAI,CAACG,OAAO,OAAO,EACf,MAAME,eAAeF,OAAO,KAAK;wBAGrC,MAAMG,cAAcL,QAAQ,SAAS,CAAC,OAAO,CAACM;wBAC9C,MAAMC,iBAAiB,MAAMF,YAAY,OAAO,CAACN;wBAEjD,IAAIQ,eAAe,MAAM,IACrB,MAAM,IAAIC,cACN,CAAC,iBAAiB,EAAET,KAAK,GAAG,CAAC,WAAW,EAAEA,KAAK,EAAE,CAAC,gBAAgB,CAAC;wBAI3E,OAAOQ,eAAe,KAAK;oBAC/B;gBAEJ,eAAe,OAAOT,GAAGC,MAAMC,UACpBS,YAAY;wBACf,MAAMP,SAAS,MAAMQ,wBAAwB,cAAc,CAACX;wBAC5D,IAAI,CAACG,OAAO,OAAO,EACf,MAAME,eAAeF,OAAO,KAAK;wBAGrC,MAAMS,gBAAgBX,QAAQ,SAAS,CAAC,OAAO,CAACY;wBAChD,MAAMC,aAAa,MAAMF,cAAc,OAAO,CAACT,OAAO,IAAI;wBAE1D,IAAIW,WAAW,MAAM,IACjB,MAAMA,WAAW,KAAK;wBAG1B,OAAOA,WAAW,KAAK;oBAC3B;YAER;YACA,mBAAmB;gBACf,eAAe,OAAOf,GAAGC,MAAMC,UACpBC,QAAQ;wBACX,MAAMC,SAAS,MAAMY,wBAAwB,cAAc,CAACf;wBAC5D,IAAI,CAACG,OAAO,OAAO,EACf,MAAME,eAAeF,OAAO,KAAK;wBAGrC,MAAMa,gBAAgBf,QAAQ,SAAS,CAAC,OAAO,CAACgB;wBAChD,MAAMC,cAAc,MAAMF,cAAc,OAAO,CAAC;4BAC5C,KAAKb,OAAO,IAAI,CAAC,GAAG;4BACpB,IAAIA,OAAO,IAAI,CAAC,EAAE;4BAClB,GAAGA,OAAO,IAAI,CAAC,IAAI;wBACvB;wBAEA,IAAIe,YAAY,MAAM,IAClB,MAAMA,YAAY,KAAK;wBAG3B,OAAOA,YAAY,KAAK;oBAC5B;gBAEJ,gBAAgB,OAAOnB,GAAGC,MAAMC,UACrBC,QAAQ;wBACX,MAAMC,SAAS,MAAMgB,yBAAyB,cAAc,CAACnB;wBAC7D,IAAI,CAACG,OAAO,OAAO,EACf,MAAME,eAAeF,OAAO,KAAK;wBAGrC,MAAMiB,iBAAiBnB,QAAQ,SAAS,CAAC,OAAO,CAACoB;wBACjD,MAAMC,eAAe,MAAMF,eAAe,OAAO,CAAC;4BAC9C,KAAKjB,OAAO,IAAI,CAAC,GAAG;4BACpB,IAAIA,OAAO,IAAI,CAAC,EAAE;wBACtB;wBAEA,IAAImB,aAAa,MAAM,IACnB,MAAMA,aAAa,KAAK;wBAG5B,OAAO;oBACX;YAER;QACJ;IACJ"}
|
package/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { ContextPlugin } from "@webiny/handler";
|
|
2
|
-
export declare const createWorkflows: () => ContextPlugin<import("@webiny/handler/types.js").Context
|
|
2
|
+
export declare const createWorkflows: () => (ContextPlugin<import("@webiny/handler/types.js").Context> | import("@webiny/handler").RegisterExtensionPlugin<import("@webiny/handler/types.js").Context>)[];
|
package/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { ContextPlugin } from "@webiny/handler";
|
|
2
|
-
import { TenantContext } from "@webiny/api-core/features/TenantContext";
|
|
1
|
+
import { ContextPlugin, createRegisterExtensionPlugin } from "@webiny/handler";
|
|
2
|
+
import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
|
|
3
3
|
import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
|
|
4
4
|
import { WcpContext } from "@webiny/api-core/features/wcp/WcpContext/index.js";
|
|
5
5
|
import { GetModelUseCase } from "@webiny/api-headless-cms/features/contentModel/GetModel/index.js";
|
|
6
|
-
import { WORKFLOW_MODEL_ID, WorkflowModel
|
|
7
|
-
import { WORKFLOW_STATE_MODEL_ID, WorkflowStateModel
|
|
6
|
+
import { WORKFLOW_MODEL_ID, WorkflowModel } from "./domain/workflow/workflowModel.js";
|
|
7
|
+
import { WORKFLOW_STATE_MODEL_ID, WorkflowStateModel } from "./domain/workflowState/stateModel.js";
|
|
8
8
|
import { createWorkflowsSchema } from "./graphql/workflows.js";
|
|
9
9
|
import { createWorkflowStateSchema } from "./graphql/workflowState.js";
|
|
10
|
-
import { WorkflowModel } from "./domain/workflow/abstractions.js";
|
|
11
|
-
import { WorkflowStateModel } from "./domain/workflowState/abstractions.js";
|
|
10
|
+
import { WorkflowModel as abstractions_js_WorkflowModel } from "./domain/workflow/abstractions.js";
|
|
11
|
+
import { WorkflowStateModel as abstractions_js_WorkflowStateModel } from "./domain/workflowState/abstractions.js";
|
|
12
12
|
import { WorkflowMapper } from "./domain/workflow/WorkflowMapper.js";
|
|
13
13
|
import { WorkflowStateMapper } from "./domain/workflowState/WorkflowStateMapper.js";
|
|
14
14
|
import { GetWorkflowFeature } from "./features/workflow/GetWorkflow/feature.js";
|
|
@@ -35,70 +35,63 @@ import { GetUserTeamsFeature } from "./features/internal/GetUserTeams/feature.js
|
|
|
35
35
|
import { ListNotificationTypesFeature } from "./features/notifications/ListNotificationTypes/index.js";
|
|
36
36
|
import { NotificationTransportFeature } from "./features/notifications/NotificationTransport/index.js";
|
|
37
37
|
import { createNotificationsGraphQL } from "./graphql/notifications.js";
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const wcpContext = context.container.resolve(WcpContext);
|
|
43
|
-
const hasTenant = tenantContext.getTenant();
|
|
44
|
-
const canUseWorkflows = wcpContext.canUseWorkflows();
|
|
45
|
-
if (!hasTenant) {
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (!canUseWorkflows) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Register private models
|
|
53
|
-
context.container.register(WorkflowPrivateModel);
|
|
54
|
-
context.container.register(WorkflowStatePrivateModel);
|
|
55
|
-
|
|
56
|
-
// Fetch and register CMS models
|
|
57
|
-
const getModel = context.container.resolve(GetModelUseCase);
|
|
58
|
-
await identityContext.withoutAuthorization(async () => {
|
|
59
|
-
const [workflowModel, workflowStateModel] = await Promise.all([getModel.execute(WORKFLOW_MODEL_ID), getModel.execute(WORKFLOW_STATE_MODEL_ID)]);
|
|
60
|
-
context.container.registerInstance(WorkflowModel, workflowModel.value);
|
|
61
|
-
context.container.registerInstance(WorkflowStateModel, workflowStateModel.value);
|
|
38
|
+
const createWorkflows = ()=>{
|
|
39
|
+
const modelsPlugin = createRegisterExtensionPlugin((context)=>{
|
|
40
|
+
context.container.register(WorkflowModel);
|
|
41
|
+
context.container.register(WorkflowStateModel);
|
|
62
42
|
});
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
43
|
+
const workflowsContextPlugin = new ContextPlugin(async (context)=>{
|
|
44
|
+
const tenantContext = context.container.resolve(TenantContext);
|
|
45
|
+
const identityContext = context.container.resolve(IdentityContext);
|
|
46
|
+
const wcpContext = context.container.resolve(WcpContext);
|
|
47
|
+
const hasTenant = tenantContext.getTenant();
|
|
48
|
+
const canUseWorkflows = wcpContext.canUseWorkflows();
|
|
49
|
+
if (!hasTenant) return;
|
|
50
|
+
if (!canUseWorkflows) return;
|
|
51
|
+
context.container.register(WorkflowModel);
|
|
52
|
+
context.container.register(WorkflowStateModel);
|
|
53
|
+
const getModel = context.container.resolve(GetModelUseCase);
|
|
54
|
+
await identityContext.withoutAuthorization(async ()=>{
|
|
55
|
+
const [workflowModel, workflowStateModel] = await Promise.all([
|
|
56
|
+
getModel.execute(WORKFLOW_MODEL_ID),
|
|
57
|
+
getModel.execute(WORKFLOW_STATE_MODEL_ID)
|
|
58
|
+
]);
|
|
59
|
+
context.container.registerInstance(abstractions_js_WorkflowModel, workflowModel.value);
|
|
60
|
+
context.container.registerInstance(abstractions_js_WorkflowStateModel, workflowStateModel.value);
|
|
61
|
+
});
|
|
62
|
+
context.container.register(WorkflowMapper);
|
|
63
|
+
context.container.register(WorkflowStateMapper);
|
|
64
|
+
ListNotificationTypesFeature.register(context.container);
|
|
65
|
+
NotificationTransportFeature.register(context.container);
|
|
66
|
+
GetWorkflowFeature.register(context.container);
|
|
67
|
+
ListWorkflowsFeature.register(context.container);
|
|
68
|
+
CreateWorkflowFeature.register(context.container);
|
|
69
|
+
DeleteWorkflowFeature.register(context.container);
|
|
70
|
+
UpdateWorkflowFeature.register(context.container);
|
|
71
|
+
StoreWorkflowFeature.register(context.container);
|
|
72
|
+
GetUserTeamsFeature.register(context.container);
|
|
73
|
+
GetWorkflowStateFeature.register(context.container);
|
|
74
|
+
GetTargetWorkflowStateFeature.register(context.container);
|
|
75
|
+
ListOwnWorkflowStatesFeature.register(context.container);
|
|
76
|
+
ListWorkflowStatesFeature.register(context.container);
|
|
77
|
+
ListRequestedWorkflowStatesFeature.register(context.container);
|
|
78
|
+
CreateWorkflowStateFeature.register(context.container);
|
|
79
|
+
UpdateWorkflowStateFeature.register(context.container);
|
|
80
|
+
CancelWorkflowStateFeature.register(context.container);
|
|
81
|
+
DeleteWorkflowStateFeature.register(context.container);
|
|
82
|
+
DeleteTargetWorkflowStateFeature.register(context.container);
|
|
83
|
+
StartWorkflowStateStepFeature.register(context.container);
|
|
84
|
+
ApproveWorkflowStateStepFeature.register(context.container);
|
|
85
|
+
RejectWorkflowStateStepFeature.register(context.container);
|
|
86
|
+
TakeOverWorkflowStateStepFeature.register(context.container);
|
|
87
|
+
context.plugins.register(createNotificationsGraphQL(), createWorkflowsSchema(), createWorkflowStateSchema());
|
|
88
|
+
});
|
|
89
|
+
workflowsContextPlugin.name = "workflows.context";
|
|
90
|
+
return [
|
|
91
|
+
workflowsContextPlugin,
|
|
92
|
+
modelsPlugin
|
|
93
|
+
];
|
|
102
94
|
};
|
|
95
|
+
export { createWorkflows };
|
|
103
96
|
|
|
104
97
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ContextPlugin","TenantContext","IdentityContext","WcpContext","GetModelUseCase","WORKFLOW_MODEL_ID","WorkflowModel","WorkflowPrivateModel","WORKFLOW_STATE_MODEL_ID","WorkflowStateModel","WorkflowStatePrivateModel","createWorkflowsSchema","createWorkflowStateSchema","WorkflowMapper","WorkflowStateMapper","GetWorkflowFeature","ListWorkflowsFeature","CreateWorkflowFeature","DeleteWorkflowFeature","UpdateWorkflowFeature","StoreWorkflowFeature","GetWorkflowStateFeature","GetTargetWorkflowStateFeature","ListOwnWorkflowStatesFeature","ListWorkflowStatesFeature","ListRequestedWorkflowStatesFeature","CreateWorkflowStateFeature","UpdateWorkflowStateFeature","CancelWorkflowStateFeature","DeleteWorkflowStateFeature","DeleteTargetWorkflowStateFeature","StartWorkflowStateStepFeature","ApproveWorkflowStateStepFeature","RejectWorkflowStateStepFeature","TakeOverWorkflowStateStepFeature","GetUserTeamsFeature","ListNotificationTypesFeature","NotificationTransportFeature","createNotificationsGraphQL","createWorkflows","plugin","context","tenantContext","container","resolve","identityContext","wcpContext","hasTenant","getTenant","canUseWorkflows","register","getModel","withoutAuthorization","workflowModel","workflowStateModel","Promise","all","execute","registerInstance","value","plugins","name"],"sources":["index.ts"],"sourcesContent":["import { ContextPlugin } from \"@webiny/handler\";\nimport { TenantContext } from \"@webiny/api-core/features/TenantContext\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { WcpContext } from \"@webiny/api-core/features/wcp/WcpContext/index.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport {\n WORKFLOW_MODEL_ID,\n WorkflowModel as WorkflowPrivateModel\n} from \"./domain/workflow/workflowModel.js\";\nimport {\n WORKFLOW_STATE_MODEL_ID,\n WorkflowStateModel as WorkflowStatePrivateModel\n} from \"./domain/workflowState/stateModel.js\";\nimport { createWorkflowsSchema } from \"~/graphql/workflows.js\";\nimport { createWorkflowStateSchema } from \"~/graphql/workflowState.js\";\nimport { WorkflowModel } from \"./domain/workflow/abstractions.js\";\nimport { WorkflowStateModel } from \"./domain/workflowState/abstractions.js\";\nimport { WorkflowMapper } from \"~/domain/workflow/WorkflowMapper.js\";\nimport { WorkflowStateMapper } from \"~/domain/workflowState/WorkflowStateMapper.js\";\nimport { GetWorkflowFeature } from \"~/features/workflow/GetWorkflow/feature.js\";\nimport { ListWorkflowsFeature } from \"~/features/workflow/ListWorkflows/feature.js\";\nimport { CreateWorkflowFeature } from \"~/features/workflow/CreateWorkflow/feature.js\";\nimport { DeleteWorkflowFeature } from \"~/features/workflow/DeleteWorkflow/feature.js\";\nimport { UpdateWorkflowFeature } from \"~/features/workflow/UpdateWorkflow/feature.js\";\nimport { StoreWorkflowFeature } from \"~/features/workflow/StoreWorkflow/feature.js\";\nimport { GetWorkflowStateFeature } from \"~/features/workflowState/GetWorkflowState/feature.js\";\nimport { GetTargetWorkflowStateFeature } from \"~/features/workflowState/GetTargetWorkflowState/feature.js\";\nimport { ListOwnWorkflowStatesFeature } from \"~/features/workflowState/ListOwnWorkflowStates/feature.js\";\nimport { ListWorkflowStatesFeature } from \"~/features/workflowState/ListWorkflowStates/feature.js\";\nimport { ListRequestedWorkflowStatesFeature } from \"~/features/workflowState/ListRequestedWorkflowStates/feature.js\";\nimport { CreateWorkflowStateFeature } from \"~/features/workflowState/CreateWorkflowState/feature.js\";\nimport { UpdateWorkflowStateFeature } from \"~/features/workflowState/UpdateWorkflowState/feature.js\";\nimport { CancelWorkflowStateFeature } from \"~/features/workflowState/CancelWorkflowState/feature.js\";\nimport { DeleteWorkflowStateFeature } from \"~/features/workflowState/DeleteWorkflowState/feature.js\";\nimport { DeleteTargetWorkflowStateFeature } from \"~/features/workflowState/DeleteTargetWorkflowState/feature.js\";\nimport { StartWorkflowStateStepFeature } from \"~/features/workflowState/StartWorkflowStateStep/feature.js\";\nimport { ApproveWorkflowStateStepFeature } from \"~/features/workflowState/ApproveWorkflowStateStep/feature.js\";\nimport { RejectWorkflowStateStepFeature } from \"~/features/workflowState/RejectWorkflowStateStep/feature.js\";\nimport { TakeOverWorkflowStateStepFeature } from \"~/features/workflowState/TakeOverWorkflowStateStep/feature.js\";\nimport { GetUserTeamsFeature } from \"~/features/internal/GetUserTeams/feature.js\";\nimport { ListNotificationTypesFeature } from \"~/features/notifications/ListNotificationTypes/index.js\";\nimport { NotificationTransportFeature } from \"./features/notifications/NotificationTransport/index.js\";\nimport { createNotificationsGraphQL } from \"~/graphql/notifications.js\";\n\nexport const createWorkflows = () => {\n const plugin = new ContextPlugin(async context => {\n const tenantContext = context.container.resolve(TenantContext);\n const identityContext = context.container.resolve(IdentityContext);\n const wcpContext = context.container.resolve(WcpContext);\n\n const hasTenant = tenantContext.getTenant();\n const canUseWorkflows = wcpContext.canUseWorkflows();\n if (!hasTenant) {\n return;\n }\n\n if (!canUseWorkflows) {\n return;\n }\n\n // Register private models\n context.container.register(WorkflowPrivateModel);\n context.container.register(WorkflowStatePrivateModel);\n\n // Fetch and register CMS models\n const getModel = context.container.resolve(GetModelUseCase);\n\n await identityContext.withoutAuthorization(async () => {\n const [workflowModel, workflowStateModel] = await Promise.all([\n getModel.execute(WORKFLOW_MODEL_ID),\n getModel.execute(WORKFLOW_STATE_MODEL_ID)\n ]);\n\n context.container.registerInstance(WorkflowModel, workflowModel.value);\n context.container.registerInstance(WorkflowStateModel, workflowStateModel.value);\n });\n\n // Register mappers\n context.container.register(WorkflowMapper);\n context.container.register(WorkflowStateMapper);\n\n // Register notification features\n ListNotificationTypesFeature.register(context.container);\n NotificationTransportFeature.register(context.container);\n\n // Register workflow features\n GetWorkflowFeature.register(context.container);\n ListWorkflowsFeature.register(context.container);\n CreateWorkflowFeature.register(context.container);\n DeleteWorkflowFeature.register(context.container);\n UpdateWorkflowFeature.register(context.container);\n StoreWorkflowFeature.register(context.container);\n\n // Register internal features\n GetUserTeamsFeature.register(context.container);\n\n // Register workflow state features\n GetWorkflowStateFeature.register(context.container);\n GetTargetWorkflowStateFeature.register(context.container);\n ListOwnWorkflowStatesFeature.register(context.container);\n ListWorkflowStatesFeature.register(context.container);\n ListRequestedWorkflowStatesFeature.register(context.container);\n CreateWorkflowStateFeature.register(context.container);\n UpdateWorkflowStateFeature.register(context.container);\n CancelWorkflowStateFeature.register(context.container);\n DeleteWorkflowStateFeature.register(context.container);\n DeleteTargetWorkflowStateFeature.register(context.container);\n StartWorkflowStateStepFeature.register(context.container);\n ApproveWorkflowStateStepFeature.register(context.container);\n RejectWorkflowStateStepFeature.register(context.container);\n TakeOverWorkflowStateStepFeature.register(context.container);\n\n context.plugins.register(\n createNotificationsGraphQL(),\n createWorkflowsSchema(),\n createWorkflowStateSchema()\n );\n });\n\n plugin.name = \"workflows.context\";\n\n return plugin;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { ContextPlugin, createRegisterExtensionPlugin } from \"@webiny/handler\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { WcpContext } from \"@webiny/api-core/features/wcp/WcpContext/index.js\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport {\n WORKFLOW_MODEL_ID,\n WorkflowModel as WorkflowPrivateModel\n} from \"./domain/workflow/workflowModel.js\";\nimport {\n WORKFLOW_STATE_MODEL_ID,\n WorkflowStateModel as WorkflowStatePrivateModel\n} from \"./domain/workflowState/stateModel.js\";\nimport { createWorkflowsSchema } from \"~/graphql/workflows.js\";\nimport { createWorkflowStateSchema } from \"~/graphql/workflowState.js\";\nimport { WorkflowModel } from \"./domain/workflow/abstractions.js\";\nimport { WorkflowStateModel } from \"./domain/workflowState/abstractions.js\";\nimport { WorkflowMapper } from \"~/domain/workflow/WorkflowMapper.js\";\nimport { WorkflowStateMapper } from \"~/domain/workflowState/WorkflowStateMapper.js\";\nimport { GetWorkflowFeature } from \"~/features/workflow/GetWorkflow/feature.js\";\nimport { ListWorkflowsFeature } from \"~/features/workflow/ListWorkflows/feature.js\";\nimport { CreateWorkflowFeature } from \"~/features/workflow/CreateWorkflow/feature.js\";\nimport { DeleteWorkflowFeature } from \"~/features/workflow/DeleteWorkflow/feature.js\";\nimport { UpdateWorkflowFeature } from \"~/features/workflow/UpdateWorkflow/feature.js\";\nimport { StoreWorkflowFeature } from \"~/features/workflow/StoreWorkflow/feature.js\";\nimport { GetWorkflowStateFeature } from \"~/features/workflowState/GetWorkflowState/feature.js\";\nimport { GetTargetWorkflowStateFeature } from \"~/features/workflowState/GetTargetWorkflowState/feature.js\";\nimport { ListOwnWorkflowStatesFeature } from \"~/features/workflowState/ListOwnWorkflowStates/feature.js\";\nimport { ListWorkflowStatesFeature } from \"~/features/workflowState/ListWorkflowStates/feature.js\";\nimport { ListRequestedWorkflowStatesFeature } from \"~/features/workflowState/ListRequestedWorkflowStates/feature.js\";\nimport { CreateWorkflowStateFeature } from \"~/features/workflowState/CreateWorkflowState/feature.js\";\nimport { UpdateWorkflowStateFeature } from \"~/features/workflowState/UpdateWorkflowState/feature.js\";\nimport { CancelWorkflowStateFeature } from \"~/features/workflowState/CancelWorkflowState/feature.js\";\nimport { DeleteWorkflowStateFeature } from \"~/features/workflowState/DeleteWorkflowState/feature.js\";\nimport { DeleteTargetWorkflowStateFeature } from \"~/features/workflowState/DeleteTargetWorkflowState/feature.js\";\nimport { StartWorkflowStateStepFeature } from \"~/features/workflowState/StartWorkflowStateStep/feature.js\";\nimport { ApproveWorkflowStateStepFeature } from \"~/features/workflowState/ApproveWorkflowStateStep/feature.js\";\nimport { RejectWorkflowStateStepFeature } from \"~/features/workflowState/RejectWorkflowStateStep/feature.js\";\nimport { TakeOverWorkflowStateStepFeature } from \"~/features/workflowState/TakeOverWorkflowStateStep/feature.js\";\nimport { GetUserTeamsFeature } from \"~/features/internal/GetUserTeams/feature.js\";\nimport { ListNotificationTypesFeature } from \"~/features/notifications/ListNotificationTypes/index.js\";\nimport { NotificationTransportFeature } from \"./features/notifications/NotificationTransport/index.js\";\nimport { createNotificationsGraphQL } from \"~/graphql/notifications.js\";\n\nexport const createWorkflows = () => {\n const modelsPlugin = createRegisterExtensionPlugin(context => {\n context.container.register(WorkflowPrivateModel);\n context.container.register(WorkflowStatePrivateModel);\n });\n\n const workflowsContextPlugin = new ContextPlugin(async context => {\n const tenantContext = context.container.resolve(TenantContext);\n const identityContext = context.container.resolve(IdentityContext);\n const wcpContext = context.container.resolve(WcpContext);\n\n const hasTenant = tenantContext.getTenant();\n const canUseWorkflows = wcpContext.canUseWorkflows();\n if (!hasTenant) {\n return;\n }\n\n if (!canUseWorkflows) {\n return;\n }\n\n // Register private models\n context.container.register(WorkflowPrivateModel);\n context.container.register(WorkflowStatePrivateModel);\n\n // Fetch and register CMS models\n const getModel = context.container.resolve(GetModelUseCase);\n\n await identityContext.withoutAuthorization(async () => {\n const [workflowModel, workflowStateModel] = await Promise.all([\n getModel.execute(WORKFLOW_MODEL_ID),\n getModel.execute(WORKFLOW_STATE_MODEL_ID)\n ]);\n\n context.container.registerInstance(WorkflowModel, workflowModel.value);\n context.container.registerInstance(WorkflowStateModel, workflowStateModel.value);\n });\n\n // Register mappers\n context.container.register(WorkflowMapper);\n context.container.register(WorkflowStateMapper);\n\n // Register notification features\n ListNotificationTypesFeature.register(context.container);\n NotificationTransportFeature.register(context.container);\n\n // Register workflow features\n GetWorkflowFeature.register(context.container);\n ListWorkflowsFeature.register(context.container);\n CreateWorkflowFeature.register(context.container);\n DeleteWorkflowFeature.register(context.container);\n UpdateWorkflowFeature.register(context.container);\n StoreWorkflowFeature.register(context.container);\n\n // Register internal features\n GetUserTeamsFeature.register(context.container);\n\n // Register workflow state features\n GetWorkflowStateFeature.register(context.container);\n GetTargetWorkflowStateFeature.register(context.container);\n ListOwnWorkflowStatesFeature.register(context.container);\n ListWorkflowStatesFeature.register(context.container);\n ListRequestedWorkflowStatesFeature.register(context.container);\n CreateWorkflowStateFeature.register(context.container);\n UpdateWorkflowStateFeature.register(context.container);\n CancelWorkflowStateFeature.register(context.container);\n DeleteWorkflowStateFeature.register(context.container);\n DeleteTargetWorkflowStateFeature.register(context.container);\n StartWorkflowStateStepFeature.register(context.container);\n ApproveWorkflowStateStepFeature.register(context.container);\n RejectWorkflowStateStepFeature.register(context.container);\n TakeOverWorkflowStateStepFeature.register(context.container);\n\n context.plugins.register(\n createNotificationsGraphQL(),\n createWorkflowsSchema(),\n createWorkflowStateSchema()\n );\n });\n\n workflowsContextPlugin.name = \"workflows.context\";\n\n return [workflowsContextPlugin, modelsPlugin];\n};\n"],"names":["createWorkflows","modelsPlugin","createRegisterExtensionPlugin","context","WorkflowPrivateModel","WorkflowStatePrivateModel","workflowsContextPlugin","ContextPlugin","tenantContext","TenantContext","identityContext","IdentityContext","wcpContext","WcpContext","hasTenant","canUseWorkflows","getModel","GetModelUseCase","workflowModel","workflowStateModel","Promise","WORKFLOW_MODEL_ID","WORKFLOW_STATE_MODEL_ID","WorkflowModel","WorkflowStateModel","WorkflowMapper","WorkflowStateMapper","ListNotificationTypesFeature","NotificationTransportFeature","GetWorkflowFeature","ListWorkflowsFeature","CreateWorkflowFeature","DeleteWorkflowFeature","UpdateWorkflowFeature","StoreWorkflowFeature","GetUserTeamsFeature","GetWorkflowStateFeature","GetTargetWorkflowStateFeature","ListOwnWorkflowStatesFeature","ListWorkflowStatesFeature","ListRequestedWorkflowStatesFeature","CreateWorkflowStateFeature","UpdateWorkflowStateFeature","CancelWorkflowStateFeature","DeleteWorkflowStateFeature","DeleteTargetWorkflowStateFeature","StartWorkflowStateStepFeature","ApproveWorkflowStateStepFeature","RejectWorkflowStateStepFeature","TakeOverWorkflowStateStepFeature","createNotificationsGraphQL","createWorkflowsSchema","createWorkflowStateSchema"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CO,MAAMA,kBAAkB;IAC3B,MAAMC,eAAeC,8BAA8BC,CAAAA;QAC/CA,QAAQ,SAAS,CAAC,QAAQ,CAACC;QAC3BD,QAAQ,SAAS,CAAC,QAAQ,CAACE;IAC/B;IAEA,MAAMC,yBAAyB,IAAIC,cAAc,OAAMJ;QACnD,MAAMK,gBAAgBL,QAAQ,SAAS,CAAC,OAAO,CAACM;QAChD,MAAMC,kBAAkBP,QAAQ,SAAS,CAAC,OAAO,CAACQ;QAClD,MAAMC,aAAaT,QAAQ,SAAS,CAAC,OAAO,CAACU;QAE7C,MAAMC,YAAYN,cAAc,SAAS;QACzC,MAAMO,kBAAkBH,WAAW,eAAe;QAClD,IAAI,CAACE,WACD;QAGJ,IAAI,CAACC,iBACD;QAIJZ,QAAQ,SAAS,CAAC,QAAQ,CAACC;QAC3BD,QAAQ,SAAS,CAAC,QAAQ,CAACE;QAG3B,MAAMW,WAAWb,QAAQ,SAAS,CAAC,OAAO,CAACc;QAE3C,MAAMP,gBAAgB,oBAAoB,CAAC;YACvC,MAAM,CAACQ,eAAeC,mBAAmB,GAAG,MAAMC,QAAQ,GAAG,CAAC;gBAC1DJ,SAAS,OAAO,CAACK;gBACjBL,SAAS,OAAO,CAACM;aACpB;YAEDnB,QAAQ,SAAS,CAAC,gBAAgB,CAACoB,+BAAeL,cAAc,KAAK;YACrEf,QAAQ,SAAS,CAAC,gBAAgB,CAACqB,oCAAoBL,mBAAmB,KAAK;QACnF;QAGAhB,QAAQ,SAAS,CAAC,QAAQ,CAACsB;QAC3BtB,QAAQ,SAAS,CAAC,QAAQ,CAACuB;QAG3BC,6BAA6B,QAAQ,CAACxB,QAAQ,SAAS;QACvDyB,6BAA6B,QAAQ,CAACzB,QAAQ,SAAS;QAGvD0B,mBAAmB,QAAQ,CAAC1B,QAAQ,SAAS;QAC7C2B,qBAAqB,QAAQ,CAAC3B,QAAQ,SAAS;QAC/C4B,sBAAsB,QAAQ,CAAC5B,QAAQ,SAAS;QAChD6B,sBAAsB,QAAQ,CAAC7B,QAAQ,SAAS;QAChD8B,sBAAsB,QAAQ,CAAC9B,QAAQ,SAAS;QAChD+B,qBAAqB,QAAQ,CAAC/B,QAAQ,SAAS;QAG/CgC,oBAAoB,QAAQ,CAAChC,QAAQ,SAAS;QAG9CiC,wBAAwB,QAAQ,CAACjC,QAAQ,SAAS;QAClDkC,8BAA8B,QAAQ,CAAClC,QAAQ,SAAS;QACxDmC,6BAA6B,QAAQ,CAACnC,QAAQ,SAAS;QACvDoC,0BAA0B,QAAQ,CAACpC,QAAQ,SAAS;QACpDqC,mCAAmC,QAAQ,CAACrC,QAAQ,SAAS;QAC7DsC,2BAA2B,QAAQ,CAACtC,QAAQ,SAAS;QACrDuC,2BAA2B,QAAQ,CAACvC,QAAQ,SAAS;QACrDwC,2BAA2B,QAAQ,CAACxC,QAAQ,SAAS;QACrDyC,2BAA2B,QAAQ,CAACzC,QAAQ,SAAS;QACrD0C,iCAAiC,QAAQ,CAAC1C,QAAQ,SAAS;QAC3D2C,8BAA8B,QAAQ,CAAC3C,QAAQ,SAAS;QACxD4C,gCAAgC,QAAQ,CAAC5C,QAAQ,SAAS;QAC1D6C,+BAA+B,QAAQ,CAAC7C,QAAQ,SAAS;QACzD8C,iCAAiC,QAAQ,CAAC9C,QAAQ,SAAS;QAE3DA,QAAQ,OAAO,CAAC,QAAQ,CACpB+C,8BACAC,yBACAC;IAER;IAEA9C,uBAAuB,IAAI,GAAG;IAE9B,OAAO;QAACA;QAAwBL;KAAa;AACjD"}
|