import { Module, forwardRef } from "@nestjs/common"; import { CheckoutRegistrationController } from "./checkout-registration.controller.js"; import { CheckoutRegistrationService } from "./services/checkout-registration.service.js"; import { SalesforceModule } from "@bff/integrations/salesforce/salesforce.module.js"; import { WhmcsModule } from "@bff/integrations/whmcs/whmcs.module.js"; import { AuthModule } from "@bff/modules/auth/auth.module.js"; import { UsersModule } from "@bff/modules/users/users.module.js"; import { MappingsModule } from "@bff/modules/id-mappings/mappings.module.js"; import { OrdersModule } from "@bff/modules/orders/orders.module.js"; /** * Checkout Registration Module * * Handles user registration during checkout flow: * - Creates Salesforce Account and Contact * - Creates WHMCS Client * - Creates Portal User * - Links all systems via ID Mappings * - Creates Opportunity for SIM orders */ @Module({ imports: [ SalesforceModule, WhmcsModule, AuthModule, UsersModule, MappingsModule, forwardRef(() => OrdersModule), ], controllers: [CheckoutRegistrationController], providers: [CheckoutRegistrationService], exports: [CheckoutRegistrationService], }) export class CheckoutRegistrationModule {}