mirror of
https://github.com/makeplane/plane.git
synced 2025-12-20 13:49:33 +01:00
* [WEB-5134] refactor: update `web` ESLint configuration and refactor imports to use type imports - Enhanced ESLint configuration by adding new rules for import consistency and type imports. - Refactored multiple files to replace regular imports with type imports for better clarity and performance. - Ensured consistent use of type imports across the application to align with TypeScript best practices. * refactor: standardize type imports across components - Updated multiple files to replace regular imports with type imports for improved clarity and consistency. - Ensured adherence to TypeScript best practices in the rich filters and issue layouts components.
26 lines
1001 B
TypeScript
26 lines
1001 B
TypeScript
import type { IWorkItemPeekOverview } from "@plane/types";
|
|
import { EIssueServiceType } from "@plane/types";
|
|
import { IssuePeekOverview } from "@/components/issues/peek-overview";
|
|
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
|
import type { TPeekIssue } from "@/store/issue/issue-details/root.store";
|
|
|
|
export type TNotificationPreview = {
|
|
isWorkItem: boolean;
|
|
PeekOverviewComponent: React.ComponentType<IWorkItemPeekOverview>;
|
|
setPeekWorkItem: (peekIssue: TPeekIssue | undefined) => void;
|
|
};
|
|
|
|
/**
|
|
* This function returns if the current active notification is related to work item or an epic.
|
|
* @returns isWorkItem: boolean, peekOverviewComponent: IWorkItemPeekOverview, setPeekWorkItem
|
|
*/
|
|
export const useNotificationPreview = (): TNotificationPreview => {
|
|
const { peekIssue, setPeekIssue } = useIssueDetail(EIssueServiceType.ISSUES);
|
|
|
|
return {
|
|
isWorkItem: Boolean(peekIssue),
|
|
PeekOverviewComponent: IssuePeekOverview,
|
|
setPeekWorkItem: setPeekIssue,
|
|
};
|
|
};
|