UNPKG

776 BJavaScriptView Raw
1'use strict';
2
3exports.__esModule = true;
4
5var _common = require('./common');
6
7/**
8 * Checks whether a prop provides a DOM element
9 *
10 * The element can be provided in two forms:
11 * - Directly passed
12 * - Or passed an object that has a `render` method
13 *
14 * @param props
15 * @param propName
16 * @param componentName
17 * @returns {Error|undefined}
18 */
19
20function validate(props, propName, componentName) {
21 if (typeof props[propName] !== 'object' || typeof props[propName].render !== 'function' && props[propName].nodeType !== 1) {
22 return new Error(_common.errMsg(props, propName, componentName, ', expected a DOM element or an object that has a `render` method'));
23 }
24}
25
26exports['default'] = _common.createChainableTypeChecker(validate);
27module.exports = exports['default'];
\No newline at end of file