UNPKG

grid-styletr

Version:

Responsive React grid system built with styletron-react

42 lines (33 loc) 1.04 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.cleanProps = undefined; var _react = require('react'); var _react2 = _interopRequireDefault(_react); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var tag = function tag() { var blacklist = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var clean = cleanProps(blacklist); return function (type) { return typeof type !== 'string' ? type : function (props) { var Comp = props.is || type; return _react2.default.createElement(Comp, clean(props)); }; }; }; var cleanProps = exports.cleanProps = function cleanProps(blacklist) { var blacklistSet = { is: true }; blacklist.forEach(function (key) { return blacklistSet[key] = true; }); return function (props) { var next = {}; for (var key in props) { if (blacklistSet[key]) continue; next[key] = props[key]; } return next; }; }; exports.default = tag;