UNPKG

redis-smq

Version:

A high-performance, reliable, and scalable message queue for Node.js.

43 lines 1.41 kB
import { InvalidQueueParametersError } from '../../errors/index.js'; import { _parseQueueParams } from './_parse-queue-params.js'; import { validateRedisKey } from '../../common/redis/redis-keys/validator.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: queueParams, groupId: null, }; } if (isQueueParams(args)) { const queueParams = _parseQueueParams(args); if (queueParams instanceof Error) return queueParams; return { queueParams: queueParams, groupId: null, }; } const queueParams = _parseQueueParams(args.queueParams); if (queueParams instanceof Error) return queueParams; let groupId = null; if (args.groupId) { groupId = validateRedisKey(args.groupId); if (groupId instanceof Error) return new InvalidQueueParametersError(); } return { queueParams: queueParams, groupId, }; } //# sourceMappingURL=_parse-queue-extended-params.js.map