ink-box
Version:
Styled box component for Ink
46 lines (38 loc) • 1.83 kB
JavaScript
"use strict";
var _react = _interopRequireDefault(require("react"));
var _ink = require("ink");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _boxen = _interopRequireDefault(require("boxen"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const Box = props => _react.default.createElement(_ink.Box, {
unstable__transformChildren: text => (0, _boxen.default)(text, props)
}, props.children);
Box.propTypes = {
children: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.node), _propTypes.default.node]).isRequired,
borderColor: _propTypes.default.string,
borderStyle: _propTypes.default.oneOfType([_propTypes.default.oneOf(['single', 'double', 'round', 'singleDouble', 'doubleSingle', 'classic']), _propTypes.default.shape({
topLeft: _propTypes.default.string,
topRight: _propTypes.default.string,
bottomLeft: _propTypes.default.string,
bottomRight: _propTypes.default.string,
horizontal: _propTypes.default.string,
vertical: _propTypes.default.string
})]),
dimBorder: _propTypes.default.bool,
padding: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
top: _propTypes.default.number,
right: _propTypes.default.number,
bottom: _propTypes.default.number,
left: _propTypes.default.number
})]),
margin: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({
top: _propTypes.default.number,
right: _propTypes.default.number,
bottom: _propTypes.default.number,
left: _propTypes.default.number
})]),
float: _propTypes.default.oneOf(['right', 'center', 'left']),
backgroundColor: _propTypes.default.string,
align: _propTypes.default.oneOf(['left', 'center', 'right'])
};
module.exports = Box;