From a45d77de519ae858df6d7bd1745a10eabb9da640 Mon Sep 17 00:00:00 2001
From: Somay Chauhan
Date: Fri, 2 Feb 2024 21:05:00 +0530
Subject: [PATCH] fix: initialized flags on event-types page (#13469)
* fix: initialized flags on event-types page
* changes
* chore: removed `managed-event-types` flag as no longer needed
* revert: `20230404202721_add_feature_flag_managed_event_types` migration
---
.../lib/event-types/getServerSideProps.tsx | 23 +++++++++++++++++++
apps/web/pages/event-types/index.tsx | 2 ++
.../components/CreateEventTypeDialog.tsx | 9 ++------
packages/features/flags/config.ts | 1 -
packages/features/flags/hooks/index.ts | 2 +-
.../migration.sql | 3 +++
6 files changed, 31 insertions(+), 9 deletions(-)
create mode 100644 apps/web/lib/event-types/getServerSideProps.tsx
create mode 100644 packages/prisma/migrations/20240131021824_revert_20230404202721_add_feature_flag_managed_event_types/migration.sql
diff --git a/apps/web/lib/event-types/getServerSideProps.tsx b/apps/web/lib/event-types/getServerSideProps.tsx
new file mode 100644
index 0000000000..768085cc83
--- /dev/null
+++ b/apps/web/lib/event-types/getServerSideProps.tsx
@@ -0,0 +1,23 @@
+import type { GetServerSidePropsContext } from "next";
+
+import { getServerSession } from "@calcom/features/auth/lib/getServerSession";
+
+import { ssrInit } from "@server/lib/ssr";
+
+export const getServerSideProps = async (context: GetServerSidePropsContext) => {
+ const ssr = await ssrInit(context);
+ const session = await getServerSession({ req: context.req, res: context.res });
+
+ if (!session) {
+ return {
+ redirect: {
+ redirect: {
+ permanent: false,
+ destination: "/auth/login",
+ },
+ },
+ };
+ }
+
+ return { props: { trpcState: ssr.dehydrate() } };
+};
diff --git a/apps/web/pages/event-types/index.tsx b/apps/web/pages/event-types/index.tsx
index ef4c69d666..7eafcc9e7a 100644
--- a/apps/web/pages/event-types/index.tsx
+++ b/apps/web/pages/event-types/index.tsx
@@ -4,6 +4,8 @@ import PageWrapper from "@components/PageWrapper";
import EventTypesPage from "~/event-types/views/event-types-listing-view";
+export { getServerSideProps } from "@lib/event-types/getServerSideProps";
+
EventTypesPage.getLayout = getLayout;
EventTypesPage.PageWrapper = PageWrapper;
diff --git a/packages/features/eventtypes/components/CreateEventTypeDialog.tsx b/packages/features/eventtypes/components/CreateEventTypeDialog.tsx
index 3ea7bd67f8..59f776551e 100644
--- a/packages/features/eventtypes/components/CreateEventTypeDialog.tsx
+++ b/packages/features/eventtypes/components/CreateEventTypeDialog.tsx
@@ -7,7 +7,6 @@ import { useForm } from "react-hook-form";
import { z } from "zod";
import { useOrgBranding } from "@calcom/features/ee/organizations/context/provider";
-import { useFlagMap } from "@calcom/features/flags/context/provider";
import { classNames } from "@calcom/lib";
import { useLocale } from "@calcom/lib/hooks/useLocale";
import { useTypedQuery } from "@calcom/lib/hooks/useTypedQuery";
@@ -145,7 +144,6 @@ export default function CreateEventTypeDialog({
},
});
- const flags = useFlagMap();
const urlPrefix = orgBranding?.fullDomain ?? process.env.NEXT_PUBLIC_WEBSITE_URL;
return (
@@ -268,10 +266,7 @@ export default function CreateEventTypeDialog({
onValueChange={(val: SchedulingType) => {
form.setValue("schedulingType", val);
}}
- className={classNames(
- "mt-1 flex gap-4",
- isAdmin && flags["managed-event-types"] && "flex-col"
- )}>
+ className={classNames("mt-1 flex gap-4", isAdmin && "flex-col")}>
{t("round_robin_description")}
<>
- {isAdmin && flags["managed-event-types"] && (
+ {isAdmin && (
= process.env.NEXT_PUBLIC_IS_E2E
- ? { "managed-event-types": true, organizations: true, teams: true }
+ ? { organizations: true, teams: true }
: {};
export function useFlags(): Partial {
const query = trpc.viewer.features.map.useQuery(undefined, {
diff --git a/packages/prisma/migrations/20240131021824_revert_20230404202721_add_feature_flag_managed_event_types/migration.sql b/packages/prisma/migrations/20240131021824_revert_20230404202721_add_feature_flag_managed_event_types/migration.sql
new file mode 100644
index 0000000000..c98c697a2e
--- /dev/null
+++ b/packages/prisma/migrations/20240131021824_revert_20230404202721_add_feature_flag_managed_event_types/migration.sql
@@ -0,0 +1,3 @@
+-- revert 20230404202721_add_feature_flag_managed_event_types
+
+DELETE FROM "Feature" WHERE slug = 'managed-event-types';
\ No newline at end of file