mirror of
https://github.com/jdalrymple/gitbeaker.git
synced 2026-01-25 16:04:01 +00:00
37 lines
1017 B
TypeScript
37 lines
1017 B
TypeScript
import {
|
|
BaseRequestOptions,
|
|
BaseService,
|
|
PaginatedRequestOptions,
|
|
RequestHelper,
|
|
} from '../infrastructure';
|
|
import { UserId } from '.';
|
|
|
|
const url = userId => (userId ? `users/${encodeURIComponent(userId)}/emails` : 'user/emails');
|
|
|
|
class UserEmails extends BaseService {
|
|
all({ userId, ...options }: { userId?: UserId } & PaginatedRequestOptions = {}) {
|
|
return RequestHelper.get(this, url(userId), options);
|
|
}
|
|
|
|
add(email, { userId, ...options }: { userId?: UserId } & BaseRequestOptions = {}) {
|
|
return RequestHelper.post(this, url(userId), {
|
|
email,
|
|
...options,
|
|
});
|
|
}
|
|
|
|
show(emailId, options?: BaseRequestOptions) {
|
|
const eId = encodeURIComponent(emailId);
|
|
|
|
return RequestHelper.get(this, `user/emails/${eId}`, options);
|
|
}
|
|
|
|
remove(emailId, { userId, ...options }: { userId?: UserId } & BaseRequestOptions = {}) {
|
|
const eId = encodeURIComponent(emailId);
|
|
|
|
return RequestHelper.del(this, `${url(userId)}/${eId}`, options);
|
|
}
|
|
}
|
|
|
|
export default UserEmails;
|