@helpscout/cyan
Version:
Cypress-like Testing for React + JSDOM
66 lines (49 loc) • 1.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isDefined = isDefined;
exports.typeOf = typeOf;
exports.isArray = isArray;
exports.isFunction = isFunction;
exports.isString = isString;
exports.isObject = isObject;
exports.isNodeCollection = exports.isElement = exports.isNode = exports.isNodeList = exports.isHTMLCollection = void 0;
function isDefined(value) {
return value !== undefined && value !== null;
}
function typeOf(value, type) {
return isDefined(value) && typeof value === type;
}
function isArray(value) {
return Array.isArray(value);
}
function isFunction(value) {
return typeOf(value, 'function');
}
function isString(value) {
return typeOf(value, 'string');
}
function isObject(value) {
return typeOf(value, 'object') && !isFunction(value) && !isArray(value);
}
var isHTMLCollection = function (obj) {
return obj instanceof HTMLCollection;
};
exports.isHTMLCollection = isHTMLCollection;
var isNodeList = function (obj) {
return obj instanceof NodeList;
};
exports.isNodeList = isNodeList;
var isNode = function (obj) {
return obj instanceof Node;
};
exports.isNode = isNode;
var isElement = function (obj) {
return obj instanceof Element || obj instanceof HTMLDocument;
};
exports.isElement = isElement;
var isNodeCollection = function (obj) {
return isHTMLCollection(obj) || isNodeList(obj);
};
exports.isNodeCollection = isNodeCollection;