UNPKG

@grafana/faro-core

Version:
62 lines 3.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isSyntheticEvent = exports.isMap = exports.isMapDefined = exports.isElement = exports.isElementDefined = exports.isDomException = exports.isDomError = exports.isErrorEvent = exports.isError = exports.isErrorDefined = exports.isEvent = exports.isEventDefined = exports.isPrimitive = exports.isThenable = exports.isRegExp = exports.isArray = exports.isFunction = exports.isObject = exports.isSymbol = exports.isBoolean = exports.isInt = exports.isNumber = exports.isString = exports.isNull = exports.isUndefined = void 0; exports.isTypeof = isTypeof; exports.isToString = isToString; exports.isInstanceOf = isInstanceOf; exports.isEmpty = isEmpty; function isTypeof(value, type) { return typeof value === type; } function isToString(value, type) { return Object.prototype.toString.call(value) === `[object ${type}]`; } function isInstanceOf(value, reference) { try { return value instanceof reference; } catch (_err) { return false; } } exports.isUndefined = ((value) => isTypeof(value, 'undefined')); exports.isNull = ((value) => isTypeof(value, 'null')); exports.isString = ((value) => isTypeof(value, 'string')); exports.isNumber = ((value) => (isTypeof(value, 'number') && !isNaN(value)) || isTypeof(value, 'bigint')); exports.isInt = ((value) => (0, exports.isNumber)(value) && Number.isInteger(value)); exports.isBoolean = ((value) => isTypeof(value, 'boolean')); exports.isSymbol = ((value) => isTypeof(value, 'symbol')); exports.isObject = ((value) => !(0, exports.isNull)(value) && isTypeof(value, 'object')); exports.isFunction = ((value) => isTypeof(value, 'function')); exports.isArray = ((value) => isToString(value, 'Array')); exports.isRegExp = ((value) => isToString(value, 'RegExp')); exports.isThenable = ((value) => (0, exports.isFunction)(value === null || value === void 0 ? void 0 : value.then)); exports.isPrimitive = ((value) => !(0, exports.isObject)(value) && !(0, exports.isFunction)(value)); exports.isEventDefined = typeof Event !== 'undefined'; exports.isEvent = ((value) => exports.isEventDefined && isInstanceOf(value, Event)); exports.isErrorDefined = typeof Error !== 'undefined'; exports.isError = ((value) => exports.isErrorDefined && isInstanceOf(value, Error)); exports.isErrorEvent = ((value) => isToString(value, 'ErrorEvent')); exports.isDomError = ((value) => isToString(value, 'DOMError')); exports.isDomException = ((value) => isToString(value, 'DOMException')); exports.isElementDefined = typeof Element !== 'undefined'; exports.isElement = ((value) => exports.isElementDefined && isInstanceOf(value, Element)); exports.isMapDefined = typeof Map !== 'undefined'; exports.isMap = ((value) => exports.isMapDefined && isInstanceOf(value, Map)); exports.isSyntheticEvent = ((value) => (0, exports.isObject)(value) && 'nativeEvent' in value && 'preventDefault' in value && 'stopPropagation' in value); function isEmpty(value) { if (value == null) { return true; } if ((0, exports.isArray)(value) || (0, exports.isString)(value)) { return value.length === 0; } if ((0, exports.isObject)(value)) { return Object.keys(value).length === 0; } return false; } //# sourceMappingURL=is.js.map