UNPKG

@wordpress/components

Version:
78 lines (66 loc) 1.75 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _element = require("@wordpress/element"); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _lodash = require("lodash"); var _rangeControlStyles = require("./styles/range-control-styles"); var _utils = require("./utils"); var _hooks = require("../utils/hooks"); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function InputRange({ describedBy, isShiftStepEnabled = true, label, onHideTooltip = _lodash.noop, onMouseLeave = _lodash.noop, step = 1, onBlur = _lodash.noop, onChange = _lodash.noop, onFocus = _lodash.noop, onMouseMove = _lodash.noop, onShowTooltip = _lodash.noop, shiftStep = 10, value, ...props }, ref) { const jumpStep = (0, _hooks.useJumpStep)({ step, shiftStep, isShiftStepEnabled }); const hoverInteractions = (0, _utils.useDebouncedHoverInteraction)({ onHide: onHideTooltip, onMouseLeave, onMouseMove, onShow: onShowTooltip }); return (0, _element.createElement)(_rangeControlStyles.InputRange, (0, _extends2.default)({}, props, hoverInteractions, { "aria-describedby": describedBy, "aria-label": label, "aria-hidden": false, onBlur: onBlur, onChange: onChange, onFocus: onFocus, ref: ref, step: jumpStep, tabIndex: 0, type: "range", value: value })); } const ForwardedComponent = (0, _element.forwardRef)(InputRange); var _default = ForwardedComponent; exports.default = _default; //# sourceMappingURL=input-range.js.map