2021-06-24 01:05:22 +05:00
|
|
|
import socket from './socket';
|
|
|
|
|
2023-06-13 00:19:17 +02:00
|
|
|
/* Transformers */
|
|
|
|
|
|
|
|
export const transformBoardMembership = (boardMembership) => ({
|
|
|
|
...boardMembership,
|
|
|
|
createdAt: new Date(boardMembership.createdAt),
|
|
|
|
});
|
|
|
|
|
2021-06-24 01:05:22 +05:00
|
|
|
/* Actions */
|
|
|
|
|
2022-08-09 18:03:21 +02:00
|
|
|
const createBoardMembership = (boardId, data, headers) =>
|
2023-06-13 00:19:17 +02:00
|
|
|
socket.post(`/boards/${boardId}/memberships`, data, headers).then((body) => ({
|
|
|
|
...body,
|
|
|
|
item: transformBoardMembership(body.item),
|
|
|
|
}));
|
2021-06-24 01:05:22 +05:00
|
|
|
|
2022-08-19 14:00:40 +02:00
|
|
|
const updateBoardMembership = (id, data, headers) =>
|
2023-06-13 00:19:17 +02:00
|
|
|
socket.patch(`/board-memberships/${id}`, data, headers).then((body) => ({
|
|
|
|
...body,
|
|
|
|
item: transformBoardMembership(body.item),
|
|
|
|
}));
|
2022-08-19 14:00:40 +02:00
|
|
|
|
2022-08-09 18:03:21 +02:00
|
|
|
const deleteBoardMembership = (id, headers) =>
|
2023-06-13 00:19:17 +02:00
|
|
|
socket.delete(`/board-memberships/${id}`, undefined, headers).then((body) => ({
|
|
|
|
...body,
|
|
|
|
item: transformBoardMembership(body.item),
|
|
|
|
}));
|
|
|
|
|
|
|
|
/* Event handlers */
|
|
|
|
|
|
|
|
const makeHandleBoardMembershipCreate = (next) => (body) => {
|
|
|
|
next({
|
|
|
|
...body,
|
|
|
|
item: transformBoardMembership(body.item),
|
|
|
|
});
|
|
|
|
};
|
|
|
|
|
|
|
|
const makeHandleBoardMembershipUpdate = makeHandleBoardMembershipCreate;
|
|
|
|
|
|
|
|
const makeHandleBoardMembershipDelete = makeHandleBoardMembershipCreate;
|
2021-06-24 01:05:22 +05:00
|
|
|
|
|
|
|
export default {
|
|
|
|
createBoardMembership,
|
2022-08-19 14:00:40 +02:00
|
|
|
updateBoardMembership,
|
2021-06-24 01:05:22 +05:00
|
|
|
deleteBoardMembership,
|
2023-06-13 00:19:17 +02:00
|
|
|
makeHandleBoardMembershipCreate,
|
|
|
|
makeHandleBoardMembershipUpdate,
|
|
|
|
makeHandleBoardMembershipDelete,
|
2021-06-24 01:05:22 +05:00
|
|
|
};
|