feat: wire GHL webhook to Resend email templates

- Replace raw Resend text emails with sendMail using Resend templates
- automated-user-registration template: firstName, tempPassword,
  verifyUrl, loginUrl
- license-key-delivery template: firstName, license_key
- Remove requestPasswordReset call (temp password is the one-time
  credential; verification link handles email confirmation)
- Add .catch() to Better Auth email callbacks to prevent unhandled
  rejections from missing templates crashing the server
This commit is contained in:
NeilClack
2026-07-08 15:01:08 -05:00
parent e6ef7d3b36
commit 55a29b9c1a
29 changed files with 26572 additions and 21641 deletions
+37 -37
View File
@@ -1,94 +1,94 @@
/* !!! This is code generated by Prisma. Do not edit directly. !!! */
/* eslint-disable */
// biome-ignore-all lint: generated file
// @ts-nocheck
// @ts-nocheck
/*
* This file should be your main import to use Prisma-related types and utilities in a browser.
* This file should be your main import to use Prisma-related types and utilities in a browser.
* Use it to get access to models, enums, and input types.
*
*
* This file does not contain a `PrismaClient` class, nor several other helpers that are intended as server-side only.
* See `client.ts` for the standard, server-side entry point.
*
* 🟢 You can import this file directly.
*/
import * as Prisma from './internal/prismaNamespaceBrowser.ts'
export { Prisma }
export * as $Enums from './enums.ts'
import * as Prisma from './internal/prismaNamespaceBrowser.ts';
export { Prisma };
export * as $Enums from './enums.ts';
export * from './enums.ts';
/**
* Model User
*
*
*/
export type User = Prisma.UserModel
export type User = Prisma.UserModel;
/**
* Model Profile
*
*
*/
export type Profile = Prisma.ProfileModel
export type Profile = Prisma.ProfileModel;
/**
* Model Address
*
*
*/
export type Address = Prisma.AddressModel
export type Address = Prisma.AddressModel;
/**
* Model Session
*
*
*/
export type Session = Prisma.SessionModel
export type Session = Prisma.SessionModel;
/**
* Model Account
*
*
*/
export type Account = Prisma.AccountModel
export type Account = Prisma.AccountModel;
/**
* Model UserRole
*
*
*/
export type UserRole = Prisma.UserRoleModel
export type UserRole = Prisma.UserRoleModel;
/**
* Model Verification
*
*
*/
export type Verification = Prisma.VerificationModel
export type Verification = Prisma.VerificationModel;
/**
* Model Proclamation
*
*
*/
export type Proclamation = Prisma.ProclamationModel
export type Proclamation = Prisma.ProclamationModel;
/**
* Model UserProclamations
*
*
*/
export type UserProclamations = Prisma.UserProclamationsModel
export type UserProclamations = Prisma.UserProclamationsModel;
/**
* Model SolfeggioFrequency
*
*
*/
export type SolfeggioFrequency = Prisma.SolfeggioFrequencyModel
export type SolfeggioFrequency = Prisma.SolfeggioFrequencyModel;
/**
* Model ProclamationCategory
*
*
*/
export type ProclamationCategory = Prisma.ProclamationCategoryModel
export type ProclamationCategory = Prisma.ProclamationCategoryModel;
/**
* Model ProclamationCategorySubscriptionLevel
*
*
*/
export type ProclamationCategorySubscriptionLevel = Prisma.ProclamationCategorySubscriptionLevelModel
export type ProclamationCategorySubscriptionLevel =
Prisma.ProclamationCategorySubscriptionLevelModel;
/**
* Model LicenseKey
*
*
*/
export type LicenseKey = Prisma.LicenseKeyModel
export type LicenseKey = Prisma.LicenseKeyModel;
/**
* Model ApiKey
*
*
*/
export type ApiKey = Prisma.ApiKeyModel
export type ApiKey = Prisma.ApiKeyModel;
/**
* Model SubscriptionLevel
*
*
*/
export type SubscriptionLevel = Prisma.SubscriptionLevelModel
export type SubscriptionLevel = Prisma.SubscriptionLevelModel;