forked from Ermlab/nxt-gitlab
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProjectMergeRequests.coffee
More file actions
44 lines (36 loc) · 1.74 KB
/
ProjectMergeRequests.coffee
File metadata and controls
44 lines (36 loc) · 1.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
BaseModel = require '../BaseModel'
Utils = require '../Utils'
class ProjectMergeRequests extends BaseModel
list: (projectId, params={}, fn = null) =>
if 'function' is typeof params
fn = params
params={}
params.page ?= 1
params.per_page ?= 100
@debug "Projects::mergerequests()"
@get "projects/#{Utils.parseProjectId projectId}/merge_requests", params, (data) => fn data if fn
show: (projectId, mergerequestId, fn = null) =>
@debug "Projects::mergerequest()"
@get "projects/#{Utils.parseProjectId projectId}/merge_request/@{parseInt mergerequestId}", (data) => fn data if fn
add: (projectId, sourceBranch, targetBranch, assigneeId, title, fn = null) =>
@debug "Projects::addMergeRequest()"
params =
id: Utils.parseProjectId projectId
source_branch: sourceBranch
target_branch: targetBranch
assignee_id: parseInt assigneeId
title: title
@post "projects/#{Utils.parseProjectId projectId}/merge_requests", params, (data) => fn data if fn
update: (projectId, mergerequestId, url, fn = null) =>
@debug "Projects::saveMergeRequest()"
params =
access_level: parseInt accessLevel
@put "projects/#{Utils.parseProjectId projectId}/merge_request/#{parseInt mergerequestId}", params, (data) => fn data if fn
comment: (projectId, mergerequestId, note, fn = null) =>
@debug "Projects::commentMergeRequest()"
params =
id: Utils.parseProjectId projectId
merge_request_id: parseInt mergerequestId
note: note
@post "projects/#{Utils.parseProjectId projectId}/merge_request/#{parseInt mergerequestId}/comments", params, (data) => fn data if fn
module.exports = (client) -> new ProjectMergeRequests client