@valkyriestudios/validator
Version:
A lightweight configurable javascript validator
21 lines (20 loc) • 1.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.vSysMac = vSysMac;
exports.default = vSysMac;
const RGX_DOUBLE_DASH = /^([0-9A-Fa-f]{2}-){5}([0-9A-Fa-f]{2})$/;
const RGX_DOUBLE_COLON = /^([0-9A-Fa-f]{2}:){5}([0-9A-Fa-f]{2})$/;
const RGX_TRIPLE_DOT = /^([0-9A-Fa-f]{3}\.){3}([0-9A-Fa-f]{3})$/;
const RGX_64_DOUBLE_COLON = /^([0-9A-Fa-f]{2}:){3}FF:FE:([0-9A-Fa-f]{2}:){2}[0-9A-Fa-f]{2}$/;
const RGX_64_DOUBLE_DASH = /^([0-9A-Fa-f]{2}-){3}FF-FE-([0-9A-Fa-f]{2}-){2}[0-9A-Fa-f]{2}$/;
const RGX_64_QUAD_COLON = /^[0-9A-Fa-f]{4}:[0-9A-Fa-f]{2}FF:FE[0-9A-Fa-f]{2}:[0-9A-Fa-f]{4}$/;
const RGX_64_QUAD_DASH = /^[0-9A-Fa-f]{4}-[0-9A-Fa-f]{2}FF-FE[0-9A-Fa-f]{2}-[0-9A-Fa-f]{4}$/;
function vSysMac(val) {
return typeof val === 'string' && (RGX_DOUBLE_DASH.test(val) ||
RGX_DOUBLE_COLON.test(val) ||
RGX_TRIPLE_DOT.test(val) ||
RGX_64_DOUBLE_COLON.test(val) ||
RGX_64_DOUBLE_DASH.test(val) ||
RGX_64_QUAD_COLON.test(val) ||
RGX_64_QUAD_DASH.test(val));
}