mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-31 10:13:32 -04:00 
			
		
		
		
	feat(frontend): ✨ Fix scheduler, forgot password flow, and minor bug fixes (#725)
* feat(frontend): 💄 add recipe title * fix(frontend): 🐛 fixes #722 side-bar issue * feat(frontend): ✨ Add page titles to all pages * minor cleanup * refactor(backend): ♻️ rewrite scheduler to be more modulare and work * feat(frontend): ✨ start password reset functionality * refactor(backend): ♻️ refactor application settings to facilitate dependency injection * refactor(backend): 🔥 remove RECIPE_SETTINGS env variables in favor of group settings * formatting * refactor(backend): ♻️ align naming convention * feat(backend): ✨ password reset * test(backend): ✅ password reset * feat(frontend): ✨ self-service password reset * purge password schedule * update user creation for tests Co-authored-by: Hayden <hay-kot@pm.me>
This commit is contained in:
		| @@ -2,20 +2,17 @@ import { BaseAPI } from "./_base"; | ||||
|  | ||||
| const routes = { | ||||
|   base: "/api/admin/email", | ||||
|   forgotPassword: "/api/users/forgot-password", | ||||
|  | ||||
|   invitation: "/api/groups/invitations/email", | ||||
| }; | ||||
|  | ||||
| export interface CheckEmailResponse { | ||||
|   ready: boolean; | ||||
| } | ||||
|  | ||||
| export interface TestEmailResponse { | ||||
| export interface EmailResponse { | ||||
|   success: boolean; | ||||
|   error: string; | ||||
| } | ||||
|  | ||||
| export interface TestEmailPayload { | ||||
| export interface EmailPayload { | ||||
|   email: string; | ||||
| } | ||||
|  | ||||
| @@ -24,21 +21,16 @@ export interface InvitationEmail { | ||||
|   token: string; | ||||
| } | ||||
|  | ||||
| export interface InvitationEmailResponse { | ||||
|   success: boolean; | ||||
|   error: string; | ||||
| } | ||||
|  | ||||
| export class EmailAPI extends BaseAPI { | ||||
|   check() { | ||||
|     return this.requests.get<CheckEmailResponse>(routes.base); | ||||
|   } | ||||
|  | ||||
|   test(payload: TestEmailPayload) { | ||||
|     return this.requests.post<TestEmailResponse>(routes.base, payload); | ||||
|   test(payload: EmailPayload) { | ||||
|     return this.requests.post<EmailResponse>(routes.base, payload); | ||||
|   } | ||||
|  | ||||
|   sendInvitation(payload: InvitationEmail) { | ||||
|     return this.requests.post<InvitationEmailResponse>(routes.invitation, payload); | ||||
|     return this.requests.post<EmailResponse>(routes.invitation, payload); | ||||
|   } | ||||
|  | ||||
|   sendForgotPassword(payload: EmailPayload) { | ||||
|     return this.requests.post<EmailResponse>(routes.forgotPassword, payload); | ||||
|   } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user