Having some fun
This commit is contained in:
@@ -332,4 +332,17 @@ pre {
|
|||||||
|
|
||||||
.alwaysCentered {
|
.alwaysCentered {
|
||||||
text-align: center !important;
|
text-align: center !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.rainbowText {
|
||||||
|
-webkit-background-clip: text;
|
||||||
|
-webkit-text-fill-color: transparent;
|
||||||
|
background-image: -webkit-gradient(linear, left top, left bottom,
|
||||||
|
color-stop(0.00, red),
|
||||||
|
color-stop(16%, orange),
|
||||||
|
color-stop(32%, yellow),
|
||||||
|
color-stop(48%, green),
|
||||||
|
color-stop(60%, blue),
|
||||||
|
color-stop(76%, indigo),
|
||||||
|
color-stop(1.00, violet));
|
||||||
|
}
|
||||||
@@ -2,6 +2,8 @@ import React from 'react';
|
|||||||
import { withRouter, Link } from 'react-router-dom';
|
import { withRouter, Link } from 'react-router-dom';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
|
|
||||||
|
import ProgressiveRainbowText from './progressive_rainbow_text.jsx';
|
||||||
|
|
||||||
class PagedLadder extends React.Component {
|
class PagedLadder extends React.Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
@@ -27,7 +29,11 @@ class PagedLadder extends React.Component {
|
|||||||
<hr />
|
<hr />
|
||||||
<div className='break' />
|
<div className='break' />
|
||||||
<div className={'row'}>
|
<div className={'row'}>
|
||||||
<p className={'col centered truncate'}><Link to={`/profile?username=${this.state[key].username}`}>{this.state[key].username}</Link></p>
|
{
|
||||||
|
this.state[key].username === 'Ratstail91' ?
|
||||||
|
<Link to={`/profile?username=${this.state[key].username}`} className={'col centered truncate'}><ProgressiveRainbowText>{this.state[key].username}</ProgressiveRainbowText></Link> :
|
||||||
|
<Link to={`/profile?username=${this.state[key].username}`} className={'col centered truncate'}><p>{this.state[key].username}</p></Link>
|
||||||
|
}
|
||||||
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Soldiers: </span>{this.state[key].soldiers}</p>
|
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Soldiers: </span>{this.state[key].soldiers}</p>
|
||||||
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Recruits: </span>{this.state[key].recruits}</p>
|
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Recruits: </span>{this.state[key].recruits}</p>
|
||||||
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Gold: </span>{this.state[key].gold}</p>
|
<p className={'col centered truncate'}><span className='mobile show' style={{whiteSpace: 'pre'}}>Gold: </span>{this.state[key].gold}</p>
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
import React from 'react';
|
||||||
|
|
||||||
|
class ProgressiveRainbowText extends React.Component {
|
||||||
|
constructor(props) {
|
||||||
|
super(props);
|
||||||
|
|
||||||
|
this.state = {
|
||||||
|
colors: props.colors || ['red', 'orange', 'yellow', 'green', 'blue', 'violet', 'indigo'],
|
||||||
|
counter: 0,
|
||||||
|
unsubscribeKey: setInterval(() => this.setState({ counter: this.state.counter + 1}), 1000)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
componentWillUnmount() {
|
||||||
|
clearInterval(this.state.unsubscribeKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<p {...this.props}>
|
||||||
|
{Object.keys(this.props.children).map((key) => <span key={key} style={{ color: this.state.colors[(key + this.state.counter) % this.state.colors.length] }}>{this.props.children[key]}</span>)}
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export default ProgressiveRainbowText;
|
||||||
Reference in New Issue
Block a user