UNPKG

@splitsoftware/splitio-commons

Version:
29 lines (28 loc) 990 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateEvent = void 0; var constants_1 = require("../../logger/constants"); var lang_1 = require("../lang"); var EVENT_TYPE_REGEX = /^[a-zA-Z0-9][-_.:a-zA-Z0-9]{0,79}$/; var item = 'event_type'; function validateEvent(log, maybeEvent, method) { if (maybeEvent == undefined) { // eslint-disable-line eqeqeq log.error(constants_1.ERROR_NULL, [method, item]); } else if (!(0, lang_1.isString)(maybeEvent)) { log.error(constants_1.ERROR_INVALID, [method, item]); } else { // It is a string. if (maybeEvent.length === 0) { log.error(constants_1.ERROR_EMPTY, [method, item]); } else if (!EVENT_TYPE_REGEX.test(maybeEvent)) { log.error(constants_1.ERROR_EVENT_TYPE_FORMAT, [method, maybeEvent]); } else { return maybeEvent; } } return false; } exports.validateEvent = validateEvent;