mirror of
https://github.com/plankanban/planka.git
synced 2025-07-19 05:09:43 +02:00
54 lines
1.7 KiB
JavaScript
Executable file
54 lines
1.7 KiB
JavaScript
Executable file
import http from './http';
|
|
import socket from './socket';
|
|
import { transformUser } from './users';
|
|
import { transformProjectManager } from './project-managers';
|
|
import { transformBoardMembership } from './board-memberships';
|
|
|
|
/* Actions */
|
|
|
|
const getProjects = (headers) =>
|
|
socket.get('/projects', undefined, headers).then((body) => ({
|
|
...body,
|
|
included: {
|
|
...body.included,
|
|
users: body.included.users.map(transformUser),
|
|
projectManagers: body.included.projectManagers.map(transformProjectManager),
|
|
boardMemberships: body.included.boardMemberships.map(transformBoardMembership),
|
|
},
|
|
}));
|
|
|
|
const createProject = (data, headers) =>
|
|
socket.post('/projects', data, headers).then((body) => ({
|
|
...body,
|
|
included: {
|
|
...body.included,
|
|
projectManagers: body.included.projectManagers.map(transformProjectManager),
|
|
},
|
|
}));
|
|
|
|
const getProject = (id, headers) =>
|
|
socket.get(`/projects/${id}`, undefined, headers).then((body) => ({
|
|
...body,
|
|
included: {
|
|
...body.included,
|
|
users: body.included.users.map(transformUser),
|
|
projectManagers: body.included.projectManagers.map(transformProjectManager),
|
|
boardMemberships: body.included.boardMemberships.map(transformBoardMembership),
|
|
},
|
|
}));
|
|
|
|
const updateProject = (id, data, headers) => socket.patch(`/projects/${id}`, data, headers);
|
|
|
|
const updateProjectBackgroundImage = (id, data, headers) =>
|
|
http.post(`/projects/${id}/background-image`, data, headers);
|
|
|
|
const deleteProject = (id, headers) => socket.delete(`/projects/${id}`, undefined, headers);
|
|
|
|
export default {
|
|
getProjects,
|
|
createProject,
|
|
getProject,
|
|
updateProject,
|
|
updateProjectBackgroundImage,
|
|
deleteProject,
|
|
};
|