From cc2a84c6b9974435058db41e54d9708c7bcb6add Mon Sep 17 00:00:00 2001 From: Albert Cui Date: Mon, 9 Sep 2019 13:05:34 -0700 Subject: [PATCH 1/2] replace dotacoach with gamerzclass --- Dockerfile | 2 +- package-lock.json | 41 +- public/assets/images/dotacoach-32x24.png | Bin 1774 -> 0 bytes public/assets/images/dotacoach-logo.png | Bin 4649 -> 0 bytes public/assets/images/gamerzclass-24px.png | Bin 0 -> 470 bytes .../Match/MatchHeader/MatchHeader.jsx | 442 ++++++++++-------- .../Player/Header/PlayerButtons.jsx | 46 +- src/lang/en-US.json | 4 +- 8 files changed, 295 insertions(+), 240 deletions(-) delete mode 100644 public/assets/images/dotacoach-32x24.png delete mode 100644 public/assets/images/dotacoach-logo.png create mode 100644 public/assets/images/gamerzclass-24px.png diff --git a/Dockerfile b/Dockerfile index a3f91cd156..78130c7a7e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,4 +4,4 @@ ENV NPM_CONFIG_LOGLEVEL warn WORKDIR /usr/src -CMD ["npm", "start:install"] +CMD ["npm", "run", "start:install"] diff --git a/package-lock.json b/package-lock.json index 96ea00d5fc..130c941e54 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9009,7 +9009,8 @@ }, "ansi-regex": { "version": "2.1.1", - "bundled": true + "bundled": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -9027,11 +9028,13 @@ }, "balanced-match": { "version": "1.0.0", - "bundled": true + "bundled": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -9044,15 +9047,18 @@ }, "code-point-at": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "concat-map": { "version": "0.0.1", - "bundled": true + "bundled": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", - "bundled": true + "bundled": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -9155,7 +9161,8 @@ }, "inherits": { "version": "2.0.3", - "bundled": true + "bundled": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -9165,6 +9172,7 @@ "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -9177,17 +9185,20 @@ "minimatch": { "version": "3.0.4", "bundled": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", - "bundled": true + "bundled": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -9204,6 +9215,7 @@ "mkdirp": { "version": "0.5.1", "bundled": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -9276,7 +9288,8 @@ }, "number-is-nan": { "version": "1.0.1", - "bundled": true + "bundled": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -9286,6 +9299,7 @@ "once": { "version": "1.4.0", "bundled": true, + "optional": true, "requires": { "wrappy": "1" } @@ -9361,7 +9375,8 @@ }, "safe-buffer": { "version": "5.1.1", - "bundled": true + "bundled": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -9391,6 +9406,7 @@ "string-width": { "version": "1.0.2", "bundled": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -9408,6 +9424,7 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -9446,11 +9463,13 @@ }, "wrappy": { "version": "1.0.2", - "bundled": true + "bundled": true, + "optional": true }, "yallist": { "version": "3.0.2", - "bundled": true + "bundled": true, + "optional": true } } }, diff --git a/public/assets/images/dotacoach-32x24.png b/public/assets/images/dotacoach-32x24.png deleted file mode 100644 index ebd9497728c7c6e6f3fded423b8b5ba2acf9e6e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1774 zcmVcW^g@Fs_!9$x3q?X=wV(u2QB+{49VzXU4%6w(oO9-! zea`+_>+@n}Y8iUUPWIl(T6?YcdEfPAtu1U^Q7wuN7mXPe5uEoqh$h}OTX}X4#Sa#u zy?0axz7klep<+lXO`>VeY4*99^kGA5CG)fC!t{a3$_9tgFzHj1Q9!gf*^PlD~3jr z;ZV8IiEqigve4=BtA$I1#_-V8c&Wcw!WobCP&Br>Wwa-NLTZg>0U#K15$B8}!dQbM z0#3kSQ0Mvm(lQs~E){D5NWGGxj0KjNa!9D29IzNF*7koOKxj<0VuFDnfY;ZPfB$)T z+oa%MmwA!&e_V&9n85o?x zor4vOH9g$}n2m=RYs5&P?5hNOADkKgStST=ZRh#xzgt-P;uDuvzQ2@Z%b~*G>+9q_ z003ET$Kk7u7MHpSyDG)r**{jx1FRy(2hiA_p zdA8np>Yw$N`VW{CU?8xJMFrZqt1I*zVgM57>Rt79YlMObkySZ3R6clocJe0$YsLWI z&hj^&S-AADLV6?NP&PcbTu##w|Km#i*YsHbs{l^56}zkz1P~gfAOU4-?WaehPu@Q> z{^QV?L4eHrwHvv=r4sRl*-@&YC2`8@jrL+aOeVnrtyncwxCg*Td2A5dwo;?BuUq?j|qwN+AHSB18Mf zYDYr@MlFaUfK`JC^ji%dm>xQ@lDOqlilR68lX~IIRD^D%8 zo{f!50-It?0iywt=~A_fUmKySTHq$GQ|WIuVrFaoQ%2+?B2ojUff3-U0lS%Dnt6ZI znf3ValjpDSm*u8EeP!)8t6t_03{~$8tT$Ga*Xk{vURWjZ?_172z|i(a2dpNkN95_v z5zD|5kZ;~si_ov8+3~r0{Lx0{Xk~f9sUAGnj9ny8^>0fkQq@N{UB3&wy(NAvz=Tu%CcGzJBO-HetTevba(3{J(dz#FwMsBsj(C2l zalI7I0nY)4wzV4(*#$hKs{aMr@96|afiJ6adw*z|?Tb`4D*KA6{t>wIoU^&2C_g8kawaZr^%Tx{s8 ztF6(l^N#~<5#AXsGM(hgV`s0BZ5~FUK&=pn0!HYcsFXhMg^P>p@x-fnZmEWFQxe9R4_yC{XHOh-i zO*+np>uI*Hoo18U^1lLn30U1Oz6H>>A}2pHJ^b;VrC?0NV2ow=K$#;uho}_-y3TWK zYM9w-k$cAaNph$aLXJ(1uy>%unPyDllzoF09=UA?bM=^Z?uo2nvakH7Mwt?cC4=u?pW)lbGi46Y;42v^~3@G2emXD?7uHO QW&i*H07*qoM6N<$f;>cNKmY&$ diff --git a/public/assets/images/dotacoach-logo.png b/public/assets/images/dotacoach-logo.png deleted file mode 100644 index 80e45f9285e48a765092b598ad1f756957ac50bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4649 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 diff --git a/public/assets/images/gamerzclass-24px.png b/public/assets/images/gamerzclass-24px.png new file mode 100644 index 0000000000000000000000000000000000000000..9cc84251796d3e214d5676d634ace0482a9c1398 GIT binary patch literal 470 zcmV;{0V)28P)+Cvt*toR3mObA@1Op_Mkawqog{6+|qoEG_Ir5X8blTPrIo5v;^EpjatUOCN`? zh=?%$VWWh}1kcUpgOBWHXJ&6Fw?rl5r6#iL5ah&<1W)D>)S%Eh^ZeOmDqc1Hj^ z(#0p(J=<~Z3I=sN*OiVP!Uow>L+#-T2D8u?ivb*mi*PVLB-zmtx2FqUiQ_%NA=qGh zE`PVdWK0P-hLdc^8=KZsdXrTpa2f6=;|Siv2l&Y5bkFcZ%gZziFI(Zc2#gDiu=(57 zm7H!Eiku+#i(qj8eu{((*p?H&BVu2*A0m^MILn$6H>1QYP%|L#L?nL2txB!?@K(ee zP_rPom(9ma6T;49{Yb3c{Mj01lPS)!3Fnpfb7TV&_mpBUV!lhZu({>eoKFaSDgx`b z{D*0B0qeJXi(G+X?eI*rriWaDg8lG4* span { - padding-bottom: 5px; - letter-spacing: 1px; - } - - &.radiant > span { - background: linear-gradient(to right,rgba(167, 195, 42, 0) 0%, - rgba(129, 146, 60, 0) 5%,rgba(19,82,44,0.3) 50%, - rgba(96, 236, 8, 0.05) 87%, rgba(255,255,255,0) 100%); - } + @media only screen and (max-width: 1023px) { + flex-basis: 100%; + max-width: 100%; + } + padding: 20px 0 10px; + font-size: 28px; - &.dire > span { - background: linear-gradient(to right,rgba(117,132,52,0) 0%, - rgba(129,146,60,0) 5%,rgba(111,34,26,0.3) 50%, - rgba(255, 71, 0, 0.05) 87%, rgba(255,255,255,0) 100%); - } + @media only screen and (max-width: 1023px) { + text-align: center; + margin: 10px 0; + } - & svg { - width: 32px; - height: 32px; - margin: 0 15px; - vertical-align: sub; + & > span { + padding-bottom: 5px; + letter-spacing: 1px; + } - @media only screen and (max-width: 1023px) { - display: block; - margin: 0 auto; - width: 48px; - height: 48px; + &.radiant > span { + background: linear-gradient( + to right, + rgba(167, 195, 42, 0) 0%, + rgba(129, 146, 60, 0) 5%, + rgba(19, 82, 44, 0.3) 50%, + rgba(96, 236, 8, 0.05) 87%, + rgba(255, 255, 255, 0) 100% + ); } - } -} -.nowinner { - color: ${constants.colorMuted}; -} + &.dire > span { + background: linear-gradient( + to right, + rgba(117, 132, 52, 0) 0%, + rgba(129, 146, 60, 0) 5%, + rgba(111, 34, 26, 0.3) 50%, + rgba(255, 71, 0, 0.05) 87%, + rgba(255, 255, 255, 0) 100% + ); + } -.radiant { - color: ${constants.colorSuccess}; + & svg { + width: 32px; + height: 32px; + margin: 0 15px; + vertical-align: sub; - & svg { - filter: drop-shadow(0 0 5px green); - fill: ${constants.textColorPrimary} !important; + @media only screen and (max-width: 1023px) { + display: block; + margin: 0 auto; + width: 48px; + height: 48px; + } + } } -} -.dire { - color: ${constants.colorDanger}; - - & svg { - filter: drop-shadow(0 0 5px ${constants.colorDanger}); - fill: black !important; + .nowinner { + color: ${constants.colorMuted}; } -} -.mainInfo { - box-sizing: border-box; - flex-basis: 33.33%; - max-width: 33.33%; + .radiant { + color: ${constants.colorSuccess}; - @media only screen and (max-width: 1023px) { - flex-basis: 100%; - max-width: 100%; + & svg { + filter: drop-shadow(0 0 5px green); + fill: ${constants.textColorPrimary} !important; + } } - display: flex; - justify-content: center; - text-align: center; -} -.gmde { - margin: 0 20px; + .dire { + color: ${constants.colorDanger}; - @media only screen and (max-width: 400px) { - margin: 0 10px; + & svg { + filter: drop-shadow(0 0 5px ${constants.colorDanger}); + fill: black !important; + } } - & span { - text-transform: uppercase; - display: block; - } + .mainInfo { + box-sizing: border-box; + flex-basis: 33.33%; + max-width: 33.33%; - & .gameMode { - font-size: ${constants.fontSizeMedium}; + @media only screen and (max-width: 1023px) { + flex-basis: 100%; + max-width: 100%; + } + display: flex; + justify-content: center; + text-align: center; } - & .duration { - font-size: 28px; + .gmde { + margin: 0 20px; @media only screen and (max-width: 400px) { - font-size: 24px; + margin: 0 10px; } - } - & .ended { - font-size: ${constants.fontSizeSmall}; - color: ${constants.colorMutedLight}; - margin-top: 3px; + & span { + text-transform: uppercase; + display: block; + } - & > div { - display: inline-block; + & .gameMode { + font-size: ${constants.fontSizeMedium}; } - } -} -.killsRadiant { - font-size: 48px; - text-align: center; + & .duration { + font-size: 28px; - @media only screen and (max-width: 400px) { - font-size: 40px; - } - color: ${constants.colorSuccess}; -} + @media only screen and (max-width: 400px) { + font-size: 24px; + } + } -.killsDire { - font-size: 48px; - text-align: center; + & .ended { + font-size: ${constants.fontSizeSmall}; + color: ${constants.colorMutedLight}; + margin-top: 3px; - @media only screen and (max-width: 400px) { - font-size: 40px; + & > div { + display: inline-block; + } + } } - color: ${constants.colorDanger}; -} -.additionalInfo { - box-sizing: border-box; - flex-basis: 33.33%; - max-width: 33.33%; + .killsRadiant { + font-size: 48px; + text-align: center; - @media only screen and (max-width: 1023px) { - flex-basis: 100%; - max-width: 100%; + @media only screen and (max-width: 400px) { + font-size: 40px; + } + color: ${constants.colorSuccess}; } - text-align: right; - padding-top: 20px; - @media only screen and (max-width: 1023px) { + .killsDire { + font-size: 48px; text-align: center; - & span { - margin-bottom: 5px; + @media only screen and (max-width: 400px) { + font-size: 40px; } + color: ${constants.colorDanger}; } - & ul { - padding: 0; - margin: 0; + .additionalInfo { + box-sizing: border-box; + flex-basis: 33.33%; + max-width: 33.33%; - & li { - display: inline-block; - margin-left: 20px; + @media only screen and (max-width: 1023px) { + flex-basis: 100%; + max-width: 100%; + } + text-align: right; + padding-top: 20px; - & > span { - display: block; - text-transform: uppercase; - font-size: ${constants.fontSizeSmall}; - color: ${constants.colorMutedLight}; + @media only screen and (max-width: 1023px) { + text-align: center; + + & span { + margin-bottom: 5px; } } - & li:first-child { - margin-left: 0; - } - } -} + & ul { + padding: 0; + margin: 0; -.matchButtons { - display: table; - margin: 10px auto 0; + & li { + display: inline-block; + margin-left: 20px; - /* Material-ui buttons */ - & a { - float: left; - margin: 5px !important; - line-height: 34px !important; + & > span { + display: block; + text-transform: uppercase; + font-size: ${constants.fontSizeSmall}; + color: ${constants.colorMutedLight}; + } + } + + & li:first-child { + margin-left: 0; + } + } } - @media only screen and (max-width: 620px) { + .matchButtons { + display: table; + margin: 10px auto 0; + + /* Material-ui buttons */ & a { - min-width: 24px !important; + float: left; + margin: 5px !important; + line-height: 34px !important; + } - & span { - font-size: 0 !important; - padding-left: 0 !important; - padding-right: 12px !important; + @media only screen and (max-width: 620px) { + & a { + min-width: 24px !important; + + & span { + font-size: 0 !important; + padding-left: 0 !important; + padding-right: 12px !important; + } } } } -} -.unparsed { - text-align: center; - margin-top: 12px; -} + .unparsed { + text-align: center; + margin-top: 12px; + } `; const getWinnerStyle = (radiantWin) => { @@ -238,44 +249,42 @@ const getWinnerStyle = (radiantWin) => { return radiantWin ? 'radiant' : 'dire'; }; -const MatchHeader = ({ match, user, strings }) => { +const MatchHeader = ({ match, strings }) => { if (!match) { return null; } - const mapPlayers = (key, radiant) => - player => - ((radiant === undefined || radiant === isRadiant(player.player_slot)) ? Number(player[key]) : null); - - const victorySection = match.radiant_win - ? ( - - - {match.radiant_team && match.radiant_team.name - ? `${match.radiant_team.name} ${strings.match_team_win}` - : strings.match_radiant_win - } - ) - : ( - - - {match.dire_team && match.dire_team.name - ? `${match.dire_team.name} ${strings.match_team_win}` - : strings.match_dire_win - } - ); + const mapPlayers = (key, radiant) => player => + (radiant === undefined || radiant === isRadiant(player.player_slot) + ? Number(player[key]) + : null); + + const victorySection = match.radiant_win ? ( + + + {match.radiant_team && match.radiant_team.name + ? `${match.radiant_team.name} ${strings.match_team_win}` + : strings.match_radiant_win} + + ) : ( + + + {match.dire_team && match.dire_team.name + ? `${match.dire_team.name} ${strings.match_team_win}` + : strings.match_dire_win} + + ); return (
- {match.radiant_win === null || match.radiant_win === undefined ? strings.td_no_result : victorySection} + {match.radiant_win === null || match.radiant_win === undefined + ? strings.td_no_result + : victorySection}
- { - match.radiant_score || match.players - .map(mapPlayers('kills', true)) - .reduce(sum, 0) - } + {match.radiant_score || + match.players.map(mapPlayers('kills', true)).reduce(sum, 0)}
@@ -285,24 +294,27 @@ const MatchHeader = ({ match, user, strings }) => { {transformations.duration(null, null, match.duration)} - {strings.match_ended} {transformations.start_time(null, null, match.start_time + match.duration)} + {strings.match_ended}{' '} + {transformations.start_time( + null, + null, + match.start_time + match.duration, + )}
- { - match.dire_score || match.players - .map(mapPlayers('kills', false)) - .reduce(sum, 0) - } + {match.dire_score || + match.players.map(mapPlayers('kills', false)).reduce(sum, 0)}
    - {match.league && + {match.league && (
  • league {match.league.name} -
  • } + + )}
  • {strings.match_id} {match.match_id} @@ -313,39 +325,55 @@ const MatchHeader = ({ match, user, strings }) => {
  • {strings.th_skill} - {(match.skill) ? strings[`skill_${match.skill}`] : strings.general_unknown} + {match.skill + ? strings[`skill_${match.skill}`] + : strings.general_unknown}
- {!match.version && - - {strings.tooltip_unparsed} - } + {!match.version && ( + {strings.tooltip_unparsed} + )}
: } containerElement={r} /> - {match.replay_url && + {match.replay_url && ( } href={match.replay_url} target="_blank" rel="noopener noreferrer" - />} + /> + )} } - href={`//dotacoach.org/Hire/OpenDota?matchID=${match.match_id}&userSteamId=${user && user.account_id}`} + label={strings.app_gamerzclass} + icon={ + GamerzClass + } + href="https://gamerzclass.com/products/johan-n0tail-sundstein" target="_blank" - rel="noopener noreferrer" + onclick={() => + ReactGA.event({ + category: 'sponsor', + action: 'gamerzclass', + label: 'matchPage', + }) + } /> } + icon={ + + } href="https://www.rivalry.com/opendota" target="_blank" rel="noopener noreferrer" diff --git a/src/components/Player/Header/PlayerButtons.jsx b/src/components/Player/Header/PlayerButtons.jsx index d575aafc18..7110bdd8dd 100644 --- a/src/components/Player/Header/PlayerButtons.jsx +++ b/src/components/Player/Header/PlayerButtons.jsx @@ -4,6 +4,7 @@ import { connect } from 'react-redux'; import FlatButton from 'material-ui/FlatButton'; import ActionUpdate from 'material-ui/svg-icons/navigation/refresh'; import styled from 'styled-components'; +import ReactGA from 'react-ga'; import { toggleShowForm as toggleShowFormAction } from '../../../actions/formActions'; const Styled = styled.div` @@ -37,41 +38,47 @@ const Styled = styled.div` class PlayerButtons extends React.Component { static propTypes = { playerId: PropTypes.string, - playerSoloCompetitiveRank: PropTypes.number, strings: PropTypes.shape({}), - } + }; - state = { disableRefresh: false } + state = { disableRefresh: false }; render() { - const { - playerId, - playerSoloCompetitiveRank, - strings, - } = this.props; + const { playerId, strings } = this.props; return ( -
+
} disabled={this.state.disableRefresh} onClick={() => { - fetch(`${process.env.REACT_APP_API_HOST}/api/players/${playerId}/refresh`, { method: 'POST' }); + fetch( + `${process.env.REACT_APP_API_HOST}/api/players/${playerId}/refresh`, + { method: 'POST' }, + ); this.setState({ disableRefresh: true }); }} label={strings.app_refresh_label} />
} - href={`https://dotacoach.org/Hire/OpenDota?userSteamId=${playerId}&playerMmr=${playerSoloCompetitiveRank}`} + icon={ + GamerzClass + } + href="https://gamerzclass.com/products/johan-n0tail-sundstein" + target="_blank" + onclick={() => + ReactGA.event({ + category: 'sponsor', + action: 'gamerzclass', + label: 'playerPage', + }) + } /> - ); + + ); } } @@ -84,4 +91,7 @@ const mapDispatchToProps = dispatch => ({ toggleShowForm: () => dispatch(toggleShowFormAction('tableFilter')), }); -export default connect(mapStateToProps, mapDispatchToProps)(PlayerButtons); +export default connect( + mapStateToProps, + mapDispatchToProps, +)(PlayerButtons); diff --git a/src/lang/en-US.json b/src/lang/en-US.json index 0a5b862cbe..2056ec6592 100644 --- a/src/lang/en-US.json +++ b/src/lang/en-US.json @@ -85,9 +85,7 @@ "app_tracked": "This user has visited recently, and replays of new matches will be automatically parsed.", "app_cheese_bought": "Cheese bought", "app_contributor": "This user has contributed to the development of the OpenDota project", - "app_dotacoach": "Ask a Coach", - "app_pvgna": "Find a Guide", - "app_pvgna_alt": "Find a Dota 2 Guide on Pvgna", + "app_gamerzclass": "Take N0tail's Masterclass", "app_rivalry": "Bet on Pro Matches - 1st Bet is FREE", "app_rivalry_team": "Bet on {0} Matches - 1st Bet is FREE", "app_refresh": "Refresh Match History: Queue a scan to find missing matches due to privacy settings", From c38b7d2c21c2ac03a5045f0c3ebb75d7cda8c68f Mon Sep 17 00:00:00 2001 From: Albert Cui Date: Mon, 9 Sep 2019 13:16:19 -0700 Subject: [PATCH 2/2] add homepage logo --- public/assets/images/gamerzclass-logo.png | Bin 0 -> 4518 bytes src/components/Home/Sponsors.jsx | 57 +++++++++++++--------- 2 files changed, 35 insertions(+), 22 deletions(-) create mode 100644 public/assets/images/gamerzclass-logo.png diff --git a/public/assets/images/gamerzclass-logo.png b/public/assets/images/gamerzclass-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2a45be20bcc18d0e7edeabfe5810a3aeb99f5079 GIT binary patch literal 4518 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 COR(7h literal 0 HcmV?d00001 diff --git a/src/components/Home/Sponsors.jsx b/src/components/Home/Sponsors.jsx index 93b31110e3..92b4a6c1cb 100644 --- a/src/components/Home/Sponsors.jsx +++ b/src/components/Home/Sponsors.jsx @@ -1,9 +1,9 @@ -import React from 'react'; -import FlatButton from 'material-ui/FlatButton'; -import { connect } from 'react-redux'; -import PropTypes from 'prop-types'; -import styled from 'styled-components'; -import { ButtonsDiv } from './Styled'; +import React from "react"; +import FlatButton from "material-ui/FlatButton"; +import { connect } from "react-redux"; +import PropTypes from "prop-types"; +import styled from "styled-components"; +import { ButtonsDiv } from "./Styled"; const StyledDiv = styled.div` display: flex; @@ -35,33 +35,46 @@ const StyledDiv = styled.div` const Sponsors = ({ strings }) => ( -
- {strings.home_sponsored_by} -
+
{strings.home_sponsored_by}
- - + + - + - + - + - { process.env.ENABLE_GOSUAI && - + {process.env.ENABLE_GOSUAI && ( + - } + + )}
- {strings.home_become_sponsor} - + {strings.home_become_sponsor} } href="//carry.opendota.com" /> @@ -70,11 +83,11 @@ const Sponsors = ({ strings }) => ( ); Sponsors.propTypes = { - strings: PropTypes.shape({}), + strings: PropTypes.shape({}) }; const mapStateToProps = state => ({ - strings: state.app.strings, + strings: state.app.strings }); export default connect(mapStateToProps)(Sponsors);