UNPKG

@tractorzoom/equipment-card

Version:
110 lines (94 loc) 3.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _CancelRounded = _interopRequireDefault(require("@material-ui/icons/CancelRounded")); var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton")); var _InfoRounded = _interopRequireDefault(require("@material-ui/icons/InfoRounded")); var _InputAdornment = _interopRequireDefault(require("@material-ui/core/InputAdornment")); var _react = _interopRequireDefault(require("react")); var _clsx = _interopRequireDefault(require("clsx")); var _styles = _interopRequireDefault(require("./styles")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const useEquipmentCard = props => { const classes = (0, _styles.default)(); const { InputLabelProps, InputProps, step, suffixLabel, suffixOnChange, suffixOptions, suffixValue, ...otherProps } = props; const labelClassName = otherProps.value && !otherProps.error ? classes.activeLabel : ''; const inputLabelPropsObj = { ...InputLabelProps, className: InputLabelProps.className ? (0, _clsx.default)(labelClassName, InputLabelProps.className) : labelClassName }; const inputPropsObj = {}; const clear = () => { otherProps.onChange({ target: { value: '' } }); }; const errorOrClearAdornment = otherProps.error ? /*#__PURE__*/_react.default.createElement(_InputAdornment.default, { position: "end" }, /*#__PURE__*/_react.default.createElement(_InfoRounded.default, { className: classes.errorIcon })) : otherProps.value && !otherProps.disabled ? /*#__PURE__*/_react.default.createElement(_InputAdornment.default, { position: "end" }, /*#__PURE__*/_react.default.createElement(_IconButton.default, { onClick: clear }, /*#__PURE__*/_react.default.createElement(_CancelRounded.default, { className: classes.clearIcon }))) : null; const endAdornment = suffixLabel ? /*#__PURE__*/_react.default.createElement(_InputAdornment.default, { className: classes.suffixLabel, position: "end" }, suffixLabel) : errorOrClearAdornment; if ((otherProps === null || otherProps === void 0 ? void 0 : otherProps.type) === 'number') { inputPropsObj.step = step; } if ((otherProps === null || otherProps === void 0 ? void 0 : otherProps.type) === 'date') { inputLabelPropsObj.shrink = true; } const updatedInputProps = { ...InputProps, className: (0, _clsx.default)(classes.input, { [classes.optionsInput]: suffixOptions.length, [InputProps.className]: Boolean(InputProps.className) }), classes: { adornedEnd: classes.adornedEnd, error: classes.error, focused: classes.focused }, disableUnderline: true, endAdornment, inputProps: inputPropsObj }; return { ...otherProps, optionsTextFieldClassName: suffixOptions.length ? classes.optionsTextField : '', InputLabelProps: inputLabelPropsObj, InputProps: updatedInputProps, optionsSelectProps: { className: classes.optionsSelect, SelectProps: { classes: { select: classes.optionsSelectLabel } }, InputProps: { className: classes.optionsSelectInput }, options: suffixOptions, onChange: suffixOnChange, value: suffixValue } }; }; var _default = useEquipmentCard; exports.default = _default;