@itwin/itwinui-react
Version:
A react component library for iTwinUI
73 lines (72 loc) • 1.84 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true,
});
Object.defineProperty(exports, 'InputContainer', {
enumerable: true,
get: function () {
return InputContainer;
},
});
const _interop_require_default = require('@swc/helpers/_/_interop_require_default');
const _interop_require_wildcard = require('@swc/helpers/_/_interop_require_wildcard');
const _react = /*#__PURE__*/ _interop_require_wildcard._(require('react'));
const _classnames = /*#__PURE__*/ _interop_require_default._(
require('classnames'),
);
const _Box = require('./Box.js');
const _Label = require('../../core/Label/Label.js');
const _StatusMessage = require('../../core/StatusMessage/StatusMessage.js');
const InputContainer = _react.forwardRef((props, forwardedRef) => {
let {
label,
disabled,
required,
status,
message,
icon,
isLabelInline,
children,
className,
style,
statusMessage,
inputId,
labelId,
...rest
} = props;
return _react.createElement(
_Box.Box,
{
className: (0, _classnames.default)('iui-input-grid', className),
'data-iui-status': status,
'data-iui-label-placement': isLabelInline ? 'inline' : void 0,
style: style,
ref: forwardedRef,
...rest,
},
label &&
_react.createElement(
_Label.Label,
{
as: inputId && 'label' !== props.as ? 'label' : 'div',
required: required,
disabled: disabled,
htmlFor: inputId,
id: labelId,
},
label,
),
children,
statusMessage
? statusMessage
: message &&
_react.createElement(
_StatusMessage.StatusMessage,
{
startIcon: icon,
status: status,
},
message,
),
);
});