Files
calendar/packages/trpc/server/routers/loggedInViewer/removeNotificationsSubscription.handler.ts
T
3c1297aa72 fix: calcom trpc sessio circle dep (#19893)
* fix trpc session circle dep

* fixes trpc session cirlce dep

* fix relative imports

* fix more imports to use types and not trpc

* fix exports

* Fixed types

---------

Co-authored-by: Keith Williams <keithwillcode@gmail.com>
2025-03-19 05:50:22 -03:00

35 lines
937 B
TypeScript

import prisma from "@calcom/prisma";
import type { TrpcSessionUser } from "@calcom/trpc/server/types";
import type { TRemoveNotificationsSubscriptionInputSchema } from "./removeNotificationsSubscription.schema";
type AddSecondaryEmailOptions = {
ctx: {
user: NonNullable<TrpcSessionUser>;
};
input: TRemoveNotificationsSubscriptionInputSchema;
};
export const removeNotificationsSubscriptionHandler = async ({ ctx }: AddSecondaryEmailOptions) => {
const { user } = ctx;
// We just use findFirst because there will only be single unique subscription for a user
const subscriptionToDelete = await prisma.notificationsSubscriptions.findFirst({
where: {
userId: user.id,
},
});
if (subscriptionToDelete) {
await prisma.notificationsSubscriptions.delete({
where: {
id: subscriptionToDelete.id,
},
});
}
return {
message: "Subscription removed successfully",
};
};