react-bootify
Version:
react-bootify
124 lines (98 loc) • 5.2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _utils = require("../utils");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
/**
*
* The **Tag** is a central part of this library and acts like a base class for transforming properties into a valid
* series of Bootstrap class names.
*
* This includes
*
* * Borders
* * Colors
* * Display
* * Flex
* * Float
* * Shadows
* * Spacing
* * Text alignment
* * Vertical alignment
* * Visibility
*
*
*/
var Tag = _react["default"].forwardRef(function (props, ref) {
var _transformProps = (0, _utils.transformProps)(props),
Component = _transformProps.tag,
props = _objectWithoutProperties(_transformProps, ["tag"]);
return _react["default"].createElement(Component, _extends({
ref: ref
}, props));
});
Tag.defaultProps = {
tag: 'div'
};
Tag.propTypes = {
/**
*
* Default tag
*
* */
tag: _propTypes["default"].any,
/** [Vertical alignment](https://getbootstrap.com/docs/4.4/utilities/vertical-align) */
align: _propTypes["default"].any,
/** [Aligning content](https://getbootstrap.com/docs/4.4/utilities/flex/#align-content) */
alignContent: _propTypes["default"].any,
/** [Align items](https://getbootstrap.com/docs/4.4/utilities/flex/#align-items) */
alignItems: _propTypes["default"].any,
/**
* [Background color](https://getbootstrap.com/docs/4.4/utilities/colors/#background-color)
* One of primary, secondary, success, danger, warning, info, light, dark.
* */
bg: _propTypes["default"].string,
/**
*
*
* [Border](https://getbootstrap.com/docs/4.4/utilities/borders/#border-color).
* One of primary, secondary, success, danger, warning, info, light, dark.
*
* */
border: _propTypes["default"].string,
className: _propTypes["default"].string,
/** [Display](https://getbootstrap.com/docs/4.4/utilities/display) */
display: _propTypes["default"].string,
fixed: _propTypes["default"].any,
/** Flex display, use display="flex" */
flex: _propTypes["default"].oneOf([_propTypes["default"].object, 'nowrap', 'wrap', 'wrap-reverse', 'sm-nowrap', 'sm-wrap', 'sm-wrap-reverse', 'md-nowrap', 'md-wrap', 'md-wrap-reverse', 'lg-nowrap', 'lg-wrap', 'lg-wrap-reverse', 'xl-nowrap', 'xl-wrap', 'xl-wrap-reverse']),
"float": _propTypes["default"].string,
/** Specifies [font-weight](https://getbootstrap.com/docs/4.4/utilities/text/#font-weight-and-italics) */
fontWeight: _propTypes["default"].any,
/** [Visibility](https://getbootstrap.com/docs/4.4/utilities/visibility) */
invisible: _propTypes["default"].any,
/** Justifies content horizontally. See [justify-content](https://getbootstrap.com/docs/4.4/utilities/flex/#justify-content). */
justifyContent: _propTypes["default"].any,
margin: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].string, _propTypes["default"].number]),
padding: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].number, _propTypes["default"].string]),
position: _propTypes["default"].oneOf(['static', 'relative', 'absolute', 'fixed']),
/** Rounded border - sm, lg, top, right, bottom, left, circle, pill, 0 */
rounded: _propTypes["default"].oneOfType([_propTypes["default"].bool, _propTypes["default"].number, _propTypes["default"].string]),
/** [Shadows](https://getbootstrap.com/docs/4.4/utilities/shadows) */
shadow: _propTypes["default"].any,
/** Generates Bootstraps [text](https://getbootstrap.com/docs/4.4/utilities/text) class names. */
text: _propTypes["default"].any,
/** [Visibility](https://getbootstrap.com/docs/4.4/utilities/visibility) */
visible: _propTypes["default"].any,
/** Raw Bootstrap class names to be appended */
raw: _propTypes["default"].string
};
var _default = Tag;
exports["default"] = _default;