UNPKG

nest-nsq-transport

Version:
34 lines 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NSQPattern = void 0; class NSQPattern { topic; channel; discard; static DELIMITER = '/'; static DISCARD_SUFFIX = 'discard'; static parse(pattern) { if (typeof pattern !== 'string') return null; const [topic, channel, discard, ...rest] = pattern.split(NSQPattern.DELIMITER); if (!topic || !channel || (discard && discard !== NSQPattern.DISCARD_SUFFIX) || rest.length > 0) return null; return new NSQPattern(topic, channel, discard === NSQPattern.DISCARD_SUFFIX); } constructor(topic, channel, discard = false) { this.topic = topic; this.channel = channel; this.discard = discard; } toString(skipDiscard = false) { const parts = [this.topic, this.channel]; if (!skipDiscard && this.discard) parts.push(NSQPattern.DISCARD_SUFFIX); return parts.join(NSQPattern.DELIMITER); } } exports.NSQPattern = NSQPattern; //# sourceMappingURL=pattern.js.map