UNPKG

@roo-ui/components

Version:

45 lines (31 loc) 2.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _isPropValid = _interopRequireDefault(require("@emotion/is-prop-valid")); var _constants = require("./constants"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var toTrueHash = function toTrueHash(arrayOfStrings) { return arrayOfStrings.reduce(function (acc, key) { return _objectSpread({}, acc, _defineProperty({}, key, true)); }, {}); }; var styledSystemProps = toTrueHash(_constants.VALID_STYLED_SYSTEM_PROPS); var omitProps = function omitProps() { var customPropsList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref$omitStyledSystem = _ref.omitStyledSystemProps, omitStyledSystemProps = _ref$omitStyledSystem === void 0 ? true : _ref$omitStyledSystem; var customProps = toTrueHash(customPropsList); var shouldForwardProp = function shouldForwardProp(prop) { return (0, _isPropValid.default)(prop) && !customProps[prop] && !(omitStyledSystemProps && styledSystemProps[prop]); }; return { shouldForwardProp: shouldForwardProp }; }; var _default = omitProps; exports.default = _default;