feat: send organization_id to intercom (#14811)
* send organization_id to intercom * send org slug instead of org id * fix: type errors --------- Co-authored-by: Peer Richelsen <peeroke@gmail.com>
This commit is contained in:
co-authored by
Peer Richelsen
parent
a18f1eb382
commit
ef98105503
@@ -5,7 +5,6 @@ import { z } from "zod";
|
||||
|
||||
import dayjs from "@calcom/dayjs";
|
||||
import { WEBAPP_URL, WEBSITE_URL } from "@calcom/lib/constants";
|
||||
import hasKeyInMetadata from "@calcom/lib/hasKeyInMetadata";
|
||||
import { useHasTeamPlan, useHasPaidPlan } from "@calcom/lib/hooks/useHasPaidPlan";
|
||||
import { trpc } from "@calcom/trpc/react";
|
||||
|
||||
@@ -57,13 +56,14 @@ export const useIntercom = () => {
|
||||
metadata: data?.metadata,
|
||||
completed_onboarding: data.completedOnboarding,
|
||||
is_logged_in: !!data,
|
||||
sum_of_bookings: data.sumOfBookings,
|
||||
sum_of_calendars: data.sumOfCalendars,
|
||||
sum_of_teams: data.sumOfTeams,
|
||||
has_org: !data.organizationId,
|
||||
sum_of_event_types: data.sumOfEventTypes,
|
||||
sum_of_team_event_types: data.sumOfTeamEventTypes,
|
||||
is_premium: hasKeyInMetadata(data, "isPremium") ? !!data.metadata.isPremium : false,
|
||||
sum_of_bookings: data?.sumOfBookings,
|
||||
sum_of_calendars: data?.sumOfCalendars,
|
||||
sum_of_teams: data?.sumOfTeams,
|
||||
has_org: !data?.organizationId,
|
||||
organization: data?.organization?.slug,
|
||||
sum_of_event_types: data?.sumOfEventTypes,
|
||||
sum_of_team_event_types: data?.sumOfTeamEventTypes,
|
||||
is_premium: data?.isPremium,
|
||||
},
|
||||
});
|
||||
};
|
||||
@@ -96,6 +96,14 @@ export const useIntercom = () => {
|
||||
metadata: data?.metadata,
|
||||
completed_onboarding: data?.completedOnboarding,
|
||||
is_logged_in: !!data,
|
||||
sum_of_bookings: data?.sumOfBookings,
|
||||
sum_of_calendars: data?.sumOfCalendars,
|
||||
sum_of_teams: data?.sumOfTeams,
|
||||
has_org: !data?.organizationId,
|
||||
organization: data?.organization?.slug,
|
||||
sum_of_event_types: data?.sumOfEventTypes,
|
||||
sum_of_team_event_types: data?.sumOfTeamEventTypes,
|
||||
is_premium: data?.isPremium,
|
||||
},
|
||||
});
|
||||
hookData.show();
|
||||
|
||||
@@ -45,7 +45,7 @@ export default function WorkflowDetailsPage(props: Props) {
|
||||
const { data, isPending } = trpc.viewer.eventTypes.getByViewer.useQuery();
|
||||
|
||||
const searchParams = useSearchParams();
|
||||
const eventTypeId = searchParams.get("eventTypeId");
|
||||
const eventTypeId = searchParams?.get("eventTypeId");
|
||||
|
||||
const eventTypeOptions = useMemo(
|
||||
() =>
|
||||
|
||||
@@ -5,6 +5,7 @@ import { ProfileRepository } from "@calcom/lib/server/repository/profile";
|
||||
import { UserRepository } from "@calcom/lib/server/repository/user";
|
||||
import prisma from "@calcom/prisma";
|
||||
import { IdentityProvider } from "@calcom/prisma/enums";
|
||||
import { userMetadata } from "@calcom/prisma/zod-utils";
|
||||
import type { TrpcSessionUser } from "@calcom/trpc/server/trpc";
|
||||
|
||||
import type { TMeInputSchema } from "./me.schema";
|
||||
@@ -101,6 +102,7 @@ export const meHandler = async ({ ctx, input }: MeOptions) => {
|
||||
sumOfTeamEventTypes++;
|
||||
}
|
||||
}
|
||||
const userMetadataPrased = userMetadata.parse(user.metadata);
|
||||
|
||||
// Destructuring here only makes it more illegible
|
||||
// pick only the part we want to expose in the API
|
||||
@@ -148,6 +150,7 @@ export const meHandler = async ({ ctx, input }: MeOptions) => {
|
||||
sumOfCalendars: additionalUserInfo?.selectedCalendars.length,
|
||||
sumOfTeams: additionalUserInfo?.teams.length,
|
||||
sumOfEventTypes: additionalUserInfo?.eventTypes.length,
|
||||
isPremium: userMetadataPrased?.isPremium,
|
||||
sumOfTeamEventTypes,
|
||||
...(passwordAdded ? { passwordAdded } : {}),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user