fix: Fixing Todos support. If todoId was not passed, an undefined value would be introduced into the url

This commit is contained in:
Justin Dalrymple 2018-10-15 12:45:26 -04:00
parent 0156724eb9
commit cbeef188d0

View File

@ -1,23 +1,20 @@
import { BaseService, RequestHelper } from '../infrastructure';
interface TodosOptions {
todoId?: string;
}
class Todos extends BaseService {
all(options) {
return RequestHelper.get(this, 'todos', options);
}
create(projectId, mergerequestId) {
const [pId, mId] = [projectId, mergerequestId].map(encodeURIComponent);
return RequestHelper.post(this, `projects/${pId}/merge_requests/${mId}/todo`);
create(projectId: number, mergerequestId: number) {
return RequestHelper.post(this, `projects/${projectId}/merge_requests/${mergerequestId}/todo`);
}
done({ todoId }: TodosOptions = {}) {
const tId = encodeURIComponent(todoId);
done({ todoId }: { todoId?: number } = {}) {
let url = 'mark_as_done';
return RequestHelper.delete(this, `todos/${tId}/mark_as_done`);
if (todoId) url = `${todoId}/${url}`
return RequestHelper.delete(this, `todos/${url}`);
}
}