make app usable without account, remove extra stuff

This commit is contained in:
m5r
2023-04-29 18:30:07 +02:00
parent cb35455722
commit 03ae466c66
128 changed files with 617 additions and 14061 deletions

View File

@ -2,19 +2,21 @@ import { type ActionFunction } from "@remix-run/node";
import { json } from "superjson-remix";
import db from "~/utils/db.server";
import { requireLoggedIn } from "~/utils/auth.server";
import getTwilioClient, { translateMessageDirection, translateMessageStatus } from "~/utils/twilio.server";
import { getSession } from "~/utils/session.server";
export type NewMessageActionData = {};
type NewMessageActionData = {};
const action: ActionFunction = async ({ params, request }) => {
const { twilio } = await requireLoggedIn(request);
const session = await getSession(request);
const twilio = session.get("twilio");
if (!twilio) {
throw new Error("unreachable");
}
const [phoneNumber, twilioAccount] = await Promise.all([
db.phoneNumber.findUnique({
where: { twilioAccountSid_isCurrent: { twilioAccountSid: twilio.accountSid ?? "", isCurrent: true } },
where: { twilioAccountSid_isCurrent: { twilioAccountSid: twilio.accountSid, isCurrent: true } },
}),
db.twilioAccount.findUnique({ where: { accountSid: twilio.accountSid } }),
]);

View File

@ -4,8 +4,8 @@ import { parsePhoneNumber } from "awesome-phonenumber";
import { type Message, type PhoneNumber, Prisma } from "@prisma/client";
import db from "~/utils/db.server";
import { requireLoggedIn } from "~/utils/auth.server";
import { redirect } from "@remix-run/node";
import { getSession } from "~/utils/session.server";
type ConversationType = {
recipient: string;
@ -19,7 +19,8 @@ export type ConversationLoaderData = {
};
const loader: LoaderFunction = async ({ request, params }) => {
const { twilio } = await requireLoggedIn(request);
const session = await getSession(request);
const twilio = session.get("twilio");
if (!twilio) {
return redirect("/messages");
}

View File

@ -4,7 +4,7 @@ import { parsePhoneNumber } from "awesome-phonenumber";
import { type Message, type PhoneNumber, Prisma } from "@prisma/client";
import db from "~/utils/db.server";
import { requireLoggedIn } from "~/utils/auth.server";
import { getSession } from "~/utils/session.server";
export type MessagesLoaderData = {
hasPhoneNumber: boolean;
@ -19,7 +19,8 @@ type Conversation = {
};
const loader: LoaderFunction = async ({ request }) => {
const { twilio } = await requireLoggedIn(request);
const session = await getSession(request);
const twilio = session.get("twilio");
const phoneNumber = await db.phoneNumber.findUnique({
where: { twilioAccountSid_isCurrent: { twilioAccountSid: twilio?.accountSid ?? "", isCurrent: true } },
});