1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-22 22:59:44 +02:00

feat: Version 2

Closes #627, closes #1047
This commit is contained in:
Maksim Eltyshev 2025-05-10 02:09:06 +02:00
parent ad7fb51cfa
commit 2ee1166747
1557 changed files with 76832 additions and 47042 deletions

View file

@ -0,0 +1,64 @@
/*!
* Copyright (c) 2024 PLANKA Software GmbH
* Licensed under the Fair Use License: https://github.com/plankanban/planka/blob/master/LICENSE.md
*/
import socket from './socket';
/* Transformers */
export const transformComment = (comment) => ({
...comment,
...(comment.createdAt && {
createdAt: new Date(comment.createdAt),
}),
});
/* Actions */
const getComments = (cardId, data, headers) =>
socket.get(`/cards/${cardId}/comments`, data, headers).then((body) => ({
...body,
items: body.items.map(transformComment),
}));
const createComment = (cardId, data, headers) =>
socket.post(`/cards/${cardId}/comments`, data, headers).then((body) => ({
...body,
item: transformComment(body.item),
}));
const updateComment = (id, data, headers) =>
socket.patch(`/comments/${id}`, data, headers).then((body) => ({
...body,
item: transformComment(body.item),
}));
const deleteComment = (id, headers) =>
socket.delete(`/comments/${id}`, undefined, headers).then((body) => ({
...body,
item: transformComment(body.item),
}));
/* Event handlers */
const makeHandleCommentCreate = (next) => (body) => {
next({
...body,
item: transformComment(body.item),
});
};
const makeHandleCommentUpdate = makeHandleCommentCreate;
const makeHandleCommentDelete = makeHandleCommentUpdate;
export default {
getComments,
createComment,
updateComment,
deleteComment,
makeHandleCommentCreate,
makeHandleCommentUpdate,
makeHandleCommentDelete,
};