From 3a48eef483de1960c42886c2d91b7eec524afe73 Mon Sep 17 00:00:00 2001 From: Atul Tameshwari Date: Wed, 17 Jun 2026 18:00:02 +0530 Subject: [PATCH] refactor: update import paths for project components and remove unused files in the projects module --- .../(detail)/[projectId]/intake/layout.tsx | 2 +- .../projects/(detail)/archives/layout.tsx | 7 +- .../projects/(detail)/archives/page.tsx | 2 +- .../(projects)/projects/(list)/layout.tsx | 7 +- .../(projects)/projects/(list)/page.tsx | 2 +- .../projects/[projectId]/members/page.tsx | 3 - .../projects/create/template-select.tsx | 15 ---- apps/web/ce/components/projects/header.tsx | 11 --- .../components/projects/navigation/helper.tsx | 84 ------------------- .../projects/teamspaces/teamspace-list.tsx | 14 ---- .../project/create-project-modal.tsx | 2 +- .../core/components/project/create/header.tsx | 16 +--- .../components/project/member-list-item.tsx | 3 +- .../components/projects/create/attributes.tsx | 0 .../components/projects/create/root.tsx | 0 .../components/projects/create/utils.ts | 0 .../components/projects/mobile-header.tsx | 0 .../{ce => core}/components/projects/page.tsx | 0 .../projects/settings/intake/header.tsx | 0 .../projects/settings/useProjectColumns.tsx | 0 20 files changed, 13 insertions(+), 155 deletions(-) delete mode 100644 apps/web/ce/components/projects/create/template-select.tsx delete mode 100644 apps/web/ce/components/projects/header.tsx delete mode 100644 apps/web/ce/components/projects/navigation/helper.tsx delete mode 100644 apps/web/ce/components/projects/teamspaces/teamspace-list.tsx rename apps/web/{ce => core}/components/projects/create/attributes.tsx (100%) rename apps/web/{ce => core}/components/projects/create/root.tsx (100%) rename apps/web/{ce => core}/components/projects/create/utils.ts (100%) rename apps/web/{ce => core}/components/projects/mobile-header.tsx (100%) rename apps/web/{ce => core}/components/projects/page.tsx (100%) rename apps/web/{ce => core}/components/projects/settings/intake/header.tsx (100%) rename apps/web/{ce => core}/components/projects/settings/useProjectColumns.tsx (100%) diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx index 267226e550..99c88f98e0 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/[projectId]/intake/layout.tsx @@ -8,7 +8,7 @@ import { Outlet } from "react-router"; // components import { AppHeader } from "@/components/core/app-header"; import { ContentWrapper } from "@/components/core/content-wrapper"; -import { ProjectInboxHeader } from "@/plane-web/components/projects/settings/intake/header"; +import { ProjectInboxHeader } from "@/components/projects/settings/intake/header"; export default function ProjectInboxIssuesLayout() { return ( diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx index 1e81fe89e2..219d9dbc0c 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/layout.tsx @@ -8,14 +8,13 @@ import { Outlet } from "react-router"; import { AppHeader } from "@/components/core/app-header"; import { ContentWrapper } from "@/components/core/content-wrapper"; -// local components -import { ProjectsListHeader } from "@/plane-web/components/projects/header"; -import { ProjectsListMobileHeader } from "@/plane-web/components/projects/mobile-header"; +import { ProjectsListMobileHeader } from "@/components/projects/mobile-header"; +import { ProjectsBaseHeader } from "@/components/project/header"; export default function ProjectListLayout() { return ( <> - } mobileHeader={} /> + } mobileHeader={} /> diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx index 3706d80308..70a471fad2 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(detail)/archives/page.tsx @@ -4,7 +4,7 @@ * See the LICENSE file for details. */ -import { ProjectPageRoot } from "@/plane-web/components/projects/page"; +import { ProjectPageRoot } from "@/components/projects/page"; function ProjectsPage() { return ; diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx index 53308d88f5..0f39520b29 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/layout.tsx @@ -8,14 +8,13 @@ import { Outlet } from "react-router"; // components import { AppHeader } from "@/components/core/app-header"; import { ContentWrapper } from "@/components/core/content-wrapper"; -// local components -import { ProjectsListHeader } from "@/plane-web/components/projects/header"; -import { ProjectsListMobileHeader } from "@/plane-web/components/projects/mobile-header"; +import { ProjectsListMobileHeader } from "@/components/projects/mobile-header"; +import { ProjectsBaseHeader } from "@/components/project/header"; export default function ProjectListLayout() { return ( <> - } mobileHeader={} /> + } mobileHeader={} /> diff --git a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx index 3706d80308..70a471fad2 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(projects)/projects/(list)/page.tsx @@ -4,7 +4,7 @@ * See the LICENSE file for details. */ -import { ProjectPageRoot } from "@/plane-web/components/projects/page"; +import { ProjectPageRoot } from "@/components/projects/page"; function ProjectsPage() { return ; diff --git a/apps/web/app/(all)/[workspaceSlug]/(settings)/settings/projects/[projectId]/members/page.tsx b/apps/web/app/(all)/[workspaceSlug]/(settings)/settings/projects/[projectId]/members/page.tsx index 61abee5ff2..7df00fc526 100644 --- a/apps/web/app/(all)/[workspaceSlug]/(settings)/settings/projects/[projectId]/members/page.tsx +++ b/apps/web/app/(all)/[workspaceSlug]/(settings)/settings/projects/[projectId]/members/page.tsx @@ -18,8 +18,6 @@ import { SettingsHeading } from "@/components/settings/heading"; // hooks import { useProject } from "@/hooks/store/use-project"; import { useUserPermissions } from "@/hooks/store/user"; -// plane web imports -import { ProjectTeamspaceList } from "@/plane-web/components/projects/teamspaces/teamspace-list"; // local imports import type { Route } from "./+types/page"; import { MembersProjectSettingsHeader } from "./header"; @@ -50,7 +48,6 @@ function MembersSettingsPage({ params }: Route.ComponentProps) { - ); diff --git a/apps/web/ce/components/projects/create/template-select.tsx b/apps/web/ce/components/projects/create/template-select.tsx deleted file mode 100644 index 84c089cad1..0000000000 --- a/apps/web/ce/components/projects/create/template-select.tsx +++ /dev/null @@ -1,15 +0,0 @@ -/** - * Copyright (c) 2023-present Plane Software, Inc. and contributors - * SPDX-License-Identifier: AGPL-3.0-only - * See the LICENSE file for details. - */ - -export type TProjectTemplateSelect = { - disabled?: boolean; - onClick?: () => void; -}; - -// eslint-disable-next-line @typescript-eslint/no-unused-vars -export function ProjectTemplateSelect(props: TProjectTemplateSelect) { - return <>; -} diff --git a/apps/web/ce/components/projects/header.tsx b/apps/web/ce/components/projects/header.tsx deleted file mode 100644 index 08e10d013f..0000000000 --- a/apps/web/ce/components/projects/header.tsx +++ /dev/null @@ -1,11 +0,0 @@ -/** - * Copyright (c) 2023-present Plane Software, Inc. and contributors - * SPDX-License-Identifier: AGPL-3.0-only - * See the LICENSE file for details. - */ - -import { ProjectsBaseHeader } from "@/components/project/header"; - -export function ProjectsListHeader() { - return ; -} diff --git a/apps/web/ce/components/projects/navigation/helper.tsx b/apps/web/ce/components/projects/navigation/helper.tsx deleted file mode 100644 index 26baffb3f7..0000000000 --- a/apps/web/ce/components/projects/navigation/helper.tsx +++ /dev/null @@ -1,84 +0,0 @@ -/** - * Copyright (c) 2023-present Plane Software, Inc. and contributors - * SPDX-License-Identifier: AGPL-3.0-only - * See the LICENSE file for details. - */ - -// plane imports -import { EUserPermissions, EProjectFeatureKey } from "@plane/constants"; -import { CycleIcon, IntakeIcon, ModuleIcon, PageIcon, ViewsIcon, WorkItemsIcon } from "@plane/propel/icons"; -// components -import type { TNavigationItem } from "@/components/workspace/sidebar/project-navigation"; - -export const getProjectFeatureNavigation = ( - workspaceSlug: string, - projectId: string, - project: { - cycle_view: boolean; - module_view: boolean; - issue_views_view: boolean; - page_view: boolean; - inbox_view: boolean; - } -): TNavigationItem[] => [ - { - i18n_key: "sidebar.work_items", - key: EProjectFeatureKey.WORK_ITEMS, - name: "Work items", - href: `/${workspaceSlug}/projects/${projectId}/issues`, - icon: WorkItemsIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER, EUserPermissions.GUEST], - shouldRender: true, - sortOrder: 1, - }, - { - i18n_key: "sidebar.cycles", - key: EProjectFeatureKey.CYCLES, - name: "Cycles", - href: `/${workspaceSlug}/projects/${projectId}/cycles`, - icon: CycleIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER], - shouldRender: project.cycle_view, - sortOrder: 2, - }, - { - i18n_key: "sidebar.modules", - key: EProjectFeatureKey.MODULES, - name: "Modules", - href: `/${workspaceSlug}/projects/${projectId}/modules`, - icon: ModuleIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER], - shouldRender: project.module_view, - sortOrder: 3, - }, - { - i18n_key: "sidebar.views", - key: EProjectFeatureKey.VIEWS, - name: "Views", - href: `/${workspaceSlug}/projects/${projectId}/views`, - icon: ViewsIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER, EUserPermissions.GUEST], - shouldRender: project.issue_views_view, - sortOrder: 4, - }, - { - i18n_key: "sidebar.pages", - key: EProjectFeatureKey.PAGES, - name: "Pages", - href: `/${workspaceSlug}/projects/${projectId}/pages`, - icon: PageIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER, EUserPermissions.GUEST], - shouldRender: project.page_view, - sortOrder: 5, - }, - { - i18n_key: "sidebar.intake", - key: EProjectFeatureKey.INTAKE, - name: "Intake", - href: `/${workspaceSlug}/projects/${projectId}/intake`, - icon: IntakeIcon, - access: [EUserPermissions.ADMIN, EUserPermissions.MEMBER, EUserPermissions.GUEST], - shouldRender: project.inbox_view, - sortOrder: 6, - }, -]; diff --git a/apps/web/ce/components/projects/teamspaces/teamspace-list.tsx b/apps/web/ce/components/projects/teamspaces/teamspace-list.tsx deleted file mode 100644 index 2f62c53e11..0000000000 --- a/apps/web/ce/components/projects/teamspaces/teamspace-list.tsx +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Copyright (c) 2023-present Plane Software, Inc. and contributors - * SPDX-License-Identifier: AGPL-3.0-only - * See the LICENSE file for details. - */ - -export type TProjectTeamspaceList = { - workspaceSlug: string; - projectId: string; -}; - -export function ProjectTeamspaceList(_props: TProjectTeamspaceList) { - return null; -} diff --git a/apps/web/core/components/project/create-project-modal.tsx b/apps/web/core/components/project/create-project-modal.tsx index 38c33e808b..45e2ed517d 100644 --- a/apps/web/core/components/project/create-project-modal.tsx +++ b/apps/web/core/components/project/create-project-modal.tsx @@ -12,7 +12,7 @@ import { getAssetIdFromUrl, checkURLValidity } from "@plane/utils"; // hooks import useKeypress from "@/hooks/use-keypress"; // plane web components -import { CreateProjectForm } from "@/plane-web/components/projects/create/root"; +import { CreateProjectForm } from "@/components/projects/create/root"; // plane web types import type { TProject } from "@plane/types"; // services diff --git a/apps/web/core/components/project/create/header.tsx b/apps/web/core/components/project/create/header.tsx index 98ab84dd54..03b0943d5e 100644 --- a/apps/web/core/components/project/create/header.tsx +++ b/apps/web/core/components/project/create/header.tsx @@ -18,8 +18,6 @@ import { getTabIndex } from "@plane/utils"; // components import { CoverImage } from "@/components/common/cover-image"; import { ImagePickerPopover } from "@/components/core/image-picker-popover"; -// plane web imports -import { ProjectTemplateSelect } from "@/plane-web/components/projects/create/template-select"; type Props = { handleClose: () => void; @@ -31,14 +29,7 @@ type Props = { }; function ProjectCreateHeader(props: Props) { - const { - handleClose, - isMobile = false, - handleFormOnChange, - isClosable = true, - handleTemplateSelect, - showActionButtons = true, - } = props; + const { handleClose, isMobile = false, handleFormOnChange, isClosable = true } = props; const { watch, control, setValue } = useFormContext(); const { t } = useTranslation(); // derived values @@ -54,11 +45,6 @@ function ProjectCreateHeader(props: Props) { alt={t("project_cover_image_alt")} className="absolute top-0 left-0 h-full w-full rounded-lg" /> - {showActionButtons && ( -
- -
- )} {isClosable && (