32 lines
909 B
TypeScript
32 lines
909 B
TypeScript
import { TIssueActivityComment } from "@plane/types";
|
|
|
|
export enum EActivityFilterType {
|
|
ACTIVITY = "ACTIVITY",
|
|
COMMENT = "COMMENT",
|
|
}
|
|
|
|
export type TActivityFilters = EActivityFilterType;
|
|
|
|
export const ACTIVITY_FILTER_TYPE_OPTIONS: Record<EActivityFilterType, { label: string }> = {
|
|
[EActivityFilterType.ACTIVITY]: {
|
|
label: "Updates",
|
|
},
|
|
[EActivityFilterType.COMMENT]: {
|
|
label: "Comments",
|
|
},
|
|
};
|
|
|
|
export const defaultActivityFilters: TActivityFilters[] = [EActivityFilterType.ACTIVITY, EActivityFilterType.COMMENT];
|
|
|
|
export type TActivityFilterOption = {
|
|
key: EActivityFilterType;
|
|
label: string;
|
|
isSelected: boolean;
|
|
onClick: () => void;
|
|
};
|
|
|
|
export const filterActivityOnSelectedFilters = (
|
|
activity: TIssueActivityComment[],
|
|
filter: TActivityFilters[]
|
|
): TIssueActivityComment[] =>
|
|
activity.filter((activity) => filter.includes(activity.activity_type as TActivityFilters));
|