@zeniai/client-epic-state 5.0.2-betaRR9 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/entity/file/fileState.d.ts +4 -4
- package/lib/entity/file/fileState.js +0 -4
- package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
- package/lib/entity/snackbar/snackbarTypes.js +0 -2
- package/lib/entity/task/taskPayload.d.ts +0 -3
- package/lib/entity/task/taskPayload.js +0 -5
- package/lib/entity/task/taskState.d.ts +0 -3
- package/lib/entity/transaction/stateTypes/attachment.d.ts +2 -2
- package/lib/epic.d.ts +1 -3
- package/lib/epic.js +1 -3
- package/lib/esm/entity/file/fileState.js +0 -4
- package/lib/esm/entity/snackbar/snackbarTypes.js +0 -2
- package/lib/esm/entity/task/taskPayload.js +0 -5
- package/lib/esm/epic.js +1 -3
- package/lib/esm/index.js +4 -4
- package/lib/esm/view/taskManager/taskDetailView/epics/archiveTaskEpic.js +0 -3
- package/lib/esm/view/taskManager/taskDetailView/epics/deleteTaskEpic.js +0 -5
- package/lib/esm/view/taskManager/taskDetailView/taskDetail.js +0 -4
- package/lib/esm/view/taskManager/taskDetailView/taskDetailReducer.js +1 -49
- package/lib/esm/view/taskManager/taskDetailView/taskDetailSelector.js +2 -15
- package/lib/esm/view/taskManager/taskListView/epics/bulkUpdateTaskListEpic.js +21 -56
- package/lib/esm/view/taskManager/taskListView/epics/dragNDropTasksEpic.js +0 -1
- package/lib/esm/view/taskManager/taskListView/epics/fetchTaskListEpic.js +3 -13
- package/lib/esm/view/taskManager/taskListView/taskList.js +0 -7
- package/lib/esm/view/taskManager/taskListView/taskListReducer.js +12 -91
- package/lib/esm/view/taskManager/taskListView/taskListSelector.js +15 -56
- package/lib/index.d.ts +4 -4
- package/lib/index.js +4 -9
- package/lib/tsconfig.typecheck.tsbuildinfo +1 -1
- package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
- package/lib/view/taskManager/taskDetailView/epics/archiveTaskEpic.d.ts +1 -2
- package/lib/view/taskManager/taskDetailView/epics/archiveTaskEpic.js +0 -3
- package/lib/view/taskManager/taskDetailView/epics/deleteTaskEpic.d.ts +1 -2
- package/lib/view/taskManager/taskDetailView/epics/deleteTaskEpic.js +0 -5
- package/lib/view/taskManager/taskDetailView/taskDetail.d.ts +0 -1
- package/lib/view/taskManager/taskDetailView/taskDetail.js +0 -4
- package/lib/view/taskManager/taskDetailView/taskDetailReducer.d.ts +1 -10
- package/lib/view/taskManager/taskDetailView/taskDetailReducer.js +2 -50
- package/lib/view/taskManager/taskDetailView/taskDetailSelector.d.ts +0 -5
- package/lib/view/taskManager/taskDetailView/taskDetailSelector.js +2 -15
- package/lib/view/taskManager/taskListView/epics/bulkUpdateTaskListEpic.d.ts +7 -6
- package/lib/view/taskManager/taskListView/epics/bulkUpdateTaskListEpic.js +22 -56
- package/lib/view/taskManager/taskListView/epics/dragNDropTasksEpic.js +0 -1
- package/lib/view/taskManager/taskListView/epics/fetchTaskListEpic.js +3 -13
- package/lib/view/taskManager/taskListView/taskList.d.ts +1 -14
- package/lib/view/taskManager/taskListView/taskList.js +1 -8
- package/lib/view/taskManager/taskListView/taskListPayload.d.ts +0 -3
- package/lib/view/taskManager/taskListView/taskListReducer.d.ts +2 -6
- package/lib/view/taskManager/taskListView/taskListReducer.js +13 -92
- package/lib/view/taskManager/taskListView/taskListSelector.d.ts +3 -9
- package/lib/view/taskManager/taskListView/taskListSelector.js +15 -56
- package/package.json +1 -1
- package/lib/esm/view/taskManager/taskDetailView/epics/snoozeTaskEpic.js +0 -65
- package/lib/esm/view/taskManager/taskDetailView/epics/unsnoozeTaskEpic.js +0 -56
- package/lib/view/taskManager/taskDetailView/epics/snoozeTaskEpic.d.ts +0 -9
- package/lib/view/taskManager/taskDetailView/epics/snoozeTaskEpic.js +0 -69
- package/lib/view/taskManager/taskDetailView/epics/unsnoozeTaskEpic.d.ts +0 -9
- package/lib/view/taskManager/taskDetailView/epics/unsnoozeTaskEpic.js +0 -60
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearTaskList = exports.
|
|
4
|
+
exports.clearTaskList = exports.updateTaskListOnCreateTaskFromTemplateSuccess = exports.updateTasksListOnUpdateTaskFailure = exports.updateTasksListOnUpdateTaskSuccess = exports.updateTaskFromListView = exports.updateTaskListOnTaskGroupNameUpdate = exports.updateTaskListOnNewTaskCreationSuccess = exports.dragNDropTasks = exports.updateTaskListOnTaskGroupDeletion = exports.updateTaskListLocalData = exports.initiateTaskListLocalData = exports.updateTasksListOnBulkUpdateTasksFailure = exports.updateTasksListOnBulkUpdateTasksSuccess = exports.bulkUpdateTaskList = exports.updateTaskListOnNewGroupCreationSuccess = exports.updateTaskFilters = exports.updateTaskListUIState = exports.updateTaskListSearchText = exports.updateTaskListFetchStatus = exports.updateTaskList = exports.fetchTaskList = exports.fetchTaskListPage = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
const taskState_1 = require("../../../entity/task/taskState");
|
|
7
7
|
const zeniDayJS_1 = require("../../../zeniDayJS");
|
|
@@ -33,23 +33,7 @@ const initialTaskIdsByDueDate = {
|
|
|
33
33
|
today: [],
|
|
34
34
|
upcoming: [],
|
|
35
35
|
};
|
|
36
|
-
const initialTabData = {
|
|
37
|
-
taskIds: [],
|
|
38
|
-
taskIdsByAssignees: {},
|
|
39
|
-
taskIdsByDueDate: { ...initialTaskIdsByDueDate },
|
|
40
|
-
taskIdsByGroupsIds: {},
|
|
41
|
-
taskIdsByPriority: { ...initialTaskIdsByPriority },
|
|
42
|
-
taskIdsByStatus: { ...initialTaskIdsByStatus },
|
|
43
|
-
taskIdsByTags: {},
|
|
44
|
-
};
|
|
45
36
|
exports.initialState = {
|
|
46
|
-
currentTab: 'live',
|
|
47
|
-
byTab: {
|
|
48
|
-
live: { ...initialTabData },
|
|
49
|
-
archived: { ...initialTabData },
|
|
50
|
-
deleted: { ...initialTabData },
|
|
51
|
-
snoozed: { ...initialTabData },
|
|
52
|
-
},
|
|
53
37
|
taskIds: [],
|
|
54
38
|
taskIdsByGroupsIds: {},
|
|
55
39
|
taskIdsByPriority: initialTaskIdsByPriority,
|
|
@@ -106,30 +90,17 @@ const taskList = (0, toolkit_1.createSlice)({
|
|
|
106
90
|
draft.error = undefined;
|
|
107
91
|
},
|
|
108
92
|
updateTaskList(draft, action) {
|
|
109
|
-
const { data
|
|
93
|
+
const { data } = action.payload;
|
|
110
94
|
draft.fetchState = 'Completed';
|
|
111
95
|
draft.error = undefined;
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
draft.
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
draft.byTab.deleted = toTabData(getGroupedTaskIds(deleted));
|
|
121
|
-
}
|
|
122
|
-
if (snoozed != null) {
|
|
123
|
-
draft.byTab.snoozed = toTabData(getGroupedTaskIds(snoozed));
|
|
124
|
-
}
|
|
125
|
-
// Copy active tab data to top-level fields
|
|
126
|
-
const activeTabData = draft.byTab[draft.currentTab];
|
|
127
|
-
copyTabDataToTopLevel(draft, activeTabData);
|
|
128
|
-
},
|
|
129
|
-
updateTaskListTab(draft, action) {
|
|
130
|
-
draft.currentTab = action.payload;
|
|
131
|
-
const activeTabData = draft.byTab[action.payload];
|
|
132
|
-
copyTabDataToTopLevel(draft, activeTabData);
|
|
96
|
+
const { taskIds, taskIdsGroupedByPriority, taskIdsByGroupIds, taskIdsGroupedByStatus, taskIdsByAssignees, taskIdsByDueDate, taskIdsByTags, } = getGroupedTaskIds(data);
|
|
97
|
+
draft.taskIds = taskIds;
|
|
98
|
+
draft.taskIdsByGroupsIds = taskIdsByGroupIds;
|
|
99
|
+
draft.taskIdsByPriority = taskIdsGroupedByPriority;
|
|
100
|
+
draft.taskIdsByStatus = taskIdsGroupedByStatus;
|
|
101
|
+
draft.taskIdsByAssignees = taskIdsByAssignees;
|
|
102
|
+
draft.taskIdsByDueDate = taskIdsByDueDate;
|
|
103
|
+
draft.taskIdsByTags = taskIdsByTags;
|
|
133
104
|
},
|
|
134
105
|
initiateTaskListLocalData(draft, action) {
|
|
135
106
|
const { taskGroupById } = action.payload;
|
|
@@ -217,13 +188,10 @@ const taskList = (0, toolkit_1.createSlice)({
|
|
|
217
188
|
},
|
|
218
189
|
},
|
|
219
190
|
updateTasksListOnBulkUpdateTasksSuccess(draft, action) {
|
|
220
|
-
const { taskIds, groupId
|
|
191
|
+
const { taskIds, groupId } = action.payload;
|
|
221
192
|
draft.updateTasksFetchState.fetchState = 'Completed';
|
|
222
193
|
draft.updateTasksFetchState.error = undefined;
|
|
223
|
-
if (
|
|
224
|
-
removeTaskIds(draft, taskIds);
|
|
225
|
-
}
|
|
226
|
-
else if (groupId != null) {
|
|
194
|
+
if (groupId != null) {
|
|
227
195
|
const { groupByKey } = draft.uiState;
|
|
228
196
|
if (groupByKey === 'groupName') {
|
|
229
197
|
Object.keys(draft.taskIdsByGroupsIds).forEach((gId) => {
|
|
@@ -440,15 +408,12 @@ const taskList = (0, toolkit_1.createSlice)({
|
|
|
440
408
|
draft.updateTasksFetchState.fetchState = 'Error';
|
|
441
409
|
draft.updateTasksFetchState.error = action.payload.error;
|
|
442
410
|
},
|
|
443
|
-
removeTaskFromList(draft, action) {
|
|
444
|
-
removeTaskIds(draft, [action.payload]);
|
|
445
|
-
},
|
|
446
411
|
clearTaskList(draft) {
|
|
447
412
|
Object.assign(draft, exports.initialState);
|
|
448
413
|
},
|
|
449
414
|
},
|
|
450
415
|
});
|
|
451
|
-
_a = taskList.actions, exports.fetchTaskListPage = _a.fetchTaskListPage, exports.fetchTaskList = _a.fetchTaskList, exports.updateTaskList = _a.updateTaskList, exports.
|
|
416
|
+
_a = taskList.actions, exports.fetchTaskListPage = _a.fetchTaskListPage, exports.fetchTaskList = _a.fetchTaskList, exports.updateTaskList = _a.updateTaskList, exports.updateTaskListFetchStatus = _a.updateTaskListFetchStatus, exports.updateTaskListSearchText = _a.updateTaskListSearchText, exports.updateTaskListUIState = _a.updateTaskListUIState, exports.updateTaskFilters = _a.updateTaskFilters, exports.updateTaskListOnNewGroupCreationSuccess = _a.updateTaskListOnNewGroupCreationSuccess, exports.bulkUpdateTaskList = _a.bulkUpdateTaskList, exports.updateTasksListOnBulkUpdateTasksSuccess = _a.updateTasksListOnBulkUpdateTasksSuccess, exports.updateTasksListOnBulkUpdateTasksFailure = _a.updateTasksListOnBulkUpdateTasksFailure, exports.initiateTaskListLocalData = _a.initiateTaskListLocalData, exports.updateTaskListLocalData = _a.updateTaskListLocalData, exports.updateTaskListOnTaskGroupDeletion = _a.updateTaskListOnTaskGroupDeletion, exports.dragNDropTasks = _a.dragNDropTasks, exports.updateTaskListOnNewTaskCreationSuccess = _a.updateTaskListOnNewTaskCreationSuccess, exports.updateTaskListOnTaskGroupNameUpdate = _a.updateTaskListOnTaskGroupNameUpdate, exports.updateTaskFromListView = _a.updateTaskFromListView, exports.updateTasksListOnUpdateTaskSuccess = _a.updateTasksListOnUpdateTaskSuccess, exports.updateTasksListOnUpdateTaskFailure = _a.updateTasksListOnUpdateTaskFailure, exports.updateTaskListOnCreateTaskFromTemplateSuccess = _a.updateTaskListOnCreateTaskFromTemplateSuccess, exports.clearTaskList = _a.clearTaskList;
|
|
452
417
|
exports.default = taskList.reducer;
|
|
453
418
|
/**
|
|
454
419
|
* helpers
|
|
@@ -527,50 +492,6 @@ const getTagsGroupKey = (tags) => {
|
|
|
527
492
|
tagIds.sort();
|
|
528
493
|
return tagIds.join(',');
|
|
529
494
|
};
|
|
530
|
-
const toTabData = (grouped) => ({
|
|
531
|
-
taskIds: grouped.taskIds,
|
|
532
|
-
taskIdsByAssignees: grouped.taskIdsByAssignees,
|
|
533
|
-
taskIdsByDueDate: grouped.taskIdsByDueDate,
|
|
534
|
-
taskIdsByGroupsIds: grouped.taskIdsByGroupIds,
|
|
535
|
-
taskIdsByPriority: grouped.taskIdsGroupedByPriority,
|
|
536
|
-
taskIdsByStatus: grouped.taskIdsGroupedByStatus,
|
|
537
|
-
taskIdsByTags: grouped.taskIdsByTags,
|
|
538
|
-
});
|
|
539
|
-
const copyTabDataToTopLevel = (draft, tabData) => {
|
|
540
|
-
draft.taskIds = tabData.taskIds;
|
|
541
|
-
draft.taskIdsByGroupsIds = tabData.taskIdsByGroupsIds;
|
|
542
|
-
draft.taskIdsByPriority = tabData.taskIdsByPriority;
|
|
543
|
-
draft.taskIdsByStatus = tabData.taskIdsByStatus;
|
|
544
|
-
draft.taskIdsByAssignees = tabData.taskIdsByAssignees;
|
|
545
|
-
draft.taskIdsByDueDate = tabData.taskIdsByDueDate;
|
|
546
|
-
draft.taskIdsByTags = tabData.taskIdsByTags;
|
|
547
|
-
};
|
|
548
|
-
const removeIdsFromTabData = (tabData, taskIds) => {
|
|
549
|
-
const isRemoved = (id) => taskIds.includes(id);
|
|
550
|
-
tabData.taskIds = tabData.taskIds.filter((id) => !isRemoved(id));
|
|
551
|
-
Object.keys(tabData.taskIdsByGroupsIds).forEach((gId) => {
|
|
552
|
-
tabData.taskIdsByGroupsIds[gId] = tabData.taskIdsByGroupsIds[gId].filter((id) => !isRemoved(id));
|
|
553
|
-
});
|
|
554
|
-
Object.keys(tabData.taskIdsByPriority).forEach((key) => {
|
|
555
|
-
tabData.taskIdsByPriority[key] = tabData.taskIdsByPriority[key].filter((id) => !isRemoved(id));
|
|
556
|
-
});
|
|
557
|
-
Object.keys(tabData.taskIdsByStatus).forEach((key) => {
|
|
558
|
-
tabData.taskIdsByStatus[key] = tabData.taskIdsByStatus[key].filter((id) => !isRemoved(id));
|
|
559
|
-
});
|
|
560
|
-
Object.keys(tabData.taskIdsByDueDate).forEach((key) => {
|
|
561
|
-
tabData.taskIdsByDueDate[key] = tabData.taskIdsByDueDate[key].filter((id) => !isRemoved(id));
|
|
562
|
-
});
|
|
563
|
-
Object.keys(tabData.taskIdsByAssignees).forEach((key) => {
|
|
564
|
-
tabData.taskIdsByAssignees[key] = tabData.taskIdsByAssignees[key].filter((id) => !isRemoved(id));
|
|
565
|
-
});
|
|
566
|
-
Object.keys(tabData.taskIdsByTags).forEach((key) => {
|
|
567
|
-
tabData.taskIdsByTags[key] = tabData.taskIdsByTags[key].filter((id) => !isRemoved(id));
|
|
568
|
-
});
|
|
569
|
-
};
|
|
570
|
-
const removeTaskIds = (draft, taskIds) => {
|
|
571
|
-
removeIdsFromTabData(draft, taskIds);
|
|
572
|
-
removeIdsFromTabData(draft.byTab[draft.currentTab], taskIds);
|
|
573
|
-
};
|
|
574
495
|
const getGroupedTaskIds = (tasks) => {
|
|
575
496
|
const taskIds = [];
|
|
576
497
|
const taskIdsByGroupIds = {};
|
|
@@ -5,16 +5,14 @@ import { TagState } from '../../../entity/tag/tagState';
|
|
|
5
5
|
import { Task, TaskState } from '../../../entity/task/taskState';
|
|
6
6
|
import { TaskGroupTemplate } from '../../../entity/taskGroupTemplate/taskGroupTemplateState';
|
|
7
7
|
import { UserState } from '../../../entity/user/userState';
|
|
8
|
-
import { UserGroupsState } from '../../../entity/userGroups/userGroupsState';
|
|
9
8
|
import { UserRoleState } from '../../../entity/userRole/userRoleState';
|
|
10
9
|
import { RootState } from '../../../reducer';
|
|
11
10
|
import { UserAndRole } from '../../companyView/types/userAndRole';
|
|
12
11
|
import { UserGroupListSelectorView } from '../../userGroupListView/userGroupListViewSelector';
|
|
13
12
|
import { UserListSelectorView } from '../../userListView/userListViewSelector';
|
|
14
|
-
import { TaskListFilters, TaskListLocalData, TaskListState,
|
|
13
|
+
import { TaskListFilters, TaskListLocalData, TaskListState, TaskListUIState } from './taskList';
|
|
15
14
|
export interface TaskWithUserDetails extends Task {
|
|
16
15
|
assigneeUsers: UserAndRole[];
|
|
17
|
-
firstAssigneeSortName: string;
|
|
18
16
|
}
|
|
19
17
|
export interface TaskGroupWithTasksList {
|
|
20
18
|
groupName: string;
|
|
@@ -23,10 +21,8 @@ export interface TaskGroupWithTasksList {
|
|
|
23
21
|
tasks: TaskWithUserDetails[];
|
|
24
22
|
}
|
|
25
23
|
export interface TaskListSelectorView extends SelectorView {
|
|
26
|
-
currentTab: TaskListTab;
|
|
27
24
|
filters: TaskListFilters;
|
|
28
25
|
localData: TaskListLocalData;
|
|
29
|
-
tabCounts: Record<TaskListTab, number>;
|
|
30
26
|
taskCreationFromTemplateStatus: FetchStateAndError;
|
|
31
27
|
taskGroupCreationStatus: FetchStateAndError;
|
|
32
28
|
taskGroupDeleteStatus: FetchStateAndError;
|
|
@@ -38,12 +34,11 @@ export interface TaskListSelectorView extends SelectorView {
|
|
|
38
34
|
userGroupList: UserGroupListSelectorView;
|
|
39
35
|
userList: UserListSelectorView;
|
|
40
36
|
}
|
|
41
|
-
export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
37
|
+
export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }: {
|
|
42
38
|
addressState: AddressState;
|
|
43
39
|
tagState: TagState;
|
|
44
40
|
taskListState: TaskListState;
|
|
45
41
|
taskState: TaskState;
|
|
46
|
-
userGroupsState: UserGroupsState;
|
|
47
42
|
userRoleState: UserRoleState;
|
|
48
43
|
userState: UserState;
|
|
49
44
|
}) => {
|
|
@@ -52,12 +47,11 @@ export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState,
|
|
|
52
47
|
isDefault: boolean;
|
|
53
48
|
tasks: TaskWithUserDetails[];
|
|
54
49
|
}[];
|
|
55
|
-
export declare const getTaskListGroupedByPriority: ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
50
|
+
export declare const getTaskListGroupedByPriority: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }: {
|
|
56
51
|
addressState: AddressState;
|
|
57
52
|
tagState: TagState;
|
|
58
53
|
taskListState: TaskListState;
|
|
59
54
|
taskState: TaskState;
|
|
60
|
-
userGroupsState: UserGroupsState;
|
|
61
55
|
userRoleState: UserRoleState;
|
|
62
56
|
userState: UserState;
|
|
63
57
|
}) => {
|
|
@@ -40,12 +40,8 @@ const sortTasksList = (tagState, tasksList, sortKey, sortOrder) => {
|
|
|
40
40
|
return task.status.name;
|
|
41
41
|
case 'priority':
|
|
42
42
|
return taskState_1.ALL_PRIORITY_CODE.indexOf(task.priority.code);
|
|
43
|
-
case 'assignee':
|
|
44
|
-
return task.firstAssigneeSortName;
|
|
45
43
|
case 'timeSpent':
|
|
46
44
|
return task.timeSpent;
|
|
47
|
-
case 'visibility':
|
|
48
|
-
return task.isPrivate ? 1 : 0;
|
|
49
45
|
case 'name':
|
|
50
46
|
default:
|
|
51
47
|
return task.name.toLowerCase();
|
|
@@ -53,7 +49,7 @@ const sortTasksList = (tagState, tasksList, sortKey, sortOrder) => {
|
|
|
53
49
|
}, sortOrder);
|
|
54
50
|
return tasksInOrder;
|
|
55
51
|
};
|
|
56
|
-
const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRoleState, addressState, taskIds, tagState,
|
|
52
|
+
const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRoleState, addressState, taskIds, tagState, }) => {
|
|
57
53
|
const { sortKey, searchText } = taskListState.uiState;
|
|
58
54
|
const sortOrder = (0, sortOrderPayload_1.getSortOrder)(taskListState.uiState.sortOrder);
|
|
59
55
|
const tasks = taskIds
|
|
@@ -63,17 +59,7 @@ const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRole
|
|
|
63
59
|
const assigneeUsers = task.assignees
|
|
64
60
|
.map((userId) => (0, userAndRole_1.getUserAndUserRole)(userState, userRoleState, addressState, userId))
|
|
65
61
|
.filter((value) => value != null);
|
|
66
|
-
|
|
67
|
-
const firstUserName = (firstUser != null ? (0, userSelector_1.getUserName)(firstUser) : '') ||
|
|
68
|
-
firstUser?.email ||
|
|
69
|
-
'';
|
|
70
|
-
const firstGroupName = task.groupAssignees
|
|
71
|
-
.map((gId) => userGroupsState.userGroupByUserGroupId[gId]?.name)
|
|
72
|
-
.find((name) => name != null && name !== '');
|
|
73
|
-
const firstAssigneeSortName = (firstUserName ||
|
|
74
|
-
firstGroupName ||
|
|
75
|
-
'').toLowerCase();
|
|
76
|
-
return { ...task, assigneeUsers, firstAssigneeSortName };
|
|
62
|
+
return { ...task, assigneeUsers };
|
|
77
63
|
}
|
|
78
64
|
return undefined;
|
|
79
65
|
})
|
|
@@ -82,7 +68,7 @@ const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRole
|
|
|
82
68
|
const sortedTaskList = sortTasksList(tagState, filteredTaskList, sortKey, sortOrder);
|
|
83
69
|
return sortedTaskList;
|
|
84
70
|
};
|
|
85
|
-
const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupState, taskGroupViewState, userState, userRoleState, addressState, tagState,
|
|
71
|
+
const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupState, taskGroupViewState, userState, userRoleState, addressState, tagState, }) => {
|
|
86
72
|
const { taskGroupsIds } = taskGroupViewState;
|
|
87
73
|
const taskGroupsWithTasksList = taskGroupsIds
|
|
88
74
|
.map((taskGroupId) => {
|
|
@@ -96,7 +82,6 @@ const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupStat
|
|
|
96
82
|
addressState,
|
|
97
83
|
taskIds,
|
|
98
84
|
tagState,
|
|
99
|
-
userGroupsState,
|
|
100
85
|
});
|
|
101
86
|
if (taskGroup != null) {
|
|
102
87
|
return {
|
|
@@ -125,13 +110,12 @@ const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupStat
|
|
|
125
110
|
if (defaultTaskGroup != null) {
|
|
126
111
|
sortedTaskGroupsWithTasksList.push(defaultTaskGroup);
|
|
127
112
|
}
|
|
128
|
-
if (taskListState
|
|
129
|
-
isDefaultFilters(taskListState) === false) {
|
|
113
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
130
114
|
return sortedTaskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
131
115
|
}
|
|
132
116
|
return sortedTaskGroupsWithTasksList;
|
|
133
117
|
};
|
|
134
|
-
const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
118
|
+
const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
|
|
135
119
|
const assigneeGroups = Object.keys(taskListState.taskIdsByAssignees);
|
|
136
120
|
const taskGroupsWithTasksList = assigneeGroups.map((groupKey) => {
|
|
137
121
|
const taskIds = taskListState.taskIdsByAssignees[groupKey];
|
|
@@ -143,7 +127,6 @@ const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, us
|
|
|
143
127
|
addressState,
|
|
144
128
|
taskIds,
|
|
145
129
|
tagState,
|
|
146
|
-
userGroupsState,
|
|
147
130
|
});
|
|
148
131
|
const assigneeIds = groupKey.split(',');
|
|
149
132
|
const groupName = (0, userSelector_1.getUsersByUserIds)(userState, assigneeIds)
|
|
@@ -159,14 +142,13 @@ const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, us
|
|
|
159
142
|
tasks: tasksWithUserDetails,
|
|
160
143
|
};
|
|
161
144
|
});
|
|
162
|
-
if (taskListState
|
|
163
|
-
isDefaultFilters(taskListState) === false) {
|
|
145
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
164
146
|
return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
165
147
|
}
|
|
166
148
|
return taskGroupsWithTasksList;
|
|
167
149
|
};
|
|
168
150
|
exports.getTaskListGroupedByAssignees = getTaskListGroupedByAssignees;
|
|
169
|
-
const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
151
|
+
const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
|
|
170
152
|
const taskGroupsWithTasksList = taskState_1.ALL_PRIORITY_CODE.map((groupKey) => {
|
|
171
153
|
const taskIds = taskListState.taskIdsByPriority[groupKey] ?? [];
|
|
172
154
|
const tasksWithUserDetails = getTasksWithUserDetails({
|
|
@@ -177,7 +159,6 @@ const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, use
|
|
|
177
159
|
addressState,
|
|
178
160
|
taskIds,
|
|
179
161
|
tagState,
|
|
180
|
-
userGroupsState,
|
|
181
162
|
});
|
|
182
163
|
return {
|
|
183
164
|
groupName: taskDetailSelector_1.allTaskPriority.find((priority) => priority.code === groupKey)?.name ??
|
|
@@ -187,14 +168,13 @@ const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, use
|
|
|
187
168
|
tasks: tasksWithUserDetails,
|
|
188
169
|
};
|
|
189
170
|
});
|
|
190
|
-
if (taskListState
|
|
191
|
-
isDefaultFilters(taskListState) === false) {
|
|
171
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
192
172
|
return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
193
173
|
}
|
|
194
174
|
return taskGroupsWithTasksList;
|
|
195
175
|
};
|
|
196
176
|
exports.getTaskListGroupedByPriority = getTaskListGroupedByPriority;
|
|
197
|
-
const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
177
|
+
const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
|
|
198
178
|
const taskGroupsWithTasksList = taskState_1.ALL_TASK_STATUS_CODE.map((groupKey) => {
|
|
199
179
|
const taskIds = taskListState.taskIdsByStatus[groupKey] ?? [];
|
|
200
180
|
const tasksWithUserDetails = getTasksWithUserDetails({
|
|
@@ -205,7 +185,6 @@ const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userR
|
|
|
205
185
|
addressState,
|
|
206
186
|
taskIds,
|
|
207
187
|
tagState,
|
|
208
|
-
userGroupsState,
|
|
209
188
|
});
|
|
210
189
|
return {
|
|
211
190
|
groupName: taskDetailSelector_1.allTaskStatus.find((taskStatus) => taskStatus.code === groupKey)
|
|
@@ -215,13 +194,12 @@ const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userR
|
|
|
215
194
|
tasks: tasksWithUserDetails,
|
|
216
195
|
};
|
|
217
196
|
});
|
|
218
|
-
if (taskListState
|
|
219
|
-
isDefaultFilters(taskListState) === false) {
|
|
197
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
220
198
|
return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
221
199
|
}
|
|
222
200
|
return taskGroupsWithTasksList;
|
|
223
201
|
};
|
|
224
|
-
const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
202
|
+
const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
|
|
225
203
|
const tagGroups = Object.keys(taskListState.taskIdsByTags);
|
|
226
204
|
const taskGroupsWithTasksList = tagGroups.map((groupKey) => {
|
|
227
205
|
const taskIds = taskListState.taskIdsByTags[groupKey];
|
|
@@ -233,7 +211,6 @@ const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRol
|
|
|
233
211
|
addressState,
|
|
234
212
|
taskIds,
|
|
235
213
|
tagState,
|
|
236
|
-
userGroupsState,
|
|
237
214
|
});
|
|
238
215
|
const tagIds = groupKey.split(',');
|
|
239
216
|
const groupName = (0, tagSelector_1.getTagsByIds)(tagState, tagIds)
|
|
@@ -248,13 +225,12 @@ const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRol
|
|
|
248
225
|
tasks: tasksWithUserDetails,
|
|
249
226
|
};
|
|
250
227
|
});
|
|
251
|
-
if (taskListState
|
|
252
|
-
isDefaultFilters(taskListState) === false) {
|
|
228
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
253
229
|
return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
254
230
|
}
|
|
255
231
|
return taskGroupsWithTasksList;
|
|
256
232
|
};
|
|
257
|
-
const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, userRoleState, addressState, tagState,
|
|
233
|
+
const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
|
|
258
234
|
const taskGroupsWithTasksList = taskList_1.DUE_DATE_GROUP_KEYS.map((groupKey) => {
|
|
259
235
|
const taskIds = taskListState.taskIdsByDueDate[groupKey];
|
|
260
236
|
const tasksWithUserDetails = getTasksWithUserDetails({
|
|
@@ -265,7 +241,6 @@ const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, user
|
|
|
265
241
|
addressState,
|
|
266
242
|
taskIds,
|
|
267
243
|
tagState,
|
|
268
|
-
userGroupsState,
|
|
269
244
|
});
|
|
270
245
|
return {
|
|
271
246
|
groupName: groupKey,
|
|
@@ -274,13 +249,12 @@ const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, user
|
|
|
274
249
|
tasks: tasksWithUserDetails,
|
|
275
250
|
};
|
|
276
251
|
});
|
|
277
|
-
if (taskListState
|
|
278
|
-
isDefaultFilters(taskListState) === false) {
|
|
252
|
+
if (isDefaultFilters(taskListState) === false) {
|
|
279
253
|
return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
|
|
280
254
|
}
|
|
281
255
|
return taskGroupsWithTasksList;
|
|
282
256
|
};
|
|
283
|
-
const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRoleState, addressState, taskGroupState, taskGroupViewState, tagState,
|
|
257
|
+
const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRoleState, addressState, taskGroupState, taskGroupViewState, tagState, }) => {
|
|
284
258
|
const { groupByKey } = taskListState.uiState;
|
|
285
259
|
if (groupByKey === 'groupName') {
|
|
286
260
|
return getTaskListGroupedByGroupName({
|
|
@@ -292,7 +266,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
292
266
|
taskGroupState,
|
|
293
267
|
taskGroupViewState,
|
|
294
268
|
tagState,
|
|
295
|
-
userGroupsState,
|
|
296
269
|
});
|
|
297
270
|
}
|
|
298
271
|
if (groupByKey === 'assignee') {
|
|
@@ -303,7 +276,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
303
276
|
userRoleState,
|
|
304
277
|
addressState,
|
|
305
278
|
tagState,
|
|
306
|
-
userGroupsState,
|
|
307
279
|
});
|
|
308
280
|
}
|
|
309
281
|
if (groupByKey === 'priority') {
|
|
@@ -314,7 +286,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
314
286
|
userRoleState,
|
|
315
287
|
addressState,
|
|
316
288
|
tagState,
|
|
317
|
-
userGroupsState,
|
|
318
289
|
});
|
|
319
290
|
}
|
|
320
291
|
if (groupByKey === 'status') {
|
|
@@ -325,7 +296,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
325
296
|
userRoleState,
|
|
326
297
|
addressState,
|
|
327
298
|
tagState,
|
|
328
|
-
userGroupsState,
|
|
329
299
|
});
|
|
330
300
|
}
|
|
331
301
|
if (groupByKey === 'tag') {
|
|
@@ -336,7 +306,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
336
306
|
userRoleState,
|
|
337
307
|
addressState,
|
|
338
308
|
tagState,
|
|
339
|
-
userGroupsState,
|
|
340
309
|
});
|
|
341
310
|
}
|
|
342
311
|
return getTaskListGroupedByDueDate({
|
|
@@ -346,7 +315,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
|
|
|
346
315
|
userRoleState,
|
|
347
316
|
addressState,
|
|
348
317
|
tagState,
|
|
349
|
-
userGroupsState,
|
|
350
318
|
});
|
|
351
319
|
};
|
|
352
320
|
exports.getAllTasks = (0, toolkit_1.createSelector)((state) => state.taskListState, (state) => state.taskState, (state) => state.userState, (state) => state.userRoleState, (state) => state.userListViewState, (state) => state.addressState, (state) => state.taskGroupState, (state) => state.taskGroupViewState, (state) => state.tagViewState, (state) => state.tagState, (state) => state.taskGroupTemplateState, (state) => state.taskGroupTemplateViewState, (state) => state.userGroupsState, (state) => state.userGroupListViewState, (_state, isTaskTemplatesEnabled) => isTaskTemplatesEnabled, (taskListState, taskState, userState, userRoleState, userListViewState, addressState, taskGroupState, taskGroupViewState, tagViewState, tagState, taskGroupTemplateState, taskGroupTemplateViewState, userGroupsState, userGroupListViewState, isTaskTemplatesEnabled) => {
|
|
@@ -360,7 +328,6 @@ exports.getAllTasks = (0, toolkit_1.createSelector)((state) => state.taskListSta
|
|
|
360
328
|
taskGroupState,
|
|
361
329
|
taskGroupViewState,
|
|
362
330
|
tagState,
|
|
363
|
-
userGroupsState,
|
|
364
331
|
});
|
|
365
332
|
const fetchStateVariables = [
|
|
366
333
|
taskListState,
|
|
@@ -372,15 +339,7 @@ exports.getAllTasks = (0, toolkit_1.createSelector)((state) => state.taskListSta
|
|
|
372
339
|
}
|
|
373
340
|
const { fetchState, error } = (0, reduceFetchState_1.reduceAnyFetchState)(fetchStateVariables);
|
|
374
341
|
const taskGroupTemplates = (0, taskGroupTemplateSelector_1.getTaskGroupTemplateByIds)(taskGroupTemplateState, taskGroupTemplateViewState.taskGroupTemplateIds);
|
|
375
|
-
const tabCounts = {
|
|
376
|
-
live: taskListState.byTab.live.taskIds.length,
|
|
377
|
-
archived: taskListState.byTab.archived.taskIds.length,
|
|
378
|
-
deleted: taskListState.byTab.deleted.taskIds.length,
|
|
379
|
-
snoozed: taskListState.byTab.snoozed.taskIds.length,
|
|
380
|
-
};
|
|
381
342
|
return {
|
|
382
|
-
currentTab: taskListState.currentTab,
|
|
383
|
-
tabCounts,
|
|
384
343
|
uiState: taskListState.uiState,
|
|
385
344
|
filters: taskListState.filters,
|
|
386
345
|
taskGroupTemplates,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zeniai/client-epic-state",
|
|
3
|
-
"version": "5.0.2
|
|
3
|
+
"version": "5.0.2",
|
|
4
4
|
"description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib/esm/index.js",
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { from, of } from 'rxjs';
|
|
2
|
-
import { catchError, filter, mergeMap } from 'rxjs/operators';
|
|
3
|
-
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
4
|
-
import { updateTasks } from '../../../../entity/task/taskReducer';
|
|
5
|
-
import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
|
|
6
|
-
import { date } from '../../../../zeniDayJS';
|
|
7
|
-
import { fetchTaskList, removeTaskFromList, } from '../../taskListView/taskListReducer';
|
|
8
|
-
import { snoozeTask, snoozeTaskSuccessOrFailure } from '../taskDetailReducer';
|
|
9
|
-
export const snoozeTaskEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(snoozeTask.match), mergeMap((action) => handleSnoozeTask(action.payload.taskId, action.payload.snoozedUntil, zeniAPI)));
|
|
10
|
-
const formatSnoozedUntilForDisplay = (snoozedUntil) => date(snoozedUntil).format('MMM D, h:mm A');
|
|
11
|
-
const handleSnoozeTask = (taskId, snoozedUntil, zeniAPI) => {
|
|
12
|
-
const snoozeTaskApi$ = zeniAPI.postAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${taskId}/snooze`, { snoozed_until: snoozedUntil });
|
|
13
|
-
return snoozeTaskApi$.pipe(mergeMap((response) => handleApiResponse(response, taskId, snoozedUntil)), catchError((error) => of(snoozeTaskSuccessOrFailure({
|
|
14
|
-
fetchState: 'Error',
|
|
15
|
-
taskId,
|
|
16
|
-
error: createZeniAPIStatus('Unexpected Error', 'Snooze Task REST API call errored out: ' + JSON.stringify(error)),
|
|
17
|
-
}))));
|
|
18
|
-
};
|
|
19
|
-
const handleApiResponse = (response, taskId, snoozedUntil) => {
|
|
20
|
-
if (isSuccessResponse(response) &&
|
|
21
|
-
response.data != null &&
|
|
22
|
-
response.data.tasks.length > 0) {
|
|
23
|
-
const fetchActions = [
|
|
24
|
-
updateTasks(response.data.tasks),
|
|
25
|
-
removeTaskFromList(taskId),
|
|
26
|
-
fetchTaskList(),
|
|
27
|
-
snoozeTaskSuccessOrFailure({
|
|
28
|
-
fetchState: 'Completed',
|
|
29
|
-
taskId,
|
|
30
|
-
}),
|
|
31
|
-
openSnackbar({
|
|
32
|
-
messageSection: 'snooze_task',
|
|
33
|
-
messageText: 'success',
|
|
34
|
-
type: 'success',
|
|
35
|
-
variables: [
|
|
36
|
-
{
|
|
37
|
-
variableName: '_snoozed_until_',
|
|
38
|
-
variableValue: formatSnoozedUntilForDisplay(snoozedUntil),
|
|
39
|
-
},
|
|
40
|
-
],
|
|
41
|
-
}),
|
|
42
|
-
];
|
|
43
|
-
return from(fetchActions);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
return from([
|
|
47
|
-
snoozeTaskSuccessOrFailure({
|
|
48
|
-
fetchState: 'Error',
|
|
49
|
-
taskId,
|
|
50
|
-
error: response.status,
|
|
51
|
-
}),
|
|
52
|
-
openSnackbar({
|
|
53
|
-
messageSection: 'snooze_task',
|
|
54
|
-
messageText: 'failed',
|
|
55
|
-
type: 'error',
|
|
56
|
-
variables: [
|
|
57
|
-
{
|
|
58
|
-
variableName: '_api-error_',
|
|
59
|
-
variableValue: response.status.message,
|
|
60
|
-
},
|
|
61
|
-
],
|
|
62
|
-
}),
|
|
63
|
-
]);
|
|
64
|
-
}
|
|
65
|
-
};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { from, of } from 'rxjs';
|
|
2
|
-
import { catchError, filter, mergeMap } from 'rxjs/operators';
|
|
3
|
-
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
4
|
-
import { updateTasks } from '../../../../entity/task/taskReducer';
|
|
5
|
-
import { createZeniAPIStatus, isSuccessResponse, } from '../../../../responsePayload';
|
|
6
|
-
import { fetchTaskList } from '../../taskListView/taskListReducer';
|
|
7
|
-
import { snoozeTaskSuccessOrFailure, unsnoozeTask, } from '../taskDetailReducer';
|
|
8
|
-
export const unsnoozeTaskEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(unsnoozeTask.match), mergeMap((action) => handleUnsnoozeTask(action.payload.taskId, zeniAPI)));
|
|
9
|
-
const handleUnsnoozeTask = (taskId, zeniAPI) => {
|
|
10
|
-
const unsnoozeTaskApi$ = zeniAPI.deleteAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${taskId}/snooze`);
|
|
11
|
-
return unsnoozeTaskApi$.pipe(mergeMap((response) => handleApiResponse(response, taskId)), catchError((error) => of(snoozeTaskSuccessOrFailure({
|
|
12
|
-
fetchState: 'Error',
|
|
13
|
-
taskId,
|
|
14
|
-
error: createZeniAPIStatus('Unexpected Error', 'Unsnooze Task REST API call errored out: ' + JSON.stringify(error)),
|
|
15
|
-
}))));
|
|
16
|
-
};
|
|
17
|
-
const handleApiResponse = (response, taskId) => {
|
|
18
|
-
if (isSuccessResponse(response) &&
|
|
19
|
-
response.data != null &&
|
|
20
|
-
response.data.tasks.length > 0) {
|
|
21
|
-
const fetchActions = [
|
|
22
|
-
updateTasks(response.data.tasks),
|
|
23
|
-
fetchTaskList(),
|
|
24
|
-
snoozeTaskSuccessOrFailure({
|
|
25
|
-
fetchState: 'Completed',
|
|
26
|
-
taskId,
|
|
27
|
-
}),
|
|
28
|
-
openSnackbar({
|
|
29
|
-
messageSection: 'unsnooze_task',
|
|
30
|
-
messageText: 'success',
|
|
31
|
-
type: 'success',
|
|
32
|
-
}),
|
|
33
|
-
];
|
|
34
|
-
return from(fetchActions);
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
return from([
|
|
38
|
-
snoozeTaskSuccessOrFailure({
|
|
39
|
-
fetchState: 'Error',
|
|
40
|
-
taskId,
|
|
41
|
-
error: response.status,
|
|
42
|
-
}),
|
|
43
|
-
openSnackbar({
|
|
44
|
-
messageSection: 'unsnooze_task',
|
|
45
|
-
messageText: 'failed',
|
|
46
|
-
type: 'error',
|
|
47
|
-
variables: [
|
|
48
|
-
{
|
|
49
|
-
variableName: '_api-error_',
|
|
50
|
-
variableValue: response.status.message,
|
|
51
|
-
},
|
|
52
|
-
],
|
|
53
|
-
}),
|
|
54
|
-
]);
|
|
55
|
-
}
|
|
56
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
-
import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
|
|
3
|
-
import { updateTasks } from '../../../../entity/task/taskReducer';
|
|
4
|
-
import { RootState } from '../../../../reducer';
|
|
5
|
-
import { ZeniAPI } from '../../../../zeniAPI';
|
|
6
|
-
import { fetchTaskList, removeTaskFromList } from '../../taskListView/taskListReducer';
|
|
7
|
-
import { snoozeTask, snoozeTaskSuccessOrFailure } from '../taskDetailReducer';
|
|
8
|
-
export type ActionType = ReturnType<typeof snoozeTask> | ReturnType<typeof updateTasks> | ReturnType<typeof openSnackbar> | ReturnType<typeof fetchTaskList> | ReturnType<typeof snoozeTaskSuccessOrFailure> | ReturnType<typeof removeTaskFromList>;
|
|
9
|
-
export declare const snoozeTaskEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<ActionType>;
|