Skip to content

Commit f20ac29

Browse files
committed
Add per_page
1 parent 8f78b18 commit f20ac29

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

OctoKit/PullRequest.swift

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,10 @@ public extension Octokit {
130130
state: Openness = .open,
131131
sort: SortType = .created,
132132
direction: SortDirection = .desc,
133+
perPage: Int = 30,
133134
completion: @escaping (_ response: Result<[PullRequest], Error>) -> Void) -> URLSessionDataTaskProtocol?
134135
{
135-
let router = PullRequestRouter.readPullRequests(configuration, owner, repository, base, head, state, sort, direction)
136+
let router = PullRequestRouter.readPullRequests(configuration, owner, repository, base, head, state, sort, direction, perPage)
136137
return router.load(session, dateDecodingStrategy: .formatted(Time.rfc3339DateFormatter), expectedResultType: [PullRequest].self) { pullRequests, error in
137138
if let error = error {
138139
completion(.failure(error))
@@ -149,7 +150,7 @@ public extension Octokit {
149150

150151
enum PullRequestRouter: JSONPostRouter {
151152
case readPullRequest(Configuration, String, String, String)
152-
case readPullRequests(Configuration, String, String, String?, String?, Openness, SortType, SortDirection)
153+
case readPullRequests(Configuration, String, String, String?, String?, Openness, SortType, SortDirection, Int)
153154

154155
var method: HTTPMethod {
155156
switch self {
@@ -169,19 +170,20 @@ enum PullRequestRouter: JSONPostRouter {
169170
var configuration: Configuration {
170171
switch self {
171172
case let .readPullRequest(config, _, _, _): return config
172-
case let .readPullRequests(config, _, _, _, _, _, _, _): return config
173+
case let .readPullRequests(config, _, _, _, _, _, _, _, _): return config
173174
}
174175
}
175176

176177
var params: [String: Any] {
177178
switch self {
178179
case .readPullRequest:
179180
return [:]
180-
case let .readPullRequests(_, _, _, base, head, state, sort, direction):
181+
case let .readPullRequests(_, _, _, base, head, state, sort, direction, perPage):
181182
var parameters = [
182183
"state": state.rawValue,
183184
"sort": sort.rawValue,
184-
"direction": direction.rawValue
185+
"direction": direction.rawValue,
186+
"per_page": "\(perPage)"
185187
]
186188

187189
if let base = base {
@@ -200,7 +202,7 @@ enum PullRequestRouter: JSONPostRouter {
200202
switch self {
201203
case let .readPullRequest(_, owner, repository, number):
202204
return "repos/\(owner)/\(repository)/pulls/\(number)"
203-
case let .readPullRequests(_, owner, repository, _, _, _, _, _):
205+
case let .readPullRequests(_, owner, repository, _, _, _, _, _, _):
204206
return "repos/\(owner)/\(repository)/pulls"
205207
}
206208
}

0 commit comments

Comments
 (0)