import { credentials } from '@grpc/grpc-js'; import { ClientProviderOptions, GrpcOptions, Transport, } from '@nestjs/microservices'; import { NetworkConfig } from '@dadosfera/protospack-v2'; export class NetworkConfigClientConfiguration { private config: GrpcOptions = { transport: Transport.GRPC, options: { url: process.env.INFACTORY_URL, package: [ NetworkConfig.ProtoPackages.ReadPackage, NetworkConfig.ProtoPackages.WritePackage, ], // credentials: undefined, credentials: process.env.ENV === 'local' ? undefined : credentials.createSsl(), protoPath: [ NetworkConfig.ProtoPaths.ReadFilePath, NetworkConfig.ProtoPaths.WriteFilePath, ], loader: { keepCase: true, enums: String, objects: true, arrays: true, }, }, }; providerOptions: ClientProviderOptions = { name: 'NetworkConfigGrpcClient', ...this.config, }; }