UNPKG

@nestjs/microservices

Version:

Nest - modern, fast, powerful node.js web framework (@microservices)

23 lines (22 loc) • 851 B
import { isObject } from '@nestjs/common/internal'; import { NatsRecord, NatsRecordBuilder } from '../record-builders/index.js'; export class NatsRecordSerializer { serialize(packet) { if (packet?.response instanceof NatsRecord) { const record = packet.response; return { data: JSON.stringify({ ...packet, response: record.data }), headers: record.headers, }; } const natsMessage = packet?.data && isObject(packet.data) && packet.data instanceof NatsRecord ? packet.data : new NatsRecordBuilder(packet?.data) .setHeaders(packet?.headers) .build(); return { data: JSON.stringify({ ...packet, data: natsMessage.data }), headers: natsMessage.headers, }; } }