From 6ffa817b53c939dcb75766d1bb28ae6dacbf9ab1 Mon Sep 17 00:00:00 2001 From: Maksim Eltyshev Date: Mon, 26 Dec 2022 21:10:50 +0100 Subject: [PATCH] ref: Remove board types, refactoring --- client/src/api/cards.js | 19 +- .../BoardKanban.jsx => Board/Board.jsx} | 8 +- .../Board.module.scss} | 0 .../{BoardKanban => Board}/ListAdd.jsx | 2 +- .../ListAdd.module.scss | 10 +- client/src/components/Board/index.js | 3 + client/src/components/BoardKanban/index.js | 3 - .../BoardMembershipPermissionsSelectStep.jsx | 16 +- client/src/components/BoardWrapper.jsx | 25 --- .../components/Boards/AddPopup/AddPopup.jsx | 1 - .../components/CardModal/Activities/Item.jsx | 1 - .../CardModal/Attachments/Attachments.jsx | 1 + .../CardModal/CardModal.module.scss | 1 + client/src/components/Core.jsx | 41 ---- client/src/components/Core/Core.jsx | 69 +++++++ .../Core.module.scss} | 0 client/src/components/Core/index.js | 3 + .../components/CoreWrapper/CoreWrapper.jsx | 37 ---- client/src/components/CoreWrapper/index.js | 3 - .../components/Memberships/ActionsPopup.jsx | 9 +- .../Memberships/AddPopup/AddPopup.jsx | 5 +- .../components/Memberships/Memberships.jsx | 2 +- client/src/components/Root.jsx | 10 +- client/src/components/Static/Static.jsx | 40 ++-- .../src/components/Static/Static.module.scss | 28 ++- .../UserEmailEditStep/UserEmailEditStep.jsx | 13 +- .../UserUsernameEditStep.jsx | 13 +- client/src/constants/Enums.js | 4 - .../src/containers/BoardActionsContainer.js | 5 +- ...rdKanbanContainer.js => BoardContainer.js} | 9 +- .../src/containers/BoardWrapperContainer.js | 15 -- client/src/containers/CardContainer.js | 6 +- client/src/containers/CardModalContainer.js | 15 +- client/src/containers/CoreContainer.js | 4 + client/src/containers/CoreWrapperContainer.js | 15 -- client/src/containers/ListContainer.js | 6 +- client/src/containers/StaticContainer.js | 7 +- client/src/lib/popup/with-popup.jsx | 13 +- client/src/models/Activity.js | 5 +- client/src/models/Attachment.js | 5 +- client/src/models/BaseModel.js | 6 + client/src/models/Board.js | 16 +- client/src/models/BoardMembership.js | 5 +- client/src/models/Card.js | 52 +++-- client/src/models/Label.js | 5 +- client/src/models/List.js | 5 +- client/src/models/Notification.js | 5 +- client/src/models/Project.js | 25 ++- client/src/models/ProjectManager.js | 5 +- client/src/models/Task.js | 5 +- client/src/models/User.js | 5 +- client/src/sagas/core/services/cards.js | 7 +- client/src/sagas/core/services/lists.js | 12 +- client/src/selectors/boards.js | 52 ++--- client/src/selectors/index.js | 2 + client/src/selectors/projects.js | 12 +- client/src/selectors/router.js | 42 +---- client/src/selectors/socket.js | 5 + client/src/selectors/users.js | 4 +- .../api/controllers/access-tokens/create.js | 12 +- server/api/controllers/attachments/create.js | 16 +- server/api/controllers/attachments/delete.js | 7 +- server/api/controllers/attachments/update.js | 8 +- .../controllers/board-memberships/create.js | 11 +- .../controllers/board-memberships/delete.js | 10 +- .../controllers/board-memberships/update.js | 8 +- server/api/controllers/boards/create.js | 25 ++- server/api/controllers/boards/delete.js | 5 +- server/api/controllers/boards/show.js | 5 +- server/api/controllers/boards/update.js | 7 +- server/api/controllers/card-labels/create.js | 10 +- server/api/controllers/card-labels/delete.js | 6 +- .../controllers/card-memberships/create.js | 10 +- .../controllers/card-memberships/delete.js | 6 +- server/api/controllers/cards/create.js | 96 ++++------ server/api/controllers/cards/delete.js | 5 +- server/api/controllers/cards/index.js | 74 -------- server/api/controllers/cards/update.js | 63 ++++--- .../api/controllers/comment-actions/create.js | 9 +- .../api/controllers/comment-actions/delete.js | 6 +- .../api/controllers/comment-actions/update.js | 7 +- server/api/controllers/labels/create.js | 9 +- server/api/controllers/labels/delete.js | 5 +- server/api/controllers/labels/update.js | 7 +- server/api/controllers/lists/create.js | 9 +- server/api/controllers/lists/delete.js | 5 +- server/api/controllers/lists/update.js | 7 +- .../api/controllers/notifications/update.js | 10 +- .../controllers/project-managers/create.js | 10 +- .../controllers/project-managers/delete.js | 5 +- server/api/controllers/projects/create.js | 8 +- server/api/controllers/projects/delete.js | 5 +- server/api/controllers/projects/index.js | 1 - .../projects/update-background-image.js | 10 +- server/api/controllers/projects/update.js | 67 ++++--- server/api/controllers/tasks/create.js | 9 +- server/api/controllers/tasks/delete.js | 6 +- server/api/controllers/tasks/update.js | 8 +- server/api/controllers/users/create.js | 11 +- server/api/controllers/users/delete.js | 5 +- server/api/controllers/users/update-avatar.js | 12 +- server/api/controllers/users/update-email.js | 9 +- .../api/controllers/users/update-password.js | 12 +- .../api/controllers/users/update-username.js | 9 +- server/api/controllers/users/update.js | 11 +- server/api/helpers/actions/create-one.js | 48 +++-- server/api/helpers/actions/get-many.js | 4 +- server/api/helpers/actions/update-one.js | 4 +- server/api/helpers/attachments/create-one.js | 44 +++-- server/api/helpers/attachments/get-many.js | 4 +- server/api/helpers/attachments/update-one.js | 4 +- .../helpers/board-memberships/create-one.js | 43 +++-- .../api/helpers/board-memberships/get-many.js | 4 +- .../helpers/board-memberships/update-one.js | 13 +- server/api/helpers/boards/create-one.js | 64 +++++-- server/api/helpers/boards/delete-one.js | 11 +- .../helpers/boards/get-board-memberships.js | 4 +- server/api/helpers/boards/get-card-ids.js | 4 +- server/api/helpers/boards/get-cards.js | 38 +--- server/api/helpers/boards/get-labels.js | 4 +- server/api/helpers/boards/get-lists.js | 6 +- server/api/helpers/boards/get-many.js | 4 +- .../api/helpers/boards/get-member-user-ids.js | 4 +- server/api/helpers/boards/update-one.js | 46 +++-- server/api/helpers/card-labels/create-one.js | 32 +++- server/api/helpers/card-labels/get-many.js | 4 +- .../helpers/card-memberships/create-one.js | 36 +++- .../api/helpers/card-memberships/get-many.js | 4 +- .../helpers/card-subscriptions/get-many.js | 4 +- server/api/helpers/cards/create-one.js | 127 ++++++------- server/api/helpers/cards/get-actions.js | 4 +- server/api/helpers/cards/get-attachments.js | 4 +- server/api/helpers/cards/get-card-labels.js | 4 +- .../api/helpers/cards/get-card-memberships.js | 4 +- .../helpers/cards/get-card-subscriptions.js | 6 +- server/api/helpers/cards/get-label-ids.js | 4 +- server/api/helpers/cards/get-labels.js | 4 +- server/api/helpers/cards/get-many.js | 13 +- server/api/helpers/cards/get-project-path.js | 28 +-- .../cards/get-subscription-user-ids.js | 6 +- server/api/helpers/cards/get-tasks.js | 6 +- server/api/helpers/cards/update-one.js | 178 +++++++++--------- server/api/helpers/labels/create-one.js | 23 ++- server/api/helpers/labels/get-many.js | 4 +- server/api/helpers/labels/update-one.js | 4 +- server/api/helpers/lists/create-one.js | 36 ++-- server/api/helpers/lists/get-cards.js | 8 +- server/api/helpers/lists/get-many.js | 4 +- server/api/helpers/lists/update-one.js | 34 ++-- .../api/helpers/notifications/create-one.js | 38 ++-- server/api/helpers/notifications/get-many.js | 4 +- .../api/helpers/notifications/update-many.js | 13 +- .../helpers/project-managers/create-one.js | 33 +++- .../helpers/project-managers/delete-one.js | 4 +- .../api/helpers/project-managers/get-many.js | 4 +- server/api/helpers/projects/create-one.js | 4 +- server/api/helpers/projects/delete-one.js | 8 +- server/api/helpers/projects/get-board-ids.js | 4 +- .../projects/get-board-member-user-ids.js | 4 +- server/api/helpers/projects/get-boards.js | 6 +- .../get-manager-and-board-member-user-ids.js | 10 +- .../helpers/projects/get-manager-user-ids.js | 4 +- server/api/helpers/projects/get-many.js | 4 +- .../helpers/projects/get-project-managers.js | 4 +- server/api/helpers/projects/update-one.js | 65 ++++--- server/api/helpers/tasks/create-one.js | 38 ++-- server/api/helpers/tasks/get-many.js | 4 +- server/api/helpers/tasks/update-one.js | 34 ++-- server/api/helpers/users/create-one.js | 53 +++--- .../helpers/users/get-board-memberships.js | 4 +- .../helpers/users/get-manager-project-ids.js | 4 +- server/api/helpers/users/get-many.js | 4 +- .../helpers/users/get-membership-board-ids.js | 4 +- server/api/helpers/users/get-notifications.js | 4 +- server/api/helpers/users/get-one.js | 4 +- .../api/helpers/users/get-project-managers.js | 4 +- server/api/helpers/users/update-one.js | 72 +++---- server/api/helpers/utils/map-records.js | 4 +- server/api/models/Board.js | 11 -- server/api/models/Card.js | 3 +- server/config/routes.js | 3 +- .../20221225224651_remove_board_types.js.js | 21 +++ 182 files changed, 1573 insertions(+), 1239 deletions(-) rename client/src/components/{BoardKanban/BoardKanban.jsx => Board/Board.jsx} (97%) rename client/src/components/{BoardKanban/BoardKanban.module.scss => Board/Board.module.scss} (100%) rename client/src/components/{BoardKanban => Board}/ListAdd.jsx (98%) rename client/src/components/{BoardKanban => Board}/ListAdd.module.scss (96%) create mode 100755 client/src/components/Board/index.js delete mode 100755 client/src/components/BoardKanban/index.js delete mode 100755 client/src/components/BoardWrapper.jsx delete mode 100755 client/src/components/Core.jsx create mode 100755 client/src/components/Core/Core.jsx rename client/src/components/{CoreWrapper/CoreWrapper.module.scss => Core/Core.module.scss} (100%) create mode 100644 client/src/components/Core/index.js delete mode 100755 client/src/components/CoreWrapper/CoreWrapper.jsx delete mode 100644 client/src/components/CoreWrapper/index.js rename client/src/containers/{BoardKanbanContainer.js => BoardContainer.js} (80%) delete mode 100755 client/src/containers/BoardWrapperContainer.js delete mode 100755 client/src/containers/CoreWrapperContainer.js create mode 100644 client/src/models/BaseModel.js create mode 100644 client/src/selectors/socket.js delete mode 100644 server/api/controllers/cards/index.js create mode 100644 server/db/migrations/20221225224651_remove_board_types.js.js diff --git a/client/src/api/cards.js b/client/src/api/cards.js index c7e34353..8781af93 100755 --- a/client/src/api/cards.js +++ b/client/src/api/cards.js @@ -35,18 +35,8 @@ export const transformCardData = (data) => ({ /* Actions */ -const getCards = (boardId, data, headers) => - socket.get(`/board/${boardId}/cards`, data, headers).then((body) => ({ - ...body, - items: body.items.map(transformCard), - included: { - ...body.included, - attachments: body.included.attachments.map(transformAttachment), - }, - })); - -const createCard = (boardId, data, headers) => - socket.post(`/boards/${boardId}/cards`, transformCardData(data), headers).then((body) => ({ +const createCard = (listId, data, headers) => + socket.post(`/lists/${listId}/cards`, transformCardData(data), headers).then((body) => ({ ...body, item: transformCard(body.item), })); @@ -55,6 +45,10 @@ const getCard = (id, headers) => socket.get(`/cards/${id}`, undefined, headers).then((body) => ({ ...body, item: transformCard(body.item), + included: { + ...body.included, + attachments: body.included.attachments.map(transformAttachment), + }, })); const updateCard = (id, data, headers) => @@ -83,7 +77,6 @@ const makeHandleCardUpdate = makeHandleCardCreate; const makeHandleCardDelete = makeHandleCardCreate; export default { - getCards, createCard, getCard, updateCard, diff --git a/client/src/components/BoardKanban/BoardKanban.jsx b/client/src/components/Board/Board.jsx similarity index 97% rename from client/src/components/BoardKanban/BoardKanban.jsx rename to client/src/components/Board/Board.jsx index 50f92147..d3bb09cc 100755 --- a/client/src/components/BoardKanban/BoardKanban.jsx +++ b/client/src/components/Board/Board.jsx @@ -10,11 +10,11 @@ import CardModalContainer from '../../containers/CardModalContainer'; import ListAdd from './ListAdd'; import { ReactComponent as PlusMathIcon } from '../../assets/images/plus-math-icon.svg'; -import styles from './BoardKanban.module.scss'; +import styles from './Board.module.scss'; const parseDndId = (dndId) => dndId.split(':')[1]; -const BoardKanban = React.memo( +const Board = React.memo( ({ listIds, isCardModalOpened, canEdit, onListCreate, onListMove, onCardMove }) => { const [t] = useTranslation(); const [isListAddOpened, setIsListAddOpened] = useState(false); @@ -166,7 +166,7 @@ const BoardKanban = React.memo( }, ); -BoardKanban.propTypes = { +Board.propTypes = { listIds: PropTypes.array.isRequired, // eslint-disable-line react/forbid-prop-types isCardModalOpened: PropTypes.bool.isRequired, canEdit: PropTypes.bool.isRequired, @@ -175,4 +175,4 @@ BoardKanban.propTypes = { onCardMove: PropTypes.func.isRequired, }; -export default BoardKanban; +export default Board; diff --git a/client/src/components/BoardKanban/BoardKanban.module.scss b/client/src/components/Board/Board.module.scss similarity index 100% rename from client/src/components/BoardKanban/BoardKanban.module.scss rename to client/src/components/Board/Board.module.scss diff --git a/client/src/components/BoardKanban/ListAdd.jsx b/client/src/components/Board/ListAdd.jsx similarity index 98% rename from client/src/components/BoardKanban/ListAdd.jsx rename to client/src/components/Board/ListAdd.jsx index 9d5459f1..7fc1e49f 100755 --- a/client/src/components/BoardKanban/ListAdd.jsx +++ b/client/src/components/Board/ListAdd.jsx @@ -72,7 +72,7 @@ const ListAdd = React.memo(({ onCreate, onClose }) => {