mirror of
https://github.com/jdalrymple/gitbeaker.git
synced 2026-01-18 15:55:30 +00:00
43 lines
927 B
JavaScript
43 lines
927 B
JavaScript
const BaseModel = require('./BaseModel');
|
|
const Utils = require('../Utils');
|
|
|
|
const ACCESS_LEVELS = {
|
|
GUEST: 10,
|
|
REPORTER: 20,
|
|
DEVELOPER: 30,
|
|
MASTER: 40,
|
|
OWNER: 50,
|
|
};
|
|
|
|
class GroupAccessRequests extends BaseModel {
|
|
constructor(){
|
|
this.ACCESS_LEVELS = ACCESS_LEVELS;
|
|
}
|
|
|
|
all(groupId) {
|
|
const gId = Utils.parse(groupId);
|
|
|
|
return this.get(`groups/${gId}/access_requests`);
|
|
}
|
|
|
|
request(groupId) {
|
|
const gId = Utils.parse(groupId);
|
|
|
|
return this.post(`groups/${gId}/access_requests`);
|
|
}
|
|
|
|
approve(groupId, userId, {access_level = 30}) {
|
|
const [gId, uId] = [groupId, userId].map(Utils.parse);
|
|
|
|
return this.post(`groups/${gId}/access_requests/${uId}/approve`, {access_level});
|
|
}
|
|
|
|
deny(groupId, userId) {
|
|
const [gId, uId] = [groupId, userId].map(Utils.parse);
|
|
|
|
return this.delete(`groups/${gId}/access_requests/${uId}/approve`);
|
|
}
|
|
}
|
|
|
|
module.exports = GroupAccessRequests;
|