UNPKG

@kiwicom/orbit-components

Version:

Orbit-components is a React component library which provides developers with the easiest possible way of building Kiwi.com’s products.

122 lines (105 loc) 4.33 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var React = _interopRequireWildcard(require("react")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _consts = require("../../InputField/consts"); var _PlusCircle = _interopRequireDefault(require("../../icons/PlusCircle")); var _MinusCircle = _interopRequireDefault(require("../../icons/MinusCircle")); var _ButtonLink = _interopRequireDefault(require("../../ButtonLink")); var _InputField = _interopRequireWildcard(require("../../InputField")); var _defaultTheme = _interopRequireDefault(require("../../defaultTheme")); var _getSpacingToken = _interopRequireDefault(require("../../common/getSpacingToken")); var StyledInputStepper = _styledComponents.default.div.withConfig({ displayName: "InputStepperStateless__StyledInputStepper", componentId: "sc-1u2800i-0" })(["width:100%;margin-bottom:", ";font-family:", ";", "{text-align:center;&[type=\"number\"]{-moz-appearance:textfield;}}", "{padding:0;pointer-events:auto;}"], _getSpacingToken.default, function (_ref) { var theme = _ref.theme; return theme.orbit.fontFamily; }, _InputField.Input, _InputField.Prefix); // $FlowFixMe: https://github.com/flow-typed/flow-typed/issues/3653#issuecomment-568539198 StyledInputStepper.defaultProps = { theme: _defaultTheme.default }; var InputStepperStateless = function InputStepperStateless(_ref2) { var label = _ref2.label, error = _ref2.error, onBlur = _ref2.onBlur, onFocus = _ref2.onFocus, onChange = _ref2.onChange, onKeyDown = _ref2.onKeyDown, help = _ref2.help, disabled = _ref2.disabled, name = _ref2.name, dataTest = _ref2.dataTest, _ref2$size = _ref2.size, size = _ref2$size === void 0 ? _consts.SIZE_OPTIONS.NORMAL : _ref2$size, maxValue = _ref2.maxValue, minValue = _ref2.minValue, required = _ref2.required, readOnly = _ref2.readOnly, tabIndex = _ref2.tabIndex, forwardedRef = _ref2.forwardedRef, spaceAfter = _ref2.spaceAfter, value = _ref2.value, onDecrement = _ref2.onDecrement, onIncrement = _ref2.onIncrement, disabledIncrement = _ref2.disabledIncrement, width = _ref2.width, disabledDecrement = _ref2.disabledDecrement, titleIncrement = _ref2.titleIncrement, titleDecrement = _ref2.titleDecrement; return /*#__PURE__*/React.createElement(StyledInputStepper, { spaceAfter: spaceAfter }, /*#__PURE__*/React.createElement(_InputField.default, { dataTest: dataTest, size: size, label: label, width: width, disabled: disabled, required: required, readOnly: readOnly, name: name, error: error, help: help, type: typeof value === "number" ? "number" : "text", onChange: onChange, onBlur: onBlur, onFocus: onFocus, onKeyDown: onKeyDown, value: value, minValue: minValue, maxValue: maxValue, tabIndex: tabIndex, ref: forwardedRef, prefix: /*#__PURE__*/React.createElement(_ButtonLink.default, { type: "primary", disabled: disabledDecrement || disabled || typeof value === "number" && value <= +minValue, compact: true, iconLeft: /*#__PURE__*/React.createElement(_MinusCircle.default, null), size: size, onClick: !disabled ? onDecrement : undefined, title: titleDecrement, asComponent: function asComponent(props) { return /*#__PURE__*/React.createElement("div", props); } }), suffix: /*#__PURE__*/React.createElement(_ButtonLink.default, { disabled: disabledIncrement || disabled || typeof value === "number" && value >= +maxValue, type: "primary", compact: true, iconLeft: /*#__PURE__*/React.createElement(_PlusCircle.default, null), size: size, onClick: !disabled ? onIncrement : undefined, title: titleIncrement, asComponent: function asComponent(props) { return /*#__PURE__*/React.createElement("div", props); } }) })); }; var _default = InputStepperStateless; exports.default = _default;