@valkyriestudios/validator
Version:
A lightweight configurable javascript validator
56 lines (55 loc) • 2.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.vUuid = vUuid;
exports.vUuidV1 = vUuidV1;
exports.vUuidV2 = vUuidV2;
exports.vUuidV3 = vUuidV3;
exports.vUuidV4 = vUuidV4;
exports.vUuidV5 = vUuidV5;
exports.vUuidV6 = vUuidV6;
exports.vUuidV7 = vUuidV7;
exports.vUuidV8 = vUuidV8;
const UUID_V1_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-1[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V2_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-2[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V3_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-3[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V4_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V5_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-5[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V6_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-6[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V7_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_V8_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-8[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
const UUID_RGX = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
function hasUuidDashes(val) {
return (typeof val === 'string' &&
val.length === 36 &&
val[8] === '-' &&
val[13] === '-' &&
val[18] === '-' &&
val[23] === '-');
}
function vUuid(val) {
return hasUuidDashes(val) && UUID_RGX.test(val);
}
function vUuidV1(val) {
return hasUuidDashes(val) && UUID_V1_RGX.test(val);
}
function vUuidV2(val) {
return hasUuidDashes(val) && UUID_V2_RGX.test(val);
}
function vUuidV3(val) {
return hasUuidDashes(val) && UUID_V3_RGX.test(val);
}
function vUuidV4(val) {
return hasUuidDashes(val) && UUID_V4_RGX.test(val);
}
function vUuidV5(val) {
return hasUuidDashes(val) && UUID_V5_RGX.test(val);
}
function vUuidV6(val) {
return hasUuidDashes(val) && UUID_V6_RGX.test(val);
}
function vUuidV7(val) {
return hasUuidDashes(val) && UUID_V7_RGX.test(val);
}
function vUuidV8(val) {
return hasUuidDashes(val) && UUID_V8_RGX.test(val);
}