diff --git a/package-lock.json b/package-lock.json index 19f9dad..b591f6b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12567,14 +12567,6 @@ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "requires": { - "is-typedarray": "^1.0.0" - } - }, "ua-parser-js": { "version": "0.7.17", "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", @@ -14121,8 +14113,19 @@ "integrity": "sha1-fecPG4Py3jZHZ3IVa+z+9uNRbrM=", "requires": { "underscore": "1.8.3", - "web3-core-helpers": "1.0.0-beta.34", - "websocket": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2" + "web3-core-helpers": "1.0.0-beta.34" + }, + "dependencies": { + "websocket": { + "version": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2", + "from": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2", + "requires": { + "debug": "^2.2.0", + "nan": "^2.3.3", + "typedarray-to-buffer": "^3.1.2", + "yaeti": "^0.0.6" + } + } } }, "web3-shh": { @@ -14520,16 +14523,6 @@ } } }, - "websocket": { - "version": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2", - "from": "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible", - "requires": { - "debug": "^2.2.0", - "nan": "^2.3.3", - "typedarray-to-buffer": "^3.1.2", - "yaeti": "^0.0.6" - } - }, "websocket-driver": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", @@ -14781,11 +14774,6 @@ "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" }, - "yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc=" - }, "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", diff --git a/src/assets/images/Keys/kovan.svg b/src/assets/images/Keys/kovan.svg new file mode 100644 index 0000000..2177423 --- /dev/null +++ b/src/assets/images/Keys/kovan.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/images/MainImage/kovan/image.png b/src/assets/images/MainImage/kovan/image.png new file mode 100644 index 0000000..347a956 Binary files /dev/null and b/src/assets/images/MainImage/kovan/image.png differ diff --git a/src/assets/images/MainImage/kovan/image@2x.png b/src/assets/images/MainImage/kovan/image@2x.png new file mode 100644 index 0000000..9528569 Binary files /dev/null and b/src/assets/images/MainImage/kovan/image@2x.png differ diff --git a/src/assets/images/MainImage/kovan/image@3x.png b/src/assets/images/MainImage/kovan/image@3x.png new file mode 100644 index 0000000..c69b74d Binary files /dev/null and b/src/assets/images/MainImage/kovan/image@3x.png differ diff --git a/src/assets/stylesheets/components/_ButtonDownload.scss b/src/assets/stylesheets/components/_ButtonDownload.scss index 6800768..00b5185 100644 --- a/src/assets/stylesheets/components/_ButtonDownload.scss +++ b/src/assets/stylesheets/components/_ButtonDownload.scss @@ -25,6 +25,12 @@ $sw-ButtonDownload-height: 44px !default; @include button-shadow($xdai-orange); } + &#{ & }-kovan { + background-color: $kovan-cyan; + @include button-focus-active-hover($kovan-cyan); + @include button-shadow($kovan-cyan); + } + .ky-Keys_Block & { margin-top: auto; diff --git a/src/assets/stylesheets/components/_ButtonGenerate.scss b/src/assets/stylesheets/components/_ButtonGenerate.scss index ae1b10d..2f9eec4 100644 --- a/src/assets/stylesheets/components/_ButtonGenerate.scss +++ b/src/assets/stylesheets/components/_ButtonGenerate.scss @@ -25,6 +25,12 @@ $sw-ButtonGenerate-height: 44px !default; @include button-shadow($xdai-orange); } + &#{ & }-kovan { + background-color: $kovan-cyan; + @include button-focus-active-hover($kovan-cyan); + @include button-shadow($kovan-cyan); + } + .hm-Home & { width: 100%; diff --git a/src/assets/stylesheets/components/_Footer.scss b/src/assets/stylesheets/components/_Footer.scss index 53f7632..3f085cd 100644 --- a/src/assets/stylesheets/components/_Footer.scss +++ b/src/assets/stylesheets/components/_Footer.scss @@ -21,6 +21,10 @@ &#{ & }-dai { background-color: $xdai-gray; } + + &#{ & }-kovan { + background-color: $kovan-cyan; + } } .sw-Footer_Content { diff --git a/src/assets/stylesheets/components/_Header.scss b/src/assets/stylesheets/components/_Header.scss index d5d264f..9774cfe 100644 --- a/src/assets/stylesheets/components/_Header.scss +++ b/src/assets/stylesheets/components/_Header.scss @@ -20,6 +20,10 @@ &#{ & }-dai { background-color: $xdai-gray; } + + &#{ & }-kovan { + background-color: $kovan-cyan; + } } .sw-Header_Content { diff --git a/src/assets/stylesheets/components/_Keys.scss b/src/assets/stylesheets/components/_Keys.scss index 8fa0e6a..dc73416 100644 --- a/src/assets/stylesheets/components/_Keys.scss +++ b/src/assets/stylesheets/components/_Keys.scss @@ -10,6 +10,10 @@ $ky-Keys-gap: 40px; #{ $property }: $sokol-cyan; } + &#{ & }-kovan { + #{ $property }: $kovan-cyan; + } + } @mixin keys-color-variants($property) { @@ -109,6 +113,10 @@ $ky-Keys-gap: 40px; background-image: url('#{ $base-images-path }/Keys/dai.svg'); } + &#{ & }-kovan { + background-image: url('#{ $base-images-path }/Keys/kovan.svg'); + } + .ky-Keys_HashContainer & { margin-left: 3px; margin-top: -4px; diff --git a/src/assets/stylesheets/components/_Loading.scss b/src/assets/stylesheets/components/_Loading.scss index 3428bf4..0229325 100644 --- a/src/assets/stylesheets/components/_Loading.scss +++ b/src/assets/stylesheets/components/_Loading.scss @@ -22,6 +22,10 @@ &#{ & }-dai { background-color: rgba($xdai-orange, 0.5); } + + &#{ & }-kovan { + background-color: rgba($kovan-cyan, 0.5); + } } .ld-Loading_Animation { diff --git a/src/assets/stylesheets/components/_LogoKovan.scss b/src/assets/stylesheets/components/_LogoKovan.scss new file mode 100644 index 0000000..6114a30 --- /dev/null +++ b/src/assets/stylesheets/components/_LogoKovan.scss @@ -0,0 +1,20 @@ +.sw-LogoKovan { + display: block; + text-decoration: none; + + .sw-Header & { + height: 30px; + width: 178px; + } + + .sw-Footer & { + height: 26px; + } + +} + +.sw-LogoKovan_Image { + display: block; + height: 100%; + width: 100%; +} \ No newline at end of file diff --git a/src/assets/stylesheets/components/_MainImage.scss b/src/assets/stylesheets/components/_MainImage.scss index 4cbd78a..aeada36 100644 --- a/src/assets/stylesheets/components/_MainImage.scss +++ b/src/assets/stylesheets/components/_MainImage.scss @@ -28,4 +28,8 @@ &#{ & }-dai { @include image-retina('#{ $base-images-path }/MainImage/dai/image', 'png'); } + + &#{ & }-kovan { + @include image-retina('#{ $base-images-path }/MainImage/kovan/image', 'png'); + } } \ No newline at end of file diff --git a/src/assets/stylesheets/components/_index.scss b/src/assets/stylesheets/components/_index.scss index c513d9e..0cfe937 100644 --- a/src/assets/stylesheets/components/_index.scss +++ b/src/assets/stylesheets/components/_index.scss @@ -14,5 +14,6 @@ @import "LogoDai"; @import "LogoPOA"; @import "LogoSokol"; +@import "LogoKovan"; @import "MainImage"; @import "SocialIcons"; \ No newline at end of file diff --git a/src/assets/stylesheets/helpers/_variables.scss b/src/assets/stylesheets/helpers/_variables.scss index 1089052..0d20177 100644 --- a/src/assets/stylesheets/helpers/_variables.scss +++ b/src/assets/stylesheets/helpers/_variables.scss @@ -1,6 +1,7 @@ // brand colors $poa-purple: #5a2da5; $sokol-cyan: #8ce1d7; +$kovan-cyan: #8ce1d7; $xdai-orange: #fec042; $xdai-gray: #f2f6f8; diff --git a/src/assets/stylesheets/index.css b/src/assets/stylesheets/index.css index a7fb006..5483e4f 100644 --- a/src/assets/stylesheets/index.css +++ b/src/assets/stylesheets/index.css @@ -658,6 +658,13 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-color: #feaf0f; } .sw-ButtonDownload.sw-ButtonDownload-dai[disabled]:focus, .sw-ButtonDownload.sw-ButtonDownload-dai[disabled].active, .sw-ButtonDownload.sw-ButtonDownload-dai[disabled]:hover { background-color: #fec042; } + .sw-ButtonDownload.sw-ButtonDownload-kovan { + background-color: #8ce1d7; + box-shadow: 0 5px 10px 0 rgba(140, 225, 215, 0.3); } + .sw-ButtonDownload.sw-ButtonDownload-kovan:focus, .sw-ButtonDownload.sw-ButtonDownload-kovan:active, .sw-ButtonDownload.sw-ButtonDownload-kovan:hover { + background-color: #64d6c9; } + .sw-ButtonDownload.sw-ButtonDownload-kovan[disabled]:focus, .sw-ButtonDownload.sw-ButtonDownload-kovan[disabled].active, .sw-ButtonDownload.sw-ButtonDownload-kovan[disabled]:hover { + background-color: #8ce1d7; } .ky-Keys_Block .sw-ButtonDownload { margin-top: auto; } @media (min-width: 992px) { @@ -722,6 +729,13 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-color: #feaf0f; } .sw-ButtonGenerate.sw-ButtonGenerate-dai[disabled]:focus, .sw-ButtonGenerate.sw-ButtonGenerate-dai[disabled].active, .sw-ButtonGenerate.sw-ButtonGenerate-dai[disabled]:hover { background-color: #fec042; } + .sw-ButtonGenerate.sw-ButtonGenerate-kovan { + background-color: #8ce1d7; + box-shadow: 0 5px 10px 0 rgba(140, 225, 215, 0.3); } + .sw-ButtonGenerate.sw-ButtonGenerate-kovan:focus, .sw-ButtonGenerate.sw-ButtonGenerate-kovan:active, .sw-ButtonGenerate.sw-ButtonGenerate-kovan:hover { + background-color: #64d6c9; } + .sw-ButtonGenerate.sw-ButtonGenerate-kovan[disabled]:focus, .sw-ButtonGenerate.sw-ButtonGenerate-kovan[disabled].active, .sw-ButtonGenerate.sw-ButtonGenerate-kovan[disabled]:hover { + background-color: #8ce1d7; } .hm-Home .sw-ButtonGenerate { width: 100%; } @media (min-width: 768px) { @@ -760,6 +774,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-color: #8ce1d7; } .sw-Footer.sw-Footer-dai { background-color: #f2f6f8; } + .sw-Footer.sw-Footer-kovan { + background-color: #8ce1d7; } .sw-Footer_Content { max-width: 100%; @@ -814,6 +830,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-color: #8ce1d7; } .sw-Header.sw-Header-dai { background-color: #f2f6f8; } + .sw-Header.sw-Header-kovan { + background-color: #8ce1d7; } .sw-Header_Content { max-width: 100%; @@ -935,6 +953,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { border-color: #5a2da5; } .ky-Keys_Block.ky-Keys_Block-sokol { border-color: #8ce1d7; } + .ky-Keys_Block.ky-Keys_Block-kovan { + border-color: #8ce1d7; } .ky-Keys_BlockTitle { color: #333; @@ -947,6 +967,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { color: #5a2da5; } .ky-Keys_BlockTitle.ky-Keys_BlockTitle-sokol { color: #8ce1d7; } + .ky-Keys_BlockTitle.ky-Keys_BlockTitle-kovan { + color: #8ce1d7; } .ky-Keys_BlockTitle.ky-Keys_BlockTitle-dai { color: #333; } @@ -966,6 +988,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { color: #5a2da5; } .ky-Keys_Hash.ky-Keys_Hash-sokol { color: #8ce1d7; } + .ky-Keys_Hash.ky-Keys_Hash-kovan { + color: #8ce1d7; } .ky-Keys_Hash.ky-Keys_Hash-dai { color: #333; } @@ -983,6 +1007,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-image: url("../../assets/images/Keys/sokol.svg"); } .ky-Keys_Copy.ky-Keys_Copy-dai { background-image: url("../../assets/images/Keys/dai.svg"); } + .ky-Keys_Copy.ky-Keys_Copy-kovan { + background-image: url("../../assets/images/Keys/kovan.svg"); } .ky-Keys_HashContainer .ky-Keys_Copy { margin-left: 3px; margin-top: -4px; } @@ -1033,6 +1059,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { color: #5a2da5; } .ky-Keys_Warning.ky-Keys_Warning-sokol { color: #8ce1d7; } + .ky-Keys_Warning.ky-Keys_Warning-kovan { + color: #8ce1d7; } .ky-Keys_Warning.ky-Keys_Warning-dai { color: #333; } @@ -1047,6 +1075,9 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { .ky-Keys_WarningIconPath.ky-Keys_WarningIconPath-sokol { fill: #8ce1d7; } +.ky-Keys_WarningIconPath.ky-Keys_WarningIconPath-kovan { + fill: #8ce1d7; } + .ky-Keys_WarningIconPath.ky-Keys_WarningIconPath-dai { fill: #fec042; } @@ -1068,6 +1099,8 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { background-color: rgba(140, 225, 215, 0.5); } .ld-Loading.ld-Loading-dai { background-color: rgba(254, 192, 66, 0.5); } + .ld-Loading.ld-Loading-kovan { + background-color: rgba(140, 225, 215, 0.5); } .ld-Loading_Animation { display: flex; @@ -1152,6 +1185,20 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { height: 100%; width: 100%; } +.sw-LogoKovan { + display: block; + text-decoration: none; } + .sw-Header .sw-LogoKovan { + height: 30px; + width: 178px; } + .sw-Footer .sw-LogoKovan { + height: 26px; } + +.sw-LogoKovan_Image { + display: block; + height: 100%; + width: 100%; } + .hm-MainImage { align-items: center; display: flex; @@ -1202,6 +1249,14 @@ body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) { @media (-webkit-min-device-pixel-ratio: 3), (-moz-min-device-pixel-ratio: 3), (min-resolution: 288dpi), (min-resolution: 3dppx) { .hm-MainImage_Img.hm-MainImage_Img-dai { background-image: url("../../assets/images/MainImage/dai/image@3x.png"); } } + .hm-MainImage_Img.hm-MainImage_Img-kovan { + background-image: url("../../assets/images/MainImage/kovan/image.png"); } + @media (-webkit-min-device-pixel-ratio: 2), (-moz-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) { + .hm-MainImage_Img.hm-MainImage_Img-kovan { + background-image: url("../../assets/images/MainImage/kovan/image@2x.png"); } } + @media (-webkit-min-device-pixel-ratio: 3), (-moz-min-device-pixel-ratio: 3), (min-resolution: 288dpi), (min-resolution: 3dppx) { + .hm-MainImage_Img.hm-MainImage_Img-kovan { + background-image: url("../../assets/images/MainImage/kovan/image@3x.png"); } } .ft-SocialIcons { align-items: center; diff --git a/src/components/Loading/index.js b/src/components/Loading/index.js index 0fdea70..175fcbb 100644 --- a/src/components/Loading/index.js +++ b/src/components/Loading/index.js @@ -2,12 +2,14 @@ import React from 'react' import xDaiLogo from './xdai.svg' import poaLogo from './core.svg' import sokolLogo from './sokol.svg' +import kovanLogo from './kovan.svg' const getLogoSrc = networkBranch => { return ( { core: poaLogo, sokol: sokolLogo, + kovan: kovanLogo, dai: xDaiLogo }[networkBranch] || poaLogo ) diff --git a/src/components/Loading/kovan.svg b/src/components/Loading/kovan.svg new file mode 100644 index 0000000..6c8d6ff --- /dev/null +++ b/src/components/Loading/kovan.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/Logo/index.js b/src/components/Logo/index.js index ffcaaba..a9a49bc 100644 --- a/src/components/Logo/index.js +++ b/src/components/Logo/index.js @@ -1,14 +1,16 @@ import React from 'react' import { LogoPOA } from '../LogoPOA' import { LogoSokol } from '../LogoSokol' +import { LogoKovan } from '../LogoKovan' import { LogoDai } from '../LogoDai' export const Logo = ({ href = null, extraClass = '', networkBranch = '' }) => { switch (networkBranch) { case 'sokol': return + case 'kovan': + return case 'dai': - case 'dai-test': return case 'poa': default: diff --git a/src/components/LogoDai/index.js b/src/components/LogoDai/index.js index 47f16fc..2c11a52 100644 --- a/src/components/LogoDai/index.js +++ b/src/components/LogoDai/index.js @@ -1,10 +1,10 @@ import React from 'react' -import logoSokol from './logo.svg' +import logoDai from './logo.svg' export const LogoDai = ({ href = null, extraClass = '' }) => { return ( - + ) } diff --git a/src/components/LogoKovan/index.js b/src/components/LogoKovan/index.js new file mode 100644 index 0000000..7c966d1 --- /dev/null +++ b/src/components/LogoKovan/index.js @@ -0,0 +1,10 @@ +import React from 'react' +import logoKovan from './logo.svg' + +export const LogoKovan = ({ href = null, extraClass = '' }) => { + return ( + + + + ) +} diff --git a/src/components/LogoKovan/logo.svg b/src/components/LogoKovan/logo.svg new file mode 100644 index 0000000..fdf42ff --- /dev/null +++ b/src/components/LogoKovan/logo.svg @@ -0,0 +1,32 @@ + + + + + + Ceremony App + + diff --git a/src/components/SocialIcons/index.js b/src/components/SocialIcons/index.js index e52c094..1b71350 100644 --- a/src/components/SocialIcons/index.js +++ b/src/components/SocialIcons/index.js @@ -9,7 +9,8 @@ const getIconBackgroundColor = networkBranch => { { dai: '#e3e7e9', poa: '#fff', - sokol: '#fff' + sokol: '#fff', + kovan: '#fff' }[networkBranch] || '#fff' ) } @@ -19,7 +20,8 @@ const getIconColor = networkBranch => { { dai: '#333', poa: '#5c34a2', - sokol: '#6ac9b9' + sokol: '#6ac9b9', + kovan: '#6ac9b9' }[networkBranch] || '#5c34a2' ) } diff --git a/src/utils/constants.js b/src/utils/constants.js index 0659eea..c1032ff 100644 --- a/src/utils/constants.js +++ b/src/utils/constants.js @@ -10,6 +10,11 @@ constants.userDeniedTransactionPattern = 'User denied transaction' constants.baseURL = '/poa-dapps-keys-generation' constants.NETWORKS = { + '42': { + NAME: 'Kovan', + BRANCH: 'kovan', + TESTNET: true + }, '77': { NAME: 'Sokol', BRANCH: 'sokol', @@ -20,11 +25,6 @@ constants.NETWORKS = { BRANCH: 'core', TESTNET: false }, - '79': { - NAME: 'Dai-Test', - BRANCH: 'dai-test', - TESTNET: true - }, '100': { NAME: 'Dai', BRANCH: 'dai', diff --git a/src/utils/keysManager.js b/src/utils/keysManager.js index 97bc515..3068a07 100644 --- a/src/utils/keysManager.js +++ b/src/utils/keysManager.js @@ -12,7 +12,7 @@ export default class KeysManager { this.instance = new web3.eth.Contract(KeysManagerAbi, KEYS_MANAGER_ADDRESS) const networkName = constants.NETWORKS[netId].NAME.toLowerCase() - if (networkName === 'dai-test' || networkName === 'dai') { + if (networkName === 'dai') { this.gasPrice = web3.utils.toWei('0', 'gwei') } else { this.gasPrice = web3.utils.toWei('2', 'gwei')