Adding project snippets correctly

This commit is contained in:
Justin 2018-03-30 10:21:05 -04:00
parent d9d6a9dd77
commit ec5f3988b7
4 changed files with 63 additions and 0 deletions

View File

@ -79,6 +79,7 @@ ProjectHooks
ProjectMembers
ProjectMilestones
ProjectSnippets
ProjectSnippetNotes
ProjectSnippetAwardEmojis
ProtectedBranches
ProjectVariables

View File

@ -55,6 +55,7 @@ export const ProjectsBundle = init(Pick(APIServices, [
'ProjectHooks',
'ProjectMembers',
'ProjectMilestones',
'ProjectSnippet',
'ProjectSnippetNotes',
'ProtectedBranches',
'ProjectVariables',

View File

@ -0,0 +1,60 @@
import { BaseService, RequestHelper } from '../infrastructure';
const VISIBILITY_LEVELS = {
PRIVATE: 'private',
INTERNAL: 'internal',
PUBLIC: 'public',
};
class ProjectSnippets extends BaseService {
all(projectId, options = {}) {
const pId = encodeURIComponent(projectId);
return RequestHelper.get(this, `projects/${pId}/snippets`, options);
}
content(projectId, snippetId) {
const [pId, sId] = [projectId, snippetId].map(encodeURIComponent);
return RequestHelper.get(this, `projects/${pId}/snippets/${sId}/raw`);
}
create(projectId, title, fileName, code, visibility, options = {}) {
const pId = encodeURIComponent(projectId);
return RequestHelper.post(this, `projects/${pId}/snippets`, {
title,
fileName,
code,
visibility,
...options,
});
}
edit(projectId, options) {
const pId = encodeURIComponent(projectId);
return RequestHelper.put(this, `projects/${pId}/snippets`, options);
}
remove(projectId) {
const pId = encodeURIComponent(projectId);
return RequestHelper.delete(this, `projects/${pId}/snippets`);
}
show(projectId, snippetId) {
const [pId, sId] = [projectId, snippetId].map(encodeURIComponent);
return RequestHelper.get(this, `projects/${pId}/snippets/${sId}`);
}
userAgentDetails(projectId, snippetId) {
const [pId, sId] = [projectId, snippetId].map(encodeURIComponent);
return RequestHelper.get(this, `projects/${pId}/snippets/${sId}/user_agent_detail`);
}
}
export default ProjectSnippets;
export { VISIBILITY_LEVELS };

View File

@ -44,6 +44,7 @@ export ProjectIssueBoards from './ProjectIssueBoards';
export ProjectHooks from './ProjectHooks';
export ProjectMembers from './ProjectMembers';
export ProjectMilestones from './ProjectMilestones';
export ProjectSnippet from './ProjectSnippet';
export ProjectSnippetNotes from './ProjectSnippetNotes';
export ProjectSnippetAwardEmojis from './ProjectSnippetAwardEmojis';
export ProtectedBranches from './ProtectedBranches';