* feat: add README for @cio/db package and remove existingAccounts.json * load session, load profile and organization, add create profile hook * chore: cache session request The trick was passing all the cookies to the backend. Previously I was only passing the better-auth.session_token and not better-auth.session_data. Read about the difference here https://www.better-auth.com/docs/concepts/cookies#custom-cookies * feat: login, logout, onboarding, verify email, reset password. * feat: complete change email and email verification * feat: standardise how we make rpc calls and create org endpoints * fix ui errors * fix: handle potential undefined customerId and standardize avatar URL property * refactor: standardize custom domain handling and update telegram chat ID references * chore: add tailwind prefix to @cio/ui this fixed the media query issues because @cio/ui classes were overriding this dashboard tailwind build * chore: clean up org sidebar * chore: persist mode state * feat: implement order breadcrumbs * chore: upgrade to better auth 1.4 * chore: address common auth flow bugs and setup app for others to setup locally.
18 lines
448 B
TypeScript
18 lines
448 B
TypeScript
import * as z from 'zod';
|
|
|
|
import { defineEmail } from '../send';
|
|
import { getDefaultTemplate } from '../templates';
|
|
|
|
export const onPasswordResetEmail = defineEmail({
|
|
id: 'onPasswordReset',
|
|
subject: 'Password Reset Successful - ClassroomIO',
|
|
schema: z.object({
|
|
name: z.string().min(1)
|
|
}),
|
|
render: (fields) => {
|
|
return getDefaultTemplate(`Heya ${fields.name},
|
|
<p>Your password has been reset successfully.</p>
|
|
`);
|
|
}
|
|
});
|