v-mask
Version:
Tiny input mask library for Vue.js based on text-mask-core (~5kb) exposed as directive. No dependencies
19 lines (17 loc) • 599 B
JavaScript
import { arrayMaskToRegExpMask, stringMaskToRegExpMask } from './maskToRegExpMask';
import { isFunction, isString } from './index';
/**
* @param {(string|RegExp)[]|Function|string} inputMask
* @param maskReplacers
* @returns {RegExp[]|*}
*/
export default function parseMask(inputMask, maskReplacers) {
if (Array.isArray(inputMask)) {
return arrayMaskToRegExpMask(inputMask, maskReplacers);
} if (isFunction(inputMask)) {
return inputMask;
} if (isString(inputMask) && inputMask.length > 0) {
return stringMaskToRegExpMask(inputMask, maskReplacers);
}
return inputMask;
}