UNPKG

feeles-ide

Version:

The hackable and serializable IDE to make learning material

44 lines (34 loc) 1.06 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = LayeredStyle; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); function LayeredStyle(props) { if (isEmpty(props.styles)) { return _react.default.createElement("div", props, props.children); } var styles = [props.style].concat(props.styles).filter(function (s) { return s; }); var nextProps = Object.assign({}, props, { style: styles[1], styles: styles.slice(2) }); if (isEmpty(nextProps.styles)) { delete nextProps.styles; } return _react.default.createElement("div", { style: styles[0] }, _react.default.createElement(LayeredStyle, nextProps)); } LayeredStyle.propTypes = { style: _propTypes.default.object, styles: _propTypes.default.array, children: _propTypes.default.node.isRequired }; function isEmpty(array) { return !array || !array.length; }