@alifd/meet-react
Version:
Fusion Mobile React UI System Component
45 lines • 3 kB
JavaScript
import { rpx2vw4style as __rpx2vw__ } from "@alifd/babel-runtime-jsx-style-transform";
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
import classNames from 'classnames';
import React, { createElement, forwardRef, Fragment } from "react";
import { Text } from "@alifd/meet-react-component-one";
import View from '../view';
import { unit } from './utils';
import { isNil } from '../utils';
var Thumb = function Thumb(props, ref) {
var prefix = props.prefix,
_props$size = props.size,
size = _props$size === void 0 ? 'medium' : _props$size,
_props$offset = props.offset,
offset = _props$offset === void 0 ? 0 : _props$offset,
isActive = props.isActive,
tooltipVisible = props.tooltipVisible,
_props$disabled = props.disabled,
disabled = _props$disabled === void 0 ? false : _props$disabled,
value = props.value,
id = props.id;
var display;
if (!isNil(tooltipVisible)) {
display = tooltipVisible ? 'flex' : 'none';
} else {
display = isActive ? 'flex' : 'none';
}
var statePrefix = disabled ? '--disabled' : '';
var thumbCls = classNames("".concat(prefix, "range--thumb"), "".concat(prefix, "range--thumb--").concat(size), _defineProperty(_defineProperty(_defineProperty({}, "".concat(prefix, "range--thumb--active"), isActive), "".concat(prefix, "range").concat(statePrefix, "--thumb"), isActive), "".concat(prefix, "range").concat(statePrefix, "--thumb"), !isActive));
return /*#__PURE__*/React.createElement(View, {
className: thumbCls,
style: __rpx2vw__({
left: offset + unit
}),
id: id,
ref: ref
}, display === 'flex' && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(View, {
className: classNames(["".concat(prefix, "range--tooltip"), "".concat(prefix, "range--tooltip-").concat(size, "-left")])
}, /*#__PURE__*/React.createElement(Text, null, "".concat(value)), /*#__PURE__*/React.createElement(View, {
className: "".concat(prefix, "range--tooltip--arrow")
}))));
};
export default /*#__PURE__*/forwardRef(Thumb);