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,53 @@
/*!
* Copyright (c) 2024 PLANKA Software GmbH
* Licensed under the Fair Use License: https://github.com/plankanban/planka/blob/master/LICENSE.md
*/
import { createSelector } from 'redux-orm';
import orm from '../orm';
import { isLocalId } from '../utils/local-id';
export const makeSelectTaskListById = () =>
createSelector(
orm,
(_, id) => id,
({ TaskList }, id) => {
const taskListModel = TaskList.withId(id);
if (!taskListModel) {
return taskListModel;
}
return {
...taskListModel.ref,
isPersisted: !isLocalId(taskListModel.id),
};
},
);
export const selectTaskListById = makeSelectTaskListById();
export const makeSelectTasksByTaskListId = () =>
createSelector(
orm,
(_, id) => id,
({ TaskList }, id) => {
const taskListModel = TaskList.withId(id);
if (!taskListModel) {
return taskListModel;
}
return taskListModel.getTasksQuerySet().toRefArray();
},
);
export const selectTasksByTaskListId = makeSelectTasksByTaskListId();
export default {
makeSelectTaskListById,
selectTaskListById,
makeSelectTasksByTaskListId,
selectTasksByTaskListId,
};