@blockstack/ui
Version:
Blockstack UI components built using React and styled-components with styled-system.
45 lines (41 loc) • 1.62 kB
JavaScript
import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';
import React__default, { forwardRef } from 'react';
import { Box } from '../box/index.esm.js';
import { useFormControl } from '../form-control/index.esm.js';
import useInputStyle from './styles.esm.js';
var Input = /*#__PURE__*/forwardRef(function (props, ref) {
var as = props.as,
ariaLabel = props['aria-label'],
ariaDescribedby = props['aria-describedby'],
isReadOnly = props.isReadOnly,
_props$style = props.style,
style = _props$style === void 0 ? {} : _props$style,
rest = _objectWithoutPropertiesLoose(props, ["as", "aria-label", "aria-describedby", "isReadOnly", "style"]);
var inputStyleProps = useInputStyle(props);
var formControl = useFormControl(props);
return React__default.createElement(Box, Object.assign({
ref: ref,
as: as,
_readOnly: formControl.isReadOnly,
"aria-readonly": isReadOnly,
isDisabled: formControl.isDisabled,
"aria-label": ariaLabel,
"aria-invalid": formControl.isInvalid,
isRequired: formControl.isRequired,
"aria-required": formControl.isRequired,
"aria-disabled": formControl.isDisabled,
"aria-describedby": ariaDescribedby,
textStyle: "body.small",
style: _objectSpread2({
WebkitAppearance: 'none'
}, style)
}, inputStyleProps, rest));
});
Input.defaultProps = {
as: 'input',
isFullWidth: true,
focusBorderColor: 'blue.300'
};
Input.displayName = 'Input';
export { Input };
//# sourceMappingURL=index.esm.js.map