diff --git a/web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx b/web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx index f6565f415..26d87a5a6 100644 --- a/web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx +++ b/web/app/[workspaceSlug]/(projects)/active-cycles/header.tsx @@ -2,10 +2,11 @@ import { observer } from "mobx-react"; // ui -import { Crown } from "lucide-react"; import { Breadcrumbs, ContrastIcon } from "@plane/ui"; +// components import { BreadcrumbLink } from "@/components/common"; -// icons +// plane web components +import { UpgradeBadge } from "@/plane-web/components/workspace"; export const WorkspaceActiveCycleHeader = observer(() => (
@@ -22,7 +23,7 @@ export const WorkspaceActiveCycleHeader = observer(() => ( } /> - +
diff --git a/web/app/[workspaceSlug]/(projects)/settings/billing/page.tsx b/web/app/[workspaceSlug]/(projects)/settings/billing/page.tsx index 96cf35a53..3e3c586c4 100644 --- a/web/app/[workspaceSlug]/(projects)/settings/billing/page.tsx +++ b/web/app/[workspaceSlug]/(projects)/settings/billing/page.tsx @@ -1,15 +1,14 @@ "use client"; import { observer } from "mobx-react"; -// ui -import { Button } from "@plane/ui"; // component import { PageHead } from "@/components/core"; // constants -import { MARKETING_PRICING_PAGE_LINK } from "@/constants/common"; import { EUserWorkspaceRoles } from "@/constants/workspace"; // hooks import { useUser, useWorkspace } from "@/hooks/store"; +// plane web components +import { BillingRoot } from "@/plane-web/components/workspace"; const BillingSettingsPage = observer(() => { // store hooks @@ -34,22 +33,7 @@ const BillingSettingsPage = observer(() => { return ( <> -
-
-
-

Billing & Plans

-
-
-
-
-

Current plan

-

You are currently using the free plan

- - - -
-
-
+ ); }); diff --git a/web/ce/components/workspace/billing/index.ts b/web/ce/components/workspace/billing/index.ts new file mode 100644 index 000000000..1efe34c51 --- /dev/null +++ b/web/ce/components/workspace/billing/index.ts @@ -0,0 +1 @@ +export * from "./root"; diff --git a/web/ce/components/workspace/billing/root.tsx b/web/ce/components/workspace/billing/root.tsx new file mode 100644 index 000000000..1b87bc198 --- /dev/null +++ b/web/ce/components/workspace/billing/root.tsx @@ -0,0 +1,23 @@ +// ui +import { Button } from "@plane/ui"; +// constants +import { MARKETING_PRICING_PAGE_LINK } from "@/constants/common"; + +export const BillingRoot = () => ( +
+
+
+

Billing and Plans

+
+
+
+
+

Current plan

+

You are currently using the free plan

+ + + +
+
+
+); diff --git a/web/ce/components/workspace/index.ts b/web/ce/components/workspace/index.ts index d373164c5..6ac6285f4 100644 --- a/web/ce/components/workspace/index.ts +++ b/web/ce/components/workspace/index.ts @@ -1 +1,3 @@ export * from "./edition-badge"; +export * from "./upgrade-badge"; +export * from "./billing"; diff --git a/web/ce/components/workspace/upgrade-badge.tsx b/web/ce/components/workspace/upgrade-badge.tsx new file mode 100644 index 000000000..3fc3654cf --- /dev/null +++ b/web/ce/components/workspace/upgrade-badge.tsx @@ -0,0 +1,27 @@ +import { FC } from "react"; +// helpers +import { cn } from "@/helpers/common.helper"; + +type TUpgradeBadge = { + className?: string; + size?: "sm" | "md"; +}; + +export const UpgradeBadge: FC = (props) => { + const { className, size = "sm" } = props; + + return ( +
+ Pro +
+ ); +}; diff --git a/web/core/components/workspace/sidebar/workspace-menu.tsx b/web/core/components/workspace/sidebar/workspace-menu.tsx index 3b244fd9f..15df1c70a 100644 --- a/web/core/components/workspace/sidebar/workspace-menu.tsx +++ b/web/core/components/workspace/sidebar/workspace-menu.tsx @@ -4,7 +4,7 @@ import React, { useEffect } from "react"; import { observer } from "mobx-react"; import Link from "next/link"; import { useParams, usePathname } from "next/navigation"; -import { ChevronRight, Crown } from "lucide-react"; +import { ChevronRight } from "lucide-react"; import { Disclosure, Transition } from "@headlessui/react"; // ui import { Tooltip } from "@plane/ui"; @@ -18,6 +18,8 @@ import { cn } from "@/helpers/common.helper"; import { useAppTheme, useEventTracker, useUser } from "@/hooks/store"; import useLocalStorage from "@/hooks/use-local-storage"; import { usePlatformOS } from "@/hooks/use-platform-os"; +// plane web components +import { UpgradeBadge } from "@/plane-web/components/workspace"; export const SidebarWorkspaceMenu = observer(() => { // store hooks @@ -112,16 +114,20 @@ export const SidebarWorkspaceMenu = observer(() => { } )} > - - - - {!sidebarCollapsed &&

{link.label}

} +
+ + + + {!sidebarCollapsed &&

{link.label}

} +
{!sidebarCollapsed && link.key === "active-cycles" && ( - +
+ +
)} diff --git a/web/ee/components/workspace/billing/index.ts b/web/ee/components/workspace/billing/index.ts new file mode 100644 index 000000000..50a9c47c0 --- /dev/null +++ b/web/ee/components/workspace/billing/index.ts @@ -0,0 +1 @@ +export * from "./root"; \ No newline at end of file diff --git a/web/ee/components/workspace/billing/root.tsx b/web/ee/components/workspace/billing/root.tsx new file mode 100644 index 000000000..522692913 --- /dev/null +++ b/web/ee/components/workspace/billing/root.tsx @@ -0,0 +1 @@ +export * from "ce/components/workspace/billing/root"; diff --git a/web/ee/components/workspace/edition-badge.tsx b/web/ee/components/workspace/edition-badge.tsx new file mode 100644 index 000000000..b5b092da4 --- /dev/null +++ b/web/ee/components/workspace/edition-badge.tsx @@ -0,0 +1 @@ +export * from "ce/components/workspace/edition-badge"; diff --git a/web/ee/components/workspace/index.ts b/web/ee/components/workspace/index.ts new file mode 100644 index 000000000..6ac6285f4 --- /dev/null +++ b/web/ee/components/workspace/index.ts @@ -0,0 +1,3 @@ +export * from "./edition-badge"; +export * from "./upgrade-badge"; +export * from "./billing"; diff --git a/web/ee/components/workspace/upgrade-badge.tsx b/web/ee/components/workspace/upgrade-badge.tsx new file mode 100644 index 000000000..1c7fcfb64 --- /dev/null +++ b/web/ee/components/workspace/upgrade-badge.tsx @@ -0,0 +1 @@ +export * from "ce/components/workspace/upgrade-badge";