Files
HiveGrid-Wireframes/hivegrid-cloud/apps/web/app/utils/services/emailService.ts
T

34 lines
969 B
TypeScript

import { db } from "../db.server";
import { getTenant } from "../db/tenants.db.server";
import { getAvailableTenantSlug } from "./tenantService";
export async function getAvailableTenantInboundAddress(name: string) {
const slug = await getAvailableTenantSlug({ name });
const slugWithDots = slug.split("-").join(".");
let address = slugWithDots;
let tries = 1;
do {
const existingAddress = await db.tenantInboundAddress.findUnique({
where: {
address,
},
});
if (existingAddress !== null) {
address = slugWithDots + tries.toString();
tries++;
} else {
break;
}
} while (true);
return address;
}
export async function getTenantDefaultInboundAddress(tenantId: string) {
const tenant = await getTenant(tenantId);
let address: string | null = null;
if (tenant?.inboundAddresses && tenant?.inboundAddresses.length > 0) {
address = tenant.inboundAddresses[0].address;
}
return address;
}