44 lines
1.7 KiB
TypeScript
44 lines
1.7 KiB
TypeScript
import { join } from 'node:path';
|
|
|
|
/**
|
|
* Абсолютные пути к `.proto` файлам.
|
|
*
|
|
* Используются при регистрации gRPC клиентов и серверов в NestJS.
|
|
*
|
|
* @example Регистрация gRPC клиента
|
|
* ```ts
|
|
* import { ClientsModule, Transport } from '@nestjs/microservices';
|
|
* import { PROTO_PATHS } from '@teacinema/contracts';
|
|
*
|
|
* ClientsModule.register([{
|
|
* name: 'AUTH_SERVICE',
|
|
* transport: Transport.GRPC,
|
|
* options: {
|
|
* protoPath: PROTO_PATHS.AUTH,
|
|
* package: 'auth.v1',
|
|
* url: 'localhost:5000',
|
|
* },
|
|
* }])
|
|
* ```
|
|
*/
|
|
export const PROTO_PATHS = {
|
|
/** Путь к `auth.proto` (пакет `auth.v1`) */
|
|
AUTH: join(__dirname, '../../proto/auth.proto'),
|
|
/** Путь к `account.proto` (пакет `account.v1`) */
|
|
ACCOUNT: join(__dirname, '../../proto/account.proto'),
|
|
/** Путь к `users.proto` (пакет `users.v1`) */
|
|
USERS: join(__dirname, '../../proto/users.proto'),
|
|
/** Путь к `media.proto` (пакет `media.v1`) */
|
|
MEDIA: join(__dirname, '../../proto/media.proto'),
|
|
/** Путь к `movie.proto` (пакет `movie.v1`) */
|
|
MOVIE: join(__dirname, '../../proto/movie.proto'),
|
|
/** Путь к `category.proto` (пакет `category.v1`) */
|
|
CATEGORY: join(__dirname, '../../proto/category.proto'),
|
|
/** Путь к `theater.proto` (пакет `theater.v1`) */
|
|
THEATER: join(__dirname, '../../proto/theater.proto'),
|
|
/** Путь к `hall.proto` (пакет `hall.v1`) */
|
|
HALL: join(__dirname, '../../proto/hall.proto'),
|
|
/** Путь к `seat.proto` (пакет `seat.v1`) */
|
|
SEAT: join(__dirname, '../../proto/seat.proto'),
|
|
} as const
|