public async Task <IActionResult> GetAllAsync([FromQuery] InviteFilterCommand command,
                                                      CancellationToken cancellationToken)
        {
            var result = await _mediator.Send(command, cancellationToken);

            return(result.Failures.Any() ? BadRequest(result.GenerateFailuresOutput()) as IActionResult : Ok(result.Data));
        }
        public async Task <ApiResponse <Pagination <Invite> > > Handle(InviteFilterCommand request,
                                                                       CancellationToken cancellationToken)
        {
            var query = _repository.Query(x =>
                                          (request.MemberId == Guid.Empty || x.MemberId == request.MemberId) &&
                                          (request.GuildId == Guid.Empty || x.GuildId == request.GuildId), true);
            var count   = query.Count();
            var invites = await query.Take(request.Count).ToListAsync(cancellationToken);

            var invitesPaginated = new Pagination <Invite>(invites, count, request.Count);

            return(new ApiResponse <Pagination <Invite> >(invitesPaginated));
        }