UNPKG

@grafana/ui

Version:
54 lines (49 loc) 1.62 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var jsxRuntime = require('react/jsx-runtime'); var css = require('@emotion/css'); var React = require('react'); var ThemeContext = require('../../themes/ThemeContext.cjs'); var commonStyles = require('../Forms/commonStyles.cjs'); var Input = require('../Input/Input.cjs'); "use strict"; const InputControl = React.forwardRef( function InputControl2({ focused, invalid, disabled, children, innerProps, prefix, ...otherProps }, ref) { const styles = ThemeContext.useStyles2(getInputControlStyles, invalid, !!prefix); return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.input, ...innerProps, ref, children: [ prefix && /* @__PURE__ */ jsxRuntime.jsx("div", { className: css.cx(styles.prefix), children: prefix }), children ] }); } ); const getInputControlStyles = (theme, invalid, withPrefix) => { const styles = Input.getInputStyles({ theme, invalid }); return { input: css.cx( commonStyles.inputPadding(theme), css.css({ width: "100%", maxWidth: "100%", display: "flex", flexDirection: "row", alignItems: "center", flexWrap: "wrap", justifyContent: "space-between", paddingRight: 0, position: "relative", boxSizing: "border-box" }), withPrefix && css.css({ paddingLeft: 0 }) ), prefix: css.cx( styles.prefix, css.css({ position: "relative" }) ) }; }; exports.InputControl = InputControl; //# sourceMappingURL=InputControl.cjs.map