GoScrobble/web/node_modules/react-bootstrap/cjs/InputGroup.js

73 lines
2.6 KiB
JavaScript
Raw Permalink Normal View History

2022-04-25 02:47:15 +00:00
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _classnames = _interopRequireDefault(require("classnames"));
var _react = _interopRequireDefault(require("react"));
var _createWithBsPrefix = _interopRequireDefault(require("./createWithBsPrefix"));
var _ThemeProvider = require("./ThemeProvider");
var _excluded = ["bsPrefix", "size", "hasValidation", "className", "as"];
var InputGroupAppend = (0, _createWithBsPrefix.default)('input-group-append');
var InputGroupPrepend = (0, _createWithBsPrefix.default)('input-group-prepend');
var InputGroupText = (0, _createWithBsPrefix.default)('input-group-text', {
Component: 'span'
});
var InputGroupCheckbox = function InputGroupCheckbox(props) {
return /*#__PURE__*/_react.default.createElement(InputGroupText, null, /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
type: "checkbox"
}, props)));
};
var InputGroupRadio = function InputGroupRadio(props) {
return /*#__PURE__*/_react.default.createElement(InputGroupText, null, /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
type: "radio"
}, props)));
};
/**
*
* @property {InputGroupAppend} Append
* @property {InputGroupPrepend} Prepend
* @property {InputGroupText} Text
* @property {InputGroupRadio} Radio
* @property {InputGroupCheckbox} Checkbox
*/
var InputGroup = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
var bsPrefix = _ref.bsPrefix,
size = _ref.size,
hasValidation = _ref.hasValidation,
className = _ref.className,
_ref$as = _ref.as,
Component = _ref$as === void 0 ? 'div' : _ref$as,
props = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
bsPrefix = (0, _ThemeProvider.useBootstrapPrefix)(bsPrefix, 'input-group');
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
ref: ref
}, props, {
className: (0, _classnames.default)(className, bsPrefix, size && bsPrefix + "-" + size, hasValidation && 'has-validation')
}));
});
InputGroup.displayName = 'InputGroup';
var InputGroupWithExtras = (0, _extends2.default)({}, InputGroup, {
Text: InputGroupText,
Radio: InputGroupRadio,
Checkbox: InputGroupCheckbox,
Append: InputGroupAppend,
Prepend: InputGroupPrepend
});
var _default = InputGroupWithExtras;
exports.default = _default;
module.exports = exports["default"];