@pinuts/bsr-uikit-relaunch
Version:
BSR UI-KIT Relaunch
54 lines (52 loc) • 2.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _formBuilder = require("@pinuts/form-builder");
var _getUikitClassNames = require("../../utils/getUikitClassNames.js");
var _FormFieldChildPropTypes = _interopRequireDefault(require("../FormFieldWrapper/FormFieldChildPropTypes.jsx"));
var _FormFieldWrapper = _interopRequireDefault(require("../FormFieldWrapper/FormFieldWrapper.jsx"));
var _withFieldGroup = _interopRequireDefault(require("../../hooks/withFieldGroup.jsx"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } // import PropTypes from 'prop-types';
// form-builder
const TextInputField = _ref => {
let {
className,
inputProps = {},
value,
field,
onChange = () => {},
ariaAttributes,
isInvalid,
readOnly,
disabled,
viewMode
// formGroupClassName = 'text-input',
} = _ref;
const handleChange = e => onChange(e.target.value);
if (viewMode) {
return value;
}
const formControlClassNames = (0, _getUikitClassNames.getFormControlClassNames)(isInvalid, readOnly, disabled, className, ['input', field.className].filter(Boolean));
return /*#__PURE__*/_react.default.createElement("input", _extends({
type: "text"
}, field, ariaAttributes, inputProps, {
className: formControlClassNames,
value: value || '',
onChange: handleChange
}));
};
TextInputField.propTypes = {
..._FormFieldChildPropTypes.default
};
const HigherOrderTextInputField = (0, _withFieldGroup.default)(TextInputField);
// wrap the field label, error message help text and more
const WrappedTextInputField = props => {
return /*#__PURE__*/_react.default.createElement(_FormFieldWrapper.default, props, /*#__PURE__*/_react.default.createElement(HigherOrderTextInputField, props));
};
(0, _formBuilder.registerComponent)('TextInputField', WrappedTextInputField);
(0, _formBuilder.registerComponent)('TextInputFieldBasic', HigherOrderTextInputField);
var _default = exports.default = HigherOrderTextInputField;