UNPKG

redis-smq

Version:

A simple high-performance Redis message queue for Node.js.

43 lines 1.37 kB
import { redisKeys } from '../../../common/redis-keys/redis-keys.js'; import { QueueInvalidQueueParameterError } from '../errors/index.js'; import { _parseQueueParams } from './_parse-queue-params.js'; function isQueueParams(args) { return (!!args && typeof args === 'object' && Object.keys(args).includes('ns') && Object.keys(args).includes('name')); } export function _parseQueueExtendedParams(args) { if (typeof args === 'string') { const queueParams = _parseQueueParams(args); if (queueParams instanceof Error) return queueParams; return { queueParams, groupId: null, }; } if (isQueueParams(args)) { const queueParams = _parseQueueParams(args); if (queueParams instanceof Error) return queueParams; return { queueParams, groupId: null, }; } const queueParams = _parseQueueParams(args.queue); if (queueParams instanceof Error) return queueParams; let groupId = null; if (args.groupId) { groupId = redisKeys.validateRedisKey(args.groupId); if (groupId instanceof Error) return new QueueInvalidQueueParameterError(); } return { queueParams, groupId, }; } //# sourceMappingURL=_parse-queue-extended-params.js.map