[WEB-1803] chore: workspace notification sorting when we refresh the notifications on workspace notifications (#5049)

* chore: workspace notification sorting when we refresh the notifications on workspace notifications

* chore: replaced sorting with ISO to EPOCH

* chore: converted obj to array
This commit is contained in:
guru_sainath
2024-07-05 16:09:16 +05:30
committed by GitHub
parent 61ce055cb3
commit c75091ca3a
2 changed files with 21 additions and 1 deletions

View File

@@ -1,4 +1,5 @@
import isEmpty from "lodash/isEmpty";
import orderBy from "lodash/orderBy";
import set from "lodash/set";
import update from "lodash/update";
import { action, makeObservable, observable, runInAction } from "mobx";
@@ -18,6 +19,8 @@ import {
ENotificationTab,
TNotificationTab,
} from "@/constants/notification";
// helpers
import { convertToEpoch } from "@/helpers/date-time.helper";
// services
import workspaceNotificationService from "@/services/workspace-notification.service";
// store
@@ -119,7 +122,12 @@ export class WorkspaceNotificationStore implements IWorkspaceNotificationStore {
*/
notificationIdsByWorkspaceId = computedFn((workspaceId: string) => {
if (!workspaceId || isEmpty(this.notifications)) return undefined;
const workspaceNotificationIds = Object.values(this.notifications || {})
const workspaceNotifications = orderBy(
Object.values(this.notifications || []),
(n) => convertToEpoch(n.created_at),
["desc"]
);
const workspaceNotificationIds = workspaceNotifications
.filter((n) => n.workspace === workspaceId)
.filter((n) => {
if (!this.filters.archived && !this.filters.snoozed) {

View File

@@ -279,6 +279,18 @@ export const convertToISODateString = (dateString: string | undefined) => {
return date.toISOString();
};
/**
* returns the date string in Epoch regardless of the timezone in input date string
* @param dateString
* @returns
*/
export const convertToEpoch = (dateString: string | undefined) => {
if (!dateString) return dateString;
const date = new Date(dateString);
return date.getTime();
};
/**
* get current Date time in UTC ISO format
* @returns