#import "~/graphql_shared/fragments/alert.fragment.graphql"
#import "~/graphql_shared/fragments/user.fragment.graphql"

query getAlerts(
  $projectPath: ID!
  $statuses: [AlertManagementStatus!]
  $sort: AlertManagementAlertSort
  $firstPageSize: Int
  $lastPageSize: Int
  $prevPageCursor: String = ""
  $nextPageCursor: String = ""
  $searchTerm: String = ""
  $assigneeUsername: String = ""
  $domain: AlertManagementDomainFilter = operations
) {
  project(fullPath: $projectPath) {
    id
    alertManagementAlerts(
      search: $searchTerm
      assigneeUsername: $assigneeUsername
      statuses: $statuses
      sort: $sort
      first: $firstPageSize
      last: $lastPageSize
      after: $nextPageCursor
      before: $prevPageCursor
      domain: $domain
    ) {
      nodes {
        ...AlertListItem
        assignees {
          nodes {
            ...User
          }
        }
      }
      pageInfo {
        hasNextPage
        endCursor
        hasPreviousPage
        startCursor
      }
    }
  }
}
