extract keypad loader

This commit is contained in:
m5r
2022-05-22 13:06:43 +02:00
parent 331d53a8a8
commit 1b9de34387
2 changed files with 35 additions and 27 deletions

View File

@ -0,0 +1,31 @@
import type { LoaderFunction } from "@remix-run/node";
import { json } from "superjson-remix";
import { Prisma } from "@prisma/client";
import { requireLoggedIn } from "~/utils/auth.server";
import db from "~/utils/db.server";
export type KeypadLoaderData = {
hasOngoingSubscription: boolean;
hasPhoneNumber: boolean;
lastRecipientCalled?: string;
};
const loader: LoaderFunction = async ({ request }) => {
const { phoneNumber } = await requireLoggedIn(request);
const hasOngoingSubscription = true; // TODO
const hasPhoneNumber = Boolean(phoneNumber);
const lastCall =
phoneNumber &&
(await db.phoneCall.findFirst({
where: { phoneNumberId: phoneNumber.id },
orderBy: { createdAt: Prisma.SortOrder.desc },
}));
return json<KeypadLoaderData>({
hasOngoingSubscription,
hasPhoneNumber,
lastRecipientCalled: lastCall?.recipient,
});
};
export default loader;