UNPKG

@r3l/app

Version:
59 lines (46 loc) 1.82 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.elementTypePropTypeChecker = elementTypePropTypeChecker; exports.authProps = exports.postProps = exports.userProps = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _reactIs = require("react-is"); var userProps = _propTypes.default.shape({ handle: _propTypes.default.string, balance: _propTypes.default.number, image: _propTypes.default.string, name: _propTypes.default.string // relevance: // TODO shape or null }); exports.userProps = userProps; var postProps = _propTypes.default.shape({ _id: _propTypes.default.string.isRequired, // TODO user: _propTypes.default.string.isRequired, title: _propTypes.default.string, embeddedUser: _propTypes.default.object, // userProp? tags: _propTypes.default.array, body: _propTypes.default.string, postDate: _propTypes.default.instanceOf(Date), data: _propTypes.default.object, // TODO shape or null link: _propTypes.default.object, // TODO shape or null parentPost: _propTypes.default.number, type: _propTypes.default.string }); exports.postProps = postProps; var authProps = _propTypes.default.shape({ isAuthenticated: _propTypes.default.bool, user: userProps, community: _propTypes.default.string }); // eslint-disable-next-line consistent-return exports.authProps = authProps; function elementTypePropTypeChecker(props, propName, componentName) { if (props[propName] && !(0, _reactIs.isValidElementType)(props[propName])) { return new Error("Invalid prop '".concat(propName, "' supplied to '").concat(componentName, "': the prop is not a valid React component")); } } //# sourceMappingURL=propValidation.js.map