import escapeRegExp from 'lodash.escaperegexp'; /** * EnsureObjectOfRegExps. * @param object - { [index: string]: string|RegExp }. * @param options - Object. * @param options.insensitive - String. * @returns - Record. */ export default function ensureObjectOfRegExps( object: Record, options: { insensitive: string }, ): Record { const { insensitive } = options; const toReturn: Record = {}; for (const [key, value] of Object.entries(object)) { if (value instanceof RegExp) { toReturn[key] = value; } else { toReturn[key] = new RegExp( `(^|\\.)${escapeRegExp(value)}(\\.|$)`, insensitive, ); } } return toReturn; }