From 6214c0917027a0c56f0a8f3297c83dbc3e99db72 Mon Sep 17 00:00:00 2001 From: Prateek Shourya Date: Thu, 19 Dec 2024 13:58:54 +0530 Subject: [PATCH] refactor: move all issue related enums to constants package (#6229) --- packages/constants/src/issue.ts | 43 +++++++++++++ packages/types/src/issues.d.ts | 21 +++++++ packages/types/src/view-props.d.ts | 4 +- .../(projects)/drafts/header.tsx | 4 +- .../profile/[userId]/mobile-header.tsx | 10 +-- .../(detail)/[projectId]/archives/header.tsx | 2 +- .../cycles/(detail)/[cycleId]/page.tsx | 2 - .../[projectId]/cycles/(detail)/header.tsx | 9 +-- .../cycles/(detail)/mobile-header.tsx | 10 +-- .../[projectId]/draft-issues/header.tsx | 9 +-- .../issues/(list)/mobile-header.tsx | 10 +-- .../[projectId]/modules/(detail)/header.tsx | 9 +-- .../modules/(detail)/mobile-header.tsx | 12 ++-- .../views/(detail)/[viewId]/header.tsx | 9 +-- .../(projects)/workspace-views/header.tsx | 6 +- web/ce/components/issues/header.tsx | 3 +- web/ce/components/issues/quick-add/root.tsx | 4 +- web/ce/constants/issues.ts | 4 +- .../actions/issue-actions/actions-list.tsx | 3 +- .../actions/issue-actions/change-assignee.tsx | 4 +- .../actions/issue-actions/change-priority.tsx | 7 ++- .../actions/issue-actions/change-state.tsx | 2 +- .../core/modals/bulk-delete-issues-modal.tsx | 2 +- .../cycles/active-cycle/cycle-stats.tsx | 2 +- .../cycles/active-cycle/use-cycles-details.ts | 2 +- .../analytics-sidebar/issue-progress.tsx | 2 +- .../cycles/transfer-issues-modal.tsx | 2 +- web/core/components/dropdowns/layout.tsx | 4 +- .../lite-text-editor/lite-text-editor.tsx | 3 +- .../editor/lite-text-editor/toolbar.tsx | 2 +- .../issues/archived-issues-header.tsx | 4 +- web/core/components/issues/filters.tsx | 4 +- .../issue-activity/comments/comment-card.tsx | 3 +- .../comments/comment-create.tsx | 3 +- .../issue-detail-quick-actions.tsx | 2 +- .../components/issues/issue-detail/root.tsx | 2 +- .../calendar/base-calendar-root.tsx | 12 +++- .../issue-layouts/calendar/calendar.tsx | 3 +- .../calendar/dropdowns/options-dropdown.tsx | 2 +- .../issues/issue-layouts/calendar/header.tsx | 2 +- .../calendar/quick-add-issue-actions.tsx | 3 +- .../calendar/roots/cycle-root.tsx | 2 +- .../calendar/roots/module-root.tsx | 2 +- .../empty-states/archived-issues.tsx | 2 +- .../issue-layouts/empty-states/cycle.tsx | 2 +- .../empty-states/draft-issues.tsx | 2 +- .../empty-states/global-view.tsx | 2 +- .../issue-layouts/empty-states/index.tsx | 2 +- .../issue-layouts/empty-states/module.tsx | 2 +- .../empty-states/project-issues.tsx | 2 +- .../empty-states/project-view.tsx | 2 +- .../applied-filters/roots/archived-issue.tsx | 2 +- .../applied-filters/roots/cycle-root.tsx | 2 +- .../applied-filters/roots/draft-issue.tsx | 2 +- .../roots/global-view-root.tsx | 2 +- .../applied-filters/roots/module-root.tsx | 2 +- .../roots/profile-issues-root.tsx | 2 +- .../applied-filters/roots/project-root.tsx | 2 +- .../roots/project-view-root.tsx | 2 +- .../display-filters-selection.tsx | 9 ++- .../header/filters/filters-selection.tsx | 10 ++- .../filters/header/layout-selection.tsx | 5 +- .../issue-layouts/gantt/base-gantt-root.tsx | 3 +- .../issues/issue-layouts/issue-layout-HOC.tsx | 3 +- .../issue-layouts/kanban/base-kanban-root.tsx | 3 +- .../issue-layouts/kanban/kanban-group.tsx | 4 +- .../issue-layouts/kanban/roots/cycle-root.tsx | 2 +- .../kanban/roots/module-root.tsx | 2 +- .../issue-layouts/list/base-list-root.tsx | 5 +- .../issues/issue-layouts/list/list-group.tsx | 4 +- .../issue-layouts/list/roots/cycle-root.tsx | 2 +- .../issue-layouts/list/roots/module-root.tsx | 2 +- .../quick-action-dropdowns/all-issue.tsx | 2 +- .../quick-action-dropdowns/archived-issue.tsx | 2 +- .../quick-action-dropdowns/cycle-issue.tsx | 2 +- .../quick-action-dropdowns/draft-issue.tsx | 2 +- .../quick-action-dropdowns/module-issue.tsx | 2 +- .../quick-action-dropdowns/project-issue.tsx | 2 +- .../issues/issue-layouts/quick-add/root.tsx | 3 +- .../roots/all-issue-layout-root.tsx | 9 +-- .../roots/archived-issue-layout-root.tsx | 2 +- .../issue-layouts/roots/cycle-layout-root.tsx | 4 +- .../roots/draft-issue-layout-root.tsx | 4 +- .../roots/module-layout-root.tsx | 4 +- .../roots/project-layout-root.tsx | 4 +- .../roots/project-view-layout-root.tsx | 5 +- .../spreadsheet/base-spreadsheet-root.tsx | 4 +- .../spreadsheet/spreadsheet-view.tsx | 4 +- .../components/issues/issue-layouts/utils.tsx | 3 +- .../components/issues/issue-modal/base.tsx | 2 +- .../components/issues/issue-modal/form.tsx | 2 +- .../components/issues/issue-modal/modal.tsx | 2 +- .../components/issues/peek-overview/root.tsx | 2 +- .../workspace-draft/draft-issue-block.tsx | 2 +- .../issues/workspace-draft/empty-state.tsx | 2 +- .../analytics-sidebar/issue-progress.tsx | 2 +- .../components/modules/module-view-header.tsx | 2 +- .../profile/profile-issues-filter.tsx | 9 +-- .../components/profile/profile-issues.tsx | 2 +- web/core/components/views/form.tsx | 4 +- web/core/constants/issue.ts | 62 +------------------ web/core/hooks/store/use-issues.ts | 2 +- web/core/hooks/use-group-dragndrop.ts | 2 +- web/core/hooks/use-issue-layout-store.ts | 2 +- web/core/hooks/use-issues-actions.tsx | 2 +- web/core/store/base-command-palette.store.ts | 3 +- web/core/store/global-view.store.ts | 2 +- web/core/store/issue/archived/filter.store.ts | 2 +- web/core/store/issue/cycle/filter.store.ts | 2 +- web/core/store/issue/draft/filter.store.ts | 2 +- .../store/issue/helpers/base-issues.store.ts | 5 +- .../helpers/issue-filter-helper.store.ts | 12 ++-- web/core/store/issue/module/filter.store.ts | 2 +- web/core/store/issue/profile/filter.store.ts | 2 +- .../store/issue/project-views/filter.store.ts | 2 +- web/core/store/issue/project/filter.store.ts | 2 +- .../issue/workspace-draft/filter.store.ts | 5 +- .../store/issue/workspace/filter.store.ts | 5 +- web/helpers/issue.helper.ts | 4 +- 119 files changed, 276 insertions(+), 269 deletions(-) diff --git a/packages/constants/src/issue.ts b/packages/constants/src/issue.ts index 9aa65d13e..ea3cd65d4 100644 --- a/packages/constants/src/issue.ts +++ b/packages/constants/src/issue.ts @@ -44,3 +44,46 @@ export enum EIssueServiceType { ISSUES = "issues", EPICS = "epics", } + +export enum EIssueLayoutTypes { + LIST = "list", + KANBAN = "kanban", + CALENDAR = "calendar", + GANTT = "gantt_chart", + SPREADSHEET = "spreadsheet", +} + +export enum EIssuesStoreType { + GLOBAL = "GLOBAL", + PROFILE = "PROFILE", + TEAM = "TEAM", + PROJECT = "PROJECT", + CYCLE = "CYCLE", + MODULE = "MODULE", + TEAM_VIEW = "TEAM_VIEW", + PROJECT_VIEW = "PROJECT_VIEW", + ARCHIVED = "ARCHIVED", + DRAFT = "DRAFT", + DEFAULT = "DEFAULT", + WORKSPACE_DRAFT = "WORKSPACE_DRAFT", + EPIC = "EPIC", +} + +export enum EIssueFilterType { + FILTERS = "filters", + DISPLAY_FILTERS = "display_filters", + DISPLAY_PROPERTIES = "display_properties", + KANBAN_FILTERS = "kanban_filters", +} + +export enum EIssueCommentAccessSpecifier { + EXTERNAL = "EXTERNAL", + INTERNAL = "INTERNAL", +} + +export enum EIssueListRow { + HEADER = "HEADER", + ISSUE = "ISSUE", + NO_ISSUES = "NO_ISSUES", + QUICK_ADD = "QUICK_ADD", +} diff --git a/packages/types/src/issues.d.ts b/packages/types/src/issues.d.ts index b6d32bdf8..f77408fd6 100644 --- a/packages/types/src/issues.d.ts +++ b/packages/types/src/issues.d.ts @@ -10,6 +10,12 @@ import type { Properties, IIssueDisplayFilterOptions, TIssue, + IIssueFilterOptions, + IIssueDisplayProperties, + TIssueGroupByOptions, + TIssueOrderByOptions, + TIssueGroupingFilters, + TIssueExtraOptions } from "@plane/types"; export interface IIssueCycle { @@ -235,3 +241,18 @@ export interface IIssueListRow { icon?: ReactElement | undefined; payload?: Partial; } + +export interface ILayoutDisplayFiltersOptions { + filters: (keyof IIssueFilterOptions)[]; + display_properties: (keyof IIssueDisplayProperties)[]; + display_filters: { + group_by?: TIssueGroupByOptions[]; + sub_group_by?: TIssueGroupByOptions[]; + order_by?: TIssueOrderByOptions[]; + type?: TIssueGroupingFilters[]; + }; + extra_options: { + access: boolean; + values: TIssueExtraOptions[]; + }; +} diff --git a/packages/types/src/view-props.d.ts b/packages/types/src/view-props.d.ts index aa1c75cdb..dca1a652c 100644 --- a/packages/types/src/view-props.d.ts +++ b/packages/types/src/view-props.d.ts @@ -1,5 +1,3 @@ -import { EIssueLayoutTypes } from "constants/issue"; - export type TIssueLayouts = | "list" | "kanban" @@ -110,7 +108,7 @@ export interface IIssueDisplayFilterOptions { }; group_by?: TIssueGroupByOptions; sub_group_by?: TIssueGroupByOptions; - layout?: EIssueLayoutTypes; + layout?: any; // TODO: Need to fix this and set it to enum EIssueLayoutTypes order_by?: TIssueOrderByOptions; show_empty_groups?: boolean; sub_issue?: boolean; diff --git a/web/app/[workspaceSlug]/(projects)/drafts/header.tsx b/web/app/[workspaceSlug]/(projects)/drafts/header.tsx index f77e61c31..68597b509 100644 --- a/web/app/[workspaceSlug]/(projects)/drafts/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/drafts/header.tsx @@ -3,13 +3,13 @@ import { useState } from "react"; import { observer } from "mobx-react"; import { PenSquare } from "lucide-react"; +import { EIssuesStoreType } from "@plane/constants"; // ui import { Breadcrumbs, Button, Header } from "@plane/ui"; // components import { BreadcrumbLink, CountChip } from "@/components/common"; import { CreateUpdateIssueModal } from "@/components/issues"; -// constants -import { EIssuesStoreType } from "@/constants/issue"; + // hooks import { useProject, useUserPermissions, useWorkspaceDraftIssues } from "@/hooks/store"; // plane-web diff --git a/web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx b/web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx index b963ca147..21d230347 100644 --- a/web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx +++ b/web/app/[workspaceSlug]/(projects)/profile/[userId]/mobile-header.tsx @@ -5,6 +5,8 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // icons import { ChevronDown } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions, TIssueLayouts } from "@plane/types"; // ui @@ -12,13 +14,7 @@ import { CustomMenu } from "@plane/ui"; // components import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, - ISSUE_LAYOUTS, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx index f95611fbc..17df19b22 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/archives/header.tsx @@ -3,13 +3,13 @@ import { FC } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssuesStoreType } from "@plane/constants"; // ui import { ArchiveIcon, Breadcrumbs, Tooltip, Header } from "@plane/ui"; // components import { BreadcrumbLink, Logo } from "@/components/common"; // constants import { PROJECT_ARCHIVES_BREADCRUMB_LIST } from "@/constants/archives"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues, useProject } from "@/hooks/store"; import { useAppRouter } from "@/hooks/use-app-router"; diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx index 7a29f0553..37bfae3b1 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/[cycleId]/page.tsx @@ -8,8 +8,6 @@ import { PageHead } from "@/components/core"; import { CycleDetailsSidebar } from "@/components/cycles"; import useCyclesDetails from "@/components/cycles/active-cycle/use-cycles-details"; import { CycleLayoutRoot } from "@/components/issues/issue-layouts"; -// constants -// import { EIssuesStoreType } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx index 678c50c2a..dc079bc94 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/header.tsx @@ -6,6 +6,8 @@ import Link from "next/link"; import { useParams } from "next/navigation"; // icons import { ArrowRight, PanelRight } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -15,12 +17,7 @@ import { ProjectAnalyticsModal } from "@/components/analytics"; import { BreadcrumbLink, Logo } from "@/components/common"; import { DisplayFiltersSelection, FiltersDropdown, FilterSelection, LayoutSelection } from "@/components/issues"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { isIssueFilterActive } from "@/helpers/filter.helper"; diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx index aa81ae581..1f85665fa 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/cycles/(detail)/mobile-header.tsx @@ -4,6 +4,8 @@ import { useCallback, useState } from "react"; import { useParams } from "next/navigation"; // icons import { Calendar, ChevronDown, Kanban, List } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -12,13 +14,7 @@ import { CustomMenu } from "@plane/ui"; import { ProjectAnalyticsModal } from "@/components/analytics"; import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, - ISSUE_LAYOUTS, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx index c1e866d03..59c5e995b 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/draft-issues/header.tsx @@ -3,6 +3,8 @@ import { FC, useCallback } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -11,12 +13,7 @@ import { Breadcrumbs, LayersIcon, Tooltip } from "@plane/ui"; import { BreadcrumbLink, Logo } from "@/components/common"; import { DisplayFiltersSelection, FiltersDropdown, FilterSelection, LayoutSelection } from "@/components/issues"; // constants -import { - EIssueFilterType, - EIssuesStoreType, - EIssueLayoutTypes, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx index 025c9fab0..29f2637b7 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/issues/(list)/mobile-header.tsx @@ -5,6 +5,8 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // icons import { Calendar, ChevronDown, Kanban, List } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -13,13 +15,7 @@ import { CustomMenu } from "@plane/ui"; import { ProjectAnalyticsModal } from "@/components/analytics"; import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues/issue-layouts"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, - ISSUE_LAYOUTS, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx index 38c2f4453..e84cef04f 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/header.tsx @@ -6,6 +6,8 @@ import Link from "next/link"; import { useParams } from "next/navigation"; // icons import { ArrowRight, PanelRight } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType, EIssueFilterType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -15,12 +17,7 @@ import { ProjectAnalyticsModal } from "@/components/analytics"; import { BreadcrumbLink, Logo } from "@/components/common"; import { DisplayFiltersSelection, FiltersDropdown, FilterSelection, LayoutSelection } from "@/components/issues"; // constants -import { - EIssuesStoreType, - EIssueFilterType, - EIssueLayoutTypes, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { isIssueFilterActive } from "@/helpers/filter.helper"; diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx index 0edfa2b5a..63cf32ef6 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/modules/(detail)/mobile-header.tsx @@ -5,21 +5,17 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // icons import { Calendar, ChevronDown, Kanban, List } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui import { CustomMenu } from "@plane/ui"; // components import { ProjectAnalyticsModal } from "@/components/analytics"; -import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues"; +import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues/issue-layouts"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, - ISSUE_LAYOUTS, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx index 6fd44adfc..aca4b5b4a 100644 --- a/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/views/(detail)/[viewId]/header.tsx @@ -5,6 +5,8 @@ import { observer } from "mobx-react"; import Link from "next/link"; import { useParams } from "next/navigation"; import { Layers, Lock } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui @@ -13,12 +15,7 @@ import { Breadcrumbs, Button, CustomMenu, Tooltip, Header } from "@plane/ui"; import { BreadcrumbLink, Logo } from "@/components/common"; import { DisplayFiltersSelection, FiltersDropdown, FilterSelection, LayoutSelection } from "@/components/issues"; // constants -import { - EIssuesStoreType, - EIssueFilterType, - EIssueLayoutTypes, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; import { EViewAccess } from "@/constants/views"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; diff --git a/web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx b/web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx index 500d23ed7..e1ec683ec 100644 --- a/web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/workspace-views/header.tsx @@ -3,8 +3,10 @@ import { useCallback, useState } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; -// types import { Layers } from "lucide-react"; +// plane constants +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; +// types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // ui import { Breadcrumbs, Button, Header } from "@plane/ui"; @@ -13,7 +15,7 @@ import { BreadcrumbLink } from "@/components/common"; import { DisplayFiltersSelection, FiltersDropdown, FilterSelection } from "@/components/issues"; import { CreateUpdateWorkspaceViewModal } from "@/components/workspace"; // constants -import { EIssueFilterType, EIssuesStoreType, ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/ce/components/issues/header.tsx b/web/ce/components/issues/header.tsx index a4c750061..51dbc3b41 100644 --- a/web/ce/components/issues/header.tsx +++ b/web/ce/components/issues/header.tsx @@ -4,13 +4,14 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // icons import { Briefcase, Circle, ExternalLink } from "lucide-react"; +// plane constants +import { EIssuesStoreType } from "@plane/constants"; // ui import { Breadcrumbs, Button, LayersIcon, Tooltip, Header } from "@plane/ui"; // components import { BreadcrumbLink, CountChip, Logo } from "@/components/common"; // constants import HeaderFilters from "@/components/issues/filters"; -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { SPACE_BASE_PATH, SPACE_BASE_URL } from "@/helpers/common.helper"; // hooks diff --git a/web/ce/components/issues/quick-add/root.tsx b/web/ce/components/issues/quick-add/root.tsx index 382f790a0..c0bd3914e 100644 --- a/web/ce/components/issues/quick-add/root.tsx +++ b/web/ce/components/issues/quick-add/root.tsx @@ -1,6 +1,8 @@ import { FC, useEffect, useRef } from "react"; import { observer } from "mobx-react"; import { UseFormRegister, UseFormSetFocus } from "react-hook-form"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // plane helpers import { useOutsideClickDetector } from "@plane/hooks"; // types @@ -14,8 +16,6 @@ import { SpreadsheetQuickAddIssueForm, TQuickAddIssueForm, } from "@/components/issues/issue-layouts"; -// constants -import { EIssueLayoutTypes } from "@/constants/issue"; // hooks import { useProject } from "@/hooks/store"; import useKeypress from "@/hooks/use-keypress"; diff --git a/web/ce/constants/issues.ts b/web/ce/constants/issues.ts index 99b8ef90d..70a34577f 100644 --- a/web/ce/constants/issues.ts +++ b/web/ce/constants/issues.ts @@ -1,6 +1,4 @@ -import { TIssueActivityComment } from "@plane/types"; -// constants -import { ILayoutDisplayFiltersOptions } from "@/constants/issue"; +import { ILayoutDisplayFiltersOptions, TIssueActivityComment } from "@plane/types"; export enum EActivityFilterType { ACTIVITY = "ACTIVITY", diff --git a/web/core/components/command-palette/actions/issue-actions/actions-list.tsx b/web/core/components/command-palette/actions/issue-actions/actions-list.tsx index 6c1c01aca..c15a935b5 100644 --- a/web/core/components/command-palette/actions/issue-actions/actions-list.tsx +++ b/web/core/components/command-palette/actions/issue-actions/actions-list.tsx @@ -4,11 +4,10 @@ import { Command } from "cmdk"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { LinkIcon, Signal, Trash2, UserMinus2, UserPlus2, Users } from "lucide-react"; +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // hooks import { DoubleCircleIcon, TOAST_TYPE, setToast } from "@plane/ui"; -// constants -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { copyTextToClipboard } from "@/helpers/string.helper"; // hooks diff --git a/web/core/components/command-palette/actions/issue-actions/change-assignee.tsx b/web/core/components/command-palette/actions/issue-actions/change-assignee.tsx index 319adf8f2..84ac73b75 100644 --- a/web/core/components/command-palette/actions/issue-actions/change-assignee.tsx +++ b/web/core/components/command-palette/actions/issue-actions/change-assignee.tsx @@ -4,12 +4,12 @@ import { Command } from "cmdk"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Check } from "lucide-react"; +// plane constants +import { EIssuesStoreType } from "@plane/constants"; // plane types import { TIssue } from "@plane/types"; // plane ui import { Avatar } from "@plane/ui"; -// constants -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { getFileURL } from "@/helpers/file.helper"; // hooks diff --git a/web/core/components/command-palette/actions/issue-actions/change-priority.tsx b/web/core/components/command-palette/actions/issue-actions/change-priority.tsx index 5bd8ce850..2f004e8ea 100644 --- a/web/core/components/command-palette/actions/issue-actions/change-priority.tsx +++ b/web/core/components/command-palette/actions/issue-actions/change-priority.tsx @@ -1,13 +1,16 @@ -"use client"; `` +"use client"; import { Command } from "cmdk"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Check } from "lucide-react"; +// plane constants +import { EIssuesStoreType } from "@plane/constants"; +// plane types import { TIssue, TIssuePriorities } from "@plane/types"; // mobx store import { PriorityIcon } from "@plane/ui"; -import { EIssuesStoreType, ISSUE_PRIORITIES } from "@/constants/issue"; +import { ISSUE_PRIORITIES } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; // ui // types diff --git a/web/core/components/command-palette/actions/issue-actions/change-state.tsx b/web/core/components/command-palette/actions/issue-actions/change-state.tsx index 5d512f4ac..f60ee7dca 100644 --- a/web/core/components/command-palette/actions/issue-actions/change-state.tsx +++ b/web/core/components/command-palette/actions/issue-actions/change-state.tsx @@ -5,9 +5,9 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // hooks import { Check } from "lucide-react"; +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; import { Spinner, StateGroupIcon } from "@plane/ui"; -import { EIssuesStoreType } from "@/constants/issue"; import { useProjectState, useIssues } from "@/hooks/store"; // ui // icons diff --git a/web/core/components/core/modals/bulk-delete-issues-modal.tsx b/web/core/components/core/modals/bulk-delete-issues-modal.tsx index 1d397a315..aec70262a 100644 --- a/web/core/components/core/modals/bulk-delete-issues-modal.tsx +++ b/web/core/components/core/modals/bulk-delete-issues-modal.tsx @@ -6,6 +6,7 @@ import { useParams } from "next/navigation"; import { SubmitHandler, useForm } from "react-hook-form"; import { Search } from "lucide-react"; import { Combobox, Dialog, Transition } from "@headlessui/react"; +import { EIssuesStoreType } from "@plane/constants"; // types import { ISearchIssueResponse, IUser } from "@plane/types"; // ui @@ -14,7 +15,6 @@ import { Button, Loader, TOAST_TYPE, setToast } from "@plane/ui"; import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues } from "@/hooks/store"; import useDebounce from "@/hooks/use-debounce"; diff --git a/web/core/components/cycles/active-cycle/cycle-stats.tsx b/web/core/components/cycles/active-cycle/cycle-stats.tsx index 6fcdaebd5..44d7b595f 100644 --- a/web/core/components/cycles/active-cycle/cycle-stats.tsx +++ b/web/core/components/cycles/active-cycle/cycle-stats.tsx @@ -7,6 +7,7 @@ import { CalendarCheck } from "lucide-react"; // headless ui import { Tab } from "@headlessui/react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { ICycle, IIssueFilterOptions } from "@plane/types"; // ui import { Tooltip, Loader, PriorityIcon, Avatar } from "@plane/ui"; @@ -16,7 +17,6 @@ import { StateDropdown } from "@/components/dropdowns"; import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { renderFormattedDate, renderFormattedDateWithoutYear } from "@/helpers/date-time.helper"; diff --git a/web/core/components/cycles/active-cycle/use-cycles-details.ts b/web/core/components/cycles/active-cycle/use-cycles-details.ts index cd148705b..4412319ba 100644 --- a/web/core/components/cycles/active-cycle/use-cycles-details.ts +++ b/web/core/components/cycles/active-cycle/use-cycles-details.ts @@ -2,9 +2,9 @@ import { useCallback } from "react"; import isEqual from "lodash/isEqual"; import { useRouter } from "next/navigation"; import useSWR from "swr"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; import { CYCLE_ISSUES_WITH_PARAMS } from "@/constants/fetch-keys"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useCycle, useIssues } from "@/hooks/store"; interface IActiveCycleDetails { diff --git a/web/core/components/cycles/analytics-sidebar/issue-progress.tsx b/web/core/components/cycles/analytics-sidebar/issue-progress.tsx index d9725d1d6..0efdaded5 100644 --- a/web/core/components/cycles/analytics-sidebar/issue-progress.tsx +++ b/web/core/components/cycles/analytics-sidebar/issue-progress.tsx @@ -7,11 +7,11 @@ import { observer } from "mobx-react"; import { useSearchParams } from "next/navigation"; import { ChevronUp, ChevronDown } from "lucide-react"; import { Disclosure, Transition } from "@headlessui/react"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { ICycle, IIssueFilterOptions, TCyclePlotType, TProgressSnapshot } from "@plane/types"; // components import { CycleProgressStats } from "@/components/cycles"; // constants -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; // helpers import { getDate } from "@/helpers/date-time.helper"; // hooks diff --git a/web/core/components/cycles/transfer-issues-modal.tsx b/web/core/components/cycles/transfer-issues-modal.tsx index ae9cf3dac..1d065bf85 100644 --- a/web/core/components/cycles/transfer-issues-modal.tsx +++ b/web/core/components/cycles/transfer-issues-modal.tsx @@ -8,8 +8,8 @@ import { Dialog, Transition } from "@headlessui/react"; // hooks // ui //icons +import { EIssuesStoreType } from "@plane/constants"; import { ContrastIcon, TransferIcon, TOAST_TYPE, setToast } from "@plane/ui"; -import { EIssuesStoreType } from "@/constants/issue"; import { useCycle, useIssues } from "@/hooks/store"; //icons // constants diff --git a/web/core/components/dropdowns/layout.tsx b/web/core/components/dropdowns/layout.tsx index 826475c69..9907ab140 100644 --- a/web/core/components/dropdowns/layout.tsx +++ b/web/core/components/dropdowns/layout.tsx @@ -1,12 +1,14 @@ import { useCallback, useMemo } from "react"; import { observer } from "mobx-react"; import { Check } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // plane ui import { Dropdown } from "@plane/ui"; // plane utils import { cn } from "@plane/utils"; // constants -import { EIssueLayoutTypes, ISSUE_LAYOUT_MAP } from "@/constants/issue"; +import { ISSUE_LAYOUT_MAP } from "@/constants/issue"; type TLayoutDropDown = { onChange: (value: EIssueLayoutTypes) => void; diff --git a/web/core/components/editor/lite-text-editor/lite-text-editor.tsx b/web/core/components/editor/lite-text-editor/lite-text-editor.tsx index b77106a19..9ba82f9de 100644 --- a/web/core/components/editor/lite-text-editor/lite-text-editor.tsx +++ b/web/core/components/editor/lite-text-editor/lite-text-editor.tsx @@ -1,12 +1,11 @@ import React, { useState } from "react"; // editor +import { EIssueCommentAccessSpecifier } from "@plane/constants"; import { EditorRefApi, ILiteTextEditor, LiteTextEditorWithRef } from "@plane/editor"; // types import { IUserLite } from "@plane/types"; // components import { IssueCommentToolbar } from "@/components/editor"; -// constants -import { EIssueCommentAccessSpecifier } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { getEditorFileHandlers } from "@/helpers/editor.helper"; diff --git a/web/core/components/editor/lite-text-editor/toolbar.tsx b/web/core/components/editor/lite-text-editor/toolbar.tsx index 1951a3170..643095f1f 100644 --- a/web/core/components/editor/lite-text-editor/toolbar.tsx +++ b/web/core/components/editor/lite-text-editor/toolbar.tsx @@ -2,13 +2,13 @@ import React, { useEffect, useState, useCallback } from "react"; import { Globe2, Lock, LucideIcon } from "lucide-react"; +import { EIssueCommentAccessSpecifier } from "@plane/constants"; // editor import { EditorRefApi } from "@plane/editor"; // ui import { Button, Tooltip } from "@plane/ui"; // constants import { TOOLBAR_ITEMS, ToolbarMenuItem } from "@/constants/editor"; -import { EIssueCommentAccessSpecifier } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/archived-issues-header.tsx b/web/core/components/issues/archived-issues-header.tsx index 3926f0872..e64c651b7 100644 --- a/web/core/components/issues/archived-issues-header.tsx +++ b/web/core/components/issues/archived-issues-header.tsx @@ -1,13 +1,15 @@ import { FC } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +// plane constants +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import type { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // components import { ArchiveTabsList } from "@/components/archives"; import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues"; // constants -import { EIssueFilterType, EIssuesStoreType, ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/core/components/issues/filters.tsx b/web/core/components/issues/filters.tsx index 54b6f5015..f96c582c9 100644 --- a/web/core/components/issues/filters.tsx +++ b/web/core/components/issues/filters.tsx @@ -2,13 +2,15 @@ import { useCallback, useState } from "react"; import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; import { Button } from "@plane/ui"; // components import { DisplayFiltersSelection, FiltersDropdown, FilterSelection, LayoutSelection } from "@/components/issues"; // constants -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType, ISSUE_STORE_TO_FILTERS_MAP } from "@/constants/issue"; +import { ISSUE_STORE_TO_FILTERS_MAP } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/core/components/issues/issue-detail/issue-activity/comments/comment-card.tsx b/web/core/components/issues/issue-detail/issue-activity/comments/comment-card.tsx index 53998f01b..b3921d7fa 100644 --- a/web/core/components/issues/issue-detail/issue-activity/comments/comment-card.tsx +++ b/web/core/components/issues/issue-detail/issue-activity/comments/comment-card.tsx @@ -4,14 +4,13 @@ import { FC, useEffect, useRef, useState } from "react"; import { observer } from "mobx-react"; import { useForm } from "react-hook-form"; import { Check, Globe2, Lock, Pencil, Trash2, X } from "lucide-react"; +import { EIssueCommentAccessSpecifier } from "@plane/constants"; import { EditorReadOnlyRefApi, EditorRefApi } from "@plane/editor"; import { TIssueComment } from "@plane/types"; // ui import { CustomMenu } from "@plane/ui"; // components import { LiteTextEditor, LiteTextReadOnlyEditor } from "@/components/editor"; -// constants -import { EIssueCommentAccessSpecifier } from "@/constants/issue"; // helpers import { isCommentEmpty } from "@/helpers/string.helper"; // hooks diff --git a/web/core/components/issues/issue-detail/issue-activity/comments/comment-create.tsx b/web/core/components/issues/issue-detail/issue-activity/comments/comment-create.tsx index ccaf97256..7dec4ecad 100644 --- a/web/core/components/issues/issue-detail/issue-activity/comments/comment-create.tsx +++ b/web/core/components/issues/issue-detail/issue-activity/comments/comment-create.tsx @@ -1,13 +1,12 @@ import { FC, useRef, useState } from "react"; import { useForm, Controller } from "react-hook-form"; +import { EIssueCommentAccessSpecifier } from "@plane/constants"; // plane editor import { EditorRefApi } from "@plane/editor"; // types import { TIssueComment } from "@plane/types"; // components import { LiteTextEditor } from "@/components/editor"; -// constants -import { EIssueCommentAccessSpecifier } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { isCommentEmpty } from "@/helpers/string.helper"; diff --git a/web/core/components/issues/issue-detail/issue-detail-quick-actions.tsx b/web/core/components/issues/issue-detail/issue-detail-quick-actions.tsx index e0dedfaa5..31858bff1 100644 --- a/web/core/components/issues/issue-detail/issue-detail-quick-actions.tsx +++ b/web/core/components/issues/issue-detail/issue-detail-quick-actions.tsx @@ -4,12 +4,12 @@ import React, { FC, useState } from "react"; import { observer } from "mobx-react"; import { usePathname } from "next/navigation"; import { ArchiveIcon, ArchiveRestoreIcon, LinkIcon, Trash2 } from "lucide-react"; +import { EIssuesStoreType } from "@plane/constants"; import { TOAST_TYPE, Tooltip, setToast } from "@plane/ui"; // components import { ArchiveIssueModal, DeleteIssueModal, IssueSubscription } from "@/components/issues"; // constants import { ISSUE_ARCHIVED, ISSUE_DELETED } from "@/constants/event-tracker"; -import { EIssuesStoreType } from "@/constants/issue"; import { ARCHIVABLE_STATE_GROUPS } from "@/constants/state"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-detail/root.tsx b/web/core/components/issues/issue-detail/root.tsx index 24e24792c..136edab8e 100644 --- a/web/core/components/issues/issue-detail/root.tsx +++ b/web/core/components/issues/issue-detail/root.tsx @@ -4,6 +4,7 @@ import { FC, useMemo } from "react"; import { observer } from "mobx-react"; import { usePathname } from "next/navigation"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { TOAST_TYPE, setPromiseToast, setToast } from "@plane/ui"; @@ -12,7 +13,6 @@ import { EmptyState } from "@/components/common"; import { IssueDetailsSidebar, IssuePeekOverview } from "@/components/issues"; // constants import { ISSUE_UPDATED, ISSUE_DELETED, ISSUE_ARCHIVED } from "@/constants/event-tracker"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useAppTheme, useEventTracker, useIssueDetail, useIssues, useUserPermissions } from "@/hooks/store"; import { useAppRouter } from "@/hooks/use-app-router"; diff --git a/web/core/components/issues/issue-layouts/calendar/base-calendar-root.tsx b/web/core/components/issues/issue-layouts/calendar/base-calendar-root.tsx index 0fbcfbfe7..07e124bf0 100644 --- a/web/core/components/issues/issue-layouts/calendar/base-calendar-root.tsx +++ b/web/core/components/issues/issue-layouts/calendar/base-calendar-root.tsx @@ -3,13 +3,12 @@ import { FC, useCallback, useEffect } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; -import { EIssueGroupByToServerOptions } from "@plane/constants"; +import { EIssueGroupByToServerOptions, EIssuesStoreType } from "@plane/constants"; import { TGroupedIssues } from "@plane/types"; // components import { TOAST_TYPE, setToast } from "@plane/ui"; import { CalendarChart } from "@/components/issues"; //constants -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues, useCalendarView, useUserPermissions } from "@/hooks/store"; import { useIssueStoreType } from "@/hooks/use-issue-layout-store"; @@ -38,7 +37,14 @@ interface IBaseCalendarRoot { } export const BaseCalendarRoot = observer((props: IBaseCalendarRoot) => { - const { QuickActions, addIssuesToView, isCompletedCycle = false, viewId, isEpic = false, canEditPropertiesBasedOnProject } = props; + const { + QuickActions, + addIssuesToView, + isCompletedCycle = false, + viewId, + isEpic = false, + canEditPropertiesBasedOnProject, + } = props; // router const { workspaceSlug } = useParams(); diff --git a/web/core/components/issues/issue-layouts/calendar/calendar.tsx b/web/core/components/issues/issue-layouts/calendar/calendar.tsx index 0377f19c4..9a0284f47 100644 --- a/web/core/components/issues/issue-layouts/calendar/calendar.tsx +++ b/web/core/components/issues/issue-layouts/calendar/calendar.tsx @@ -4,6 +4,8 @@ import { useEffect, useRef, useState } from "react"; import { combine } from "@atlaskit/pragmatic-drag-and-drop/combine"; import { autoScrollForElements } from "@atlaskit/pragmatic-drag-and-drop-auto-scroll/element"; import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; // types import type { IIssueDisplayFilterOptions, @@ -21,7 +23,6 @@ import { Spinner } from "@plane/ui"; import { CalendarHeader, CalendarIssueBlocks, CalendarWeekDays, CalendarWeekHeader } from "@/components/issues"; // constants import { MONTHS_LIST } from "@/constants/calendar"; -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { renderFormattedPayloadDate } from "@/helpers/date-time.helper"; diff --git a/web/core/components/issues/issue-layouts/calendar/dropdowns/options-dropdown.tsx b/web/core/components/issues/issue-layouts/calendar/dropdowns/options-dropdown.tsx index b28959c5b..9b5b13ce4 100644 --- a/web/core/components/issues/issue-layouts/calendar/dropdowns/options-dropdown.tsx +++ b/web/core/components/issues/issue-layouts/calendar/dropdowns/options-dropdown.tsx @@ -9,6 +9,7 @@ import { Popover, Transition } from "@headlessui/react"; // hooks // ui // icons +import { EIssueFilterType } from "@plane/constants"; import { IIssueDisplayFilterOptions, IIssueDisplayProperties, @@ -20,7 +21,6 @@ import { ToggleSwitch } from "@plane/ui"; // types // constants import { CALENDAR_LAYOUTS } from "@/constants/calendar"; -import { EIssueFilterType } from "@/constants/issue"; import { useCalendarView } from "@/hooks/store"; import useSize from "@/hooks/use-window-size"; import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic"; diff --git a/web/core/components/issues/issue-layouts/calendar/header.tsx b/web/core/components/issues/issue-layouts/calendar/header.tsx index 3c55acf8e..a441ff8c1 100644 --- a/web/core/components/issues/issue-layouts/calendar/header.tsx +++ b/web/core/components/issues/issue-layouts/calendar/header.tsx @@ -2,6 +2,7 @@ import { observer } from "mobx-react"; // components import { ChevronLeft, ChevronRight } from "lucide-react"; +import { EIssueFilterType } from "@plane/constants"; import { IIssueDisplayFilterOptions, IIssueDisplayProperties, @@ -11,7 +12,6 @@ import { import { Row } from "@plane/ui"; import { CalendarMonthsDropdown, CalendarOptionsDropdown } from "@/components/issues"; // icons -import { EIssueFilterType } from "@/constants/issue"; import { useCalendarView } from "@/hooks/store/use-calendar-view"; import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic"; import { ICycleIssuesFilter } from "@/store/issue/cycle"; diff --git a/web/core/components/issues/issue-layouts/calendar/quick-add-issue-actions.tsx b/web/core/components/issues/issue-layouts/calendar/quick-add-issue-actions.tsx index 5a1becee2..285285f7a 100644 --- a/web/core/components/issues/issue-layouts/calendar/quick-add-issue-actions.tsx +++ b/web/core/components/issues/issue-layouts/calendar/quick-add-issue-actions.tsx @@ -5,6 +5,8 @@ import { differenceInCalendarDays } from "date-fns"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { PlusIcon } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // types import { ISearchIssueResponse, TIssue } from "@plane/types"; // ui @@ -13,7 +15,6 @@ import { CustomMenu, setPromiseToast } from "@plane/ui"; import { ExistingIssuesListModal } from "@/components/core"; import { QuickAddIssueRoot } from "@/components/issues"; // helpers -import { EIssueLayoutTypes } from "@/constants/issue"; import { cn } from "@/helpers/common.helper"; // hooks import { useIssueDetail } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/calendar/roots/cycle-root.tsx b/web/core/components/issues/issue-layouts/calendar/roots/cycle-root.tsx index 8543e85de..ba85fb80f 100644 --- a/web/core/components/issues/issue-layouts/calendar/roots/cycle-root.tsx +++ b/web/core/components/issues/issue-layouts/calendar/roots/cycle-root.tsx @@ -2,8 +2,8 @@ import { useCallback } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; //hooks +import { EIssuesStoreType } from "@plane/constants"; import { CycleIssueQuickActions } from "@/components/issues"; -import { EIssuesStoreType } from "@/constants/issue"; import { useCycle, useIssues } from "@/hooks/store"; // components import { BaseCalendarRoot } from "../base-calendar-root"; diff --git a/web/core/components/issues/issue-layouts/calendar/roots/module-root.tsx b/web/core/components/issues/issue-layouts/calendar/roots/module-root.tsx index aaf746b34..296b4c5a3 100644 --- a/web/core/components/issues/issue-layouts/calendar/roots/module-root.tsx +++ b/web/core/components/issues/issue-layouts/calendar/roots/module-root.tsx @@ -3,10 +3,10 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // hooks // components +import { EIssuesStoreType } from "@plane/constants"; import { ModuleIssueQuickActions } from "@/components/issues"; // types // constants -import { EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; import { BaseCalendarRoot } from "../base-calendar-root"; diff --git a/web/core/components/issues/issue-layouts/empty-states/archived-issues.tsx b/web/core/components/issues/issue-layouts/empty-states/archived-issues.tsx index 020062e4e..833a2d605 100644 --- a/web/core/components/issues/issue-layouts/empty-states/archived-issues.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/archived-issues.tsx @@ -1,13 +1,13 @@ import size from "lodash/size"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks // components import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; // types diff --git a/web/core/components/issues/issue-layouts/empty-states/cycle.tsx b/web/core/components/issues/issue-layouts/empty-states/cycle.tsx index 1650bfc98..274aa8588 100644 --- a/web/core/components/issues/issue-layouts/empty-states/cycle.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/cycle.tsx @@ -6,6 +6,7 @@ import size from "lodash/size"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, ISearchIssueResponse } from "@plane/types"; // ui import { TOAST_TYPE, setToast } from "@plane/ui"; @@ -14,7 +15,6 @@ import { ExistingIssuesListModal } from "@/components/core"; import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useCommandPalette, useCycle, useEventTracker, useIssues } from "@/hooks/store"; export const CycleEmptyState: React.FC = observer(() => { diff --git a/web/core/components/issues/issue-layouts/empty-states/draft-issues.tsx b/web/core/components/issues/issue-layouts/empty-states/draft-issues.tsx index 88eed515c..1af3ca5a5 100644 --- a/web/core/components/issues/issue-layouts/empty-states/draft-issues.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/draft-issues.tsx @@ -1,13 +1,13 @@ import size from "lodash/size"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks // components import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; // types diff --git a/web/core/components/issues/issue-layouts/empty-states/global-view.tsx b/web/core/components/issues/issue-layouts/empty-states/global-view.tsx index 107770f83..8850fe226 100644 --- a/web/core/components/issues/issue-layouts/empty-states/global-view.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/global-view.tsx @@ -1,10 +1,10 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // components +import { EIssuesStoreType } from "@plane/constants"; import { EmptyState } from "@/components/empty-state"; // constants import { EMPTY_STATE_DETAILS, EmptyStateType } from "@/constants/empty-state"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useCommandPalette, useEventTracker, useProject } from "@/hooks/store"; // assets diff --git a/web/core/components/issues/issue-layouts/empty-states/index.tsx b/web/core/components/issues/issue-layouts/empty-states/index.tsx index e776d29ba..f2d421526 100644 --- a/web/core/components/issues/issue-layouts/empty-states/index.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/index.tsx @@ -1,4 +1,4 @@ -import { EIssuesStoreType } from "@/constants/issue"; +import { EIssuesStoreType } from "@plane/constants"; // components import { ProjectArchivedEmptyState } from "./archived-issues"; import { CycleEmptyState } from "./cycle"; diff --git a/web/core/components/issues/issue-layouts/empty-states/module.tsx b/web/core/components/issues/issue-layouts/empty-states/module.tsx index 35ed83e00..9e8a26955 100644 --- a/web/core/components/issues/issue-layouts/empty-states/module.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/module.tsx @@ -5,6 +5,7 @@ import size from "lodash/size"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, ISearchIssueResponse } from "@plane/types"; // ui import { TOAST_TYPE, setToast } from "@plane/ui"; @@ -13,7 +14,6 @@ import { ExistingIssuesListModal } from "@/components/core"; import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; // hooks import { useCommandPalette, useEventTracker, useIssues } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/empty-states/project-issues.tsx b/web/core/components/issues/issue-layouts/empty-states/project-issues.tsx index 5ec86340d..5e437357a 100644 --- a/web/core/components/issues/issue-layouts/empty-states/project-issues.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/project-issues.tsx @@ -2,12 +2,12 @@ import size from "lodash/size"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // components import { EmptyState } from "@/components/empty-state"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; // hooks import { useCommandPalette, useEventTracker, useIssues } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/empty-states/project-view.tsx b/web/core/components/issues/issue-layouts/empty-states/project-view.tsx index 160834ea7..0749d810f 100644 --- a/web/core/components/issues/issue-layouts/empty-states/project-view.tsx +++ b/web/core/components/issues/issue-layouts/empty-states/project-view.tsx @@ -1,9 +1,9 @@ import { observer } from "mobx-react"; import { PlusIcon } from "lucide-react"; // components +import { EIssuesStoreType } from "@plane/constants"; import { EmptyState } from "@/components/common"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useCommandPalette, useEventTracker, useUserPermissions } from "@/hooks/store"; import { EUserPermissions, EUserPermissionsLevel } from "@/plane-web/constants/user-permissions"; diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/archived-issue.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/archived-issue.tsx index 92a9d8db3..91d720776 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/archived-issue.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/archived-issue.tsx @@ -1,9 +1,9 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks import { AppliedFiltersList } from "@/components/issues"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues, useLabel, useProjectState } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/cycle-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/cycle-root.tsx index e9f6302dc..2628fe41d 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/cycle-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/cycle-root.tsx @@ -1,10 +1,10 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks import { Header, EHeaderVariant } from "@plane/ui"; import { AppliedFiltersList, SaveFilterView } from "@/components/issues"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues, useLabel, useProjectState } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/draft-issue.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/draft-issue.tsx index ba0777eea..a596b4248 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/draft-issue.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/draft-issue.tsx @@ -1,9 +1,9 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks import { AppliedFiltersList } from "@/components/issues"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues, useLabel, useProjectState } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/global-view-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/global-view-root.tsx index 0b1003260..c0a5cc1d3 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/global-view-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/global-view-root.tsx @@ -6,6 +6,7 @@ import isEmpty from "lodash/isEmpty"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, TStaticViewTypes } from "@plane/types"; //ui // components @@ -15,7 +16,6 @@ import { UpdateViewComponent } from "@/components/views/update-view-component"; import { CreateUpdateWorkspaceViewModal } from "@/components/workspace"; // constants import { GLOBAL_VIEW_UPDATED } from "@/constants/event-tracker"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { EViewAccess } from "@/constants/views"; import { DEFAULT_GLOBAL_VIEWS_LIST } from "@/constants/workspace"; // helpers diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/module-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/module-root.tsx index 13f0fad8a..10820d354 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/module-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/module-root.tsx @@ -1,10 +1,10 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks import { Header, EHeaderVariant } from "@plane/ui"; import { AppliedFiltersList, SaveFilterView } from "@/components/issues"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues, useLabel, useProjectState } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/profile-issues-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/profile-issues-root.tsx index fe1af5fb2..eebf4fd9d 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/profile-issues-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/profile-issues-root.tsx @@ -1,11 +1,11 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // hooks // components import { AppliedFiltersList } from "@/components/issues"; // types -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { useIssues, useLabel } from "@/hooks/store"; import { useWorkspaceIssueProperties } from "@/hooks/use-workspace-issue-properties"; diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-root.tsx index 721bad769..37616a273 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-root.tsx @@ -1,13 +1,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // ui import { Header, EHeaderVariant } from "@plane/ui"; // components import { AppliedFiltersList, SaveFilterView } from "@/components/issues"; // constants -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; // hooks import { useLabel, useProjectState, useUserPermissions } from "@/hooks/store"; import { useIssues } from "@/hooks/store/use-issues"; diff --git a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-view-root.tsx b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-view-root.tsx index 395d6044a..152ebcc2d 100644 --- a/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-view-root.tsx +++ b/web/core/components/issues/issue-layouts/filters/applied-filters/roots/project-view-root.tsx @@ -6,6 +6,7 @@ import isEmpty from "lodash/isEmpty"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // types +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions } from "@plane/types"; // components import { Header, EHeaderVariant } from "@plane/ui"; @@ -13,7 +14,6 @@ import { AppliedFiltersList } from "@/components/issues"; import { CreateUpdateProjectViewModal } from "@/components/views"; import { UpdateViewComponent } from "@/components/views/update-view-component"; // constants -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { EViewAccess } from "@/constants/views"; // hooks import { useIssues, useLabel, useProjectState, useProjectView, useUser, useUserPermissions } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/filters/header/display-filters/display-filters-selection.tsx b/web/core/components/issues/issue-layouts/filters/header/display-filters/display-filters-selection.tsx index 604b12581..cd33525c8 100644 --- a/web/core/components/issues/issue-layouts/filters/header/display-filters/display-filters-selection.tsx +++ b/web/core/components/issues/issue-layouts/filters/header/display-filters/display-filters-selection.tsx @@ -1,7 +1,12 @@ import React from "react"; import isEmpty from "lodash/isEmpty"; import { observer } from "mobx-react"; -import { IIssueDisplayFilterOptions, IIssueDisplayProperties, TIssueGroupByOptions } from "@plane/types"; +import { + IIssueDisplayFilterOptions, + IIssueDisplayProperties, + ILayoutDisplayFiltersOptions, + TIssueGroupByOptions, +} from "@plane/types"; // components import { FilterDisplayProperties, @@ -10,8 +15,6 @@ import { FilterOrderBy, FilterSubGroupBy, } from "@/components/issues"; -// types -import { ILayoutDisplayFiltersOptions } from "@/constants/issue"; type Props = { displayFilters: IIssueDisplayFilterOptions | undefined; diff --git a/web/core/components/issues/issue-layouts/filters/header/filters/filters-selection.tsx b/web/core/components/issues/issue-layouts/filters/header/filters/filters-selection.tsx index fb05e7421..c45db7f49 100644 --- a/web/core/components/issues/issue-layouts/filters/header/filters/filters-selection.tsx +++ b/web/core/components/issues/issue-layouts/filters/header/filters/filters-selection.tsx @@ -3,7 +3,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Search, X } from "lucide-react"; // types -import { IIssueDisplayFilterOptions, IIssueFilterOptions, IIssueLabel, IState } from "@plane/types"; +import { + IIssueDisplayFilterOptions, + IIssueFilterOptions, + IIssueLabel, + ILayoutDisplayFiltersOptions, + IState, +} from "@plane/types"; // components import { FilterAssignees, @@ -20,8 +26,6 @@ import { FilterModule, FilterIssueGrouping, } from "@/components/issues"; -// constants -import { ILayoutDisplayFiltersOptions } from "@/constants/issue"; // hooks import { usePlatformOS } from "@/hooks/use-platform-os"; // plane web components diff --git a/web/core/components/issues/issue-layouts/filters/header/layout-selection.tsx b/web/core/components/issues/issue-layouts/filters/header/layout-selection.tsx index 6eb8a0c6a..9439eea5d 100644 --- a/web/core/components/issues/issue-layouts/filters/header/layout-selection.tsx +++ b/web/core/components/issues/issue-layouts/filters/header/layout-selection.tsx @@ -1,12 +1,13 @@ "use client"; import React from "react"; - +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // ui import { Tooltip } from "@plane/ui"; // types // constants -import { EIssueLayoutTypes, ISSUE_LAYOUTS } from "@/constants/issue"; +import { ISSUE_LAYOUTS } from "@/constants/issue"; import { usePlatformOS } from "@/hooks/use-platform-os"; // hooks diff --git a/web/core/components/issues/issue-layouts/gantt/base-gantt-root.tsx b/web/core/components/issues/issue-layouts/gantt/base-gantt-root.tsx index 5e5ec1db8..c0c97a22a 100644 --- a/web/core/components/issues/issue-layouts/gantt/base-gantt-root.tsx +++ b/web/core/components/issues/issue-layouts/gantt/base-gantt-root.tsx @@ -2,7 +2,7 @@ import React, { useCallback, useEffect } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // plane constants -import { ALL_ISSUES } from "@plane/constants"; +import { ALL_ISSUES, EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; import { setToast, TOAST_TYPE } from "@plane/ui"; // hooks @@ -10,7 +10,6 @@ import { GanttChartRoot, IBlockUpdateData, IssueGanttSidebar } from "@/component import { ETimeLineTypeType, TimeLineTypeContext } from "@/components/gantt-chart/contexts"; import { QuickAddIssueRoot, IssueGanttBlock, GanttQuickAddIssueButton } from "@/components/issues"; //constants -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // helpers import { renderFormattedPayloadDate } from "@/helpers/date-time.helper"; //hooks diff --git a/web/core/components/issues/issue-layouts/issue-layout-HOC.tsx b/web/core/components/issues/issue-layouts/issue-layout-HOC.tsx index be911f757..24cf204f9 100644 --- a/web/core/components/issues/issue-layouts/issue-layout-HOC.tsx +++ b/web/core/components/issues/issue-layouts/issue-layout-HOC.tsx @@ -1,4 +1,6 @@ import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; import { CalendarLayoutLoader, GanttLayoutLoader, @@ -6,7 +8,6 @@ import { ListLayoutLoader, SpreadsheetLayoutLoader, } from "@/components/ui"; -import { EIssueLayoutTypes } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; import { useIssueStoreType } from "@/hooks/use-issue-layout-store"; import { IssueLayoutEmptyState } from "./empty-states"; diff --git a/web/core/components/issues/issue-layouts/kanban/base-kanban-root.tsx b/web/core/components/issues/issue-layouts/kanban/base-kanban-root.tsx index 396b1df0d..2fc8e1c23 100644 --- a/web/core/components/issues/issue-layouts/kanban/base-kanban-root.tsx +++ b/web/core/components/issues/issue-layouts/kanban/base-kanban-root.tsx @@ -6,11 +6,10 @@ import { dropTargetForElements } from "@atlaskit/pragmatic-drag-and-drop/element import { autoScrollForElements } from "@atlaskit/pragmatic-drag-and-drop-auto-scroll/element"; import { observer } from "mobx-react"; import { useParams, usePathname } from "next/navigation"; -import { EIssueServiceType } from "@plane/constants"; +import { EIssueLayoutTypes, EIssueServiceType, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { DeleteIssueModal } from "@/components/issues"; //constants import { ISSUE_DELETED } from "@/constants/event-tracker"; -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; //hooks import { useEventTracker, useIssueDetail, useIssues, useKanbanView, useUserPermissions } from "@/hooks/store"; import { useGroupIssuesDragNDrop } from "@/hooks/use-group-dragndrop"; diff --git a/web/core/components/issues/issue-layouts/kanban/kanban-group.tsx b/web/core/components/issues/issue-layouts/kanban/kanban-group.tsx index 0bee738b6..7e1a2f028 100644 --- a/web/core/components/issues/issue-layouts/kanban/kanban-group.tsx +++ b/web/core/components/issues/issue-layouts/kanban/kanban-group.tsx @@ -5,6 +5,8 @@ import { combine } from "@atlaskit/pragmatic-drag-and-drop/combine"; import { dropTargetForElements } from "@atlaskit/pragmatic-drag-and-drop/element/adapter"; import { autoScrollForElements } from "@atlaskit/pragmatic-drag-and-drop-auto-scroll/element"; import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; //types import { TGroupedIssues, @@ -20,7 +22,7 @@ import { KanbanQuickAddIssueButton, QuickAddIssueRoot } from "@/components/issue import { highlightIssueOnDrop } from "@/components/issues/issue-layouts/utils"; import { KanbanIssueBlockLoader } from "@/components/ui"; // helpers -import { DRAG_ALLOWED_GROUPS, EIssueLayoutTypes } from "@/constants/issue"; +import { DRAG_ALLOWED_GROUPS } from "@/constants/issue"; import { cn } from "@/helpers/common.helper"; // hooks import { useProjectState } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/kanban/roots/cycle-root.tsx b/web/core/components/issues/issue-layouts/kanban/roots/cycle-root.tsx index 591947978..c16e3ec2f 100644 --- a/web/core/components/issues/issue-layouts/kanban/roots/cycle-root.tsx +++ b/web/core/components/issues/issue-layouts/kanban/roots/cycle-root.tsx @@ -2,9 +2,9 @@ import React, { useCallback } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // components +import { EIssuesStoreType } from "@plane/constants"; import { CycleIssueQuickActions } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useCycle, useIssues, useUserPermissions } from "@/hooks/store"; import { EUserPermissions, EUserPermissionsLevel } from "@/plane-web/constants/user-permissions"; diff --git a/web/core/components/issues/issue-layouts/kanban/roots/module-root.tsx b/web/core/components/issues/issue-layouts/kanban/roots/module-root.tsx index fb1e360d8..0e46fc505 100644 --- a/web/core/components/issues/issue-layouts/kanban/roots/module-root.tsx +++ b/web/core/components/issues/issue-layouts/kanban/roots/module-root.tsx @@ -2,8 +2,8 @@ import React from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // hook +import { EIssuesStoreType } from "@plane/constants"; import { ModuleIssueQuickActions } from "@/components/issues"; -import { EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/list/base-list-root.tsx b/web/core/components/issues/issue-layouts/list/base-list-root.tsx index ff49ec668..68f7d9859 100644 --- a/web/core/components/issues/issue-layouts/list/base-list-root.tsx +++ b/web/core/components/issues/issue-layouts/list/base-list-root.tsx @@ -1,10 +1,11 @@ import { FC, useCallback, useEffect } from "react"; import { observer } from "mobx-react"; -// types import { useParams } from "next/navigation"; +// plane constants +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; +// types import { GroupByColumnTypes, TGroupedIssues, TIssueKanbanFilters } from "@plane/types"; // constants -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues, useUserPermissions } from "@/hooks/store"; // hooks diff --git a/web/core/components/issues/issue-layouts/list/list-group.tsx b/web/core/components/issues/issue-layouts/list/list-group.tsx index ece6f1253..1e3413662 100644 --- a/web/core/components/issues/issue-layouts/list/list-group.tsx +++ b/web/core/components/issues/issue-layouts/list/list-group.tsx @@ -4,6 +4,8 @@ import { MutableRefObject, useEffect, useRef, useState } from "react"; import { combine } from "@atlaskit/pragmatic-drag-and-drop/combine"; import { dropTargetForElements } from "@atlaskit/pragmatic-drag-and-drop/element/adapter"; import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // plane ui import { IGroupByColumn, @@ -20,7 +22,7 @@ import { cn } from "@plane/utils"; // components import { ListLoaderItemRow } from "@/components/ui"; // constants -import { DRAG_ALLOWED_GROUPS, EIssueLayoutTypes } from "@/constants/issue"; +import { DRAG_ALLOWED_GROUPS } from "@/constants/issue"; // hooks import { useProjectState } from "@/hooks/store"; import { useIntersectionObserver } from "@/hooks/use-intersection-observer"; diff --git a/web/core/components/issues/issue-layouts/list/roots/cycle-root.tsx b/web/core/components/issues/issue-layouts/list/roots/cycle-root.tsx index 12c604ee6..21ab26e78 100644 --- a/web/core/components/issues/issue-layouts/list/roots/cycle-root.tsx +++ b/web/core/components/issues/issue-layouts/list/roots/cycle-root.tsx @@ -2,9 +2,9 @@ import React, { useCallback } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // components +import { EIssuesStoreType } from "@plane/constants"; import { CycleIssueQuickActions } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useCycle, useIssues, useUserPermissions } from "@/hooks/store"; import { EUserPermissions, EUserPermissionsLevel } from "@/plane-web/constants/user-permissions"; diff --git a/web/core/components/issues/issue-layouts/list/roots/module-root.tsx b/web/core/components/issues/issue-layouts/list/roots/module-root.tsx index 66c5109d1..257a6be97 100644 --- a/web/core/components/issues/issue-layouts/list/roots/module-root.tsx +++ b/web/core/components/issues/issue-layouts/list/roots/module-root.tsx @@ -2,8 +2,8 @@ import React from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // mobx store +import { EIssuesStoreType } from "@plane/constants"; import { ModuleIssueQuickActions } from "@/components/issues"; -import { EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; // components // types diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/all-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/all-issue.tsx index 9ecbe44d0..f7bce8e72 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/all-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/all-issue.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Copy, ExternalLink, Link, Pencil, Trash2 } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { ArchiveIcon, ContextMenu, CustomMenu, TContextMenuItem, TOAST_TYPE, setToast } from "@plane/ui"; // components import { ArchiveIssueModal, CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; import { ARCHIVABLE_STATE_GROUPS } from "@/constants/state"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/archived-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/archived-issue.tsx index e6349fac8..1428a3f0e 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/archived-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/archived-issue.tsx @@ -6,11 +6,11 @@ import { useParams } from "next/navigation"; // icons import { ArchiveRestoreIcon, ExternalLink, Link, Trash2 } from "lucide-react"; // ui +import { EIssuesStoreType } from "@plane/constants"; import { ContextMenu, CustomMenu, TContextMenuItem, TOAST_TYPE, setToast } from "@plane/ui"; // components import { DeleteIssueModal } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { copyUrlToClipboard } from "@/helpers/string.helper"; diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/cycle-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/cycle-issue.tsx index 3f455f990..dff81f55f 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/cycle-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/cycle-issue.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Copy, ExternalLink, Link, Pencil, Trash2, XCircle } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { ArchiveIcon, ContextMenu, CustomMenu, TContextMenuItem, TOAST_TYPE, setToast } from "@plane/ui"; // components import { ArchiveIssueModal, CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; import { ARCHIVABLE_STATE_GROUPS } from "@/constants/state"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/draft-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/draft-issue.tsx index d9bc00c5f..f9fd1ab1c 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/draft-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/draft-issue.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; // icons import { Pencil, Trash2 } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { ContextMenu, CustomMenu, TContextMenuItem } from "@plane/ui"; // components import { CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; // constant -import { EIssuesStoreType } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; // hooks diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/module-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/module-issue.tsx index c4ce4ce52..c6c8e691e 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/module-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/module-issue.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { Copy, ExternalLink, Link, Pencil, Trash2, XCircle } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { ArchiveIcon, ContextMenu, CustomMenu, TContextMenuItem, TOAST_TYPE, setToast } from "@plane/ui"; // components import { ArchiveIssueModal, CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; import { ARCHIVABLE_STATE_GROUPS } from "@/constants/state"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-layouts/quick-action-dropdowns/project-issue.tsx b/web/core/components/issues/issue-layouts/quick-action-dropdowns/project-issue.tsx index 378585e4b..f9f5c88d7 100644 --- a/web/core/components/issues/issue-layouts/quick-action-dropdowns/project-issue.tsx +++ b/web/core/components/issues/issue-layouts/quick-action-dropdowns/project-issue.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; import { useParams, usePathname } from "next/navigation"; import { Copy, ExternalLink, Link, Pencil, Trash2 } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // ui import { ArchiveIcon, ContextMenu, CustomMenu, TContextMenuItem, TOAST_TYPE, setToast } from "@plane/ui"; // components import { ArchiveIssueModal, CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; import { ARCHIVABLE_STATE_GROUPS } from "@/constants/state"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-layouts/quick-add/root.tsx b/web/core/components/issues/issue-layouts/quick-add/root.tsx index 4cdf2e8c0..61575fb23 100644 --- a/web/core/components/issues/issue-layouts/quick-add/root.tsx +++ b/web/core/components/issues/issue-layouts/quick-add/root.tsx @@ -5,6 +5,8 @@ import { observer } from "mobx-react"; import { useParams, usePathname } from "next/navigation"; import { useForm, UseFormRegister } from "react-hook-form"; import { PlusIcon } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // types import { IProject, TIssue } from "@plane/types"; // ui @@ -13,7 +15,6 @@ import { setPromiseToast } from "@plane/ui"; import { CreateIssueToastActionItems } from "@/components/issues"; // constants import { ISSUE_CREATED } from "@/constants/event-tracker"; -import { EIssueLayoutTypes } from "@/constants/issue"; // helpers import { cn } from "@/helpers/common.helper"; import { createIssuePayload } from "@/helpers/issue.helper"; diff --git a/web/core/components/issues/issue-layouts/roots/all-issue-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/all-issue-layout-root.tsx index d9d6e45f9..25d529e93 100644 --- a/web/core/components/issues/issue-layouts/roots/all-issue-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/all-issue-layout-root.tsx @@ -4,7 +4,7 @@ import { observer } from "mobx-react"; import { useParams, useSearchParams } from "next/navigation"; import useSWR from "swr"; // plane constants -import { ALL_ISSUES } from "@plane/constants"; +import { ALL_ISSUES, EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueDisplayFilterOptions } from "@plane/types"; // hooks // components @@ -13,12 +13,7 @@ import { SpreadsheetView } from "@/components/issues/issue-layouts"; import { AllIssueQuickActions } from "@/components/issues/issue-layouts/quick-action-dropdowns"; import { SpreadsheetLayoutLoader } from "@/components/ui"; // constants -import { - EIssueFilterType, - EIssueLayoutTypes, - EIssuesStoreType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // hooks import { useGlobalView, useIssues, useUserPermissions } from "@/hooks/store"; import { useAppRouter } from "@/hooks/use-app-router"; diff --git a/web/core/components/issues/issue-layouts/roots/archived-issue-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/archived-issue-layout-root.tsx index 7e94dbfbe..86f299ef2 100644 --- a/web/core/components/issues/issue-layouts/roots/archived-issue-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/archived-issue-layout-root.tsx @@ -4,9 +4,9 @@ import { useParams } from "next/navigation"; import useSWR from "swr"; // mobx store // components +import { EIssuesStoreType } from "@plane/constants"; import { LogoSpinner } from "@/components/common"; import { ArchivedIssueListLayout, ArchivedIssueAppliedFiltersRoot, IssuePeekOverview } from "@/components/issues"; -import { EIssuesStoreType } from "@/constants/issue"; // ui import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; diff --git a/web/core/components/issues/issue-layouts/roots/cycle-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/cycle-layout-root.tsx index 1b69156ba..8d35494e4 100644 --- a/web/core/components/issues/issue-layouts/roots/cycle-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/cycle-layout-root.tsx @@ -3,7 +3,8 @@ import isEmpty from "lodash/isEmpty"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; -// hooks +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; // components import { LogoSpinner } from "@/components/common"; import { TransferIssues, TransferIssuesModal } from "@/components/cycles"; @@ -17,7 +18,6 @@ import { IssuePeekOverview, } from "@/components/issues"; // constants -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // hooks import { useCycle, useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; diff --git a/web/core/components/issues/issue-layouts/roots/draft-issue-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/draft-issue-layout-root.tsx index c13ff104e..13597c578 100644 --- a/web/core/components/issues/issue-layouts/roots/draft-issue-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/draft-issue-layout-root.tsx @@ -2,9 +2,11 @@ import React from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; +// components import { LogoSpinner } from "@/components/common"; import { IssuePeekOverview } from "@/components/issues/peek-overview"; -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; diff --git a/web/core/components/issues/issue-layouts/roots/module-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/module-layout-root.tsx index b4eb7c464..f64f28cc7 100644 --- a/web/core/components/issues/issue-layouts/roots/module-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/module-layout-root.tsx @@ -2,7 +2,8 @@ import React from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; -// mobx store +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; // components import { Row, ERowVariant } from "@plane/ui"; import { LogoSpinner } from "@/components/common"; @@ -16,7 +17,6 @@ import { ModuleSpreadsheetLayout, } from "@/components/issues"; // constants -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; // types diff --git a/web/core/components/issues/issue-layouts/roots/project-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/project-layout-root.tsx index 853f13dd4..4007468dc 100644 --- a/web/core/components/issues/issue-layouts/roots/project-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/project-layout-root.tsx @@ -4,6 +4,8 @@ import { FC, Fragment } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; // components import { Spinner } from "@plane/ui"; import { LogoSpinner } from "@/components/common"; @@ -16,8 +18,6 @@ import { ProjectSpreadsheetLayout, IssuePeekOverview, } from "@/components/issues"; -// constants -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; diff --git a/web/core/components/issues/issue-layouts/roots/project-view-layout-root.tsx b/web/core/components/issues/issue-layouts/roots/project-view-layout-root.tsx index 8c8441757..fd0a54a31 100644 --- a/web/core/components/issues/issue-layouts/roots/project-view-layout-root.tsx +++ b/web/core/components/issues/issue-layouts/roots/project-view-layout-root.tsx @@ -2,7 +2,8 @@ import React from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; -// mobx store +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; // components import { LogoSpinner } from "@/components/common"; import { @@ -14,8 +15,6 @@ import { ProjectViewListLayout, ProjectViewSpreadsheetLayout, } from "@/components/issues"; -// constants -import { EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "@/hooks/use-issue-layout-store"; // types diff --git a/web/core/components/issues/issue-layouts/spreadsheet/base-spreadsheet-root.tsx b/web/core/components/issues/issue-layouts/spreadsheet/base-spreadsheet-root.tsx index b7bd6d9f1..5a681fd83 100644 --- a/web/core/components/issues/issue-layouts/spreadsheet/base-spreadsheet-root.tsx +++ b/web/core/components/issues/issue-layouts/spreadsheet/base-spreadsheet-root.tsx @@ -2,11 +2,9 @@ import { FC, useCallback, useEffect } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; // plane constants -import { ALL_ISSUES } from "@plane/constants"; +import { ALL_ISSUES, EIssueLayoutTypes, EIssuesStoreType, EIssueFilterType } from "@plane/constants"; import { IIssueDisplayFilterOptions } from "@plane/types"; // hooks -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; -// hooks import { useIssues, useUserPermissions } from "@/hooks/store"; import { useIssueStoreType } from "@/hooks/use-issue-layout-store"; import { useIssuesActions } from "@/hooks/use-issues-actions"; diff --git a/web/core/components/issues/issue-layouts/spreadsheet/spreadsheet-view.tsx b/web/core/components/issues/issue-layouts/spreadsheet/spreadsheet-view.tsx index 26c788111..6d70b923f 100644 --- a/web/core/components/issues/issue-layouts/spreadsheet/spreadsheet-view.tsx +++ b/web/core/components/issues/issue-layouts/spreadsheet/spreadsheet-view.tsx @@ -1,13 +1,13 @@ import React, { useRef } from "react"; import { observer } from "mobx-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // types import { TIssue, IIssueDisplayFilterOptions, IIssueDisplayProperties } from "@plane/types"; // components import { LogoSpinner } from "@/components/common"; import { MultipleSelectGroup } from "@/components/core"; import { QuickAddIssueRoot, SpreadsheetAddIssueButton } from "@/components/issues"; -// constants -import { EIssueLayoutTypes } from "@/constants/issue"; import { SPREADSHEET_PROPERTY_LIST, SPREADSHEET_SELECT_GROUP } from "@/constants/spreadsheet"; // hooks import { useProject } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-layouts/utils.tsx b/web/core/components/issues/issue-layouts/utils.tsx index 2cb20814c..3e7d72b1b 100644 --- a/web/core/components/issues/issue-layouts/utils.tsx +++ b/web/core/components/issues/issue-layouts/utils.tsx @@ -11,6 +11,7 @@ import uniq from "lodash/uniq"; import scrollIntoView from "smooth-scroll-into-view-if-needed"; import { ContrastIcon } from "lucide-react"; // plane types +import { EIssuesStoreType } from "@plane/constants"; import { GroupByColumnTypes, IGroupByColumn, @@ -30,7 +31,7 @@ import { Avatar, CycleGroupIcon, DiceIcon, PriorityIcon, StateGroupIcon } from " // components import { Logo } from "@/components/common"; // constants -import { ISSUE_PRIORITIES, EIssuesStoreType } from "@/constants/issue"; +import { ISSUE_PRIORITIES } from "@/constants/issue"; import { STATE_GROUPS } from "@/constants/state"; // helpers import { renderFormattedDate } from "@/helpers/date-time.helper"; diff --git a/web/core/components/issues/issue-modal/base.tsx b/web/core/components/issues/issue-modal/base.tsx index 2a9d4abe1..1d410b44f 100644 --- a/web/core/components/issues/issue-modal/base.tsx +++ b/web/core/components/issues/issue-modal/base.tsx @@ -4,13 +4,13 @@ import React, { useEffect, useRef, useState } from "react"; import { observer } from "mobx-react"; import { useParams, usePathname } from "next/navigation"; // types +import { EIssuesStoreType } from "@plane/constants"; import type { TBaseIssue, TIssue } from "@plane/types"; // ui import { EModalPosition, EModalWidth, ModalCore, TOAST_TYPE, setToast } from "@plane/ui"; import { CreateIssueToastActionItems, IssuesModalProps } from "@/components/issues"; // constants import { ISSUE_CREATED, ISSUE_UPDATED } from "@/constants/event-tracker"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useIssueModal } from "@/hooks/context/use-issue-modal"; import { useEventTracker, useCycle, useIssues, useModule, useIssueDetail, useUser } from "@/hooks/store"; diff --git a/web/core/components/issues/issue-modal/form.tsx b/web/core/components/issues/issue-modal/form.tsx index 48e12a377..86d260c3e 100644 --- a/web/core/components/issues/issue-modal/form.tsx +++ b/web/core/components/issues/issue-modal/form.tsx @@ -5,6 +5,7 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { useForm } from "react-hook-form"; // editor +import { EIssuesStoreType } from "@plane/constants"; import { EditorRefApi } from "@plane/editor"; // types import type { TIssue, ISearchIssueResponse, TWorkspaceDraftIssue } from "@plane/types"; @@ -19,7 +20,6 @@ import { IssueTitleInput, } from "@/components/issues/issue-modal/components"; import { CreateLabelModal } from "@/components/labels"; -import { EIssuesStoreType } from "@/constants/issue"; import { ETabIndices } from "@/constants/tab-indices"; // helpers import { cn } from "@/helpers/common.helper"; diff --git a/web/core/components/issues/issue-modal/modal.tsx b/web/core/components/issues/issue-modal/modal.tsx index 3c8a639ee..56569bef8 100644 --- a/web/core/components/issues/issue-modal/modal.tsx +++ b/web/core/components/issues/issue-modal/modal.tsx @@ -3,11 +3,11 @@ import React from "react"; import { observer } from "mobx-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import type { TIssue } from "@plane/types"; // components import { CreateUpdateIssueModalBase } from "@/components/issues"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // plane web providers import { IssueModalProvider } from "@/plane-web/components/issues"; diff --git a/web/core/components/issues/peek-overview/root.tsx b/web/core/components/issues/peek-overview/root.tsx index e2e907ef8..e010d6717 100644 --- a/web/core/components/issues/peek-overview/root.tsx +++ b/web/core/components/issues/peek-overview/root.tsx @@ -4,6 +4,7 @@ import { FC, useEffect, useState, useMemo, useCallback } from "react"; import { observer } from "mobx-react"; import { usePathname } from "next/navigation"; // plane types +import { EIssuesStoreType } from "@plane/constants"; import { TIssue } from "@plane/types"; // plane ui import { TOAST_TYPE, setPromiseToast, setToast } from "@plane/ui"; @@ -11,7 +12,6 @@ import { TOAST_TYPE, setPromiseToast, setToast } from "@plane/ui"; import { IssueView, TIssueOperations } from "@/components/issues"; // constants import { ISSUE_UPDATED, ISSUE_DELETED, ISSUE_ARCHIVED, ISSUE_RESTORED } from "@/constants/event-tracker"; -import { EIssuesStoreType } from "@/constants/issue"; // hooks import { useEventTracker, useIssueDetail, useIssues, useUserPermissions } from "@/hooks/store"; import { useIssueStoreType } from "@/hooks/use-issue-layout-store"; diff --git a/web/core/components/issues/workspace-draft/draft-issue-block.tsx b/web/core/components/issues/workspace-draft/draft-issue-block.tsx index d1ae6e01c..9e9ee107e 100644 --- a/web/core/components/issues/workspace-draft/draft-issue-block.tsx +++ b/web/core/components/issues/workspace-draft/draft-issue-block.tsx @@ -4,11 +4,11 @@ import { omit } from "lodash"; import { observer } from "mobx-react"; import { Copy, Pencil, SquareStackIcon, Trash2 } from "lucide-react"; // types +import { EIssuesStoreType } from "@plane/constants"; import { TWorkspaceDraftIssue } from "@plane/types"; // ui import { Row, TContextMenuItem, Tooltip } from "@plane/ui"; // constants -import { EIssuesStoreType } from "@/constants/issue"; // helper import { cn } from "@/helpers/common.helper"; // hooks diff --git a/web/core/components/issues/workspace-draft/empty-state.tsx b/web/core/components/issues/workspace-draft/empty-state.tsx index 4a1292d61..7a2893abd 100644 --- a/web/core/components/issues/workspace-draft/empty-state.tsx +++ b/web/core/components/issues/workspace-draft/empty-state.tsx @@ -2,11 +2,11 @@ import { FC, Fragment, useState } from "react"; // components +import { EIssuesStoreType } from "@plane/constants"; import { EmptyState } from "@/components/empty-state"; import { CreateUpdateIssueModal } from "@/components/issues"; // constants import { EmptyStateType } from "@/constants/empty-state"; -import { EIssuesStoreType } from "@/constants/issue"; export const WorkspaceDraftEmptyState: FC = () => { // state diff --git a/web/core/components/modules/analytics-sidebar/issue-progress.tsx b/web/core/components/modules/analytics-sidebar/issue-progress.tsx index e51e46ed4..29bac20c2 100644 --- a/web/core/components/modules/analytics-sidebar/issue-progress.tsx +++ b/web/core/components/modules/analytics-sidebar/issue-progress.tsx @@ -6,13 +6,13 @@ import { observer } from "mobx-react"; import { useSearchParams } from "next/navigation"; import { AlertCircle, ChevronUp, ChevronDown } from "lucide-react"; import { Disclosure, Transition } from "@headlessui/react"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, TModulePlotType } from "@plane/types"; import { CustomSelect, Spinner } from "@plane/ui"; // components import ProgressChart from "@/components/core/sidebar/progress-chart"; import { ModuleProgressStats } from "@/components/modules"; // constants -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; // helpers import { getDate } from "@/helpers/date-time.helper"; // hooks diff --git a/web/core/components/modules/module-view-header.tsx b/web/core/components/modules/module-view-header.tsx index 04403d232..37922f92e 100644 --- a/web/core/components/modules/module-view-header.tsx +++ b/web/core/components/modules/module-view-header.tsx @@ -5,13 +5,13 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import { ListFilter, Search, X } from "lucide-react"; // plane utils -import { cn } from "@plane/utils"; // plane helpers import { useOutsideClickDetector } from "@plane/hooks"; // types import { TModuleFilters } from "@plane/types"; // ui import { Tooltip } from "@plane/ui"; +import { cn } from "@plane/utils"; // components import { FiltersDropdown } from "@/components/issues"; import { ModuleFiltersSelection, ModuleOrderByDropdown } from "@/components/modules/dropdowns"; diff --git a/web/core/components/profile/profile-issues-filter.tsx b/web/core/components/profile/profile-issues-filter.tsx index aaaa15361..4b20324ea 100644 --- a/web/core/components/profile/profile-issues-filter.tsx +++ b/web/core/components/profile/profile-issues-filter.tsx @@ -1,17 +1,14 @@ import { useCallback } from "react"; import { observer } from "mobx-react"; import { useParams } from "next/navigation"; +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType, EIssueFilterType } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions } from "@plane/types"; // components import { DisplayFiltersSelection, FilterSelection, FiltersDropdown, LayoutSelection } from "@/components/issues"; // constants -import { - EIssuesStoreType, - EIssueFilterType, - ISSUE_DISPLAY_FILTERS_BY_LAYOUT, - EIssueLayoutTypes, -} from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; // helpers import { isIssueFilterActive } from "@/helpers/filter.helper"; // hooks diff --git a/web/core/components/profile/profile-issues.tsx b/web/core/components/profile/profile-issues.tsx index e4adaf999..428ccf8f9 100644 --- a/web/core/components/profile/profile-issues.tsx +++ b/web/core/components/profile/profile-issues.tsx @@ -3,11 +3,11 @@ import { observer } from "mobx-react"; import { useParams } from "next/navigation"; import useSWR from "swr"; // components +import { EIssuesStoreType } from "@plane/constants"; import { IssuePeekOverview, ProfileIssuesAppliedFiltersRoot } from "@/components/issues"; import { ProfileIssuesKanBanLayout } from "@/components/issues/issue-layouts/kanban/roots/profile-issues-root"; import { ProfileIssuesListLayout } from "@/components/issues/issue-layouts/list/roots/profile-issues-root"; // hooks -import { EIssuesStoreType } from "@/constants/issue"; import { useIssues } from "@/hooks/store"; import { IssuesStoreContext } from "../../hooks/use-issue-layout-store"; // constants diff --git a/web/core/components/views/form.tsx b/web/core/components/views/form.tsx index ede1fa10b..a39f98fc4 100644 --- a/web/core/components/views/form.tsx +++ b/web/core/components/views/form.tsx @@ -4,6 +4,8 @@ import { useEffect, useState } from "react"; import { observer } from "mobx-react"; import { Controller, useForm } from "react-hook-form"; import { Layers } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // types import { IProjectView, IIssueFilterOptions, IIssueDisplayProperties, IIssueDisplayFilterOptions } from "@plane/types"; // ui @@ -12,7 +14,7 @@ import { Button, EmojiIconPicker, EmojiIconPickerTypes, Input, TextArea } from " import { Logo } from "@/components/common"; import { AppliedFiltersList, DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues"; // constants -import { EIssueLayoutTypes, ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; import { ETabIndices } from "@/constants/tab-indices"; import { EViewAccess } from "@/constants/views"; // helpers diff --git a/web/core/constants/issue.ts b/web/core/constants/issue.ts index c56828439..5ef54075a 100644 --- a/web/core/constants/issue.ts +++ b/web/core/constants/issue.ts @@ -1,14 +1,16 @@ // icons import { Calendar, GanttChartSquare, Kanban, List, Sheet } from "lucide-react"; +// plane constants +import { EIssueLayoutTypes, EIssuesStoreType } from "@plane/constants"; // types import { - IIssueFilterOptions, IIssueDisplayProperties, TIssueExtraOptions, TIssueGroupByOptions, TIssueOrderByOptions, TIssuePriorities, TIssueGroupingFilters, + ILayoutDisplayFiltersOptions, } from "@plane/types"; import { ADDITIONAL_ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/plane-web/constants"; @@ -21,30 +23,6 @@ export const DRAG_ALLOWED_GROUPS: TIssueGroupByOptions[] = [ "cycle", ]; -export enum EIssuesStoreType { - GLOBAL = "GLOBAL", - PROFILE = "PROFILE", - TEAM = "TEAM", - PROJECT = "PROJECT", - CYCLE = "CYCLE", - MODULE = "MODULE", - TEAM_VIEW = "TEAM_VIEW", - PROJECT_VIEW = "PROJECT_VIEW", - ARCHIVED = "ARCHIVED", - DRAFT = "DRAFT", - DEFAULT = "DEFAULT", - WORKSPACE_DRAFT = "WORKSPACE_DRAFT", - EPIC = "EPIC", -} - -export enum EIssueLayoutTypes { - LIST = "list", - KANBAN = "kanban", - CALENDAR = "calendar", - GANTT = "gantt_chart", - SPREADSHEET = "spreadsheet", -} - export type TCreateModalStoreTypes = | EIssuesStoreType.TEAM | EIssuesStoreType.PROJECT @@ -55,18 +33,6 @@ export type TCreateModalStoreTypes = | EIssuesStoreType.MODULE | EIssuesStoreType.EPIC; -export enum EIssueFilterType { - FILTERS = "filters", - DISPLAY_FILTERS = "display_filters", - DISPLAY_PROPERTIES = "display_properties", - KANBAN_FILTERS = "kanban_filters", -} - -export enum EIssueCommentAccessSpecifier { - EXTERNAL = "EXTERNAL", - INTERNAL = "INTERNAL", -} - export const ISSUE_PRIORITIES: { key: TIssuePriorities; title: string; @@ -197,21 +163,6 @@ export const ISSUE_LAYOUTS: { icon: any; }[] = Object.values(ISSUE_LAYOUT_MAP); -export interface ILayoutDisplayFiltersOptions { - filters: (keyof IIssueFilterOptions)[]; - display_properties: (keyof IIssueDisplayProperties)[]; - display_filters: { - group_by?: TIssueGroupByOptions[]; - sub_group_by?: TIssueGroupByOptions[]; - order_by?: TIssueOrderByOptions[]; - type?: TIssueGroupingFilters[]; - }; - extra_options: { - access: boolean; - values: TIssueExtraOptions[]; - }; -} - export type TFiltersByLayout = { [layoutType: string]: ILayoutDisplayFiltersOptions; }; @@ -553,13 +504,6 @@ export const ISSUE_STORE_TO_FILTERS_MAP: Partial(undefined); diff --git a/web/core/hooks/use-issues-actions.tsx b/web/core/hooks/use-issues-actions.tsx index 2315b4385..eeebb6746 100644 --- a/web/core/hooks/use-issues-actions.tsx +++ b/web/core/hooks/use-issues-actions.tsx @@ -1,6 +1,7 @@ import { useCallback, useMemo } from "react"; // types import { useParams } from "next/navigation"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueDisplayFilterOptions, IIssueDisplayProperties, @@ -12,7 +13,6 @@ import { TLoader, TProfileViews, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { EDraftIssuePaginationType } from "@/constants/workspace-drafts"; import { useTeamIssueActions, useTeamViewIssueActions } from "@/plane-web/helpers/issue-action-helper"; import { useIssues } from "./store"; diff --git a/web/core/store/base-command-palette.store.ts b/web/core/store/base-command-palette.store.ts index 436129dd0..5281082d1 100644 --- a/web/core/store/base-command-palette.store.ts +++ b/web/core/store/base-command-palette.store.ts @@ -1,6 +1,7 @@ import { observable, action, makeObservable } from "mobx"; +import { EIssuesStoreType } from "@plane/constants"; // services -import { EIssuesStoreType, TCreateModalStoreTypes } from "@/constants/issue"; +import { TCreateModalStoreTypes } from "@/constants/issue"; // types / constants import { DEFAULT_CREATE_PAGE_MODAL_DATA, EPageAccess, TCreatePageModal } from "@/constants/page"; diff --git a/web/core/store/global-view.store.ts b/web/core/store/global-view.store.ts index e0d0d7a7b..ff40a8fd3 100644 --- a/web/core/store/global-view.store.ts +++ b/web/core/store/global-view.store.ts @@ -4,9 +4,9 @@ import isEqual from "lodash/isEqual"; import set from "lodash/set"; import { observable, action, makeObservable, runInAction, computed } from "mobx"; import { computedFn } from "mobx-utils"; +import { EIssueFilterType } from "@plane/constants"; import { IIssueFilterOptions, IWorkspaceView } from "@plane/types"; // constants -import { EIssueFilterType } from "@/constants/issue"; import { EViewAccess } from "@/constants/views"; // services import { WorkspaceService } from "@/plane-web/services"; diff --git a/web/core/store/issue/archived/filter.store.ts b/web/core/store/issue/archived/filter.store.ts index ad673c8cf..d9cbb9ab1 100644 --- a/web/core/store/issue/archived/filter.store.ts +++ b/web/core/store/issue/archived/filter.store.ts @@ -5,6 +5,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssuesStoreType, EIssueFilterType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -14,7 +15,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/cycle/filter.store.ts b/web/core/store/issue/cycle/filter.store.ts index 5e62061f0..c8a0bc0fb 100644 --- a/web/core/store/issue/cycle/filter.store.ts +++ b/web/core/store/issue/cycle/filter.store.ts @@ -3,6 +3,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +13,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/draft/filter.store.ts b/web/core/store/issue/draft/filter.store.ts index bbada1199..7b06262c9 100644 --- a/web/core/store/issue/draft/filter.store.ts +++ b/web/core/store/issue/draft/filter.store.ts @@ -5,6 +5,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -14,7 +15,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/helpers/base-issues.store.ts b/web/core/store/issue/helpers/base-issues.store.ts index 17e264d42..3b115bb06 100644 --- a/web/core/store/issue/helpers/base-issues.store.ts +++ b/web/core/store/issue/helpers/base-issues.store.ts @@ -12,8 +12,9 @@ import uniq from "lodash/uniq"; import update from "lodash/update"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; import { computedFn } from "mobx-utils"; +// plane constants +import { EIssueLayoutTypes, ALL_ISSUES } from "@plane/constants"; // types -import { ALL_ISSUES } from "@plane/constants"; import { TIssue, TIssueGroupByOptions, @@ -32,7 +33,7 @@ import { // components import { IBlockUpdateDependencyData } from "@/components/gantt-chart"; // constants -import { EIssueLayoutTypes, ISSUE_PRIORITIES } from "@/constants/issue"; +import { ISSUE_PRIORITIES } from "@/constants/issue"; // helpers import { convertToISODateString } from "@/helpers/date-time.helper"; // local-db diff --git a/web/core/store/issue/helpers/issue-filter-helper.store.ts b/web/core/store/issue/helpers/issue-filter-helper.store.ts index 37d0e3d86..118c73c3b 100644 --- a/web/core/store/issue/helpers/issue-filter-helper.store.ts +++ b/web/core/store/issue/helpers/issue-filter-helper.store.ts @@ -1,6 +1,12 @@ import isEmpty from "lodash/isEmpty"; -import { EIssueGroupByToServerOptions, EServerGroupByToFilterOptions } from "@plane/constants"; -// types +// plane constants +import { + EIssueGroupByToServerOptions, + EServerGroupByToFilterOptions, + EIssueLayoutTypes, + EIssuesStoreType, + EIssueFilterType, +} from "@plane/constants"; import { IIssueDisplayFilterOptions, IIssueDisplayProperties, @@ -12,8 +18,6 @@ import { TIssueParams, TStaticViewTypes, } from "@plane/types"; -// constants -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // helpers import { getComputedDisplayFilters, getComputedDisplayProperties } from "@/helpers/issue.helper"; // lib diff --git a/web/core/store/issue/module/filter.store.ts b/web/core/store/issue/module/filter.store.ts index 9c22963b9..e1bd1b070 100644 --- a/web/core/store/issue/module/filter.store.ts +++ b/web/core/store/issue/module/filter.store.ts @@ -3,6 +3,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +13,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/profile/filter.store.ts b/web/core/store/issue/profile/filter.store.ts index edd5073d3..5ba808328 100644 --- a/web/core/store/issue/profile/filter.store.ts +++ b/web/core/store/issue/profile/filter.store.ts @@ -3,6 +3,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +13,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/project-views/filter.store.ts b/web/core/store/issue/project-views/filter.store.ts index b49633c36..a25a53cff 100644 --- a/web/core/store/issue/project-views/filter.store.ts +++ b/web/core/store/issue/project-views/filter.store.ts @@ -3,6 +3,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +13,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; // services import { ViewService } from "@/plane-web/services"; diff --git a/web/core/store/issue/project/filter.store.ts b/web/core/store/issue/project/filter.store.ts index 069f2ed89..4d194e2f1 100644 --- a/web/core/store/issue/project/filter.store.ts +++ b/web/core/store/issue/project/filter.store.ts @@ -3,6 +3,7 @@ import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssueFilterType, EIssuesStoreType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +13,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/workspace-draft/filter.store.ts b/web/core/store/issue/workspace-draft/filter.store.ts index f43d0a068..7d504596f 100644 --- a/web/core/store/issue/workspace-draft/filter.store.ts +++ b/web/core/store/issue/workspace-draft/filter.store.ts @@ -1,8 +1,10 @@ -import isEmpty from "lodash/isEmpty"; +import +isEmpty from "lodash/isEmpty"; import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; // base class import { computedFn } from "mobx-utils"; +import { EIssuesStoreType, EIssueFilterType } from "@plane/constants"; import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -12,7 +14,6 @@ import { TIssueParams, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssuesStoreType } from "@/constants/issue"; import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { IssueFiltersService } from "@/services/issue_filter.service"; import { IBaseIssueFilterStore, IssueFilterHelperStore } from "../helpers/issue-filter-helper.store"; diff --git a/web/core/store/issue/workspace/filter.store.ts b/web/core/store/issue/workspace/filter.store.ts index e062147c6..ffc36e650 100644 --- a/web/core/store/issue/workspace/filter.store.ts +++ b/web/core/store/issue/workspace/filter.store.ts @@ -3,8 +3,10 @@ import isEmpty from "lodash/isEmpty"; import pickBy from "lodash/pickBy"; import set from "lodash/set"; import { action, computed, makeObservable, observable, runInAction } from "mobx"; -// base class +// plane constants import { computedFn } from "mobx-utils"; +import { EIssueLayoutTypes, EIssueFilterType, EIssuesStoreType } from "@plane/constants"; +// base class import { IIssueFilterOptions, IIssueDisplayFilterOptions, @@ -15,7 +17,6 @@ import { TStaticViewTypes, IssuePaginationOptions, } from "@plane/types"; -import { EIssueFilterType, EIssueLayoutTypes, EIssuesStoreType } from "@/constants/issue"; // services import { handleIssueQueryParamsByLayout } from "@/helpers/issue.helper"; import { WorkspaceService } from "@/plane-web/services"; diff --git a/web/helpers/issue.helper.ts b/web/helpers/issue.helper.ts index 171c469b0..5b9c21618 100644 --- a/web/helpers/issue.helper.ts +++ b/web/helpers/issue.helper.ts @@ -2,6 +2,8 @@ import differenceInCalendarDays from "date-fns/differenceInCalendarDays"; import isEmpty from "lodash/isEmpty"; import set from "lodash/set"; import { v4 as uuidv4 } from "uuid"; +// plane constants +import { EIssueLayoutTypes } from "@plane/constants"; // types import { IIssueDisplayFilterOptions, @@ -17,7 +19,7 @@ import { } from "@plane/types"; import { IGanttBlock } from "@/components/gantt-chart"; // constants -import { EIssueLayoutTypes, ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; +import { ISSUE_DISPLAY_FILTERS_BY_LAYOUT } from "@/constants/issue"; import { STATE_GROUPS } from "@/constants/state"; // helpers import { orderArrayBy } from "@/helpers/array.helper";