velody/backend/src/modules/users/users.module.ts
2026-06-28 17:29:49 +02:00

51 lines
1.7 KiB
TypeScript

import { Module } from '@nestjs/common';
import { PrismaModule } from '../../infrastructure/database/prisma.module';
import { RequestContextModule } from '../../infrastructure/request-context/request-context.module';
import { AuthModule } from '../auth/auth.module';
import { AccountController } from './account.controller';
import { AccountService } from './account.service';
import { DefaultUserService } from './default-user.service';
import { DeviceManagementService } from './device-management.service';
import { DeviceLinkingService } from './device-linking.service';
import { EntitlementService } from './entitlement.service';
import { FeatureGateService } from './feature-gate.service';
import { OAuthIdentityService } from './oauth-identity.service';
import { OwnershipTransferService } from './ownership-transfer.service';
import {
BootstrapOwnerContextService,
OwnerContext,
} from './owner-context.service';
import { StorageModule } from '../storage/storage.module';
@Module({
imports: [PrismaModule, RequestContextModule, AuthModule, StorageModule],
controllers: [AccountController],
providers: [
AccountService,
DefaultUserService,
DeviceManagementService,
DeviceLinkingService,
EntitlementService,
FeatureGateService,
OAuthIdentityService,
OwnershipTransferService,
BootstrapOwnerContextService,
{
provide: OwnerContext,
useExisting: BootstrapOwnerContextService,
},
],
exports: [
DefaultUserService,
OwnerContext,
AccountService,
DeviceManagementService,
DeviceLinkingService,
EntitlementService,
FeatureGateService,
OAuthIdentityService,
OwnershipTransferService,
],
})
export class UsersModule {}