diff --git a/src/content/components/player-badge.js b/src/content/components/player-badge.js index 44b7a02d..d2b656ca 100644 --- a/src/content/components/player-badge.js +++ b/src/content/components/player-badge.js @@ -1,6 +1,6 @@ /** @jsx h */ import { h } from 'dom-chef' -import vipLevels from '../../shared/vip-levels' +import vipLevels, { badgeAnimation } from '../../shared/vip-levels' export default ({ level = 0, role, bgColor, textColor, onClick }) => { let description @@ -19,7 +19,9 @@ export default ({ level = 0, role, bgColor, textColor, onClick }) => { break } default: { - description = `Has supported FACEIT Enhancer` + description = `Has donated to FACEIT Enhancer${ + level > 0 ? ` ${level}0\u20AC ` : ' ' + }to support the development` } } @@ -37,11 +39,13 @@ export default ({ level = 0, role, bgColor, textColor, onClick }) => { textAlign: 'center', whiteSpace: 'nowrap', verticalAlign: 'baseline', - borderRadius: '.25em' + borderRadius: '.25em', + ...(vipLevels[level].style || {}) }} title={description} onClick={onClick} > + FACEIT Enhancer{' '} {role || `VIP ${level > 0 ? new Array(level).fill('★').join('') : ''}`} diff --git a/src/popup/app.js b/src/popup/app.js index c718acff..0ce13514 100644 --- a/src/popup/app.js +++ b/src/popup/app.js @@ -12,6 +12,7 @@ import VetoPreferences, { VETO_PREFERENCES } from './sections/veto-preferences' import Notifications, { NOTIFICATIONS } from './sections/notifications' import Help, { HELP } from './sections/help' import About, { ABOUT } from './sections/about' +import Donate, { DONATE } from './sections/donate' export default class App extends React.Component { state = { @@ -114,6 +115,7 @@ export default class App extends React.Component { [VETO_PREFERENCES]: VetoPreferences, [NOTIFICATIONS]: Notifications, [HELP]: Help, + [DONATE]: Donate, [ABOUT]: About }} itemProps={{ diff --git a/src/popup/sections/about.js b/src/popup/sections/about.js index 25547baa..06bfc212 100644 --- a/src/popup/sections/about.js +++ b/src/popup/sections/about.js @@ -26,8 +26,11 @@ export default () => ( /> Community & Social + - Team ( + + + FACEIT Enhancer VIP{' '} + {level > 0 ? new Array(level).fill(String.fromCharCode(9733)).join('') : ''} + +) + +export default () => ( + + Donate + + + + {Object.keys(vipLevels) + .map(Number) + .map(vipLevel => ( + + + {vipLevel === 0 + ? 'Basic: 3\u00A3 or more' + : `Level ${vipLevel}: ${vipLevel}0\u00A3 or more`} + + + + ))} + + + + + + +) diff --git a/src/popup/sections/help.js b/src/popup/sections/help.js index 47a1d130..b209da65 100644 --- a/src/popup/sections/help.js +++ b/src/popup/sections/help.js @@ -21,7 +21,10 @@ export default () => ( )} /> Questions? - - + + ) diff --git a/src/shared/vip-levels.js b/src/shared/vip-levels.js index c9b858c0..7fc52cfa 100644 --- a/src/shared/vip-levels.js +++ b/src/shared/vip-levels.js @@ -1,26 +1,51 @@ +export const badgeAnimation = ` + @keyframes faceitEnhancerBadge { + 0% { + background-position: 0% 50%; + } + + 50% { + background-position: 100% 50%; + } + + 100% { + background-position: 0% 50%; + } + }; +` + export default { 0: { - bgColor: '#607d8b', + bgColor: '#878787', textColor: '#fff' }, 1: { - bgColor: '#ffeb3b', - textColor: '#000' + bgColor: + 'linear-gradient(90deg, rgba(16,77,108,1) 0%, rgba(0,156,193,1) 100%)', + textColor: '#fff' }, 2: { - bgColor: '#ffc107', - textColor: '#000' + bgColor: + 'linear-gradient(90deg, rgba(16,108,53,1) 0%, rgba(0,193,58,1) 100%)', + textColor: '#fff' }, 3: { - bgColor: '#ff9800', + bgColor: + 'linear-gradient(90deg, rgba(134,114,22,1) 0%, rgba(230,193,0,1) 100%)', textColor: '#fff' }, 4: { - bgColor: '#ff5722', + bgColor: + 'linear-gradient(90deg, rgba(108,25,16,1) 0%, rgba(193,25,0,1) 100%)', textColor: '#fff' }, 5: { - bgColor: '#f44336', - textColor: '#fff' + bgColor: + 'linear-gradient(-45deg, #ffffa9 0%, #ffd078 16.6%, #ff9c5e 33.2%, #fb635f 49.8%, #e21c72 66.4%, #b0008c 83%, #5300a6 100%)', + textColor: '#fff', + style: { + backgroundSize: '125% 125%', + animation: 'faceitEnhancerBadge 6s ease-in-out infinite' + } } }