medusa-email-confirmation-plugin
Version:
medusa-email-confirmation-plugin is a Medusa plugin that adds obligatory requirement for customers to confirm their email used for sign up to Medusa ecommerce stores.
24 lines (23 loc) • 1.1 kB
TypeScript
import { EventBusService, Logger, TransactionBaseService } from "@medusajs/medusa";
import CustomerRepository from "@medusajs/medusa/dist/repositories/customer";
import { PluginOptions } from "../index";
import { APIResponse, StatusResponseViewModel } from "../api/index";
export interface EmailConfirmationPluginOptions {
token_max_lifetime_days?: number;
autoinit_on_register: boolean;
}
export default class EmailConfirmationService extends TransactionBaseService {
static LIFE_TIME: import("awilix").LifetimeType;
protected customerRepository: typeof CustomerRepository;
protected eventBusService: EventBusService | undefined;
logger: Logger;
options_: PluginOptions;
constructor(container: any, options: PluginOptions);
options(): PluginOptions;
private randomString;
private generateToken;
private confirmEmail;
tokenRequest(email: string, autogenerate?: boolean): Promise<APIResponse<never>>;
status(email: string): Promise<APIResponse<StatusResponseViewModel>>;
confirm(email: string, token: string): Promise<APIResponse<never>>;
}