Socket
Socket
Sign inDemoInstall

rc-rate

Package Overview
Dependencies
Maintainers
5
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rc-rate - npm Package Compare versions

Comparing version 2.3.0 to 2.4.0

37

es/Rate.js

@@ -36,3 +36,4 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

value: value,
focused: false
focused: false,
cleanedValue: null
};

@@ -67,5 +68,6 @@ return _this;

if (this.props.allowHalf) {
var leftEdge = getOffsetLeft(this.getStarDOM(0));
var width = getOffsetLeft(this.getStarDOM(1)) - leftEdge;
if (x - leftEdge - width * index < width / 2) {
var starEle = this.getStarDOM(index);
var leftDis = getOffsetLeft(starEle);
var width = starEle.clientWidth;
if (x - leftDis < width / 2) {
value -= 0.5;

@@ -155,2 +157,3 @@ }

allowHalf: PropTypes.bool,
allowClear: PropTypes.bool,
style: PropTypes.object,

@@ -172,2 +175,3 @@ prefixCls: PropTypes.string,

allowHalf: false,
allowClear: true,
style: {},

@@ -186,5 +190,10 @@ prefixCls: 'rc-rate',

var hoverValue = _this2.getStarValue(index, event.pageX);
_this2.setState({
hoverValue: hoverValue
});
var cleanedValue = _this2.state.cleanedValue;
if (hoverValue !== cleanedValue) {
_this2.setState({
hoverValue: hoverValue,
cleanedValue: null
});
}
_this2.props.onHoverChange(hoverValue);

@@ -195,3 +204,4 @@ };

_this2.setState({
hoverValue: undefined
hoverValue: undefined,
cleanedValue: null
});

@@ -203,4 +213,11 @@ _this2.props.onHoverChange(undefined);

var value = _this2.getStarValue(index, event.pageX);
_this2.onMouseLeave();
_this2.changeValue(value);
var isReset = false;
if (_this2.props.allowClear) {
isReset = value === _this2.state.value;
}
_this2.onMouseLeave(true);
_this2.changeValue(isReset ? 0 : value);
_this2.setState({
cleanedValue: isReset ? value : null
});
};

@@ -207,0 +224,0 @@

@@ -0,1 +1,5 @@

## 2.4.0
- Add allowClear support.
## 2.3.0

@@ -2,0 +6,0 @@

@@ -60,3 +60,4 @@ 'use strict';

value: value,
focused: false
focused: false,
cleanedValue: null
};

@@ -91,5 +92,6 @@ return _this;

if (this.props.allowHalf) {
var leftEdge = (0, _util.getOffsetLeft)(this.getStarDOM(0));
var width = (0, _util.getOffsetLeft)(this.getStarDOM(1)) - leftEdge;
if (x - leftEdge - width * index < width / 2) {
var starEle = this.getStarDOM(index);
var leftDis = (0, _util.getOffsetLeft)(starEle);
var width = starEle.clientWidth;
if (x - leftDis < width / 2) {
value -= 0.5;

@@ -179,2 +181,3 @@ }

allowHalf: _propTypes2['default'].bool,
allowClear: _propTypes2['default'].bool,
style: _propTypes2['default'].object,

@@ -196,2 +199,3 @@ prefixCls: _propTypes2['default'].string,

allowHalf: false,
allowClear: true,
style: {},

@@ -210,5 +214,10 @@ prefixCls: 'rc-rate',

var hoverValue = _this2.getStarValue(index, event.pageX);
_this2.setState({
hoverValue: hoverValue
});
var cleanedValue = _this2.state.cleanedValue;
if (hoverValue !== cleanedValue) {
_this2.setState({
hoverValue: hoverValue,
cleanedValue: null
});
}
_this2.props.onHoverChange(hoverValue);

@@ -219,3 +228,4 @@ };

_this2.setState({
hoverValue: undefined
hoverValue: undefined,
cleanedValue: null
});

@@ -227,4 +237,11 @@ _this2.props.onHoverChange(undefined);

var value = _this2.getStarValue(index, event.pageX);
_this2.onMouseLeave();
_this2.changeValue(value);
var isReset = false;
if (_this2.props.allowClear) {
isReset = value === _this2.state.value;
}
_this2.onMouseLeave(true);
_this2.changeValue(isReset ? 0 : value);
_this2.setState({
cleanedValue: isReset ? value : null
});
};

@@ -231,0 +248,0 @@

{
"name": "rc-rate",
"version": "2.3.0",
"version": "2.4.0",
"description": "React Star Rate Component",

@@ -5,0 +5,0 @@ "keywords": [

@@ -98,2 +98,8 @@ # rc-rate

<tr>
<td>allowClear</td>
<td>bool</td>
<td>true</td>
<td>reset when click again</td>
</tr>
<tr>
<td>style</td>

@@ -100,0 +106,0 @@ <td>object</td>

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with āš”ļø by Socket Inc