From a3131a6ee1b7079c467ac635672cb336836bb049 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Rodr=C3=ADguez=20Alsina?= Date: Fri, 7 Dec 2018 16:19:14 -0300 Subject: [PATCH] (feature) header and footer styles, created individual components for logos and social icons. --- src/App.js | 35 ++-- src/assets/images/SocialIcons/github.png | Bin 0 -> 457 bytes src/assets/images/SocialIcons/poa.png | Bin 0 -> 309 bytes src/assets/images/SocialIcons/telegram.png | Bin 0 -> 1863 bytes src/assets/images/SocialIcons/twitter.png | Bin 0 -> 1830 bytes src/assets/stylesheets/components/_App.scss | 12 ++ .../stylesheets/components/_Footer.scss | 44 +++++ .../stylesheets/components/_Header.scss | 19 ++ .../stylesheets/components/_LogoPOA.scss | 21 +++ .../stylesheets/components/_LogoSokol.scss | 21 +++ .../stylesheets/components/_SocialIcons.scss | 39 ++++ src/assets/stylesheets/components/_index.scss | 6 + .../stylesheets/helpers/_content-layout.scss | 16 ++ src/assets/stylesheets/helpers/_index.scss | 4 +- .../stylesheets/helpers/_variables.scss | 29 +-- src/assets/stylesheets/index.css | 171 +++++++++++++++++- src/assets/stylesheets/layout/_base.scss | 13 ++ src/components/Footer/index.js | 31 +--- src/components/Header/index.js | 14 +- src/components/Logo/index.js | 7 + src/components/LogoPOA/index.js | 10 + src/components/LogoPOA/logo.svg | 32 ++++ src/components/LogoSokol/index.js | 10 + src/components/LogoSokol/logo.svg | 32 ++++ src/components/SocialIcons/index.js | 45 +++++ src/utils/constants.js | 1 + src/utils/utils.js | 5 + 27 files changed, 552 insertions(+), 65 deletions(-) create mode 100644 src/assets/images/SocialIcons/github.png create mode 100644 src/assets/images/SocialIcons/poa.png create mode 100644 src/assets/images/SocialIcons/telegram.png create mode 100644 src/assets/images/SocialIcons/twitter.png create mode 100644 src/assets/stylesheets/components/_App.scss create mode 100644 src/assets/stylesheets/components/_Footer.scss create mode 100644 src/assets/stylesheets/components/_Header.scss create mode 100644 src/assets/stylesheets/components/_LogoPOA.scss create mode 100644 src/assets/stylesheets/components/_LogoSokol.scss create mode 100644 src/assets/stylesheets/components/_SocialIcons.scss create mode 100644 src/assets/stylesheets/helpers/_content-layout.scss create mode 100644 src/components/Logo/index.js create mode 100644 src/components/LogoPOA/index.js create mode 100644 src/components/LogoPOA/logo.svg create mode 100644 src/components/LogoSokol/index.js create mode 100644 src/components/LogoSokol/logo.svg create mode 100644 src/components/SocialIcons/index.js create mode 100644 src/utils/utils.js diff --git a/src/App.js b/src/App.js index 404f4f5..25293f4 100644 --- a/src/App.js +++ b/src/App.js @@ -1,7 +1,4 @@ -import './assets/stylesheets/index.css' import FileSaver from 'file-saver' -import Footer from './components/Footer' -import Header from './components/Header' import JSzip from 'jszip' import Keys from './components/Keys' import KeysManager from './utils/keysManager' @@ -11,7 +8,12 @@ import addressGenerator from './utils/addressGenerator' import getWeb3 from './utils/getWeb3' import networkAddresses from './utils/addresses' import swal from 'sweetalert' +import { Footer } from './components/Footer' +import { Header } from './components/Header' import { constants } from './utils/constants' +import { isTestnet } from './utils/utils' + +import './assets/stylesheets/index.css' function generateElement(msg) { let errorNode = document.createElement('div') @@ -31,22 +33,28 @@ class App extends Component { this.state = { web3Config: {}, mining: null, - isDisabledBtn: props.generateKeysIsDisabled + isDisabledBtn: props.generateKeysIsDisabled, + isTestnet: false } this.keysManager = null + getWeb3() .then(async web3Config => { return networkAddresses(web3Config) }) .then(async config => { const { web3Config, addresses } = config + this.keysManager = new KeysManager() await this.keysManager.init({ web3: web3Config.web3Instance, netId: web3Config.netId, addresses }) + + console.log('culo ' + isTestnet(web3Config.netId)) this.setState({ + isTestnet: isTestnet(web3Config.netId), isDisabledBtn: false, web3Config }) @@ -62,6 +70,7 @@ class App extends Component { } }) } + componentDidMount() { if (window.location.hash.indexOf('just-generate-keys') !== -1) { this.setState({ loading: true }) @@ -77,6 +86,7 @@ class App extends Component { }, 150) } } + async generateKeys(cb) { const mining = await addressGenerator() const voting = await addressGenerator() @@ -93,6 +103,7 @@ class App extends Component { payout } } + async generateZip({ mining, voting, payout, netIdName }) { const zip = new JSzip() zip.file(`${netIdName}_keys/mining_key_${mining.jsonStore.address}.json`, JSON.stringify(mining.jsonStore)) @@ -107,6 +118,7 @@ class App extends Component { FileSaver.saveAs(blob, `poa_network_validator_keys.zip`) }) } + async onClick() { this.setState({ loading: true }) const initialKey = this.state.web3Config.defaultAccount @@ -116,7 +128,7 @@ class App extends Component { } catch (e) { isValid = false } - console.log(isValid) + if (Number(isValid) !== 1) { this.setState({ loading: false }) const invalidKeyMsg = `The key is an invalid Initial key
@@ -142,7 +154,6 @@ class App extends Component { sender: initialKey }) .then(async receipt => { - console.log(receipt) if (receipt.status === true || receipt.status === '0x1') { this.setState({ loading: false }) swal('Congratulations!', 'Your keys are generated!', 'success') @@ -169,7 +180,6 @@ class App extends Component { } }) .catch(error => { - console.error(error.message) this.setState({ loading: false, keysGenerated: false }) let content = document.createElement('div') let msg @@ -189,6 +199,7 @@ class App extends Component { }) } } + render() { let loader = this.state.loading ? : '' let createKeyBtn = ( @@ -206,17 +217,19 @@ class App extends Component { ) let content + if (this.state.keysGenerated) { content = } else { content = createKeyBtn } + return ( -
-
+
+
{loader} -
{content}
-
+
{content}
+
) } diff --git a/src/assets/images/SocialIcons/github.png b/src/assets/images/SocialIcons/github.png new file mode 100644 index 0000000000000000000000000000000000000000..2fd000be1e7906ccf422f3a4b8cc174cbbf193fe GIT binary patch literal 457 zcmV;)0XF`LP)?K@^2&C5;ghwTQ$< z(I$-qZS)P&i6Fj%AZ!G!#n%Y>4tWbZwOLa5Q(2or(}>aWTs?uyvP&l1KrD9PV`pd1 z+_N)xa!KTz^KJ%h&dsP5#)a{}F;2hpX!w3^HGTjk28%g108dKu%rWW5)Rwq5H}<&8 z)j^;k`|o@%fK8>@;Fz?x-<|xe=~ymTQ|0bH;P~#8zG*q?GJ{kDZ>mt`nzH4nKl%Kc z;O9Bg4lM;_g*h7p7KnseX*ElZ4^_?%xQjfkoX)<|A6atTWsqaA4tBsbcu^YZUxDpZ zA?aF-C0~0i5I10%>FFs=FQaRyJ%T0f`jzPU@095x*O*JDaLZj+z*>41@b#rmUcvOa#;Y{A&U z+<1e(<8s3f-jEtbfz`|#^#s;C2kqzVFc--FSsx?8Au+*FfQ8|sozA1>3#(WfW-!m6 z=^?RxiOek4Acr?SM<3NG?CU!+-~B|AljC3Z-urA{O|2Myn#gv}XFW3i1YedyTFb8k zY#rv#N9~w4a!q=_r*Q{^w?@Sy5mTY8fIQo$ z;062bb`lD&|Zug$swxi$2sks^Sy4~s@axm=Qz;RF#Z&mq>`2d z3tIoA4UbI@WR%GfMNsiW2SImPL-~u5+p@SUYg#aC5gM!cr7>e#9sVu(Rh6?^cBVn zu4{=TSt^wRB{pE%d6E_cfutCcVF-jEoC(8~%Y@-{G#H}LQEbg}HPZkdqntIz+%S$j ztx3?WCavMr!-N7xmSu~i1C%GJ0Zb;I~wBx4X4SzQzb}|zdB-79_$7}^6ct>L^ z$Bm667wclTU>qBVhTAk(m8PvVW*4hrQWX*wp^jh$)%7Ft(SKXqnPzD<%V(>8A^WJQjCnC^*sI81icvyb;y6}{b2J_6>W#;l zSeGF1!ComU@zI9u6Sjsv~xS}H(9SuM?t z>#YWJ%$!@2ZP=4Xb+B3e3pdw)%~C1IMjoOTOX8kZ(rZRFabztCH*{Cm)-|pM9Cbr) z*lfe-quI!zfv9cNroWpx{xoXw|0JS4nf}Yl@bK{Jp-B14@{?!!i1tf+_WPHk;D_`b^6+S=L@_GJXbj-2_(H@f>yb;lE1#ZUeRq51dH-n3^y;?5ozM9fX2E`WK6P(pN&5bknQvD7E9T+Oiwk$1yeIWH z8R@LVemS@Ar$1WSe)rLQ+Xwy?;q6rp)7Y;Bd!O&IT!sVXDj_JkMEJqVm=v?pci~j=hi(CQ# literal 0 HcmV?d00001 diff --git a/src/assets/images/SocialIcons/twitter.png b/src/assets/images/SocialIcons/twitter.png new file mode 100644 index 0000000000000000000000000000000000000000..39ad2b2fb2be54cb670f1fc5c6ad2db57a9c7e5b GIT binary patch literal 1830 zcmbVNU1%It6rR{W(^@T-q$bdMnNVmTv-7vJyEAspCNsO)MK{KDp{e#Evom*hr`ef1 znVDoa!9wGMuFZqBR1ir)BGx`g4fsPqp%ha3qEF_@7bQqge2`eMB87Nof2JuU5*%iB z?%eyG@1F0RbI-mrGCXwnVD~|SAP#5J$|!!H@Si95h@JQS1X8!^UVPMzcJ{Mx-z!aU5t~B;L)@3(}~PYVL)< z;$+G5Y>B2Tl}f0>hmcdGSy2>ehNC%-!U)Qpu{^a(S#D2@L4mI37`A613;2v`9!+_1 z5_{T^VA=t#n`T3dFR2C0X8#*%ngQDNM&ToWwdB`oH9fA-n2cfVf z*@3EuoE$>sR+dLvEI^k1tP0>%R@Ds4r|$JtHLakcdN5A1PFFp3H{fhm%2=+aS{lqKaS}TfG7Mef#0by8 zC`0iDHBW^(Rik21=PAhPu^5DWK^L^TU)Wwj+LRx|mc5Sc<&+{sWMPn(Qv%B-V}q#_ zmyC&GG(0FPa#U&AzTz18q^afq$DwOd0Xe3M%fc|#BBX7rNP-|el8nm8!GXik<+sjf zWO>9v1*41?+|i*ykV(oBR*Xa_F2wpr1c$*F1|4G>>L~}ApkBI?u}!F&Qe!(yZP@BN zhe_PgmJXar8!oP|nPvw#11FoKvVncWCqq&-|1@JkD)yOdPHyM$?sD58t&||9te58Y z_11v7sNhvp2M!c*9qd&9;^Xz-u+&PbRfM?3(xk7I_M1^d9NkF5Bi;42Esd)M$KB8$ z25lIB1dSY8nA*W@dZD}bHg54hW|ViiIOqOJ3%J3S9NYah>j zaIDsGX}PhHZvGNluRN~ { - const footerClassName = netId in constants.NETWORKS && constants.NETWORKS[netId].TESTNET ? 'sokol' : '' - +export const Footer = ({ extraClassName = '', isTestnet = false }) => { return ( -