Sha256: ff2edc715b823336bb0b878f4454718d55d5c35a0d732840108790499328e623
Contents?: true
Size: 1.21 KB
Versions: 6
Compression:
Stored size: 1.21 KB
Contents
Rev.registerComponent('ProgressBar', class extends React.Component { static get propTypes() { return { value: React.PropTypes.number, minValue: React.PropTypes.number, maxValue: React.PropTypes.number, success: React.PropTypes.bool, secondary: React.PropTypes.bool, alert: React.PropTypes.bool, } } static get defaultProps() { return { value: 0, minValue: 0, maxValue: 1, success: false, secondary: false, alert: false, } } get className() { return this.classAdd({ 'RevProgressBar': true, 'progress': true, 'success': this.props.success, 'secondary': this.props.secondary, 'alert': this.props.alert, }) } get fillClassName() { return this.classSet({ 'RevProgressBar-fill': true, 'meter': true, }) } get fillRatio() { let {value, minValue, maxValue} = this.props return Math.min(1, (value - minValue) / (maxValue - minValue)) } get fillStyle() { return {width: `${this.fillRatio*100}%`} } render() { return <div {...this.props} className={this.className}> <span className={this.fillClassName} style={this.fillStyle} /> </div> } })
Version data entries
6 entries across 6 versions & 1 rubygems