@zeniai/client-epic-state 5.0.2-betaRR20 → 5.0.2-betaRR5

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.
@@ -31,7 +31,6 @@ const initializeTaskToLocalStoreEpic = (actions$, state$) => actions$.pipe((0, o
31
31
  savedRecurringEndDate: task.recurringEndDate,
32
32
  recurringStartDate: task.recurringStartDate,
33
33
  timeSpent: task.timeSpent,
34
- isPrivate: task.isPrivate,
35
34
  };
36
35
  const actions = [
37
36
  (0, taskDetailReducer_1.saveTaskUpdatesToLocalStore)({ taskDetailLocalData, taskId }),
@@ -98,6 +98,5 @@ const prepareTaskPayload = (state, taskId, taskGroupId) => {
98
98
  sync_token: syncToken,
99
99
  task_group_ids: taskGroupId != null ? [taskGroupId] : [],
100
100
  time_spent: (0, formatMinutesToFromHHMM_1.convertHHMMStrToMinutes)(localData.timeSpent),
101
- ...(taskId == null ? { is_private: localData.isPrivate ?? false } : {}),
102
101
  };
103
102
  };
@@ -33,7 +33,6 @@ export interface EditTaskLocalData {
33
33
  timeSpent: string;
34
34
  type: TaskType;
35
35
  dueDate?: ZeniDate;
36
- isPrivate?: boolean;
37
36
  recurringFrequency?: RecurringFrequencyType;
38
37
  recurringStartDate?: ZeniDate;
39
38
  savedRecurringEndDate?: ZeniDate;
@@ -21,7 +21,6 @@ export interface TaskDetailSelectorView extends SelectorView {
21
21
  createdByUser?: UserAndRole;
22
22
  isArchived?: boolean;
23
23
  isDeleted?: boolean;
24
- recurringSourceTaskId?: ID;
25
24
  snoozedUntil?: ZeniDate | null;
26
25
  }
27
26
  export declare const getTaskDetail: (state: RootState, taskId?: ID) => TaskDetailSelectorView;
@@ -30,7 +30,6 @@ const getTaskDetail = (state, taskId) => {
30
30
  let createdByUser = undefined;
31
31
  let isArchived = undefined;
32
32
  let isDeleted = undefined;
33
- let recurringSourceTaskId = undefined;
34
33
  let snoozedUntil = undefined;
35
34
  if (taskId != null && sourceTaskDetail != null) {
36
35
  const taskEntity = (0, taskSelector_1.getTaskById)(taskState, taskId);
@@ -39,7 +38,6 @@ const getTaskDetail = (state, taskId) => {
39
38
  createdByUser = (0, userAndRole_1.getUserAndUserRole)(userState, userRoleState, addressState, taskEntity.createdBy);
40
39
  isArchived = taskEntity.isArchived;
41
40
  isDeleted = taskEntity.isDeleted;
42
- recurringSourceTaskId = taskEntity.recurringSourceTaskId;
43
41
  snoozedUntil = taskEntity.snoozedUntil;
44
42
  }
45
43
  if (fileIdsInEntity.length > 0) {
@@ -90,7 +88,6 @@ const getTaskDetail = (state, taskId) => {
90
88
  createdByUser,
91
89
  isArchived,
92
90
  isDeleted,
93
- recurringSourceTaskId,
94
91
  showTaskDetailFormFooter,
95
92
  snoozedUntil,
96
93
  };
@@ -11,10 +11,9 @@ const updateTaskFromListViewEpic = (actions$, state$, zeniAPI) => actions$.pipe(
11
11
  const state = state$.value;
12
12
  const { task, updates } = action.payload;
13
13
  const taskId = task.id;
14
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
15
- const { snoozed_until: _snoozedUntil, ...taskData } = (0, bulkUpdateTaskListEpic_1.getTaskPayload)(state, taskId, updates);
14
+ const taskData = (0, bulkUpdateTaskListEpic_1.getTaskPayload)(state, taskId, updates);
16
15
  return zeniAPI
17
- .putAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${taskId}`, taskData)
16
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.taskMicroServiceBaseUrl}/1.0/task-manager/tasks/${taskId}`, { ...taskData })
18
17
  .pipe((0, operators_1.mergeMap)((response) => {
19
18
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
20
19
  return (0, rxjs_1.from)([
@@ -5,7 +5,6 @@ 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';
@@ -14,7 +13,6 @@ import { UserListSelectorView } from '../../userListView/userListViewSelector';
14
13
  import { TaskListFilters, TaskListLocalData, TaskListState, TaskListTab, 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;
@@ -38,12 +36,11 @@ export interface TaskListSelectorView extends SelectorView {
38
36
  userGroupList: UserGroupListSelectorView;
39
37
  userList: UserListSelectorView;
40
38
  }
41
- export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }: {
39
+ export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }: {
42
40
  addressState: AddressState;
43
41
  tagState: TagState;
44
42
  taskListState: TaskListState;
45
43
  taskState: TaskState;
46
- userGroupsState: UserGroupsState;
47
44
  userRoleState: UserRoleState;
48
45
  userState: UserState;
49
46
  }) => {
@@ -52,12 +49,11 @@ export declare const getTaskListGroupedByAssignees: ({ taskListState, taskState,
52
49
  isDefault: boolean;
53
50
  tasks: TaskWithUserDetails[];
54
51
  }[];
55
- export declare const getTaskListGroupedByPriority: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }: {
52
+ export declare const getTaskListGroupedByPriority: ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }: {
56
53
  addressState: AddressState;
57
54
  tagState: TagState;
58
55
  taskListState: TaskListState;
59
56
  taskState: TaskState;
60
- userGroupsState: UserGroupsState;
61
57
  userRoleState: UserRoleState;
62
58
  userState: UserState;
63
59
  }) => {
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getAllTasks = exports.getTaskListGroupedByPriority = exports.getTaskListGroupedByAssignees = void 0;
7
7
  const toolkit_1 = require("@reduxjs/toolkit");
8
+ const isEqual_1 = __importDefault(require("lodash/isEqual"));
8
9
  const orderBy_1 = __importDefault(require("lodash/orderBy"));
9
10
  const sortOrderPayload_1 = require("../../../commonPayloadTypes/sortOrderPayload");
10
11
  const reduceFetchState_1 = require("../../../commonStateTypes/reduceFetchState");
@@ -20,6 +21,11 @@ const userGroupListViewSelector_1 = require("../../userGroupListView/userGroupLi
20
21
  const userListViewSelector_1 = require("../../userListView/userListViewSelector");
21
22
  const taskDetailSelector_1 = require("../taskDetailView/taskDetailSelector");
22
23
  const taskList_1 = require("./taskList");
24
+ const taskListReducer_1 = require("./taskListReducer");
25
+ const isDefaultFilters = (taskListState) => {
26
+ return ((0, isEqual_1.default)(taskListState.filters, taskListReducer_1.initialState.filters) &&
27
+ taskListReducer_1.initialState.uiState.searchText === taskListState.uiState.searchText);
28
+ };
23
29
  const sortTasksList = (tagState, tasksList, sortKey, sortOrder) => {
24
30
  const tasksInOrder = (0, orderBy_1.default)(tasksList, (task) => {
25
31
  const tagsByIds = (0, tagSelector_1.getTagsByIds)(tagState, task.tagIds);
@@ -34,12 +40,10 @@ const sortTasksList = (tagState, tasksList, sortKey, sortOrder) => {
34
40
  return task.status.name;
35
41
  case 'priority':
36
42
  return taskState_1.ALL_PRIORITY_CODE.indexOf(task.priority.code);
37
- case 'assignee':
38
- return task.firstAssigneeSortName;
39
43
  case 'timeSpent':
40
44
  return task.timeSpent;
41
45
  case 'visibility':
42
- return task.isPrivate === true ? 1 : 0;
46
+ return task.isPrivate ? 1 : 0;
43
47
  case 'name':
44
48
  default:
45
49
  return task.name.toLowerCase();
@@ -47,7 +51,7 @@ const sortTasksList = (tagState, tasksList, sortKey, sortOrder) => {
47
51
  }, sortOrder);
48
52
  return tasksInOrder;
49
53
  };
50
- const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRoleState, addressState, taskIds, tagState, userGroupsState, }) => {
54
+ const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRoleState, addressState, taskIds, tagState, }) => {
51
55
  const { sortKey, searchText } = taskListState.uiState;
52
56
  const sortOrder = (0, sortOrderPayload_1.getSortOrder)(taskListState.uiState.sortOrder);
53
57
  const tasks = taskIds
@@ -57,15 +61,7 @@ const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRole
57
61
  const assigneeUsers = task.assignees
58
62
  .map((userId) => (0, userAndRole_1.getUserAndUserRole)(userState, userRoleState, addressState, userId))
59
63
  .filter((value) => value != null);
60
- const firstUser = assigneeUsers[0]?.user;
61
- const firstUserName = (firstUser != null ? (0, userSelector_1.getUserName)(firstUser) : '') ||
62
- firstUser?.email ||
63
- '';
64
- const firstGroupName = task.groupAssignees
65
- .map((gId) => userGroupsState.userGroupByUserGroupId[gId]?.name)
66
- .find((name) => name != null && name !== '');
67
- const firstAssigneeSortName = (firstUserName !== '' ? firstUserName : (firstGroupName ?? '')).toLowerCase();
68
- return { ...task, assigneeUsers, firstAssigneeSortName };
64
+ return { ...task, assigneeUsers };
69
65
  }
70
66
  return undefined;
71
67
  })
@@ -74,7 +70,7 @@ const getTasksWithUserDetails = ({ taskListState, taskState, userState, userRole
74
70
  const sortedTaskList = sortTasksList(tagState, filteredTaskList, sortKey, sortOrder);
75
71
  return sortedTaskList;
76
72
  };
77
- const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupState, taskGroupViewState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
73
+ const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupState, taskGroupViewState, userState, userRoleState, addressState, tagState, }) => {
78
74
  const { taskGroupsIds } = taskGroupViewState;
79
75
  const taskGroupsWithTasksList = taskGroupsIds
80
76
  .map((taskGroupId) => {
@@ -88,7 +84,6 @@ const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupStat
88
84
  addressState,
89
85
  taskIds,
90
86
  tagState,
91
- userGroupsState,
92
87
  });
93
88
  if (taskGroup != null) {
94
89
  return {
@@ -117,9 +112,13 @@ const getTaskListGroupedByGroupName = ({ taskListState, taskState, taskGroupStat
117
112
  if (defaultTaskGroup != null) {
118
113
  sortedTaskGroupsWithTasksList.push(defaultTaskGroup);
119
114
  }
120
- return sortedTaskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
115
+ if (taskListState.currentTab !== 'live' ||
116
+ isDefaultFilters(taskListState) === false) {
117
+ return sortedTaskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
118
+ }
119
+ return sortedTaskGroupsWithTasksList;
121
120
  };
122
- const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
121
+ const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
123
122
  const assigneeGroups = Object.keys(taskListState.taskIdsByAssignees);
124
123
  const taskGroupsWithTasksList = assigneeGroups.map((groupKey) => {
125
124
  const taskIds = taskListState.taskIdsByAssignees[groupKey];
@@ -131,7 +130,6 @@ const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, us
131
130
  addressState,
132
131
  taskIds,
133
132
  tagState,
134
- userGroupsState,
135
133
  });
136
134
  const assigneeIds = groupKey.split(',');
137
135
  const groupName = (0, userSelector_1.getUsersByUserIds)(userState, assigneeIds)
@@ -147,10 +145,14 @@ const getTaskListGroupedByAssignees = ({ taskListState, taskState, userState, us
147
145
  tasks: tasksWithUserDetails,
148
146
  };
149
147
  });
150
- return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
148
+ if (taskListState.currentTab !== 'live' ||
149
+ isDefaultFilters(taskListState) === false) {
150
+ return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
151
+ }
152
+ return taskGroupsWithTasksList;
151
153
  };
152
154
  exports.getTaskListGroupedByAssignees = getTaskListGroupedByAssignees;
153
- const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
155
+ const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
154
156
  const taskGroupsWithTasksList = taskState_1.ALL_PRIORITY_CODE.map((groupKey) => {
155
157
  const taskIds = taskListState.taskIdsByPriority[groupKey] ?? [];
156
158
  const tasksWithUserDetails = getTasksWithUserDetails({
@@ -161,7 +163,6 @@ const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, use
161
163
  addressState,
162
164
  taskIds,
163
165
  tagState,
164
- userGroupsState,
165
166
  });
166
167
  return {
167
168
  groupName: taskDetailSelector_1.allTaskPriority.find((priority) => priority.code === groupKey)?.name ??
@@ -171,10 +172,14 @@ const getTaskListGroupedByPriority = ({ taskListState, taskState, userState, use
171
172
  tasks: tasksWithUserDetails,
172
173
  };
173
174
  });
174
- return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
175
+ if (taskListState.currentTab !== 'live' ||
176
+ isDefaultFilters(taskListState) === false) {
177
+ return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
178
+ }
179
+ return taskGroupsWithTasksList;
175
180
  };
176
181
  exports.getTaskListGroupedByPriority = getTaskListGroupedByPriority;
177
- const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
182
+ const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
178
183
  const taskGroupsWithTasksList = taskState_1.ALL_TASK_STATUS_CODE.map((groupKey) => {
179
184
  const taskIds = taskListState.taskIdsByStatus[groupKey] ?? [];
180
185
  const tasksWithUserDetails = getTasksWithUserDetails({
@@ -185,7 +190,6 @@ const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userR
185
190
  addressState,
186
191
  taskIds,
187
192
  tagState,
188
- userGroupsState,
189
193
  });
190
194
  return {
191
195
  groupName: taskDetailSelector_1.allTaskStatus.find((taskStatus) => taskStatus.code === groupKey)
@@ -195,9 +199,13 @@ const getTaskListGroupedByStatus = ({ taskListState, taskState, userState, userR
195
199
  tasks: tasksWithUserDetails,
196
200
  };
197
201
  });
198
- return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
202
+ if (taskListState.currentTab !== 'live' ||
203
+ isDefaultFilters(taskListState) === false) {
204
+ return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
205
+ }
206
+ return taskGroupsWithTasksList;
199
207
  };
200
- const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
208
+ const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
201
209
  const tagGroups = Object.keys(taskListState.taskIdsByTags);
202
210
  const taskGroupsWithTasksList = tagGroups.map((groupKey) => {
203
211
  const taskIds = taskListState.taskIdsByTags[groupKey];
@@ -209,7 +217,6 @@ const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRol
209
217
  addressState,
210
218
  taskIds,
211
219
  tagState,
212
- userGroupsState,
213
220
  });
214
221
  const tagIds = groupKey.split(',');
215
222
  const groupName = (0, tagSelector_1.getTagsByIds)(tagState, tagIds)
@@ -224,9 +231,13 @@ const getTaskListGroupedByTags = ({ taskListState, taskState, userState, userRol
224
231
  tasks: tasksWithUserDetails,
225
232
  };
226
233
  });
227
- return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
234
+ if (taskListState.currentTab !== 'live' ||
235
+ isDefaultFilters(taskListState) === false) {
236
+ return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
237
+ }
238
+ return taskGroupsWithTasksList;
228
239
  };
229
- const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, userGroupsState, }) => {
240
+ const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, userRoleState, addressState, tagState, }) => {
230
241
  const taskGroupsWithTasksList = taskList_1.DUE_DATE_GROUP_KEYS.map((groupKey) => {
231
242
  const taskIds = taskListState.taskIdsByDueDate[groupKey];
232
243
  const tasksWithUserDetails = getTasksWithUserDetails({
@@ -237,7 +248,6 @@ const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, user
237
248
  addressState,
238
249
  taskIds,
239
250
  tagState,
240
- userGroupsState,
241
251
  });
242
252
  return {
243
253
  groupName: groupKey,
@@ -246,9 +256,13 @@ const getTaskListGroupedByDueDate = ({ taskListState, taskState, userState, user
246
256
  tasks: tasksWithUserDetails,
247
257
  };
248
258
  });
249
- return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
259
+ if (taskListState.currentTab !== 'live' ||
260
+ isDefaultFilters(taskListState) === false) {
261
+ return taskGroupsWithTasksList.filter((group) => group.tasks.length > 0);
262
+ }
263
+ return taskGroupsWithTasksList;
250
264
  };
251
- const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRoleState, addressState, taskGroupState, taskGroupViewState, tagState, userGroupsState, }) => {
265
+ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRoleState, addressState, taskGroupState, taskGroupViewState, tagState, }) => {
252
266
  const { groupByKey } = taskListState.uiState;
253
267
  if (groupByKey === 'groupName') {
254
268
  return getTaskListGroupedByGroupName({
@@ -260,7 +274,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
260
274
  taskGroupState,
261
275
  taskGroupViewState,
262
276
  tagState,
263
- userGroupsState,
264
277
  });
265
278
  }
266
279
  if (groupByKey === 'assignee') {
@@ -271,7 +284,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
271
284
  userRoleState,
272
285
  addressState,
273
286
  tagState,
274
- userGroupsState,
275
287
  });
276
288
  }
277
289
  if (groupByKey === 'priority') {
@@ -282,7 +294,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
282
294
  userRoleState,
283
295
  addressState,
284
296
  tagState,
285
- userGroupsState,
286
297
  });
287
298
  }
288
299
  if (groupByKey === 'status') {
@@ -293,7 +304,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
293
304
  userRoleState,
294
305
  addressState,
295
306
  tagState,
296
- userGroupsState,
297
307
  });
298
308
  }
299
309
  if (groupByKey === 'tag') {
@@ -304,7 +314,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
304
314
  userRoleState,
305
315
  addressState,
306
316
  tagState,
307
- userGroupsState,
308
317
  });
309
318
  }
310
319
  return getTaskListGroupedByDueDate({
@@ -314,7 +323,6 @@ const getTaskGroupsWithTaskList = ({ taskListState, taskState, userState, userRo
314
323
  userRoleState,
315
324
  addressState,
316
325
  tagState,
317
- userGroupsState,
318
326
  });
319
327
  };
320
328
  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) => {
@@ -328,7 +336,6 @@ exports.getAllTasks = (0, toolkit_1.createSelector)((state) => state.taskListSta
328
336
  taskGroupState,
329
337
  taskGroupViewState,
330
338
  tagState,
331
- userGroupsState,
332
339
  });
333
340
  const fetchStateVariables = [
334
341
  taskListState,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "5.0.2-betaRR20",
3
+ "version": "5.0.2-betaRR5",
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",