UNPKG

1.2 kBJavaScriptView Raw
1import { isValidationOptions } from '../ValidationOptions';
2import { buildMessage, ValidateBy } from '../common/ValidateBy';
3import isMacAddressValidator from 'validator/lib/isMACAddress';
4export const IS_MAC_ADDRESS = 'isMacAddress';
5/**
6 * Check if the string is a MAC address.
7 * If given value is not a string, then it returns false.
8 */
9export function isMACAddress(value, options) {
10 return typeof value === 'string' && isMacAddressValidator(value, options);
11}
12export function IsMACAddress(optionsOrValidationOptionsArg, validationOptionsArg) {
13 const options = !isValidationOptions(optionsOrValidationOptionsArg) ? optionsOrValidationOptionsArg : undefined;
14 const validationOptions = isValidationOptions(optionsOrValidationOptionsArg)
15 ? optionsOrValidationOptionsArg
16 : validationOptionsArg;
17 return ValidateBy({
18 name: IS_MAC_ADDRESS,
19 constraints: [options],
20 validator: {
21 validate: (value, args) => isMACAddress(value, options),
22 defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a MAC Address', validationOptions),
23 },
24 }, validationOptions);
25}
26//# sourceMappingURL=IsMacAddress.js.map
\No newline at end of file