import { Injectable } from '@nestjs/common';
import { WorkflowAction } from 'src/common/entities';
import { WorkflowActionRepository } from '../repositories/workflow-action.repository';
import { handleKnownErrors } from 'src/common/utils/handle-error.util';
import { ERROR_CODES } from 'src/common/constants/error-string-constants';

@Injectable()
export class WorkflowActionService {
  constructor(private readonly workflowActionRepository: WorkflowActionRepository) {}

  async getActionsByWorkflowConfigurationId(workflowConfigurationId: number): Promise<WorkflowAction[]> {
    try {
      return await this.workflowActionRepository.findByWorkflowConfigurationId(workflowConfigurationId);
    } catch (error) {
      handleKnownErrors(ERROR_CODES.WORKFLOW_ACTION_GET_FAILED, error);
    }
  }
}
