From aeb63dfa251860d73370c0eac2dd59235e8941e5 Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 30 Sep 2019 07:44:53 +0100 Subject: [PATCH 01/30] update: Added Bootstrap modules and cleaned up modules --- package.json | 52 +- src/app/index.tsx | 4 +- wireframes/placeholder | 0 yarn.lock | 1152 ++++++++++++++++++++++++++++++---------- 4 files changed, 903 insertions(+), 305 deletions(-) create mode 100644 wireframes/placeholder diff --git a/package.json b/package.json index c6cfdb9..3b5f8a0 100644 --- a/package.json +++ b/package.json @@ -3,17 +3,24 @@ "version": "1.0.0", "private": true, "dependencies": { - "js-scrypt": "^0.2.0", + "bootstrap": "^4.3.1", + "evm-lite-client": "^1.3.7", + "evm-lite-consensus": "^1.3.7", + "evm-lite-core": "^1.3.7", + "evm-lite-datadir": "^1.3.7", + "evm-lite-keystore": "^1.3.7", + "evm-lite-utils": "^1.3.7", "random-hash": "^4.0.1", - "react": "^16.9.0", - "react-dom": "^16.9.0", + "react": "^16.10.1", + "react-bootstrap": "^1.0.0-beta.12", + "react-dom": "^16.10.1", "react-redux": "^7.1.1", "react-spring": "^8.0.27", - "react-toastify": "^5.3.2", + "react-toastify": "^5.4.0", "redux": "^4.0.4", "redux-persist": "^6.0.0", "redux-thunk": "^2.3.0", - "styled-components": "^4.3.2" + "styled-components": "^4.4.0" }, "scripts": { "prepublish": "yarn run build", @@ -25,52 +32,51 @@ "pkg:mac": "electron-packager ./dist \"Monet Wallet\" --platform=darwin --target=zip --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.icns", "pkg:linux": "electron-packager ./dist \"Monet Wallet\" --target=zip --platform=linux --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.png", "pkg:win": "electron-packager ./dist \"Monet Wallet\" --platform=win32 --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.ico", - "linkalldev": "yarn link evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils" + "linkalldev": "yarn link evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils", + "addalldev": "yarn add evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils" }, "devDependencies": { - "@babel/core": "^7.6.0", + "@babel/core": "^7.6.2", "@types/mkdirp": "^0.5.2", - "@types/node": "^12.7.5", - "@types/react": "^16.9.2", + "@types/node": "^12.7.8", + "@types/react": "^16.9.3", "@types/react-alert": "^5.2.0", - "@types/react-dom": "^16.9.0", - "@types/react-redux": "^7.1.2", + "@types/react-dom": "^16.9.1", + "@types/react-redux": "^7.1.4", "@types/react-router-dom": "^4.3.5", "@types/redux-logger": "^3.0.7", "@types/styled-components": "^4.1.19", - "@types/webpack": "^4.39.1", + "@types/webpack": "^4.39.2", "autoprefixer": "^9.6.1", "babel-loader": "^8.0.6", "babel-preset-es2015-node": "^6.1.1", "babel-preset-react": "^6.24.1", "concurrently": "^4.1.2", "css-loader": "^3.2.0", - "electron": "^6.0.9", + "electron": "^6.0.10", "electron-devtools-installer": "^2.2.4", - "electron-packager": "^14.0.5", + "electron-packager": "^14.0.6", "file-loader": "^4.2.0", "fork-ts-checker-webpack-plugin": "^1.5.0", "html-webpack-plugin": "^3.2.0", "postcss-flexbugs-fixes": "^4.1.0", "postcss-loader": "^3.0.0", - "react-dev-utils": "^9.0.3", - "react-router-dom": "^5.0.1", + "react-dev-utils": "^9.0.4", + "react-router-dom": "^5.1.1", "redux-logger": "latest", - "semantic-ui-css": "^2.4.1", - "semantic-ui-react": "^0.88.1", "source-map-loader": "^0.2.4", "standard-loader": "^7.0.0", "style-loader": "^1.0.0", - "ts-loader": "^6.1.0", + "ts-loader": "^6.2.0", "ts-node": "^8.4.1", "tslint": "^5.20.0", "tslint-config-prettier": "^1.18.0", "tslint-loader": "^3.5.4", - "tslint-react": "^4.0.0", + "tslint-react": "^4.1.0", "typescript": "^3.6.3", "url-loader": "^2.1.0", - "webpack": "^4.40.2", - "webpack-cli": "^3.3.8", - "webpack-dev-server": "^3.8.0" + "webpack": "^4.41.0", + "webpack-cli": "^3.3.9", + "webpack-dev-server": "^3.8.1" } } diff --git a/src/app/index.tsx b/src/app/index.tsx index f02600d..0f1b9dc 100644 --- a/src/app/index.tsx +++ b/src/app/index.tsx @@ -8,10 +8,10 @@ import { PersistGate } from 'redux-persist/integration/react'; import getStores from '../store'; import App from './App'; +import 'bootstrap/dist/css/bootstrap.min.css'; import 'react-toastify/dist/ReactToastify.css'; -import 'semantic-ui-css/semantic.min.css'; - import '../index.css'; + const stores = getStores(); ReactDOM.render( diff --git a/wireframes/placeholder b/wireframes/placeholder new file mode 100644 index 0000000..e69de29 diff --git a/yarn.lock b/yarn.lock index c3249f3..0da9d84 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14,17 +14,17 @@ dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.0.tgz#9b00f73554edd67bebc86df8303ef678be3d7b48" - integrity sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw== +"@babel/core@^7.6.2": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.2.tgz#069a776e8d5e9eefff76236bc8845566bd31dd91" + integrity sha512-l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.0" - "@babel/helpers" "^7.6.0" - "@babel/parser" "^7.6.0" + "@babel/generator" "^7.6.2" + "@babel/helpers" "^7.6.2" + "@babel/parser" "^7.6.2" "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.0" + "@babel/traverse" "^7.6.2" "@babel/types" "^7.6.0" convert-source-map "^1.1.0" debug "^4.1.0" @@ -45,16 +45,15 @@ source-map "^0.5.0" trim-right "^1.0.1" -"@babel/generator@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.0.tgz#e2c21efbfd3293ad819a2359b448f002bfdfda56" - integrity sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA== +"@babel/generator@^7.6.2": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.2.tgz#dac8a3c2df118334c2a29ff3446da1636a8f8c03" + integrity sha512-j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ== dependencies: "@babel/types" "^7.6.0" jsesc "^2.5.1" lodash "^4.17.13" source-map "^0.5.0" - trim-right "^1.0.1" "@babel/helper-annotate-as-pure@^7.0.0": version "7.0.0" @@ -93,13 +92,13 @@ dependencies: "@babel/types" "^7.4.4" -"@babel/helpers@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.6.0.tgz#21961d16c6a3c3ab597325c34c465c0887d31c6e" - integrity sha512-W9kao7OBleOjfXtFGgArGRX6eCP0UEcA2ZWEWNkJdRZnHhW4eEbeswbG3EwaRsnQUAEGWYgMq1HsIXuNNNy2eQ== +"@babel/helpers@^7.6.2": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.6.2.tgz#681ffe489ea4dcc55f23ce469e58e59c1c045153" + integrity sha512-3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA== dependencies: "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.0" + "@babel/traverse" "^7.6.2" "@babel/types" "^7.6.0" "@babel/highlight@^7.0.0": @@ -121,6 +120,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.0.tgz#3e05d0647432a8326cb28d0de03895ae5a57f39b" integrity sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ== +"@babel/parser@^7.6.2": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.2.tgz#205e9c95e16ba3b8b96090677a67c9d6075b70a1" + integrity sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg== + "@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.2": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" @@ -135,6 +139,13 @@ dependencies: regenerator-runtime "^0.13.2" +"@babel/runtime@^7.4.5": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.2.tgz#c3d6e41b304ef10dcf13777a33e7694ec4a9a6dd" + integrity sha512-EXxN64agfUqqIGeEjI5dL5z0Sw0ZwWo1mLTi4mQowCZ42O59b7DRpZAnTC6OqdF28wMBMFKNb/4uFGrVaigSpg== + dependencies: + regenerator-runtime "^0.13.2" + "@babel/template@^7.1.0": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" @@ -168,16 +179,16 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/traverse@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.0.tgz#389391d510f79be7ce2ddd6717be66d3fed4b516" - integrity sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ== +"@babel/traverse@^7.6.2": + version "7.6.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.2.tgz#b0e2bfd401d339ce0e6c05690206d1e11502ce2c" + integrity sha512-8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.0" + "@babel/generator" "^7.6.2" "@babel/helper-function-name" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.6.0" + "@babel/parser" "^7.6.2" "@babel/types" "^7.6.0" debug "^4.1.0" globals "^11.1.0" @@ -243,36 +254,33 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== -"@semantic-ui-react/event-stack@^3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@semantic-ui-react/event-stack/-/event-stack-3.1.0.tgz#aadbe4a28b0dd7703c5f451640d0fefe66dd9208" - integrity sha512-WHtU9wutZByZtFZxzj4BVEk+rvWldZpZhRcyv6d84+XLSolm83zLHYJLTACGuSl6Xa/xpgVXquvm9GyMudkJYg== +"@react-bootstrap/react-popper@1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@react-bootstrap/react-popper/-/react-popper-1.2.1.tgz#4edf4851d5b4dcf2eb6b264ebbed1a7b7654177b" + integrity sha512-4l3q7LcZEhrSkI4d3Ie3g4CdrXqqTexXX4PFT45CB0z5z2JUbaxgRwKNq7r5j2bLdVpZm+uvUGqxJw8d9vgbJQ== dependencies: - exenv "^1.2.2" - prop-types "^15.6.2" + babel-runtime "6.x.x" + create-react-context "^0.2.1" + popper.js "^1.14.4" + prop-types "^15.6.1" + typed-styles "^0.0.5" + warning "^3.0.0" + +"@restart/context@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@restart/context/-/context-2.1.4.tgz#a99d87c299a34c28bd85bb489cb07bfd23149c02" + integrity sha512-INJYZQJP7g+IoDUh/475NlGiTeMfwTXUEr3tmRneckHIxNolGOW9CTq83S8cxq0CgJwwcMzMJFchxvlwe7Rk8Q== + +"@restart/hooks@^0.3.11": + version "0.3.14" + resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.3.14.tgz#1e0f045aadf0b06229b58eeba91351d90fb9452a" + integrity sha512-k57+iyGr6o1XHeWWsGe5aMHKYcw7fukL6mCE+ZrPjtt1gXei5wCUxj71yQYfFbNjg0z5xxX8Els/UmyJiEn4nw== "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== -"@stardust-ui/react-component-event-listener@~0.38.0": - version "0.38.0" - resolved "https://registry.yarnpkg.com/@stardust-ui/react-component-event-listener/-/react-component-event-listener-0.38.0.tgz#1787faded94b40ad41226e6289baf13e701c6e7f" - integrity sha512-sIP/e0dyOrrlb8K7KWumfMxj/gAifswTBC4o68Aa+C/GA73ccRp/6W1VlHvF/dlOR4KLsA+5SKnhjH36xzPsWg== - dependencies: - "@babel/runtime" "^7.1.2" - prop-types "^15.7.2" - -"@stardust-ui/react-component-ref@~0.38.0": - version "0.38.0" - resolved "https://registry.yarnpkg.com/@stardust-ui/react-component-ref/-/react-component-ref-0.38.0.tgz#52d555f2d5edd213c923c93a106f7de940e427ef" - integrity sha512-xjs6WnvJVueSIXMWw0C3oWIgAPpcD03qw43oGOjUXqFktvpNkB73JoKIhS4sCrtQxBdct75qqr4ZL6JiyPcESw== - dependencies: - "@babel/runtime" "^7.1.2" - prop-types "^15.7.2" - react-is "^16.6.3" - "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -285,6 +293,13 @@ resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== +"@types/bn.js@^4.11.4": + version "4.11.5" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-4.11.5.tgz#40e36197433f78f807524ec623afcf0169ac81dc" + integrity sha512-AEAZcIZga0JgVMHNtl1CprA/hXX7/wPt79AgR4XqaDt7jyj3QWYw6LPoOiznPtugDmlubUnAahMs2PFxGcQrng== + dependencies: + "@types/node" "*" + "@types/events@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -334,10 +349,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.18.tgz#b7d45fc950e6ffd7edc685e890d13aa7b8535dce" integrity sha512-ryO3Q3++yZC/+b8j8BdKd/dn9JlzlHBPdm80656xwYUdmPkpTGTjkAdt6BByiNupGPE8w0FhBgvYy/fX9hRNGQ== -"@types/node@^12.7.5": - version "12.7.5" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.5.tgz#e19436e7f8e9b4601005d73673b6dc4784ffcc2f" - integrity sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w== +"@types/node@^12.7.8": + version "12.7.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.8.tgz#cb1bf6800238898bc2ff6ffa5702c3cadd350708" + integrity sha512-FMdVn84tJJdV+xe+53sYiZS4R5yn1mAIxfj+DVoNiQjTYz1+OYmjwEZr1ev9nU0axXwda0QDbYl06QHanRVH3A== "@types/prop-types@*": version "15.7.1" @@ -351,10 +366,10 @@ dependencies: "@types/react" "*" -"@types/react-dom@^16.9.0": - version "16.9.0" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.0.tgz#ba6ddb00bf5de700b0eb91daa452081ffccbfdea" - integrity sha512-OL2lk7LYGjxn4b0efW3Pvf2KBVP0y1v3wip1Bp7nA79NkOpElH98q3WdCEdDj93b2b0zaeBG9DvriuKjIK5xDA== +"@types/react-dom@^16.9.1": + version "16.9.1" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.1.tgz#79206237cba9532a9f870b1cd5428bef6b66378c" + integrity sha512-1S/akvkKr63qIUWVu5IKYou2P9fHLb/P2VAwyxVV85JGaGZTcUniMiTuIqM3lXFB25ej6h+CYEQ27ERVwi6eGA== dependencies: "@types/react" "*" @@ -366,10 +381,10 @@ "@types/prop-types" "*" "@types/react" "*" -"@types/react-redux@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.2.tgz#02303b77d87e54f327c09507cf80ee3ca3063898" - integrity sha512-Iim6UCtD0mZX9U3jBuT6ZObBZ8UlakoOgefiRgi5wakfbNnXd3TUwwUMgi3Ijc0fxsPLZ5ULoz0oDy15YIaLmQ== +"@types/react-redux@^7.1.4": + version "7.1.4" + resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.4.tgz#e0d02a073e730b8b58a6341bddca2ea692ff0bce" + integrity sha512-SUV/7d+4L7C1Db/D4pqASgN1V1U2HnDEhEol9lYpPSguS76xFboZzf5ha2hTz6v31cUewyC7WksMh1q8JxhebQ== dependencies: "@types/hoist-non-react-statics" "^3.3.0" "@types/react" "*" @@ -401,10 +416,10 @@ "@types/prop-types" "*" csstype "^2.2.0" -"@types/react@^16.9.2": - version "16.9.2" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.2.tgz#6d1765431a1ad1877979013906731aae373de268" - integrity sha512-jYP2LWwlh+FTqGd9v7ynUKZzjj98T8x7Yclz479QdRhHfuW9yQ+0jjnD31eXSXutmBpppj5PYNLYLRfnZJvcfg== +"@types/react@^16.9.3": + version "16.9.3" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.3.tgz#6d13251e441a3e67fb60d719d1fc8785b984a2ec" + integrity sha512-Ogb2nSn+2qQv5opoCv7Ls5yFxtyrdUYxp5G+SWTrlGk7dmFKw331GiezCgEZj9U7QeXJi1CDtws9pdXU1zUL4g== dependencies: "@types/prop-types" "*" csstype "^2.2.0" @@ -451,10 +466,10 @@ "@types/source-list-map" "*" source-map "^0.6.1" -"@types/webpack@^4.39.1", "@types/webpack@^4.4.31": - version "4.39.1" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.39.1.tgz#d76cd551cc851198f67f75ff3e26551d204530e9" - integrity sha512-rgO9ihNu/l72Sjx3shqwc9r6gi+tOMsqxhMEZhOEVIZt82GFOeUyEdpTk1BO2HqEHLS/XJW8ldUTIIfIMMyYFQ== +"@types/webpack@^4.39.2": + version "4.39.2" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.39.2.tgz#fcaa85607a9bdd0e8f86a350f239ff08aede8584" + integrity sha512-3c7+vcmyyIi3RBoOdXs8k3E9rQVIy6yOBqK0DFk6lnJ76JUfbDBWbEf1JflzyPQf56W4ToE+2YPnbxbucniW5w== dependencies: "@types/anymatch" "*" "@types/node" "*" @@ -637,7 +652,12 @@ acorn@^6.2.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== -address@1.1.0, address@^1.0.1: +address@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" + integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== + +address@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/address/-/address-1.1.0.tgz#ef8e047847fcd2c5b6f50c16965f924fd99fe709" integrity sha512-4diPfzWbLEIElVG4AnqP+00SULlPzNuyJFNnmMrLgyaxG6tZXJ1sn7mjBu4fHrJE+Yp/jgylOweJn2xsLMFggQ== @@ -752,10 +772,10 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= +array-buffer-to-hex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-buffer-to-hex/-/array-buffer-to-hex-1.0.0.tgz#9c76e53010ef7bf7bf8a27ebbb41d24e1d83edf4" + integrity sha512-arycdkxgK1cj6s03GDb96tlCxOl1n3kg9M2OHseUc6Pqyqp+lgfceFPmG507eI5V+oxOSEnlOw/dFc7LXBXF4Q== array-find-index@^1.0.1: version "1.0.2" @@ -772,16 +792,6 @@ array-flatten@^2.1.0: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI= - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -804,6 +814,11 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= +asap@~2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= + asar@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/asar/-/asar-2.0.1.tgz#8518a1c62c238109c15a5f742213e83a09b9fd38" @@ -1165,7 +1180,7 @@ babel-preset-react@^6.24.1: babel-plugin-transform-react-jsx-source "^6.22.0" babel-preset-flow "^6.23.0" -babel-runtime@^6.22.0, babel-runtime@^6.26.0: +babel-runtime@6.x.x, babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= @@ -1259,17 +1274,43 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bignumber.js@^7.0.0: + version "7.2.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" + integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== + +bignumber.js@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.0.tgz#805880f84a329b5eac6e7cb6f8274b6d82bdf075" + integrity sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A== + +"bignumber.js@git+https://github.com/frozeman/bignumber.js-nolookahead.git": + version "2.0.7" + resolved "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934" + binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== +bindings@^1.2.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + bluebird@^3.1.1, bluebird@^3.5.0, bluebird@^3.5.5: version "3.5.5" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha1-UzRK2xRhehP26N0s4okF0cC6MhU= + +bn.js@4.11.8, bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.6, bn.js@^4.11.8, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== @@ -1307,6 +1348,11 @@ boolbase@~1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= +bootstrap@^4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz#280ca8f610504d99d7b6b4bfc4b68cec601704ac" + integrity sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag== + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1355,7 +1401,7 @@ browserify-aes@^1.0.0, browserify-aes@^1.0.4: inherits "^2.0.1" safe-buffer "^5.0.1" -browserify-cipher@^1.0.0: +browserify-cipher@^1.0.0, browserify-cipher@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== @@ -1402,7 +1448,16 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" -browserslist@4.6.6, browserslist@^4.6.3: +browserslist@4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz#9ee89225ffc07db03409f2fee524dc8227458a17" + integrity sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA== + dependencies: + caniuse-lite "^1.0.30000989" + electron-to-chromium "^1.3.247" + node-releases "^1.1.29" + +browserslist@^4.6.3: version "4.6.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== @@ -1439,6 +1494,11 @@ buffer-indexof@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== +buffer-to-arraybuffer@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a" + integrity sha1-YGSkD6dutDxyOrqe+PbhIW0QURo= + buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" @@ -1582,6 +1642,11 @@ caniuse-lite@^1.0.30000980, caniuse-lite@^1.0.30000984: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000988.tgz#742f35ec1b8b75b9628d705d7652eea1fef983db" integrity sha512-lPj3T8poYrRc/bniW5SQPND3GRtSrQdUM/R4mCYTbZxyi3jQiggLvZH4+BYUuX0t4TXjU+vMM7KFDQg+rSzZUQ== +caniuse-lite@^1.0.30000989: + version "1.0.30000997" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000997.tgz#ba44a606804f8680894b7042612c2c7f65685b7e" + integrity sha512-BQLFPIdj2ntgBNWp9Q64LGUIEmvhKkzzHhUHR3CD5A9Lb7ZKF20/+sgadhFap69lk5XmK1fTUleDclaRFvgVUA== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -1612,7 +1677,7 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.6: +chokidar@^2.0.2, chokidar@^2.0.4: version "2.1.6" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" integrity sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g== @@ -1631,6 +1696,25 @@ chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.6: optionalDependencies: fsevents "^1.2.7" +chokidar@^2.1.8: + version "2.1.8" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + glob-parent "^3.1.0" + inherits "^2.0.3" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^3.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.2.1" + upath "^1.1.1" + optionalDependencies: + fsevents "^1.2.7" + chownr@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" @@ -1678,14 +1762,6 @@ clean-css@4.2.x: dependencies: source-map "~0.6.0" -clean-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz#a99d8ec34c1c628a4541567aa7b457446460c62b" - integrity sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A== - dependencies: - "@types/webpack" "^4.4.31" - del "^4.1.1" - cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -1903,6 +1979,11 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= +core-js@^1.0.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= + core-js@^2.4.0: version "2.6.9" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" @@ -1954,6 +2035,14 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: safe-buffer "^5.0.1" sha.js "^2.4.8" +create-react-context@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz#9ec140a6914a22ef04b8b09b7771de89567cb6f3" + integrity sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag== + dependencies: + fbjs "^0.8.0" + gud "^1.0.0" + create-react-context@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.3.0.tgz#546dede9dc422def0d3fc2fe03afe0bc0f4f7d8c" @@ -2002,6 +2091,18 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" +crypto-js@^3.1.4: + version "3.1.8" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.8.tgz#715f070bf6014f2ae992a98b3929258b713f08d5" + integrity sha1-cV8HC/YBTyrpkqmLOSkli3E/CNU= + +crypto-random-hex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-hex/-/crypto-random-hex-1.0.0.tgz#f15d4f4a8ce01e9d05e423390b3b98309c8e86de" + integrity sha512-1DuZQ03El13TRgfrqbbjW40Gvi4OKInny/Wxqj23/JMXe214C/3Tlz92bKXWDW3NZT5RjXUGdYW4qiIOUPf+cA== + dependencies: + array-buffer-to-hex "^1.0.0" + css-color-keywords@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" @@ -2054,7 +2155,7 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@^2.2.0: +csstype@^2.2.0, csstype@^2.6.6: version "2.6.6" resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.6.tgz#c34f8226a94bbb10c32cc0d714afdf942291fc41" integrity sha512-RpFbQGUE74iyPgvr46U9t1xoQBM8T4BL8SxrN66Le2xYAPSaDJJKeztV3awugusb3g3G9iL8StmkBBXhcbbXhg== @@ -2159,7 +2260,7 @@ defer-to-connect@^1.0.1: resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.0.2.tgz#4bae758a314b034ae33902b5aac25a8dd6a8633e" integrity sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw== -define-properties@^1.1.2: +define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== @@ -2308,6 +2409,14 @@ dom-helpers@^3.4.0: dependencies: "@babel/runtime" "^7.1.2" +dom-helpers@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.0.tgz#57a726de04abcc2a8bbfe664b3e21c584bde514e" + integrity sha512-zRRYDhpiKuAJHasOqCm7lBnsd22nrM4+OYI4ASWCxen+ocTMl7BIAKgGag97TlLiTl6rrau5aPe1VGUm9jQBng== + dependencies: + "@babel/runtime" "^7.5.5" + csstype "^2.6.6" + dom-serializer@0: version "0.1.1" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" @@ -2316,6 +2425,11 @@ dom-serializer@0: domelementtype "^1.3.0" entities "^1.1.1" +dom-walk@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" + integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= + domain-browser@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" @@ -2427,7 +2541,7 @@ electron-osx-sign@^0.4.11: minimist "^1.2.0" plist "^3.0.1" -electron-packager@^14.0.5: +electron-packager@^14.0.6: version "14.0.6" resolved "https://registry.yarnpkg.com/electron-packager/-/electron-packager-14.0.6.tgz#e187f2ef83cc29a97a0f940b7c3bb5e4edc8a8e2" integrity sha512-X+ikV+TnnNkIrK93vOjsjPeykCQBFxBS7LXKMTE1s62rXWirGMdjWL+edVkBOMRkH0ROJyFmWM28Dpj6sfEg+A== @@ -2455,10 +2569,15 @@ electron-to-chromium@^1.3.191: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.209.tgz#cd43879f1d3fb85c75bb843fb11a828570fa1ce4" integrity sha512-KxRvLp5jUapyKIcMaecwgmUpJEsJKuHn0DJJPZjZh2valqYlzdmGvaE/nTAqwKqQwf0jIKv7Go4FYHu9wKWzOg== -electron@^6.0.9: - version "6.0.9" - resolved "https://registry.yarnpkg.com/electron/-/electron-6.0.9.tgz#fea15e9fec329248db500b33ba6544a26fe025a3" - integrity sha512-lFpSmDNyjpvJFwEnK897Soone3DV7D3ASFUb315H2VTVZSbKib9Kbrsovxf4c+e1q5hTdaONsGIm3Lb4CXIW1g== +electron-to-chromium@^1.3.247: + version "1.3.269" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.269.tgz#3e00cc9266a0123fc2e7b4f290899e257200e6e3" + integrity sha512-t2ZTfo07HxkxTOUbIwMmqHBSnJsC9heqJUm7LwQu2iSk0wNhG4H5cMREtb8XxeCrQABDZ6IqQKY3yZq+NfAqwg== + +electron@^6.0.10: + version "6.0.10" + resolved "https://registry.yarnpkg.com/electron/-/electron-6.0.10.tgz#3468547640c98ed46060711ca70f43d0b2e40818" + integrity sha512-eTFm6uTn7NKZE1OtSZSOxNuOrCXXeUR0U3vdF3R00byB7mrNe5AOaXEDDMwtzRGGY1jMuUX9Z7RvgXaCXRYSmw== dependencies: "@types/node" "^10.12.18" electron-download "^4.1.0" @@ -2477,6 +2596,19 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" +elliptic@^6.4.0: + version "6.5.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz#c380f5f909bf1b9b4428d028cd18d3b0efd6b52b" + integrity sha512-xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg== + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -2492,6 +2624,13 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= +encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= + dependencies: + iconv-lite "~0.4.13" + end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.1" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" @@ -2537,6 +2676,22 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +es-abstract@^1.13.0: + version "1.14.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.14.2.tgz#7ce108fad83068c8783c3cdf62e504e084d8c497" + integrity sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg== + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.0" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-inspect "^1.6.0" + object-keys "^1.1.1" + string.prototype.trimleft "^2.0.0" + string.prototype.trimright "^2.0.0" + es-abstract@^1.5.1: version "1.13.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" @@ -2603,6 +2758,23 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= +eth-lib@0.2.8, eth-lib@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8" + integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw== + dependencies: + bn.js "^4.11.6" + elliptic "^6.4.0" + xhr-request-promise "^0.1.2" + +ethjs-unit@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk= + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + eventemitter3@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" @@ -2620,6 +2792,73 @@ eventsource@^1.0.7: dependencies: original "^1.0.0" +evm-lite-client@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-client/-/evm-lite-client-1.3.7.tgz#bf46c5776379bbeba266685c41a31ff4315c9191" + integrity sha512-83yjmdxQ/WNvIB2aSXvkkBe8HNrd6Cs9shEhX+ng4+EnYRpNYEm3Ev0C7olUAVpKziP9tWNkN9sKRR8JebUJnQ== + dependencies: + bignumber.js "^9.0.0" + json-bigint "^0.3.0" + +evm-lite-consensus@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-consensus/-/evm-lite-consensus-1.3.7.tgz#23026849c0528979784d028be76ffe31e0b9f91c" + integrity sha512-04KlYgiYMvChJYX5Lu4zbPVtiGD7Udx/ZjBe5ifa2lPGaBsRtEi7Q0WSjP5g/0aH4Tb5vOgz5LXF2/p6HyiVew== + dependencies: + evm-lite-client "^1.3.7" + json-bigint "^0.3.0" + +evm-lite-core@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-core/-/evm-lite-core-1.3.7.tgz#f45514ecdb9d277106ac73f20c5f47fe1affc347" + integrity sha512-6lh2vvIvIb1QBWW+2QhRBgo24RrDiV9rOrkdWw7hVq0hIRuEhwLtDwn/qyZfLyhMbWfEzEzicTx/j8Em8BSGZg== + dependencies: + eth-lib "0.2.8" + evm-lite-client "^1.3.7" + evm-lite-consensus "^1.3.7" + evm-lite-utils "^1.3.7" + json-bigint "^0.3.0" + web3 "0.20.6" + web3-eth-iban "1.0.0-beta.46" + web3-utils "1.0.0-beta.46" + +evm-lite-datadir@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-datadir/-/evm-lite-datadir-1.3.7.tgz#e444916ae684cd00e59dabfc11e36219a82fff84" + integrity sha512-FgMk4tNPXHOxSwNwwshi2iq4qUE2Zj3STHi8qwAVt65rfIXVbUKo4DSdFHVdwmW0ovi42Q56C73QrPA8N+bz8Q== + dependencies: + evm-lite-keystore "^1.3.7" + evm-lite-utils "^1.3.7" + mkdirp "^0.5.1" + toml "^3.0.0" + tomlify-j0.4 "^3.0.0" + +evm-lite-keystore@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-keystore/-/evm-lite-keystore-1.3.7.tgz#44e5bc48f846a31d40bde92836f95eefe2b862d4" + integrity sha512-+WXRtDRuyPCinyNvG8PJnto486hFGYhunnnEpI3zBGrnvlD/rowN6uJ6xmQSYf/ZPngRf0yXdSnTnrlmKx1Fvg== + dependencies: + browserify-cipher "^1.0.1" + crypto-random-hex "^1.0.0" + eth-lib "^0.2.8" + evm-lite-client "^1.3.7" + evm-lite-core "^1.3.7" + evm-lite-utils "^1.3.7" + json-bigint "0.3.0" + keccak256 "^1.0.0" + mkdirp "^0.5.1" + randombytes "^2.1.0" + uuid "^3.3.3" + +evm-lite-utils@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-utils/-/evm-lite-utils-1.3.7.tgz#e178c785de6f2424de3e6dcb18d2bbbb6caf7a14" + integrity sha512-IQXp10vTFo7K7oggZKh1uaZbgX9QM01JE4NBB3b+LxV95d1SpvtpF7D6DF3zWvyYtnNe+JOjWUXYtOq0bQYjlw== + dependencies: + bignumber.js "^9.0.0" + mkdirp "^0.5.1" + remove-trailing-zeros "^1.0.3" + evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" @@ -2641,11 +2880,6 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -exenv@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" - integrity sha1-KueOhdmJQVhnCwPUe+wfA72Ru50= - expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" @@ -2801,6 +3035,19 @@ faye-websocket@~0.11.1: dependencies: websocket-driver ">=0.5.1" +fbjs@^0.8.0: + version "0.8.17" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" + integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.18" + fd-slicer@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" @@ -2828,6 +3075,11 @@ file-loader@^4.2.0: loader-utils "^1.2.3" schema-utils "^2.0.0" +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + filesize@3.6.1: version "3.6.1" resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" @@ -2927,6 +3179,13 @@ follow-redirects@^1.0.0: dependencies: debug "^3.2.6" +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -3070,11 +3329,6 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -generic-pool@~2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/generic-pool/-/generic-pool-2.0.4.tgz#f9718deda82fa125ed5c43e341c9a215a766d9a3" - integrity sha1-+XGN7agvoSXtXEPjQcmiFadm2aM= - get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" @@ -3187,6 +3441,14 @@ global-prefix@^3.0.0: kind-of "^6.0.2" which "^1.3.1" +global@~4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" + integrity sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8= + dependencies: + min-document "^2.19.0" + process "~0.5.1" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -3538,7 +3800,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: +iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -3723,10 +3985,10 @@ ipaddr.js@^1.9.0: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -is-absolute-url@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.2.tgz#554f2933e7385cc46e94351977ca2081170a206e" - integrity sha512-+5g/wLlcm1AcxSP7014m6GvbPHswDx980vD/3bZaap8aGV9Yfs7Q6y6tfaupgZ5O74Byzc8dGrSCJ+bFXx0KdA== +is-absolute-url@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== is-accessor-descriptor@^0.1.6: version "0.1.6" @@ -3759,7 +4021,7 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-callable@^1.1.4: +is-callable@^1.1.3, is-callable@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== @@ -3842,6 +4104,11 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= +is-function@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + integrity sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU= + is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -3856,6 +4123,11 @@ is-glob@^4.0.0: dependencies: is-extglob "^2.1.1" +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -3911,7 +4183,7 @@ is-root@2.1.0: resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== -is-stream@^1.1.0: +is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -3982,23 +4254,19 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= +isomorphic-fetch@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" + integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= + dependencies: + node-fetch "^1.0.1" + whatwg-fetch ">=0.10.0" + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -jquery@x.*: - version "3.4.1" - resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz#714f1f8d9dde4bdfa55764ba37ef214630d80ef2" - integrity sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw== - -js-scrypt@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/js-scrypt/-/js-scrypt-0.2.0.tgz#7a62b701b4616e70ad0cde544627aabb99d7fe39" - integrity sha1-emK3AbRhbnCtDN5URiequ5nX/jk= - dependencies: - generic-pool "~2.0.4" - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4032,6 +4300,13 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= +json-bigint@0.3.0, json-bigint@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-0.3.0.tgz#0ccd912c4b8270d05f056fbd13814b53d3825b1e" + integrity sha1-DM2RLEuCcNBfBW+9E4FLU9OCWx4= + dependencies: + bignumber.js "^7.0.0" + json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" @@ -4088,11 +4363,6 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -4108,10 +4378,28 @@ junk@^3.1.0: resolved "https://registry.yarnpkg.com/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1" integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ== -keyboard-key@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/keyboard-key/-/keyboard-key-1.0.4.tgz#52d8fa07b7e17757072aa22a67fb4ae85e4c46b0" - integrity sha512-my04dE6BCwPpwoe4KYKfPxWiwgDYQOHrVmtzn1CfzmoEsGG/ef4oZGaXCzi1+iFhG7CN5JkOuxmei5OABY8/ag== +keccak256@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/keccak256/-/keccak256-1.0.0.tgz#1ba55ce78ed3d63fb7091d045469007da984171d" + integrity sha512-8qv2vJdQk+Aa2tFXo8zYodm+6DgXqUOqvNJhj1p1V2pxQJT1oNKxNF+zWfhtKXNLZdLvyxjB/dvd9GwcvTHSQQ== + dependencies: + bn.js "^4.11.8" + keccak "^1.4.0" + +keccak@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.4.0.tgz#572f8a6dbee8e7b3aa421550f9e6408ca2186f80" + integrity sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw== + dependencies: + bindings "^1.2.1" + inherits "^2.0.3" + nan "^2.2.1" + safe-buffer "^5.1.0" + +keycode@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.2.0.tgz#3d0af56dc7b8b8e5cba8d0a97f107204eec22b04" + integrity sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ= keyv@^3.0.0: version "3.1.0" @@ -4232,10 +4520,10 @@ lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -loglevel@^1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.3.tgz#77f2eb64be55a404c9fd04ad16d57c1d6d6b1280" - integrity sha512-LoEDv5pgpvWgPF4kNYuIp0qqSJVWak/dML0RY74xlzMZiT9w77teNAwKYKWBTYjlokMirg+o3jBwp+vlLrcfAA== +loglevel@^1.6.4: + version "1.6.4" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.4.tgz#f408f4f006db8354d0577dcf6d33485b3cb90d56" + integrity sha512-p0b6mOGKcGa+7nnmKbpzR6qloPbrgLcnio++E+14Vo/XffOGwZtRpUhr8dTH/x2oCMmEoIU0Zwm3ZauhvYD17g== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" @@ -4447,7 +4735,7 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.4.2, mime@^2.4.4: +mime@^2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== @@ -4467,6 +4755,13 @@ mimic-response@^1.0.0, mimic-response@^1.0.1: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + dependencies: + dom-walk "^0.1.0" + mini-create-react-context@^0.3.0: version "0.3.2" resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189" @@ -4594,7 +4889,7 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= -nan@^2.12.1: +nan@^2.12.1, nan@^2.2.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== @@ -4647,10 +4942,18 @@ no-case@^2.2.0: dependencies: lower-case "^1.1.1" -node-forge@0.7.5: - version "0.7.5" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" - integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== +node-fetch@^1.0.1: + version "1.7.3" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" + integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== + dependencies: + encoding "^0.1.11" + is-stream "^1.0.1" + +node-forge@0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.8.2.tgz#b4bcc59fb12ce77a8825fc6a783dfe3182499c5a" + integrity sha512-mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg== node-libs-browser@^2.2.1: version "2.2.1" @@ -4704,6 +5007,13 @@ node-releases@^1.1.25: dependencies: semver "^5.3.0" +node-releases@^1.1.29: + version "1.1.32" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.32.tgz#485b35c1bf9b4d8baa105d782f8ca731e518276e" + integrity sha512-VhVknkitq8dqtWoluagsGPn3dxTvN9fwgR59fV3D7sLBHe0JfDramsMI8n8mY//ccq/Kkrf8ZRHRpsyVZ3qw1A== + dependencies: + semver "^5.3.0" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -4804,6 +5114,14 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA= + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -4823,7 +5141,12 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-keys@^1.0.12: +object-inspect@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" + integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== + +object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -5049,6 +5372,14 @@ parse-author@^2.0.0: dependencies: author-regex "^1.0.0" +parse-headers@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.2.tgz#9545e8a4c1ae5eaea7d24992bca890281ed26e34" + integrity sha512-/LypJhzFmyBIDYP9aDVgeyEb5sQfbfY5mnDq4hVhlQ69js87wXfmEI5V3xI6vvXasqebp0oCytYFLxsBVfCzSg== + dependencies: + for-each "^0.3.3" + string.prototype.trim "^1.1.2" + parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" @@ -5232,12 +5563,12 @@ plist@^3.0.0, plist@^3.0.1: xmlbuilder "^9.0.7" xmldom "0.1.x" -popper.js@^1.14.4: +popper.js@^1.14.4, popper.js@^1.14.7: version "1.15.0" resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" integrity sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA== -portfinder@^1.0.21: +portfinder@^1.0.24: version "1.0.24" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.24.tgz#11efbc6865f12f37624b6531ead1d809ed965cfa" integrity sha512-ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg== @@ -5377,6 +5708,11 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= +process@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" + integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= + progress-stream@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77" @@ -5390,6 +5726,21 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== + dependencies: + asap "~2.0.3" + +prop-types-extra@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.1.0.tgz#32609910ea2dcf190366bacd3490d5a6412a605f" + integrity sha512-QFyuDxvMipmIVKD2TwxLVPzMnO4e5oOf1vr3tJIomL8E7d0lr6phTHd5nkPhFIzTD1idBLLEPeylL9g+rrTzRg== + dependencies: + react-is "^16.3.2" + warning "^3.0.0" + prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" @@ -5479,6 +5830,15 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +query-string@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" + integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw== + dependencies: + decode-uri-component "^0.2.0" + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + querystring-es3@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" @@ -5499,7 +5859,7 @@ random-hash@^4.0.1: resolved "https://registry.yarnpkg.com/random-hash/-/random-hash-4.0.1.tgz#342d7d14501e664f0bee2d9a13eeae9c973cb755" integrity sha1-NC19FFAeZk8L7i2aE+6unJc8t1U= -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== @@ -5514,6 +5874,11 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" +randomhex@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/randomhex/-/randomhex-0.1.5.tgz#baceef982329091400f2a2912c6cd02f1094f585" + integrity sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU= + range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -5544,14 +5909,40 @@ rcedit@^2.0.0: resolved "https://registry.yarnpkg.com/rcedit/-/rcedit-2.0.0.tgz#dcc85d93aa91a41c1ebc5c6aa1dfc43ea28b7dad" integrity sha512-XcFGyEBjhWSsud+R8elwQtGBbVkCf7tAiad+nXo5jc6l2rMf46NfGNwjnmBNneBIZDfq+Npf8lwP371JTONfrw== -react-dev-utils@^9.0.3: - version "9.0.3" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.0.3.tgz#7607455587abb84599451460eb37cef0b684131a" - integrity sha512-OyInhcwsvycQ3Zr2pQN+HV4gtRXrky5mJXIy4HnqrWa+mI624xfYfqGuC9dYbxp4Qq3YZzP8GSGQjv0AgNU15w== +react-bootstrap@^1.0.0-beta.12: + version "1.0.0-beta.12" + resolved "https://registry.yarnpkg.com/react-bootstrap/-/react-bootstrap-1.0.0-beta.12.tgz#49fb83e288b1b5fa86e4c51e145630ec8b8598bb" + integrity sha512-qBEAthAzqM+OTS2h5ZCfV5/yZUadQcMlaep4iPyPqsu92JzdcznhSDjw6b+asiepsyQgiS33t8OPeLLRiIDh9Q== + dependencies: + "@babel/runtime" "^7.4.2" + "@react-bootstrap/react-popper" "1.2.1" + "@restart/context" "^2.1.4" + "@restart/hooks" "^0.3.11" + classnames "^2.2.6" + dom-helpers "^3.4.0" + invariant "^2.2.4" + keycode "^2.2.0" + popper.js "^1.14.7" + prop-types "^15.7.2" + prop-types-extra "^1.1.0" + react-overlays "^1.2.0" + react-transition-group "^4.0.0" + uncontrollable "^7.0.0" + warning "^4.0.3" + +react-context-toolbox@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/react-context-toolbox/-/react-context-toolbox-2.0.2.tgz#35637287cb23f801e6ed802c2bb7a97e1f04e3fb" + integrity sha512-tY4j0imkYC3n5ZlYSgFkaw7fmlCp3IoQQ6DxpqeNHzcD0hf+6V+/HeJxviLUZ1Rv1Yn3N3xyO2EhkkZwHn0m1A== + +react-dev-utils@^9.0.4: + version "9.0.4" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.0.4.tgz#5c71a8e8afdec0232c44d4e049d21baa437a92af" + integrity sha512-VwR+mBUXPLdYk/rOz6s6qpasIFGd7GW0KXd/3bih+/qGcMQvPG19XxtjDMtiAg0zWiFwp1ugCzAjLThbzFjVqw== dependencies: "@babel/code-frame" "7.5.5" - address "1.1.0" - browserslist "4.6.6" + address "1.1.2" + browserslist "4.7.0" chalk "2.4.2" cross-spawn "6.0.5" detect-port-alt "1.1.6" @@ -5568,34 +5959,39 @@ react-dev-utils@^9.0.3: loader-utils "1.2.3" open "^6.3.0" pkg-up "2.0.0" - react-error-overlay "^6.0.1" + react-error-overlay "^6.0.2" recursive-readdir "2.2.2" - shell-quote "1.6.1" - sockjs-client "1.3.0" + shell-quote "1.7.2" + sockjs-client "1.4.0" strip-ansi "5.2.0" text-table "0.2.0" -react-dom@^16.9.0: - version "16.9.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.9.0.tgz#5e65527a5e26f22ae3701131bcccaee9fb0d3962" - integrity sha512-YFT2rxO9hM70ewk9jq0y6sQk8cL02xm4+IzYBz75CQGlClQQ1Bxq0nhHF6OtSbit+AIahujJgb/CPRibFkMNJQ== +react-dom@^16.10.1: + version "16.10.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.1.tgz#479a6511ba34a429273c213cbc2a9ac4d296dac1" + integrity sha512-SmM4ZW0uug0rn95U8uqr52I7UdNf6wdGLeXDmNLfg3y5q5H9eAbdjF5ubQc3bjDyRrvdAB2IKG7X0GzSpnn5Mg== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - scheduler "^0.15.0" + scheduler "^0.16.1" -react-error-overlay@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.1.tgz#b8d3cf9bb991c02883225c48044cb3ee20413e0f" - integrity sha512-V9yoTr6MeZXPPd4nV/05eCBvGH9cGzc52FN8fs0O0TVQ3HYYf1n7EgZVtHbldRq5xU9zEzoXIITjYNIfxDDdUw== +react-error-overlay@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.2.tgz#642bd6157c6a4b6e9ca4a816f7ed30b868c47f81" + integrity sha512-DHRuRk3K4Lg9obI6J4Y+nKvtwjasYRU9CFL3ud42x9YJG1HbQjSNublapC/WBJOA726gNUbqbj0U2df9+uzspQ== + +react-is@^16.3.2: + version "16.10.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.1.tgz#0612786bf19df406502d935494f0450b40b8294f" + integrity sha512-BXUMf9sIOPXXZWqr7+c5SeOKJykyVr2u0UDzEf4LNGc6taGkQe1A9DFD07umCIXz45RLr9oAAwZbAJ0Pkknfaw== -react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.6: +react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== -react-is@^16.6.3, react-is@^16.9.0: +react-is@^16.9.0: version "16.9.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== @@ -5605,7 +6001,21 @@ react-lifecycles-compat@^3.0.4: resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== -react-popper@^1.3.4: +react-overlays@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-1.2.0.tgz#205368eeb0a5fb0b7f9b717fa7a12d518500abdb" + integrity sha512-i/FCV8wR6aRaI+Kz/dpJhOdyx+ah2tN1RhT9InPrexyC4uzf3N4bNayFTGtUeQVacj57j1Mqh1CwV60/5153Iw== + dependencies: + classnames "^2.2.6" + dom-helpers "^3.4.0" + prop-types "^15.6.2" + prop-types-extra "^1.1.0" + react-context-toolbox "^2.0.2" + react-popper "^1.3.2" + uncontrollable "^6.0.0" + warning "^4.0.2" + +react-popper@^1.3.2: version "1.3.4" resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.4.tgz#f0cd3b0d30378e1f663b0d79bcc8614221652ced" integrity sha512-9AcQB29V+WrBKk6X7p0eojd1f25/oJajVdMZkywIoAV6Ag7hzE1Mhyeup2Q1QnvFRtGQFQvtqfhlEoDAPfKAVA== @@ -5629,23 +6039,23 @@ react-redux@^7.1.1: prop-types "^15.7.2" react-is "^16.9.0" -react-router-dom@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.0.1.tgz#ee66f4a5d18b6089c361958e443489d6bab714be" - integrity sha512-zaVHSy7NN0G91/Bz9GD4owex5+eop+KvgbxXsP/O+iW1/Ln+BrJ8QiIR5a6xNPtrdTvLkxqlDClx13QO1uB8CA== +react-router-dom@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.1.tgz#53caa089c291f64c1d597a52827b978b54d7c25d" + integrity sha512-r8R8H0Vt2ISqpk02rR6VZBLk+JZdR6pZV+h9K1y0ISh3/G4GGByNevYBS69x6czcOcWVRcZmXjwY8l9UBCKV+w== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" loose-envify "^1.3.1" prop-types "^15.6.2" - react-router "5.0.1" + react-router "5.1.1" tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-router@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.0.1.tgz#04ee77df1d1ab6cb8939f9f01ad5702dbadb8b0f" - integrity sha512-EM7suCPNKb1NxcTZ2LEOWFtQBQRQXecLxVpdsP4DW4PbbqYWeRiLyV/Tt1SdCrvT2jcyXAXmVTmzvSzrPR63Bg== +react-router@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.1.tgz#9d65f54795f938c0c5b69eaeef58728134ce7c7c" + integrity sha512-ozTXqxKZsn4GfZqpG5rVFHSSxlNuDoMNxgyjM+mFJVhqlnPwwkRsAPkDm1PcNjBdYxMzqAhtz48HkQB6fSYaAQ== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" @@ -5666,10 +6076,10 @@ react-spring@^8.0.27: "@babel/runtime" "^7.3.1" prop-types "^15.5.8" -react-toastify@^5.3.2: - version "5.3.2" - resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-5.3.2.tgz#9de4b426656587722f7e2f99f5f90e974ba5fee6" - integrity sha512-YHTTey7JWqXVkkBIeJ34PAvQELmGfLEGCx9bu68aIZYd+kRU2u9k/nG3AydgbX/uevIb4QNpeeE98DjkooMs5w== +react-toastify@^5.4.0: + version "5.4.0" + resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-5.4.0.tgz#29501618d02cc25329c32bfd7cfeed19b532b2ef" + integrity sha512-0cdPq1gyxAcYu0KiDPOYp9nNiqIFDWoi7nyoaSw496DElUnNlcjhc7Aduz8CXrGTRugvjuXd3eplUvFaCeQMNA== dependencies: "@babel/runtime" "^7.4.2" classnames "^2.2.6" @@ -5686,10 +6096,20 @@ react-transition-group@^2.6.1: prop-types "^15.6.2" react-lifecycles-compat "^3.0.4" -react@^16.9.0: - version "16.9.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.9.0.tgz#40ba2f9af13bc1a38d75dbf2f4359a5185c4f7aa" - integrity sha512-+7LQnFBwkiw+BobzOF6N//BdoNw0ouwmSJTEm9cglOOmsg/TMiFHZLe2sEoN5M7LgJTj9oHH0gxklfnQe66S1w== +react-transition-group@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.3.0.tgz#fea832e386cf8796c58b61874a3319704f5ce683" + integrity sha512-1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw== + dependencies: + "@babel/runtime" "^7.5.5" + dom-helpers "^5.0.1" + loose-envify "^1.4.0" + prop-types "^15.6.2" + +react@^16.10.1: + version "16.10.1" + resolved "https://registry.yarnpkg.com/react/-/react-16.10.1.tgz#967c1e71a2767dfa699e6ba702a00483e3b0573f" + integrity sha512-2bisHwMhxQ3XQz4LiJJwG3360pY965pTl/MRrZYxIBKVj4fOHoDs5aZAkYXGxDRO1Li+SyjTAilQEbOmtQJHzA== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -5883,6 +6303,11 @@ remove-trailing-separator@^1.0.1: resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= +remove-trailing-zeros@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/remove-trailing-zeros/-/remove-trailing-zeros-1.0.3.tgz#9d167b10262c6296376577b4f7485210497ae699" + integrity sha512-jPyx7zNib1nb7MIDrV/vV3FTkL4EjpsUHqXeB5WrPInoPuvy41Viv6qXXP3dYhPztlbu3ucNdyqnOrEqMcJxMg== + renderkid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.3.tgz#380179c2ff5ae1365c522bf2fcfcff01c5b74149" @@ -6110,10 +6535,10 @@ sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -scheduler@^0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.15.0.tgz#6bfcf80ff850b280fed4aeecc6513bc0b4f17f8e" - integrity sha512-xAefmSfN6jqAa7Kuq7LIJY0bwAPG3xlCj0HMEBQk1lxYiDKZscY2xJ5U/61ZTrYbmNQbXa+gc7czPkVo11tnCg== +scheduler@^0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.1.tgz#a6fb6ddec12dc2119176e6eb54ecfe69a9eba8df" + integrity sha512-MIuie7SgsqMYOdCXVFZa8SKoNorJZUWHW8dPgto7uEHn1lX3fg2Gu0TzgK8USj76uxV7vB5eRMnZs/cdEHg+cg== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -6140,36 +6565,12 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -selfsigned@^1.10.4: - version "1.10.4" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" - integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== - dependencies: - node-forge "0.7.5" - -semantic-ui-css@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/semantic-ui-css/-/semantic-ui-css-2.4.1.tgz#f5aea39fafb787cbd905ec724272a3f9cba9004a" - integrity sha512-Pkp0p9oWOxlH0kODx7qFpIRYpK1T4WJOO4lNnpNPOoWKCrYsfHqYSKgk5fHfQtnWnsAKy7nLJMW02bgDWWFZFg== - dependencies: - jquery x.* - -semantic-ui-react@^0.88.1: - version "0.88.1" - resolved "https://registry.yarnpkg.com/semantic-ui-react/-/semantic-ui-react-0.88.1.tgz#006d63f838b651370d68e73510327308f19ff6fd" - integrity sha512-fCCDnRXiVJUJ9icFVSu0n0pZ2cg2QssiLM2nP4pz6aODQpPZTPtXVI6V/hFciwJ+GPkV6WZAmEmFLxR7nRVF4Q== +selfsigned@^1.10.6: + version "1.10.6" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.6.tgz#7b3cd37ed9c2034261a173af1a1aae27d8169b67" + integrity sha512-i3+CeqxL7DpAazgVpAGdKMwHuL63B5nhJMh9NQ7xmChGkA3jNFflq6Jyo1LLJYcr3idWiNOPWHCrm4zMayLG4w== dependencies: - "@babel/runtime" "^7.1.2" - "@semantic-ui-react/event-stack" "^3.1.0" - "@stardust-ui/react-component-event-listener" "~0.38.0" - "@stardust-ui/react-component-ref" "~0.38.0" - classnames "^2.2.6" - keyboard-key "^1.0.4" - lodash "^4.17.15" - prop-types "^15.7.2" - react-is "^16.8.6" - react-popper "^1.3.4" - shallowequal "^1.1.0" + node-forge "0.8.2" "semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: version "5.7.0" @@ -6243,7 +6644,7 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" -setimmediate@^1.0.4: +setimmediate@^1.0.4, setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= @@ -6266,11 +6667,6 @@ sha.js@^2.4.0, sha.js@^2.4.8: inherits "^2.0.1" safe-buffer "^5.0.1" -shallowequal@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" - integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== - shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -6283,21 +6679,30 @@ shebang-regex@^1.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= -shell-quote@1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" +shell-quote@1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" + integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= + +simple-get@^2.7.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" + integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== + dependencies: + decompress-response "^3.3.0" + once "^1.3.1" + simple-concat "^1.0.0" + single-line-log@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364" @@ -6353,10 +6758,10 @@ snazzy@^8.0.0: strip-ansi "^4.0.0" text-table "^0.2.0" -sockjs-client@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz#12fc9d6cb663da5739d3dc5fb6e8687da95cb177" - integrity sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg== +sockjs-client@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.4.0.tgz#c9f2568e19c8fd8173b4997ea3420e0bb306c7d5" + integrity sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g== dependencies: debug "^3.2.5" eventsource "^1.0.7" @@ -6574,6 +6979,11 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -6600,6 +7010,31 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string.prototype.trim@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz#75a729b10cfc1be439543dae442129459ce61e3d" + integrity sha512-9EIjYD/WdlvLpn987+ctkLf0FfvBefOCuiEr2henD8X+7jfwPnyvTdmW8OJhj5p+M0/96mBdynLWkxUr+rHlpg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.13.0" + function-bind "^1.1.1" + +string.prototype.trimleft@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" + integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string.prototype.trimright@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" + integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" @@ -6657,6 +7092,13 @@ strip-eof@^1.0.0: resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha1-DF8VX+8RUTczd96du1iNoFUA428= + dependencies: + is-hex-prefixed "1.0.0" + strip-indent@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" @@ -6677,10 +7119,10 @@ style-loader@^1.0.0: loader-utils "^1.2.3" schema-utils "^2.0.1" -styled-components@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-4.3.2.tgz#4ca81918c812d3006f60ac5fdec7d6b64a9509cc" - integrity sha512-NppHzIFavZ3TsIU3R1omtddJ0Bv1+j50AKh3ZWyXHuFvJq1I8qkQ5mZ7uQgD89Y8zJNx2qRo6RqAH1BmoVafHw== +styled-components@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-4.4.0.tgz#4e381e2dab831d0e6ea431c2840a96323e84e21b" + integrity sha512-xQ6vTI/0zNjZ1BBDRxyjvBddrxhQ3DxjeCdaLM1lSn5FDnkTOQgRkmWvcUiTajqc5nJqKVl+7sUioMqktD0+Zw== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/traverse" "^7.0.0" @@ -6829,6 +7271,11 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== +timed-out@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + timers-browserify@^2.0.4: version "2.0.10" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" @@ -6925,6 +7372,16 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== +toml@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tomlify-j0.4@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tomlify-j0.4/-/tomlify-j0.4-3.0.0.tgz#99414d45268c3a3b8bf38be82145b7bba34b7473" + integrity sha512-2Ulkc8T7mXJ2l0W476YC/A209PR38Nw8PuaCNtk9uI3t1zzFdGQeWYGQvmj2PZkVvRC/Yoi4xQKMRnWc/N29tQ== + toposort@^1.0.0: version "1.0.7" resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029" @@ -6960,10 +7417,10 @@ truncate-utf8-bytes@^1.0.0: dependencies: utf8-byte-length "^1.0.1" -ts-loader@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-6.1.0.tgz#999cb0a7644f9c7c6c0901802dce50ceb0a76e5b" - integrity sha512-7JedeOu2rsYHQDEr2fwmMozABwbQTZXEaEMZPSIWG7gpzRefOLJCqwdazcegHtyaxp04PeEgs/b0m08WMpnIzQ== +ts-loader@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-6.2.0.tgz#52d3993ecbc5474c1513242388e1049da0fce880" + integrity sha512-Da8h3fD+HiZ9GvZJydqzk3mTC9nuOKYlJcpuk+Zv6Y1DPaMvBL+56GRzZFypx2cWrZFMsQr869+Ua2slGoLxvQ== dependencies: chalk "^2.3.0" enhanced-resolve "^4.0.0" @@ -7003,10 +7460,10 @@ tslint-loader@^3.5.4: rimraf "^2.4.4" semver "^5.3.0" -tslint-react@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/tslint-react/-/tslint-react-4.0.0.tgz#b4bb4c01c32448cb14d23f143a2f5e4989bb961e" - integrity sha512-9fNE0fm9zNDx1+b6hgy8rgDN2WsQLRiIrn3+fbqm0tazBVF6jiaCFAITxmU+WSFWYE03Xhp1joCircXOe1WVAQ== +tslint-react@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/tslint-react/-/tslint-react-4.1.0.tgz#7153b724a8cfbea52423d0ffa469e8eba3bcc834" + integrity sha512-Y7CbFn09X7Mpg6rc7t/WPbmjx9xPI8p1RsQyiGCLWgDR6sh3+IBSlT+bEkc0PSZcWwClOkqq2wPsID8Vep6szQ== dependencies: tsutils "^3.9.1" @@ -7068,6 +7525,11 @@ type-is@~1.6.17, type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" +typed-styles@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.5.tgz#a60df245d482a9b1adf9c06c078d0f06085ed1cf" + integrity sha512-ht+rEe5UsdEBAa3gr64+QjUOqjOLJfWLvl5HZR5Ev9uo/OnD3p43wPeFSB1hNFc13GXQF/JU1Bn0YHLUqBRIlw== + typed-styles@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9" @@ -7083,6 +7545,11 @@ typescript@^3.6.3: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.6.3.tgz#fea942fabb20f7e1ca7164ff626f1a9f3f70b4da" integrity sha512-N7bceJL1CtRQ2RiG0AQME13ksR7DiuQh/QehubYcghzv20tnh+MQnQIuJddTmsbqYj+dztchykemz0zFzlvdQw== +ua-parser-js@^0.7.18: + version "0.7.20" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz#7527178b82f6a62a0f243d1f94fd30e3e3c21098" + integrity sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw== + uglify-js@3.4.x: version "3.4.10" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.10.tgz#9ad9563d8eb3acdfb8d38597d2af1d815f6a755f" @@ -7091,6 +7558,22 @@ uglify-js@3.4.x: commander "~2.19.0" source-map "~0.6.1" +uncontrollable@^6.0.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-6.2.3.tgz#e7dba0d746e075122ed178f27ad2354d343196c7" + integrity sha512-VgOAoBU2ptCL2bfTG2Mra0I8i1u6Aq84AFonD5tmCAYSfs3hWvr2Rlw0q2ntoxXTHjcQOmZOh3FKaN+UZVyREQ== + dependencies: + "@babel/runtime" "^7.4.5" + invariant "^2.2.4" + +uncontrollable@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-7.0.1.tgz#9451ecd13ed480c3e8318c2ee5f0f7522b13b33c" + integrity sha512-MGlbii7jczJYfY2GbmZi4j1JmB/6giM0Xc/WcKfxEN5W86KS8NPH/Fq/AD1nKjiFEMq7/MRwTCtzKWCeYgiWMA== + dependencies: + "@babel/runtime" "^7.4.5" + invariant "^2.2.4" + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -7184,6 +7667,11 @@ url-parse@^1.4.3: querystringify "^2.1.1" requires-port "^1.0.0" +url-set-query@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339" + integrity sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk= + url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -7202,6 +7690,16 @@ utf8-byte-length@^1.0.1: resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E= +utf8@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.1.tgz#2e01db02f7d8d0944f77104f1609eb0c304cf768" + integrity sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g= + +utf8@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96" + integrity sha1-H6DZJw6b6FDZsFAn9jUZv0ZFfZY= + util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -7244,6 +7742,11 @@ uuid@^3.0.1, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== +uuid@^3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== + v8-compile-cache@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" @@ -7281,6 +7784,13 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.0.tgz#bd76d6a23323e2ca8ffa12028dc04559c75f9019" integrity sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw== +warning@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" + integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w= + dependencies: + loose-envify "^1.0.0" + warning@^4.0.2, warning@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" @@ -7304,10 +7814,46 @@ wbuf@^1.1.0, wbuf@^1.7.3: dependencies: minimalistic-assert "^1.0.0" -webpack-cli@^3.3.8: - version "3.3.8" - resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.8.tgz#caeaebcc26f685db1736e5decd3f01aac30123ec" - integrity sha512-RANYSXwikSWINjHMd/mtesblNSpjpDLoYTBtP99n1RhXqVI/wxN40Auqy42I7y4xrbmRBoA5Zy5E0JSBD5XRhw== +web3-eth-iban@1.0.0-beta.46: + version "1.0.0-beta.46" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.46.tgz#55ed759d99540bf71b698e132a4aadc89e879752" + integrity sha512-IM9VbznRaEs58n7mYbJcPviOLMAiiveqZT1jtlcJ/DbrvMkArV0Xf6n2OyFY+ak3ppddKVMIAGISxhky6r/7cg== + dependencies: + "@babel/runtime" "^7.3.1" + bn.js "4.11.8" + web3-utils "1.0.0-beta.46" + +web3-utils@1.0.0-beta.46: + version "1.0.0-beta.46" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.0.0-beta.46.tgz#9984dda27c9079b129e741cbb63b665ae0f9725c" + integrity sha512-mSz+NrAil2fDZkxTXHPntCclZ8DofMjv8Q+BYR0VAyzTzylpYNXAV0WDdxBp/sXgniWRZXZMF7OkQNWqhZ1J9g== + dependencies: + "@babel/runtime" "^7.3.1" + "@types/bn.js" "^4.11.4" + "@types/node" "^10.12.18" + bn.js "4.11.8" + eth-lib "0.2.8" + ethjs-unit "^0.1.6" + lodash "^4.17.11" + number-to-bn "1.7.0" + randomhex "0.1.5" + utf8 "2.1.1" + +web3@0.20.6: + version "0.20.6" + resolved "https://registry.yarnpkg.com/web3/-/web3-0.20.6.tgz#3e97306ae024fb24e10a3d75c884302562215120" + integrity sha1-PpcwauAk+yThCj11yIQwJWIhUSA= + dependencies: + bignumber.js "git+https://github.com/frozeman/bignumber.js-nolookahead.git" + crypto-js "^3.1.4" + utf8 "^2.1.1" + xhr2 "*" + xmlhttprequest "*" + +webpack-cli@^3.3.9: + version "3.3.9" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.9.tgz#79c27e71f94b7fe324d594ab64a8e396b9daa91a" + integrity sha512-xwnSxWl8nZtBl/AFJCOn9pG7s5CYUYdZxmmukv+fAHLcBIHM36dImfpQg3WfShZXeArkWlf6QRw24Klcsv8a5A== dependencies: chalk "2.4.2" cross-spawn "6.0.5" @@ -7321,24 +7867,25 @@ webpack-cli@^3.3.8: v8-compile-cache "2.0.3" yargs "13.2.4" -webpack-dev-middleware@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.0.tgz#ef751d25f4e9a5c8a35da600c5fda3582b5c6cff" - integrity sha512-qvDesR1QZRIAZHOE3iQ4CXLZZSQ1lAUsSpnQmlB1PBfoN/xdRjmge3Dok0W4IdaVLJOGJy3sGI4sZHwjRU0PCA== +webpack-dev-middleware@^3.7.1: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" + integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== dependencies: memory-fs "^0.4.1" - mime "^2.4.2" + mime "^2.4.4" + mkdirp "^0.5.1" range-parser "^1.2.1" webpack-log "^2.0.0" -webpack-dev-server@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.8.0.tgz#06cc4fc2f440428508d0e9770da1fef10e5ef28d" - integrity sha512-Hs8K9yI6pyMvGkaPTeTonhD6JXVsigXDApYk9JLW4M7viVBspQvb1WdAcWxqtmttxNW4zf2UFLsLNe0y87pIGQ== +webpack-dev-server@^3.8.1: + version "3.8.1" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.8.1.tgz#485b64c4aadc23f601e72114b40c1b1fea31d9f1" + integrity sha512-9F5DnfFA9bsrhpUCAfQic/AXBVHvq+3gQS+x6Zj0yc1fVVE0erKh2MV4IV12TBewuTrYeeTIRwCH9qLMvdNvTw== dependencies: ansi-html "0.0.7" bonjour "^3.5.0" - chokidar "^2.1.6" + chokidar "^2.1.8" compression "^1.7.4" connect-history-api-fallback "^1.6.0" debug "^4.1.1" @@ -7349,23 +7896,23 @@ webpack-dev-server@^3.8.0: import-local "^2.0.0" internal-ip "^4.3.0" ip "^1.1.5" - is-absolute-url "^3.0.0" + is-absolute-url "^3.0.2" killable "^1.0.1" - loglevel "^1.6.3" + loglevel "^1.6.4" opn "^5.5.0" p-retry "^3.0.1" - portfinder "^1.0.21" + portfinder "^1.0.24" schema-utils "^1.0.0" - selfsigned "^1.10.4" + selfsigned "^1.10.6" semver "^6.3.0" serve-index "^1.9.1" sockjs "0.3.19" - sockjs-client "1.3.0" + sockjs-client "1.4.0" spdy "^4.0.1" strip-ansi "^3.0.1" supports-color "^6.1.0" url "^0.11.0" - webpack-dev-middleware "^3.7.0" + webpack-dev-middleware "^3.7.1" webpack-log "^2.0.0" ws "^6.2.1" yargs "12.0.5" @@ -7394,10 +7941,10 @@ webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.40.2: - version "4.40.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.40.2.tgz#d21433d250f900bf0facbabe8f50d585b2dc30a7" - integrity sha512-5nIvteTDCUws2DVvP9Qe+JPla7kWPPIDFZv55To7IycHWZ+Z5qBdaBYPyuXWdhggTufZkQwfIK+5rKQTVovm2A== +webpack@^4.41.0: + version "4.41.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.0.tgz#db6a254bde671769f7c14e90a1a55e73602fc70b" + integrity sha512-yNV98U4r7wX1VJAj5kyMsu36T8RPPQntcb5fJLOsMz/pt/WrKC0Vp1bAlqPLkA1LegSwQwf6P+kAbyhRKVQ72g== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" @@ -7437,6 +7984,11 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== +whatwg-fetch@>=0.10.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" + integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== + which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -7499,6 +8051,41 @@ ws@^6.2.1: dependencies: async-limiter "~1.0.0" +xhr-request-promise@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz#343c44d1ee7726b8648069682d0f840c83b4261d" + integrity sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0= + dependencies: + xhr-request "^1.0.1" + +xhr-request@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed" + integrity sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA== + dependencies: + buffer-to-arraybuffer "^0.0.5" + object-assign "^4.1.1" + query-string "^5.0.1" + simple-get "^2.7.0" + timed-out "^4.0.1" + url-set-query "^1.0.0" + xhr "^2.0.4" + +xhr2@*: + version "0.2.0" + resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.2.0.tgz#eddeff782f3b7551061b8d75645085269396e521" + integrity sha512-BDtiD0i2iKPK/S8OAZfpk6tyzEDnKKSjxWHcMBVmh+LuqJ8A32qXTyOx+TVOg2dKvq6zGBq2sgKPkEeRs1qTRA== + +xhr@^2.0.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.5.0.tgz#bed8d1676d5ca36108667692b74b316c496e49dd" + integrity sha512-4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ== + dependencies: + global "~4.3.0" + is-function "^1.0.1" + parse-headers "^2.0.0" + xtend "^4.0.0" + xmlbuilder@^9.0.7: version "9.0.7" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" @@ -7509,6 +8096,11 @@ xmldom@0.1.x: resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk= +xmlhttprequest@*: + version "1.8.0" + resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" + integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= + xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 0da7bbbdd3584857f9a175da6f5d9d5f670bd96d Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 30 Sep 2019 16:51:29 +0100 Subject: [PATCH 02/30] update: Added Accounts page and better layout --- assets/accounts.png | Bin 349676 -> 245809 bytes src/app/App.tsx | 14 +- src/assets/chev-black.svg | 2 + src/assets/chev-white.svg | 2 + src/components/AccountCard.tsx | 99 ------ src/components/AccountCreate.tsx | 250 ------------- src/components/AccountTransfer.tsx | 112 ------ src/components/AccountUnlock.tsx | 206 ----------- src/components/Avatar.tsx | 32 -- src/components/Banner.tsx | 36 -- .../{FloatingButton.tsx => FloatButton.tsx} | 16 +- src/components/Header.tsx | 198 ++--------- src/components/Jumbo.tsx | 14 - src/components/LoadingButton.tsx | 24 -- src/components/Nominee.tsx | 60 ---- src/{containers => components}/Wrapper.tsx | 0 src/components/animations/Animation.tsx | 45 --- src/containers/AccountDetail.tsx | 124 ------- src/containers/Accounts.tsx | 304 ++++++++++------ src/containers/Configuration.tsx | 331 ------------------ src/containers/POA.tsx | 164 --------- src/index.css | 177 ++-------- src/index.ts | 2 + src/modules/accounts.ts | 12 +- src/monet.ts | 8 +- tslint.json | 5 +- wireframes/Monet Wallet.xd | Bin 0 -> 169811 bytes 27 files changed, 286 insertions(+), 1951 deletions(-) create mode 100644 src/assets/chev-black.svg create mode 100644 src/assets/chev-white.svg delete mode 100644 src/components/AccountCard.tsx delete mode 100644 src/components/AccountCreate.tsx delete mode 100644 src/components/AccountTransfer.tsx delete mode 100644 src/components/AccountUnlock.tsx delete mode 100644 src/components/Avatar.tsx delete mode 100644 src/components/Banner.tsx rename src/components/{FloatingButton.tsx => FloatButton.tsx} (65%) delete mode 100644 src/components/Jumbo.tsx delete mode 100644 src/components/LoadingButton.tsx delete mode 100644 src/components/Nominee.tsx rename src/{containers => components}/Wrapper.tsx (100%) delete mode 100644 src/components/animations/Animation.tsx delete mode 100644 src/containers/AccountDetail.tsx delete mode 100644 src/containers/Configuration.tsx delete mode 100644 src/containers/POA.tsx create mode 100644 wireframes/Monet Wallet.xd diff --git a/assets/accounts.png b/assets/accounts.png index efa9384ae55767116c786659e5b40fcd63f18512..6cc669e22013d3e67bc6c224f5bffb8451f4d7df 100644 GIT binary patch literal 245809 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%0D6_zYiZdRp0XWvTW7 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 = () => { const dispatch = useDispatch(); @@ -26,13 +24,13 @@ const App: React.FunctionComponent<{}> = () => { - - - */} + {/* */} + {/* + /> */} + diff --git a/src/assets/chev-white.svg b/src/assets/chev-white.svg new file mode 100644 index 0000000..1617d25 --- /dev/null +++ b/src/assets/chev-white.svg @@ -0,0 +1,2 @@ + + diff --git a/src/components/AccountCard.tsx b/src/components/AccountCard.tsx deleted file mode 100644 index 335014f..0000000 --- a/src/components/AccountCard.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import React from 'react'; - -import utils from 'evm-lite-utils'; -import styled from 'styled-components'; - -import { Link } from 'react-router-dom'; -import { config, Transition } from 'react-spring/renderprops'; -import { Card, Label } from 'semantic-ui-react'; - -import { IMonikerEVMAccount } from '../monet'; - -import Avatar from './Avatar'; - -const SMoniker = styled.span` - word-wrap: break-word !important; - /* text-transform: uppercase !important; */ - font-weight: 400 !important; -`; - -const SAddress = styled.span` - font-family: 'Cousine', monospace !important; -`; - -interface Props { - account: IMonikerEVMAccount; - unlocked: boolean; -} - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); -const Account: React.FunctionComponent = props => { - let balance = props.account.balance.format('T'); - const unit = balance.slice(-1); - - const b = balance.slice(0, -1); - const l = b.split('.'); - - if (l[1]) { - l[1] = l[1].slice(0, 4); - } - - balance = l.join('.'); - - balance += unit; - - return ( - - - - - - {capitalize(props.account.moniker)} - - - - - {utils.cleanAddress(props.account.address)} - - - - -

- - - ); -}; - -export default Account; diff --git a/src/components/AccountCreate.tsx b/src/components/AccountCreate.tsx deleted file mode 100644 index b1a61e7..0000000 --- a/src/components/AccountCreate.tsx +++ /dev/null @@ -1,250 +0,0 @@ -import React, { useState } from 'react'; -import styled, { ThemeProvider } from 'styled-components'; - -import utils from 'evm-lite-utils'; - -import { config, Transition } from 'react-spring/renderprops'; -import { toast } from 'react-toastify'; -import { Button, Input } from 'semantic-ui-react'; - -import { AccountsState, IAccountsCreate } from '../modules/accounts'; - -import Animation from './animations/Animation'; - -const SOpen = styled.div` - position: fixed; - bottom: ${props => props.theme.bottomOffset}px; - right: 0; - width: auto; - color: white !important; - border-top-left-radius: 7px; - border-bottom-left-radius: 7px; - - &:hover { - cursor: pointer; - } - - & button { - border-top-right-radius: 0px !important; - border-bottom-right-radius: 0px !important; - margin: 0 !important; - margin-left: -2px !important; - box-shadow: 0 4px 20px -6px #000 !important; - } -`; - -const SClose = styled.div` - position: fixed; - bottom: ${props => props.theme.bottomOffset + 40}px; - right: 0; - width: auto; - color: white !important; - border-top-left-radius: 7px; - border-bottom-left-radius: 7px; - & button { - border-top-right-radius: 0px !important; - border-bottom-right-radius: 0px !important; - margin: 0 !important; - margin-left: -2px !important; - } - &:hover { - cursor: pointer; - } -`; - -const SContent = styled.div` - position: fixed; - bottom: ${props => props.theme.bottomOffset}px; - right: -361px; - width: auto; - background: #fff !important; - box-shadow: 0 4px 20px -6px #999 !important; - - & h4 { - background: rgba(0, 0, 0, 0.07); - font-weight: 300 !important; - padding: 10px 20px; - margin: 0 !important; - } - - & div { - padding: 5px 10px; - padding-top: 0px; - } - - & div.help { - background: rgba(0, 0, 0, 0.02); - padding: 10px 20px; - color: #555; - margin-bottom: 14px; - } - - & input { - width: 340px !important; - } -`; - -interface Props { - bottomOffset: number; - create: IAccountsCreate; - accounts: AccountsState; -} - -const AccountCreate: React.FunctionComponent = props => { - const [visible, setVisibility] = useState(false); - const [fields, setFields] = useState({ - moniker: '', - password: '', - verifyPassword: '' - }); - - const handleCreateAccount = () => { - if (!fields.password || !fields.verifyPassword || !fields.moniker) { - return toast.error('Both fields must be filled in.'); - } - - if (fields.password !== fields.verifyPassword) { - return toast.error('Passwords do not match.'); - } - - if (!utils.validMoniker(fields.moniker)) { - return toast.error( - 'Moniker can only contain letters, numbers and undercores.' - ); - } - - setVisibility(false); - - props.create(fields.moniker, fields.password.trim()); - - setFields({ - moniker: '', - password: '', - verifyPassword: '' - }); - }; - - const theme = { - bottomOffset: props.bottomOffset - }; - - return ( - - - - {show => - show && - (p => ( - - - - - - - - ); -}; - -export default Nominee; diff --git a/src/containers/Wrapper.tsx b/src/components/Wrapper.tsx similarity index 100% rename from src/containers/Wrapper.tsx rename to src/components/Wrapper.tsx diff --git a/src/components/animations/Animation.tsx b/src/components/animations/Animation.tsx deleted file mode 100644 index 929cebe..0000000 --- a/src/components/animations/Animation.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import React, { useState } from 'react'; - -import { config, Spring } from 'react-spring/renderprops'; - -interface Props { - direction: 'left' | 'right'; -} - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); - -const Animation: React.FunctionComponent = props => { - const [constants] = useState({ - marginLeft: 50, - marginRight: 50 - }); - - return ( - - {p => { - return React.Children.map(props.children, (child: any) => { - return React.cloneElement(child, { - style: { - ...child.props.style, - ...p - } - }); - }); - }} - - ); -}; - -export default Animation; diff --git a/src/containers/AccountDetail.tsx b/src/containers/AccountDetail.tsx deleted file mode 100644 index 46df9c4..0000000 --- a/src/containers/AccountDetail.tsx +++ /dev/null @@ -1,124 +0,0 @@ -import React from 'react'; - -import Utils, { Currency } from 'evm-lite-utils'; -import styled from 'styled-components'; - -import { useDispatch, useSelector } from 'react-redux'; -import { RouteComponentProps } from 'react-router-dom'; -import { config, Spring } from 'react-spring/renderprops'; -import { Header } from 'semantic-ui-react'; - -import { AccountsState, get as getAccount } from '../modules/accounts'; -import { IMonikerEVMAccount } from '../monet'; -import { Store } from '../store'; - -import AccountTransfer from '../components/AccountTransfer'; -import AccountUnlock from '../components/AccountUnlock'; -import Avatar from '../components/Avatar'; -import Banner from '../components/Banner'; -import FloatingButton from '../components/FloatingButton'; -import SJumbo from '../components/Jumbo'; -import LoadingButton from '../components/LoadingButton'; - -const SAddress = styled.span` - font-family: 'Cousine', monospace !important; -`; - -const SAvatarCustom = styled(Avatar)` - margin-right: 0px !important; - border-radius: 100px; -`; - -interface RouterProps { - address: string; -} - -interface Props extends RouteComponentProps {} - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); - -const AccountDetail: React.FunctionComponent = props => { - const dispatch = useDispatch(); - - const get = () => - dispatch(getAccount(Utils.cleanAddress(props.match.params.address))); - - // temp fix need to update this later with reselctjs - const accounts = useSelector(store => store.accounts); - const account = useSelector( - store => - store.accounts.all.filter( - acc => - Utils.cleanAddress(acc.address) === - Utils.cleanAddress(props.match.params.address) - )[0] || { - address: Utils.cleanAddress(props.match.params.address), - balance: new Currency(0), - nonce: 0, - bytecode: '' - } - ); - - const unlocked = - (accounts.unlocked && - Utils.cleanAddress(accounts.unlocked.address) === - Utils.cleanAddress(account.address)) || - false; - - return ( - - - - {p => ( -
- - - {capitalize(account.moniker || '')} - - - {Utils.cleanAddress( - props.match.params.address - )} - - - -
- )} -
-
- Nonce - {account.nonce} -
-
- Balance - - {account.balance.format('T')} - -
-
- Last updated a few seconds ago. - - {!unlocked && ( - - )} - - - -
- ); -}; - -export default AccountDetail; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index c17a171..4b63d99 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,124 +1,232 @@ -import React, { useEffect } from 'react'; -import styled from 'styled-components'; +import React, { useEffect, useState } from 'react'; -import Utils, { Currency } from 'evm-lite-utils'; +import utils, { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; -import { config, Spring } from 'react-spring/renderprops'; -import { Card, Header } from 'semantic-ui-react'; -import { AccountsState, create, list } from '../modules/accounts'; +import styled from 'styled-components'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Container from 'react-bootstrap/Container'; +import Image from 'react-bootstrap/Image'; +import Jumbotron from 'react-bootstrap/Jumbotron'; +import Row from 'react-bootstrap/Row'; + +import FloatButton from '../components/FloatButton'; + +import WhiteChev from '../assets/chev-white.svg'; +import { AccountsState, list } from '../modules/accounts'; +import { MonikerEVMAccount } from '../monet'; import { Store } from '../store'; -import AccountCard from '../components/AccountCard'; -import AccountCreate from '../components/AccountCreate'; -import Banner from '../components/Banner'; -import FloatingButton from '../components/FloatingButton'; -import SJumbo from '../components/Jumbo'; -import LoadingButton from '../components/LoadingButton'; +const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); -const SAccountsContainer = styled.div` - padding: 5px 0; +const SChevron = styled(Image)` + margin-left: 30px; `; -const Accounts: React.FunctionComponent<{}> = () => { - const dispatch = useDispatch(); +const SSidebar = styled(Col)` + box-shadow: 0 2px 20px -20px #eee !important; - const createAccount = (moniker: string, password: string) => - dispatch(create(moniker, password)) as any; - const refreshAccounts = () => dispatch(list()); + h5 { + background: #fefefe !important; + color: #263c99; + padding: 10px 20px !important; + margin-bottom: 0px; + } - const accounts = useSelector(store => store.accounts); + & ul { + max-height: calc(100vh - 86px - 121px - 44px) !important; + overflow-y: auto; + list-style: none; + background: #fff !important; + margin: 0 !important; + padding: 0 !important; + } - useEffect(() => { - refreshAccounts(); - }, []); + & li { + display: block; + padding: 10px 20px !important; + transition: background-color 100ms ease-in; + } - let totalBalance = new Currency(0); - accounts.all.map(account => { - totalBalance = totalBalance.plus(account.balance); - }); + & li span { + color: #666; + font-size: 13px; + padding: 0px !important; + display: block; + overflow-y: hidden; + } + + & li:hover { + cursor: pointer; + color: white !important; + background: #263c99ee !important; + + & span { + color: white; + } + } - let balance = totalBalance.format('T'); + & .active { + color: white !important; + box-shadow: 0 4px 6px -10px #fff inset !important; + background: #263c99 !important; - const b = balance.slice(0, -1); - const unit = balance.slice(-1); - const l = b.split('.'); + & span { + color: white; + } + } +`; + +const SDetail = styled.div` + box-shadow: 0 2px 20px -20px #eee !important; - if (l[1]) { - l[1] = l[1].slice(0, 4); + h5 { + padding: 10px 20px; + background: #fff !important; + color: #263c99 !important; + padding: 10px 20px !important; + margin-bottom: 0px; } +`; + +const Accounts: React.FunctionComponent<{}> = () => { + const dispatch = useDispatch(); + const refreshAccounts = () => dispatch(list()); + + const [activeAccount, setActiveAccount] = useState({ + address: '', + nonce: 0, + balance: new Currency(0), + bytecode: '', + moniker: '' + }); - balance = l.join('.'); + const accounts = useSelector(store => store.accounts); + + const isSelected = (account: MonikerEVMAccount) => + utils.cleanAddress(activeAccount.address) === + utils.cleanAddress(account.address); + const hasSelected = activeAccount.address !== ''; + + const bindActiveAccountSetter = (account: MonikerEVMAccount) => ( + e: any + ) => { + setActiveAccount(account); + }; + + useEffect(() => { + refreshAccounts(); + }, []); - balance += unit; + useEffect(() => { + if (accounts.all.length) { + if (!hasSelected) { + setActiveAccount(accounts.all[0]); + } + } + }, [accounts.all]); return ( - - - - {props => ( -
- Accounts - - Create new and manage existing accounts - -
+ <> + + + + +

Dashboard

+

View & Modify Existing Accounts

+ + +

Balance

+

+ {hasSelected + ? activeAccount.balance.format('T') + : 'Not Selected'} +

+ + +

Nonce

+

+ {hasSelected + ? activeAccount.nonce + : 'Not Selected'} +

+ +
+
+
+ + + +
Accounts
+
    + {accounts.all.map(account => ( +
  • + + + + + + {capitalize(account.moniker)} + + {account.address} + + + + + + +
  • + ))} +
+
+ {hasSelected && ( + + +
+ {capitalize(activeAccount.moniker)} + + + ({activeAccount.address}) + +
+
+
+ )} -
-
- Accounts - {accounts.all.length} -
-
- Total Balance - {balance} -
-
- - All accounts listed here are read in locally from your keystore. - - - - {accounts.all.map(account => ( - - ))} - - - - - - -
+ + + + + + ); }; diff --git a/src/containers/Configuration.tsx b/src/containers/Configuration.tsx deleted file mode 100644 index 8c2f479..0000000 --- a/src/containers/Configuration.tsx +++ /dev/null @@ -1,331 +0,0 @@ -import React, { useState } from 'react'; - -import styled from 'styled-components'; - -import { IConfiguration } from 'evm-lite-datadir'; -import { useDispatch, useSelector } from 'react-redux'; -import { Transition } from 'react-spring/renderprops'; -import { config as springConfig, Spring } from 'react-spring/renderprops'; -import { Form, Grid, Header, Input } from 'semantic-ui-react'; - -import { - ConfigurationState, - save, - setDirectory -} from '../modules/configuration'; -import { Store } from '../store'; - -import Avatar from '../components/Avatar'; -import Banner from '../components/Banner'; -import SJumbo from '../components/Jumbo'; - -const SColumn = styled(Grid.Column)` - background: #fff; - margin: 10px; - padding: 0 !important; - - & > div { - padding: 20px; - font-size: 15px; - padding-top: 0 !important; - } - - & .form { - padding: 10px; - padding-top: 0; - } - - & h3 { - padding: 10px 20px; - color: #333; - background: #fafafa; - border-bottom: 1px solid #f4f5f7; - } -`; - -const SPadding = styled.div` - margin: 25px 20px; - margin-bottom: 0 !important; -`; - -const SAvatarContainer = styled.div` - margin-bottom: 5px !important; - margin-top: 5px !important; - text-align: right !important; -`; - -const SAvatarColumn = styled(Grid.Column)` - align-content: right !important; - align-items: right !important; -`; - -const Configuration: React.FunctionComponent<{}> = () => { - const dispatch = useDispatch(); - - const config = useSelector( - store => store.config - ); - - const [directory, setDir] = useState(config.directory); - const [fields, setFields] = useState({ - host: '', - port: 0, - from: '', - gas: -1, - gasPrice: -1 - }); - - const setDataDir = () => dispatch(setDirectory(directory)); - const handleSaveConfig = () => { - let gas: number = fields.gas; - let gasPrice: number = fields.gasPrice; - - if (fields.gas < 0) { - gas = config.data.defaults.gas; - } - - if (fields.gasPrice < 0) { - gasPrice = config.data.defaults.gasPrice; - } - - const newConfig: IConfiguration = { - connection: { - host: fields.host || config.data.connection.host, - port: fields.port || config.data.connection.port - }, - defaults: { - from: fields.from || config.data.defaults.from, - gas, - gasPrice - } - }; - - dispatch(save(newConfig)); - }; - - return ( - - - - {props => ( -
- Configuration - - Set data directory and update configuration - -
- )} -
-
- - setDir(value)} - action={{ - color: 'blue', - labelPosition: 'right', - icon: 'folder', - onClick: setDataDir, - content: 'Set' - }} - /> - -
-
- - These configuration values will be read in by all actions across - the wallet and other evm-lite applications as default values. - - - {show => - show && - (p => ( - - - -

Connection

-
- The node's connection details. These - will be used to fetch account details. -
-
-
- - - - setFields({ - ...fields, - host: value - }) - } - defaultValue={ - config.data.connection - .host - } - placeholder="ex: 127.0.0.1" - /> - - - - - setFields({ - ...fields, - port: parseInt( - value, - 10 - ) - }) - } - type={'number'} - defaultValue={ - config.data.connection - .port - } - placeholder="ex: 8080" - /> - - - - Save - - -
-
-
- -

Defaults

-
- These values will be used as defaults - for any transactions sent. -
-
-
- - - - - - - - - - - setFields({ - ...fields, - from: value - }) - } - defaultValue={ - config.data - .defaults - .from - } - placeholder="ex: 0x5c3e95864f7eb2fd0789848f0a3368aa67b8439c" - /> - - - - - - - setFields({ - ...fields, - gas: parseInt( - value, - 10 - ) - }) - } - defaultValue={ - config.data.defaults.gas - } - type="number" - placeholder="ex: 10000" - /> - - - - - setFields({ - ...fields, - gasPrice: parseInt( - value, - 10 - ) - }) - } - defaultValue={ - config.data.defaults - .gasPrice - } - type="number" - placeholder="ex: 0" - /> - - - - Set Defaults - - -
-
-
-
-
- )) - } -
-
- ); -}; - -export default Configuration; diff --git a/src/containers/POA.tsx b/src/containers/POA.tsx deleted file mode 100644 index db82304..0000000 --- a/src/containers/POA.tsx +++ /dev/null @@ -1,164 +0,0 @@ -import React, { useEffect } from 'react'; -import styled from 'styled-components'; - -import Utils from 'evm-lite-utils'; - -import { useDispatch, useSelector } from 'react-redux'; -import { config, Spring } from 'react-spring/renderprops'; -import { Card, Container, Grid, Header } from 'semantic-ui-react'; - -import { Store } from '../store'; - -import { POAState, reload } from '../modules/poa'; - -import Banner from '../components/Banner'; -import FloatingButton from '../components/FloatingButton'; -import SJumbo from '../components/Jumbo'; -import LoadingButton from '../components/LoadingButton'; -import Nominee from '../components/Nominee'; - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); - -const SStatus = styled.div` - color: green !important; -`; - -const SPadding = styled.div` - margin: 25px 20px; - margin-bottom: 0 !important; -`; - -const SWhitelist = styled(Grid.Column)` - margin-top: 15px !important; - padding: 0 !important; -`; - -const SWhitelistItemPadding = styled.div` - padding: 10px !important; - padding-left: 20px !important; -`; - -const SWhitelistItem = styled.div` - margin-top: 15px !important; - padding-top: 10px !important; - padding-bottom: 10px !important; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) !important; - background: #fff; - border-top: 1px solid #eee; - - &:nth-child(2n) { - border-bottom: none !important; - } - - & h5 { - margin-bottom: 0 !important; - } - - & div { - word-break: break-all !important; - } -`; - -const POA: React.FunctionComponent<{}> = () => { - const dispatch = useDispatch(); - - const poa = useSelector(store => store.poa); - - const reloadPOAData = () => dispatch(reload()); - - useEffect(() => { - reloadPOAData(); - }, []); - - return ( - - - - {props => ( -
- Proof of Authority - - Create new and manage existing accounts - -
- )} -
-
- Status - - Online - -
-
- Validators - 3 -
-
- - All accounts listed here are read in locally from your keystore. - - - - - -

Nominees

-
- - {poa.nominees.map(nominee => ( - - ))} - - {!poa.nominees.length && 'No nominees found.'} -
-
-
- - -

Whitelist

-
-
- {poa.whitelist.map(item => ( - - -
{capitalize(item.moniker)}
-
- {Utils.cleanAddress(item.address)} -
-
-
- ))} - - {!poa.whitelist.length && - 'No whitelist entries found.'} - -
-
-
-
- - - -
- ); -}; - -export default POA; diff --git a/src/index.css b/src/index.css index ecb8031..fab3649 100644 --- a/src/index.css +++ b/src/index.css @@ -10,171 +10,44 @@ body { padding: 0 !important; } -.card { - padding: 3px !important; - border-radius: 0px !important; - box-shadow: none !important; - word-break: break-all; - font-family: 'Titillium Web', sans-serif !important; - /* box-shadow: 0 4px 20px -6px #ddd !important; */ - /* border: 1px solid #eee !important; */ - width: 320px !important; +.bg-light { + background: rgba(255, 255, 255, 0.95) !important; + height: 70px; + line-height: 70px !important; + color: #333 !important; + z-index: 2000; + box-shadow: 0 4px 6px -10px #f1f1f1 !important; + width: 100% !important; } a { - font-family: 'Titillium Web', sans-serif !important; -} - -.ui.label { - border-radius: 2px !important; -} - -.ui.label a { - background: transparent !important; - color: #000 !important; - margin: 0 !important; - padding: 0 10px !important; -} - -.ui.label a:hover { - background: transparent !important; - color: #000 !important; -} - -h2, -h1, -h3, -h4, -h5 { - font-family: 'Titillium Web', sans-serif !important; -} - -.cards { - margin: 0 !important; + /* color: inherit !important; */ + color: rgba(0, 0, 0, 0.6); } -.content { - padding-left: 20px !important; - padding-right: 20px !important; +a:hover { + text-decoration: none !important; + color: inherit !important; } -.ui.blue { - background: rgba(31, 66, 146, 1) !important; -} - -.ui.green { - background: #0d4b0d !important; -} - -.ui.yellow { - background: rgb(254, 218, 55) !important; -} - -.ui.inverted.green.segment { - background-color: rgb(23, 103, 57) !important; -} - -.ui.purple { - background: rgb(126, 66, 149) !important; -} - -.ui.red { - background: rgb(204, 29, 40) !important; -} - -button { - font-family: 'Titillium Web', sans-serif !important; +.jumbotron { border-radius: 0 !important; -} - -button.blue { - border-bottom: #0f2e94 3px solid !important; -} - -button.green { - border-bottom: #0d4b0d 3px solid !important; -} - -button.red { - border-bottom: #880202 3px solid !important; -} - -button.orange { - border-bottom: rgb(173, 97, 3) 3px solid !important; -} - -button.purple { - border-bottom: rgba(118, 70, 146, 1) 3px solid !important; -} - -button.yellow { - border-bottom: rgb(150, 130, 38) 3px solid !important; -} - -.is-active { - background: #fcfcfc !important; - color: #4183c4 !important; -} - -.ui.horizontal.segments { - border: 0 !important; - box-shadow: none !important; - margin-top: 0 !important; + padding: 20px 0 !important; + background: #fff !important; margin-bottom: 0 !important; - font-size: 25px !important; - box-shadow: 0 4px 20px -6px #eee !important; - /* box-shadow: 0 1px 1px rgba(0, 0, 0, 0.03) !important; */ - /* margin-bottom: 1px !important; */ -} - -.ui.horizontal.segments .segment { - border: 0 !important; - padding: 20px; -} - -.selection { - border: 1px solid #eee !important; - padding: 16px !important; - margin-bottom: 4px !important; -} - -.dropdown { - padding: 16px !important; -} - -input[type='text'], -input[type='number'], -input[type='password'] { - font-family: 'Titillium Web', sans-serif !important; - border: 1px solid #eee !important; - padding: 12px !important; - margin: 0px !important; -} - -.ui.info.message { - border-radius: 2px !important; -} - -.toast-custom { - box-shadow: 0 4px 20px -6px #000 !important; - padding: 5px 20px !important; - color: #333; } -.Toastify__toast--error { - box-shadow: 0 4px 20px -6px #000 !important; - color: white !important; - background: rgb(204, 29, 40) !important; +p { + color: rgba(0, 0, 0, 0.7) !important; } -.Toastify__toast--success { - box-shadow: 0 4px 20px -6px #000 !important; - background: #0d4b0d !important; - color: white !important; +.address { + font-family: 'Cousine', monospace !important; + font-size: 15px; } -.Toastify__toast--info { - box-shadow: 0 4px 20px -6px #000 !important; - color: white !important; - background: rgba(31, 66, 146, 1) !important; +.btn-warning { + background: #f16622 !important; + border: none !important; + color: #eee !important; } diff --git a/src/index.ts b/src/index.ts index 9b9daff..4658eda 100644 --- a/src/index.ts +++ b/src/index.ts @@ -16,6 +16,8 @@ function createWindow() { width: 1350, height: 757, title: 'Monet Wallet', + resizable: false, + fullscreen: false, icon }); diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 633337e..8ea8796 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -8,7 +8,7 @@ import Keystore, { IMonikerBaseAccount, IV3Keyfile } from 'evm-lite-keystore'; import utils, { Currency } from 'evm-lite-utils'; import { BaseAction, errorHandler, ThunkResult } from '.'; -import { IMonikerEVMAccount, MonetDataDir, MonikerAccount } from '../monet'; +import { MonetDataDir, MonikerAccount, MonikerEVMAccount } from '../monet'; // Lists all accounts in keystore const LIST_REQUEST = '@monet/accounts/LIST/REQUEST'; @@ -39,7 +39,7 @@ const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; // Accounts state structure export interface AccountsState { // Entire list of accounts - readonly all: IMonikerEVMAccount[]; + readonly all: MonikerEVMAccount[]; // Currently unlocked account readonly unlocked?: MonikerAccount; @@ -258,9 +258,9 @@ export default function reducer( * Should list all acounts from the keystore. It will update the redux state * and set the `all` attribute to the desired result. */ -export function list(): ThunkResult> { +export function list(): ThunkResult> { return async (dispatch, getState) => { - let accounts: IMonikerEVMAccount[] = []; + let accounts: MonikerEVMAccount[] = []; const { config } = getState(); const error = errorHandler.bind(null, dispatch, LIST_ERROR); @@ -330,11 +330,11 @@ export type IAccountsCreate = ( export function create( moniker: string, password: string -): ThunkResult> { +): ThunkResult> { return async (dispatch, getState) => { const { config } = getState(); - const account: IMonikerEVMAccount = { + const account: MonikerEVMAccount = { address: '', balance: new Currency(0), nonce: 0, diff --git a/src/monet.ts b/src/monet.ts index daefa74..5dd4cd7 100644 --- a/src/monet.ts +++ b/src/monet.ts @@ -6,7 +6,7 @@ import { Account, IEVMAccount } from 'evm-lite-core'; import DataDirectory from 'evm-lite-datadir'; import Keystore from 'evm-lite-keystore'; -export interface IMonetInfo extends IBaseInfo { +export type MonetInfo = IBaseInfo & { consensus_events: string; consensus_transactions: string; events_per_second: string; @@ -21,11 +21,11 @@ export interface IMonetInfo extends IBaseInfo { sync_rate: string; transaction_pool: string; undetermined_events: string; -} +}; -export interface IMonikerEVMAccount extends IEVMAccount { +export type MonikerEVMAccount = IEVMAccount & { moniker: string; -} +}; // monet specific class definitions export class MonikerAccount extends Account { diff --git a/tslint.json b/tslint.json index 6e43a1c..2a5e948 100644 --- a/tslint.json +++ b/tslint.json @@ -1,5 +1,5 @@ { - "extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"], + "extends": ["tslint:recommended", "tslint-config-prettier"], "linterOptions": { "exclude": [ "config/**/*.js", @@ -13,6 +13,7 @@ "interface-name": false, "object-literal-sort-keys": false, "jsx-no-lambda": false, - "max-classes-per-file": false + "max-classes-per-file": false, + "interface-over-type-literal": false } } diff --git a/wireframes/Monet Wallet.xd b/wireframes/Monet Wallet.xd new file mode 100644 index 0000000000000000000000000000000000000000..a09bf93de7081d226aa29bcee00da8e4ba14a427 GIT binary patch literal 169811 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
V4mxOCc)O}+zh@31fpOU~RsJ`82 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 D6_kAn literal 0 HcmV?d00001 From 91ffa7da96ee3d181b10ec23e16d40f529d679cc Mon Sep 17 00:00:00 2001 From: Danu Date: Tue, 1 Oct 2019 10:27:13 +0100 Subject: [PATCH 03/30] update: More UI updates and start on SELECT redux action --- src/components/Header.tsx | 47 ++++++++--- src/components/Wrapper.tsx | 16 +--- src/containers/Accounts.tsx | 156 ++---------------------------------- src/index.css | 30 +++++-- src/modules/accounts.ts | 4 + wireframes/placeholder | 0 6 files changed, 72 insertions(+), 181 deletions(-) delete mode 100644 wireframes/placeholder diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 1c2c776..6395c9b 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,24 +1,32 @@ import React from 'react'; +import utils from 'evm-lite-utils'; + +import { useSelector } from 'react-redux'; import { NavLink } from 'react-router-dom'; +import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Image from 'react-bootstrap/Image'; import Nav from 'react-bootstrap/Nav'; import Navbar from 'react-bootstrap/Navbar'; +import NavDropdown from 'react-bootstrap/NavDropdown'; +import Row from 'react-bootstrap/Row'; -import { MonikerAccount } from '../monet'; +import { AccountsState } from '../modules/accounts'; +import { Store } from '../store'; import Logo from '../assets/monet_logo.png'; -type Props = { - unlocked: MonikerAccount | undefined; - reset: any; -}; +const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); + +type Props = {}; const Header: React.FunctionComponent = props => { + const accounts = useSelector(store => store.accounts); + return ( - + @@ -26,13 +34,32 @@ const Header: React.FunctionComponent = props => { + + {accounts.all.map(account => ( + + + + + + + {capitalize(account.moniker)} + + + ))} + ); diff --git a/src/components/Wrapper.tsx b/src/components/Wrapper.tsx index 37027ff..1df0633 100644 --- a/src/components/Wrapper.tsx +++ b/src/components/Wrapper.tsx @@ -1,25 +1,11 @@ import React from 'react'; -import { useDispatch, useSelector } from 'react-redux'; - -import { resetUnlock } from '../modules/accounts'; -import { MonikerAccount } from '../monet'; -import { Store } from '../store'; - import Header from '../components/Header'; const Wrapper: React.FunctionComponent<{}> = props => { - const dispatch = useDispatch(); - - const unlocked = useSelector( - store => store.accounts.unlocked - ); - - const reset = () => dispatch(resetUnlock()); - return ( - - + {/*
0 Seconds ago
Last Updated
- + */}

{parseBalance(account.balance)}

Balance
@@ -114,12 +126,12 @@ const Account: React.FC> = props => {

{account.nonce}

Nonce
- + {/*

-
Validator
- +
???
+ */}
diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index f569e06..9ea14e8 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,9 +1,10 @@ -import React from 'react'; +import React, { useEffect } from 'react'; +import ReactTooltip from 'react-tooltip'; import styled from 'styled-components'; -import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +// import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; +// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; import { Link } from 'react-router-dom'; @@ -20,12 +21,13 @@ import NewAccount from '../components/NewAccount'; import { listAccounts } from '../modules/accounts'; import { selectAccounts, selectListAccountLoading } from '../selectors'; -import { parseBalance } from '../utils'; +import { capitalize, parseBalance } from '../utils'; const SAccounts = styled.div` padding: 30px !important; border-bottom: var(--border); z-index: 100; + padding-bottom: 10px !important; `; const SStatistic = styled.div` @@ -33,14 +35,17 @@ const SStatistic = styled.div` /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ width: 100%; border-bottom: var(--border); - background: #fff; + /* background: var(--blue); */ + /* color: white; */ + font-weight: 600 !important; h3 { + /* color: var(--blue) !important; */ font-size: 35px; } .col { - padding: 10px 0; + padding: 20px 0; border-right: var(--border); } `; @@ -50,7 +55,7 @@ const SAvatar = styled.div` opacity: 0.9; cursor: pointer; display: inline-block; - margin-bottom: 15px; + margin-bottom: 25px; :hover { opacity: 1; @@ -72,12 +77,16 @@ const Accounts: React.FC = () => { totalBalance = totalBalance.plus(account.balance); }); + useEffect(() => { + ReactTooltip.rebuild(); + }); + return ( <>
{' '}
@@ -91,13 +100,21 @@ const Accounts: React.FC = () => {

{accounts.length}

Accounts
+ {/* +

???

+
???
+ */}

Select an account view more options

+ {accounts.map(a => ( - + diff --git a/src/index.ts b/src/index.ts index 3e0e070..1e432d8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -23,8 +23,8 @@ function createWindow() { // createMenu(); - main.loadURL(`file://${__dirname}/index.html`); - // main.loadURL(`http://localhost:8081`); + // main.loadURL(`file://${__dirname}/index.html`); + main.loadURL(`http://localhost:8081`); main.on('closed', () => { main = null; diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 5f3539e..ef5befc 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -5,12 +5,7 @@ import { Currency } from 'evm-lite-utils'; import { toast } from 'react-toastify'; import { BaseAction, errorHandler, ThunkResult } from '.'; -import { - MonetDataDir, - MonetInfo, - MonikerAccount, - MonikerEVMAccount -} from '../monet'; +import { MonetDataDir, MonetInfo, MonikerEVMAccount } from '../monet'; // Lists all accounts in keystore const LIST_INIT = '@monet/accounts/LIST/INIT'; @@ -32,9 +27,6 @@ export type AccountsState = { // Entire list of accounts readonly all: MonikerEVMAccount[]; - // Currently unlocked account - readonly selected?: MonikerAccount; - // A single error field to be used by this module for any action readonly error?: string; @@ -42,9 +34,7 @@ export type AccountsState = { readonly loading: { transfer: boolean; list: boolean; - get: boolean; create: boolean; - unlock: boolean; }; }; @@ -53,9 +43,7 @@ const initialState: AccountsState = { all: [], loading: { list: false, - get: false, create: false, - unlock: false, transfer: false } }; diff --git a/src/selectors/index.ts b/src/selectors/index.ts index 95ad29e..f0d6985 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -1,14 +1,11 @@ import { Store } from '../store'; -export const selectedAccount = (store: Store) => store.accounts.selected; export const selectAccounts = (store: Store) => store.accounts.all; export const selectAccountReducer = (store: Store) => store.accounts; export const selectTransferLoading = (store: Store) => store.accounts.loading.transfer; -export const selectGetAccountLoading = (store: Store) => - store.accounts.loading.get; export const selectListAccountLoading = (store: Store) => store.accounts.loading.list; diff --git a/src/utils.ts b/src/utils.ts index 650a034..8a80a35 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -16,3 +16,7 @@ export const parseBalance = (balance: Currency) => { return l.join('.') + 'T'; }; + +export const isLetter = (str: string) => { + return str.length === 1 && str.match(/[a-z]/i); +}; diff --git a/yarn.lock b/yarn.lock index 7492365..371eec5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -349,6 +349,13 @@ "@types/history" "*" "@types/react" "*" +"@types/react-tooltip@^3.11.0": + version "3.11.0" + resolved "https://registry.yarnpkg.com/@types/react-tooltip/-/react-tooltip-3.11.0.tgz#e7e7e9c67629f2b6f75ea67752922c9de0b64468" + integrity sha512-TkXMgkZ5aAKkFE9Wvt8OlOiPtF9ufgBOL9xWlRSzLBaoL12qSOBiyMcU4/8TyED1fuWkm5VTVarScwOPLSArYw== + dependencies: + "@types/react" "*" + "@types/react@*", "@types/react@^16.8.23", "@types/react@^16.9.3": version "16.9.9" resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.9.tgz#a62c6f40f04bc7681be5e20975503a64fe783c3a" @@ -1644,7 +1651,7 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" -classnames@^2.2.6: +classnames@^2.2.5, classnames@^2.2.6: version "2.2.6" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== @@ -5601,7 +5608,7 @@ prop-types-extra@^1.1.0: react-is "^16.3.2" warning "^3.0.0" -prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: +prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -5938,6 +5945,14 @@ react-toastify@^5.4.0: prop-types "^15.7.2" react-transition-group "^2.6.1" +react-tooltip@^3.11.1: + version "3.11.1" + resolved "https://registry.yarnpkg.com/react-tooltip/-/react-tooltip-3.11.1.tgz#7b4ce48ed26a46e996662b19a2afebbfd483513b" + integrity sha512-YCMVlEC2KuHIzOQhPplTK5jmBBwoL+PYJJdJKXj7M/h7oevupd/QSVq6z5U7/ehIGXyHsAqvwpdxexDfyQ0o3A== + dependencies: + classnames "^2.2.5" + prop-types "^15.6.0" + react-transition-group@^2.6.1: version "2.9.0" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.9.0.tgz#df9cdb025796211151a436c69a8f3b97b5b07c8d" From 1ea69de5a06df8cbeb499f48508bd45b2f472cee Mon Sep 17 00:00:00 2001 From: Danu Date: Thu, 14 Nov 2019 14:48:55 +0000 Subject: [PATCH 19/30] update: Added animation to accounts on load --- src/containers/Account.tsx | 6 ++++-- src/containers/Accounts.tsx | 30 +++++++++++++++++++----------- src/index.css | 2 -- types/react-reveal/index.d.ts | 5 +++++ 4 files changed, 28 insertions(+), 15 deletions(-) diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 1f83741..50dcc2b 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -1,6 +1,6 @@ import React, { useEffect, useState } from 'react'; -import { Currency } from 'evm-lite-utils'; +import Utils, { Currency } from 'evm-lite-utils'; import ReactTooltip from 'react-tooltip'; import styled from 'styled-components'; @@ -100,7 +100,9 @@ const Account: React.FC> = props => { <>
} - title={`${capitalize(account.moniker)}`} + title={`${capitalize(account.moniker)} (${Utils.cleanAddress( + account.address + )})`} > {' '} {' '} diff --git a/src/components/Update.tsx b/src/components/Update.tsx new file mode 100644 index 0000000..77fb183 --- /dev/null +++ b/src/components/Update.tsx @@ -0,0 +1,130 @@ +import React, { useState } from 'react'; + +import styled from 'styled-components'; + +import { useDispatch, useSelector } from 'react-redux'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import InputGroup from 'react-bootstrap/InputGroup'; + +import Loader from './Loader'; + +import { MonikerEVMAccount } from 'src/monet'; +import { transfer } from '../modules/accounts'; +import { selectTransferLoading } from '../selectors'; +import { isLetter } from '../utils'; + +const STransfer = styled.div` + padding-top: 20px; + + td { + padding-right: 10px; + } + + h5 { + margin-bottom: 25px !important; + } +`; + +type Props = { + account: MonikerEVMAccount; + getAccount: () => any; +}; + +const Update: React.FC = props => { + const dispatch = useDispatch(); + + // const error = useSelector(selectAccountError); + const loading = useSelector(selectTransferLoading); + + const [success, setSuccess] = useState(''); + const [to, setTo] = useState(''); + const [value, setValue] = useState(''); + const [passphrase, setPassphrase] = useState(''); + + console.log(success); + + const makeTransfer = async () => { + if (isLetter(value.slice(-1))) { + await dispatch( + transfer(props.account.moniker, passphrase, to, value) + ); + } else { + await dispatch( + transfer(props.account.moniker, passphrase, to, value + 'T') + ); + } + + setTo(''); + setValue(''); + + setSuccess('Transfer successful'); + await props.getAccount(); + + setTimeout(() => { + setSuccess(''); + }, 3000); + }; + + return ( + + + + +
Change Password
+ + setTo(e.target.value)} + value={to} + type="text" + placeholder="Current Passphrase" + /> + + The address you wish to transfer to. + + + + + + setValue(e.target.value) + } + value={value} + placeholder="New Passphrase" + /> + + + + Enter an amount in tenom + + + + + setPassphrase(e.target.value) + } + value={passphrase} + type="password" + placeholder="Confirm New Passphrase" + /> + + {' '} + + + +
+ +
+ ); +}; + +export default Update; diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 50dcc2b..6607c2d 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -19,6 +19,7 @@ import Avatar from '../components/Avatar'; import Header from '../components/Header'; import Loader from '../components/Loader'; import Transfer from '../components/Transfer'; +import Update from '../components/Update'; import { MonikerEVMAccount } from 'src/monet'; import { selectAccounts, selectConfig } from '../selectors'; @@ -51,6 +52,11 @@ const STransfer = styled.div` border-bottom: var(--border); `; +const SUpdate = styled.div` + padding: 30px !important; + border-bottom: var(--border); +`; + type Props = { moniker: string; }; @@ -144,6 +150,12 @@ const Account: React.FC> = props => { account={account} /> + + fetchAccount(account)} + account={account} + /> +
Account Actions
  • Change Password
  • diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index c7d55e4..43141f3 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -114,7 +114,7 @@ const Accounts: React.FC = () => {

    Select an account view more options

    - +
    {accounts.map(a => ( = props => { {isConnected && ( <>

    {minGasPrice || 0} Attoms

    -
    Gas Price
    +
    Current Gas Price
    )}
    diff --git a/src/index.ts b/src/index.ts index 4fc97a3..1be45f3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -23,8 +23,8 @@ function createWindow() { // createMenu(); - main.loadURL(`file://${__dirname}/index.html`); - // main.loadURL(`http://localhost:8081`); + // main.loadURL(`file://${__dirname}/index.html`); + main.loadURL(`http://localhost:8081`); main.on('closed', () => { main = null; diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index ef5befc..0a925d9 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -1,6 +1,6 @@ import { Account, Monet } from 'evm-lite-core'; import { AbstractKeystore } from 'evm-lite-keystore'; -import { Currency } from 'evm-lite-utils'; +import Utils, { Currency } from 'evm-lite-utils'; import { toast } from 'react-toastify'; @@ -153,7 +153,7 @@ export function listAccounts( let accounts: MonikerEVMAccount[] = []; const { config } = getState(); - const error = errorHandler.bind(null, dispatch, LIST_ERROR); + const error = errorHandler(dispatch, LIST_ERROR); dispatch({ type: LIST_INIT @@ -164,6 +164,15 @@ export function listAccounts( .listKeyfiles() .catch(() => error('Could not load accounts')); + if (!mk) { + dispatch({ + type: LIST_ERROR, + error: 'Could not load accounts from keystore' + }); + + return; + } + accounts = Object.keys(mk).map(moniker => ({ address: mk[moniker].address, balance: new Currency(0), @@ -209,7 +218,7 @@ export function transfer( const state = getState(); const config = state.config.data; - const error = errorHandler.bind(null, dispatch, TRANSFER_ERROR); + const error = errorHandler(dispatch, TRANSFER_ERROR); dispatch({ type: TRANSFER_INIT @@ -226,12 +235,24 @@ export function transfer( return; }); + if (Utils.cleanAddress(to).length !== 42) { + error('Invalid receipient address'); + } + if (info) { + let account: Account; + try { const datadir = new MonetDataDir(state.config.directory); const keyfile = await datadir.getKeyfile(moniker); - const account = MonetDataDir.decrypt(keyfile, passphrase); + account = MonetDataDir.decrypt(keyfile, passphrase); + } catch (e) { + error('Incorrect passphrase'); + return; + } + + try { const receipt = await node.transfer( account, to, @@ -247,7 +268,9 @@ export function transfer( toast.success('Transfer successful'); } catch (e) { - error(e.toString()); + error( + 'Looks like theres a proble with the connection to the node' + ); } } } else { diff --git a/src/modules/index.ts b/src/modules/index.ts index caeea47..f1d2204 100644 --- a/src/modules/index.ts +++ b/src/modules/index.ts @@ -1,6 +1,5 @@ import { ThunkAction } from 'redux-thunk'; -import { toast } from 'react-toastify'; import { combineReducers } from 'redux'; import { Store } from '../store'; @@ -8,13 +7,13 @@ import { Store } from '../store'; import accounts from './accounts'; import config from './config'; -export const errorHandler = (dispatch: any, action: string, error: string) => { +export const errorHandler = (dispatch: any, action: string) => ( + error: string +) => { dispatch({ type: action, payload: error }); - - return toast.error(error); }; export type ThunkResult = ThunkAction>; From 095022599e3d2aa3ce47a40846dd02481436f7b5 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 11:10:10 +0000 Subject: [PATCH 23/30] update: Removed all replicated code and abstracted styling --- src/app/App.tsx | 13 +- src/assets/loader-circle.svg | 1 + src/assets/monet.svg | 41 ++++++ src/components/Await.tsx | 18 +++ src/components/Header.tsx | 4 +- src/components/Loader.tsx | 6 +- src/components/Sidebar.tsx | 73 +++++----- src/components/styles.tsx | 24 ++++ src/containers/Account.tsx | 97 ++++++------- src/containers/Accounts.tsx | 97 +++++++------ src/containers/Settings.tsx | 10 +- src/index.css | 2 +- src/modules/accounts.ts | 16 +-- src/modules/index.ts | 4 +- src/modules/{config.ts => settings.ts} | 54 +++---- src/selectors/index.ts | 8 +- src/store.ts | 6 +- src/utils.ts | 14 ++ yarn.lock | 190 +------------------------ 19 files changed, 303 insertions(+), 375 deletions(-) create mode 100644 src/assets/loader-circle.svg create mode 100644 src/assets/monet.svg create mode 100644 src/components/Await.tsx create mode 100644 src/components/styles.tsx rename src/modules/{config.ts => settings.ts} (71%) diff --git a/src/app/App.tsx b/src/app/App.tsx index cb1d35a..10bcdde 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -6,8 +6,7 @@ import { useDispatch } from 'react-redux'; import { HashRouter, Route } from 'react-router-dom'; import { ToastContainer } from 'react-toastify'; -import { listAccounts } from '../modules/accounts'; -import { initConfig } from '../modules/config'; +import { initSettings } from '../modules/settings'; import Account from '../containers/Account'; import Accounts from '../containers/Accounts'; @@ -18,12 +17,14 @@ import Wrapper from '../components/Wrapper'; const App: React.FunctionComponent<{}> = () => { const dispatch = useDispatch(); - const initConf = () => dispatch(initConfig()); - const initAccounts = () => dispatch(listAccounts(true)); + const initConf = () => dispatch(initSettings()); + + const initApp = async () => { + await initConf(); + }; useEffect(() => { - initConf(); - initAccounts(); + initApp(); }, []); return ( diff --git a/src/assets/loader-circle.svg b/src/assets/loader-circle.svg new file mode 100644 index 0000000..75fa661 --- /dev/null +++ b/src/assets/loader-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/monet.svg b/src/assets/monet.svg new file mode 100644 index 0000000..40a9ca3 --- /dev/null +++ b/src/assets/monet.svg @@ -0,0 +1,41 @@ + + + diff --git a/src/components/Await.tsx b/src/components/Await.tsx new file mode 100644 index 0000000..4448cd6 --- /dev/null +++ b/src/components/Await.tsx @@ -0,0 +1,18 @@ +import React from 'react'; + +type Props = { + await: boolean; + fallback: JSX.Element; +}; + +const Await: React.FC = props => { + let elements = props.children; + + if (props.await) { + elements = props.fallback; + } + + return <>{elements}; +}; + +export default Await; diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 7f507a1..6c4105e 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -11,7 +11,9 @@ const SHeader = styled.div` height: 60px; line-height: 60px; width: 100%; - /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ + /* background: var(--blue); */ + /* color: white !important; */ + box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); border-bottom: 1px solid #eee; padding: 0 15px; `; diff --git a/src/components/Loader.tsx b/src/components/Loader.tsx index e6b1227..1337a58 100644 --- a/src/components/Loader.tsx +++ b/src/components/Loader.tsx @@ -2,7 +2,7 @@ import React from 'react'; import Image from 'react-bootstrap/Image'; -import LOADER from '../assets/loader.svg'; +import LOADER from '../assets/loader-circle.svg'; type Props = { loading: boolean; @@ -13,8 +13,8 @@ const Loader: React.FC = props => { return !!props.loading ? ( ) : ( <> diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx index dedf420..d92b996 100644 --- a/src/components/Sidebar.tsx +++ b/src/components/Sidebar.tsx @@ -6,7 +6,7 @@ import { faCog, faUser } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { Link } from 'react-router-dom'; -import LOGO from '../assets/icon.png'; +import LOGO from '../assets/monet.svg'; type Props = {}; @@ -14,15 +14,16 @@ const SSidebar = styled.div` /* width: 300px; */ height: 100vh; background: #fff; - /* box-shadow: 0 2px 40px rgba(0, 0, 0, 0.03); */ - border-right: 1px solid #eee; + box-shadow: 0 2px 60px rgba(0, 0, 0, 0.2); + border-right: var(--border); + background: var(--blue); `; const SLogo = styled.div` font-family: Monet; height: 60px; line-height: 60px; - border-bottom: 1px solid #eee; + border-bottom: 1px solid #1e3383; font-size: 18px; letter-spacing: 3px; color: var(--blue); @@ -34,6 +35,8 @@ const SLogo = styled.div` } `; +const SNav = styled.div``; + const SLinks = styled.div` margin-bottom: 50px; @@ -41,7 +44,7 @@ const SLinks = styled.div` font-size: 14px; text-transform: uppercase; letter-spacing: 0px; - color: #777; + color: #ccc; margin-left: 20px; font-weight: 700; margin-bottom: 15px; @@ -58,11 +61,11 @@ const SLinks = styled.div` font-family: 'Titillium Web', sans-serif; list-style: none; font-size: 16px; - border-bottom: 1px solid #f3f3f3; + border-bottom: 1px solid #1e3383; } li:first-child { - border-top: 1px solid #f3f3f3 !important; + border-top: 1px solid #1e3383; } a { @@ -71,7 +74,7 @@ const SLinks = styled.div` } transition: background 0.1s cubic-bezier(1, 1, 1, 1); - color: #333; + color: #eee; font-weight: 600; display: block !important; padding: 12px 30px !important; @@ -88,33 +91,35 @@ const Sidebar: React.FunctionComponent = () => { return ( - - Monet + -
    -
    - -

    Actions

    -
      -
    • - - - Accounts - -
    • -
    -
    - - -
      -
    • - - - Settings - -
    • -
    -
    + + +
    +
    + +

    Actions

    +
      +
    • + + + Accounts + +
    • +
    +
    + + +
      +
    • + + + Settings + +
    • +
    +
    +
    ); }; diff --git a/src/components/styles.tsx b/src/components/styles.tsx new file mode 100644 index 0000000..a20a0bd --- /dev/null +++ b/src/components/styles.tsx @@ -0,0 +1,24 @@ +import styled from 'styled-components'; + +export const SStatistic = styled.div` + width: 100%; + font-weight: 600 !important; + border-bottom: var(--border); + + h3 { + font-size: 35px; + + img { + margin-right: 5px; + } + } + + .col { + padding: 20px 0; + border-right: var(--border); + } +`; + +export const SSection = styled.div` + padding: 30px; +`; diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 6607c2d..649e54d 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -4,56 +4,36 @@ import Utils, { Currency } from 'evm-lite-utils'; import ReactTooltip from 'react-tooltip'; import styled from 'styled-components'; -// import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; -// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { Monet } from 'evm-lite-core'; import { useSelector } from 'react-redux'; import { RouteComponentProps } from 'react-router-dom'; -import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Row from 'react-bootstrap/Row'; import Avatar from '../components/Avatar'; +import Await from '../components/Await'; import Header from '../components/Header'; import Loader from '../components/Loader'; import Transfer from '../components/Transfer'; import Update from '../components/Update'; +import { SSection, SStatistic } from '../components/styles'; + import { MonikerEVMAccount } from 'src/monet'; import { selectAccounts, selectConfig } from '../selectors'; -import { capitalize, parseBalance } from '../utils'; - -const SStatistic = styled.div` - /* background: #fff; */ - /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ - width: 100%; - font-weight: 600 !important; - border-bottom: var(--border); - - h3 { - font-size: 35px; - } - - .col { - padding: 20px 0; - border-right: var(--border); - } -`; +import { capitalize, commaSeperate, parseBalance } from '../utils'; -const SSettings = styled.div` - padding: 30px !important; +const SSettings = styled(SSection)` display: none; `; -const STransfer = styled.div` - padding: 30px !important; +const STransfer = styled(SSection)` border-bottom: var(--border); `; -const SUpdate = styled.div` - padding: 30px !important; +const SUpdate = styled(SSection)` border-bottom: var(--border); `; @@ -102,6 +82,18 @@ const Account: React.FC> = props => { ReactTooltip.hide(); }, []); + // polling for accounts + // let poller: any; + // useEffect(() => { + // poller = setInterval(() => { + // fetchAccount(account); + // }, 10000); + + // return () => { + // clearInterval(poller); + // }; + // }, []); + return ( <>
    > = props => { title={`${capitalize(account.moniker)} (${Utils.cleanAddress( account.address )})`} - > - {' '} - -
    + >
    - {/* -
    0 Seconds ago
    -
    Last Updated
    - */} -

    {parseBalance(account.balance)}

    +

    + } + > + + {commaSeperate( + parseBalance(account.balance).slice( + 0, + -1 + ) + )} + +

    Balance
    -

    {account.nonce}

    +

    + } + > + {account.nonce} + +

    Nonce
    - {/* -

    - -

    -
    ???
    - */}
    - fetchAccount(account)} diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 43141f3..ef02528 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -3,55 +3,38 @@ import React, { useEffect } from 'react'; import ReactTooltip from 'react-tooltip'; import styled from 'styled-components'; -// import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; -// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; import { Link } from 'react-router-dom'; -import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Row from 'react-bootstrap/Row'; -import Zoom from 'react-reveal/Flip'; +import Zoom from 'react-reveal/Slide'; import Avatar from '../components/Avatar'; +import Await from '../components/Await'; import Header from '../components/Header'; import Loader from '../components/Loader'; import NewAccount from '../components/NewAccount'; -import { listAccounts } from '../modules/accounts'; -import { selectAccounts, selectListAccountLoading } from '../selectors'; -import { capitalize, parseBalance } from '../utils'; +import { SSection, SStatistic } from '../components/styles'; -const SAccounts = styled.div` +import { listAccounts } from '../modules/accounts'; +import { + selectAccounts, + selectConfig, + selectListAccountLoading +} from '../selectors'; +import { capitalize, commaSeperate, parseBalance } from '../utils'; + +const SAccounts = styled(SSection)` transition: height 1s cubic-bezier(1, 0, 0, 1); - padding: 30px !important; border-bottom: var(--border); z-index: 100; padding-bottom: 10px !important; `; -const SStatistic = styled.div` - /* background: #fff; */ - /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ - width: 100%; - border-bottom: var(--border); - /* background: var(--blue); */ - /* color: white; */ - font-weight: 600 !important; - - h3 { - /* color: var(--blue) !important; */ - font-size: 35px; - } - - .col { - padding: 20px 0; - border-right: var(--border); - } -`; - const SAvatar = styled.div` transition: opacity 0.2s cubic-bezier(1, 1, 1, 1); opacity: 0.9; @@ -70,6 +53,7 @@ const Accounts: React.FC = () => { const dispatch = useDispatch(); const accounts = useSelector(selectAccounts); + const config = useSelector(selectConfig); const loading = useSelector(selectListAccountLoading); const refresh = () => dispatch(listAccounts(true)); @@ -80,40 +64,67 @@ const Accounts: React.FC = () => { }); useEffect(() => { - ReactTooltip.rebuild(); + refresh(); + }, [config]); + useEffect(() => { + ReactTooltip.rebuild(); return () => ReactTooltip.rebuild(); }, [accounts]); + // polling for accounts + // let poller: any; + // useEffect(() => { + // poller = setInterval(() => { + // refresh(); + // }, 10000); + + // return () => { + // clearInterval(poller); + // }; + // }, []); + return ( <> -
    - {' '} - -
    +
    -

    {parseBalance(totalBalance)}

    +

    + } + > + + {commaSeperate( + parseBalance(totalBalance).slice(0, -1) + )} + +

    Total Balance
    -

    {accounts.length}

    +

    + } + > + {accounts.length} + +

    Accounts
    - {/* -

    ???

    -
    ???
    - */}

    Select an account view more options

    -
    {accounts.map(a => ( diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx index 235ea74..de0a65f 100644 --- a/src/containers/Settings.tsx +++ b/src/containers/Settings.tsx @@ -14,13 +14,13 @@ import Form from 'react-bootstrap/Form'; import Header from '../components/Header'; import Loader from '../components/Loader'; -import { save, setDirectory } from '../modules/config'; +import { save, setDatadir } from '../modules/settings'; import { MonetInfo } from '../monet'; import { selectConfig, - selectConfigError, selectConfigSaveLoading, - selectDatadir + selectDatadir, + selectSettingsError } from '../selectors'; const SContent = styled.div` @@ -37,7 +37,7 @@ const Settings: React.FC = props => { const dispatch = useDispatch(); const config = useSelector(selectConfig); - const error = useSelector(selectConfigError); + const error = useSelector(selectSettingsError); const datadir = useSelector(selectDatadir); const loading = useSelector(selectConfigSaveLoading); @@ -48,7 +48,7 @@ const Settings: React.FC = props => { const saveConfig = async () => { if (datadir !== vdatadir) { - await dispatch(setDirectory(vdatadir)); + await dispatch(setDatadir(vdatadir)); } if (!error) { diff --git a/src/index.css b/src/index.css index 5e9c50a..b6c3883 100644 --- a/src/index.css +++ b/src/index.css @@ -24,7 +24,7 @@ body { -webkit-font-smoothing: antialiased; overflow-x: hidden; - background: #f9f9f9 !important; + background: #fff !important; line-height: 1.7; } diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 0a925d9..a5d4cfe 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -152,14 +152,14 @@ export function listAccounts( return async (dispatch, getState) => { let accounts: MonikerEVMAccount[] = []; - const { config } = getState(); + const { settings } = getState(); const error = errorHandler(dispatch, LIST_ERROR); dispatch({ type: LIST_INIT }); - const datadir = new MonetDataDir(config.directory); + const datadir = new MonetDataDir(settings.datadir); const mk = await datadir .listKeyfiles() .catch(() => error('Could not load accounts')); @@ -183,8 +183,8 @@ export function listAccounts( if (fetch) { const n = new Monet( - config.data.connection.host, - config.data.connection.port + settings.config.connection.host, + settings.config.connection.port ); try { @@ -217,7 +217,7 @@ export function transfer( return async (dispatch, getState) => { const state = getState(); - const config = state.config.data; + const config = state.settings.config; const error = errorHandler(dispatch, TRANSFER_ERROR); dispatch({ @@ -243,7 +243,7 @@ export function transfer( let account: Account; try { - const datadir = new MonetDataDir(state.config.directory); + const datadir = new MonetDataDir(state.settings.datadir); const keyfile = await datadir.getKeyfile(moniker); account = MonetDataDir.decrypt(keyfile, passphrase); @@ -285,14 +285,14 @@ export function createAccount( password: string ): ThunkResult> { return async (dispatch, getState) => { - const { config } = getState(); + const { settings } = getState(); dispatch({ type: CREATE_INIT }); try { - const datadir = new MonetDataDir(config.directory); + const datadir = new MonetDataDir(settings.datadir); const keyfile = AbstractKeystore.encrypt(account, password); await datadir.importKeyfile(moniker, keyfile); diff --git a/src/modules/index.ts b/src/modules/index.ts index f1d2204..8894b59 100644 --- a/src/modules/index.ts +++ b/src/modules/index.ts @@ -5,7 +5,7 @@ import { combineReducers } from 'redux'; import { Store } from '../store'; import accounts from './accounts'; -import config from './config'; +import settings from './settings'; export const errorHandler = (dispatch: any, action: string) => ( error: string @@ -23,6 +23,6 @@ export interface BaseAction { } export default combineReducers({ - config, + settings, accounts }); diff --git a/src/modules/config.ts b/src/modules/settings.ts similarity index 71% rename from src/modules/config.ts rename to src/modules/settings.ts index decf205..14d2521 100644 --- a/src/modules/config.ts +++ b/src/modules/settings.ts @@ -7,25 +7,25 @@ import { BaseAction, ThunkResult } from '.'; import { MonetDataDir } from '../monet'; // Set configuration data directory -const SET_DIRECTORY_SUCCESS = '@monet/configuration/DATADIRECTORY/SUCCESS'; -const SET_DIRECTORY_ERROR = '@monet/configuration/DATADIRECTORY/ERROR'; +const SET_DATADIR_SUCCESS = '@monet/settings/DATADIR/SUCCESS'; +const SET_DATADIR_ERROR = '@monet/settings/DATADIR/ERROR'; // Load configuration from data directory -const LOAD_REQUEST = '@monet/configuration/LOAD/REQUEST'; -const LOAD_SUCCESS = '@monet/configuration/LOAD/SUCCESS'; -const LOAD_ERROR = '@monet/configuration/LOAD/ERROR'; +const LOAD_REQUEST = '@monet/settings/LOAD/REQUEST'; +const LOAD_SUCCESS = '@monet/settings/LOAD/SUCCESS'; +const LOAD_ERROR = '@monet/settings/LOAD/ERROR'; // Save configuration -const SAVE_REQUEST = '@monet/configuration/SAVE/REQUEST'; -const SAVE_SUCCESS = '@monet/configuration/SAVE/SUCCESS'; -const SAVE_ERROR = '@monet/configuration/SAVE/ERROR'; +const SAVE_REQUEST = '@monet/settings/SAVE/REQUEST'; +const SAVE_SUCCESS = '@monet/settings/SAVE/SUCCESS'; +const SAVE_ERROR = '@monet/settings/SAVE/ERROR'; -export interface ConfigurationState { +export interface SettingState { // The data directory path - readonly directory: string; + readonly datadir: string; // The configuration data values - readonly data: IConfiguration; + readonly config: IConfiguration; // This error attribute is used by all actions readonly error?: string; @@ -37,9 +37,9 @@ export interface ConfigurationState { }; } -const initialState: ConfigurationState = { - directory: osdatadir('Monet'), - data: {} as IConfiguration, +const initial: SettingState = { + datadir: osdatadir('Monet'), + config: {} as IConfiguration, loading: { load: false, save: false @@ -47,18 +47,18 @@ const initialState: ConfigurationState = { }; export default function reducer( - state: ConfigurationState = initialState, + state: SettingState = initial, action: BaseAction = {} as BaseAction -): ConfigurationState { +): SettingState { switch (action.type) { // Set data directory - case SET_DIRECTORY_SUCCESS: + case SET_DATADIR_SUCCESS: return { ...state, - directory: action.payload, + datadir: action.payload, error: undefined }; - case SET_DIRECTORY_ERROR: + case SET_DATADIR_ERROR: return { ...state, error: action.payload @@ -77,7 +77,7 @@ export default function reducer( case LOAD_SUCCESS: return { ...state, - data: action.payload, + config: action.payload, loading: { ...state.loading, load: false @@ -107,7 +107,7 @@ export default function reducer( case SAVE_SUCCESS: return { ...state, - data: action.payload, + config: action.payload, loading: { ...state.loading, save: false @@ -138,7 +138,7 @@ export function load(): ThunkResult> { }); try { - const datadir = new MonetDataDir(store.config.directory); + const datadir = new MonetDataDir(store.settings.datadir); config = await datadir.readConfig(); @@ -157,11 +157,11 @@ export function load(): ThunkResult> { }; } -export function setDirectory(path: string): ThunkResult> { +export function setDatadir(path: string): ThunkResult> { return async dispatch => { if (utils.exists(path) && !utils.isDirectory(path)) { dispatch({ - type: SET_DIRECTORY_ERROR, + type: SET_DATADIR_ERROR, payload: `Provided path '${path}' is not a directory.` }); @@ -171,7 +171,7 @@ export function setDirectory(path: string): ThunkResult> { const {} = new MonetDataDir(path); dispatch({ - type: SET_DIRECTORY_SUCCESS, + type: SET_DATADIR_SUCCESS, payload: path }); @@ -181,7 +181,7 @@ export function setDirectory(path: string): ThunkResult> { }; } -export function initConfig(): ThunkResult> { +export function initSettings(): ThunkResult> { return async dispatch => { dispatch(load()); }; @@ -200,7 +200,7 @@ export function save( await new Promise(resolve => setTimeout(resolve, 500)); try { - const datadir = new MonetDataDir(state.config.directory); + const datadir = new MonetDataDir(state.settings.datadir); await datadir.saveConfig(newConfig); diff --git a/src/selectors/index.ts b/src/selectors/index.ts index f0d6985..7c8458c 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -15,9 +15,9 @@ export const selectCreateAccountLoading = (store: Store) => export const selectAccountError = (store: Store) => store.accounts.error; // config selectors -export const selectDatadir = (store: Store) => store.config.directory; -export const selectConfig = (store: Store) => store.config.data; -export const selectConfigError = (store: Store) => store.config.error; +export const selectDatadir = (store: Store) => store.settings.datadir; +export const selectConfig = (store: Store) => store.settings.config; +export const selectSettingsError = (store: Store) => store.settings.error; export const selectConfigSaveLoading = (store: Store) => - store.config.loading.save; + store.settings.loading.save; diff --git a/src/store.ts b/src/store.ts index 6b45c24..d852e37 100644 --- a/src/store.ts +++ b/src/store.ts @@ -8,17 +8,17 @@ import { PersistConfig, persistReducer, persistStore } from 'redux-persist'; import rootReducer from './modules'; import { AccountsState } from './modules/accounts'; -import { ConfigurationState } from './modules/config'; +import { SettingState } from './modules/settings'; export interface Store { accounts: AccountsState; - config: ConfigurationState; + settings: SettingState; } const persistConfig: PersistConfig = { key: 'root', storage: dynamicStorage, - whitelist: ['config'] + whitelist: ['settings'] }; const persistedReducer = persistReducer(persistConfig, rootReducer); const middleware = [thunk, logger]; diff --git a/src/utils.ts b/src/utils.ts index 8a80a35..ccd84c4 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -20,3 +20,17 @@ export const parseBalance = (balance: Currency) => { export const isLetter = (str: string) => { return str.length === 1 && str.match(/[a-z]/i); }; + +export const commaSeperate = (x: number | string) => { + x = x.toString(); + + const split = x.split('.'); + + if (split.length > 1) { + return `${split[0].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')}.${ + split[1] + }`; + } + + return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); +}; diff --git a/yarn.lock b/yarn.lock index ec10bfd..a0939d5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -670,23 +670,6 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -appdmg@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/appdmg/-/appdmg-0.6.0.tgz#81b3beab624ab458e6104d87c5cfa4b172203821" - integrity sha512-vDz8cMf5c6BfoS72OmmHzzuxG5DFVDM6YCAkscjYh3GASGEBBRCZ10Bn515ZPSPHOpfI9Xu3MlApbd49C58pJg== - dependencies: - async "^1.4.2" - ds-store "^0.1.5" - execa "^1.0.0" - fs-temp "^1.0.0" - fs-xattr "^0.3.0" - image-size "^0.7.4" - is-my-json-valid "^2.20.0" - minimist "^1.1.3" - parse-color "^1.0.0" - path-exists "^4.0.0" - repeat-string "^1.5.4" - aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" @@ -727,11 +710,6 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= -array-buffer-from-string@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/array-buffer-from-string/-/array-buffer-from-string-0.1.0.tgz#3b14351f86149d84efc612c5ada7ed85169d7b07" - integrity sha1-OxQ1H4YUnYTvxhLFrafthRadewc= - array-buffer-to-hex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-buffer-to-hex/-/array-buffer-to-hex-1.0.0.tgz#9c76e53010ef7bf7bf8a27ebbb41d24e1d83edf4" @@ -831,11 +809,6 @@ async-limiter@~1.0.0: resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -async@^1.4.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - async@^2.5.0, async@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" @@ -1189,11 +1162,6 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base32-encode@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/base32-encode/-/base32-encode-0.1.1.tgz#7510f6aa44e2c695b7efcb2673a454f8f8505ea0" - integrity sha512-jjc+6TC8PXrsxJ4CQr9ibioNhhAM1p/RvS9hy3Q+cxPphvXmLnFSkXoen2XXzNBrYjdmzajRtbFDl1x28F5F4A== - base64-js@^1.0.2, base64-js@^1.2.3: version "1.3.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" @@ -1318,13 +1286,6 @@ bootstrap@^4.3.1: resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz#280ca8f610504d99d7b6b4bfc4b68cec601704ac" integrity sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag== -bplist-creator@~0.0.3: - version "0.0.8" - resolved "https://registry.yarnpkg.com/bplist-creator/-/bplist-creator-0.0.8.tgz#56b2a6e79e9aec3fc33bf831d09347d73794e79c" - integrity sha512-Za9JKzD6fjLC16oX2wsXfc+qBEhJBJB1YPInoAQpMLhDuj5aVOv1baGeIQSq1Fr3OCqzvsoQcSBSwGId/Ja2PA== - dependencies: - stream-buffers "~2.2.0" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1767,11 +1728,6 @@ color-convert@^1.9.0: dependencies: color-name "1.1.3" -color-convert@~0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" - integrity sha1-vbbGnOZg+t/+CwAHzER+G59ygr0= - color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" @@ -2431,15 +2387,6 @@ domutils@^1.5.1: dom-serializer "0" domelementtype "1" -ds-store@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/ds-store/-/ds-store-0.1.6.tgz#d1024ef746ed0c13f0f7fec85c7e858e8c4b7ca7" - integrity sha1-0QJO90btDBPw9/7IXH6FjoxLfKc= - dependencies: - bplist-creator "~0.0.3" - macos-alias "~0.2.5" - tn1150 "^0.1.0" - duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -2498,17 +2445,6 @@ electron-download@^4.1.0: semver "^5.4.1" sumchecker "^2.0.2" -electron-installer-dmg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/electron-installer-dmg/-/electron-installer-dmg-3.0.0.tgz#08935b602f3120981c8d5fd24d3f6525f8b0198a" - integrity sha512-a3z9ABUfLJtrLK1ize4j+wJKslodb0kRHgBuUN4GTckiUxtGdo49XCvvAHvQaOqQk3S5VTvuc6PoofnI9mKSCQ== - dependencies: - debug "^4.1.1" - fs-extra "^8.0.1" - minimist "^1.1.1" - optionalDependencies: - appdmg "^0.6.0" - electron-notarize@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/electron-notarize/-/electron-notarize-0.1.1.tgz#c3563d70c5e7b3315f44e8495b30050a8c408b91" @@ -3134,13 +3070,6 @@ flush-write-stream@^1.0.0: inherits "^2.0.3" readable-stream "^2.3.6" -fmix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/fmix/-/fmix-0.1.0.tgz#c7bbf124dec42c9d191cfb947d0a9778dd986c0c" - integrity sha1-x7vxJN7ELJ0ZHPuUfQqXeN2YbAw= - dependencies: - imul "^1.0.0" - follow-redirects@^1.0.0: version "1.9.0" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.9.0.tgz#8d5bcdc65b7108fe1508649c79c12d732dcedb4f" @@ -3254,13 +3183,6 @@ fs-minipass@^1.2.5: dependencies: minipass "^2.6.0" -fs-temp@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fs-temp/-/fs-temp-1.1.2.tgz#cc52f038bbefe510f6bcd09ec592b79d0f69253f" - integrity sha1-zFLwOLvv5RD2vNCexZK3nQ9pJT8= - dependencies: - random-path "^0.1.0" - fs-write-stream-atomic@^1.0.8: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" @@ -3271,11 +3193,6 @@ fs-write-stream-atomic@^1.0.8: imurmurhash "^0.1.4" readable-stream "1 || 2" -fs-xattr@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/fs-xattr/-/fs-xattr-0.3.0.tgz#019642eacc49f343061af19de4c13543895589ad" - integrity sha512-BixjoRM9etRFyWOtJRcflfu5HqBWLGTYbeHiL196VRUcc/nYgS2px6w4yVaj3XmrN1bk4rZBH82A8u5Z64YcXQ== - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" @@ -3317,20 +3234,6 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -generate-function@^2.0.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.3.1.tgz#f069617690c10c868e73b8465746764f97c3479f" - integrity sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ== - dependencies: - is-property "^1.0.2" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - integrity sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= - dependencies: - is-property "^1.0.0" - get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" @@ -3865,11 +3768,6 @@ ignore@^3.3.5: resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== -image-size@^0.7.4: - version "0.7.5" - resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.7.5.tgz#269f357cf5797cb44683dfa99790e54c705ead04" - integrity sha512-Hiyv+mXHfFEP7LzUL/llg9RwFxxY+o9N3JVLIeG5E7iFIFAalxvRU9UZthBdYDEVnzHMgjnKJPPpay5BWf1g9g== - immer@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" @@ -3905,11 +3803,6 @@ import-local@2.0.0, import-local@^2.0.0: pkg-dir "^3.0.0" resolve-cwd "^2.0.0" -imul@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/imul/-/imul-1.0.1.tgz#9d5867161e8b3de96c2c38d5dc7cb102f35e2ac9" - integrity sha1-nVhnFh6LPelsLDjV3HyxAvNeKsk= - imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -4172,22 +4065,6 @@ is-hex-prefixed@1.0.0: resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= -is-my-ip-valid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" - integrity sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ== - -is-my-json-valid@^2.20.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.20.0.tgz#1345a6fca3e8daefc10d0fa77067f54cedafd59a" - integrity sha512-XTHBZSIIxNsIsZXg7XB5l8z/OBFosl1Wao4tXLpeC7eKU4Vm/kdop2azkPqULwnfGQjmeDIyey9g7afMMtdWAA== - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - is-my-ip-valid "^1.0.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -4231,11 +4108,6 @@ is-promise@^2.1.0: resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= -is-property@^1.0.0, is-property@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - integrity sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= - is-regex@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" @@ -4420,11 +4292,6 @@ jsonfile@^4.0.0: optionalDependencies: graceful-fs "^4.1.6" -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - integrity sha1-T9kss04OnbPInIYi7PUfm5eMbLk= - jsprim@^1.2.2: version "1.4.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" @@ -4624,13 +4491,6 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -macos-alias@~0.2.5: - version "0.2.11" - resolved "https://registry.yarnpkg.com/macos-alias/-/macos-alias-0.2.11.tgz#feeea6c13ba119814a43fc43c470b31e59ef718a" - integrity sha1-/u6mwTuhGYFKQ/xDxHCzHlnvcYo= - dependencies: - nan "^2.4.0" - make-dir@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -4968,21 +4828,12 @@ multicast-dns@^6.0.1: dns-packet "^1.3.1" thunky "^1.0.2" -murmur-32@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/murmur-32/-/murmur-32-0.1.0.tgz#c1a79d4fc5fabf0405749d0aff77c41402055861" - integrity sha1-waedT8X6vwQFdJ0K/3fEFAIFWGE= - dependencies: - array-buffer-from-string "^0.1.0" - fmix "^0.1.0" - imul "^1.0.0" - mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= -nan@^2.12.1, nan@^2.2.1, nan@^2.4.0: +nan@^2.12.1, nan@^2.2.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== @@ -5463,13 +5314,6 @@ parse-author@^2.0.0: dependencies: author-regex "^1.0.0" -parse-color@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-color/-/parse-color-1.0.0.tgz#7b748b95a83f03f16a94f535e52d7f3d94658619" - integrity sha1-e3SLlag/A/FqlPU15S1/PZRlhhk= - dependencies: - color-convert "~0.5.0" - parse-headers@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.3.tgz#5e8e7512383d140ba02f0c7aa9f49b4399c92515" @@ -5527,11 +5371,6 @@ path-exists@^3.0.0: resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -5943,14 +5782,6 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== -random-path@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/random-path/-/random-path-0.1.1.tgz#f8f4d36f75a134ca15fd39c7d7505fbf163b634c" - integrity sha1-+PTTb3WhNMoV/TnH11BfvxY7Y0w= - dependencies: - base32-encode "^0.1.0" - murmur-32 "^0.1.0" - randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -6418,7 +6249,7 @@ repeat-element@^1.1.2: resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== -repeat-string@^1.5.4, repeat-string@^1.6.1: +repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= @@ -7064,11 +6895,6 @@ stream-browserify@^2.0.1: inherits "~2.0.1" readable-stream "^2.0.2" -stream-buffers@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" - integrity sha1-kdX1Ew0c75bc+n9yaUUYh0HQnuQ= - stream-each@^1.1.0: version "1.2.3" resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" @@ -7420,13 +7246,6 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -tn1150@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/tn1150/-/tn1150-0.1.0.tgz#673503d24d56b87de8b8c77fee3fc0853d59a18d" - integrity sha1-ZzUD0k1WuH3ouMd/7j/AhT1ZoY0= - dependencies: - unorm "^1.4.1" - to-arraybuffer@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" @@ -7717,11 +7536,6 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== -unorm@^1.4.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.6.0.tgz#029b289661fba714f1a9af439eb51d9b16c205af" - integrity sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA== - unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" From fdbbb58c07ffc787ceb341b3a265ac7f8a96fb17 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 11:11:46 +0000 Subject: [PATCH 24/30] update: README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 66fcb7d..d1d546d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Monet Logo +Monet Logo # Monet Wallet From 4feac4e5445ff643c100df20bc06a1b373304f46 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 11:12:38 +0000 Subject: [PATCH 25/30] udpate: README --- README.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d1d546d..5415a4a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,3 @@ -Monet Logo - # Monet Wallet A user interface to interact with Monet. @@ -14,10 +12,10 @@ You will need to install `yarn` to proceed to development. curl -o- -L https://yarnpkg.com/install.sh | bash ``` -To install dependencies +To install dependencies and build files ```bash -yarn install +yarn install && yarn build ``` This should also transpile all `ts` and `tsx` files. From 3489ec147a5c0f35f960ef31176ecbd354453755 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 11:39:38 +0000 Subject: [PATCH 26/30] update: Improved create account form --- package.json | 12 ++--- src/app/App.tsx | 6 --- src/app/index.tsx | 1 - src/components/Error.tsx | 18 +++++++ src/components/Loader.tsx | 4 +- src/components/NewAccount.tsx | 46 ++++++---------- src/components/Wrapper.tsx | 3 ++ src/components/utils/ScrollTop.tsx | 18 +++++++ src/containers/Accounts.tsx | 4 +- src/modules/accounts.ts | 42 +++++++++++---- src/modules/settings.ts | 3 -- yarn.lock | 86 ++++++++++-------------------- 12 files changed, 122 insertions(+), 121 deletions(-) create mode 100644 src/components/Error.tsx create mode 100644 src/components/utils/ScrollTop.tsx diff --git a/package.json b/package.json index 10a044c..fd65212 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,6 @@ "@fortawesome/fontawesome-svg-core": "^1.2.25", "@fortawesome/free-solid-svg-icons": "^5.11.2", "@fortawesome/react-fontawesome": "^0.1.7", - "@types/react-tooltip": "^3.11.0", "bootstrap": "^4.3.1", "evm-lite-client": "^1.3.7", "evm-lite-consensus": "^1.3.7", @@ -19,13 +18,12 @@ "react-dom": "^16.10.2", "react-redux": "^7.1.1", "react-reveal": "^1.2.2", - "react-spring": "^8.0.27", - "react-toastify": "^5.4.0", "react-tooltip": "^3.11.1", "redux": "^4.0.4", "redux-persist": "^6.0.0", "redux-thunk": "^2.3.0", - "styled-components": "^4.4.0" + "styled-components": "^4.4.0", + "react-router-dom": "^5.1.2" }, "scripts": { "dev": "concurrently --kill-others \"yarn run start:server\" \"yarn run start:electron\"", @@ -40,14 +38,13 @@ "addalldev": "yarn add evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils" }, "devDependencies": { + "@types/react-tooltip": "^3.11.0", "@babel/core": "^7.6.2", - "@types/mkdirp": "^0.5.2", "@types/node": "^12.7.8", "@types/react": "^16.9.3", - "@types/react-alert": "^5.2.0", "@types/react-dom": "^16.9.1", "@types/react-redux": "^7.1.4", - "@types/react-router-dom": "^4.3.5", + "@types/react-router-dom": "^5.1.2", "@types/redux-logger": "^3.0.7", "@types/styled-components": "^4.1.19", "@types/webpack": "^4.39.2", @@ -66,7 +63,6 @@ "postcss-flexbugs-fixes": "^4.1.0", "postcss-loader": "^3.0.0", "react-dev-utils": "^9.0.4", - "react-router-dom": "^5.1.1", "redux-logger": "latest", "source-map-loader": "^0.2.4", "standard-loader": "^7.0.0", diff --git a/src/app/App.tsx b/src/app/App.tsx index 10bcdde..1fc35c3 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -4,7 +4,6 @@ import ReactTooltip from 'react-tooltip'; import { useDispatch } from 'react-redux'; import { HashRouter, Route } from 'react-router-dom'; -import { ToastContainer } from 'react-toastify'; import { initSettings } from '../modules/settings'; @@ -40,11 +39,6 @@ const App: React.FunctionComponent<{}> = () => { /> - ); diff --git a/src/app/index.tsx b/src/app/index.tsx index 7f3b691..761db0f 100644 --- a/src/app/index.tsx +++ b/src/app/index.tsx @@ -9,7 +9,6 @@ import getStores from '../store'; import App from './App'; import 'bootstrap/dist/css/bootstrap.min.css'; -import 'react-toastify/dist/ReactToastify.css'; import '../index.css'; const stores = getStores(); diff --git a/src/components/Error.tsx b/src/components/Error.tsx new file mode 100644 index 0000000..3c82cd6 --- /dev/null +++ b/src/components/Error.tsx @@ -0,0 +1,18 @@ +import React from 'react'; + +type Props = { + error: string; + fallback: JSX.Element; +}; + +const Await: React.FC = props => { + let elements = props.children; + + if (!props.error.length) { + elements = props.fallback; + } + + return <>{elements}; +}; + +export default Await; diff --git a/src/components/Loader.tsx b/src/components/Loader.tsx index 1337a58..a1e5da7 100644 --- a/src/components/Loader.tsx +++ b/src/components/Loader.tsx @@ -13,8 +13,8 @@ const Loader: React.FC = props => { return !!props.loading ? ( ) : ( <> diff --git a/src/components/NewAccount.tsx b/src/components/NewAccount.tsx index 47a1e81..f93a668 100644 --- a/src/components/NewAccount.tsx +++ b/src/components/NewAccount.tsx @@ -14,17 +14,14 @@ import Form from 'react-bootstrap/Form'; import Row from 'react-bootstrap/Row'; import Avatar from './Avatar'; +import Error from './Error'; import { createAccount } from '../modules/accounts'; -import { selectCreateAccountLoading } from '../selectors'; +import { selectAccountError, selectCreateAccountLoading } from '../selectors'; const SCreateAccount = styled.div` padding: 30px; border-bottom: 1px solid rgba(0, 0, 0, 0.1); - - h4 { - /* margin-bottom: 20px !important; */ - } `; const NewAccount: React.FC<{}> = () => { @@ -32,37 +29,22 @@ const NewAccount: React.FC<{}> = () => { const [moniker, setMoniker] = useState(''); const [passphrase, setPassphrase] = useState(''); - const [error, setError] = useState(''); const [account, setAccount] = useState(); - console.log(error); - const loading = useSelector(selectCreateAccountLoading); + const error = useSelector(selectAccountError); const create = async () => { - if (!moniker.length) { - setError('Moniker cannot be empty'); - return; - } - - if (!utils.validMoniker(moniker)) { - setError( - 'Moniker can only include alphanumeric characters and underscores' - ); - return; - } - - if (passphrase.length < 3) { - setError('Passphrase must be longer than 3 characters'); - return; - } - if (account) { - await dispatch(createAccount(account, moniker, passphrase)); + const success: any = await dispatch( + createAccount(account, moniker, passphrase) + ); - randomize(); - setMoniker(''); - setPassphrase(''); + if (success) { + randomize(); + setMoniker(''); + setPassphrase(''); + } } }; @@ -101,6 +83,7 @@ const NewAccount: React.FC<{}> = () => { setMoniker(e.target.value) } @@ -111,6 +94,7 @@ const NewAccount: React.FC<{}> = () => { setPassphrase(e.target.value) } @@ -132,7 +116,7 @@ const NewAccount: React.FC<{}> = () => { - {error.length > 0 && ( + }>
    @@ -146,7 +130,7 @@ const NewAccount: React.FC<{}> = () => {
    {error}
    - )} +
    diff --git a/src/components/Wrapper.tsx b/src/components/Wrapper.tsx index c5954c6..4c07ff2 100644 --- a/src/components/Wrapper.tsx +++ b/src/components/Wrapper.tsx @@ -8,6 +8,8 @@ import Row from 'react-bootstrap/Row'; import Sidebar from '../components/Sidebar'; +import ScrollTop from './utils/ScrollTop'; + const SPadding = styled.div` padding-bottom: 70px; `; @@ -15,6 +17,7 @@ const SPadding = styled.div` const Wrapper: React.FunctionComponent<{}> = props => { return ( <> + diff --git a/src/components/utils/ScrollTop.tsx b/src/components/utils/ScrollTop.tsx new file mode 100644 index 0000000..de3dda3 --- /dev/null +++ b/src/components/utils/ScrollTop.tsx @@ -0,0 +1,18 @@ +import React, { useEffect } from 'react'; + +import { useLocation } from 'react-router-dom'; + +import ReactTooltip from 'react-tooltip'; + +const ScrollTop: React.FC<{}> = () => { + const { pathname } = useLocation(); + + useEffect(() => { + window.scrollTo(0, 0); + ReactTooltip.rebuild(); + }, [pathname]); + + return null; +}; + +export default ScrollTop; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index ef02528..d638c3f 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -36,8 +36,8 @@ const SAccounts = styled(SSection)` `; const SAvatar = styled.div` - transition: opacity 0.2s cubic-bezier(1, 1, 1, 1); - opacity: 0.9; + transition: opacity 0.4s ease; + opacity: 0.2; cursor: pointer; display: inline-block; margin-bottom: 25px; diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index a5d4cfe..37c0bfd 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -2,8 +2,6 @@ import { Account, Monet } from 'evm-lite-core'; import { AbstractKeystore } from 'evm-lite-keystore'; import Utils, { Currency } from 'evm-lite-utils'; -import { toast } from 'react-toastify'; - import { BaseAction, errorHandler, ThunkResult } from '.'; import { MonetDataDir, MonetInfo, MonikerEVMAccount } from '../monet'; @@ -265,8 +263,6 @@ export function transfer( type: TRANSFER_SUCCESS, payload: receipt }); - - toast.success('Transfer successful'); } catch (e) { error( 'Looks like theres a proble with the connection to the node' @@ -283,18 +279,48 @@ export function createAccount( account: Account, moniker: string, password: string -): ThunkResult> { +): ThunkResult> { return async (dispatch, getState) => { const { settings } = getState(); + const error = errorHandler(dispatch, CREATE_ERROR); + dispatch({ type: CREATE_INIT }); + if (!moniker.length) { + error('Moniker cannot be empty'); + return false; + } + + if (!Utils.validMoniker(moniker)) { + error( + 'Moniker can only include alphanumeric characters and underscores' + ); + return false; + } + + if (password.length < 3) { + error('Passphrase must be longer than 3 characters'); + return false; + } + try { const datadir = new MonetDataDir(settings.datadir); const keyfile = AbstractKeystore.encrypt(account, password); + const monikers = Object.keys(await datadir.listKeyfiles()); + console.log(monikers); + if (monikers.find(m => m.toLowerCase() === moniker.toLowerCase())) { + dispatch({ + type: CREATE_ERROR, + payload: 'Moniker already exists!' + }); + + return false; + } + await datadir.importKeyfile(moniker, keyfile); const a: MonikerEVMAccount = { @@ -308,16 +334,14 @@ export function createAccount( payload: a }); - toast.success( - `Account created: 0x${account.address.slice(0, 15)}...` - ); + return true; } catch (error) { dispatch({ type: CREATE_ERROR, payload: error.toString() }); - toast.error(error.toString()); + return false; } }; } diff --git a/src/modules/settings.ts b/src/modules/settings.ts index 14d2521..cefd863 100644 --- a/src/modules/settings.ts +++ b/src/modules/settings.ts @@ -1,7 +1,6 @@ import utils from 'evm-lite-utils'; import { IConfiguration, osdatadir } from 'evm-lite-datadir'; -import { toast } from 'react-toastify'; import { BaseAction, ThunkResult } from '.'; import { MonetDataDir } from '../monet'; @@ -175,8 +174,6 @@ export function setDatadir(path: string): ThunkResult> { payload: path }); - toast.success(`Data directory loaded at ${path}`); - return path; }; } diff --git a/yarn.lock b/yarn.lock index a0939d5..2bdf320 100644 --- a/yarn.lock +++ b/yarn.lock @@ -281,13 +281,6 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/mkdirp@^0.5.2": - version "0.5.2" - resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-0.5.2.tgz#503aacfe5cc2703d5484326b1b27efa67a339c1f" - integrity sha512-U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg== - dependencies: - "@types/node" "*" - "@types/node@*", "@types/node@^12.7.8": version "12.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11" @@ -303,13 +296,6 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== -"@types/react-alert@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@types/react-alert/-/react-alert-5.2.0.tgz#cf5112acb57303dd2066f5a7f052135307b604a8" - integrity sha512-1cyu/vQ4X0CJVC3X4CrJHRBc/9BvTqOF9FH6iy/4TLwPng++GC4ftxS/UaM91FqsKjao7pPtqxUlW1cRafNHLw== - dependencies: - "@types/react" "*" - "@types/react-dom@^16.9.1": version "16.9.4" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.4.tgz#0b58df09a60961dcb77f62d4f1832427513420df" @@ -335,10 +321,10 @@ hoist-non-react-statics "^3.3.0" redux "^4.0.0" -"@types/react-router-dom@^4.3.5": - version "4.3.5" - resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-4.3.5.tgz#72f229967690c890d00f96e6b85e9ee5780db31f" - integrity sha512-eFajSUASYbPHg2BDM1G8Btx+YqGgvROPIg6sBhl3O4kbDdYXdFdfrgQFf/pcBuQVObjfT9AL/dd15jilR5DIEA== +"@types/react-router-dom@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.1.2.tgz#853f229f1f297513c0be84f7c914a08b778cfdf5" + integrity sha512-kRx8hoBflE4Dp7uus+j/0uMHR5uGTAvQtc4A3vOTWKS+epe0leCuxEx7HNT7XGUd1lH53/moWM51MV2YUyhzAg== dependencies: "@types/history" "*" "@types/react" "*" @@ -3581,9 +3567,9 @@ hmac-drbg@^1.0.0: minimalistic-crypto-utils "^1.0.1" hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" - integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== + version "3.3.1" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#101685d3aff3b23ea213163f6e8e12f4f111e19f" + integrity sha512-wbg3bpgA/ZqWrZuMOeJi8+SKMhr7X9TesL/rXMjTzh0p0JUBo3II8DHboYbuIXWRlttrUFxwcu/5kygrCw8fJw== dependencies: react-is "^16.7.0" @@ -5664,7 +5650,7 @@ prop-types-extra@^1.1.0: react-is "^16.3.2" warning "^3.0.0" -prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: +prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -5890,14 +5876,14 @@ react-dev-utils@^9.0.4: text-table "0.2.0" react-dom@^16.10.2: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.11.0.tgz#7e7c4a5a85a569d565c2462f5d345da2dd849af5" - integrity sha512-nrRyIUE1e7j8PaXSPtyRKtz+2y9ubW/ghNgqKFHHAHaeP0fpF5uXR+sq8IMRHC+ZUxw7W9NyCDTBtwWxvkb0iA== + version "16.12.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz#0da4b714b8d13c2038c9396b54a92baea633fe11" + integrity sha512-LMxFfAGrcS3kETtQaCkTKjMiifahaMySFDn71fZUNpPHZQEzmk/GiAeIT8JSOrHB23fnuCOMruL2a8NYlw+8Gw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - scheduler "^0.17.0" + scheduler "^0.18.0" react-error-overlay@^6.0.3: version "6.0.3" @@ -5905,9 +5891,9 @@ react-error-overlay@^6.0.3: integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw== react-is@^16.3.2, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.9.0: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.11.0.tgz#b85dfecd48ad1ce469ff558a882ca8e8313928fa" - integrity sha512-gbBVYR2p8mnriqAwWx9LbuUrShnAuSCNnuPGyc7GJrMVQtPDAh8iLpv7FRuMPFb56KkaVZIYSz1PrjI9q0QPCw== + version "16.12.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c" + integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q== react-lifecycles-compat@^3.0.4: version "3.0.4" @@ -5959,7 +5945,7 @@ react-reveal@^1.2.2: dependencies: prop-types "^15.5.10" -react-router-dom@^5.1.1: +react-router-dom@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" integrity sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew== @@ -5988,24 +5974,6 @@ react-router@5.1.2: tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-spring@^8.0.27: - version "8.0.27" - resolved "https://registry.yarnpkg.com/react-spring/-/react-spring-8.0.27.tgz#97d4dee677f41e0b2adcb696f3839680a3aa356a" - integrity sha512-nDpWBe3ZVezukNRandTeLSPcwwTMjNVu1IDq9qA/AMiUqHuRN4BeSWvKr3eIxxg1vtiYiOLy4FqdfCP5IoP77g== - dependencies: - "@babel/runtime" "^7.3.1" - prop-types "^15.5.8" - -react-toastify@^5.4.0: - version "5.4.1" - resolved "https://registry.yarnpkg.com/react-toastify/-/react-toastify-5.4.1.tgz#27533ca33753631016c44122934c7b6548352fcb" - integrity sha512-24EwkWrj47Id/HGjYfdcntaZpAQ3J5NX31SnGRD66hM/KvPKVJzPiDBPZ+/RZ3SvNkbNWfHpPKFWzenJjC26hg== - dependencies: - "@babel/runtime" "^7.4.2" - classnames "^2.2.6" - prop-types "^15.7.2" - react-transition-group "^4" - react-tooltip@^3.11.1: version "3.11.1" resolved "https://registry.yarnpkg.com/react-tooltip/-/react-tooltip-3.11.1.tgz#7b4ce48ed26a46e996662b19a2afebbfd483513b" @@ -6014,7 +5982,7 @@ react-tooltip@^3.11.1: classnames "^2.2.5" prop-types "^15.6.0" -react-transition-group@^4, react-transition-group@^4.0.0: +react-transition-group@^4.0.0: version "4.3.0" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.3.0.tgz#fea832e386cf8796c58b61874a3319704f5ce683" integrity sha512-1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw== @@ -6025,9 +5993,9 @@ react-transition-group@^4, react-transition-group@^4.0.0: prop-types "^15.6.2" react@^16.10.2: - version "16.11.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.11.0.tgz#d294545fe62299ccee83363599bf904e4a07fdbb" - integrity sha512-M5Y8yITaLmU0ynd0r1Yvfq98Rmll6q8AxaEe88c8e7LxO8fZ2cNgmFt0aGAS9wzf1Ao32NKXtCl+/tVVtkxq6g== + version "16.12.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz#0c0a9c6a142429e3614834d5a778e18aa78a0b83" + integrity sha512-fglqy3k5E+81pA8s+7K0/T3DBCF0ZDOher1elBFzF7O6arXJgzyu/FW+COxFvAWXJoJN9KIZbT2LXlukwphYTA== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -6458,10 +6426,10 @@ sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -scheduler@^0.17.0: - version "0.17.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe" - integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA== +scheduler@^0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz#5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4" + integrity sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -7355,9 +7323,9 @@ ts-loader@^6.2.0: semver "^6.0.0" ts-node@^8.4.1: - version "8.5.0" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.0.tgz#bc7d5a39133d222bf25b1693651e4d893785f884" - integrity sha512-fbG32iZEupNV2E2Fd2m2yt1TdAwR3GTCrJQBHDevIiEBNy1A8kqnyl1fv7jmRmmbtcapFab2glZXHJvfD1ed0Q== + version "8.5.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.5.2.tgz#434f6c893bafe501a30b32ac94ee36809ba2adce" + integrity sha512-W1DK/a6BGoV/D4x/SXXm6TSQx6q3blECUzd5TN+j56YEMX3yPVMpHsICLedUw3DvGF3aTQ8hfdR9AKMaHjIi+A== dependencies: arg "^4.1.0" diff "^4.0.1" From 4aeb9039dd78b174f4384373b8b7684d042150f5 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 11:50:48 +0000 Subject: [PATCH 27/30] update: Better transfer form and handling --- src/components/Transfer.tsx | 83 +++++++++++++++++++------------------ src/containers/Account.tsx | 2 +- src/modules/accounts.ts | 34 +++++++-------- src/modules/index.ts | 2 + 4 files changed, 62 insertions(+), 59 deletions(-) diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index bbb2645..5d30622 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -15,11 +15,12 @@ import Row from 'react-bootstrap/Row'; import Avatar from './Avatar'; import Loader from './Loader'; +import Await from './Await'; +import Error from './Error'; import { MonikerEVMAccount } from 'src/monet'; import { transfer } from '../modules/accounts'; import { selectAccountError, selectTransferLoading } from '../selectors'; -import { isLetter } from '../utils'; const STransfer = styled.div` padding-top: 20px; @@ -57,25 +58,21 @@ const Transfer: React.FC = props => { to.length > 0 && value.length > 0 && passphrase.length > 0; const makeTransfer = async () => { - if (isLetter(value.slice(-1))) { - await dispatch( - transfer(props.account.moniker, passphrase, to, value) - ); - } else { - await dispatch( - transfer(props.account.moniker, passphrase, to, value + 'T') - ); - } + const success: any = await dispatch( + transfer(props.account.moniker, passphrase, to, value) + ); - setTo(''); - setValue(''); + if (success) { + setTo(''); + setValue(''); - setSuccess('Transfer successful'); - await props.getAccount(); + setSuccess('Transfer successful'); + await props.getAccount(); - setTimeout(() => { - setSuccess(''); - }, 3000); + setTimeout(() => { + setSuccess(''); + }, 3000); + } }; return ( @@ -136,7 +133,33 @@ const Transfer: React.FC = props => { - {allFieldsNotEmpty ? ( + }> + 0 && ( + +
    + {' '} +
    +
    {success}
    +
    + )) || <> + } + > + +
    + {' '} +
    +
    {error}
    +
    +
    Confirm

    @@ -195,29 +218,7 @@ const Transfer: React.FC = props => { : '0T'} - ) : error ? ( - -

    - {' '} -
    -
    {error}
    -
    - ) : ( - success.length > 0 && ( - -
    - {' '} -
    -
    {success}
    -
    - ) - )} +
    diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 649e54d..5ba6d2a 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -76,7 +76,7 @@ const Account: React.FC> = props => { setAccount(a); fetchAccount(a); } else { - props.history.push('/'); + // props.history.push('/'); } ReactTooltip.hide(); diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 37c0bfd..d12d9d1 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -4,6 +4,7 @@ import Utils, { Currency } from 'evm-lite-utils'; import { BaseAction, errorHandler, ThunkResult } from '.'; import { MonetDataDir, MonetInfo, MonikerEVMAccount } from '../monet'; +import { isLetter } from '../utils'; // Lists all accounts in keystore const LIST_INIT = '@monet/accounts/LIST/INIT'; @@ -211,7 +212,7 @@ export function transfer( passphrase: string, to: string, value: string -): ThunkResult> { +): ThunkResult> { return async (dispatch, getState) => { const state = getState(); @@ -222,6 +223,10 @@ export function transfer( type: TRANSFER_INIT }); + if (!isLetter(value.slice(-1))) { + value += 'T'; + } + if (!!Object.keys(config).length) { const node = new Monet( config.connection.host, @@ -229,15 +234,14 @@ export function transfer( ); const info = await node.getInfo().catch(() => { - error('No connection detected'); - return; + return error('No connection detected'); }); if (Utils.cleanAddress(to).length !== 42) { - error('Invalid receipient address'); + return error('Invalid receipient address'); } - if (info) { + if (Object.keys(info).length > 0 && typeof info === 'object') { let account: Account; try { @@ -246,8 +250,7 @@ export function transfer( account = MonetDataDir.decrypt(keyfile, passphrase); } catch (e) { - error('Incorrect passphrase'); - return; + return error('Incorrect passphrase'); } try { @@ -263,14 +266,14 @@ export function transfer( type: TRANSFER_SUCCESS, payload: receipt }); + + return true; } catch (e) { - error( - 'Looks like theres a proble with the connection to the node' - ); + return error(e.toString()); } } } else { - throw Error('Configuration could not loaded.'); + return error('Configuration could not loaded.'); } }; } @@ -290,20 +293,17 @@ export function createAccount( }); if (!moniker.length) { - error('Moniker cannot be empty'); - return false; + return error('Moniker cannot be empty'); } if (!Utils.validMoniker(moniker)) { - error( + return error( 'Moniker can only include alphanumeric characters and underscores' ); - return false; } if (password.length < 3) { - error('Passphrase must be longer than 3 characters'); - return false; + return error('Passphrase must be longer than 3 characters'); } try { diff --git a/src/modules/index.ts b/src/modules/index.ts index 8894b59..7c82d94 100644 --- a/src/modules/index.ts +++ b/src/modules/index.ts @@ -14,6 +14,8 @@ export const errorHandler = (dispatch: any, action: string) => ( type: action, payload: error }); + + return false; }; export type ThunkResult = ThunkAction>; From 34748a704c5c40f1ea3c88c8e5f9e043863b3ee1 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 12:37:32 +0000 Subject: [PATCH 28/30] update: Working transfer with error and success messages --- package.json | 2 +- src/components/Error.tsx | 4 +- src/components/Transfer.tsx | 157 +++++++++++++++++------------------- src/components/Update.tsx | 63 +++------------ src/containers/Account.tsx | 2 +- src/index.css | 27 +++++++ src/modules/accounts.ts | 6 ++ 7 files changed, 124 insertions(+), 137 deletions(-) diff --git a/package.json b/package.json index fd65212..ea91a8f 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "start:electron": "electron ./dist", "build": "rm -rf dist/ && webpack --config config/webpack.config.js && cp ./package.json ./dist/", "clean": "rm -rf node_modules dist pkg", - "pkg:mac:app": "electron-packager ./dist \"Monet Wallet\" --platform=darwin --target=zip --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.icns", + "pkg:mac": "electron-packager dist \"Monet Wallet\" --platform=darwin --target=zip --arch=x64 --out=pkg --overwrite --icon=src/assets/icons/monet_logo.icns", "pkg:linux": "electron-packager ./dist \"Monet Wallet\" --target=zip --platform=linux --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.png", "pkg:win": "electron-packager ./dist \"Monet Wallet\" --platform=win32 --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.ico", "linkalldev": "yarn link evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils", diff --git a/src/components/Error.tsx b/src/components/Error.tsx index 3c82cd6..02f8ba6 100644 --- a/src/components/Error.tsx +++ b/src/components/Error.tsx @@ -5,7 +5,7 @@ type Props = { fallback: JSX.Element; }; -const Await: React.FC = props => { +const Response: React.FC = props => { let elements = props.children; if (!props.error.length) { @@ -15,4 +15,4 @@ const Await: React.FC = props => { return <>{elements}; }; -export default Await; +export default Response; diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index 5d30622..eaaec02 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -14,9 +14,8 @@ import InputGroup from 'react-bootstrap/InputGroup'; import Row from 'react-bootstrap/Row'; import Avatar from './Avatar'; -import Loader from './Loader'; -import Await from './Await'; import Error from './Error'; +import Loader from './Loader'; import { MonikerEVMAccount } from 'src/monet'; import { transfer } from '../modules/accounts'; @@ -49,13 +48,10 @@ const Transfer: React.FC = props => { const error = useSelector(selectAccountError); const loading = useSelector(selectTransferLoading); - const [success, setSuccess] = useState(''); const [to, setTo] = useState(''); const [value, setValue] = useState(''); const [passphrase, setPassphrase] = useState(''); - - const allFieldsNotEmpty = - to.length > 0 && value.length > 0 && passphrase.length > 0; + const [success, setSuccess] = useState(''); const makeTransfer = async () => { const success: any = await dispatch( @@ -65,13 +61,13 @@ const Transfer: React.FC = props => { if (success) { setTo(''); setValue(''); - setSuccess('Transfer successful'); - await props.getAccount(); + await props.getAccount(); + console.log(success); setTimeout(() => { setSuccess(''); - }, 3000); + }, 5000); } }; @@ -99,6 +95,7 @@ const Transfer: React.FC = props => { setValue(e.target.value) } value={value} + type="text" placeholder="Amount" /> @@ -133,11 +130,11 @@ const Transfer: React.FC = props => { - }> - 0 && ( +
    = props => {
    {success}
    - )) || <> - } - > - -
    - {' '} -
    -
    {error}
    -
    -
    - -
    Confirm
    -

    - Make sure the details below are correct - before submitting transaction -

    - - From - To - - - - - - - - - - {props.account.address} - - - - - - - - - - - {to} - - - - -
    -
    - + )) || <> + } + > + +
    + {' '} - {value.length > 0 - ? new Currency(value + 'T').format('T') - : '0T'} + {error}
    - + +
    + +
    Confirm
    +

    + Make sure the details below are correct before + submitting transaction +

    + + From + To + + + + + + + + + {props.account.address} + + + + + + + + + + {to} + + + + +
    +
    + {' '} + {value.length > 0 + ? new Currency(value + 'T').format('T') + : '0T'} +
    +
    diff --git a/src/components/Update.tsx b/src/components/Update.tsx index 77fb183..cf57450 100644 --- a/src/components/Update.tsx +++ b/src/components/Update.tsx @@ -2,8 +2,6 @@ import React, { useState } from 'react'; import styled from 'styled-components'; -import { useDispatch, useSelector } from 'react-redux'; - import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; @@ -12,9 +10,6 @@ import InputGroup from 'react-bootstrap/InputGroup'; import Loader from './Loader'; import { MonikerEVMAccount } from 'src/monet'; -import { transfer } from '../modules/accounts'; -import { selectTransferLoading } from '../selectors'; -import { isLetter } from '../utils'; const STransfer = styled.div` padding-top: 20px; @@ -34,39 +29,9 @@ type Props = { }; const Update: React.FC = props => { - const dispatch = useDispatch(); - - // const error = useSelector(selectAccountError); - const loading = useSelector(selectTransferLoading); - - const [success, setSuccess] = useState(''); - const [to, setTo] = useState(''); - const [value, setValue] = useState(''); const [passphrase, setPassphrase] = useState(''); - - console.log(success); - - const makeTransfer = async () => { - if (isLetter(value.slice(-1))) { - await dispatch( - transfer(props.account.moniker, passphrase, to, value) - ); - } else { - await dispatch( - transfer(props.account.moniker, passphrase, to, value + 'T') - ); - } - - setTo(''); - setValue(''); - - setSuccess('Transfer successful'); - await props.getAccount(); - - setTimeout(() => { - setSuccess(''); - }, 3000); - }; + const [newPassphrase, setNewPassphrase] = useState(''); + const [verifyNewPassword, setVerifyNewPassphrase] = useState(''); return ( @@ -76,8 +41,10 @@ const Update: React.FC = props => {
    Change Password
    setTo(e.target.value)} - value={to} + onChange={(e: any) => + setPassphrase(e.target.value) + } + value={passphrase} type="text" placeholder="Current Passphrase" /> @@ -88,10 +55,11 @@ const Update: React.FC = props => { - setValue(e.target.value) + setNewPassphrase(e.target.value) } - value={value} + value={newPassphrase} placeholder="New Passphrase" /> @@ -103,22 +71,17 @@ const Update: React.FC = props => { - setPassphrase(e.target.value) + setVerifyNewPassphrase(e.target.value) } - value={passphrase} + value={verifyNewPassword} type="password" placeholder="Confirm New Passphrase" /> - {' '} - + diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 5ba6d2a..649e54d 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -76,7 +76,7 @@ const Account: React.FC> = props => { setAccount(a); fetchAccount(a); } else { - // props.history.push('/'); + props.history.push('/'); } ReactTooltip.hide(); diff --git a/src/index.css b/src/index.css index b6c3883..187d0f7 100644 --- a/src/index.css +++ b/src/index.css @@ -93,11 +93,31 @@ code { outline: none !important; } +.btn-outline-primary { + border-color: var(--blue); + color: var(--blue); +} + +.btn-outline-primary:hover { + background: #1e3383; + color: white; +} + +.btn-outline-primary:active { + background: #1e3383; + box-shadow: none !important; + outline: none !important; +} + .btn-primary:hover { background: #1e3383; color: white; } +.btn-primary:disabled { + background: #1e3383; +} + .btn-primary:active { box-shadow: none !important; outline: none !important; @@ -167,3 +187,10 @@ code { .modal-footer { border-top: 1px solid #f3f3f3 !important; } + +input[type='text'], +input[type='email'], +input[type='password'], +input[type='number'] { + background-color: rgba(60, 120, 208, 0.0980392); +} diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index d12d9d1..6612ef0 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -21,6 +21,11 @@ const TRANSFER_INIT = '@monet/accounts/TRANSFER/INIT'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; +// For transferring tokens/coins from an account +// const UPDATE_INIT = '@monet/accounts/UPDATE/INIT'; +// const UPDATE_SUCCESS = '@monet/accounts/UPDATE/SUCCESS'; +// const UPDATE_ERROR = '@monet/accounts/UPDATE/ERROR'; + // Accounts state structure export type AccountsState = { // Entire list of accounts @@ -87,6 +92,7 @@ export default function reducer( case TRANSFER_INIT: return { ...state, + error: undefined, loading: { ...state.loading, transfer: true From 2212b666bb28bb78874887008187d97206bd1577 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 13:55:49 +0000 Subject: [PATCH 29/30] update: Working update password form and reducer --- src/components/Avatar.tsx | 2 +- src/components/Transfer.tsx | 14 +++-- src/components/Update.tsx | 110 ++++++++++++++++++++++++++++++++++-- src/modules/accounts.ts | 70 +++++++++++++++++++++-- src/selectors/index.ts | 3 + 5 files changed, 183 insertions(+), 16 deletions(-) diff --git a/src/components/Avatar.tsx b/src/components/Avatar.tsx index d228a72..0b0cb0f 100644 --- a/src/components/Avatar.tsx +++ b/src/components/Avatar.tsx @@ -20,7 +20,7 @@ const Avatar: React.FC = props => { = props => {
    -
    +
    Confirm

    Make sure the details below are correct before @@ -182,7 +182,10 @@ const Transfer: React.FC = props => { /> - {props.account.address} + + {props.account.address || + '0x0000000000000000000000000000000000000000'} + @@ -192,7 +195,10 @@ const Transfer: React.FC = props => { - {to} + + {to || + '0x0000000000000000000000000000000000000000'} + diff --git a/src/components/Update.tsx b/src/components/Update.tsx index cf57450..552aa95 100644 --- a/src/components/Update.tsx +++ b/src/components/Update.tsx @@ -2,14 +2,21 @@ import React, { useState } from 'react'; import styled from 'styled-components'; +import { faCheck, faTimes } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { useDispatch, useSelector } from 'react-redux'; + import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; import InputGroup from 'react-bootstrap/InputGroup'; +import Error from './Error'; import Loader from './Loader'; -import { MonikerEVMAccount } from 'src/monet'; +import { updateAccount } from '../modules/accounts'; +import { MonikerEVMAccount } from '../monet'; +import { selectAccountError, selectAccountUpdateLoading } from '../selectors'; const STransfer = styled.div` padding-top: 20px; @@ -20,18 +27,64 @@ const STransfer = styled.div` h5 { margin-bottom: 25px !important; + + svg { + margin-right: 5px; + } } `; +const SConfirm = styled.div` + padding-left: 50px; +`; + type Props = { account: MonikerEVMAccount; getAccount: () => any; }; const Update: React.FC = props => { + const dispatch = useDispatch(); + + const error = useSelector(selectAccountError); + const loading = useSelector(selectAccountUpdateLoading); + + const [localError, setLocalError] = useState(''); + const [success, setSuccess] = useState(''); const [passphrase, setPassphrase] = useState(''); const [newPassphrase, setNewPassphrase] = useState(''); - const [verifyNewPassword, setVerifyNewPassphrase] = useState(''); + const [verifyNewPassphrase, setVerifyNewPassphrase] = useState(''); + + const updatePassword = async () => { + setLocalError(''); + + if (!passphrase || !newPassphrase || !verifyNewPassphrase) { + setLocalError('All fields must be filled'); + return; + } + + if (newPassphrase !== verifyNewPassphrase) { + setLocalError('New passphrase does not match'); + return; + } + + if (passphrase !== newPassphrase) { + setLocalError('New passphrase is the same as old'); + return; + } + + const success: any = await dispatch( + updateAccount(props.account.moniker, passphrase, newPassphrase) + ); + + if (success) { + setPassphrase(''); + setNewPassphrase(''); + setVerifyNewPassphrase(''); + + setSuccess('Passphrase updated'); + } + }; return ( @@ -73,17 +126,62 @@ const Update: React.FC = props => { onChange={(e: any) => setVerifyNewPassphrase(e.target.value) } - value={verifyNewPassword} + value={verifyNewPassphrase} type="password" placeholder="Confirm New Passphrase" /> - {' '} - + + + + }> + +

    + {' '} + {localError} +
    +
    + + + +
    + {' '} +
    +
    {success}
    +
    + + )) || <> + } + > + +
    + {' '} + {error} +
    +
    +
    - diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 6612ef0..ed4b2b7 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -21,10 +21,10 @@ const TRANSFER_INIT = '@monet/accounts/TRANSFER/INIT'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; -// For transferring tokens/coins from an account -// const UPDATE_INIT = '@monet/accounts/UPDATE/INIT'; -// const UPDATE_SUCCESS = '@monet/accounts/UPDATE/SUCCESS'; -// const UPDATE_ERROR = '@monet/accounts/UPDATE/ERROR'; +// Updating account password +const UPDATE_INIT = '@monet/accounts/UPDATE/INIT'; +const UPDATE_SUCCESS = '@monet/accounts/UPDATE/SUCCESS'; +const UPDATE_ERROR = '@monet/accounts/UPDATE/ERROR'; // Accounts state structure export type AccountsState = { @@ -39,6 +39,7 @@ export type AccountsState = { transfer: boolean; list: boolean; create: boolean; + update: boolean; }; }; @@ -48,7 +49,8 @@ const initialState: AccountsState = { loading: { list: false, create: false, - transfer: false + transfer: false, + update: false } }; @@ -146,6 +148,33 @@ export default function reducer( } }; + // update pass + case UPDATE_INIT: + return { + ...state, + loading: { + ...state.loading, + update: true + } + }; + case UPDATE_SUCCESS: + return { + ...state, + loading: { + ...state.loading, + update: false + } + }; + case UPDATE_ERROR: + return { + ...state, + error: action.payload, + loading: { + ...state.loading, + update: false + } + }; + default: return state; } @@ -351,3 +380,34 @@ export function createAccount( } }; } + +export function updateAccount( + moniker: string, + passphrase: string, + newPassphrase: string +): ThunkResult> { + return async (dispatch, getState) => { + const error = errorHandler(dispatch, UPDATE_ERROR); + const { settings } = getState(); + + const datadir = new MonetDataDir(settings.datadir); + + try { + const {} = await datadir.updateKeyfile( + moniker, + passphrase, + newPassphrase + ); + + dispatch({ + type: CREATE_SUCCESS + }); + + return true; + } catch (e) { + return error('Incorrect passphrase'); + } + + return false; + }; +} diff --git a/src/selectors/index.ts b/src/selectors/index.ts index 7c8458c..3a72da2 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -12,6 +12,9 @@ export const selectListAccountLoading = (store: Store) => export const selectCreateAccountLoading = (store: Store) => store.accounts.loading.create; +export const selectAccountUpdateLoading = (store: Store) => + store.accounts.loading.update; + export const selectAccountError = (store: Store) => store.accounts.error; // config selectors From 826689d15bf199c30d144bdabd6084f7a5b65cd4 Mon Sep 17 00:00:00 2001 From: Danu Date: Fri, 15 Nov 2019 14:02:06 +0000 Subject: [PATCH 30/30] update: Version & electron render path --- package.json | 2 +- src/index.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index ea91a8f..146cba3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "monet-wallet", - "version": "1.0.0", + "version": "0.1.0", "private": true, "dependencies": { "@fortawesome/fontawesome-svg-core": "^1.2.25", diff --git a/src/index.ts b/src/index.ts index 1be45f3..4fc97a3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -23,8 +23,8 @@ function createWindow() { // createMenu(); - // main.loadURL(`file://${__dirname}/index.html`); - main.loadURL(`http://localhost:8081`); + main.loadURL(`file://${__dirname}/index.html`); + // main.loadURL(`http://localhost:8081`); main.on('closed', () => { main = null;
    +
    {props.children} ); diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 4b63d99..9b17abc 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,96 +1,24 @@ import React, { useEffect, useState } from 'react'; -import utils, { Currency } from 'evm-lite-utils'; +import styled from 'styled-components'; +import { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; -import styled from 'styled-components'; - import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; -import Image from 'react-bootstrap/Image'; import Jumbotron from 'react-bootstrap/Jumbotron'; import Row from 'react-bootstrap/Row'; import FloatButton from '../components/FloatButton'; -import WhiteChev from '../assets/chev-white.svg'; - import { AccountsState, list } from '../modules/accounts'; import { MonikerEVMAccount } from '../monet'; import { Store } from '../store'; -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); - -const SChevron = styled(Image)` - margin-left: 30px; -`; - -const SSidebar = styled(Col)` - box-shadow: 0 2px 20px -20px #eee !important; - - h5 { - background: #fefefe !important; - color: #263c99; - padding: 10px 20px !important; - margin-bottom: 0px; - } - - & ul { - max-height: calc(100vh - 86px - 121px - 44px) !important; - overflow-y: auto; - list-style: none; - background: #fff !important; - margin: 0 !important; - padding: 0 !important; - } - - & li { - display: block; - padding: 10px 20px !important; - transition: background-color 100ms ease-in; - } - - & li span { - color: #666; - font-size: 13px; - padding: 0px !important; - display: block; - overflow-y: hidden; - } - - & li:hover { - cursor: pointer; - color: white !important; - background: #263c99ee !important; - - & span { - color: white; - } - } - - & .active { - color: white !important; - box-shadow: 0 4px 6px -10px #fff inset !important; - background: #263c99 !important; - - & span { - color: white; - } - } -`; - -const SDetail = styled.div` - box-shadow: 0 2px 20px -20px #eee !important; - - h5 { - padding: 10px 20px; - background: #fff !important; - color: #263c99 !important; - padding: 10px 20px !important; - margin-bottom: 0px; - } +const SJumbotron = styled(Jumbotron)` + box-shadow: 0 2px 20px -15px #ddd !important; `; const Accounts: React.FunctionComponent<{}> = () => { @@ -106,18 +34,8 @@ const Accounts: React.FunctionComponent<{}> = () => { }); const accounts = useSelector(store => store.accounts); - - const isSelected = (account: MonikerEVMAccount) => - utils.cleanAddress(activeAccount.address) === - utils.cleanAddress(account.address); const hasSelected = activeAccount.address !== ''; - const bindActiveAccountSetter = (account: MonikerEVMAccount) => ( - e: any - ) => { - setActiveAccount(account); - }; - useEffect(() => { refreshAccounts(); }, []); @@ -132,7 +50,7 @@ const Accounts: React.FunctionComponent<{}> = () => { return ( <> - + @@ -157,71 +75,13 @@ const Accounts: React.FunctionComponent<{}> = () => { - - - - -
    Accounts
    -
      - {accounts.all.map(account => ( -
    • - - - - - - {capitalize(account.moniker)} - - {account.address} - - - - - - -
    • - ))} -
    -
    - {hasSelected && ( - - -
    - {capitalize(activeAccount.moniker)} - - - ({activeAccount.address}) - -
    -
    -
    - - )} -
    -
    + + diff --git a/src/index.css b/src/index.css index fab3649..e6caef1 100644 --- a/src/index.css +++ b/src/index.css @@ -1,20 +1,28 @@ @import url('https://fonts.googleapis.com/css?family=Titillium+Web:300,400&display=swap'); @import url('https://fonts.googleapis.com/css?family=Cousine&display=swap'); +@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap'); body { - font-family: 'Titillium Web', sans-serif !important; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; - background: #f4f5f7 !important; + background: #fafafa !important; margin: 0 !important; padding: 0 !important; + font-family: 'Roboto', sans-serif !important; + font-size: 15px; +} + +h1, +h2, +h3, +h4, +h5 { + font-family: 'Titillium Web', sans-serif !important; } .bg-light { background: rgba(255, 255, 255, 0.95) !important; - height: 70px; - line-height: 70px !important; - color: #333 !important; + color: #000 !important; z-index: 2000; box-shadow: 0 4px 6px -10px #f1f1f1 !important; width: 100% !important; @@ -32,7 +40,7 @@ a:hover { .jumbotron { border-radius: 0 !important; - padding: 20px 0 !important; + padding: 25px 0 !important; background: #fff !important; margin-bottom: 0 !important; } @@ -46,8 +54,14 @@ p { font-size: 15px; } -.btn-warning { - background: #f16622 !important; +.btn-primary { + background: #263c99 !important; + border-radius: 0 !important; border: none !important; color: #eee !important; } + +.dropdown-menu { + border: none !important; + box-shadow: 0 2px 20px -10px #ddd !important; +} diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 8ea8796..8a55b14 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -36,6 +36,9 @@ const TRANSFER_REQUEST = '@monet/accounts/TRANSFER/REQUEST'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; +// Select an account as primary +const SELECT = '@monet/accounts/SELECT'; + // Accounts state structure export interface AccountsState { // Entire list of accounts @@ -43,6 +46,7 @@ export interface AccountsState { // Currently unlocked account readonly unlocked?: MonikerAccount; + readonly selected?: MonikerEVMAccount; // A single error field to be used by this module for any action readonly error?: string; diff --git a/wireframes/placeholder b/wireframes/placeholder deleted file mode 100644 index e69de29..0000000 From 078cd938a16ab8558aa3a0923eb943fc509a523b Mon Sep 17 00:00:00 2001 From: Danu Date: Tue, 1 Oct 2019 10:34:43 +0100 Subject: [PATCH 04/30] update: Added evm-lite-js modules --- package.json | 9 +- src/index.ts | 2 + yarn.lock | 466 +++++++++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 460 insertions(+), 17 deletions(-) diff --git a/package.json b/package.json index c6cfdb9..8127e77 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,12 @@ "version": "1.0.0", "private": true, "dependencies": { + "evm-lite-client": "^1.3.7", + "evm-lite-consensus": "^1.3.7", + "evm-lite-core": "^1.3.7", + "evm-lite-datadir": "^1.3.7", + "evm-lite-keystore": "^1.3.7", + "evm-lite-utils": "^1.3.7", "js-scrypt": "^0.2.0", "random-hash": "^4.0.1", "react": "^16.9.0", @@ -25,7 +31,8 @@ "pkg:mac": "electron-packager ./dist \"Monet Wallet\" --platform=darwin --target=zip --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.icns", "pkg:linux": "electron-packager ./dist \"Monet Wallet\" --target=zip --platform=linux --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.png", "pkg:win": "electron-packager ./dist \"Monet Wallet\" --platform=win32 --arch=x64 --out ./pkg --overwrite --icon src/assets/monet_logo.ico", - "linkalldev": "yarn link evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils" + "linkalldev": "yarn link evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils", + "addalldev": "yarn add evm-lite-core evm-lite-consensus evm-lite-keystore evm-lite-datadir evm-lite-client evm-lite-utils" }, "devDependencies": { "@babel/core": "^7.6.0", diff --git a/src/index.ts b/src/index.ts index 9b9daff..4471f87 100644 --- a/src/index.ts +++ b/src/index.ts @@ -15,6 +15,8 @@ function createWindow() { }, width: 1350, height: 757, + resizable: false, + fullscreen: false, title: 'Monet Wallet', icon }); diff --git a/yarn.lock b/yarn.lock index c3249f3..161fd19 100644 --- a/yarn.lock +++ b/yarn.lock @@ -285,6 +285,13 @@ resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== +"@types/bn.js@^4.11.4": + version "4.11.5" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-4.11.5.tgz#40e36197433f78f807524ec623afcf0169ac81dc" + integrity sha512-AEAZcIZga0JgVMHNtl1CprA/hXX7/wPt79AgR4XqaDt7jyj3QWYw6LPoOiznPtugDmlubUnAahMs2PFxGcQrng== + dependencies: + "@types/node" "*" + "@types/events@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -451,7 +458,7 @@ "@types/source-list-map" "*" source-map "^0.6.1" -"@types/webpack@^4.39.1", "@types/webpack@^4.4.31": +"@types/webpack@^4.39.1": version "4.39.1" resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.39.1.tgz#d76cd551cc851198f67f75ff3e26551d204530e9" integrity sha512-rgO9ihNu/l72Sjx3shqwc9r6gi+tOMsqxhMEZhOEVIZt82GFOeUyEdpTk1BO2HqEHLS/XJW8ldUTIIfIMMyYFQ== @@ -752,6 +759,11 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= +array-buffer-to-hex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-buffer-to-hex/-/array-buffer-to-hex-1.0.0.tgz#9c76e53010ef7bf7bf8a27ebbb41d24e1d83edf4" + integrity sha512-arycdkxgK1cj6s03GDb96tlCxOl1n3kg9M2OHseUc6Pqyqp+lgfceFPmG507eI5V+oxOSEnlOw/dFc7LXBXF4Q== + array-filter@~0.0.0: version "0.0.1" resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" @@ -1259,17 +1271,43 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bignumber.js@^7.0.0: + version "7.2.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" + integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== + +bignumber.js@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.0.tgz#805880f84a329b5eac6e7cb6f8274b6d82bdf075" + integrity sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A== + +"bignumber.js@git+https://github.com/frozeman/bignumber.js-nolookahead.git": + version "2.0.7" + resolved "git+https://github.com/frozeman/bignumber.js-nolookahead.git#57692b3ecfc98bbdd6b3a516cb2353652ea49934" + binary-extensions@^1.0.0: version "1.13.1" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== +bindings@^1.2.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + bluebird@^3.1.1, bluebird@^3.5.0, bluebird@^3.5.5: version "3.5.5" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha1-UzRK2xRhehP26N0s4okF0cC6MhU= + +bn.js@4.11.8, bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.6, bn.js@^4.11.8, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== @@ -1355,7 +1393,7 @@ browserify-aes@^1.0.0, browserify-aes@^1.0.4: inherits "^2.0.1" safe-buffer "^5.0.1" -browserify-cipher@^1.0.0: +browserify-cipher@^1.0.0, browserify-cipher@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== @@ -1439,6 +1477,11 @@ buffer-indexof@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== +buffer-to-arraybuffer@^0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a" + integrity sha1-YGSkD6dutDxyOrqe+PbhIW0QURo= + buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" @@ -1678,14 +1721,6 @@ clean-css@4.2.x: dependencies: source-map "~0.6.0" -clean-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz#a99d8ec34c1c628a4541567aa7b457446460c62b" - integrity sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A== - dependencies: - "@types/webpack" "^4.4.31" - del "^4.1.1" - cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -2002,6 +2037,18 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" +crypto-js@^3.1.4: + version "3.1.8" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.8.tgz#715f070bf6014f2ae992a98b3929258b713f08d5" + integrity sha1-cV8HC/YBTyrpkqmLOSkli3E/CNU= + +crypto-random-hex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-hex/-/crypto-random-hex-1.0.0.tgz#f15d4f4a8ce01e9d05e423390b3b98309c8e86de" + integrity sha512-1DuZQ03El13TRgfrqbbjW40Gvi4OKInny/Wxqj23/JMXe214C/3Tlz92bKXWDW3NZT5RjXUGdYW4qiIOUPf+cA== + dependencies: + array-buffer-to-hex "^1.0.0" + css-color-keywords@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" @@ -2159,7 +2206,7 @@ defer-to-connect@^1.0.1: resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.0.2.tgz#4bae758a314b034ae33902b5aac25a8dd6a8633e" integrity sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw== -define-properties@^1.1.2: +define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== @@ -2316,6 +2363,11 @@ dom-serializer@0: domelementtype "^1.3.0" entities "^1.1.1" +dom-walk@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" + integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg= + domain-browser@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" @@ -2477,6 +2529,19 @@ elliptic@^6.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.0" +elliptic@^6.4.0: + version "6.5.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz#c380f5f909bf1b9b4428d028cd18d3b0efd6b52b" + integrity sha512-xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg== + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -2537,6 +2602,22 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +es-abstract@^1.13.0: + version "1.14.2" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.14.2.tgz#7ce108fad83068c8783c3cdf62e504e084d8c497" + integrity sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg== + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.0" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-inspect "^1.6.0" + object-keys "^1.1.1" + string.prototype.trimleft "^2.0.0" + string.prototype.trimright "^2.0.0" + es-abstract@^1.5.1: version "1.13.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" @@ -2603,6 +2684,23 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= +eth-lib@0.2.8, eth-lib@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/eth-lib/-/eth-lib-0.2.8.tgz#b194058bef4b220ad12ea497431d6cb6aa0623c8" + integrity sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw== + dependencies: + bn.js "^4.11.6" + elliptic "^6.4.0" + xhr-request-promise "^0.1.2" + +ethjs-unit@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk= + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + eventemitter3@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" @@ -2620,6 +2718,73 @@ eventsource@^1.0.7: dependencies: original "^1.0.0" +evm-lite-client@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-client/-/evm-lite-client-1.3.7.tgz#bf46c5776379bbeba266685c41a31ff4315c9191" + integrity sha512-83yjmdxQ/WNvIB2aSXvkkBe8HNrd6Cs9shEhX+ng4+EnYRpNYEm3Ev0C7olUAVpKziP9tWNkN9sKRR8JebUJnQ== + dependencies: + bignumber.js "^9.0.0" + json-bigint "^0.3.0" + +evm-lite-consensus@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-consensus/-/evm-lite-consensus-1.3.7.tgz#23026849c0528979784d028be76ffe31e0b9f91c" + integrity sha512-04KlYgiYMvChJYX5Lu4zbPVtiGD7Udx/ZjBe5ifa2lPGaBsRtEi7Q0WSjP5g/0aH4Tb5vOgz5LXF2/p6HyiVew== + dependencies: + evm-lite-client "^1.3.7" + json-bigint "^0.3.0" + +evm-lite-core@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-core/-/evm-lite-core-1.3.7.tgz#f45514ecdb9d277106ac73f20c5f47fe1affc347" + integrity sha512-6lh2vvIvIb1QBWW+2QhRBgo24RrDiV9rOrkdWw7hVq0hIRuEhwLtDwn/qyZfLyhMbWfEzEzicTx/j8Em8BSGZg== + dependencies: + eth-lib "0.2.8" + evm-lite-client "^1.3.7" + evm-lite-consensus "^1.3.7" + evm-lite-utils "^1.3.7" + json-bigint "^0.3.0" + web3 "0.20.6" + web3-eth-iban "1.0.0-beta.46" + web3-utils "1.0.0-beta.46" + +evm-lite-datadir@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-datadir/-/evm-lite-datadir-1.3.7.tgz#e444916ae684cd00e59dabfc11e36219a82fff84" + integrity sha512-FgMk4tNPXHOxSwNwwshi2iq4qUE2Zj3STHi8qwAVt65rfIXVbUKo4DSdFHVdwmW0ovi42Q56C73QrPA8N+bz8Q== + dependencies: + evm-lite-keystore "^1.3.7" + evm-lite-utils "^1.3.7" + mkdirp "^0.5.1" + toml "^3.0.0" + tomlify-j0.4 "^3.0.0" + +evm-lite-keystore@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-keystore/-/evm-lite-keystore-1.3.7.tgz#44e5bc48f846a31d40bde92836f95eefe2b862d4" + integrity sha512-+WXRtDRuyPCinyNvG8PJnto486hFGYhunnnEpI3zBGrnvlD/rowN6uJ6xmQSYf/ZPngRf0yXdSnTnrlmKx1Fvg== + dependencies: + browserify-cipher "^1.0.1" + crypto-random-hex "^1.0.0" + eth-lib "^0.2.8" + evm-lite-client "^1.3.7" + evm-lite-core "^1.3.7" + evm-lite-utils "^1.3.7" + json-bigint "0.3.0" + keccak256 "^1.0.0" + mkdirp "^0.5.1" + randombytes "^2.1.0" + uuid "^3.3.3" + +evm-lite-utils@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/evm-lite-utils/-/evm-lite-utils-1.3.7.tgz#e178c785de6f2424de3e6dcb18d2bbbb6caf7a14" + integrity sha512-IQXp10vTFo7K7oggZKh1uaZbgX9QM01JE4NBB3b+LxV95d1SpvtpF7D6DF3zWvyYtnNe+JOjWUXYtOq0bQYjlw== + dependencies: + bignumber.js "^9.0.0" + mkdirp "^0.5.1" + remove-trailing-zeros "^1.0.3" + evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" @@ -2828,6 +2993,11 @@ file-loader@^4.2.0: loader-utils "^1.2.3" schema-utils "^2.0.0" +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + filesize@3.6.1: version "3.6.1" resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" @@ -2927,6 +3097,13 @@ follow-redirects@^1.0.0: dependencies: debug "^3.2.6" +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -3187,6 +3364,14 @@ global-prefix@^3.0.0: kind-of "^6.0.2" which "^1.3.1" +global@~4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" + integrity sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8= + dependencies: + min-document "^2.19.0" + process "~0.5.1" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -3759,7 +3944,7 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-callable@^1.1.4: +is-callable@^1.1.3, is-callable@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== @@ -3842,6 +4027,11 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= +is-function@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + integrity sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU= + is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -3856,6 +4046,11 @@ is-glob@^4.0.0: dependencies: is-extglob "^2.1.1" +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -4032,6 +4227,13 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= +json-bigint@0.3.0, json-bigint@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-0.3.0.tgz#0ccd912c4b8270d05f056fbd13814b53d3825b1e" + integrity sha1-DM2RLEuCcNBfBW+9E4FLU9OCWx4= + dependencies: + bignumber.js "^7.0.0" + json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" @@ -4108,6 +4310,24 @@ junk@^3.1.0: resolved "https://registry.yarnpkg.com/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1" integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ== +keccak256@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/keccak256/-/keccak256-1.0.0.tgz#1ba55ce78ed3d63fb7091d045469007da984171d" + integrity sha512-8qv2vJdQk+Aa2tFXo8zYodm+6DgXqUOqvNJhj1p1V2pxQJT1oNKxNF+zWfhtKXNLZdLvyxjB/dvd9GwcvTHSQQ== + dependencies: + bn.js "^4.11.8" + keccak "^1.4.0" + +keccak@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-1.4.0.tgz#572f8a6dbee8e7b3aa421550f9e6408ca2186f80" + integrity sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw== + dependencies: + bindings "^1.2.1" + inherits "^2.0.3" + nan "^2.2.1" + safe-buffer "^5.1.0" + keyboard-key@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/keyboard-key/-/keyboard-key-1.0.4.tgz#52d8fa07b7e17757072aa22a67fb4ae85e4c46b0" @@ -4467,6 +4687,13 @@ mimic-response@^1.0.0, mimic-response@^1.0.1: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + dependencies: + dom-walk "^0.1.0" + mini-create-react-context@^0.3.0: version "0.3.2" resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189" @@ -4594,7 +4821,7 @@ mute-stream@0.0.7: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= -nan@^2.12.1: +nan@^2.12.1, nan@^2.2.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== @@ -4804,6 +5031,14 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA= + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -4823,7 +5058,12 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-keys@^1.0.12: +object-inspect@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" + integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== + +object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -5049,6 +5289,14 @@ parse-author@^2.0.0: dependencies: author-regex "^1.0.0" +parse-headers@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.2.tgz#9545e8a4c1ae5eaea7d24992bca890281ed26e34" + integrity sha512-/LypJhzFmyBIDYP9aDVgeyEb5sQfbfY5mnDq4hVhlQ69js87wXfmEI5V3xI6vvXasqebp0oCytYFLxsBVfCzSg== + dependencies: + for-each "^0.3.3" + string.prototype.trim "^1.1.2" + parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" @@ -5377,6 +5625,11 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= +process@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" + integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= + progress-stream@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77" @@ -5479,6 +5732,15 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +query-string@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" + integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw== + dependencies: + decode-uri-component "^0.2.0" + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + querystring-es3@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" @@ -5499,7 +5761,7 @@ random-hash@^4.0.1: resolved "https://registry.yarnpkg.com/random-hash/-/random-hash-4.0.1.tgz#342d7d14501e664f0bee2d9a13eeae9c973cb755" integrity sha1-NC19FFAeZk8L7i2aE+6unJc8t1U= -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== @@ -5514,6 +5776,11 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" +randomhex@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/randomhex/-/randomhex-0.1.5.tgz#baceef982329091400f2a2912c6cd02f1094f585" + integrity sha1-us7vmCMpCRQA8qKRLGzQLxCU9YU= + range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -5883,6 +6150,11 @@ remove-trailing-separator@^1.0.1: resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= +remove-trailing-zeros@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/remove-trailing-zeros/-/remove-trailing-zeros-1.0.3.tgz#9d167b10262c6296376577b4f7485210497ae699" + integrity sha512-jPyx7zNib1nb7MIDrV/vV3FTkL4EjpsUHqXeB5WrPInoPuvy41Viv6qXXP3dYhPztlbu3ucNdyqnOrEqMcJxMg== + renderkid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.3.tgz#380179c2ff5ae1365c522bf2fcfcff01c5b74149" @@ -6298,6 +6570,20 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + integrity sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY= + +simple-get@^2.7.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.8.1.tgz#0e22e91d4575d87620620bc91308d57a77f44b5d" + integrity sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw== + dependencies: + decompress-response "^3.3.0" + once "^1.3.1" + simple-concat "^1.0.0" + single-line-log@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364" @@ -6574,6 +6860,11 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -6600,6 +6891,31 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string.prototype.trim@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz#75a729b10cfc1be439543dae442129459ce61e3d" + integrity sha512-9EIjYD/WdlvLpn987+ctkLf0FfvBefOCuiEr2henD8X+7jfwPnyvTdmW8OJhj5p+M0/96mBdynLWkxUr+rHlpg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.13.0" + function-bind "^1.1.1" + +string.prototype.trimleft@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" + integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + +string.prototype.trimright@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" + integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== + dependencies: + define-properties "^1.1.3" + function-bind "^1.1.1" + string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" @@ -6657,6 +6973,13 @@ strip-eof@^1.0.0: resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha1-DF8VX+8RUTczd96du1iNoFUA428= + dependencies: + is-hex-prefixed "1.0.0" + strip-indent@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" @@ -6829,6 +7152,11 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== +timed-out@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + timers-browserify@^2.0.4: version "2.0.10" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" @@ -6925,6 +7253,16 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== +toml@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tomlify-j0.4@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tomlify-j0.4/-/tomlify-j0.4-3.0.0.tgz#99414d45268c3a3b8bf38be82145b7bba34b7473" + integrity sha512-2Ulkc8T7mXJ2l0W476YC/A209PR38Nw8PuaCNtk9uI3t1zzFdGQeWYGQvmj2PZkVvRC/Yoi4xQKMRnWc/N29tQ== + toposort@^1.0.0: version "1.0.7" resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029" @@ -7184,6 +7522,11 @@ url-parse@^1.4.3: querystringify "^2.1.1" requires-port "^1.0.0" +url-set-query@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339" + integrity sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk= + url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -7202,6 +7545,16 @@ utf8-byte-length@^1.0.1: resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" integrity sha1-9F8VDExm7uloGGUFq5P8u4rWv2E= +utf8@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.1.tgz#2e01db02f7d8d0944f77104f1609eb0c304cf768" + integrity sha1-LgHbAvfY0JRPdxBPFgnrDDBM92g= + +utf8@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-2.1.2.tgz#1fa0d9270e9be850d9b05027f63519bf46457d96" + integrity sha1-H6DZJw6b6FDZsFAn9jUZv0ZFfZY= + util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -7244,6 +7597,11 @@ uuid@^3.0.1, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== +uuid@^3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== + v8-compile-cache@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" @@ -7304,6 +7662,42 @@ wbuf@^1.1.0, wbuf@^1.7.3: dependencies: minimalistic-assert "^1.0.0" +web3-eth-iban@1.0.0-beta.46: + version "1.0.0-beta.46" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.0.0-beta.46.tgz#55ed759d99540bf71b698e132a4aadc89e879752" + integrity sha512-IM9VbznRaEs58n7mYbJcPviOLMAiiveqZT1jtlcJ/DbrvMkArV0Xf6n2OyFY+ak3ppddKVMIAGISxhky6r/7cg== + dependencies: + "@babel/runtime" "^7.3.1" + bn.js "4.11.8" + web3-utils "1.0.0-beta.46" + +web3-utils@1.0.0-beta.46: + version "1.0.0-beta.46" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.0.0-beta.46.tgz#9984dda27c9079b129e741cbb63b665ae0f9725c" + integrity sha512-mSz+NrAil2fDZkxTXHPntCclZ8DofMjv8Q+BYR0VAyzTzylpYNXAV0WDdxBp/sXgniWRZXZMF7OkQNWqhZ1J9g== + dependencies: + "@babel/runtime" "^7.3.1" + "@types/bn.js" "^4.11.4" + "@types/node" "^10.12.18" + bn.js "4.11.8" + eth-lib "0.2.8" + ethjs-unit "^0.1.6" + lodash "^4.17.11" + number-to-bn "1.7.0" + randomhex "0.1.5" + utf8 "2.1.1" + +web3@0.20.6: + version "0.20.6" + resolved "https://registry.yarnpkg.com/web3/-/web3-0.20.6.tgz#3e97306ae024fb24e10a3d75c884302562215120" + integrity sha1-PpcwauAk+yThCj11yIQwJWIhUSA= + dependencies: + bignumber.js "git+https://github.com/frozeman/bignumber.js-nolookahead.git" + crypto-js "^3.1.4" + utf8 "^2.1.1" + xhr2 "*" + xmlhttprequest "*" + webpack-cli@^3.3.8: version "3.3.8" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-3.3.8.tgz#caeaebcc26f685db1736e5decd3f01aac30123ec" @@ -7499,6 +7893,41 @@ ws@^6.2.1: dependencies: async-limiter "~1.0.0" +xhr-request-promise@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/xhr-request-promise/-/xhr-request-promise-0.1.2.tgz#343c44d1ee7726b8648069682d0f840c83b4261d" + integrity sha1-NDxE0e53JrhkgGloLQ+EDIO0Jh0= + dependencies: + xhr-request "^1.0.1" + +xhr-request@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/xhr-request/-/xhr-request-1.1.0.tgz#f4a7c1868b9f198723444d82dcae317643f2e2ed" + integrity sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA== + dependencies: + buffer-to-arraybuffer "^0.0.5" + object-assign "^4.1.1" + query-string "^5.0.1" + simple-get "^2.7.0" + timed-out "^4.0.1" + url-set-query "^1.0.0" + xhr "^2.0.4" + +xhr2@*: + version "0.2.0" + resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.2.0.tgz#eddeff782f3b7551061b8d75645085269396e521" + integrity sha512-BDtiD0i2iKPK/S8OAZfpk6tyzEDnKKSjxWHcMBVmh+LuqJ8A32qXTyOx+TVOg2dKvq6zGBq2sgKPkEeRs1qTRA== + +xhr@^2.0.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/xhr/-/xhr-2.5.0.tgz#bed8d1676d5ca36108667692b74b316c496e49dd" + integrity sha512-4nlO/14t3BNUZRXIXfXe+3N6w3s1KoxcJUUURctd64BLRe67E4gRwp4PjywtDY72fXpZ1y6Ch0VZQRY/gMPzzQ== + dependencies: + global "~4.3.0" + is-function "^1.0.1" + parse-headers "^2.0.0" + xtend "^4.0.0" + xmlbuilder@^9.0.7: version "9.0.7" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" @@ -7509,6 +7938,11 @@ xmldom@0.1.x: resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk= +xmlhttprequest@*: + version "1.8.0" + resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" + integrity sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw= + xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 543dc57dd5cc0a40f598602dead93420c186192b Mon Sep 17 00:00:00 2001 From: Danu Date: Tue, 1 Oct 2019 15:48:21 +0100 Subject: [PATCH 05/30] update: Added modal to switch accounts --- src/components/Header.tsx | 47 ++++++++++++++++++++++++++++++++++----- src/index.css | 25 ++++++++++++++++----- src/modules/accounts.ts | 2 +- 3 files changed, 63 insertions(+), 11 deletions(-) diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 6395c9b..73d8e5e 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,6 +1,6 @@ -import React from 'react'; +import React, { useState } from 'react'; -import utils from 'evm-lite-utils'; +import utils, { Currency } from 'evm-lite-utils'; import { useSelector } from 'react-redux'; import { NavLink } from 'react-router-dom'; @@ -8,12 +8,15 @@ import { NavLink } from 'react-router-dom'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Image from 'react-bootstrap/Image'; +import Modal from 'react-bootstrap/Modal'; import Nav from 'react-bootstrap/Nav'; import Navbar from 'react-bootstrap/Navbar'; +import Button from 'react-bootstrap/Button'; import NavDropdown from 'react-bootstrap/NavDropdown'; import Row from 'react-bootstrap/Row'; import { AccountsState } from '../modules/accounts'; +import { MonikerEVMAccount } from '../monet'; import { Store } from '../store'; import Logo from '../assets/monet_logo.png'; @@ -25,8 +28,39 @@ type Props = {}; const Header: React.FunctionComponent = props => { const accounts = useSelector(store => store.accounts); + const [show, setShow] = useState(false); + const [selectedAccount, setSelectedAccount] = useState({ + address: '', + balance: new Currency(0), + nonce: 0, + bytecode: '', + moniker: '' + }); + + const handleClose = () => setShow(false); + const handleShow = () => setShow(true); + + const onAccountClickBinder = (account: MonikerEVMAccount) => (e: any) => { + setSelectedAccount(account); + handleShow(); + }; + return ( + + + Switch Accounts + + + Attempting to switch accounts to {selectedAccount.moniker} ( + {selectedAccount.address}) + + + + + @@ -40,7 +74,10 @@ const Header: React.FunctionComponent = props => { {accounts.all.map(account => ( - + = props => { account.address )}?size=100&default=retro`} width={20} - className="mr-2" + className="mr-1" /> - + {capitalize(account.moniker)} diff --git a/src/index.css b/src/index.css index e6caef1..9aa9d8f 100644 --- a/src/index.css +++ b/src/index.css @@ -9,6 +9,7 @@ body { margin: 0 !important; padding: 0 !important; font-family: 'Roboto', sans-serif !important; + font-family: 'Titillium Web', sans-serif !important; font-size: 15px; } @@ -23,7 +24,6 @@ h5 { .bg-light { background: rgba(255, 255, 255, 0.95) !important; color: #000 !important; - z-index: 2000; box-shadow: 0 4px 6px -10px #f1f1f1 !important; width: 100% !important; } @@ -54,14 +54,29 @@ p { font-size: 15px; } -.btn-primary { - background: #263c99 !important; +.btn { border-radius: 0 !important; - border: none !important; - color: #eee !important; +} + +.btn-primary { } .dropdown-menu { border: none !important; box-shadow: 0 2px 20px -10px #ddd !important; } + +.modal-content { + border: none !important; + border-radius: 0 !important; + outline: none !important; + box-shadow: none !important; +} + +.modal-header { + border-bottom: 1px solid #f9f9f9 !important; +} + +.modal-footer { + border-top: 1px solid #f9f9f9 !important; +} diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 8a55b14..b218373 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -37,7 +37,7 @@ const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; // Select an account as primary -const SELECT = '@monet/accounts/SELECT'; +// const SELECT = '@monet/accounts/SELECT'; // Accounts state structure export interface AccountsState { From 4fab00fa6dbb045cd56bcfd9f5bc8767f5ff3f10 Mon Sep 17 00:00:00 2001 From: Danu Date: Tue, 1 Oct 2019 16:44:39 +0100 Subject: [PATCH 06/30] update: Unlocking and switching between accounts --- src/components/Header.tsx | 51 +++++++++++++++++++++++++----- src/containers/Accounts.tsx | 62 ++++++++++++++++++++++--------------- src/index.css | 5 +++ src/modules/accounts.ts | 1 - 4 files changed, 86 insertions(+), 33 deletions(-) diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 73d8e5e..45e4c7f 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -2,20 +2,21 @@ import React, { useState } from 'react'; import utils, { Currency } from 'evm-lite-utils'; -import { useSelector } from 'react-redux'; +import { useDispatch, useSelector } from 'react-redux'; import { NavLink } from 'react-router-dom'; +import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; +import Form from 'react-bootstrap/Form'; import Image from 'react-bootstrap/Image'; import Modal from 'react-bootstrap/Modal'; import Nav from 'react-bootstrap/Nav'; import Navbar from 'react-bootstrap/Navbar'; -import Button from 'react-bootstrap/Button'; import NavDropdown from 'react-bootstrap/NavDropdown'; import Row from 'react-bootstrap/Row'; -import { AccountsState } from '../modules/accounts'; +import { AccountsState, unlock } from '../modules/accounts'; import { MonikerEVMAccount } from '../monet'; import { Store } from '../store'; @@ -26,8 +27,11 @@ const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); type Props = {}; const Header: React.FunctionComponent = props => { + const dispatch = useDispatch(); const accounts = useSelector(store => store.accounts); + const [passphrase, setPassphrase] = useState(''); + const [show, setShow] = useState(false); const [selectedAccount, setSelectedAccount] = useState({ address: '', @@ -45,6 +49,12 @@ const Header: React.FunctionComponent = props => { handleShow(); }; + const handleSwitchAccount = async () => { + await dispatch(unlock(selectedAccount.moniker, passphrase)); + + handleClose(); + }; + return ( @@ -52,11 +62,34 @@ const Header: React.FunctionComponent = props => { Switch Accounts - Attempting to switch accounts to {selectedAccount.moniker} ( - {selectedAccount.address}) + + + + + +
    {capitalize(selectedAccount.moniker)}
    + {utils.cleanAddress(selectedAccount.address)} + +
    +
    + setPassphrase(e.target.value)} + placeholder="Passphrase" + type="password" + />
    - @@ -72,9 +105,13 @@ const Header: React.FunctionComponent = props => { Settings - + {accounts.all.map(account => ( diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 9b17abc..0e22590 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,67 +1,79 @@ -import React, { useEffect, useState } from 'react'; +import React, { useEffect } from 'react'; import styled from 'styled-components'; -import { Currency } from 'evm-lite-utils'; +import utils from 'evm-lite-utils'; + import { useDispatch, useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; +import Image from 'react-bootstrap/Image'; import Jumbotron from 'react-bootstrap/Jumbotron'; import Row from 'react-bootstrap/Row'; import FloatButton from '../components/FloatButton'; import { AccountsState, list } from '../modules/accounts'; -import { MonikerEVMAccount } from '../monet'; import { Store } from '../store'; +const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); + const SJumbotron = styled(Jumbotron)` box-shadow: 0 2px 20px -15px #ddd !important; `; +const SAvatarImage = styled(Image)``; + const Accounts: React.FunctionComponent<{}> = () => { const dispatch = useDispatch(); const refreshAccounts = () => dispatch(list()); - const [activeAccount, setActiveAccount] = useState({ - address: '', - nonce: 0, - balance: new Currency(0), - bytecode: '', - moniker: '' - }); - const accounts = useSelector(store => store.accounts); - const hasSelected = activeAccount.address !== ''; + const hasSelected = !!accounts.unlocked; useEffect(() => { refreshAccounts(); }, []); - useEffect(() => { - if (accounts.all.length) { - if (!hasSelected) { - setActiveAccount(accounts.all[0]); - } - } - }, [accounts.all]); - return ( <> - + + {!!accounts.unlocked && ( + + + + )} -

    Dashboard

    -

    View & Modify Existing Accounts

    +

    + {capitalize( + accounts.unlocked + ? accounts.unlocked.moniker + : 'Dashboard' + )} +

    + +

    + {accounts.unlocked + ? utils.cleanAddress( + accounts.unlocked.address + ) + : 'View Statistics & Modify Existing Accounts'} +

    Balance

    {hasSelected - ? activeAccount.balance.format('T') + ? accounts.unlocked!.balance.format('T') : 'Not Selected'}

    @@ -69,7 +81,7 @@ const Accounts: React.FunctionComponent<{}> = () => {

    Nonce

    {hasSelected - ? activeAccount.nonce + ? accounts.unlocked!.nonce : 'Not Selected'}

    diff --git a/src/index.css b/src/index.css index 9aa9d8f..82ac50c 100644 --- a/src/index.css +++ b/src/index.css @@ -63,6 +63,7 @@ p { .dropdown-menu { border: none !important; + border-radius: 0 !important; box-shadow: 0 2px 20px -10px #ddd !important; } @@ -77,6 +78,10 @@ p { border-bottom: 1px solid #f9f9f9 !important; } +.modal-body { + padding: 30px 20px !important; +} + .modal-footer { border-top: 1px solid #f9f9f9 !important; } diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index b218373..a1d6e44 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -46,7 +46,6 @@ export interface AccountsState { // Currently unlocked account readonly unlocked?: MonikerAccount; - readonly selected?: MonikerEVMAccount; // A single error field to be used by this module for any action readonly error?: string; From 6edf0035eee5cbf624c4c5107813ec223d58938b Mon Sep 17 00:00:00 2001 From: Danu Date: Tue, 1 Oct 2019 17:05:06 +0100 Subject: [PATCH 07/30] update: Better Heading for account --- src/containers/Accounts.tsx | 69 +++++++++++++++++++++---------------- 1 file changed, 40 insertions(+), 29 deletions(-) diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 0e22590..c078552 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -9,8 +9,8 @@ import { useDispatch, useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; -import Image from 'react-bootstrap/Image'; import Jumbotron from 'react-bootstrap/Jumbotron'; +import Media from 'react-bootstrap/Media'; import Row from 'react-bootstrap/Row'; import FloatButton from '../components/FloatButton'; @@ -24,7 +24,9 @@ const SJumbotron = styled(Jumbotron)` box-shadow: 0 2px 20px -15px #ddd !important; `; -const SAvatarImage = styled(Image)``; +const SHeadingContainer = styled(Container)` + padding: 0 5px !important; +`; const Accounts: React.FunctionComponent<{}> = () => { const dispatch = useDispatch(); @@ -40,34 +42,43 @@ const Accounts: React.FunctionComponent<{}> = () => { return ( <> - - - {!!accounts.unlocked && ( - - - - )} + + -

    - {capitalize( - accounts.unlocked - ? accounts.unlocked.moniker - : 'Dashboard' - )} -

    - -

    - {accounts.unlocked - ? utils.cleanAddress( + {accounts.unlocked ? ( + + + )}?size=100&default=retro`} + alt="Generic placeholder" + /> + +

    + {capitalize( + accounts.unlocked.moniker + )} +

    +

    + {utils.cleanAddress( + accounts.unlocked.address + )} +

    + + + ) : ( + <> +

    {'Dashboard'}

    +

    + { + 'View Statistics & Modify Existing Accounts' + } +

    + + )}

    Balance

    @@ -86,7 +97,7 @@ const Accounts: React.FunctionComponent<{}> = () => {

    -
    +
    From 432a75505d67a1779740a51a73f6e6a74bc036d3 Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 21 Oct 2019 16:29:51 +0100 Subject: [PATCH 08/30] update: Major reworks to reducers and selectors --- src/app/App.tsx | 18 +- src/app/index.tsx | 11 +- src/assets/refresh.png | Bin 0 -> 5312 bytes src/components/Avatar.tsx | 31 ++ src/components/Header.tsx | 143 +++--- src/components/Transfer.tsx | 93 ++++ src/components/styled.tsx | 14 + src/containers/Accounts.tsx | 84 ++-- src/containers/Settings.tsx | 117 +++++ src/index.css | 65 ++- src/modules/README.md | 165 ------- src/modules/accounts.ts | 461 ++++++-------------- src/modules/{configuration.ts => config.ts} | 12 +- src/modules/index.ts | 6 +- src/modules/poa.ts | 383 ---------------- src/monet.ts | 1 + src/selectors/index.ts | 13 + src/server.ts | 129 ++++++ src/store.ts | 6 +- 19 files changed, 726 insertions(+), 1026 deletions(-) create mode 100644 src/assets/refresh.png create mode 100644 src/components/Avatar.tsx create mode 100644 src/components/Transfer.tsx create mode 100644 src/components/styled.tsx create mode 100644 src/containers/Settings.tsx delete mode 100644 src/modules/README.md rename src/modules/{configuration.ts => config.ts} (95%) delete mode 100644 src/modules/poa.ts create mode 100644 src/selectors/index.ts create mode 100644 src/server.ts diff --git a/src/app/App.tsx b/src/app/App.tsx index fd7cdce..4e64731 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -4,19 +4,23 @@ import { useDispatch } from 'react-redux'; import { HashRouter, Route } from 'react-router-dom'; import { ToastContainer } from 'react-toastify'; -import { initialize } from '../modules/configuration'; +import { listAccounts } from '../modules/accounts'; +import { initConfig } from '../modules/config'; import Accounts from '../containers/Accounts'; +import Settings from '../containers/Settings'; import Wrapper from '../components/Wrapper'; const App: React.FunctionComponent<{}> = () => { const dispatch = useDispatch(); - const init = () => dispatch(initialize()); + const initConf = () => dispatch(initConfig()); + const initAccounts = () => dispatch(listAccounts()); useEffect(() => { - init(); + initConf(); + initAccounts(); }, []); return ( @@ -24,13 +28,7 @@ const App: React.FunctionComponent<{}> = () => { - {/* */} - {/* */} - {/* */} + { + stores.persistor.purge(); + stores.persistor.flush(); +}; + ReactDOM.render( - + , diff --git a/src/assets/refresh.png b/src/assets/refresh.png new file mode 100644 index 0000000000000000000000000000000000000000..0aec405955fdf2cf549ddbc84ff5fdaea4199930 GIT binary patch literal 5312 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 x0_T4U7QSwQA = props => { + return ( + + ); +}; + +export default Avatar; diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 45e4c7f..08a0736 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,5 +1,7 @@ import React, { useState } from 'react'; +import styled from 'styled-components'; + import utils, { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; @@ -16,24 +18,46 @@ import Navbar from 'react-bootstrap/Navbar'; import NavDropdown from 'react-bootstrap/NavDropdown'; import Row from 'react-bootstrap/Row'; -import { AccountsState, unlock } from '../modules/accounts'; +import { getSelectedAccount, selectAccount } from '../modules/accounts'; + import { MonikerEVMAccount } from '../monet'; -import { Store } from '../store'; +import { selectAccounts, selectedAccount } from '../selectors'; import Logo from '../assets/monet_logo.png'; +// import Refresh from '../assets/refresh.png'; +import Avatar from './Avatar'; const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); +const SDropdown = styled(NavDropdown)` + border: 1px solid #eee !important; + border-radius: 5px; + margin-right: 10px; +`; + +const SRefresh = styled(Button)` + /* padding: 10px 13px !important; */ + /* padding-top: 7px !important; */ +`; + +const SNav = styled(Nav)` + a { + border-radius: 5px; + } +`; + type Props = {}; -const Header: React.FunctionComponent = props => { +const Header: React.FunctionComponent = () => { const dispatch = useDispatch(); - const accounts = useSelector(store => store.accounts); + + const accounts = useSelector(selectAccounts); + const selected = useSelector(selectedAccount); const [passphrase, setPassphrase] = useState(''); const [show, setShow] = useState(false); - const [selectedAccount, setSelectedAccount] = useState({ + const [clickedAccount, setClickedAccount] = useState({ address: '', balance: new Currency(0), nonce: 0, @@ -44,13 +68,18 @@ const Header: React.FunctionComponent = props => { const handleClose = () => setShow(false); const handleShow = () => setShow(true); + const select = (moniker: string, pass: string) => + dispatch(selectAccount(moniker, pass)); + + const refresh = () => dispatch(getSelectedAccount()); + const onAccountClickBinder = (account: MonikerEVMAccount) => (e: any) => { - setSelectedAccount(account); + setClickedAccount(account); handleShow(); }; const handleSwitchAccount = async () => { - await dispatch(unlock(selectedAccount.moniker, passphrase)); + await select(clickedAccount.moniker, passphrase); handleClose(); }; @@ -58,58 +87,59 @@ const Header: React.FunctionComponent = props => { return ( - - Switch Accounts - - - - - - - -
    {capitalize(selectedAccount.moniker)}
    - {utils.cleanAddress(selectedAccount.address)} - -
    -
    - setPassphrase(e.target.value)} - placeholder="Passphrase" - type="password" - /> -
    - - - +
    + + Switch Accounts + + + + + + + +
    {capitalize(clickedAccount.moniker)}
    + + {utils.cleanAddress(clickedAccount.address)} + + +
    +
    + setPassphrase(e.target.value)} + placeholder="Passphrase" + type="password" + /> +
    + + + +
    - + - - + Settings + + - {accounts.all.map(account => ( + {accounts.map(account => ( = props => {
    ))} -
    + + {selected && ( + + Refresh + + )}
    ); diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx new file mode 100644 index 0000000..324b86e --- /dev/null +++ b/src/components/Transfer.tsx @@ -0,0 +1,93 @@ +import React, { useState } from 'react'; + +import styled from 'styled-components'; + +import { useDispatch, useSelector } from 'react-redux'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import Row from 'react-bootstrap/Row'; + +import Avatar from '../components/Avatar'; + +import { selectTransferLoading } from '../selectors'; + +import { transfer } from '../modules/accounts'; + +function isLetter(str: string) { + return str.length === 1 && str.match(/[a-z]/i); +} + +const STransfer = styled.div` + padding-top: 10px; +`; + +const Transfer: React.FC<{}> = () => { + const dispatch = useDispatch(); + const loading = useSelector(selectTransferLoading); + + const [to, setTo] = useState(''); + const [value, setValue] = useState(''); + + const makeTransfer = () => { + if (isLetter(value.slice(-1))) { + dispatch(transfer(to, value)); + } else { + dispatch(transfer(to, value + 'T')); + } + }; + + return ( + +
    + + + {to.length > 0 ? ( + + ) : ( +
    Transfer Coins
    + )} + + + + setTo(e.target.value)} + type="text" + placeholder="Enter address" + /> + + The address you wish to transfer to. + + + + + + setValue(e.target.value)} + type="value" + placeholder="Amount" + /> + + The amount will default to Tenom if no unit is + provided. + + + + + + +
    +
    +
    + ); +}; + +export default Transfer; diff --git a/src/components/styled.tsx b/src/components/styled.tsx new file mode 100644 index 0000000..762b410 --- /dev/null +++ b/src/components/styled.tsx @@ -0,0 +1,14 @@ +import styled from 'styled-components'; + +export const SContent = styled.div` + background: #fff !important; + border-radius: 5px !important; + border: 1px solid #f3f3f3 !important; + padding: 10px !important; +`; + +export const SContentNoPadding = styled.div` + background: #fff !important; + border-radius: 5px !important; + border: 1px solid #f3f3f3 !important; +`; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index c078552..f75314f 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,22 +1,23 @@ -import React, { useEffect } from 'react'; +import React from 'react'; import styled from 'styled-components'; import utils from 'evm-lite-utils'; -import { useDispatch, useSelector } from 'react-redux'; +import { useSelector } from 'react-redux'; -import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Jumbotron from 'react-bootstrap/Jumbotron'; import Media from 'react-bootstrap/Media'; import Row from 'react-bootstrap/Row'; -import FloatButton from '../components/FloatButton'; +import Avatar from '../components/Avatar'; +import Transfer from '../components/Transfer'; -import { AccountsState, list } from '../modules/accounts'; -import { Store } from '../store'; +import { SContent } from '../components/styled'; + +import { selectedAccount } from '../selectors'; const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); @@ -29,15 +30,17 @@ const SHeadingContainer = styled(Container)` `; const Accounts: React.FunctionComponent<{}> = () => { - const dispatch = useDispatch(); - const refreshAccounts = () => dispatch(list()); - - const accounts = useSelector(store => store.accounts); - const hasSelected = !!accounts.unlocked; + const selected = useSelector(selectedAccount); - useEffect(() => { - refreshAccounts(); - }, []); + const renderUnlocked = () => ( + <> + + + + + + + ); return ( <> @@ -45,70 +48,41 @@ const Accounts: React.FunctionComponent<{}> = () => { - {accounts.unlocked ? ( + {selected ? ( - Generic placeholder + -

    - {capitalize( - accounts.unlocked.moniker - )} -

    -

    +

    {capitalize(selected.moniker)}

    +

    {utils.cleanAddress( - accounts.unlocked.address + selected.address )}

    ) : ( <> -

    {'Dashboard'}

    -

    - { - 'View Statistics & Modify Existing Accounts' - } -

    +

    Not Selected

    +

    Use the dropdown to select an account

    )}

    Balance

    -

    - {hasSelected - ? accounts.unlocked!.balance.format('T') - : 'Not Selected'} +

    + {selected ? selected.balance.format('T') : '-'}

    Nonce

    -

    - {hasSelected - ? accounts.unlocked!.nonce - : 'Not Selected'} +

    + {selected ? selected.nonce : '-'}

    - - - - + {selected && renderUnlocked()} ); }; diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx new file mode 100644 index 0000000..f026159 --- /dev/null +++ b/src/containers/Settings.tsx @@ -0,0 +1,117 @@ +import React, { useEffect, useState } from 'react'; + +import { useDispatch, useSelector } from 'react-redux'; + +import styled from 'styled-components'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Container from 'react-bootstrap/Container'; +import Form from 'react-bootstrap/Form'; +import Row from 'react-bootstrap/Row'; + +import { SContent } from '../components/styled'; + +import { save } from '../modules/config'; +import { selectConfig, selectConfigSaveLoading } from '../selectors'; + +const SSettings = styled.div``; + +const Settings: React.FC<{}> = () => { + const dispatch = useDispatch(); + + const config = useSelector(selectConfig); + const loading = useSelector(selectConfigSaveLoading); + + const [gas, setGas] = useState(''); + const [host, setHost] = useState(''); + const [port, setPort] = useState(''); + + const saveConfig = async () => { + const newConfig = { + ...config + }; + + newConfig.defaults.gas = Number(gas); + + newConfig.connection.host = host; + newConfig.connection.port = Number(port); + + await dispatch(save(newConfig)); + }; + + useEffect(() => { + setGas(config.defaults.gas.toString()); + setPort(config.connection.port.toString()); + setHost(config.connection.host); + }, [config]); + + return ( + + + + + + + + + setGas(e.target.value) + } + type="text" + defaultValue={gas.toString()} + placeholder="Gas" + /> + + The default gas to be used for + all transactions. + + + + + + + + + + + setHost(e.target.value) + } + defaultValue={host} + type="text" + placeholder="Host" + /> + + The default host address. + + + + + + setPort(e.target.value) + } + defaultValue={port.toString()} + type="text" + placeholder="Port" + /> + + The default port. + + + + + + + + ); +}; + +export default Settings; diff --git a/src/index.css b/src/index.css index 82ac50c..56c7af8 100644 --- a/src/index.css +++ b/src/index.css @@ -1,16 +1,17 @@ @import url('https://fonts.googleapis.com/css?family=Titillium+Web:300,400&display=swap'); @import url('https://fonts.googleapis.com/css?family=Cousine&display=swap'); @import url('https://fonts.googleapis.com/css?family=Roboto&display=swap'); +@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap'); +@import url('https://fonts.googleapis.com/css?family=Fira+Code&display=swap'); body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; - background: #fafafa !important; + background: #f8f9fa !important; margin: 0 !important; padding: 0 !important; - font-family: 'Roboto', sans-serif !important; - font-family: 'Titillium Web', sans-serif !important; font-size: 15px; + font-family: 'Open Sans', sans-serif !important; } h1, @@ -18,7 +19,7 @@ h2, h3, h4, h5 { - font-family: 'Titillium Web', sans-serif !important; + font-family: 'Open Sans', sans-serif !important; } .bg-light { @@ -26,6 +27,7 @@ h5 { color: #000 !important; box-shadow: 0 4px 6px -10px #f1f1f1 !important; width: 100% !important; + /* border-bottom: 1px solid #fafafa; */ } a { @@ -40,7 +42,7 @@ a:hover { .jumbotron { border-radius: 0 !important; - padding: 25px 0 !important; + padding: 30px 0 !important; background: #fff !important; margin-bottom: 0 !important; } @@ -55,21 +57,41 @@ p { } .btn { - border-radius: 0 !important; + font-size: 15px; + border-radius: 5px !important; } .btn-primary { + background: #1f4292 !important; + border: none !important; } -.dropdown-menu { +.btn-outline-primary { + color: #1f4292 !important; + border-color: #1f4292 !important; +} + +.btn-outline-primary:hover { + color: #fff !important; + background-color: #1f4292 !important; + border-color: #1f4292 !important; +} + +.btn-warning { + background: #f26630 !important; border: none !important; - border-radius: 0 !important; - box-shadow: 0 2px 20px -10px #ddd !important; + color: white !important; +} + +.btn-warning:hover { + background: #e55e2b !important; + border: none !important; + color: white !important; } .modal-content { border: none !important; - border-radius: 0 !important; + border-radius: 5 !important; outline: none !important; box-shadow: none !important; } @@ -85,3 +107,26 @@ p { .modal-footer { border-top: 1px solid #f9f9f9 !important; } + +.mono { + font-family: 'Fira Code', monospace !important; +} + +.dropdown-menu { + border: 1px solid #eee !important; + border-radius: 5px !important; + margin-top: 5px; + box-shadow: 0 2px 20px -10px #ddd !important; +} + +.dropdown-item { + color: black !important; + font-size: 15px; + padding-top: 5px !important; + padding-bottom: 5px !important; + text-transform: capitalize !important; +} + +.dropdown-item:active { + background: #f1f1f1; +} diff --git a/src/modules/README.md b/src/modules/README.md deleted file mode 100644 index 7e74be4..0000000 --- a/src/modules/README.md +++ /dev/null @@ -1,165 +0,0 @@ -# Adding Modules - -Modules are a set of actions related to a feature the wallet should exhibit. For exmaple currently one of the modules the wallet uses is `accounts`. This module handles everything from listing to decrypting accounts. - -In order to add a module you need to have the following coded: - -- A list of `actions` for the assosiated module. -- A pure function (`reducer`) to return a state based on the dispatched action -- A `redux-thunk` handler to define the logic for the given action. - -## Example - -As an example I will try and add the listing of accounts feature into the `accounts` module. Firstly I would create a file name `accounts.ts` in `src/modules`. Then define the following `const`'s to represent the different stages in listing accounts. - -The format of an action is as follows: `const ACTION_STEP = '@evm-lite-wallet/module/ACTION/STEP'` - -```typescript -// When the `List` request is initialized -const LIST_REQUEST = '@evm-lite-wallet/accounts/LIST/REQUEST'; - -// When the `List` request is successful -const LIST_SUCCESS = '@evm-lite-wallet/accounts/LIST/SUCCESS'; - -// When the `List` request is throwing an error -const LIST_ERROR = '@evm-lite-wallet/accounts/LIST/ERROR'; -``` - -Now that we have defined the `actions`, to represent the intemediary steps in listing accounts, we need now need to define a reducer to handle what happens to the `state` when it receives one of these `actions`. - -Note: `reducers` are pure functions. - -```typescript -// The `AccountsState` is an interface defining the -// structure of the state of this module -export interface AccountsState { - all: BaseAccount[]; - unlocked?: Account; - error?: string; - loading: { - list: boolean; - }; -} - -// Initial state of the module -const initialState: AccountsState = { - all: [], - loading: { - list: false - } -}; - -// The reducer should a default export of the module -export default function reducer( - state: AccountsState = initialState, - action: BaseAction = {} as BaseAction -): AccountsState { - switch (action.type) { - // On request the `error` and `all` should be reset - // The loading for `list` should be set to true - case LIST_REQUEST: - return { - ...state, - all: [], - error: undefined, - loading: { - ...state.loading, - list: true - } - }; - // On success the `all` should be set to the payload - // In this case the payload is of type `BaseAccount[]` - // Notice the loading of `list` is also set to false - case LIST_SUCCESS: - return { - ...state, - all: action.payload, - loading: { - ...state.loading, - list: false - } - }; - // On error set the `error` to the payload - // Also set the `list` loading to false - case LIST_ERROR: - return { - ...state, - all: [], - error: action.payload, - loading: { - ...state.loading, - list: false - } - }; - default: - return state; - } -} -``` - -Now that a reducer has been set up, you will need to set up the `thunk` handlers to define the logic to `list` accounts. - -```typescript -// The return type of this function should be wrappedin `ThunkResult` -// In this case the function returns a promise which when resolved -// will contain an array of `BaseAccount` -export function list(): ThunkResult> { - return async (dispatch, getState) => { - const state = getState(); - - let accounts: BaseAccount[] = []; - - // Dispatch that the `list` request has started - dispatch({ - type: LIST_REQUEST - }); - - try { - let connection: EVMLC | undefined; - const config = state.config.data; - - if (!config.storage) { - throw Error('Configuration data not loaded.'); - } - - connection = new EVMLC( - config.connection.host, - config.connection.port, - { - from: config.defaults.from, - gas: config.defaults.gas, - gasPrice: config.defaults.gasPrice - } - ); - - await connection.testConnection().catch(() => { - connection = undefined; - }); - - const keystore = new Keystore(config.storage.keystore); - - accounts = await keystore.list(connection).catch(error => { - dispatch({ - type: LIST_ERROR, - payload: error.toString() - }); - - return []; - }); - - // Dispatch to confirm the results of a successful `list` - dispatch({ - type: LIST_SUCCESS, - payload: accounts - }); - } catch (error) { - dispatch({ - type: LIST_ERROR, - payload: error.toString() - }); - } - - return accounts; - }; -} -``` diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index a1d6e44..448062c 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -1,51 +1,42 @@ -import * as path from 'path'; +import { Monet } from 'evm-lite-core'; +import { Currency } from 'evm-lite-utils'; -import { IBaseAccount, IReceipt } from 'evm-lite-client'; -import { Account, Monet } from 'evm-lite-core'; import { toast } from 'react-toastify'; -import Keystore, { IMonikerBaseAccount, IV3Keyfile } from 'evm-lite-keystore'; -import utils, { Currency } from 'evm-lite-utils'; - import { BaseAction, errorHandler, ThunkResult } from '.'; -import { MonetDataDir, MonikerAccount, MonikerEVMAccount } from '../monet'; +import { + MonetDataDir, + MonetInfo, + MonikerAccount, + MonikerEVMAccount +} from '../monet'; // Lists all accounts in keystore -const LIST_REQUEST = '@monet/accounts/LIST/REQUEST'; +const LIST_INIT = '@monet/accounts/LIST/INIT'; const LIST_SUCCESS = '@monet/accounts/LIST/SUCCESS'; const LIST_ERROR = '@monet/accounts/LIST/ERROR'; -// Creates account in keystore -const CREATE_REQUEST = '@monet/accounts/CREATE/REQUEST'; -const CREATE_SUCCESS = '@monet/accounts/CREATE/SUCCESS'; -const CREATE_ERROR = '@monet/accounts/CREATE/ERROR'; - -// Get account balance and nonce from node -const GET_REQUEST = '@monet/accounts/GET/REQUEST'; -const GET_SUCCESS = '@monet/accounts/GET/SUCCESS'; -const GET_ERROR = '@monet/accounts/GET/ERROR'; - -// For decrypting an account -const UNLOCK_REQUEST = '@monet/accounts/UNLOCK/REQUEST'; -const UNLOCK_SUCCESS = '@monet/accounts/UNLOCK/SUCCESS'; -const UNLOCK_ERROR = '@monet/accounts/UNLOCK/ERROR'; -const UNLOCK_RESET = '@monet/accounts/UNLOCK/RESET'; - // For transferring tokens/coins from an account -const TRANSFER_REQUEST = '@monet/accounts/TRANSFER/REQUEST'; +const TRANSFER_INIT = '@monet/accounts/TRANSFER/INIT'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; // Select an account as primary -// const SELECT = '@monet/accounts/SELECT'; +const SELECT_ACCOUNT_SUCCESS = '@monet/accounts/SELECT/SUCCESS'; +const SELECT_ACCOUNT_ERROR = '@monet/accounts/SELECT/ERROR'; + +// For transferring tokens/coins from an account +const GET_SELECTED_INIT = '@monet/accounts/GET/SELECTED/INIT'; +const GET_SELECTED_SUCCESS = '@monet/accounts/GET/SELECTED/SUCCESS'; +const GET_SELECTED_ERROR = '@monet/accounts/GET/SELECTED/ERROR'; // Accounts state structure -export interface AccountsState { +export type AccountsState = { // Entire list of accounts readonly all: MonikerEVMAccount[]; // Currently unlocked account - readonly unlocked?: MonikerAccount; + readonly selected?: MonikerAccount; // A single error field to be used by this module for any action readonly error?: string; @@ -58,7 +49,7 @@ export interface AccountsState { create: boolean; unlock: boolean; }; -} +}; // Initial State of the accounts module const initialState: AccountsState = { @@ -78,104 +69,39 @@ export default function reducer( action: BaseAction = {} as BaseAction ): Readonly { switch (action.type) { - // List accounts - case LIST_REQUEST: - return { - ...state, - all: [], - error: undefined, - loading: { - ...state.loading, - list: true - } - }; - case LIST_SUCCESS: - return { - ...state, - all: action.payload, - loading: { - ...state.loading, - list: false - } - }; - case LIST_ERROR: + case SELECT_ACCOUNT_SUCCESS: return { ...state, - all: [], - error: action.payload, - loading: { - ...state.loading, - list: false - } + selected: action.payload }; - // Create account - case CREATE_REQUEST: - return { - ...state, - error: undefined, - loading: { - ...state.loading, - create: true - } - }; - case CREATE_SUCCESS: - return { - ...state, - error: undefined, - all: [...state.all, action.payload], - loading: { - ...state.loading, - create: false - } - }; - case CREATE_ERROR: + case SELECT_ACCOUNT_ERROR: return { ...state, - error: action.payload, - loading: { - ...state.loading, - create: false - } + error: action.payload }; - // Get account - case GET_REQUEST: + case GET_SELECTED_INIT: return { ...state, - error: undefined, + selected: undefined, loading: { ...state.loading, get: true } }; - case GET_SUCCESS: - const accounts = state.all.map(acc => { - const acc2 = { - ...acc - }; - - if ( - utils.cleanAddress(acc.address) === - utils.cleanAddress(action.payload.address) - ) { - acc2.balance = action.payload.balance; - acc2.nonce = action.payload.nonce; - } - - return acc2; - }); + case GET_SELECTED_SUCCESS: return { ...state, - error: undefined, - all: accounts, + selected: action.payload, loading: { ...state.loading, get: false } }; - case GET_ERROR: + + case GET_SELECTED_ERROR: return { ...state, error: action.payload, @@ -185,48 +111,39 @@ export default function reducer( } }; - // Unlock account - case UNLOCK_REQUEST: + // List accounts + case LIST_INIT: return { ...state, + all: [], error: undefined, loading: { ...state.loading, - unlock: true + list: true } }; - case UNLOCK_SUCCESS: + case LIST_SUCCESS: return { ...state, - unlocked: action.payload, - error: undefined, + all: action.payload, loading: { ...state.loading, - unlock: false + list: false } }; - case UNLOCK_ERROR: + case LIST_ERROR: return { ...state, + all: [], error: action.payload, loading: { ...state.loading, - unlock: false - } - }; - case UNLOCK_RESET: - return { - ...state, - error: undefined, - unlocked: undefined, - loading: { - ...state.loading, - unlock: false + list: false } }; // Transfer - case TRANSFER_REQUEST: + case TRANSFER_INIT: return { ...state, loading: { @@ -237,7 +154,6 @@ export default function reducer( case TRANSFER_SUCCESS: return { ...state, - loading: { ...state.loading, transfer: false @@ -246,202 +162,71 @@ export default function reducer( case TRANSFER_ERROR: return { ...state, + error: action.payload, loading: { ...state.loading, transfer: false - }, - error: action.payload + } }; + default: return state; } } -/** - * Should list all acounts from the keystore. It will update the redux state - * and set the `all` attribute to the desired result. - */ -export function list(): ThunkResult> { +export function getSelectedAccount(): ThunkResult> { return async (dispatch, getState) => { - let accounts: MonikerEVMAccount[] = []; - - const { config } = getState(); - const error = errorHandler.bind(null, dispatch, LIST_ERROR); - - dispatch({ - type: LIST_REQUEST - }); - - let node: Monet | undefined = new Monet( - config.data.connection.host, - config.data.connection.port - ); - - await node.getInfo().catch(() => { - node = undefined; - }); - - const datadir = new MonetDataDir(config.directory); - const mk = await datadir - .listKeyfiles() - .catch(() => error('Could not load accounts')); - - accounts = Object.keys(mk).map(moniker => ({ - address: mk[moniker].address, - balance: new Currency(0), - nonce: 0, - bytecode: '', - moniker - })); - - if (node) { - accounts = await Promise.all( - accounts.map(async account => { - const acc = await node! - .getAccount(account.address) - .catch(console.log); - - return { - ...account, - ...acc, - moniker: account.moniker - }; - }) - ); - } - - dispatch({ - type: LIST_SUCCESS, - payload: accounts - }); - - return accounts; - }; -} - -export type IAccountsCreate = ( - moniker: string, - password: string -) => Promise; - -/** - * Creates an ethereum account and appends it into the list of all accounts. - * - * @param moniker - The moniker for the created account - * @param password - The string to used to encrypt the newly created account - */ -export function create( - moniker: string, - password: string -): ThunkResult> { - return async (dispatch, getState) => { - const { config } = getState(); - - const account: MonikerEVMAccount = { - address: '', - balance: new Currency(0), - nonce: 0, - bytecode: '', - moniker - }; + const state = getState(); + const selected = state.accounts.selected!; dispatch({ - type: CREATE_REQUEST + type: GET_SELECTED_INIT }); try { - const keystore = new Keystore( - path.join(config.directory, 'keystore') + const n = new Monet( + state.config.data.connection.host, + state.config.data.connection.port ); - const acc: IV3Keyfile = await keystore.create(moniker, password); + const d = await n.getAccount(selected.address); - account.address = acc.address; + selected.balance = new Currency(d.balance); + selected.nonce = d.nonce; dispatch({ - type: CREATE_SUCCESS, - payload: account + type: GET_SELECTED_SUCCESS, + payload: selected }); + } catch (e) { + selected.balance = new Currency(0); + selected.nonce = 0; - toast.success( - `Account created: 0x${account.address.slice(0, 15)}...` - ); - } catch (error) { dispatch({ - type: CREATE_ERROR, - payload: error.toString() + type: GET_SELECTED_SUCCESS, + payload: selected }); - } - - return account; - }; -} -/** - * Should fetch `BaseAccount` type of the address prepopulating the object with - * the address's balance and nonce. - * - * @param address - The address to fetch from the node - */ -export function get(address: string): ThunkResult> { - return async (dispatch, getState) => { - const { config } = getState(); - let account = {} as IBaseAccount; - - dispatch({ - type: GET_REQUEST - }); - - try { - if (!!Object.keys(config).length) { - const node = new Monet( - config.data.connection.host, - config.data.connection.port - ); - - account = await node.getAccount(address); - - dispatch({ - type: GET_SUCCESS, - payload: account - }); - } else { - throw Error('Configuration could not loaded.'); - } - } catch (error) { dispatch({ - type: GET_ERROR, - payload: error.toString() + type: GET_SELECTED_ERROR, + payload: e.toString() }); } - - return account; }; } -/** - * Should decrypt an account and set the result into the redux state. The account - * will be removed after the session is closed or manually reset. - * - * @param moniker - The moniker of the account to unlock - * @param password - The associated password for the address in question - */ -export function unlock( +export function selectAccount( moniker: string, password: string -): ThunkResult> { +): ThunkResult> { return async (dispatch, getState) => { const { config } = getState(); - dispatch({ - type: UNLOCK_REQUEST - }); - - const keystore = new Keystore(path.join(config.directory, 'keystore')); - const keyfile = await keystore.get(moniker); + const datadir = new MonetDataDir(config.directory); + const keyfile = await datadir.getKeyfile(moniker); try { - const account = Keystore.decrypt( + const account = MonetDataDir.decrypt( keyfile, password.trim().replace(/(\r\n|\n|\r)/gm, '') ); @@ -454,95 +239,99 @@ export function unlock( monikerAccount.moniker = moniker; dispatch({ - type: UNLOCK_SUCCESS, + type: SELECT_ACCOUNT_SUCCESS, payload: monikerAccount }); - return account; - } catch (error) { + await dispatch(getSelectedAccount()); + } catch (e) { dispatch({ - type: UNLOCK_ERROR, - payload: error.toString() + type: SELECT_ACCOUNT_ERROR, + payload: e.toString() }); - toast.error('Invalid password.'); - - return undefined; + toast.error('Invalid password!'); } }; } -/** - * Reset function for unlocking an account. - */ -export function resetUnlock(): ThunkResult { - return dispatch => { +export function listAccounts(): ThunkResult> { + return async (dispatch, getState) => { + let accounts: MonikerEVMAccount[] = []; + + const { config } = getState(); + const error = errorHandler.bind(null, dispatch, LIST_ERROR); + dispatch({ - type: UNLOCK_RESET + type: LIST_INIT + }); + + const datadir = new MonetDataDir(config.directory); + const mk = await datadir + .listKeyfiles() + .catch(() => error('Could not load accounts')); + + accounts = Object.keys(mk).map(moniker => ({ + address: mk[moniker].address, + balance: new Currency(0), + nonce: 0, + bytecode: '', + moniker + })); + + dispatch({ + type: LIST_SUCCESS, + payload: accounts }); }; } -/** - * Should transfer the state amount of tokens/coins to the desired address. - * - * @param from - The `from` address of the transaction - * @param to - The `to` address of the transaction - * @param value - The amount of coin(s)/token(s) to send - * @param gas - The maximum `gas` to use for this transaction - * @param gasPrice - The price per `gas` to pay for the transaction - */ export function transfer( to: string, - value: number, - gasPrice: number -): ThunkResult> { + value: string +): ThunkResult> { return async (dispatch, getState) => { const state = getState(); + const config = state.config.data; const error = errorHandler.bind(null, dispatch, TRANSFER_ERROR); dispatch({ - type: TRANSFER_REQUEST + type: TRANSFER_INIT }); - if (!state.accounts.unlocked) { - throw Error('No account unlocked to sign the transaction'); - } - if (!!Object.keys(config).length) { const node = new Monet( config.connection.host, config.connection.port ); - const info = await node.getInfo().catch(() => { + const info = await node.getInfo().catch(() => { error('No connection detected'); return; }); - if (!info) { - return {} as IReceipt; + if (info) { + try { + const receipt = await node.transfer( + state.accounts.selected!, + to, + new Currency(value), + 21000, + Number(info.min_gas_price) + ); + + dispatch({ + type: TRANSFER_SUCCESS, + payload: receipt + }); + + await dispatch(getSelectedAccount()); + toast.success('Transfer submitted'); + } catch (e) { + error(e.toString()); + } } - - const receipt = await node.transfer( - state.accounts.unlocked, - to, - new Currency(value + 'T'), - 21000, - gasPrice - ); - - dispatch({ - type: TRANSFER_SUCCESS, - payload: receipt - }); - - dispatch(get(state.accounts.unlocked.address)); - - toast.success('Transfer submitted'); - - return receipt; } else { throw Error('Configuration could not loaded.'); } diff --git a/src/modules/configuration.ts b/src/modules/config.ts similarity index 95% rename from src/modules/configuration.ts rename to src/modules/config.ts index 87d9961..fc83f78 100644 --- a/src/modules/configuration.ts +++ b/src/modules/config.ts @@ -5,7 +5,8 @@ import { toast } from 'react-toastify'; import { BaseAction, ThunkResult } from '.'; import { MonetDataDir } from '../monet'; -import { list } from './accounts'; + +import { getSelectedAccount } from './accounts'; // Set configuration data directory const SET_DIRECTORY_SUCCESS = '@monet/configuration/DATADIRECTORY/SUCCESS'; @@ -178,15 +179,13 @@ export function setDirectory(path: string): ThunkResult> { toast.success(`Data directory loaded at ${path}`); - dispatch(load()).then(() => dispatch(list())); - return path; }; } -export function initialize(): ThunkResult> { +export function initConfig(): ThunkResult> { return async dispatch => { - dispatch(load()).then(() => dispatch(list())); + dispatch(load()); }; } @@ -210,8 +209,9 @@ export function save( payload: newConfig }); - toast.success(`Configuration saved.`); + await dispatch(getSelectedAccount()); + toast.success(`Configuration saved.`); return newConfig; } catch (error) { dispatch({ diff --git a/src/modules/index.ts b/src/modules/index.ts index 6f047bc..caeea47 100644 --- a/src/modules/index.ts +++ b/src/modules/index.ts @@ -6,8 +6,7 @@ import { combineReducers } from 'redux'; import { Store } from '../store'; import accounts from './accounts'; -import config from './configuration'; -import poa from './poa'; +import config from './config'; export const errorHandler = (dispatch: any, action: string, error: string) => { dispatch({ @@ -26,6 +25,5 @@ export interface BaseAction { export default combineReducers({ config, - accounts, - poa + accounts }); diff --git a/src/modules/poa.ts b/src/modules/poa.ts deleted file mode 100644 index ca07d2d..0000000 --- a/src/modules/poa.ts +++ /dev/null @@ -1,383 +0,0 @@ -import Node, { - Contract, - IAbstractSchema, - ITransaction, - Transaction -} from 'evm-lite-core'; - -import Utils from 'evm-lite-utils'; - -import { Babble } from 'evm-lite-consensus'; -import { toast } from 'react-toastify'; - -import { BaseAction, ThunkResult } from '.'; - -interface Schema extends IAbstractSchema { - checkAuthorised(tx: ITransaction, address: string): Transaction; - submitNominee( - tx: ITransaction, - address: string, - moniker: string - ): Transaction; - castNomineeVote( - tx: ITransaction, - address: string, - verdict: boolean - ): Transaction; - getCurrentNomineeVotes(tx: ITransaction, address: string): Transaction; - getWhiteListCount(tx: ITransaction): Transaction; - getWhiteListAddressFromIdx(tx: ITransaction, id: number): Transaction; - getMoniker(tx: ITransaction, address: string): Transaction; - getNomineeCount(tx: ITransaction): Transaction; - getNomineeAddressFromIdx(tx: ITransaction, id: number): Transaction; - isNominee(tx: ITransaction, address: string): Transaction; -} - -// whitelist -const WHITELIST_REQUEST = '@monet/poa/WHITELIST/REQUEST'; -const WHITELIST_SUCCESS = '@monet/poa/WHITELIST/SUCCESS'; -const WHITELIST_ERROR = '@monet/poa/WHITELIST/ERROR'; - -// nominee list -const NOMINEELIST_REQUEST = '@monet/poa/NOMINEELIST/REQUEST'; -const NOMINEELIST_SUCCESS = '@monet/poa/NOMINEELIST/SUCCESS'; -const NOMINEELIST_ERROR = '@monet/poa/NOMINEELIST/ERROR'; - -// nominate -// const NOMINATE_REQUEST = '@monet/poa/NOMINATE/REQUEST'; -// const NOMINATE_SUCCESS = '@monet/poa/NOMINATE/SUCCESS'; -// const NOMINATE_ERROR = '@monet/poa/NOMINATE/ERROR'; - -interface WhitelistEntry { - moniker: string; - address: string; -} - -interface Nominee extends WhitelistEntry { - upVotes: number; - downVotes: number; -} - -const hexToString = (hex: string) => { - let data = ''; - - if (!hex) { - return ''; - } - - for (let i = 0; i < hex.length; i += 2) { - data += String.fromCharCode(parseInt(hex.substr(i, 2), 16)); - } - - return data.replace(/\u0000/g, '').trim(); -}; - -const makeMonet = (host: string, port: number) => { - const b = new Babble(host, port); - - return new Node(host, port, b); -}; - -// Proof of Authority State -export interface POAState { - // Entire whitelist - readonly whitelist: WhitelistEntry[]; - - // All nominee for the node - readonly nominees: Nominee[]; - - // A single error field to be used by this module for any action - readonly error?: string; - - // Loading states for async actions - loading: { - whitelist: boolean; - nomineelist: boolean; - }; -} - -// Initial state of Proof of Authority -const initialState: POAState = { - whitelist: [], - nominees: [], - loading: { - whitelist: false, - nomineelist: false - } -}; - -export default function reducer( - state: POAState = initialState, - action: BaseAction = {} as BaseAction -): Readonly { - switch (action.type) { - // whitelist action - case WHITELIST_REQUEST: - return { - ...state, - error: undefined, - whitelist: [], - loading: { - ...state.loading, - whitelist: true - } - }; - case WHITELIST_SUCCESS: - return { - ...state, - whitelist: action.payload, - loading: { - ...state.loading, - whitelist: false - } - }; - case WHITELIST_ERROR: - return { - ...state, - whitelist: [], - error: action.payload, - loading: { - ...state.loading, - whitelist: false - } - }; - - // nomineelist aciton - case NOMINEELIST_REQUEST: - return { - ...state, - error: undefined, - nominees: [], - loading: { - ...state.loading, - nomineelist: true - } - }; - case NOMINEELIST_SUCCESS: - return { - ...state, - nominees: action.payload, - loading: { - ...state.loading, - nomineelist: false - } - }; - case NOMINEELIST_ERROR: - return { - ...state, - nominees: [], - error: action.payload, - loading: { - ...state.loading, - nomineelist: false - } - }; - - default: - return state; - } -} - -export function reload(): ThunkResult> { - return async dispatch => { - dispatch(whitelist()).then(() => - dispatch(nomineelist()).then(() => - toast.info('Proof of Authority data reloaded.') - ) - ); - }; -} - -export function whitelist(): ThunkResult> { - return async (dispatch, getState) => { - dispatch({ - type: WHITELIST_REQUEST - }); - - try { - const { config } = getState(); - const node = makeMonet( - config.data.connection.host, - config.data.connection.port - ); - - let poa: { address: string; abi: any[] }; - - const r = await node.getPOA(); - poa = { - ...r, - // @ts-ignore - abi: JSON.parse(r.abi as string) - }; - - const contract = Contract.load(poa.abi, poa.address); - const transaction = contract.methods.getWhiteListCount({ - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }); - - const whitelistCount = (await node.callTx( - transaction - )).toNumber(0); - - const whitelist: WhitelistEntry[] = []; - - for (const i of Array.from(Array(whitelistCount).keys())) { - const whitelistEntry: WhitelistEntry = { - address: '', - moniker: '' - }; - - const tx = contract.methods.getWhiteListAddressFromIdx( - { - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }, - i - ); - - whitelistEntry.address = await node.callTx(tx); - - const monikerTx = contract.methods.getMoniker( - { - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }, - whitelistEntry.address - ); - - const hex: string = await node.callTx(monikerTx); - - whitelistEntry.moniker = hexToString(hex); - - whitelist.push(whitelistEntry); - } - - dispatch({ - type: WHITELIST_SUCCESS, - payload: whitelist - }); - } catch (error) { - dispatch({ - type: WHITELIST_ERROR, - payload: error.toString() - }); - } - }; -} - -export function nomineelist(): ThunkResult> { - return async (dispatch, getState) => { - dispatch({ - type: NOMINEELIST_REQUEST - }); - - try { - const { config } = getState(); - const node = makeMonet( - config.data.connection.host, - config.data.connection.port - ); - - let poa: { address: string; abi: any[] }; - - const r = await node.getPOA(); - poa = { - ...r, - // @ts-ignore - abi: JSON.parse(r.abi as string) - }; - - const contract = Contract.load(poa.abi, poa.address); - const transaction = contract.methods.getNomineeCount({ - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }); - - const nomineeCount = (await node.callTx(transaction)).toNumber( - 0 - ); - - const nominees: Nominee[] = []; - - for (const i of Array.from(Array(nomineeCount).keys())) { - const nominee: Nominee = { - address: '', - moniker: '', - upVotes: 0, - downVotes: 0 - }; - - const tx = contract.methods.getNomineeAddressFromIdx( - { - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }, - i - ); - - nominee.address = await node.callTx(tx); - - const monikerTx = contract.methods.getMoniker( - { - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }, - nominee.address - ); - - const hex: string = await node.callTx(monikerTx); - - nominee.moniker = hexToString(hex); - - const votesTransaction = contract.methods.getCurrentNomineeVotes( - { - from: config.data.defaults.from, - gas: config.data.defaults.gas, - gasPrice: config.data.defaults.gasPrice - }, - Utils.cleanAddress(nominee.address) - ); - - const votes: [string, string] = await node.callTx< - [string, string] - >(votesTransaction); - - nominee.upVotes = parseInt(votes[0], 10); - nominee.downVotes = parseInt(votes[1], 10); - - nominees.push(nominee); - } - - dispatch({ - type: NOMINEELIST_SUCCESS, - payload: nominees - }); - } catch (error) { - dispatch({ - type: NOMINEELIST_ERROR, - payload: error.toString() - }); - } - }; -} - -export function nominate( - from: string, - verdict: boolean -): ThunkResult> { - return async dispatch => { - dispatch({ - type: NOMINEELIST_REQUEST - }); - - try { - // pass - } catch (error) { - dispatch({ - type: NOMINEELIST_ERROR, - payload: error.toString() - }); - } - }; -} diff --git a/src/monet.ts b/src/monet.ts index 5dd4cd7..cdc3b5f 100644 --- a/src/monet.ts +++ b/src/monet.ts @@ -21,6 +21,7 @@ export type MonetInfo = IBaseInfo & { sync_rate: string; transaction_pool: string; undetermined_events: string; + min_gas_price: string; }; export type MonikerEVMAccount = IEVMAccount & { diff --git a/src/selectors/index.ts b/src/selectors/index.ts new file mode 100644 index 0000000..32f79c2 --- /dev/null +++ b/src/selectors/index.ts @@ -0,0 +1,13 @@ +import { Store } from '../store'; + +export const selectedAccount = (store: Store) => store.accounts.selected; +export const selectAccounts = (store: Store) => store.accounts.all; +export const selectAccountReducer = (store: Store) => store.accounts; + +export const selectTransferLoading = (store: Store) => + store.accounts.loading.transfer; + +// config selectors +export const selectConfig = (store: Store) => store.config.data; +export const selectConfigSaveLoading = (store: Store) => + store.config.loading.save; diff --git a/src/server.ts b/src/server.ts new file mode 100644 index 0000000..f4b061d --- /dev/null +++ b/src/server.ts @@ -0,0 +1,129 @@ +// tslint:disable:no-console +// In production, we register a service worker to serve assets from local cache. + +// This lets the app load faster on subsequent visits in production, and gives +// it offline capabilities. However, it also means that developers (and users) +// will only see deployed updates on the 'N+1' visit to a page, since previously +// cached resources are updated in the background. + +// To learn more about the benefits of this model, read https://goo.gl/KwvDNy. +// This link also includes instructions on opting out of this behavior. + +const isLocalhost = Boolean( + window.location.hostname === 'localhost' || + // [::1] is the IPv6 localhost address. + window.location.hostname === '[::1]' || + // 127.0.0.1/8 is considered localhost for IPv4. + window.location.hostname.match( + /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ + ) +); + +export default function register() { + if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { + // The URL constructor is available in all browsers that support SW. + const publicUrl = new URL( + process.env.PUBLIC_URL!, + window.location.toString() + ); + if (publicUrl.origin !== window.location.origin) { + // Our service worker won't work if PUBLIC_URL is on a different origin + // from what our page is served on. This might happen if a CDN is used to + // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374 + return; + } + + window.addEventListener('load', () => { + const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; + + if (isLocalhost) { + // This is running on localhost. Lets check if a service worker still exists or not. + checkValidServiceWorker(swUrl); + + // Add some additional logging to localhost, pointing developers to the + // service worker/PWA documentation. + navigator.serviceWorker.ready.then(() => { + console.log( + 'This web app is being served cache-first by a service ' + + 'worker. To learn more, visit https://goo.gl/SC7cgQ' + ); + }); + } else { + // Is not local host. Just register service worker + registerValidSW(swUrl); + } + }); + } +} + +function registerValidSW(swUrl: string) { + navigator.serviceWorker + .register(swUrl) + .then(registration => { + registration.onupdatefound = () => { + const installingWorker = registration.installing; + if (installingWorker) { + installingWorker.onstatechange = () => { + if (installingWorker.state === 'installed') { + if (navigator.serviceWorker.controller) { + // At this point, the old content will have been purged and + // the fresh content will have been added to the cache. + // It's the perfect time to display a 'New content is + // available; please refresh.' message in your web app. + console.log( + 'New content is available; please refresh.' + ); + } else { + // At this point, everything has been precached. + // It's the perfect time to display a + // 'Content is cached for offline use.' message. + console.log( + 'Content is cached for offline use.' + ); + } + } + }; + } + }; + }) + .catch(error => { + console.error('Error during service worker registration:', error); + }); +} + +function checkValidServiceWorker(swUrl: string) { + // Check if the service worker can be found. If it can't reload the page. + fetch(swUrl) + .then(response => { + // Ensure service worker exists, and that we really are getting a JS file. + if ( + response.status === 404 || + response.headers.get('content-type')!.indexOf('javascript') === + -1 + ) { + // No service worker found. Probably a different app. Reload the page. + navigator.serviceWorker.ready.then(registration => { + registration.unregister().then(() => { + window.location.reload(); + }); + }); + } else { + // Service worker found. Proceed as normal. + registerValidSW(swUrl); + } + }) + .catch(() => { + console.log( + 'No internet connection found. App is running in offline mode.' + ); + }); +} + +export function unregister() { + if ('serviceWorker' in navigator) { + navigator.serviceWorker.ready.then(registration => { + // noinspection JSIgnoredPromiseFromCall + registration.unregister(); + }); + } +} diff --git a/src/store.ts b/src/store.ts index 3592302..6b45c24 100644 --- a/src/store.ts +++ b/src/store.ts @@ -8,13 +8,11 @@ import { PersistConfig, persistReducer, persistStore } from 'redux-persist'; import rootReducer from './modules'; import { AccountsState } from './modules/accounts'; -import { ConfigurationState } from './modules/configuration'; -import { POAState } from './modules/poa'; +import { ConfigurationState } from './modules/config'; export interface Store { accounts: AccountsState; config: ConfigurationState; - poa: POAState; } const persistConfig: PersistConfig = { @@ -22,7 +20,7 @@ const persistConfig: PersistConfig = { storage: dynamicStorage, whitelist: ['config'] }; -const persistedReducer = persistReducer(persistConfig, rootReducer); +const persistedReducer = persistReducer(persistConfig, rootReducer); const middleware = [thunk, logger]; export default () => { From 0ab1783a2b787d99d9fd47e9c7662c198af43a59 Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 21 Oct 2019 16:30:52 +0100 Subject: [PATCH 09/30] update: Remove preview assets and README --- README.md | 6 ------ assets/accounts.png | Bin 245809 -> 0 bytes assets/config.png | Bin 220191 -> 0 bytes 3 files changed, 6 deletions(-) delete mode 100644 assets/accounts.png delete mode 100644 assets/config.png diff --git a/README.md b/README.md index 6107c40..66fcb7d 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,6 @@ A user interface to interact with Monet. -## Preview - -Monet Logo - -Monet Logo - ## Development To build and run Monet Wallet, download / clone this repository, then simply follow the instructions below. diff --git a/assets/accounts.png b/assets/accounts.png deleted file mode 100644 index 6cc669e22013d3e67bc6c224f5bffb8451f4d7df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 245809 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%0D6_zYiZdRp0XWvTW7 z3g3L8L&quIbi2RA;tzT>)}}2L_(pzz?Ks}uap2An-<0IFGmva<36(laOM!vd`Ch)V zY?9PM`Gost8QsilNnK9E%DlM>?l&*qmHPD0j7whu$1%^pa=4@EHdzF2)u&sduxW8JP=mCrC>F1NYM)@H>dhu3X+k$E29yVQEUKE#?$*d{rb zXG%_vCPuh>iOyxjR=F#qDmybHCel0dOf$6G@eU|H&dr^t{wU%)hx>GrHDrDW*^@C{ z#(q5kV;@%I0sd)->f!heAXw`h7%F-+sTD(og51{2R?vSpHOVyF3))TyI2s9b*;D(L zdorE9PnHat0x2uJSkj{raGzZ_j)n~>xqk5D%jD*zm@l0&bj^9EG||=D`W|-^mm@hL zGD^%U8t=@E8_%re&8@8$>&mUm%TdyI$sgYVb-hbZyT-haMrOwNovEqxWgo9kkP6~k zY3e;;VTs5WO(C2%CFIhTx<_}BNM#h? z@H1vcI#n5~zSFNrRA}knIQEQ1(sou=ZdcBAoN?F1sOcu_)i=o%8+Bx2@Upz9RDm3qP0}7B&v#l)IJH6|B^geG zIQDmnelfeXTr{zevV&Em+_13H@(4{#CTH2cy1Vb_u{b32l2J9*-6GcdzOZ!^1)ILv+= zGrfg5zHa0X3#3Njj-5UuI_GoG)L*Kt8H425%q+tGy(M>ZNUyf~r0V6==;WCX*1Pm1 z;;p|f{)yASPrv%Cy~wlvNAJnss2(aOXx?noSK3xv+t$IBrj(wpC0{49>lpt(3tz$3 z!f5tB{j$ydhhf*Ru;`F%^v9#imI`!8&qPa85YBhK7-@eIC>%KJ84lJz`8!MPg>?%Z zlBf&knL7hD^}g}x_Y3avXcT5Xk$uH9a%=DD7ygqKQc>BfrLCRj*|G z1J0cZQtOe(SaFdsB<`jUeV;ksi6i2zXX=Eqy!oEx-QOu5r9*Niu^A!zP4~(2`x^vJ zIBW#ujb_7Uc+=Yk>$3WvNmNF-%$vIpv!?9;2$G1)#N)pvbj~dLn5$bsg+l5L_R@cx zBpyqM8>!6xJYmg^wB}q{z4Exaduyi?+kTtGV>tzBK2LvmcrFJJwCF&f0`$k~QysKD ziJYL`AJ6M8CGzIoFpm4dxAU?svF1|_vEt(5vZ467Ex1w^1Euh}X_9*LS$HdGQ=rYT zY5x0tl5Vh4c()5R#tR5?3Y4J$KPVADH{bB5U!gHU#5J+Utt*9CZ{Lzp)rEk$TZoz+ z^zsHO*1EHA>&o)$B7pxcMox^e>TYjrRGe>VCbaJm?)g%x?xo7JrwnLv1%%pQcS~f$ z4pvIq;&$Sks5voXp1a=mxKLF!G;HX_XZ-;@Y?IrSTGTn=>`TpqvWo&&H21)CbkE`= z7prf{9TP>%u9S9(TfM`dW}pP(hbU%z2D`lC-*EVhnbHlZ5HUHVaRqGD8#ardWe=P% zmWxvPXQ!92@9>GY53jo#crLAU#B`oYSFc=1NqEYv+q-<<%J_szQZC_>OOOM|1@-dz}X z$?U3;1EPh2HfG@fOsw3D@muY0g4|~m@A`Bm4e%DdMB^qhYwHD{_0g@WfVQw*7XPE; z=98UI9Qt>_YHP>NwJvMg$n!Gd|B-p#)!0er+IbZ;cBCc-=0#8 z`O*!2vCVH0-&E_1!Jg;kw2}r7A4$ug7@_M5=TX5^iEuofmt?Bf<>^>{4?sjn-FF`^ z>g{>MGgt~|Pbkh=J{0ZYw)~zMk=k8AUtsTfkwJE*ui7c3Ps2=n*jm8u<2Z&!6GO#T>~@BkA$T%2Uv&#plupg!y5?Q;34XRi*;f1Ef1 zCDL}6AGsm!0r0hKl4&MAKEQde{0KObd#+^`p8<{2U@dayaR_l?KM1JzUsv9WL#u=F zc0LdoDJ4`ghVCst{Uhn%U5J1GO7BL*yXv-&{h#^%`aktz*xe2GSi$q3;R2ts$w{AA zCl9IE!P=p-xrE;VURA-Jl0V;66!BCI#y{A(zMtzbk}oHETCW7`doVm8CF0%!%Hu9W zHK}|kI zd^xoCN8q@4CCY6It&Zg3+ya=Ys;vm`s<8whXGIvGU*F@mGxjx6x*>Y7A^r91mg`Cf zLSyt}b>XYPj)imAvFA^#we;y~q$S5#$IYKB_;(BI508)AHdQ$cF$bmSLSK`U;atO~ z2Wwt2m|=dX8*FnA`>(D&2N5KrM*rtk7u3%YU;7WZl75ETl+sCZRA}N05$mYn|JZ2L z#IuRv!rxeC9OeGcT?(jC&j`<`fQWhppKeA?v%{Trrb^o?k+(3r9jcV6I3enK}`Lm2b8sZ{8kq_81V{=*U$!@ zWp~ze&!k%$lmS>lC!Re@$TF5ef;Ru!`{WI3)40oaZxHumbDCAUSSBQVYra_nasNXA z<=c)@q%#O$ij5H@*?1N~azaqI%`oe_uXTI+!IWkMO&rf3Vhh%4HW9B$@pCMNnzh{H zRp559?U19F_$vGQgOZTLkjg0h`ECF?Wx0*W7>l@&)F*2>2iXWJxJlz7jv9z>*6xB^aDxMnrWf{4*VXxwKC~`WriEo znOQQq_G4rg_$T#UfEtTXm7zu4Th%Q=O`GIO5MeHgR!r8X6kkiUl=?g(SGiuIkNqsS);>d!vPI1; z#6uPLZ3H5q&spytnbZa-j%G>VnPe;FLD6j|kTzL*HKWs@^o3`+AXPXa?B zEABI)y|JA=v{ncnk$JDLhDzJg@$S%M0#c1W270^V9fLB}703llQ-;!$5VltYe&MD1@#)1 zji>13+$34z?%j&-W+YRg^ncj1iT#X2I?w?qsV!uji)(lOjfsdS6S2KtK9#t1T|64j zNbM{kx$^;a$2}>-myf{=X*T;1byIvjz4e~7@m7!yJ9m^(zgg&LY3VHZI$#S+s+xkVTrO--s@ngWf)tJv?Qg4>^?9)OdM z`>B3ctUBHhSKbE9o3Gm?sk7?Lsp{`506E&$nP+P_E{;Uc%uCe;Y5AE1nn#u0$?EF- z{24r2>E%FRKdCvT@)1=3u z9~~G8GS!SyH7G=UnKnR_x63h}>jNuZh_)j;5-pByC_-rLNJ}`>RossKA`N7q7=Jpt z+=wBVXLBI@@`I%aMw#*J<)iKUB}yeH(-0P8lopZ8(U8~*=KA&X?2Z`UI@BA$y98;p ztB{^fDD>bZ^YQ!z6{Wt7OX6h9xIHW|&Z%_8HM(WH^oyKwP7}nNBM%Laf>baj^}3f8 z^=gRrA&66n<0Zg{-s+# zX6gq+9Vq4+`1+9*15W-C)4$p-BZ)n~8W6ub(;2FRARD-C-<3Oeyz4?vwNg1MI|>;F z&;8*s28Wt;r?hGA#w0~{7Hos!8$Q~JdP$1aDAZRiU2mQK3>KUpoetM#p?)!wDc{tU zr-n-v*oMp7dC5lpywECgr5l@*Y^%xGidj&LR;S%%qN*8s()ghSl;iTA#dGD4c40)n z*KnsfY&b?sYj}6+9P_h6V0BqY#CaN^2)K}bKrNX;DQ{w{DaQqMel-~_FAd?ix6l%H4_u>ru>rsje*;uiD^nr!I|^f12y)zCz)v_^C5J*MqgR^I3X}z z%0h^OqI=~=`HMiUAD1s9+vDxMbCI=j(yod@4>{h zP`8bYBQ2*3%^DApE+^__$rj=qbif%AJ&&M3X=M<;c>zG0ZGp;jOR-D}SID|!j8ewD z)kpsQ?a1Sx_q}@lRs27+^8YaV5EZKfvR}g6g>w&6J0V#osiS!3p!^>mClGglz|(Bs zn%9q75)zw8YovUHh;* zFLI~a+*uyY2pfbP)Nf-62B%+gG^d1eIWVGc*HMSMVH%9oA9Ws}g|Z8OOsC3q+~2%_-;o4tR%JQcpZZ zK($z2?7*9AL=9I?Y;7rb`m1&jDH6=P)#Ezfp(DL1=uNkPag^_Jp|33=!Wj)K2YVL5 zs_Iw+Fj6g4&@!k<*|GQRMn~|cfoP^L>VjHWPwZpmzRprtN@e8u&`D=^zz)1G zQ#)rwOEVB@b=*E2_#gF8CplbW3IP0(dz>Nh&U9O=IJ^DFla2cQlLOOmLbZEs9GwZ{ z#-x0X{l-J44DdyL&k2&ye2H;Q4dBe%B8_D^~Q&R^e z-ZNhW@mQT|!XxdR6Vvo=-|ssps~bz%;s@fG&SFHAv0IhJ#sx+@vP^xcbMFCtV$R_@ z`xkz*OTFme;hsS+W`pz(0Y{4%qC9U73wfPnsu}Ak$_od!tKiP&lGh_4IHQ+Zb2*ju zj(4N~h@o*n@uFGcZ*a4`vbab_6hNEfQ}3d**n@9|vh8NU8bZ4Pea(Xy`vWOz!)YmY z+4P^d9`2!1U&oDL1y5?Lzf|+krd4DTnM;W#B-O{Hzn-`3ILu18neML zTy7%Rz&S}Q9H%sruV`KvPZN#e;}$7QN;&ANTpSeiNYhAdgO-5=muY&6wZXv2KgIC$BeFAf-HoCy@;mPA!vpZJ-fEOej6@?G~?*Q=Hn zj0C3iK1fn(p6Gni6H=8b3xjq9*)&q)6(tD z=c=9SJ{Qc}CL)+uDly+~%qxO78cx6RcBySjv!_;)bEs^V$jh`D%dgX?(kpNsTY))O zd+p#bFy31+2i194JC#VHGaHPt(U@v2#j25FRI0Oa-oXzXJBD3m9ZH|u1@r2UAsV=h z_DWYM0LDs3?zB-;EJ|@BK!!yfKJPC4y6qCFMD{i6+flj_;T9fkjwXoRVDPSv9K&uc zH|HDUdu=3EP%`)sYs&n1e<-z=4hp9Z7k`L?m9qWnP4udJ;djoOKRlAbN#!&KPO7Io z&@%jqmv+(iqi|YTAu=i6W}XmU>(QtzMQ!m)kF|q6STIn;BtO03q*o1N=PSV6(_t(` z$=8Tz*!rsKT1vGz%MKf_dB#mefI#RGWtzB{n|;TcT-x+H$Xny(r8kN1zTKB0mqL_w zXc3xsn8Tg3kr1p+!S|uu&QFMAJQr!q!^4r<&v+m(Ts8nzjm!K5>GL>RGuQ?Adk4U% zN!3Zn<=*6o7$W?58WWu$(N0Fr83hOY^cP@jP2dbHyl)74eP-;Wf{oMNL?kO6eD{ta zs?-lWJ(rjdx7^t+r`1RW3zGL5-fp8s;K54ABI!XE}QEqYZdp0?N zBBttZf}FRjYkxkDEc?>w(@1thGI(5drvb%7jTo$xaO&qvyD*C{%fkf`2^( zJ=MSJWsgy#WbRvxeH+xrK44<#zFEuDPf2`|;kL15R(vS$LbORw0!qs=qASPJ^k~HG zt4lA3*m`1E^U%lgtU8*o-&&@~zRi*grBNO!lGualM^pmXCF3#T!Y(o8=ujB)^w$ zOm!!-kGH0TvOBh@BDs8n^J7_rLUc9G2xoenOuE0~;sF`B5u{g0F6Z%!_5YH+rU?1G zy!R`>@zPl|6JKB=optAAJyareAery%ZIx#%dAG=`38O8>lWI7x0D1;n4m1omaSQ#g%L~D)}g%%&YiMfpV zksE2>?531Bjdw1bszXI0J|-dP8U(Ew2D=59)TW{T_${pdTpZ5p2%U<&*Z_AZbSJS3 z#a%mMse{&0kmtDl*@L$sF)F>H9JPo0U4mUqW&CFxIXL-CB01haY~EWVVveM3%_L6^ ztJT4>B3$kcC9&~qh|#Ir`f1AsCS1|b>!)MYfBGd0Z31}U)=tg#L=xZzGvP8leO>4!21A>;V zBAVDY$tl(rMlG7L#6`wwV%Sk3ufRFon1(cTwfx&qolZSMNQir@fIDshZ+e~((FsPA z6=EFYycFlCCc*mOCVUafgh`L%PU-=(0~r10Eh*5%#uTWTEeEGs8%jsdvWB9k(b=p! z>J!*luya_fsN(h^vZ;Z`O~WLCPg93&XW0@c>U~&hF8W1RmZ`GXaBP4D<^i#9#|?#> zcSzVm4^?--de|jSD0s;Vnv$)tw>38OsVj-bRZfNKrAE#Xa z(#M`WOgc?KXw%(vr8lRrjWbMhy9s^wWxRWjQj$MMRb0!-fdoCK+n6~yptR~WWmcme zqs!x?UZEFUf%a-sgv&gl@f~T*F$QY1V^y^z>+LzBFjE7znpa1Lz-OG6aqM>DrASHf z_{qCQ0<0%W$RqfkFf*6T`0^NXBIn>f)37T&MYoi5Ln-x|HJC`oPW5u-4dT6+Ih8k; zy%sU%m|C;*p{b6DPCoK@qz!(By;o1us3r9HY{E(lP|u4h{WQ}r2X1qmJidTKd#h@4 zu=sNLfAOsVwHn6;Bns7e5J@+&8jd`);|?oFg=l*)=IRG6u-}WpLcwE=!U5o#^d&ih zqel+6ki-zHb0kuIk^6Acii6)!R%%jthU8J*y^?2w6nFTLU9<@oaYiw2nwU6^+HU;o zSldP%{t>&=OF9+qrQ}6E$eB5=9^VdBt{xEwKC=%lz1LEE`2~B@j)vKJ(%Dh?vuSXw zB%gh!yPfLp%(_{b^*Z(pM!J8RJ9$HI7zSEW(_fS7^NIdU+Qgr8nxrQY`n0*~f>@Q- z$uL_)bJBfc@J69dFO$2oO~qPWdxgd|6}|ILuv*t;df-Ziak4<=BXXh8z>))3d1 z6@Mf^v{&*PQlkElQ}kaD6B@LhHq`o^ZOPi^Sqb7CX%#Ps+&6D-VyMoCBiAQDXk?qc zC_fqUPD5qIaozJ(Qp=46$IN0({E3)2)q^}7TKJUdm@d)zs^U8{K&?Mu&%rdJ=JjD{ zy2-7q(}2mX5PV5J(?lG`8N7FGxt8KAvFw=W)2y?X#4pH{USndXy3IikXoHeYuNKCT z%iHyai&1>I%!D9{#(N^T9jgrMOVI6!HGf%mW@jK?j;{E7FKDjnd=t<3@>=$qj*wp6 zBUW%RVZk*XMo9(Ovyf5wADS0cf-I7Pid&tq+YqwwxLEJvGdgN~NERRs+d-psd`Wj7 z%^1>-aP4GYkeA!amUHNA$*xETFc)ww^<)l>SY{KMScto4Z}m6^i=B;@_4>X$6nE63 z8`Tl+zPv~bLX*HGIs-J)h}&j41k}Pv!3Cl~m9q`wb2#ijB+14*e-fBPnWJM}s}DZP zw@gIiX&#IO;QVpt22boEBvk|=9G*rAZQWW2BMj-u#4CqTv;mGa(H8ZUyo}xymW)sb z5r0G8MWVQ?qoycglRB+XG(9fSYA~Jg5gPx~lJ?Uc{B5CZFc@e5Dl*IoD~#wjQ#i^$ z;vOtu<2AL1lKMHPq7lc4yQ4r1;?-xRM~#+Lq!+q_dfQh~i^GiR%JnSW*=^Xo!)Ih) z>*Panf~e?Ri@IXpot(_fQ_SVz0_M-@?i&KYnHV9uLca~_HAiMd_kg%L9bGN@Tifnu zm^+h)A*`JWr6bwz3|!{ULBdb#x23JuF2b@5GGZIfF4)gPeEt#jE%Eq*hOV?y-+tQN zOb^vBWaJ7tj$qVjF9~8Fs7oun$#)3#v@dNk7gz`!yUnq^DK~OuX^@E1JJKaZye0WE zr6Ac2ohv_D6{6B^@dvQan47I?Q%a4&62xfHd-yl@4> zq#k&H>6r$91_YcOBh(1pdz8idXr6Rx2l6pFX$&bxOJJX3p4My2MXJ+g2s-gxOpU)3 z>Kx=)#yytx`b2g3#dw2`?;pEY5o1RX6DIy0>1MmMiUVxSk>#eRxct{gc3azUu z18?&!j5}ikRiRCnzZQkk>R&p#Pm|V&!&5U#q_b(85Be~!cY_xfIPVBUeG?@STd+@v zw#jaMF@cXQ$HKmQkrVtE;Jlv1ad2N_cMW3u5@eUOPz8CYrBAGJgP1oK*chd-(<>wz zk46zO+f&d+S>XQ5uwNJ_zl(TU(#TW=DABi7qJ8SaB}?V`|FqN`cn9X2s>fY=pH{CM zL#C%kI=Kes3u#^*r+;Q`H8T2-i`%-W!UpNYC06G79Ocht=_cBLO~Hpk&Dma55rN`i zM>LXqiRFHt_r2dpyI=l-2SZyLc554#P3nBdmix0Nshj0<^m2n@m6AV>Y{U^aV`{f} zEoPr^o%vSR?@}#aTZKPlV%>KJ%ZJ@+2Uu%g%>kcC&S`lj1#BG#OS=dEO5W*d8FsD% zw4|y!SWRwsCKquEc;wl`=B12I!#*iEO1>w>pR`!C5`&FVrOEMH5~ec+ zI-gC=a5JQpTSKHnf1qdKVKp1pfE}D`MT2h82eC3wAa)Y>m5eC5gM24XfU%>Y5rQ_y zCDkNE{7IXOy@FL_QbypVB*}28raMl12s6;@v<<6CBzgDEJj~}ZsB)htxL@VcEbA#l ze@wab8dq~7;2OfmKIJ7lcdHhtg={NTJC`SEfg;qhkQxm_f(>0gwZ4DR7x252?n)>4 z3u~?`?i;P(^u3{)3MopjkdS{TB#c@_Vsx2yW4J`UX0wa)f)bKJDSnW_aN|N5?WpeOEl@yhcq4yCQjIS<4; z0qoby+dIjqm*7OnaifyC;#8w9NAq~?CWy~m9);n)ix||IBQb6X5cNWWz@|yKS#v`k zMJlMT`Q?G=hpieWt&y7c$rPE*!aWWFbmC;|Wi06}()~|Te()RUnGQ@lsBYeAtXa6! z8v9zFJcm#|aK{O6E=wyrzguz1sbu7nIt%ZVTOFjfflN!FGej5T1_yjj*C#qI$GBb^ zEI~`6V-qP~K!JbE(bO;~pmSW^K1|E|=7;B8P7v8E8Z{}bNDR8HiPaXQtr3pWqvy zR(H1Vh*uzHpL+CRtWWc)uSp>|9`smTJOe(6Rf!1h9m-ib@1$o*)}d(&uO^<)HrCul zZFd5OXk`*p2qsGHO%tF;dz@#7`sNp>Yx#QAh~y~Tvr^~lzI)!4s`#sW)VmtjKJsG~ zM3>f{=WzWhtA+|OKW>5D? zU4U?i71EdtZ-YZcdDrprq`6$YlKO6$YhqH0(!ZNKlMGTjU3r5P?J(ob%iEx0c)Qi z>X-XaJONg*Puc8$ZMeVv2V{{jWu2VJw#w6NO9Du@?iZAi$f7i^`3|@h-rI&X4nQbi*FLy!W!N zK^L4Z`o>%29Tj=>A%4Bm#gmdc(8gppCnN0DkLgoa@Zm0xdlH6Oo6?E*Vt0{yae zZ~YU)S$A7RQ331Q63ve{3butT=U4cpJTT~4NddhHxtbhq3fn!-ku)DqhFGTFxS|F0 zeUr0Z11%1G+{fZ2?@qe(+D|k}o6BvC(IM-Ql4N~Rnv_v_ie{G!_Hv7Tyy-B=HUX^C zT-B(XYQqh{nge0j{wT7bP{!aV3R*}$b_~afr+J0i*2=W02YB46!)a;h36iTqjFNdgnAtfF)gm4;sc_91-&hhc~;yoUOP-ZF0(i_p9b+B)1g*s zTzq<>9)?zn;1_XR^sKHN`GAD-7YYWPYA*-++{Jbiq6s>M`lP23l&tzQwS^ADU!2rg zFnvbURBld*Yt;;-%VseX=dj8Er8gbNr*yxP>Pe7kv;J+}8wt zlSoO|?&rfcay;(USjs3Xj+{8+S9*L1`r8GKYQ(8>XkoR~+BA+SDTq-lK@1r(akl6k zPRZh6Xzo>wso%}BxqR$O>=1Rqm;0b2#k?#8mbTMbRWhGt=)e6MVoqz zaospK$BFI^o*Sty=nNtpKNN#N*-~_G2O{GlGLXCOw;8w{Xw$q~F7N3B=My zoQugX$|6<@J2%pc8$I32lZo_=@k*jDFAEdhTeC7Dji+$%EGax>Vhi?+l2F^6V*s9J z##^zKY~7TV^>(KirYpGtzf!fCOl|08D->?QP_;-;$vBl99GfKv^;`8(R);xvz6H~q z&T|X*q&FhD!wmj!*ULcKu!;2?XZuRE5>&}D&6CcZ4p@#H@@=By1^D3(#9tZWhe$bx zJd5EwJjTi8z7>`hIzqa&A1yCB8t!O}RK6mCt=22Od#C1m4Ej%t<7Qq&Xtp{T6gNNk zxb)dS2B#*I`d|uv(MUy~vN(?NI{r8?85!xBV=98sOfXc~HUj@WVbUQSD9?r8gDM{C zoaxB}5^x)~x5bo4GcC$QzwXfh{_C>Lu0p=f$zH5SLLX zi!l@r_k;L&7fjzNua(`wciWseScnt{9S2c6cfVNsu=(M(v`9$fNUxkgMJPeY9{XsH zjo9{yT-oblI0RvqG1vbO^FpL zb0frBEdR5I=W_i1_F4P<&wbWWSc)4|I|-XACeOPwn$EmNGFMLlrAQ#>DCD+Eh8ALF z*s)*Kj~&fGb;n2GwdOUo)cO>$G*~Tx!dNF`mSbDv{|GT~q?#pWpG-{~NOvR*xv8e- zoCI^mQH8iA$Klo);&rwx_Z)qN4T@O37n-ggM_^Znpt#V_cf4Xy2iwb;lRGnl_V8D(=6AivK zQBg?dY=i+K%iGt0OASbE)sC5dv-K6(N+e-ij63-lcZQ~++p}`B{+ISln@;hnj6o{c zW?8l~2Oqf!{W)-)wX+OK#ub-hTifm-8gPg-lkFYX|B2a6p8ZAJQMC$)Op{oZ2(HarKj*PM=?0LY#qrt78a-CsN`su3`0y z89O}o|44Nfcx0Sum%0a8^NeEoju@A8D#K5IDwJ}P6oe49E8go%_JY z7u`lb`?agCXG`N%O|L=h1^eHg2oR*prK*Gzf`H-snZ>FM(Q*c&Kja zbePxsxsHCnYFs^{s_xlC5f7BJ9raUOIW`XnpMS6_GNx+_>GgodAlwaX&S>h z)L?0rUs?>65O+R7p+WPN2J1~vbm7Z42vRX?l@Mk+Frtd11mfC$T>G)LtEN3$pIN!6 z<==4iDw!iQ;&F%gLk_UH9Q4m>?GgC^HaPF2B6W|6<)aRxMvScMd6uzo?>LVncnDcb|Np1JNlqx_hl{LGEr!>8fP1zXk@JcHR8 zWZ{_-0@s_04V#*nwcEcyiu=l3wMF0F* zhPL*%wX11WPP09D{=yrsuj*b2!8s~f&*>`9c?4#+>;E#l8}bfQLx|jCkaT`xt0yE* zLE?V(K6o?H(@YM(?24_3l<$i@eeLI3{J9s_ewLH|Z<-Gx<-P0^w4m1Tz)lZdm_ZNK ziC_Oe1bPjdHFwyXtarCRJZ6DPzp;J?Qq2A0hH{)cqYI$Wlt6maB@IWNURw|6;Ptbs zkA(I8Jm}W`wsv&~jht#1v{Vf&vJ!ltxKKR&Y@zS}{n3<49(kE?Sz6W4GAARnvgQP1 zOgpVEucuD$;M>SKLn#VS+`s85Z41 z_-^;+wU^i`fB?1Qvj%H^`Rtc%vkEU7Mi3B@tPm83uE{=m{M(zQo+C2F6p<+(F%7$Z zj{N_wFcH~kbc0IXfF^tONG_`O|3R)m=Iom*#L77#mywxG^3Au9(Ypkrr=++g{Fl)? z1tV}ysBb&-x}&G=5v8Bj{PsC4EjY8D z6hI2DWb)hwAN2AXegh~sdxZgnW-O7j%vyek{^wVvParbG|hiTmrH1vpS27sugMw*>MQvh>auXpU= zdmb38{K3e^H6i>z2f;~f4r5DQn70fSvkp@=6p#>@m*s3jmS3k&1IOC(y9(yH&gHB+ zt+g@u|J@r<^RdJP=QqoKjTgb4`)TEmpA0EGeUb1KDh|z5m8I_gqOM$pmsJ$sp!Y8& zj64W!aO2y#fl;gFG2~c#)haUv^=$=EX(^ER?f$2=J;ewGqM-lT{-Xb_?y_H|`YRq$ z>+hv!U-RX8DJE)IC0(}bm@~3=-Rb^V`~QXq$g#!{sjxPpYrnL170Uy~uf4+E`O)3q z2w^YhWyZh;_0n(K_#o!?@ntvZfF z%r;Q%D{NX8mUlm@e=8%>+u>^2Mi!~H{icq%yf3+?{(`jq&6E14O50r+owzda5anX} zDZBloOkq_9bT|F#4|m)jvc2#ZtpL$8p4!yxv-q!F zBo~LBJEK2~e0v#)z(4m^)HcLlbx<;R-E*Abf-aPf4t`9(R(B~>aLy~6{wku6^1y;A z5agI$#aKa=WgDzeanNuz)|Z@KHCtbZ{Fj_3jA-|j4=|~9ijH}>nnXR zKsIeN?|V3XDpd52kJq9I4H>@hf47COMWua(Ir#As+B6+36O;V^`{Aqacd+l_lT)D* zb<>qFL7ssHpGadyEUvUol& zt|uwL8+VXl{|(u+^vs(jJYlCr_YC&$hnVOl_-^PQCA;`88fEXwDEP^qSD}YFoRjWn zSpQ+=nSrz{!36@h0wV6U&u4w>3ADSak?wvUMZS$_!yAu$Y~WkH$>$YNEC!T*cQUVi zR=ouXDbJ`CI|fX0?IsT6lR;?QeJMbGER6u@&;C_GzWg7IH|c*+wN|I9yvYs@Py zPL%mZ$G4zg)9>g075AcR^o-=dn+)F_67Kp{ZI0AXa&D?6bM7x^2x0~vc{kX!-dp@Z zV@?MZ`l4Kbknk#@RL(+ZGSHl(`WdVbF_=n(EM;>70AqktD{NKRR7cZQaE=Zs$F}Tw zv}5(o(gzX!?rVpM)#@j|k=^&C`+(Z)9KIJRPX@XG(247dPd!IW=}W*S$Xi-P#oqCT zlH&SjV)HC)PL;#0SuVm*Hd8ku9?x)VVFb@*qXk7AfzZWS$xGzy&;B3V;9>VjFRbgL zEZQ z>)Zv?&M2AglK#8`8+bPhwXEpi%;am2#v8`xyAE#Q&>KG#7#KKDpqI)%2lS@q__8ks zIdb?Izg(cci|SGRpM%Tx;jK&U(UKC7_nWpH@B(B1Hx zGwPS8;sDOe(eML8bU3S#g|dvpu96>FT+bqO1R!x-w0Y{|%Cy5rDeSu^yVFo~PK0h> zhrHjN`f>ZwI^m8E(;axn71_>o0DOvN$eHSD>R4=~kg|#5SqX&6m8JPN?bRBB zz`0QU&|#T%-HLo}=KEuW4BFOX7cjb*Q~gmOfyIP=nPg(b8eztng?r2f!(9JA&fYto>i_*8FCBF% zg~}`=TK0(SQN7Mlgk{q4>v~-Ce%8>f~*+)R`uBz0Au5@=)}9_VNfpC znb&J0*2TT3?+Pmf1?B29)@|sbPI!zI%VtN}46^Zqv0)QBd+r74MT6q0qO`OdMMjke z%F>7!e^W&R`7`xyk4MW#7K8{^UhZH@HEuF*vC8sQy6fCfOGdTdRy6_P-J#mLvd4=& zg#+K4~&HDSDnUG1Z8@kpl{OntOz&nav$$^PJm$OGrH zSk7@-%i?QS>ZeDZ4%dCCy~*!#i{D{*PLkYVT4GRQ*n_a7=gd^Lu15laQZP%$;YcCy zad!_15MTZJze$4VOf_6vGKR;3+7@Tw zGBT9sP;;#8v?xN$4>9PM9P25HrW4CpUd}yV7PUE!q?T!&vffdoPWE0tHkp>~`R{E08WdcoRb| z$!%++7c->mqFE}HHq3fGp9J6{iD4`69cn2bVM~q%i!<@0=QA319897CtB_cma4?VM zTca6XUr&}&*cY@V^X1hgn>jaI)=O?~}u8Xu4?6wQ;9|bzz7*r=`Dg%ietN@{v!BOfE9pndiroFXTw8 z-kItld2~(Fx~BSb@%lmlIsyUA=l3Zty@HDz(5+M*bDfi;te(KyOgg;j%n&1-q%nke zJLOI_9JSD6o6P$B+LWEA;vUSjNBvsU%g9^FnCFa7ack+eSWwz5*Ch4j)8)|zm_WAG zjZGI^XrQ=}?3y56hy;`5qyBY2ua|*sS`f>NL2YC5A9P+wb1CG1z_I7% z9YD1tiI9%UbHCinH3`K2RrWP{%3P;baNtUM}6+jii&hOE3d$_6s&Ny@Rxcnc0Y8M4^z-rL_OxxBfQ6y!BuF&VVd zRwfyGSjkC&$Cr?`6o8{i1Q!ZM%t zMmgAYI)&>t4TkHe%+q+qAQlU;^${BZ^;>g~nUePJ3$pE1-?){myL9ElhYzEude1ZR z?$vCQ#XPG$r$?nEUErMt_YO5p9M6=??6OE(M1sij28J^P-55-BH-0J|718UF*ASnqIkt+X#*7ltd!|$x2sUHOVnmY{}FY4SItg) zKZaJf!d_jEtE=;-_2&ZDK4f}6UF@~Jwk8q_o-~~f*VTh?Wfsi$W9Jma@}@a@1@i7+ zm6^b)&twD74NOgt1yGEZjay5&jSm6~?^yA2nKPZL2J<5WglAJ=`1gF6P?-o~RXJ8; zpyYPNQr)Vd+n0F11Nr>I#h_xyiH?`6eopq=L6R}-MmENuSDSkBTN&bwBF))D?xjs= z&l2cy{4nkN>YnLY-b5hlr0_KdlBF}etF~ujLu`r>hHf(f`cYGQj_#dinDD&b{I8RS&eLx^K#K=@^|I@Hx7fdJho96NEJJS=qhp@rV_(YV_XtP~Rty(Pupx_% zP|#A*PS)?&rK8=LA+MJOew>qEO}buB2&3CbJa(k6xJmH*t>-`=)2#KbO}RYx+WLG} z^u%!{$<>F7NgT=gp*fs#W$P=7&B%Qxu9w(aTg!W`)I1&~C*R`Z(zzqETG>&?UWXXp zU!AnIKK7JhwZkOn(Tn)_lZamzcqkKYn_ej7h<4v39i7u(zn#s+j*9W@6!T|~%kBfU zUvjU8>*Q(lZ<`k(`V#sh&P%R66_{j5J~rJp7*sw|WF`{!byvvbiGm_xGxhBEg3=Ai z5t?>3AaoaqOL$DLA2VbCS+4lA-_Gw<9d_SjnQvae90dPzUkD0qBTUj9RL%&X==vFEW{^VOrdnLP>Zy)?*1Q0B+YAZjk_ zW;oNIP+u_3rN7qM??C6)1N7L9nBhvGBcczZ(cf*5NWlB%zn2zf-ebTXgfqotTG?E2 z`B0VzCRSg@-%L0lwo)ZjOSt- zTf@3;*U?w8TbBR?MY7n5e9&ZTVRR^=@faw@2+$u`(1ki|fyj3P z*V2NnY4p6n#^^!O4$*m`T&yZBV*TOSrmc-${iZa%1w0lw+u-u)5rC=IS}0 zgo0*IYfz6hKZ3|VfXbL|v_p`T9{VawgCFgGyv$pg3D}d1yA!y7e;Gkmb(xO~Zbp=t zwD>zVqk5Ax)HJ@E_XmK1uQ?w0)dB%Lyg;;oq>M+e{{CePoWbZAI~_unhk4P$^U)W% zxw$d1Ew3n3w09$wkc~yr-Hbm>FEG^(*nZ{Ag|Oe6G`o;bCJ_xvD>+F#iLkj_{h%=7 z0kDGrS&c8o^L~&;RCii56(c8qPnHu;FxniX;%~zqpB^3eOp!2)iSx80+|z z3y`n5nR!LqW!`Okzd8QP8}gCPt6#><4OI<}=5?qig;C2jMN&h26NtCP$n~iFsqYGr z`8p5L(&P_`x%XS)zursI;p~3miEZ$pd0#gjTTRZYr=#jzIP?R?ZZhUvhg5vjkAVnTX(*-HhKS?4=I&aV! zGka*ZWwdXN8aSD#!ZeBzhp!AI8LJ|C>W69?$p*$|(2EmSeqJ)$K4dYH<{+w=qVqGf zLT#SeE8%mjBnbX;N0}SGF(jdmVfg29e*_GmRUFUwdp?4!>N9saOi;QiSL9&rrcj$@ z&p0TU8;EC3g4y8DcKmK5foH5>D;W7i9{l$Br2!A#EJlfP>gT4i^$2e5m21izer@MU zQVN_=a3xN5+cW++1nEie3%SR~kiUOh+!krhj7&@vkM_F9Gl{vTC&R8=`i)dTf&IVl zoY3@z3;HeH5sXEadcbCvAUq`QoaNV(&{JeQ`(3+2pdUHG&Yh1x{D+;}E6p5vXJT|E z=X8DYc!n^~`+&pV1#%Q4`;czrs0_3fP_5~c!Ja)*vlE>pX_m!Xql)?snM;`tKePj~ z6X*-eIfn~BHf8%>l$S$qVyYOTGqqZt0N1$i^yt2-ZdK@f;a6iWR*{|IC&lv`fDx-z z4*z7PpAzu%gGLZZ$Hm86T(&kASA=vO>@CdAHG}f|n;_76wXfG)zC*R^PeIHD3Z>O1 z1q`wL-6kM6LFfT3C90qE`99WcJM)aiHQRcvb(weMn2e@i0%hGNvSk>=8^5^wh}SoR z%HXDrrQTT3L8F5j4$zxVz&65tW2} zM(3IQGOf#>ilZq?#Gz>*NGe9}PT&2H-Q7`ovmxP$;brTC=Ad0uVW2vQ$@4)>L^&@d z&^2fFOoDQWpIh;-50`bA-J2imnQcjX)_l*Uj-fxOe{nyV{#U+0Mr{BnF00kDt+g_i zESmUN(5VIWfUIHQAG>#NoQbq*>TCDfTJll^^RBJ}#8BBzfX*X2q1{GK30bSr-@M^d zuD4XwmIQ*K;wGA{12%5s)X4WxSxL~<4O`~SV7U0+snA(ia^~$(b5K1FyZ%Kr(@iyK zT5Nq20CrH-Z}_X1u-u=q)SG+8U2kh)A&W+%b*C~3GnrefnYxm4Dw116LS;_@a%1*b zvw!{8EYDU5K+|G!EaJJ4mzVdv3;@TDjwZ({MA{UYA1H=KE@ELCUqH*{H7|g^*UX{6 zf}ihf!(F(4QJw4Mn}V}kI3XVQj+$0CvyS1at? z#lUGkH>3?=%x^aezz&9KKR+bYomDfC=JGb`(5nas$|tC~;%5$hRQ2u6)VD&*L_j`k zZPGlzUME~6i`$0S)wxPs0M=t=R>9U3V6MqCEtl^T?V&l$r-%uP$e)o2=#9XePR_se zvU%y0p}xq_TfF??VQWiCz;qRuSI40^KEJW|xK*&;#u(AhACGVunTTaFs*?avT$RZM zdOGT?ybVCh?BSYn`z;IaCMl(Swo%Ii@Wz``%cJ5rA(*f+Pn_jQiB6Qa&ZgT4Rvs$G&zP!16mcHY~N} z>bBhHC${cBo5X`KeAg(dM>xLW}RT=Tb2&CF|7&*j8O4h@-!*AETR@(&-CtavJe*p8!I!u1CiD zQDpu>?gD1e8_5jIO1GkP15M}>0j6HSgVnLo8xVX`Y8s1h2EehKANx93ee!@9B!UP_ zUh}6Bugzhv=ha2fd^P=3L-H!P$&8IYa<40(KY1x&SD$%ubQrPmbn5W5v%ccpAj%_T z`LuI*>fZEwhecEFOy!c!7}WxRrjC4s4!MEIi}o366qghILA44Vu#<0o}X$zS28 zy8%lDgQfI3IW5z7No|ZOCJU90%3E4ZTU=J`#yfZco}>=7Gqx#RNVk;-ewI9C7|Q!5 zv+x4q`iJ5RI=xXym&E@REDTbR`f%>=D{p3fxQowM24 zml^HKcZU`SECCdtY5KB!%M%~-`nER8w!#yd98A)jYB|=}djY0J%P8p8<&=b*<%=e2 zF%E}Hdja!pF*yVGd))$Am5l>M8G@YhLcMmb+RPUXu$cx6mkpS|MGxF@Ff*RJ29y+t z8g0T2NPI$SFKAv|n+In>6(2{A7`cqV)jHA9qEAN`r(V~Pboc4REm!h{F$J_~?ZGIu zoM+d74;H0dD*#~)n$RtlV*rt2lMkk0xwWyx69$`p*>B2aL)p33QSYhdQ_FISuCFeI zm#&TL@GNgZDey#~L+#V!lqH3?u`*}`f9DSEqlHx~tN)kX*^ z1eM?PVXBdRNJ&9#aSfm_fK(gi)rn30moHZf!0%6Zi69>R+QaoU$LNS{OM(>5MjgK;80>3jj3j&p)GM zgo6i&tY-%yUf$ET%5=(*VQS&3`g)~w34xeT=|Zb^Gk{G_>n}dOr7)6OspB>**4ts| zl5VWmp-HRb++hM6xlqO233`?I+S1aL)E7r3kOU&{snz|uvbU?bJ#63Hmv(B}(m`L2 zy|YCbFyKRd^*I*%9JMfM07y?90RWwONbV|~%*yH1;iO?g;-NmU7F-IUEj*nJ1=pCt zFl~&8y69RO2(X92rTN47gW|MJ%D({2RBn>!>|^sXlCzHlQ=MA-spG4lWpF1V)?qqS z2WECb%O@crgdo_aql~($Vu~7U<g?F$6Azv z0ETzMGt2OOY7+&UtK-d;H2ON?%C%3STwz>cSGQX8ajFH*YJKP5c*d^On)-vm_fL#< zj71i5VBS2bSA1V0uG)*}as zUUV@Kz*SR*p&LvJRQHbci&69q-kHjn!jMtGKh51^S~uu4^ke8`S^;QB?CeQZzA5k$ z&;gk{okm7pwY2cT*3)4P7gNHv2SYi9j}or$2zqQmByw#ACoEC9RwY>87HBK~J}tO09K_WfX1b zj7L=4Dtm;piZi`lhN9tdl5YkZTd8T$g^Wmhw6s1j=@xTSHh*W(0Yh~4@;Bevz9R%{ z;LOPsxlk=Qf7M%B3VaoG^)a|ECR@-WVa=_!Tg|b!xaVt`3!i(}hlEDMv~AeJWOB;@W9(Y@u>bIbFSktWvI;u#q(IEa=9!p_4Y5%>03R^8 zcxN(QJL)*W-c#irO4@8;SOiikH^=fNQ(kwOcoT)>(Y$7 z&nov*c_jn^Xp>}UjIUem+%4EkEbTE%n{6 zBZ4SHrtlItcgjmB1N|h;^uE_11+!Sibt&f{HRrh$77h9`j>dkWm#<`BP(sn{t{O6K zKd=BQO*p)y`qvmdqob9Jsyyy=brIBJv^=CNpN>y5Y=9|EE(tkiKEB2=>%bD_x>N(A zrZv+SZQrct2D*9(VGi8JW(8zf1C}$vPLW^+b%J(b;c=PZUR%>r@!GD8em>ba*`Q`P z-|hiZHh$)^VN$uZ+|5MOcy>3*1_v{5k>{T14TdYavB<`h0@_ePOo$mLM+vx>T|}Q^ zWKB5v82d`0%wb$4-jsxgo-9`M@gMNiR0oZ{AP*9z$C3ip*m>!xF0h`{P`i$De{jI5 zF(JfAC8Qe+pAD!VjOC}G>Z(a~AH>ZHt_D~*0jm@rdfc|eK08eH(q92{BQRO;R`xI6#bQfn5keaAenE6scOYH*JQne+@ z3FV5-L`+&*st9vAJI*G*c<}=I5dKb>eO;Bul&Ni_&IQ-}{%N!=y_mC=e`>x-fVa8E zO-;4hw3H)SJqh%N5mns*gDtER+Ii3{xVH!i+Qd7jTO9`<;UmG=>v3A^cUbI4!Iycb zxK>gAc_zVvVJy>E4FpKMC`$k^v9rBg_OUxYw^@&s0JsEd2XUNbV=B-xyy$7I+5zaH zs+kt9)rZ0MSUdk+79IE%3S>3(Ty?H{r^O-iR(jg>%Jg;g$mlDzEnj$2EtD62M*=q< zoeMhr(^8`7LhrH)=;Ub)yLBk8h=M7yj$n2`-j;8*7lcApx%dDotW1ejCh*#{TU#;S z#%*3}Ji^btb`pA72G+fdt1h#w6Q8T?U+n?xQ^?KRiHX16APTOa4AzK>KiEyJ0n&NH zn=+r}!g0Y<^tg4PSkGx z2cnf;%z5uQeD0ER=#nZf$iPhHCW?A@8k857*24AXTK31=rYAf5Nvyq$T<52OF;iI$ zT~Sp#%UPiZ66S85z+A>Fi4&QYx~OEKTq%+1F<5|`b{35P%2b{fE(0+{ zsC*a#X7(yRJ|23%idHqBwiz#NDbi+CQu9S)L1adR#6;=PY=m*(Re)-zVShzuZ4cA3 zv^}}Z3HyJPdS1P9DDF~|Gr*>Kx`UI`A&9frfv)O!+HmMUdH|uEEsP?lkTG49m;Pik z7<^Hd(oc`9uhW898E43N%}9VG`af%i=Wo?s3D@^@%}#%5L@&l_N839(MUt57yU+3v z3f$wpTgzv)AZWQ_Xsh$0HXU{JefxmJqAN#tkJF}Q1sOO(5^L0Iba>Xz>BjiYH zkM}@6D^7jT_KG^PF^9#*$xLjhy3>=~f?;kJ$Dt1hR& zvce3EM~1nL%IQA?VZSxth%pW<&r5eEv(6?QX!$)`u`* zZd-8fW~`}|BKoJBcdDS1RkMBB-A>p$ty7l}l^3nOSPH0BuV&&_#}epGAUD#|s=}(( z%HVNRAc%0AZ*hh`zAiU61wtRHkSrgm#+io88(^h%1qkZAAZp58`0KSlxC;ts^Busx{EG;0qRiY5y+QD7TL<*#*uj( z*|yB^;5301%TzW>G*GyDjIIsjn{KYJz*>e<;0#;4%Yl;`&2mR~g$eqkE#0ZM#*=;L zOf(T!(HoYj(HMM77oh~gU6b{eqeMpfmZM945js^c5I8TjH75lNE!S|9&@%b*Qb(0F)7dC57yY5 zMp(?tPXb65StG@2`A~frX<5o9oq~z#$Hn8e?sLHRy3hmet;*;4T?Q(TQ1y+Hz>T9m z`F=dJOj6flrm`~c;nB0y@i=~F>f-~NX_Nlo zvUB7)s|)6q+*&EhKsNFh6pUvSQ@32g#PT;BpRQ?epfkvL$*Ikq##jyeE`l3Xl>cVPbwujj^_nynQ-jE5Mwl=00f)^7>-*XlO=s3~riArbzt#lj80)LZq*6YQDEg z@=w>}JisOT>-{w5U_cNoZUIa>GPQqLM}h%y0=;MFO%?nsqKFd6`uhhP z=7G>*STgnN@?||4X2H#;{3f!LH#y1A#k$`+bm1I3Y4yrXq*5NB>x$5j#lq4{eqJrc z-j;CyP<&%BWXWEKj&^b^3O`AyCN+^&(J8cWU%Nw79|EuG4auoj!oZV26iQ+efS`f_ zoq%&pw!mB$uT>DL(tr%I^6Ga0)k7SB62NTdvoes+b7_lj+8D*^!O+(h;gBtbn+q+Y z0=DiTB5WF5VCVtk3}Q@!OL0Lqt{wyk*HAZPej2sgKWv-}p1k0817~5PtmQbDJ1Lj9 zII!R-51c8G!vr>Z1(v-CwM)~-GNH+YQ zQGb{8U=uOkXQZwY7H}Yf$MwCOs2H|gZ7-a)mbS*grHv){*pg-kzQNQ7#wyUM8DNsg zI-#mY;0$8hqh#`q^O8dEYOBqD zy7a-MotwlpyBmSUmusr4UJxs+JRFJtbkh&5>oLNesO>7NNP-D9tjtKQRNLz#b`S+0 ztSs0f7Ea7@;@YyKmO(I5O~nT_R_L`k7aLIDqI#C7GLoU*G6wUJz3aF9Wh+{^NPHZI z>$vXT0~G>ooi6IW`;0jWUwnnI0I=mK^6i*KF$g1N=jAOI%)`0jDwY+=#fQ(*X)_Ij%t!JW%NVoGG_viKS?fAJ=rKbUc? z4S3u54>MiFYz9?)gK%;V?EXhy^mQARCxIf$d0N#a6Uno=vuni{wj#zucemm_OU_;o z0E&pqt?qmE;eWa3wC9jkex+5z#}mW6_QG3e8P45lJJ}HaHBW~SiDh5&_tx;SO#nr0 zqQRPs$K}FgnECELp}aAX3WiiTjfTi^vpJW|hGt#^)63v~vOX=tM3K!zfFWb)gwob} zlZaO@k92nIr_^%?lg9j|%}uD9QZCTFZcn*F8{e3r#i`Gzs*IU6giv7?Lbd0Q8rDED zuz>42kg+q@BCd0mF@&xqs0Mx5C$;<<3$iwcmsCz@%nSoaO|CbH=xBZWc6wXZQ_cWW zKM5d$iCP!*`BvU>QD-|p#dRM~Gm5+e2u94iO^G&&R6~t)h zC=t${H&0$(e$oLHH7H)o_E;$b#U%8qCxfImmu(b-?3{cST3g+Y(56S(>fZNaEvM=0 zFpDOI8@v1LGR8?Pf4VohMX98cf<9eoOt%W9gLYj2rWJn=7&8b9?S#H@ZcSjf zS7Ae+uEnI9tZ3h$V?<3`a*CC4r}Oi!K8{_#sjD#gMIybDi@OsPZj42Gfl7}X>wDqe z0#%>D6hfD^lf*d9sVe3wk-O8BSJG`P52DnVdOL>sPptz<&R!1MgEt2Da84|~&1pYM zEoN8(i32w6q?|nBXU=wej%q$!+WAwW7Y92^Pio_?5#9UEqF~Sc6eCi^MEIoCQ?GgP z*$FS7L^trQTH;1WoEh><2wTNZ7KM@K}hF9&M*D?xkXrPS&XwtG}1j zxVvmFdOC4T*0-fv-BS;61t?Y5;zTfp^3}vSn0O7YrFhU9mW&NH8gpL|5~49|grc2W z`U^3gCQeS>pwg%(YBaSzBX8*x?<$C<=kA;BUn>In#g~meouEEZ{NyDZr8nxj3q%_O z`y_O!i*Hfsy+c}ho`uxuOGT6hs85DIN@A9jcy5jWUu8`;Z0i>TE@UIlaU8&T3BxP9 zQ_j#|?1GAh_ikwoxzS~y%5RGtZZW1VW8!O7;<}Lf0Di87KT8YYVH#U=-O_1r6o~#S z%h38`YprUA*jIDbtPM0kd=c>}5+8t1@(Ji^pdm`C{%YQ=iu!u zRdjJ@-JPEas!O1x_6NLRxtLs|yC1((9e1aV8soMQ`EJ`1Axe7#=HA}Szgs5VTG?$?&l{dOg zyt6X9Q!~|9RsbWZ`Zs8p_Py1>OOnKcSe2<82>L0zYOSpi?|t*vcS&Jp`8jUmAj9jQ zlvOcAbX}ET*o{PgAxeI9gRKe~8XphrpF71MN=y|BFBZ*sH8~C(S+Yq4NIh|qM=m8&9Cyha(z5P zUH`1)L6q}zqb_L>P(6$-82^*t!B3?vy+6iq?37q*^?PCDBof=e(d#lcKQ7=H-$JY4$l4*?V8TrTyT(HVoJax_8SoTC1AZIfGgs=G^;ilUL#wDx*2Sn_vk#Z$cW!^ClzJlBLeZa!uqqkmmH<_zGjljOJy6QP}(pY}0D_|OjCu08g93ld8V{LH3u4)6H9?4n4Yzl*0w%JS;?s5vw^ctMRlph zfu(`AMTnJxwyy{ppqdXtpM1KGjj+n5)@-XaknZpHdqjH`rD2Uk%BFTD6*y!zp`FL_f3Q+5A1lQptFmv_T z$#y6YZZS90x>udMf&n2jSVmO72>p^5m0YRrzODsTrLdNF(9iII;fF~*v7W1=EH7#6 z+cnpkq{4N*nj;A+?UhHy8d)ajUcUkr)IsLW@xgA8%qgwiwP^FT{D3Fev&1pX(`CQI5}&Ccex#ule9YqUAnwiv2*ZTozTD?I7MU9El_{Q)wp6+wRTbs$j{<D_H2TZUZuf3QEL2j)+5TjQSI??+CjwDoGo^akEchtBa z0t-Ok#Y%x4^-`Qm)puWwfsNmuRLQq|Qmc(Yo%vzN#`cECa|4AO6~iEoDby5MZWg7j zxgsc8ZL8vAgSqXnZUYanM^U&eOk1Wql#Y}HNCBgE6W}ZJ49P9S0^9?=$ltC%l*P_; zQ97J?lh{(m2mIyQf$Gl9o*NzgLfPw{RW7*O-2a$~Z}wcz10GM`*6m_-l3Wn}Z)G0= zs968y><|OONF>EOcwqFiOr4Gho5DVSg?mT$*dNWf=q+sxtfro|{V3<@=H^mL1Amh= z)`_EiQD&4eD3c-M_kB4eCLQ`dwFw7weeRr*f2P8zt2dSAf!<{V(zq8fU@(j$bnywY z5kFAu&J-Uvg0W)S{Nfkz=?3I2i?Yf)&pDS z&#Qb@B~pFD;aVq{^=+gaZmrwHF6Qqaq^{>`;_t28@x~)L+L@gsi1OA%#{J2{;TUb7 zdL!`!SOhOg&{gnldpmf@)KJHl5@Ux{oHe_g zAo7^o)=mL)3Ad-f@X2-@M~uiD3}qIYSY?CxHR9IJ$JG$Hqa*IPd-KJ69b`PjfAXbA2I1JSu?wuPsKS3@!66Xj8t{j^- z);3KKD6f1 z#N-K|y_;;mk-|b7Uq5DNr?{rYR1H&Yg(Bc~TV$vhRvJK2w%)!I zPl-`*>e^?7G-+wC-nh;E6dGSQ1Ww$LcDWzlzYba@%&a}@&iwrTwhy$lNUQnR)q}3% zc*lVj8miFhy+b(}m%Kq0HK;B~8u~PDx!O!ahKs!YD>g=~_MJRN*lxr8d_rb~wCeu+ zc-D7Nt|`ir$67lCXF}1Ns?91L#{mkDGj5I<7lTGT6ejt5wrETpEZwuZ_3`fw=&`HJ z$HivSSNw;31>B#Pn@JpcX-cODNLi2|5dXo&1b!>IrCkLNFME+m?EY;ju7NQ0=Fy<1 zVLYCjPaQW@X`XY|_*R^Ehm$w~Q(VjCa%UeB0vEGe{;^%Oj^LH|Y_4=u{PvaJ(q~CJ z@`@Rrl$ljLp{|Q;d~Xv8O3n`uX)%1_<`qPODb05P09s#lqyaMsIPSaDA^1Cm3I5K4 z>Rr_}VM$w!yi+}*!>J#enr>Kn)d5fh2@r71*f+nsB(Z#Cmr?Pt@9&HwI-sS}4gkO7 zcY3(o``}G?CP$Uc?pI!lOFfbtgRYXFgg)H`CDLDu%lizbE*d!U1_iqRXh%yt#cM(R z^IW%oAR|RuRhN>pv7;m%hoka9mqCHa(iLy%T)=s`R}ctl+Vsqsd4X>PNpApOx3xFI zjper#N=qELSv)BuqTkUSLH(ih%=>`W0Sfo$eayV=doUG-Wa6wpR#*N76rwZWjHloK zKI?q>DzlhD|HGA8lYr(AZTbL?IbPuQRH*cQKpm-X{;zG?3+k;My1s4K=yHg29lEM-sazTH~9KXU${N-Xr-yLKDpSY^dw*p zm8mWwVZJm;coNq}(vh*IfY;VmOVl>i?-^H!0)yuMA6e|3GhwZvB-_xu$hJ@Z z@?cC4sLD|V+oQ@X`Lor4f>s(VdiPsrwjZ4G^N@djK>tN9JHOt&BozpA8qDL@t9b2*9A-Kx`yb2u zvCdMOcU6iaB7j-#i_EJk+3Er7D~?_x8CL`xu+dQruqc0g8>!^*Lvj4LZ~jOB7@ULN zbZ6u}O;m_Bkq&5}VQKk5E8|gcXbRV@{)g|SiBv%*`G36k=MVh)Ah`dla<$d$ctYLn zsEW^d`MfR)z&x*lrV3rDsf?ffLDIzg>BF91-~9JWk;MI?b<)tj-{|YOlrHqVwY4?g zuAX?3?0_5YH6Uv$a$Iud4NebJIiD zft=IkghS!U#D=;ht)_?n-i;sh{Se~+St0Twd$6^Hkt3nN(cEqR^?i2K;iikXwRiFc zEl5s9pd=SC1cY_n2UpnY=d@ODbN}HtxBXW+^Rah_g(rMGW*q7hyKHfJ)>l`vh`1C(0n13@Dh~x!N7A(D9@vriA?0wS#&VsNw0MPdSo(v*G$P14>@pyl*KB?n8 zx6MJo5yg%>;Rw*@Lj7)0^wWcqYe zfs`~Heti57m-+vwq;K3kugBcwvd;Id`&CFk67=`G^*%no6CxmclfY#VJV5jlnz@8@ z_|Dlj$nWGdpdZhCP09l;R5?oMGHq#n{A#BJEUq#veb81aDQd;ky7crr2@>XZ<1V7LZoS8s~WPApe*|MhuHl4@3-wF0Gbgd&0&BuMhOXB zNL&Nfpzw5q?#}k%RPdzuSXRjkL)W6Eyzwqkyv11U`|Zd6hbQ+GnU7~rCw{dSrt^*~ z#{i!Aa_EuRPWA#E2bxxpPropSt;cn)w$ttQAKD?e?@xK$v3H9n+;3)|+IUl_PL4nB zsQd?lxBpk}{+nVGu68&#&??^h=D4z)oTYWC2$+%Z_ws4bu>WS)w1}jwh1C`E9zL>FEfj(#UNVLn1d(tdiz#Vzo{9Z^H<~Kbhl~MKfRLd3_xbeJAmQh zh$O}mv(|TsIzg z-1``^Ip4qlY>Cu(`}4nLf$dv_#8JMhI^m{+yGVGJQQBVu+OT`)Q)zaz7Z+KB(W1){ zUlj#nQP5hhDWB}waR=5NkO3HjHQ2he*>hz~^~1L|`bG2$y+5(Rzj@}KEOVFXI-hIB z?CH@~&1U5=lY3)B-G6|k_zy{)1g@6x;rdstEu&$_GgC^1B>w#?e_RupDAFpQ@A2H} zfLJ;59+9??`Fl2ZcBCxgoRLAH zA=eDbYMZHP8B~^rZtY|%A*<5NVrH`sT`z+!`bCsnNQoKKgR#5+`E&ohA-wM(IU9#X zF6bA1zVA3bVF?VYcYCWRce0zSm%w>;e*|45mnmtj&CN#xB>xl$-LA!WA3$;%j|P4K zctf(UO!fF5*wm!&gaGJ#sB~Vl%$xzX;ovAz zYzSb;?Q2Xgq}q{i;Xs~*Q9#fZScL@1;jxdM04a$kW%X|^jURtQRG8zGYoOd-J<$)8 z8(94JnQh;}uTK`v2BYa+t`R;KaDIq&f^{{UEG+rN`~fFon-1iyCC$0_JnD%Mr*71( z`jS(F0O-JP#p4SYhx51RA6r=uM)X-OrH6;%iF82#uYh^ z1M>&RCp*LecJmH?K2mydHM;6E2Yq;QwO1K02zOliLx01MjsLZ}l=H}mLt>NRz)x{A zYn*t})=}YlVh055LV^qL=<}ExoL9Xn<`3SmOgn%%L%M?{#1SAlrQpKL)M<<$<_V~2 zRgJNPz3p?qXxvWqzn|pTD=Xl`xm-_vC|m@99VD3NkR6iHvlRJ+c<0(gBS2EA6rC}= zlWoKT#K1ra7X6No;J%e7s`%?WV}onVUE}31h|$a>cbiha+`PQjj)5H>#DtSrU|r<# z@T6)+oh!db%lQv!iaSi2(?c%I@-1jqS`{+yBwWt86OTLCx_J1aYYm=i6bXB!EEjNk zR33mt|Meb7mjYXMQUpM8T3jLLj7op=|8fFd(}E}Ub8|#`T)Gai)jOQ~`=1Ar=mh+M zb{8We-jZ9EMhGscjBjAHUL z6b{;y@SA9=+13xc?&J*sxTwo2vS+R}51$Yu<+zqrz3V^DdYcmb@i!?lNUK=;>d)vy zHBG>$0f{h1nfCKL@a>4d@7~?`)q)N?&aLPgL+(!T`)Krb0Y$nUeFs+*<|g9!e0XYa zuWf)OFxKx#5kPN7+KTbp>UKO~bhlFqp%MH8meqFt05?jhd0Y0%Sm=k*c(Gxv5Zq=} z+tD3t0pvzrbIL>4n$#i3rSy^o|e+R8vyL2=)u-!kmKF9ER6*ZoL9G&Shm@o*mbgTo)p z+)G{_W@=>J$qD-AgTNbM-*9?5mw98!Q?`1pt5PM&_mX$ujgBc11wqNxVIT)<(5kwy z>=CmQUCKK_nq$2r%&U)cyy~`0Agy5BvjYQHIu0OpP0BDvWm?!=BjX#@aR1No6dHPp!~LJEqm+yGFv zV&V^gvj2WJvJc?!i7t;2jr}43WI+l@xV9q_dJfzi048Rpna!0pJx@K5$gpAhcyC7> znI@gLp*JvBWg-XaEuY3}X>0qX-5dUu<@uq(|3e_Y|JTQK00oz~_8A!3&t<0dujiAG zzW#f)w40J_OnNe{}9%$&QY$3eE8|7j-T<%O(}O5M$2la-hJyQESzp?=cri5 ztNBx(zHtiXA96)D@gJ_d3tDxz4$8b;tdY9W0Q%e{1Xb4j|n|G1DnjFmi6c=oyI+FE-tBY?|q{>tu$Xdy#He@ zK;x=gmvq=#@BhE;*0?MZ`#y>Xt^{G!50p(guO(L=bGC8gPJH68lh(PDqewdTKyGTI@?&q? zQN253TP^vC^|BA+%yw|iNIxR&KP1O^O*5UoRbmZ*^FAuW?tlbj(}A}u`Chq&Z$?(# z3W}+KV!xQMcEh&5+OXQ!)cUIa zSnS>YpN#l_ZX`0{z}q>V*hr&yZ^nx+_&m9xG`_Rn$CB8;X3&=l-6Ui!cF2q&8=FMW zMeRU6U)Mn1seGxeoZG~-XoKK;7eEarME^kY{J#a6;#{_Ll&G;G{?+R*7`Va5Bbd{h zZ0Dl?o`7?y(k0HX!GNF>?`HGWCDm&-B;oi-bk1k&Z zvQ{e3UWz%0qF%V1wuAMb%akrL?`Ug&9dy_SotMZnohd!|?@QzN{45<$+K&~HQ#Og? znIPn(>X~smX8Z3z`9Pm2G1nE$WT>Ri`%R9k`#!O{s$a!~eD?Q8fHXSzwkA_Q#7NI_ zFFZgub?pBXng3bM;4yG|2;QW4**oTytb@m{3;xf4{$INg_laa?NUZG9UJiue2Y)7C z&YFXI8M8b3`J)fyrnj6^=a+m#gEo7E@#0^I8gV7uewPd&U~p&H`{#x zbAPMgtwUkU9tFxX&fjw9ml<@ek@>8RY1O@W5qqk4K9 z|2*Iei@zoKtHS2r3*LS_vZpDAxe(`CEcO`o_{&_18BSu?%l>=vcOm(qZ?&g3Z>6fO zzB#D49!Iv2`snY;XTC0q6!sdO{n#~U-(E0guiX^B^Yvdaz3R_K-qo53)x0IQ%J1R0 zlMNU=@}MSct4C#Ynp|;nAr=?_I=y3JS0VlKHH@-MxTVKgPCfYG8|+s*@H^l^ z=o1;{x}udSfzzK2d**`LfB}G4E|lGgApC!%y?0!b+157fAlOiFEP&E<6alGLI>7=+ z5fD^*6A=(XKsq7Bj8c@Q(nPv|hytP4kRS*s2%$(Xp$MV31VZ|EGtc{;bKYmpoZ~&; zKm7QGaNm2cy~?$&wf5d(zlOJoFnmAoke@ny95 z(m@Al(~S@RVH5G6v?@;HgpL0OxsP*#@F2fB#A>F%;k+z0rxOpAG2$mK;CjPt?NrY&ml+KRD z^`5nF zu(>$(?)Kc=-jzj!(vRw+T5Y7cJOAt{{AaxW3!{qD1XS41<@krY4Ih)!(Yv(@&RHbz zqCw0eLzTmG-Y3F12d#i9c13Ih0o8Py91v~{5Th6X1OPXtCWix>o)gf8VBUY5V=cl| z?#7^z%pw7M=Cgp_9Sk@%J{WGB5^VC}&hCccT7^(me4A0}aWHlOSWzjT`ioEiNlcMq z5Yvq%lQfEG7RE*MwbC7^Yuxd#T@rS8eBR%uJtZ15R3q~ z@hm?f@nJ8k$aBMFLuRhDfj?gZj3EsImYCCKl7mxl3!2yqoS%k3Y=9Bs!En>|Y8l5T zPweTTPS+xfk7!E0`U{KscO0Fx`-)a=GsEGU_X)PuAp9=?BaeEy-^{x#;Opj(<(xhXDvwb|DSA!Rx#)ff zNxZ9Sj8;!D)Bu5Dcc6af{v6;Jbg7O#<=0Rc_3^4MKt^m)?*8MZi~nwhMpse(OeiHc z4WKfXTutMOg2X`Zn4Hh$4$5Jd6K)I6^3p5OQo-eCL1B2K6KU|lMF4_M)G>#zCQOT+ zHUhQ$0~~8kvRK*aYrU(VSW735*52&}MI}idgdo4>U%YK=Pi89kK2@!3aF#@JJqN+6 z?~^$Qfv=4!csy5$4;!=oH>{Az0X)!HYTn&rdsGw(_e<`LOjtJs z!{ugl0#FuHYrM_o4UtpooiicjlYh?H|LPM|$-d8nl`@9q^BQKj^{|u8W_Ne{fYE_{ zQU`HcIhMwk6%US$l&k*;uo<{|RO^3F^G|;3pRqvVqehBvW6Ab1c(;VcJ6m}|5smRT+e!oI)$(%zbVEEhkzQZqSnwJt`ox#(QNBgd_Cinj};G zvLD*Q28!3H02|<*a~2e-dHaMxa;0?dS%f_?l&Gr$?F`*?5;D7$X2Qz)7}74ndwUY)EUD`@S=)N#?fW z&(C1T|Cpir>yl5XBH-fVz3XosnaAFPXa<)k(MVBW>GvM~&n!j>6|IRXU z_`)Mrn0JqV;CXr!N#f55HB$X|U;7J*X1wR{99+jG(%`&LkH)a>+>kt4Zr}qd7DyfB zA0C zUq;{MJ)bYk{ElC^V};RQ-~ae8|M-8Tl<|UNt-;mZ;99S)zXP%6#VeUPZfg8d%|Czh zuRe*hIAM@letO#i34Oib7htWm+Amx3B(J4y(A)Qyz}1r;q7>QDVcpuISkVf!<*y~u za+g9U!GKWBBjJhd7Af~y8#*@dp|?Np>%IP0^ZaMv`G*cmRBNR8(XZvPPQ!4@rSc_S?x${rKUbU-}fD^L}X#hd|vbb~f*g=ZTH zFen*8AWZl%$69HkRr0$Z=Kf9uDUK{IM!hbWDDc@Uw?p@&<3#&t^3}+fdq5cAW1#*q zsoBGyjbf#(E{_$Q#FKuH&;9Sk_l>etPs-$E2DlOXQA{f`fxliJt9HaYY-Vi}> zEXXGd(EKe_Jec(lPsiPVpga{R*0N0$to!s2j^h23{KQ1jP7Dbo9<=f<@~LxB`{-??Uvg!iX^UTYs~R0FnCn)vSG zMFHRMmD!a4a3u1d!;q0GN^zq`((ZkD9mh}2vE>E?<* zyAsXA;TQPFl1o160wn4bko*nx-vQG)o*{b>ZR>4I`&tVN0ctRN%oDDFQXGlb8W^{k zw-9P$2A5jHj{t~n%y%{ zzAn!4#8}y)YaW_nH?YbegsSoj$WZWCHvTN-zxqVuSFS%?-a`N}Rl7R;x?lpPzb=E! zu{NUj061$Y#E(*E)e@ew`jFw`j~Jb>31&j`lsox>4wmA_(~@AC8#Mr+QLT7@OnzEPaRZd@Fj%Ey zBtUq{dc0{pMpH`RB@`g);I?%#sr$TLV%?Iy(p;73eFsB%_<_g zPvTiczSE~R>fc||0xfy&1hu#^1hHUs{vH2SU5>2aLw}`Z|7L2aw|hUk!muhKK@x63 zEKgL|TZHunnDv|gqxiLe>iSef4H3T<`Rji;gy+xi-wyQv)_I2oaz#NE1>izW?z?H= z3?Jw{OU!jEI@G61x^^7I%zxqFIuhOk!(7N2vKv@`yB+Bfpd$UA?RrahC*U-22{&&O$%WfwwDMKYtvRkW3#-#u$(!NNV448NC1G@EUW@c`G*?hh4k zxYBl;4+J>Oz;LX+{Rq>QJP=Zc#+cb~#e+$$_emc_r+H~Vx0k?_xN8E|XQlwI)!H6KRvFpeER@o zthT)B&IeGl2e`dYWn7X#pBQ?@%F-!Z?48j+4v6_no&9ID%6QGOR${JaTmbZnVoQ{> zfdbFH;0Jd=P#cbX;kH%l&2jy^8Z2uS{)YUk^{{Vt0pw&Ma`R;aU!FV&pQn+;HTf;X z)?l}~KV%W^c=JmM<{RHb5ZfsB95LRm5#(QV)ZGtTHWM{IsdxMTo*?%#OPDdjvG$?5 zGS|ZA#Nrs{>>pKrrk9c0e_8W?@s9Gpa!3jX9K#DtUDx;e=J5HL0#fV_ohMXS@NVDE zEbZWG2a!A4U_^rAjON>sx@Zh>slV7^zHUdGeL`vMIDii|tbP5p`Mmni4^3nI1_uOc z-s*7RRWk{lk{k$E=h;0r0-W@kZTlGh^H!#j$r(J&*;uUI_(EcMFw4O>-QcraXB1AqIWutD zVAa21V)CY6aDj+`@Scz9LH@>POQx=+YRrx*D}RFcuv}PE0Pl6-6&oHZ><8l zLX7#01_wbED~fTd2N;nD8ZzewYEp}IRA<~~i+v&!+pSVcEW{QOfRY2SB7HS+?ZnRy zaW!vmP)Ww@L{ECG@P0L$qEowdctu5`O5LftANG?&W#rTyL%OE!^r!!X$M`>HvGtwH zKw4Tk_y#$a^Sa@pT7!5iOhjEn`Mm0Jx!0E=2ew-_;FrS=Bf1Qkdhnkgsz!!4M@u@K z@#AFIR5~dZk>I~|efBjV%}b&FpW;c|*vj9J&__!k555k&^e=|=PoMS|hHG#MHO1{7 zec-uBo9^2dg_f^}l@kum&8|AD(pQ2cZ|anWT0!O`^q%X0^vvvG{y&ZCZ`t7P5>iKD2~oCtc{$S8xEei z(X!T%7Pf$tMhqh+12*cNTf?>$BehJ-n3pm+1crnif%P|+5*G5&=Rl~-dF^P)aq&?!NV&9%pj>cR%e?2gJb#@l+IsZ*_ zyZjbo6Wobjgl58yt2o^Hk52THqlD_r1KeNFMl@e)S5O@(Y=%I$`3o-v(+fZ4P#vS}M)j zI3_nR7+ir68YLQCEQ{rX`a-QmYE(up&j$`20K&QBiN%pED|ir?$Xl<&uW0e*{8IyO z()Gr-4n%>YM});sD{m(8wNDI%t%x+i?q`(Nl4diU={A1!%-q_BEbV>K&3c8_aRz$k z1Lag|;Q5N3gCZlKW_+GAI>lk}zL0i{a0`5S7OKtjT!cvt{W3wA^RKIUl)j;g1@hXS-GKj!u{2tb+pw*G#oW^GHM zD#Ny6Jha6?^LHI&u0JbY;ho$2Lt}wH2t>&>?pOob=QDreJO4vG@ZPQ5((ha#8~B@4 zgm1G!COd|GM_{Pbo*}8*d0eh;xq_TjYQSr06Qt^Gr)yLVqFWnfXg&UAuxYLGt>{Wp z7c_O@$gbd3+iOqC{G9(X2oLb#XySa23ltyK9dtXhRx_RlGeOD$zE{p}C z5vOh%eW>u?4C#Ld)WRTnPqx62`6<$<#@$*iyb+hjT*(*0a0VOLledFc)2~5$4vT-x zHt|i{Y624JC-GRI$kGmU&6;d#)`3WejD%2KSMV?6%Q>>5>YXTrStlOk=)Q={X-jk% z?#TMi6>naXR?=38l=}^8r=35X(k$Ov9(MvvN6Z;p-~?K)ACal`PPGUOYZRJFDs)b=NSEuz2^J4Mild1@!)F-)U{6?=XQ#y$t%+aJ2qD5-&)&uHP>MY800r;M>k*> z=vcy48}3>KHF0^1X4}VaemdON>+sD!1tg(*SzfsYM)4sAF^ZfWyir{Vo*3^w=r-Fi zDwxiFuDNTy@TVUN2<-6L&b@)YyegNahpL80E9n?7n4TwDM~o_oR@XS!)*+4vKqXu9 zO5Jakw`vSj`fS|rGyVA-W(R8T5$7<)79J(Q7MrW0l!izbqj$1dpNf0pi^ObH9qf*RS9ox1WFI7WW08B%dqw+R%7Bt@z5{QhZ?j_eU2-GkszXTEv_r0xy|qql+4x z_ab-b{(Li%xL(HL&Be5}fyTE{xkCpWzNdFpNq zL92c4sIFx~x)+GYU*)to*|8R?{K%|q?K*vMvv|xH<~k-&dK5voDTSR7wMq8m_0MHSp;0psPn%%!hfY@L6+6rYb;6+w#5fxCoc=y7=p}G&wDpnRT&t?jW zoKKl4Z;5hg3C^$m-bT!R2&@8qsG`gE6PRt3&gc_QDT0Z$L611%B_<6l5y1LxUF< zPUWWNe-vnple2pCxvOVf;|4l$A}z(7D^B8iM;$MDL{Z$0P}vA@~yN7zbBpE(Wsqn?=1gg_t=3!SGlnHQsi-C zn3_i5A=cz#6K^&~om%50dhF#lwY^@+AZqmzsCx0ekrnB}D+3Q*!>$RoJkY)PBg)~F zq6O~@9_FSbpTH7rEb6HC#~9X?_t4;yk3NqKrWnJx1lq#f_x6wJ`^^(>c1UZ1*k+?E z)yV^o=5*##s~sL<4z)DbZ3a+^>6l~tq3%}*7Prdck3mDU1(_v=C*>^=le~@NL)tZZ zu4yf$>WAN@KrW>Ok4}2bOa{L2X>~dIou9c#XWH(ihOI=-L0%s4oSB51e0ylW^c1hSV6I#yJaF#UvmeI?dzFmkE4gFtb##;0P!xb-y?k^2`YsTe zd8=e6kAHMN_SgBvGH=Q;xcW#X0BPoX9>UUi!?Xo~vDi8hR4(nzifVaYYf@pnfbZ^=hkDm|I z8cJM4C-DXw1(qL>6#~p09<|WNj9Z_nYi2Uw5V&)+ zj+#=3%$(rLBie>uqZ4*RE*ag+X4-NOs=&`I9i7SnFhe{mtq3_hq?7!)9>iz@wnr0P zzs9ANj91`zyYb7A!=>l~(sI4?$AV+B(5IS$h+yLP1CeQ-Jv%2Br*T8~=YabPg#e)J z8-8X>It@9EIdY9}6Nb!F_f8p~H~^w`CC)lSczsbZa(`qrmVg!URModD>&hKO3m+^H zT{zHQVWK7<*oRX+r7Sf+FA~gVky{zU zjK%N4TlLNWM;CC4VU8^Ml>;ggy7O%mbUt~ob7Fy}dEvy+Y(I15h_(I2G%p)PVmc${ zAYNVkK3pM$1!46Ir|Bq0n0~W)wTl+mfHm#YZ&(cl!9TRhb_#Pq&4twDhXURm-VaqB z=6TYG*W%O~UXq*+qg@;hCK3&J*mF)#@d)C?j8$(7R&-Z?Sw~B9P-}>3XsIYIccQGV z5IQEZRZ7@@t@gM|li`>xX8c3ITx3t~Q#DJQ*BJ9i{lDNC|Bb7TGsrkh6S5AJS{!s= zTJBeeiPk>JjABJ?_SN+j2b<&EpI#rPs59%GSsgJ~H$NpWt@8*^C8h5*k*&I@Pi+u8 zsh`yCCK|MizqXMCQUC5#VlYVtnp(=c`F&wFM@yvB^8-LFk^UdU*?PvMH9QryKgxHv z)`EQ(=ICiC%uqC#@&oAAsu@}ao2CaURr>+aEW>(iaJQ+eawGazU+r8i)aV-eQ5nnR&wdrrs7T%^RZXoi~bC!aiN% zjbVpcvY4z+>@YZq4)NP`&%?V!b?L}o{&`m? zkyD>5Do_x14oR^TZ()%yG!U^p`<{thmbXC0UYHp>+QFKExMEGF<#7BDEltznC=o=1 zI`yU(A(fkM?q^<l3F=Xj9oIC;uy|YZJJ(eU>z{;Q^=Y%L=HKNex7G$xj2PC!v}4 zuOE$Ro@B3KJ1M(y$LB+C(qJcTE;46;&A9N&0wqqRxzaa3ufqo=Fd8c3N)?@2Tctfi zqi6(hyIXC6=NQI4>{?i5Hf*tC44Y`s1RQF)c){I9q$7A$RN@1n8$d1uZT7QG!-*;UCH<9QEcW2g z+u;13&*h)F-^tu4|Abmy-p>3N^w6N%9D!>;a(@-Lxp7p>a870}%o=Y+BTeMjBJ%=z z+1l*i?$d3LVJ|3!`FADqy^}l#WYiFd(glI|pSJ=)L9TOZUGw@#rLl)CJNv~{h#T>` zz;C=T9Rk)pL~DWDg|%F15Y7CPYvNT1P^G5;tIA$Eh^HmVmpNS%*n+TUJgmjD)ohfA zn{mA#>|1C@E3(rM8bA3D6xjd%(*cwrME(tMz)-r1lIWBo5Tp~87t(C^ImuF~GxQDS zCv+%dv@UkDaP5uYiq5rb@kNNGo|A2EIuMucT|b{PiXB#zM0Ew8xtPP~{E&6ZR6y++ zs>_5i-0VV1$jSVqWk)_H6`3|E+V-C=4E}$|j!Hj+iWLNmJemh~i!k)c#;%MBe`fm4 z`pv_5RFM;K3G=f-JBjSn()m+oA*gl4T&qP2x;0rD^RIHiW&E5`#QqQoe8`;I(dK1#vC^ZDC{ z!th`=9_o#l!X?IC)#J!4Q2&gK3%oo zv{uS*o4oEO5wzMI{lalDJX!YN1m(Y+VfyWiql=3o(_6qLdWv%%5@m;_p}VdvWOjDc zY27IEf#hI-A%tq-ob+g+L5#^er0sqyOr2kwM|TDNi6RJGz9;BBsu|gNM3I1bQ z-2q?Qn6Xqe=V3-Rx>45Uw1{KC32uhB<{dDP0K)B^wA*me+oXJ%axgm=P<#1jc^>=j zf`w=d_m3i)(|9RR&Z`T&Wlu7fI$cWH9%dIs)h}Ot8MO((LmeSJ?w(ES!(MgIsb8K@`%Uaq!OKo3vvSXmjiu3H(MJgfWmhGnwk%U3ePCBl{t zib-DubX0E~JW;*p;AxFVu{%DEaPAa%^2@GpC)q=s$MoG_jhy~u_u?bx)ajzBB*n|w znfF~M&g#ZhnU8$6`RJ-fY+s=xJ1l)Z)YJ^h_>@}q60Y4%_ZpivSI5(^#5@y0Zmk7N zz2U1}o`fHwTL-etHbjw&w#Q^`YdY)JM`F2Jv_$twWIW~o@uR-|P*oaN*5^wi3hFCm zP^&#P)iA3Qt<)ZdoAnK4>TYDjwH2B+yNjVi%W2XZjj`Q&ppc}$9C+}TBSyduj-UTA zKC|ze+>X)xNf255WJk4(7p&Q9%=ew^en%+*m?Fwp~6=jUwY;VIq zv|}RDX*m;}tdQkF7y}nVE`9TBPXWm1`@O60;MUTS;#N`UQALgzpj)6M{E`oMt_|rx z_J&M0ba)840fTCJ@Z;toEGj`LfnUyB4nmi!o%1$e%4(fk0HF|nNRPzX%#~&uI?yK* z9ic^xNk+B@EHT|sE;4(BE6a&gCPOl?;eIl=R&pTw%VC_F71kRIU#mq1J1SLaf>DZX z4ce0As*q!i>|dVe)>3-F!ce&~r?8%EhPq8Z-QxBet}ONzWG>VT=B^cxh@CftFmf`J z^L^35D}pCySB!U+f|X{auAS9Dfa8`We`E=gUOYu#!Yj!mJA+xnnk`_yztJ45Ez_*(==OB!&;b&h>aMR(n1gRKoJDAD}2H3-$;o@Esm$J9N%)D!F)SC%fx~} zMBBZtL4}un6&4qjy?ad4=FS+hNrmu@L3c&U%u&g~0zq1jxqJ<_W~7d~-ZSbwuMoN1 z_xojAa3(n7j`F-kjGwDw0sc!R)N6@Yk>TxC?3_AqlS(H$2$X7OyFIk`yjH2!ii!+=6-C{o3JxMFQfrsa`7w}&Cu3ra48 zwI!dL?~TT7rAiCj3=IMqHy(3TYS>wg2RL>@nUiiZPD^9Kiwt^uKPf`l^8KP91s3pt zUbV-2(~6F+R1rVFw=BqCms*(rf_3zdy1aIAL8|eGKWdM4Jd4Ol= zC_q(kB|z7vXVRz+L|d=xaER=Vf&=AtUaIa3tU=Gxrp&3|4AUxwOzADqsSCT;*juX2 z@f6i&#FF*!?b-))Vnt=5^x{ZOvCP)UK(b~=xug3z3A!RW)r=r(k=$G~gsrHBw&7%i z(hMMs&qYPK3&C68`!932bWzbDEndQd#MR7|Y8pDiXI9aa0$tg3AQE8MG~4|(8yMej zRqwr7RTk6c5gJ7Pn022_hJq}|XbH>#KKXts+_gfY%pj>QZTMT8u&5We)^J0|+WWwM zzQB^aXjg8HfX3fD*S0o;Qt2Xy$&Zcm>-Q)Pm26D1L9TAMV+*72K8D5nrxZgtmqCmAYcs2CbG>+jyA=obvPEiTWn z`0N#N!%4709V*QSm3!cN)v4wC`OXSEZ}%1k0Kq1l;b|c+cQ!ZrS=|UEv+z7U07j~` z4SwKyFDMsegx@#9f%5d6iNAte1^n7zFl#F~=z*paw+m^Y0%oK38lb=NXK zaN5gKvF4bKO?xzy7()-}7jf9vOc_oezG_$z&8_Byp0~WNU<;GwgmPaWK1M3~~P2y07}^~ST>AaiF9vrnsCRR4K!`3Djm@7w1lyFMbBwiI!$ zRMo4(*^4zxg(jnk9jP+MM@K4;b<9)@u9Z5tDmlySOXYTQ@N~A6QI-`*Ef5+t)6gCA zy)hH?3hl3EIh?d4*ml*)RoiK$r75e_iDNuvNM$)0>So{D93}VbsF^CQxFr~2h5=B| zbP~*M@rNpS++A>Jz^bU)WPhnx(vr*6<0YaMlR0t^9~F|(Zzf$+eB$CQs1UAN(c4wk zVIY}q$>H>Dlveg~b4hNfq{D4=^IpZSGG72tPcvxmIs>~{E-e*1njKn*Yg=p8kf4>^ zQ1_C)I?@nHr4T!<0e*Dtd;>KHz0}ErAKKi8SW&6N_-Y#6)82{u{(eu^)@I;x6|b4% zo9}LVcm};dO0#8a#_JM0a9Fu(aj0h1OV!tE#}Hpwi4S9@ODcw-SW)->#AU2K`TMn) z13l%v%k8FVU(>VGBPZzjpbfsh zUt~0NR+G%+mFejhq`s0|1S`uuTq$?hNtQiH4wn;R`qGnO;!)h!0u(HTEacEwqq3zm zURM%^^-Wwvw9ho5M#0wilY|jy^=mx*$BL#@x_3zwx3|<$1KnTFF&esj8{Cqd>juq4 zl@oP+zdI~k?e<)lAsKLMDI^5;MYK1id40U$B*b8WE%(Cu5mrH}N-E$y`Y2uz>Xks`3LM$w%JU-L zIaDd5AsnlgSl@m-Mx|06WRsk(09*_|dYh8-a z9c4_Am)cCVQs%}g5c44W;R6Wwf2TWGtf*-xR{U@6s(nX?aGGZT??N@!CAe+`T^ z$4Sj;+qn6YT`Z#o$FF3fq;npKR$JeHYJy8$ctasNG zGfID-t6Ux_flhs?b{J}lQY(L7#%_Qy7O1i0woLeZDdbzQOgz zRK<_JxwL}bYVL$`YwLW9Czg3zL+NfXc+EU6nOnJ1w4{gQR&){p>$!P}?|Dah51S#! zDxa8a@*3sEG0TH=KJbD}m5jzW_gKMynR)%Ly*Ij_bTccZ+@#9XeRwk}Yw7cI?+eX= zwGRGJ{0z=C6jvQ%N&@1~@?cOU^K~lUvx=g5Li=IT{Bti+W)qr6Dk5T(n?NgFXsu7^ z3LRq1V7W!;k-mm85qE>a_X-Z~lE>I}=TkiK8)`7yaiuh$ zCC#@&<(}75OH35q7FMV~_``DA_-p)Z0Q!lk2CuV zf3T~WrOjd*dovyStX=_Jwj+^IzjUPP(Zq~F9(BAarGFpMf*!s!PlqUur5eKvp#2s? z%4wB|le1NbAnXu}HPI66P=)c&gwGAatWKFY$b+AxXj*+QzgtJHz1P|qOZ28@y6BNU z!&+R9v#Z67Ni}JqfN;E~=bWh}r?LoKjZUXSHrg7!p*e7BwRr6uS?jQp)^sUo-0aG! z?tGH?AU}EG1hQK*>!}ZOZFHbGc@9JS$ZNq+Le6XmsfhHX2W&mdTzNOzhF4b-4Ml_Y zuqs;PG=5Ka+2dksrk09Bn^3jQhe>s;Dl}h1`=Giki;>akt6a#Qbqe+|Gp~t*2{5%f z*yHF+%#0f&Xs~{2WFJbQfI{VS_~;pbLjFL-s%WuU3$>H z*ZJse{!FemwNxEh^*0pEa9rFvfAGq}Xpp{>3A;fLVJ-qU1l(XB;!YsydkKCK0D0=QdCt_T){OVS@&1wBeaPZkRSP9*}&~*gLDhAH@w?!g{{zUGj(Ww zwusBzT4=dg(l1-!X@MTjU|L8PNvX!9&(wx6*-4FyLDMhrLe#xuHH(gklT|i z<>Cxp-Coq=hkol$JPKI{;%)?ghYuuZenDl)FB!BM_H&Ochh+EH%99^*^@?Iv zOd4tPkNh^vSE%B1=yyMSL28rH_%6WhqUH>1caV3zG7j5}QDs>+>atEVBMcD*$@+{~ zvckUEHPEw8mFh8voT}rxykg$=9Wuo%o*HlsC`wEyv0Pbx8qfcZcy1n@rKAVkH=E5JRY9u~s%^;chK|1mJ0K73 zJ!DZP8NJ`twQW=nuR52WjXU-H^L5b7u!3m@g!xQvf16%nEyV^=2!LM&1@CL1!~T(~ zB@X7ZFcHB7IotU$_!4zEP2ezCUkB6zNnA8FZPDYK%X2lQFvj>yn0q)_YX`_g>kNqh zOqYFTx-YDb7NoGh5o-8iFUaf{;M=OI0ed%8RhO2rSp zITx}?wMQVz;moF$5!UzDz*#RKM}$h2eE}0d+?%b{p{#ouo>^tR)3$s3H^gI_fnyV~ zs`-Uh%Qo-{xmx>G!*0UZq&#?cJ+nQpwXLEW?`k+HC)YiAHuODMSSsN$%teE%Q=9DZ zX_@p16I#S}>k*|l6y>G^)p$1lBhZd?-{Msi>tzel>veviH$I4DyCpv7Xa7sG7+5pUfY9oR zp>s4{%9tzOC-xcg)!13kT@H(vQLG==(nZ&gW{ui1$A^O(XWgZ&NuXJk>lw&dFI>XL z+qThd1SS}IF zD=Sd04tkktjR0WrRqnv<&80b;tv+`D1_H-j>YM=D7uQ+>5BkC%Ru1IL8~ix9pWbUY zSkc%e?juu>G}BOSC&JPgd?NtBIkGbMOLIUv2){}IygA{{lVi)5=>#gtT_Cj9vT+1- z5e^Uzn}KF87Xf??y`!Hc!L8+I&(r=2w3kWbCgT_??9J7&VVJief@!GSA29};9J~l} zNcDwBW>@InIFlv#$9hM*GZs%Neu1n%~?j4L~jCWKj^+m_p-CHwK-07}@dfBl8B+62s>1mjew~wuF$u3wmIu^O%F# zf}H3NV{#)X=44%=)`&xY19w5*)m$xcHYSs{DW!=AscHg zp?c=>fvgSw+HF8nZVcWB-vnaZxKkJt9=ePUUIltu0661k`Af1WSO=Pcqr8;k(Thj~ z>VSbYg1h)5EyTdi3N?DBlhUGo*}JEFxm!i9*3P>!zK{wUK>XGzm%
    - - Switch Accounts - - - - - - - -
    {capitalize(clickedAccount.moniker)}
    - - {utils.cleanAddress(clickedAccount.address)} - - -
    -
    - setPassphrase(e.target.value)} - placeholder="Passphrase" - type="password" - /> -
    - - - - - + + + @@ -150,12 +127,9 @@ const Header: React.FunctionComponent = () => { noGutters={true} > - @@ -163,15 +137,25 @@ const Header: React.FunctionComponent = () => { ))} + + + View All + + {' '} {selected && ( - - Refresh - + <> + + {getLoading ? 'Refreshing...' : 'Refresh'} + {' '} + )} diff --git a/src/components/Loader.tsx b/src/components/Loader.tsx new file mode 100644 index 0000000..0ebabd8 --- /dev/null +++ b/src/components/Loader.tsx @@ -0,0 +1,24 @@ +import React from 'react'; + +import Image from 'react-bootstrap/Image'; + +import LoaderGif from '../assets/loader2.svg'; + +type Props = { + loading: boolean; + size?: number; +}; + +const Loader: React.FC = props => { + return !!props.loading ? ( + + ) : ( + <> + ); +}; + +export default Loader; diff --git a/src/components/NewAccountModal.tsx b/src/components/NewAccountModal.tsx new file mode 100644 index 0000000..554cd3e --- /dev/null +++ b/src/components/NewAccountModal.tsx @@ -0,0 +1,129 @@ +import React, { useEffect, useState } from 'react'; + +// import styled from 'styled-components'; + +import utils from 'evm-lite-utils'; + +import { Account } from 'evm-lite-core'; +import { useDispatch, useSelector } from 'react-redux'; +import { toast } from 'react-toastify'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import Modal from 'react-bootstrap/Modal'; +import Row from 'react-bootstrap/Row'; + +import Avatar from './Avatar'; + +import { createAccount } from '../modules/accounts'; +import { selectCreateAccountLoading } from '../selectors'; + +type Props = { + handleClose: () => void; + show: boolean; +}; + +const NewAccountModel: React.FC = props => { + const dispatch = useDispatch(); + + const [moniker, setMoniker] = useState(''); + const [passphrase, setPassphrase] = useState(''); + + const [account, setAccount] = useState(); + + const loading = useSelector(selectCreateAccountLoading); + + const create = async () => { + if (!utils.validMoniker(moniker)) { + toast.error( + 'Moniker can only include alphanumeric characters and `_`' + ); + return; + } + + if (passphrase.length < 3) { + toast.error('Passphrase must be longer than 3 characters'); + return; + } + + await dispatch(createAccount(moniker, passphrase)); + + props.handleClose(); + }; + + useEffect(() => { + setAccount(Account.new()); + }, []); + + const randomize = () => { + setAccount(Account.new()); + console.log(passphrase); + }; + + return ( + <> + +
    + + New Account + + + + + + + +
    {moniker || 'Moniker'}
    + + {utils.cleanAddress( + (account && account.address) || '' + )} + + +
    +
    +
    + + + + setMoniker(e.target.value) + } + placeholder="Moniker" + type="text" + /> + + + + + setPassphrase(e.target.value) + } + placeholder="Passphrase" + type="password" + /> + +
    + + + + +
    +
    + + ); +}; + +export default NewAccountModel; diff --git a/src/components/SelectAccountModal.tsx b/src/components/SelectAccountModal.tsx new file mode 100644 index 0000000..f25c963 --- /dev/null +++ b/src/components/SelectAccountModal.tsx @@ -0,0 +1,80 @@ +import React, { useState } from 'react'; + +import utils from 'evm-lite-utils'; + +import { useDispatch } from 'react-redux'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import Modal from 'react-bootstrap/Modal'; +import Row from 'react-bootstrap/Row'; + +import Avatar from './Avatar'; + +import { selectAccount } from '../modules/accounts'; + +import { MonikerEVMAccount } from '../monet'; + +const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); + +type Props = { + handleClose: () => void; + show: boolean; + account: MonikerEVMAccount; +}; + +const SelectAccountModal: React.FC = props => { + const dispatch = useDispatch(); + + const [passphrase, setPassphrase] = useState(''); + + const select = (moniker: string, pass: string) => + dispatch(selectAccount(moniker, pass)); + + const handleSwitchAccount = async () => { + await select(props.account.moniker, passphrase); + + props.handleClose(); + }; + + return ( + +
    + + Switch Accounts + + + + + + + +
    {capitalize(props.account.moniker)}
    + + {utils.cleanAddress(props.account.address)} + + +
    +
    + setPassphrase(e.target.value)} + placeholder="Passphrase" + type="password" + /> +
    + + + +
    +
    + ); +}; + +export default SelectAccountModal; diff --git a/src/components/SubHeader.tsx b/src/components/SubHeader.tsx new file mode 100644 index 0000000..9d69a43 --- /dev/null +++ b/src/components/SubHeader.tsx @@ -0,0 +1,68 @@ +import React from 'react'; + +import styled from 'styled-components'; + +import Container from 'react-bootstrap/Container'; +import Tab from 'react-bootstrap/Tab'; +import Tabs from 'react-bootstrap/Tabs'; +import Transfer from './Transfer'; + +const SContainer = styled.div` + background: #fff; + border-top: 1px solid #f3f3f3 !important; + border-bottom: 1px solid #f3f3f3 !important; + /* padding: 15px 0; */ + + .nav-tabs { + border-color: #f3f3f3; + } + + .nav-link.active { + background: #fff !important; + border-bottom: 0px solid #eee !important; + } + + .nav-link { + background: #fff !important; + border-top: none !important; + border-radius: 0 !important; + border-bottom: 1px solid #f3f3f3 !important; + font-size: 14px !important; + } + + .tab-content { + background: #fff; + padding: 20px 0; + } +`; + +const SubHeader: React.FC<{}> = () => { + return ( + + + + + + + + + + + + + When in the chronicle of wasted time I see descriptions + of the fairest wights, And beauty making beautiful old + rime, In praise of ladies dead and lovely knights, Then, + in the blazon of sweet beauty's best, Of hand, of foot, + of lip, of eye, of brow, I see their antique pen would + have express'd Even such a beauty as you master now. So + all their praises are but prophecies Of this our time, + all you prefiguring; + + + + + ); +}; + +export default SubHeader; diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index 324b86e..8994b25 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -8,12 +8,14 @@ import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; import Row from 'react-bootstrap/Row'; +import InputGroup from 'react-bootstrap/InputGroup'; import Avatar from '../components/Avatar'; -import { selectTransferLoading } from '../selectors'; +import { selectTransferLoading, selectAccountError } from '../selectors'; import { transfer } from '../modules/accounts'; +import Loader from './Loader'; function isLetter(str: string) { return str.length === 1 && str.match(/[a-z]/i); @@ -23,18 +25,29 @@ const STransfer = styled.div` padding-top: 10px; `; +const SLoader = styled(Loader)` + margin-left: 10px !important; +`; + const Transfer: React.FC<{}> = () => { const dispatch = useDispatch(); + const loading = useSelector(selectTransferLoading); + const error = useSelector(selectAccountError); const [to, setTo] = useState(''); const [value, setValue] = useState(''); - const makeTransfer = () => { + const makeTransfer = async () => { if (isLetter(value.slice(-1))) { - dispatch(transfer(to, value)); + await dispatch(transfer(to, value)); } else { - dispatch(transfer(to, value + 'T')); + await dispatch(transfer(to, value + 'T')); + } + + if (!error) { + setTo(''); + setValue(''); } }; @@ -53,6 +66,7 @@ const Transfer: React.FC<{}> = () => { setTo(e.target.value)} + value={to} type="text" placeholder="Enter address" /> @@ -63,27 +77,46 @@ const Transfer: React.FC<{}> = () => { - setValue(e.target.value)} - type="value" - placeholder="Amount" - /> + + + setValue(e.target.value) + } + value={value} + placeholder="Amount" + /> + + + Tenom + + + + - The amount will default to Tenom if no unit is - provided. + The amount will default to Tenom if no{' '} +
    + unit + {' '} + is provided. - + + + + diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx new file mode 100644 index 0000000..7af31ac --- /dev/null +++ b/src/containers/Account.tsx @@ -0,0 +1,105 @@ +import React from 'react'; + +import styled from 'styled-components'; + +import utils, { Currency } from 'evm-lite-utils'; + +import { useSelector } from 'react-redux'; + +import Col from 'react-bootstrap/Col'; +import Container from 'react-bootstrap/Container'; +import Jumbotron from 'react-bootstrap/Jumbotron'; +import Media from 'react-bootstrap/Media'; +import Row from 'react-bootstrap/Row'; + +import Avatar from '../components/Avatar'; +import Transfer from '../components/Transfer'; + +import { SContent } from '../components/styled'; + +import { selectedAccount } from '../selectors'; + +const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); + +const SJumbotron = styled(Jumbotron)` + box-shadow: 0 2px 20px -15px #ddd !important; +`; + +const SHeadingContainer = styled(Container)` + padding: 0 5px !important; +`; + +const Accounts: React.FunctionComponent<{}> = () => { + const selected = useSelector(selectedAccount); + + const renderUnlocked = () => ( + + + + + + ); + + const parseBalance = (balance: Currency) => { + const b = balance.format('T'); + const l = b.split('.'); + + if (l.length !== 2) { + return l.join('.'); + } + + if (l[1]) { + l[1] = l[1].slice(0, 4); + } + + return l.join('.') + 'T'; + }; + + return ( + <> + + + + + {selected ? ( + + + +

    {capitalize(selected.moniker)}

    +

    + {utils.cleanAddress( + selected.address + )} +

    +
    +
    + ) : ( + <> +

    Not Selected

    +

    Use the dropdown to select an account

    + + )} + + +

    Balance

    +

    + {selected + ? parseBalance(selected.balance) + : '-'} +

    + + +

    Nonce

    +

    + {selected ? selected.nonce : '-'} +

    + +
    +
    +
    + {selected && renderUnlocked()} + + ); +}; + +export default Accounts; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index f75314f..5e914cd 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,10 +1,9 @@ -import React from 'react'; +import React, { useEffect, useState } from 'react'; +import utils, { Currency } from 'evm-lite-utils'; import styled from 'styled-components'; -import utils from 'evm-lite-utils'; - -import { useSelector } from 'react-redux'; +import { useDispatch, useSelector } from 'react-redux'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; @@ -13,14 +12,34 @@ import Media from 'react-bootstrap/Media'; import Row from 'react-bootstrap/Row'; import Avatar from '../components/Avatar'; -import Transfer from '../components/Transfer'; +import SelectAccountModal from '../components/SelectAccountModal'; -import { SContent } from '../components/styled'; +import { MonikerEVMAccount } from '../monet'; +import { selectAccounts } from '../selectors'; -import { selectedAccount } from '../selectors'; +import { listAccounts } from '../modules/accounts'; const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); +type Props = { + handleClose: () => void; + show: boolean; +}; + +const SAccount = styled.div` + padding: 15px !important; + padding-top: 20px !important; + + &:hover { + cursor: pointer; + background: #f3f3f3; + } + + span { + font-size: 18px; + } +`; + const SJumbotron = styled(Jumbotron)` box-shadow: 0 2px 20px -15px #ddd !important; `; @@ -29,61 +48,120 @@ const SHeadingContainer = styled(Container)` padding: 0 5px !important; `; -const Accounts: React.FunctionComponent<{}> = () => { - const selected = useSelector(selectedAccount); +const SContainer = styled.div` + background: #fff; +`; + +const Accounts: React.FC = props => { + const dispatch = useDispatch(); + const accounts = useSelector(selectAccounts); + + const [show, setShow] = useState(false); + const [clickedAccount, setClickedAccount] = useState({ + address: '', + balance: new Currency(0), + nonce: 0, + bytecode: '', + moniker: '' + }); + + const handleShow = () => setShow(true); + const handleClose = () => setShow(false); + + const onAccountClickBinder = (account: MonikerEVMAccount) => (e: any) => { + setClickedAccount(account); + + handleShow(); + }; - const renderUnlocked = () => ( - <> - + const fetchAll = () => dispatch(listAccounts(true)); + + const parseBalance = (balance: Currency) => { + const b = balance.format('T'); + const l = b.split('.'); + + if (l.length !== 2) { + return l.join('.'); + } + + if (l[1]) { + l[1] = l[1].slice(0, 2); + } + + return l.join('.') + 'T'; + }; + + useEffect(() => { + fetchAll(); + }, []); + + const renderAccount = (a: MonikerEVMAccount) => { + return ( + - + + + + + +
    {capitalize(a.moniker)}
    +

    + {utils.cleanAddress(a.address)} +

    +
    +
    + + + + {parseBalance(a.balance)} + +
    Balance
    + + + {a.nonce} +
    Nonce
    + +
    -
    - - ); + + ); + }; return ( - <> + + - {selected ? ( - - - -

    {capitalize(selected.moniker)}

    -

    - {utils.cleanAddress( - selected.address - )} -

    -
    -
    - ) : ( - <> -

    Not Selected

    -

    Use the dropdown to select an account

    - - )} +

    All Accounts

    +

    Click on an account to make transfers

    -

    Balance

    -

    - {selected ? selected.balance.format('T') : '-'} +

    Total Balance

    +

    + {(accounts.length && + parseBalance( + accounts + .map(a => a.balance) + .reduce((a, c) => c.plus(a)) + )) || + '-'}

    -

    Nonce

    -

    - {selected ? selected.nonce : '-'} -

    +

    Count

    +

    {accounts.length}

    - {selected && renderUnlocked()} - + {accounts.map(a => renderAccount(a))} +
    ); }; diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx index f026159..8709f7f 100644 --- a/src/containers/Settings.tsx +++ b/src/containers/Settings.tsx @@ -10,6 +10,8 @@ import Container from 'react-bootstrap/Container'; import Form from 'react-bootstrap/Form'; import Row from 'react-bootstrap/Row'; +import Loader from '../components/Loader'; + import { SContent } from '../components/styled'; import { save } from '../modules/config'; @@ -50,33 +52,9 @@ const Settings: React.FC<{}> = () => { +

    Settings

    +
    - - - - - setGas(e.target.value) - } - type="text" - defaultValue={gas.toString()} - placeholder="Gas" - /> - - The default gas to be used for - all transactions. - - - - - - @@ -106,6 +84,34 @@ const Settings: React.FC<{}> = () => { The default port. + + + {' '} + + + + + + + + setGas(e.target.value) + } + type="text" + defaultValue={gas.toString()} + placeholder="Gas" + /> + + The default gas to be used for + all transactions. + +
    diff --git a/src/index.css b/src/index.css index 56c7af8..95f6e15 100644 --- a/src/index.css +++ b/src/index.css @@ -4,6 +4,12 @@ @import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap'); @import url('https://fonts.googleapis.com/css?family=Fira+Code&display=swap'); +/* Blue: #1f3b94 */ +/* Red: #5bc0de */ +/* Green: #5cb85c */ +/* Orange: #f0ad4e */ +/* Purple: #7B3992 */ + body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -23,7 +29,7 @@ h5 { } .bg-light { - background: rgba(255, 255, 255, 0.95) !important; + background: rgba(255, 255, 255, 1) !important; color: #000 !important; box-shadow: 0 4px 6px -10px #f1f1f1 !important; width: 100% !important; @@ -31,8 +37,7 @@ h5 { } a { - /* color: inherit !important; */ - color: rgba(0, 0, 0, 0.6); + color: #7b3992; } a:hover { @@ -61,6 +66,10 @@ p { border-radius: 5px !important; } +.btn:focus { + box-shadow: none !important; +} + .btn-primary { background: #1f4292 !important; border: none !important; @@ -83,6 +92,22 @@ p { color: white !important; } +.btn-success { + background-color: darkgreen; + border-color: darkgreen; +} + +.btn-outline-success { + border-color: darkgreen; + color: darkgreen !important; +} + +.btn-outline-success:hover { + color: #fff !important; + background-color: darkgreen !important; + border-color: darkgreen; +} + .btn-warning:hover { background: #e55e2b !important; border: none !important; @@ -97,7 +122,7 @@ p { } .modal-header { - border-bottom: 1px solid #f9f9f9 !important; + border-bottom: 1px solid #f3f3f3 !important; } .modal-body { @@ -105,7 +130,7 @@ p { } .modal-footer { - border-top: 1px solid #f9f9f9 !important; + border-top: 1px solid #f3f3f3 !important; } .mono { @@ -130,3 +155,7 @@ p { .dropdown-item:active { background: #f1f1f1; } + +hr { + border-color: #f3f3f3 !important; +} diff --git a/src/index.ts b/src/index.ts index 4658eda..1e432d8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -6,7 +6,7 @@ let main: BrowserWindow | null; function createWindow() { const icon = nativeImage.createFromPath( - path.join(__dirname, 'src/assets/monet_logo.png') + path.resolve(__dirname, './assets/monet_logo.png') ); main = new BrowserWindow({ diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index 448062c..c1c7f71 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -1,4 +1,4 @@ -import { Monet } from 'evm-lite-core'; +import { Account, Monet } from 'evm-lite-core'; import { Currency } from 'evm-lite-utils'; import { toast } from 'react-toastify'; @@ -16,6 +16,11 @@ const LIST_INIT = '@monet/accounts/LIST/INIT'; const LIST_SUCCESS = '@monet/accounts/LIST/SUCCESS'; const LIST_ERROR = '@monet/accounts/LIST/ERROR'; +// Creates account in keystore +const CREATE_INIT = '@monet/accounts/CREATE/INIT'; +const CREATE_SUCCESS = '@monet/accounts/CREATE/SUCCESS'; +const CREATE_ERROR = '@monet/accounts/CREATE/ERROR'; + // For transferring tokens/coins from an account const TRANSFER_INIT = '@monet/accounts/TRANSFER/INIT'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; @@ -84,7 +89,6 @@ export default function reducer( case GET_SELECTED_INIT: return { ...state, - selected: undefined, loading: { ...state.loading, get: true @@ -115,7 +119,6 @@ export default function reducer( case LIST_INIT: return { ...state, - all: [], error: undefined, loading: { ...state.loading, @@ -125,7 +128,7 @@ export default function reducer( case LIST_SUCCESS: return { ...state, - all: action.payload, + all: [...action.payload], loading: { ...state.loading, list: false @@ -169,6 +172,36 @@ export default function reducer( } }; + // Create account + case CREATE_INIT: + return { + ...state, + error: undefined, + loading: { + ...state.loading, + create: true + } + }; + case CREATE_SUCCESS: + return { + ...state, + error: undefined, + all: [...state.all, action.payload], + loading: { + ...state.loading, + create: false + } + }; + case CREATE_ERROR: + return { + ...state, + error: action.payload, + loading: { + ...state.loading, + create: false + } + }; + default: return state; } @@ -177,12 +210,16 @@ export default function reducer( export function getSelectedAccount(): ThunkResult> { return async (dispatch, getState) => { const state = getState(); - const selected = state.accounts.selected!; + const selected = { + ...state.accounts.selected! + }; dispatch({ type: GET_SELECTED_INIT }); + await new Promise(resolve => setTimeout(resolve, 1000)); + try { const n = new Monet( state.config.data.connection.host, @@ -243,7 +280,7 @@ export function selectAccount( payload: monikerAccount }); - await dispatch(getSelectedAccount()); + dispatch(getSelectedAccount()); } catch (e) { dispatch({ type: SELECT_ACCOUNT_ERROR, @@ -255,7 +292,9 @@ export function selectAccount( }; } -export function listAccounts(): ThunkResult> { +export function listAccounts( + fetch: boolean = false +): ThunkResult> { return async (dispatch, getState) => { let accounts: MonikerEVMAccount[] = []; @@ -279,6 +318,26 @@ export function listAccounts(): ThunkResult> { moniker })); + if (fetch) { + const n = new Monet( + config.data.connection.host, + config.data.connection.port + ); + + try { + await n.getInfo(); + + for (const a of accounts) { + const acc = await n.getAccount(a.address); + + a.balance = acc.balance; + a.nonce = acc.nonce; + } + } catch (e) { + // pass + } + } + dispatch({ type: LIST_SUCCESS, payload: accounts @@ -314,7 +373,9 @@ export function transfer( if (info) { try { const receipt = await node.transfer( - state.accounts.selected!, + Account.fromPrivateKey( + state.accounts.selected!.privateKey + ), to, new Currency(value), 21000, @@ -327,7 +388,7 @@ export function transfer( }); await dispatch(getSelectedAccount()); - toast.success('Transfer submitted'); + toast.success('Transfer successful'); } catch (e) { error(e.toString()); } @@ -337,3 +398,45 @@ export function transfer( } }; } + +export function createAccount( + moniker: string, + password: string +): ThunkResult> { + return async (dispatch, getState) => { + const { config } = getState(); + + dispatch({ + type: CREATE_INIT + }); + + try { + const datadir = new MonetDataDir(config.directory); + const keyfile = await datadir.newKeyfile(moniker, password); + + const account: MonikerEVMAccount = { + address: keyfile.address, + balance: new Currency(0), + nonce: 0, + bytecode: '', + moniker + }; + + dispatch({ + type: CREATE_SUCCESS, + payload: account + }); + + toast.success( + `Account created: 0x${account.address.slice(0, 15)}...` + ); + } catch (error) { + dispatch({ + type: CREATE_ERROR, + payload: error.toString() + }); + + toast.error(error.toString()); + } + }; +} diff --git a/src/modules/config.ts b/src/modules/config.ts index fc83f78..c6db8e2 100644 --- a/src/modules/config.ts +++ b/src/modules/config.ts @@ -199,6 +199,8 @@ export function save( type: SAVE_REQUEST }); + await new Promise(resolve => setTimeout(resolve, 500)); + try { const datadir = new MonetDataDir(state.config.directory); @@ -209,7 +211,9 @@ export function save( payload: newConfig }); - await dispatch(getSelectedAccount()); + if (state.accounts.selected) { + dispatch(getSelectedAccount()); + } toast.success(`Configuration saved.`); return newConfig; diff --git a/src/selectors/index.ts b/src/selectors/index.ts index 32f79c2..904c2c5 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -7,6 +7,14 @@ export const selectAccountReducer = (store: Store) => store.accounts; export const selectTransferLoading = (store: Store) => store.accounts.loading.transfer; +export const selectGetAccountLoading = (store: Store) => + store.accounts.loading.get; + +export const selectCreateAccountLoading = (store: Store) => + store.accounts.loading.create; + +export const selectAccountError = (store: Store) => store.accounts.error; + // config selectors export const selectConfig = (store: Store) => store.config.data; export const selectConfigSaveLoading = (store: Store) => diff --git a/yarn.lock b/yarn.lock index 0da9d84..08cce3b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,17 +15,17 @@ "@babel/highlight" "^7.0.0" "@babel/core@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.2.tgz#069a776e8d5e9eefff76236bc8845566bd31dd91" - integrity sha512-l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ== + version "7.6.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.4.tgz#6ebd9fe00925f6c3e177bb726a188b5f578088ff" + integrity sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.2" + "@babel/generator" "^7.6.4" "@babel/helpers" "^7.6.2" - "@babel/parser" "^7.6.2" + "@babel/parser" "^7.6.4" "@babel/template" "^7.6.0" - "@babel/traverse" "^7.6.2" - "@babel/types" "^7.6.0" + "@babel/traverse" "^7.6.3" + "@babel/types" "^7.6.3" convert-source-map "^1.1.0" debug "^4.1.0" json5 "^2.1.0" @@ -34,23 +34,12 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.5.5": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" - integrity sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ== +"@babel/generator@^7.6.3", "@babel/generator@^7.6.4": + version "7.6.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.4.tgz#a4f8437287bf9671b07f483b76e3bb731bc97671" + integrity sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w== dependencies: - "@babel/types" "^7.5.5" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/generator@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.2.tgz#dac8a3c2df118334c2a29ff3446da1636a8f8c03" - integrity sha512-j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ== - dependencies: - "@babel/types" "^7.6.0" + "@babel/types" "^7.6.3" jsesc "^2.5.1" lodash "^4.17.13" source-map "^0.5.0" @@ -110,52 +99,19 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.4.4", "@babel/parser@^7.5.5": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" - integrity sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g== +"@babel/parser@^7.6.0", "@babel/parser@^7.6.3", "@babel/parser@^7.6.4": + version "7.6.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.4.tgz#cb9b36a7482110282d5cb6dd424ec9262b473d81" + integrity sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A== -"@babel/parser@^7.6.0": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.0.tgz#3e05d0647432a8326cb28d0de03895ae5a57f39b" - integrity sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ== - -"@babel/parser@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.2.tgz#205e9c95e16ba3b8b96090677a67c9d6075b70a1" - integrity sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg== - -"@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.2": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" - integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== +"@babel/runtime@^7.1.2", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.2", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3": + version "7.6.3" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.3.tgz#935122c74c73d2240cafd32ddb5fc2a6cd35cf1f" + integrity sha512-kq6anf9JGjW8Nt5rYfEuGRaEAaH1mkv3Bbu6rYvLOpPh/RusSJXuKPEAoZ7L7gybZkchE8+NV5g9vKF4AGAtsA== dependencies: regenerator-runtime "^0.13.2" -"@babel/runtime@^7.4.0", "@babel/runtime@^7.5.5": - version "7.6.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.0.tgz#4fc1d642a9fd0299754e8b5de62c631cf5568205" - integrity sha512-89eSBLJsxNxOERC0Op4vd+0Bqm6wRMqMbFtV3i0/fbaWw/mJ8Q3eBvgX0G4SyrOOLCtbu98HspF8o09MRT+KzQ== - dependencies: - regenerator-runtime "^0.13.2" - -"@babel/runtime@^7.4.5": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.2.tgz#c3d6e41b304ef10dcf13777a33e7694ec4a9a6dd" - integrity sha512-EXxN64agfUqqIGeEjI5dL5z0Sw0ZwWo1mLTi4mQowCZ42O59b7DRpZAnTC6OqdF28wMBMFKNb/4uFGrVaigSpg== - dependencies: - regenerator-runtime "^0.13.2" - -"@babel/template@^7.1.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" - integrity sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.4.4" - "@babel/types" "^7.4.4" - -"@babel/template@^7.6.0": +"@babel/template@^7.1.0", "@babel/template@^7.6.0": version "7.6.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6" integrity sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ== @@ -164,49 +120,25 @@ "@babel/parser" "^7.6.0" "@babel/types" "^7.6.0" -"@babel/traverse@^7.0.0": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.5.5.tgz#f664f8f368ed32988cd648da9f72d5ca70f165bb" - integrity sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ== - dependencies: - "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.5.5" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.5.5" - "@babel/types" "^7.5.5" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.6.2": - version "7.6.2" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.2.tgz#b0e2bfd401d339ce0e6c05690206d1e11502ce2c" - integrity sha512-8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ== +"@babel/traverse@^7.0.0", "@babel/traverse@^7.6.2", "@babel/traverse@^7.6.3": + version "7.6.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.3.tgz#66d7dba146b086703c0fb10dd588b7364cec47f9" + integrity sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw== dependencies: "@babel/code-frame" "^7.5.5" - "@babel/generator" "^7.6.2" + "@babel/generator" "^7.6.3" "@babel/helper-function-name" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.6.2" - "@babel/types" "^7.6.0" + "@babel/parser" "^7.6.3" + "@babel/types" "^7.6.3" debug "^4.1.0" globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.4.4", "@babel/types@^7.5.5": - version "7.5.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.5.5.tgz#97b9f728e182785909aa4ab56264f090a028d18a" - integrity sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw== - dependencies: - esutils "^2.0.2" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.6.0": - version "7.6.1" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.6.1.tgz#53abf3308add3ac2a2884d539151c57c4b3ac648" - integrity sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g== +"@babel/types@^7.0.0", "@babel/types@^7.4.4", "@babel/types@^7.6.0", "@babel/types@^7.6.3": + version "7.6.3" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.6.3.tgz#3f07d96f854f98e2fbd45c64b0cb942d11e8ba09" + integrity sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA== dependencies: esutils "^2.0.2" lodash "^4.17.13" @@ -225,16 +157,16 @@ sumchecker "^3.0.0" "@emotion/is-prop-valid@^0.8.1": - version "0.8.2" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.2.tgz#b9692080da79041683021fcc32f96b40c54c59dc" - integrity sha512-ZQIMAA2kLUWiUeMZNJDTeCwYRx1l8SQL0kHktze4COT22occKpDML1GDUXP5/sxhOMrZO8vZw773ni4H5Snrsg== + version "0.8.3" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.3.tgz#cbe62ddbea08aa022cdf72da3971570a33190d29" + integrity sha512-We7VBiltAJ70KQA0dWkdPMXnYoizlxOXpvtjmu5/MBnExd+u0PGgV27WCYanmLAbCwAU30Le/xA0CQs/F/Otig== dependencies: - "@emotion/memoize" "0.7.2" + "@emotion/memoize" "0.7.3" -"@emotion/memoize@0.7.2": - version "0.7.2" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.2.tgz#7f4c71b7654068dfcccad29553520f984cc66b30" - integrity sha512-hnHhwQzvPCW1QjBWFyBtsETdllOM92BfrKWbUTmh9aeOlcVOiXvlPsK4104xH8NsaKfg86PTFsWkueQeUfMA/w== +"@emotion/memoize@0.7.3": + version "0.7.3" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.3.tgz#5b6b1c11d6a6dddf1f2fc996f74cf3b219644d78" + integrity sha512-2Md9mH6mvo+ygq1trTeVp2uzAKwE2P7In0cRpD/M9Q70aH8L+rxMLbb3JCN2JoSWsV2O+DdFjfbbXoMoLBczow== "@emotion/unitless@^0.7.0": version "0.7.4" @@ -254,18 +186,6 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== -"@react-bootstrap/react-popper@1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@react-bootstrap/react-popper/-/react-popper-1.2.1.tgz#4edf4851d5b4dcf2eb6b264ebbed1a7b7654177b" - integrity sha512-4l3q7LcZEhrSkI4d3Ie3g4CdrXqqTexXX4PFT45CB0z5z2JUbaxgRwKNq7r5j2bLdVpZm+uvUGqxJw8d9vgbJQ== - dependencies: - babel-runtime "6.x.x" - create-react-context "^0.2.1" - popper.js "^1.14.4" - prop-types "^15.6.1" - typed-styles "^0.0.5" - warning "^3.0.0" - "@restart/context@^2.1.4": version "2.1.4" resolved "https://registry.yarnpkg.com/@restart/context/-/context-2.1.4.tgz#a99d87c299a34c28bd85bb489cb07bfd23149c02" @@ -315,9 +235,9 @@ "@types/node" "*" "@types/history@*": - version "4.7.2" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.2.tgz#0e670ea254d559241b6eeb3894f8754991e73220" - integrity sha512-ui3WwXmjTaY73fOQ3/m3nnajU/Orhi6cEu5rzX+BrAAJxa3eITXZ5ch9suPqtM03OWhAHhPSyBGCN4UKoxO20Q== + version "4.7.3" + resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.3.tgz#856c99cdc1551d22c22b18b5402719affec9839a" + integrity sha512-cS5owqtwzLN5kY+l+KgKdRJ/Cee8tlmQoGQuIE9tWnSmS3JMKzmxo2HIAk2wODMifGwO20d62xZQLYz+RLfXmw== "@types/hoist-non-react-statics@^3.3.0": version "3.3.1" @@ -339,25 +259,20 @@ dependencies: "@types/node" "*" -"@types/node@*": - version "12.6.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.6.8.tgz#e469b4bf9d1c9832aee4907ba8a051494357c12c" - integrity sha512-aX+gFgA5GHcDi89KG5keey2zf0WfZk/HAQotEamsK2kbey+8yGKcson0hbK8E+v0NArlCJQCqMP161YhV6ZXLg== +"@types/node@*", "@types/node@^12.7.8": + version "12.11.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.11.2.tgz#75ba3beda30d690b89a5089ca1c6e8e386150b76" + integrity sha512-dsfE4BHJkLQW+reOS6b17xhZ/6FB1rB8eRRvO08nn5o+voxf3i74tuyFWNH6djdfgX7Sm5s6LD8t6mJug4dpDw== "@types/node@^10.12.18": - version "10.14.18" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.18.tgz#b7d45fc950e6ffd7edc685e890d13aa7b8535dce" - integrity sha512-ryO3Q3++yZC/+b8j8BdKd/dn9JlzlHBPdm80656xwYUdmPkpTGTjkAdt6BByiNupGPE8w0FhBgvYy/fX9hRNGQ== - -"@types/node@^12.7.8": - version "12.7.8" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.7.8.tgz#cb1bf6800238898bc2ff6ffa5702c3cadd350708" - integrity sha512-FMdVn84tJJdV+xe+53sYiZS4R5yn1mAIxfj+DVoNiQjTYz1+OYmjwEZr1ev9nU0axXwda0QDbYl06QHanRVH3A== + version "10.14.22" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.22.tgz#34bcdf6b6cb5fc0db33d24816ad9d3ece22feea4" + integrity sha512-9taxKC944BqoTVjE+UT3pQH0nHZlTvITwfsOZqyc+R3sfJuxaTtxWjfn1K2UlxyPcKHf0rnaXcVFrS9F9vf0bw== "@types/prop-types@*": - version "15.7.1" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.1.tgz#f1a11e7babb0c3cad68100be381d1e064c68f1f6" - integrity sha512-CFzn9idOEpHrgdw8JsoTkaDDyRWk1jrzIV8djzcgpq0y9tG4B4lFT+Nxh52DVpDXV+n4+NPNv7M1Dj5uMp6XFg== + version "15.7.3" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" + integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== "@types/react-alert@^5.2.0": version "5.2.0" @@ -367,24 +282,24 @@ "@types/react" "*" "@types/react-dom@^16.9.1": - version "16.9.1" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.1.tgz#79206237cba9532a9f870b1cd5428bef6b66378c" - integrity sha512-1S/akvkKr63qIUWVu5IKYou2P9fHLb/P2VAwyxVV85JGaGZTcUniMiTuIqM3lXFB25ej6h+CYEQ27ERVwi6eGA== + version "16.9.2" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.2.tgz#90f9e6c161850be1feb31d2f448121be2a4f3b47" + integrity sha512-hgPbBoI1aTSTvZwo8HYw35UaTldW6n2ETLvHAcfcg1FaOuBV3olmyCe5eMpx2WybWMBPv0MdU2t5GOcQhP+3zA== dependencies: "@types/react" "*" "@types/react-native@*": - version "0.60.2" - resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.60.2.tgz#2dca78481a904419c2a5907288dd97d1090c6e3c" - integrity sha512-K4+/etirpv52xu24xAc++OdhbD0VQEt0Kq0h6dZrLU82OlA+I7BhpKF3JBvx9tbmrFaZDxhHp8N4TEvRYS4fdQ== + version "0.60.21" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.60.21.tgz#81a41cae7b232f52ab3983d854f4a0b0df79531e" + integrity sha512-E7F+P/UG4Utu+kh8Hy544i0m4CzpHw1awNX6hVfkhlu4mXSlAn6KLZzKEkPBbHm7g1kspmZTiuP23HAKZpASPw== dependencies: "@types/prop-types" "*" "@types/react" "*" "@types/react-redux@^7.1.4": - version "7.1.4" - resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.4.tgz#e0d02a073e730b8b58a6341bddca2ea692ff0bce" - integrity sha512-SUV/7d+4L7C1Db/D4pqASgN1V1U2HnDEhEol9lYpPSguS76xFboZzf5ha2hTz6v31cUewyC7WksMh1q8JxhebQ== + version "7.1.5" + resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-7.1.5.tgz#c7a528d538969250347aa53c52241051cf886bd3" + integrity sha512-ZoNGQMDxh5ENY7PzU7MVonxDzS1l/EWiy8nUhDqxFqUZn4ovboCyvk4Djf68x6COb7vhGTKjyjxHxtFdAA5sUA== dependencies: "@types/hoist-non-react-statics" "^3.3.0" "@types/react" "*" @@ -401,25 +316,17 @@ "@types/react-router" "*" "@types/react-router@*": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.0.3.tgz#855a1606e62de3f4d69ea34fb3c0e50e98e964d5" - integrity sha512-j2Gge5cvxca+5lK9wxovmGPgpVJMwjyu5lTA/Cd6fLGoPq7FXcUE1jFkEdxeyqGGz8VfHYSHCn5Lcn24BzaNKA== + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.2.tgz#41e5e6aa333a7b9a2bfdac753c04e1ca4b3e0d21" + integrity sha512-euC3SiwDg3NcjFdNmFL8uVuAFTpZJm0WMFUw+4eXMUnxa7M9RGFEG0szt0z+/Zgk4G2k9JBFhaEnY64RBiFmuw== dependencies: "@types/history" "*" "@types/react" "*" -"@types/react@*": - version "16.8.24" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.8.24.tgz#8d1ea1fcbfa214220da3d3c04e506f1077b0deac" - integrity sha512-VpFHUoD37YNY2+lr/+c7qL/tZsIU/bKuskUF3tmGUArbxIcQdb5j3zvo4cuuzu2A6UaVmVn7sJ4PgWYNFEBGzg== - dependencies: - "@types/prop-types" "*" - csstype "^2.2.0" - -"@types/react@^16.9.3": - version "16.9.3" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.3.tgz#6d13251e441a3e67fb60d719d1fc8785b984a2ec" - integrity sha512-Ogb2nSn+2qQv5opoCv7Ls5yFxtyrdUYxp5G+SWTrlGk7dmFKw331GiezCgEZj9U7QeXJi1CDtws9pdXU1zUL4g== +"@types/react@*", "@types/react@^16.8.23", "@types/react@^16.9.3": + version "16.9.9" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.9.tgz#a62c6f40f04bc7681be5e20975503a64fe783c3a" + integrity sha512-L+AudFJkDukk+ukInYvpoAPyJK5q1GanFOINOJnM0w6tUgITuWvJ4jyoBPFL7z4/L8hGLd+K/6xR5uUjXu0vVg== dependencies: "@types/prop-types" "*" csstype "^2.2.0" @@ -467,9 +374,9 @@ source-map "^0.6.1" "@types/webpack@^4.39.2": - version "4.39.2" - resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.39.2.tgz#fcaa85607a9bdd0e8f86a350f239ff08aede8584" - integrity sha512-3c7+vcmyyIi3RBoOdXs8k3E9rQVIy6yOBqK0DFk6lnJ76JUfbDBWbEf1JflzyPQf56W4ToE+2YPnbxbucniW5w== + version "4.39.5" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.39.5.tgz#3671b65928d9e0c6fcd4adff3f8167d48b174681" + integrity sha512-9twG6D97ao13MBLvigwfBJe6rxtb04UY3TcYHBYkW5sXZjUrNhqIRxLYg74VzK/YAE8xlVhOyd+3Whr7E5RrBA== dependencies: "@types/anymatch" "*" "@types/node" "*" @@ -652,16 +559,11 @@ acorn@^6.2.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== -address@1.1.2: +address@1.1.2, address@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== -address@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/address/-/address-1.1.0.tgz#ef8e047847fcd2c5b6f50c16965f924fd99fe709" - integrity sha512-4diPfzWbLEIElVG4AnqP+00SULlPzNuyJFNnmMrLgyaxG6tZXJ1sn7mjBu4fHrJE+Yp/jgylOweJn2xsLMFggQ== - ajv-errors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -814,11 +716,6 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - asar@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/asar/-/asar-2.0.1.tgz#8518a1c62c238109c15a5f742213e83a09b9fd38" @@ -876,12 +773,7 @@ async-limiter@~1.0.0: resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - -async@^2.5.0: +async@^2.5.0, async@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== @@ -904,17 +796,17 @@ author-regex@^1.0.0: integrity sha1-0IiFvmubv5Q5/gh8dihyRfCoFFA= autoprefixer@^9.6.1: - version "9.6.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.1.tgz#51967a02d2d2300bb01866c1611ec8348d355a47" - integrity sha512-aVo5WxR3VyvyJxcJC3h4FKfwCQvQWb1tSI5VHNibddCVWrcD1NvlxEweg3TSgiPztMnWfjpy2FURKA2kvDE+Tw== + version "9.6.5" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.5.tgz#98f4afe7e93cccf323287515d426019619775e5e" + integrity sha512-rGd50YV8LgwFQ2WQp4XzOTG69u1qQsXn0amww7tjqV5jJuNazgFKYEVItEBngyyvVITKOg20zr2V+9VsrXJQ2g== dependencies: - browserslist "^4.6.3" - caniuse-lite "^1.0.30000980" + browserslist "^4.7.0" + caniuse-lite "^1.0.30000999" chalk "^2.4.2" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^7.0.17" - postcss-value-parser "^4.0.0" + postcss "^7.0.18" + postcss-value-parser "^4.0.2" aws-sign2@~0.7.0: version "0.7.0" @@ -1180,7 +1072,7 @@ babel-preset-react@^6.24.1: babel-plugin-transform-react-jsx-source "^6.22.0" babel-preset-flow "^6.23.0" -babel-runtime@6.x.x, babel-runtime@^6.22.0, babel-runtime@^6.26.0: +babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= @@ -1235,9 +1127,9 @@ balanced-match@^1.0.0: integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= base64-js@^1.0.2, base64-js@^1.2.3: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== + version "1.3.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== base@^0.11.1: version "0.11.2" @@ -1301,9 +1193,9 @@ bindings@^1.2.1: file-uri-to-path "1.0.0" bluebird@^3.1.1, bluebird@^3.5.0, bluebird@^3.5.5: - version "3.5.5" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.5.tgz#a8d0afd73251effbbd5fe384a77d73003c17a71f" - integrity sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w== + version "3.7.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.1.tgz#df70e302b471d7473489acf26a93d63b53f874de" + integrity sha512-DdmyoGCleJnkbp3nkbxTLJ18rjDsE4yCggEwKNXkeV123sPNfOCYeDoeuOY+F2FrSjO1YXcTU+dsy96KMy+gcg== bn.js@4.11.6: version "4.11.6" @@ -1457,14 +1349,14 @@ browserslist@4.7.0: electron-to-chromium "^1.3.247" node-releases "^1.1.29" -browserslist@^4.6.3: - version "4.6.6" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.6.6.tgz#6e4bf467cde520bc9dbdf3747dafa03531cec453" - integrity sha512-D2Nk3W9JL9Fp/gIcWei8LrERCS+eXu9AM5cfXA8WEZ84lFks+ARnZ0q/R69m2SV3Wjma83QDDPxsNKXUwdIsyA== +browserslist@^4.7.0: + version "4.7.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.1.tgz#bd400d1aea56538580e8c4d5f1c54ac11b5ab468" + integrity sha512-QtULFqKIAtiyNx7NhZ/p4rB8m3xDozVo/pi5VgTlADLF2tNigz/QH+v0m5qhn7XfHT7u+607NcCNOnC0HZAlMg== dependencies: - caniuse-lite "^1.0.30000984" - electron-to-chromium "^1.3.191" - node-releases "^1.1.25" + caniuse-lite "^1.0.30000999" + electron-to-chromium "^1.3.284" + node-releases "^1.1.36" buffer-alloc-unsafe@^1.1.0: version "1.1.0" @@ -1534,9 +1426,9 @@ bytes@3.1.0: integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== cacache@^12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.2.tgz#8db03205e36089a3df6954c66ce92541441ac46c" - integrity sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg== + version "12.0.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.3.tgz#be99abba4e1bf5df461cd5a2c1071fc432573390" + integrity sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw== dependencies: bluebird "^3.5.5" chownr "^1.1.1" @@ -1637,15 +1529,10 @@ camelize@^1.0.0: resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= -caniuse-lite@^1.0.30000980, caniuse-lite@^1.0.30000984: - version "1.0.30000988" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000988.tgz#742f35ec1b8b75b9628d705d7652eea1fef983db" - integrity sha512-lPj3T8poYrRc/bniW5SQPND3GRtSrQdUM/R4mCYTbZxyi3jQiggLvZH4+BYUuX0t4TXjU+vMM7KFDQg+rSzZUQ== - -caniuse-lite@^1.0.30000989: - version "1.0.30000997" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000997.tgz#ba44a606804f8680894b7042612c2c7f65685b7e" - integrity sha512-BQLFPIdj2ntgBNWp9Q64LGUIEmvhKkzzHhUHR3CD5A9Lb7ZKF20/+sgadhFap69lk5XmK1fTUleDclaRFvgVUA== +caniuse-lite@^1.0.30000989, caniuse-lite@^1.0.30000999: + version "1.0.30001002" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001002.tgz#ba999a737b1abd5bf0fd47efe43a09b9cadbe9b0" + integrity sha512-pRuxPE8wdrWmVPKcDmJJiGBxr6lFJq4ivdSeo9FTmGj5Rb8NX3Mby2pARG57MXF15hYAhZ0nHV5XxT2ig4bz3g== caseless@~0.12.0: version "0.12.0" @@ -1677,26 +1564,7 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@^2.0.2, chokidar@^2.0.4: - version "2.1.6" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" - integrity sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -chokidar@^2.1.8: +chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== @@ -1716,9 +1584,9 @@ chokidar@^2.1.8: fsevents "^1.2.7" chownr@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" - integrity sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A== + version "1.1.3" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz#42d837d5239688d55f303003a508230fa6727142" + integrity sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw== chrome-trace-event@^1.0.2: version "1.0.2" @@ -1837,9 +1705,9 @@ commander@2.17.x: integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== commander@^2.12.1, commander@^2.20.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" - integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== commander@~2.19.0: version "2.19.0" @@ -1896,6 +1764,16 @@ concat-stream@1.6.2, concat-stream@^1.5.0: readable-stream "^2.2.2" typedarray "^0.0.6" +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + concurrently@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/concurrently/-/concurrently-4.1.2.tgz#1a683b2b5c41e9ed324c9002b9f6e4c6e1f3b6d7" @@ -1979,15 +1857,10 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= - core-js@^2.4.0: - version "2.6.9" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" - integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== + version "2.6.10" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.10.tgz#8a5b8391f8cc7013da703411ce5b585706300d7f" + integrity sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" @@ -2035,14 +1908,6 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: safe-buffer "^5.0.1" sha.js "^2.4.8" -create-react-context@^0.2.1: - version "0.2.3" - resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz#9ec140a6914a22ef04b8b09b7771de89567cb6f3" - integrity sha512-CQBmD0+QGgTaxDL3OX1IDXYqjkp2It4RIbcb99jS6AEg27Ga+a9G3JtK6SIu0HBwPLZlmwt9F7UwWA4Bn92Rag== - dependencies: - fbjs "^0.8.0" - gud "^1.0.0" - create-react-context@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.3.0.tgz#546dede9dc422def0d3fc2fe03afe0bc0f4f7d8c" @@ -2137,9 +2002,9 @@ css-select@^1.1.0: nth-check "~1.0.1" css-to-react-native@^2.2.2: - version "2.3.1" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.3.1.tgz#cf0f61e0514846e2d4dc188b0886e29d8bef64a2" - integrity sha512-yO+oEx1Lf+hDKasqQRVrAvzMCz825Huh1VMlEEDlRWyAhFb/FWb6I0KpEF1PkyKQ7NEdcx9d5M2ZEWgJAsgPvQ== + version "2.3.2" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.3.2.tgz#e75e2f8f7aa385b4c3611c52b074b70a002f2e7d" + integrity sha512-VOFaeZA053BqvvvqIA8c9n0+9vFppVBAHCp6JgFTtTMU3Mzi+XnelJ9XC9ul3BqFzZyQ5N+H0SnwsWT2Ebchxw== dependencies: camelize "^1.0.0" css-color-keywords "^1.0.0" @@ -2155,10 +2020,10 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@^2.2.0, csstype@^2.6.6: - version "2.6.6" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.6.tgz#c34f8226a94bbb10c32cc0d714afdf942291fc41" - integrity sha512-RpFbQGUE74iyPgvr46U9t1xoQBM8T4BL8SxrN66Le2xYAPSaDJJKeztV3awugusb3g3G9iL8StmkBBXhcbbXhg== +csstype@^2.2.0, csstype@^2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.7.tgz#20b0024c20b6718f4eda3853a1f5a1cce7f5e4a5" + integrity sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ== cuint@^0.2.2: version "0.2.2" @@ -2172,10 +2037,10 @@ currently-unhandled@^0.4.1: dependencies: array-find-index "^1.0.1" -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= +cyclist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" + integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= dashdash@^1.12.0: version "1.14.1" @@ -2201,7 +2066,7 @@ debug@2.6.9, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6. dependencies: ms "2.0.0" -debug@^3.0.0, debug@^3.1.0, debug@^3.2.5, debug@^3.2.6: +debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.5, debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== @@ -2238,9 +2103,16 @@ deep-diff@^0.3.5: integrity sha1-wB3mPvsO7JeYgB1Ax+Da4ltYLIQ= deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= + version "1.1.0" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.0.tgz#3103cdf8ab6d32cf4a8df7865458f2b8d33f3745" + integrity sha512-ZbfWJq/wN1Z273o7mUSjILYqehAktR2NVoSrOukDkU9kg2v/Uv89yU4Cvz8seJeAmtN5oqiefKq8FPuXOboqLw== + dependencies: + is-arguments "^1.0.4" + is-date-object "^1.0.1" + is-regex "^1.0.4" + object-is "^1.0.1" + object-keys "^1.1.1" + regexp.prototype.flags "^1.2.0" deep-extend@^0.6.0: version "0.6.0" @@ -2410,20 +2282,20 @@ dom-helpers@^3.4.0: "@babel/runtime" "^7.1.2" dom-helpers@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.0.tgz#57a726de04abcc2a8bbfe664b3e21c584bde514e" - integrity sha512-zRRYDhpiKuAJHasOqCm7lBnsd22nrM4+OYI4ASWCxen+ocTMl7BIAKgGag97TlLiTl6rrau5aPe1VGUm9jQBng== + version "5.1.2" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.2.tgz#217f2e0040697d3309d45d761a337f1d3fa5d1c6" + integrity sha512-VrfjMjIzNgn2oB49wKl85fgs12ELjK0npu5Oryaiazyc6WuekO1go0E//0RJ8JvsBlfaAwq+IgX9M0XhwlEENA== dependencies: - "@babel/runtime" "^7.5.5" - csstype "^2.6.6" + "@babel/runtime" "^7.6.3" + csstype "^2.6.7" dom-serializer@0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" - integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== + version "0.2.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.1.tgz#13650c850daffea35d8b626a4cfc4d3a17643fdb" + integrity sha512-sK3ujri04WyjwQXVoK4PU3y8ula1stq10GJZpqHIUgoGZdsGzAGu65BnU3d08aTVSvO7mGPZUc0wTEDL+qGE0Q== dependencies: - domelementtype "^1.3.0" - entities "^1.1.1" + domelementtype "^2.0.1" + entities "^2.0.0" dom-walk@^0.1.0: version "0.1.1" @@ -2435,11 +2307,16 @@ domain-browser@^1.1.1: resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: +domelementtype@1, domelementtype@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== +domelementtype@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" + integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== + domhandler@^2.3.0: version "2.4.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" @@ -2530,9 +2407,9 @@ electron-notarize@^0.1.1: fs-extra "^8.0.1" electron-osx-sign@^0.4.11: - version "0.4.13" - resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.4.13.tgz#4f77f0ff2f5cd71b91c1e6ce550c3a2937ebbef2" - integrity sha512-+44lasF26lSBLh9HDG6TGpPjuqqtWGD9Pcp+YglE8gyf1OGYdbW8UCIshKPh69O/AcdvDB0ohaTYQz3nbGPbtw== + version "0.4.14" + resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.4.14.tgz#770397c0eb604adfe8a3ec044795db3c123e59d3" + integrity sha512-72vtrz9I3dOeFDaNvO5thwIjrimDiXMmYEbN0hEBqnvcSSMOWugjim2wiY9ox3dhuBFUhxp3owmuZCoH3Ij08A== dependencies: bluebird "^3.5.0" compare-version "^0.1.2" @@ -2564,39 +2441,21 @@ electron-packager@^14.0.6: semver "^6.0.0" yargs-parser "^13.0.0" -electron-to-chromium@^1.3.191: - version "1.3.209" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.209.tgz#cd43879f1d3fb85c75bb843fb11a828570fa1ce4" - integrity sha512-KxRvLp5jUapyKIcMaecwgmUpJEsJKuHn0DJJPZjZh2valqYlzdmGvaE/nTAqwKqQwf0jIKv7Go4FYHu9wKWzOg== - -electron-to-chromium@^1.3.247: - version "1.3.269" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.269.tgz#3e00cc9266a0123fc2e7b4f290899e257200e6e3" - integrity sha512-t2ZTfo07HxkxTOUbIwMmqHBSnJsC9heqJUm7LwQu2iSk0wNhG4H5cMREtb8XxeCrQABDZ6IqQKY3yZq+NfAqwg== +electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.284: + version "1.3.292" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.292.tgz#7812fc5138619342f1dd5823df6e9cbb7d2820e9" + integrity sha512-hqkem5ANpt6mxVXmhAmlbdG8iicuyM/jEYgmP1tiHPeOLyZoTyGUzrDmJS/xyrrZy9frkW1uQcubicu7f6DS5g== electron@^6.0.10: - version "6.0.10" - resolved "https://registry.yarnpkg.com/electron/-/electron-6.0.10.tgz#3468547640c98ed46060711ca70f43d0b2e40818" - integrity sha512-eTFm6uTn7NKZE1OtSZSOxNuOrCXXeUR0U3vdF3R00byB7mrNe5AOaXEDDMwtzRGGY1jMuUX9Z7RvgXaCXRYSmw== + version "6.1.0" + resolved "https://registry.yarnpkg.com/electron/-/electron-6.1.0.tgz#f816347cc0b21cb231b829a4ba5133fbfbbbe100" + integrity sha512-CGdM6671gA0WUmsQCVO3stqpvm6/x+S+MkKlqgsk2N3GXnIa3KkfR8k4YNp8gnCgLSZQ0yucFQB/DyEYSjrzrA== dependencies: "@types/node" "^10.12.18" electron-download "^4.1.0" extract-zip "^1.0.3" -elliptic@^6.0.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.0.tgz#2b8ed4c891b7de3200e14412a5b8248c7af505ca" - integrity sha512-eFOJTMyCYb7xtE/caJ6JJu+bhi67WCYNbkGSknu20pmM8Ke/bqOfdnZWxyoGN26JgfxTbXrsCkEw4KheCT/KGg== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -elliptic@^6.4.0: +elliptic@^6.0.0, elliptic@^6.4.0: version "6.5.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz#c380f5f909bf1b9b4428d028cd18d3b0efd6b52b" integrity sha512-xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg== @@ -2624,21 +2483,14 @@ encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" -enhanced-resolve@4.1.0, enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: +enhanced-resolve@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== @@ -2647,11 +2499,25 @@ enhanced-resolve@4.1.0, enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: memory-fs "^0.4.0" tapable "^1.0.0" +enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz#2937e2b8066cd0fe7ce0990a98f0d71a35189f66" + integrity sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA== + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.5.0" + tapable "^1.0.0" + entities@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== +entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.0.tgz#68d6084cab1b079767540d80e56a39b423e4abf4" + integrity sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw== + env-paths@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-1.0.0.tgz#4168133b42bb05c38a35b1ae4397c8298ab369e0" @@ -2676,10 +2542,10 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.13.0: - version "1.14.2" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.14.2.tgz#7ce108fad83068c8783c3cdf62e504e084d8c497" - integrity sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg== +es-abstract@^1.13.0, es-abstract@^1.5.1: + version "1.16.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d" + integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg== dependencies: es-to-primitive "^1.2.0" function-bind "^1.1.1" @@ -2689,20 +2555,8 @@ es-abstract@^1.13.0: is-regex "^1.0.4" object-inspect "^1.6.0" object-keys "^1.1.1" - string.prototype.trimleft "^2.0.0" - string.prototype.trimright "^2.0.0" - -es-abstract@^1.5.1: - version "1.13.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" - integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== - dependencies: - es-to-primitive "^1.2.0" - function-bind "^1.1.1" - has "^1.0.3" - is-callable "^1.1.4" - is-regex "^1.0.4" - object-keys "^1.0.12" + string.prototype.trimleft "^2.1.0" + string.prototype.trimright "^2.1.0" es-to-primitive@^1.2.0: version "1.2.0" @@ -2744,9 +2598,9 @@ esrecurse@^4.1.0: estraverse "^4.1.0" estraverse@^4.1.0, estraverse@^4.1.1: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== esutils@^2.0.2: version "2.0.3" @@ -2775,10 +2629,10 @@ ethjs-unit@^0.1.6: bn.js "4.11.6" number-to-bn "1.7.0" -eventemitter3@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" - integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== +eventemitter3@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" + integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg== events@^3.0.0: version "3.0.0" @@ -3035,19 +2889,6 @@ faye-websocket@~0.11.1: dependencies: websocket-driver ">=0.5.1" -fbjs@^0.8.0: - version "0.8.17" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" - integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - fd-slicer@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" @@ -3173,11 +3014,11 @@ flush-write-stream@^1.0.0: readable-stream "^2.3.6" follow-redirects@^1.0.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.7.0.tgz#489ebc198dc0e7f64167bd23b03c4c19b5784c76" - integrity sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.9.0.tgz#8d5bcdc65b7108fe1508649c79c12d732dcedb4f" + integrity sha512-CRcPzsSIbXyVDl0QI01muNDu69S8trU4jArW9LpOt2WtC6LyUJetcIrmfHsRBx7/Jb6GHJUiuqyYxPooFfNt6A== dependencies: - debug "^3.2.6" + debug "^3.0.0" for-each@^0.3.3: version "0.3.3" @@ -3196,7 +3037,7 @@ forever-agent@~0.6.1: resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= -fork-ts-checker-webpack-plugin@1.5.0, fork-ts-checker-webpack-plugin@^1.5.0: +fork-ts-checker-webpack-plugin@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.0.tgz#ce1d77190b44d81a761b10b6284a373795e41f0c" integrity sha512-zEhg7Hz+KhZlBhILYpXy+Beu96gwvkROWJiTXOCyOOMMrdBIRPvsBpBqgTI4jfJGrJXcqGwJR8zsBGDmzY0jsA== @@ -3210,6 +3051,20 @@ fork-ts-checker-webpack-plugin@1.5.0, fork-ts-checker-webpack-plugin@^1.5.0: tapable "^1.0.0" worker-rpc "^0.1.0" +fork-ts-checker-webpack-plugin@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.1.tgz#f82d078ba8911c7b2c70703ffb3cbe588b33fbaa" + integrity sha512-IbVh1Z46dmCXJMg6We8s9jYwCAzzSv2Tgj+G2Sg/8pFantHDBrAg/rQyPnmAWLS/djW7n4VEltoEglbtTvt0wQ== + dependencies: + babel-code-frame "^6.22.0" + chalk "^2.4.1" + chokidar "^2.0.4" + micromatch "^3.1.10" + minimatch "^3.0.4" + semver "^5.6.0" + tapable "^1.0.0" + worker-rpc "^0.1.0" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -3272,11 +3127,11 @@ fs-extra@^8.0.1, fs-extra@^8.1.0: universalify "^0.1.0" fs-minipass@^1.2.5: - version "1.2.6" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" - integrity sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ== + version "1.2.7" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" + integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== dependencies: - minipass "^2.2.1" + minipass "^2.6.0" fs-write-stream-atomic@^1.0.8: version "1.0.10" @@ -3394,9 +3249,9 @@ glob-to-regexp@^0.3.0: integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: - version "7.1.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" - integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== + version "7.1.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.5.tgz#6714c69bee20f3c3e64c4dd905553e532b40cdc0" + integrity sha512-J9dlskqUXK1OeTOYBEn5s8aMukWMwWfs+rPTn/jn50Ux4MNXVhubL1wu/j2t+H4NVI+cXEcCaYellqaPVGXNqQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -3500,12 +3355,7 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.2.0" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" - integrity sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg== - -graceful-fs@^4.2.0: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.2" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== @@ -3663,9 +3513,9 @@ homedir-polyfill@^1.0.1: parse-passwd "^1.0.0" hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + version "2.8.5" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c" + integrity sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg== hpack.js@^2.1.6: version "2.1.6" @@ -3767,7 +3617,7 @@ http-errors@~1.7.2: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.10.tgz#92c9c1374c35085f75db359ec56cc257cbb93fa4" integrity sha1-ksnBN0w1CF912zWexWzCV8u5P6Q= -http-proxy-middleware@^0.19.1: +http-proxy-middleware@0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" integrity sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q== @@ -3778,11 +3628,11 @@ http-proxy-middleware@^0.19.1: micromatch "^3.1.10" http-proxy@^1.17.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" - integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== + version "1.18.0" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.0.tgz#dbe55f63e75a347db7f3d99974f2692a314a6a3a" + integrity sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ== dependencies: - eventemitter3 "^3.0.0" + eventemitter3 "^4.0.0" follow-redirects "^1.0.0" requires-port "^1.0.0" @@ -3800,7 +3650,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: +iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -3825,9 +3675,9 @@ iferr@^0.1.5: integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== + version "3.0.3" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.3.tgz#017e2447184bfeade7c238e4aefdd1e8f95b1e37" + integrity sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw== dependencies: minimatch "^3.0.4" @@ -3985,7 +3835,7 @@ ipaddr.js@^1.9.0: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -is-absolute-url@^3.0.2: +is-absolute-url@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== @@ -4004,6 +3854,11 @@ is-accessor-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" +is-arguments@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" + integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -4183,7 +4038,7 @@ is-root@2.1.0: resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== -is-stream@^1.0.1, is-stream@^1.1.0: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -4205,10 +4060,10 @@ is-utf8@^0.2.0: resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= -is-what@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/is-what/-/is-what-3.2.4.tgz#da528659017bdd4b07892dfe4fd60da6ac500e98" - integrity sha512-0awkPsfVd85bYStP99EqLxKvhc5SiE70hSZCPxJN2SYZ5d+IkX+r1Ri0qnPWPnuRVFrqrEnI3JgFN3yrGtjXaw== +is-what@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-3.3.1.tgz#79502181f40226e2d8c09226999db90ef7c1bcbe" + integrity sha512-seFn10yAXy+yJlTRO+8VfiafC+0QJanGLMPTBWLrJm/QPauuchy0UXh8B6H5o9VA8BAzk0iYievt6mNp6gfaqA== is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" @@ -4254,14 +4109,6 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" @@ -4350,9 +4197,9 @@ json5@^1.0.1: minimist "^1.2.0" json5@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" - integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== + version "2.1.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.1.tgz#81b6cb04e9ba496f1c7005d07b4368a2638f90b6" + integrity sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ== dependencies: minimist "^1.2.0" @@ -4628,9 +4475,9 @@ mem@^4.0.0: p-is-promise "^2.0.0" memoize-one@^5.0.0: - version "5.0.5" - resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.0.5.tgz#8cd3809555723a07684afafcd6f756072ac75d7e" - integrity sha512-ey6EpYv0tEaIbM/nTDOpHciXUvd+ackQrJgEzBwemhZZIWZjcyodqEcrmqDy2BKRTM3a65kKBV4WtLXJDt26SQ== + version "5.1.1" + resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz#047b6e3199b508eaec03504de71229b8eb1d75c0" + integrity sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA== memory-fs@^0.4.0, memory-fs@^0.4.1: version "0.4.1" @@ -4640,6 +4487,14 @@ memory-fs@^0.4.0, memory-fs@^0.4.1: errno "^0.1.3" readable-stream "^2.0.1" +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + meow@^3.1.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" @@ -4657,11 +4512,11 @@ meow@^3.1.0: trim-newlines "^1.0.0" merge-anything@^2.2.4: - version "2.4.0" - resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-2.4.0.tgz#86959caf02bb8969d1ae5e1b652862bc5fe54e44" - integrity sha512-MhJcPOEcDUIbwU0LnEfx5S9s9dfQ/KPu4g2UA5T5G1LRKS0XmpDvJ9+UUfTkfhge+nA1gStE4tJAvx6lXLs+rg== + version "2.4.1" + resolved "https://registry.yarnpkg.com/merge-anything/-/merge-anything-2.4.1.tgz#e9bccaec1e49ec6cb5f77ca78c5770d1a35315e6" + integrity sha512-dYOIAl9GFCJNctSIHWOj9OJtarCjsD16P8ObCl6oxrujAG+kOvlwJuOD9/O9iYZ9aTi1RGpGTG9q9etIvuUikQ== dependencies: - is-what "^3.2.4" + is-what "^3.3.1" merge-descriptors@1.0.1: version "1.0.1" @@ -4669,9 +4524,9 @@ merge-descriptors@1.0.1: integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= merge2@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.4.tgz#c9269589e6885a60cf80605d9522d4b67ca646e3" - integrity sha512-FYE8xI+6pjFOhokZu0We3S5NKCirLbCzSh2Usf3qEyr4X8U+0jNg9P8RZ4qz+V2UoECLVwSyzU3LxXBaLGtD3A== + version "1.3.0" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" + integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== methods@~1.1.2: version "1.1.2" @@ -4718,11 +4573,16 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.40.0, "mime-db@>= 1.40.0 < 2": +mime-db@1.40.0: version "1.40.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== +"mime-db@>= 1.40.0 < 2": + version "1.42.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz#3e252907b4c7adb906597b4b65636272cf9e7bac" + integrity sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ== + mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.24" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" @@ -4798,20 +4658,20 @@ minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= -minipass@^2.2.1, minipass@^2.3.5: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== +minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" + integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== dependencies: safe-buffer "^5.1.2" yallist "^3.0.0" minizlib@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614" - integrity sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA== + version "1.3.3" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" + integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== dependencies: - minipass "^2.2.1" + minipass "^2.9.0" mississippi@^3.0.0: version "3.0.0" @@ -4837,7 +4697,7 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -4942,18 +4802,10 @@ no-case@^2.2.0: dependencies: lower-case "^1.1.1" -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-forge@0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.8.2.tgz#b4bcc59fb12ce77a8825fc6a783dfe3182499c5a" - integrity sha512-mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg== +node-forge@0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579" + integrity sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ== node-libs-browser@^2.2.1: version "2.2.1" @@ -5000,19 +4852,12 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.25: - version "1.1.26" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.26.tgz#f30563edc5c7dc20cf524cc8652ffa7be0762937" - integrity sha512-fZPsuhhUHMTlfkhDLGtfY80DSJTjOcx+qD1j5pqPkuhUHVS7xHZIg9EE4DHK8O3f0zTxXHX5VIkDG8pu98/wfQ== - dependencies: - semver "^5.3.0" - -node-releases@^1.1.29: - version "1.1.32" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.32.tgz#485b35c1bf9b4d8baa105d782f8ca731e518276e" - integrity sha512-VhVknkitq8dqtWoluagsGPn3dxTvN9fwgR59fV3D7sLBHe0JfDramsMI8n8mY//ccq/Kkrf8ZRHRpsyVZ3qw1A== +node-releases@^1.1.29, node-releases@^1.1.36: + version "1.1.37" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.37.tgz#af787db03833a7cda5d197cbb8262d5527270bd8" + integrity sha512-0EOsAEdn6S2vQdDGBWBpmClm5BCkXVkVOURdnhfg7//rxI2XbleRdKig87WuBrk+0PHZ4OhO58fRm9mzWW4jNw== dependencies: - semver "^5.3.0" + semver "^6.3.0" nopt@^4.0.1: version "4.0.1" @@ -5050,9 +4895,9 @@ normalize-range@^0.1.2: integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= normalize-url@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.3.0.tgz#9c49e10fc1876aeb76dba88bf1b2b5d9fa57b2ee" - integrity sha512-0NLtR71o4k6GLP+mr6Ty34c5GA6CMoEsncKJxvQd8NzPxaHRJNnb5gZE8R1XF4CPIS7QPHLJ74IFszwtNVAHVQ== + version "4.5.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" + integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ== npm-bundled@^1.0.1: version "1.0.6" @@ -5060,9 +4905,9 @@ npm-bundled@^1.0.1: integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== npm-packlist@^1.1.6: - version "1.4.4" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" - integrity sha512-zTLo8UcVYtDU3gdeaFu2Xu0n0EvelfHDGuqtNIn5RO7yQj4H1TqNdBc/yZjxnWA0PVB8D3Woyp0i5B43JwQ6Vw== + version "1.4.6" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.6.tgz#53ba3ed11f8523079f1457376dd379ee4ea42ff4" + integrity sha512-u65uQdb+qwtGvEJh/DgQgW1Xg7sqeNbmxYyrvlNznaVTjV3E5P6F/EFjM+BVHXl7JJlsdG8A64M0XI8FI/IOlg== dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" @@ -5146,6 +4991,11 @@ object-inspect@^1.6.0: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b" integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ== +object-is@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6" + integrity sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY= + object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -5290,9 +5140,9 @@ p-limit@^1.1.0: p-try "^1.0.0" p-limit@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" - integrity sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ== + version "2.2.1" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" + integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== dependencies: p-try "^2.0.0" @@ -5338,11 +5188,11 @@ pako@~1.0.5: integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw== parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= + version "1.2.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== dependencies: - cyclist "~0.2.2" + cyclist "^1.0.1" inherits "^2.0.3" readable-stream "^2.1.5" @@ -5354,9 +5204,9 @@ param-case@2.1.x: no-case "^2.2.0" parse-asn1@^5.0.0: - version "5.1.4" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.4.tgz#37f6628f823fbdeb2273b4d540434a22f3ef1fcc" - integrity sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw== + version "5.1.5" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" + integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== dependencies: asn1.js "^4.0.0" browserify-aes "^1.0.0" @@ -5564,18 +5414,18 @@ plist@^3.0.0, plist@^3.0.1: xmldom "0.1.x" popper.js@^1.14.4, popper.js@^1.14.7: - version "1.15.0" - resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" - integrity sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA== + version "1.16.0" + resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.0.tgz#2e1816bcbbaa518ea6c2e15a466f4cb9c6e2fbb3" + integrity sha512-+G+EkOPoE5S/zChTpmBSSDYmhXJ5PsW8eMhH8cP/CQHMFPBG/kC9Y5IIw6qNYgdJ+/COf0ddY2li28iHaZRSjw== portfinder@^1.0.24: - version "1.0.24" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.24.tgz#11efbc6865f12f37624b6531ead1d809ed965cfa" - integrity sha512-ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg== + version "1.0.25" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.25.tgz#254fd337ffba869f4b9d37edc298059cb4d35eca" + integrity sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg== dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" + async "^2.6.2" + debug "^3.1.1" + mkdirp "^0.5.1" posix-character-classes@^0.1.0: version "0.1.1" @@ -5654,21 +5504,12 @@ postcss-value-parser@^3.3.0: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss-value-parser@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.0.tgz#99a983d365f7b2ad8d0f9b8c3094926eab4b936d" - integrity sha512-ESPktioptiSUchCKgggAkzdmkgzKfmp0EU8jXH+5kbIUB+unr0Y4CY9SRMvibuvYUBjNh1ACLbxqYNpdTQOteQ== - -postcss@^7.0.0, postcss@^7.0.17: - version "7.0.17" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.17.tgz#4da1bdff5322d4a0acaab4d87f3e782436bad31f" - integrity sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ== - dependencies: - chalk "^2.4.2" - source-map "^0.6.1" - supports-color "^6.1.0" +postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz#482282c09a42706d1fc9a069b73f44ec08391dc9" + integrity sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ== -postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.18, postcss@^7.0.5, postcss@^7.0.6: version "7.0.18" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.18.tgz#4b9cda95ae6c069c67a4d933029eddd4838ac233" integrity sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g== @@ -5726,13 +5567,6 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - prop-types-extra@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.1.0.tgz#32609910ea2dcf190366bacd3490d5a6412a605f" @@ -5764,9 +5598,9 @@ prr@~1.0.1: integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= psl@^1.1.24: - version "1.3.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.3.0.tgz#e1ebf6a3b5564fa8376f3da2275da76d875ca1bd" - integrity sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag== + version "1.4.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2" + integrity sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw== public-encrypt@^4.0.0: version "4.0.3" @@ -5854,11 +5688,6 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== -random-hash@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/random-hash/-/random-hash-4.0.1.tgz#342d7d14501e664f0bee2d9a13eeae9c973cb755" - integrity sha1-NC19FFAeZk8L7i2aE+6unJc8t1U= - randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -5909,15 +5738,15 @@ rcedit@^2.0.0: resolved "https://registry.yarnpkg.com/rcedit/-/rcedit-2.0.0.tgz#dcc85d93aa91a41c1ebc5c6aa1dfc43ea28b7dad" integrity sha512-XcFGyEBjhWSsud+R8elwQtGBbVkCf7tAiad+nXo5jc6l2rMf46NfGNwjnmBNneBIZDfq+Npf8lwP371JTONfrw== -react-bootstrap@^1.0.0-beta.12: - version "1.0.0-beta.12" - resolved "https://registry.yarnpkg.com/react-bootstrap/-/react-bootstrap-1.0.0-beta.12.tgz#49fb83e288b1b5fa86e4c51e145630ec8b8598bb" - integrity sha512-qBEAthAzqM+OTS2h5ZCfV5/yZUadQcMlaep4iPyPqsu92JzdcznhSDjw6b+asiepsyQgiS33t8OPeLLRiIDh9Q== +react-bootstrap@^1.0.0-beta.14: + version "1.0.0-beta.14" + resolved "https://registry.yarnpkg.com/react-bootstrap/-/react-bootstrap-1.0.0-beta.14.tgz#30330df61edbed1f0405f75363ef72d77c1fed57" + integrity sha512-UGK5f78FE8wAei1YL/oSwFlJZLqxJ/h4S8DCwHyY8hQjFCrjEW5PoEBTOOhQ6PQL6WOsZe1jkiOJG7L5TZWu+w== dependencies: "@babel/runtime" "^7.4.2" - "@react-bootstrap/react-popper" "1.2.1" "@restart/context" "^2.1.4" "@restart/hooks" "^0.3.11" + "@types/react" "^16.8.23" classnames "^2.2.6" dom-helpers "^3.4.0" invariant "^2.2.4" @@ -5936,9 +5765,9 @@ react-context-toolbox@^2.0.2: integrity sha512-tY4j0imkYC3n5ZlYSgFkaw7fmlCp3IoQQ6DxpqeNHzcD0hf+6V+/HeJxviLUZ1Rv1Yn3N3xyO2EhkkZwHn0m1A== react-dev-utils@^9.0.4: - version "9.0.4" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.0.4.tgz#5c71a8e8afdec0232c44d4e049d21baa437a92af" - integrity sha512-VwR+mBUXPLdYk/rOz6s6qpasIFGd7GW0KXd/3bih+/qGcMQvPG19XxtjDMtiAg0zWiFwp1ugCzAjLThbzFjVqw== + version "9.1.0" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.1.0.tgz#3ad2bb8848a32319d760d0a84c56c14bdaae5e81" + integrity sha512-X2KYF/lIGyGwP/F/oXgGDF24nxDA2KC4b7AFto+eqzc/t838gpSGiaU8trTqHXOohuLxxc5qi1eDzsl9ucPDpg== dependencies: "@babel/code-frame" "7.5.5" address "1.1.2" @@ -5959,42 +5788,32 @@ react-dev-utils@^9.0.4: loader-utils "1.2.3" open "^6.3.0" pkg-up "2.0.0" - react-error-overlay "^6.0.2" + react-error-overlay "^6.0.3" recursive-readdir "2.2.2" shell-quote "1.7.2" sockjs-client "1.4.0" strip-ansi "5.2.0" text-table "0.2.0" -react-dom@^16.10.1: - version "16.10.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.1.tgz#479a6511ba34a429273c213cbc2a9ac4d296dac1" - integrity sha512-SmM4ZW0uug0rn95U8uqr52I7UdNf6wdGLeXDmNLfg3y5q5H9eAbdjF5ubQc3bjDyRrvdAB2IKG7X0GzSpnn5Mg== +react-dom@^16.10.2: + version "16.10.2" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.2.tgz#4840bce5409176bc3a1f2bd8cb10b92db452fda6" + integrity sha512-kWGDcH3ItJK4+6Pl9DZB16BXYAZyrYQItU4OMy0jAkv5aNqc+mAKb4TpFtAteI6TJZu+9ZlNhaeNQSVQDHJzkw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" prop-types "^15.6.2" - scheduler "^0.16.1" - -react-error-overlay@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.2.tgz#642bd6157c6a4b6e9ca4a816f7ed30b868c47f81" - integrity sha512-DHRuRk3K4Lg9obI6J4Y+nKvtwjasYRU9CFL3ud42x9YJG1HbQjSNublapC/WBJOA726gNUbqbj0U2df9+uzspQ== + scheduler "^0.16.2" -react-is@^16.3.2: - version "16.10.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.1.tgz#0612786bf19df406502d935494f0450b40b8294f" - integrity sha512-BXUMf9sIOPXXZWqr7+c5SeOKJykyVr2u0UDzEf4LNGc6taGkQe1A9DFD07umCIXz45RLr9oAAwZbAJ0Pkknfaw== +react-error-overlay@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d" + integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw== -react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1: - version "16.8.6" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" - integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== - -react-is@^16.9.0: - version "16.9.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" - integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== +react-is@^16.3.2, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.9.0: + version "16.10.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.2.tgz#984120fd4d16800e9a738208ab1fba422d23b5ab" + integrity sha512-INBT1QEgtcCCgvccr5/86CfD71fw9EPmDxgiJX4I2Ddr6ZsV6iFXsuby+qWJPtmNuMY0zByTsG4468P7nHuNWA== react-lifecycles-compat@^3.0.4: version "3.0.4" @@ -6040,22 +5859,22 @@ react-redux@^7.1.1: react-is "^16.9.0" react-router-dom@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.1.tgz#53caa089c291f64c1d597a52827b978b54d7c25d" - integrity sha512-r8R8H0Vt2ISqpk02rR6VZBLk+JZdR6pZV+h9K1y0ISh3/G4GGByNevYBS69x6czcOcWVRcZmXjwY8l9UBCKV+w== + version "5.1.2" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" + integrity sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" loose-envify "^1.3.1" prop-types "^15.6.2" - react-router "5.1.1" + react-router "5.1.2" tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-router@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.1.tgz#9d65f54795f938c0c5b69eaeef58728134ce7c7c" - integrity sha512-ozTXqxKZsn4GfZqpG5rVFHSSxlNuDoMNxgyjM+mFJVhqlnPwwkRsAPkDm1PcNjBdYxMzqAhtz48HkQB6fSYaAQ== +react-router@5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.2.tgz#6ea51d789cb36a6be1ba5f7c0d48dd9e817d3418" + integrity sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" @@ -6106,10 +5925,10 @@ react-transition-group@^4.0.0: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^16.10.1: - version "16.10.1" - resolved "https://registry.yarnpkg.com/react/-/react-16.10.1.tgz#967c1e71a2767dfa699e6ba702a00483e3b0573f" - integrity sha512-2bisHwMhxQ3XQz4LiJJwG3360pY965pTl/MRrZYxIBKVj4fOHoDs5aZAkYXGxDRO1Li+SyjTAilQEbOmtQJHzA== +react@^16.10.2: + version "16.10.2" + resolved "https://registry.yarnpkg.com/react/-/react-16.10.2.tgz#a5ede5cdd5c536f745173c8da47bda64797a4cf0" + integrity sha512-MFVIq0DpIhrHFyqLU0S3+4dIcBhhOvBE8bJ/5kHPVOVaGdo0KuiQzpcjCPsf585WvhypqtrMILyoE2th6dT+Lw== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -6272,6 +6091,13 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +regexp.prototype.flags@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz#6b30724e306a27833eeb171b66ac8890ba37e41c" + integrity sha512-ztaw4M1VqgMwl9HlPpOuiYgItcHlunW0He2fE6eNfT6E/CF2FtYi9ofOYe4mKntstYk0Fyh/rDRBdS3AnxjlrA== + dependencies: + define-properties "^1.1.2" + regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" @@ -6445,9 +6271,9 @@ retry@^0.12.0: integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= rimraf@^2.4.4, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" @@ -6480,14 +6306,7 @@ run-queue@^1.0.0, run-queue@^1.0.3: dependencies: aproba "^1.1.1" -rxjs@^6.4.0: - version "6.5.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.2.tgz#2e35ce815cd46d84d02a209fb4e5921e051dbec7" - integrity sha512-HUb7j3kvb7p7eCUHE3FqjoDsC1xfZQ4AHFWfTKSpZ+sAhhz5X1WX0ZuUqWbzB2QhSLp3DoLUG+hMdEDKqWo2Zg== - dependencies: - tslib "^1.9.0" - -rxjs@^6.5.2: +rxjs@^6.4.0, rxjs@^6.5.2: version "6.5.3" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.3.tgz#510e26317f4db91a7eb1de77d9dd9ba0a4899a3a" integrity sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA== @@ -6499,7 +6318,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2: +safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== @@ -6516,14 +6335,7 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sanitize-filename@^1.6.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.2.tgz#01b4fc8809f14e9d22761fe70380fe7f3f902185" - integrity sha512-cmTzND7RMxUB+f7gI+4+KAVHWEg0lfXvQJdko+FXDP5bNbGIdx4KMP5pX6lv5jfT9jSf6OBbjyxjFtZQwYA/ig== - dependencies: - truncate-utf8-bytes "^1.0.0" - -sanitize-filename@^1.6.2: +sanitize-filename@^1.6.0, sanitize-filename@^1.6.2: version "1.6.3" resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg== @@ -6535,10 +6347,10 @@ sax@^1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -scheduler@^0.16.1: - version "0.16.1" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.1.tgz#a6fb6ddec12dc2119176e6eb54ecfe69a9eba8df" - integrity sha512-MIuie7SgsqMYOdCXVFZa8SKoNorJZUWHW8dPgto7uEHn1lX3fg2Gu0TzgK8USj76uxV7vB5eRMnZs/cdEHg+cg== +scheduler@^0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.2.tgz#f74cd9d33eff6fc554edfb79864868e4819132c1" + integrity sha512-BqYVWqwz6s1wZMhjFvLfVR5WXP7ZY32M/wYPo04CcuPM7XZEbV2TBNW7Z0UkguPTl0dWMA59VbNXxK6q+pHItg== dependencies: loose-envify "^1.1.0" object-assign "^4.1.1" @@ -6552,10 +6364,10 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.0.0, schema-utils@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.2.0.tgz#48a065ce219e0cacf4631473159037b2c1ae82da" - integrity sha512-5EwsCNhfFTZvUreQhx/4vVQpJ/lnCAkgoIHLhSpp4ZirE+4hzFvdJi0FMub6hxbFVBJYSpeVVmon+2e7uEGRrA== +schema-utils@^2.0.0, schema-utils@^2.0.1, schema-utils@^2.4.1: + version "2.5.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f" + integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ== dependencies: ajv "^6.10.2" ajv-keywords "^3.4.1" @@ -6565,17 +6377,17 @@ select-hose@^2.0.0: resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= -selfsigned@^1.10.6: - version "1.10.6" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.6.tgz#7b3cd37ed9c2034261a173af1a1aae27d8169b67" - integrity sha512-i3+CeqxL7DpAazgVpAGdKMwHuL63B5nhJMh9NQ7xmChGkA3jNFflq6Jyo1LLJYcr3idWiNOPWHCrm4zMayLG4w== +selfsigned@^1.10.7: + version "1.10.7" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.7.tgz#da5819fd049d5574f28e88a9bcc6dbc6e6f3906b" + integrity sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA== dependencies: - node-forge "0.8.2" + node-forge "0.9.0" "semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" - integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== semver@^6.0.0, semver@^6.3.0: version "6.3.0" @@ -6602,9 +6414,9 @@ send@0.17.1: statuses "~1.5.0" serialize-javascript@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.7.0.tgz#d6e0dfb2a3832a8c94468e6eb1db97e55a192a65" - integrity sha512-ke8UG8ulpFOxO8f8gRYabHQe/ZntKlcig2Mp+8+URDP1D8vJZ0KUt7LYo07q25Z/+JVSgpr/cui9PIp5H6/+nA== + version "1.9.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz#cfc200aef77b600c47da9bb8149c943e798c2fdb" + integrity sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A== serve-index@^1.9.1: version "1.9.1" @@ -6644,7 +6456,7 @@ set-value@^2.0.0, set-value@^2.0.1: is-plain-object "^2.0.3" split-string "^3.0.1" -setimmediate@^1.0.4, setimmediate@^1.0.5: +setimmediate@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= @@ -6919,11 +6731,11 @@ ssri@^6.0.1: figgy-pudding "^3.5.1" standard-json@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/standard-json/-/standard-json-1.0.3.tgz#5b5b21d9418810dc5644c113d5163541dcd8faa6" - integrity sha512-lhMP+KREBcfyyMe2ObJlEjJ0lc0ItA9uny83d9ZL6ggYtB79DuaAKCxJVoiflg5EV3D2rpuWn+n4+zXjWXk0sQ== + version "1.1.0" + resolved "https://registry.yarnpkg.com/standard-json/-/standard-json-1.1.0.tgz#33ac0d2eccaddb0556f5ae28c43a35624cf1fb25" + integrity sha512-nkonX+n5g3pyVBvJZmvRlFtT/7JyLbNh4CtrYC3Qfxihgs8PKX52f6ONKQXORStuBWJ5PI83EUrNXme7LKfiTQ== dependencies: - concat-stream "^1.5.0" + concat-stream "^2.0.0" standard-loader@^7.0.0: version "7.0.0" @@ -7019,7 +6831,7 @@ string.prototype.trim@^1.1.2: es-abstract "^1.13.0" function-bind "^1.1.1" -string.prototype.trimleft@^2.0.0: +string.prototype.trimleft@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634" integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw== @@ -7027,7 +6839,7 @@ string.prototype.trimleft@^2.0.0: define-properties "^1.1.3" function-bind "^1.1.1" -string.prototype.trimright@^2.0.0: +string.prototype.trimright@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58" integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg== @@ -7036,11 +6848,11 @@ string.prototype.trimright@^2.0.0: function-bind "^1.1.1" string_decoder@^1.0.0, string_decoder@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d" - integrity sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w== + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: - safe-buffer "~5.1.0" + safe-buffer "~5.2.0" string_decoder@~0.10.x: version "0.10.31" @@ -7199,13 +7011,13 @@ tapable@^1.0.0, tapable@^1.1.3: integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== tar@^4: - version "4.4.10" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.10.tgz#946b2810b9a5e0b26140cf78bea6b0b0d689eba1" - integrity sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA== + version "4.4.13" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" + integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== dependencies: chownr "^1.1.1" fs-minipass "^1.2.5" - minipass "^2.3.5" + minipass "^2.8.6" minizlib "^1.2.1" mkdirp "^0.5.0" safe-buffer "^5.1.2" @@ -7227,9 +7039,9 @@ terser-webpack-plugin@^1.4.1: worker-farm "^1.7.0" terser@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/terser/-/terser-4.1.2.tgz#b2656c8a506f7ce805a3f300a2ff48db022fa391" - integrity sha512-jvNoEQSPXJdssFwqPSgWjsOrb+ELoE+ILpHPKXC83tIxOlh2U75F1KuB2luLD/3a6/7K3Vw5pDn+hvu0C4AzSw== + version "4.3.9" + resolved "https://registry.yarnpkg.com/terser/-/terser-4.3.9.tgz#e4be37f80553d02645668727777687dad26bbca8" + integrity sha512-NFGMpHjlzmyOtPL+fDw3G7+6Ueh/sz4mkaUYa4lJCxOPTNzd0Uj0aZJOmsDYoSQyfuVoWDMSWTPU3huyOm2zdA== dependencies: commander "^2.20.0" source-map "~0.6.1" @@ -7267,9 +7079,9 @@ through@^2.3.6: integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= thunky@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" - integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== + version "1.1.0" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" + integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== timed-out@^4.0.1: version "4.0.1" @@ -7277,9 +7089,9 @@ timed-out@^4.0.1: integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== + version "2.0.11" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" + integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ== dependencies: setimmediate "^1.0.4" @@ -7405,11 +7217,6 @@ trim-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - truncate-utf8-bytes@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" @@ -7494,9 +7301,9 @@ tsutils@^2.29.0: tslib "^1.8.1" tsutils@^3.9.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.14.1.tgz#f1d2b93d2a0876481f2f1f98c25ba42bbd7ee860" - integrity sha512-kiuZzD1uUA5DxGj/uxbde+ymp6VVdAxdzOIlAFbYKrPyla8/uiJ9JLBm1QsPhOm4Muj0/+cWEDP99yoCUcSl6Q== + version "3.17.1" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" + integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== dependencies: tslib "^1.8.1" @@ -7525,11 +7332,6 @@ type-is@~1.6.17, type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" -typed-styles@^0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.5.tgz#a60df245d482a9b1adf9c06c078d0f06085ed1cf" - integrity sha512-ht+rEe5UsdEBAa3gr64+QjUOqjOLJfWLvl5HZR5Ev9uo/OnD3p43wPeFSB1hNFc13GXQF/JU1Bn0YHLUqBRIlw== - typed-styles@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9" @@ -7541,14 +7343,9 @@ typedarray@^0.0.6: integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= typescript@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.6.3.tgz#fea942fabb20f7e1ca7164ff626f1a9f3f70b4da" - integrity sha512-N7bceJL1CtRQ2RiG0AQME13ksR7DiuQh/QehubYcghzv20tnh+MQnQIuJddTmsbqYj+dztchykemz0zFzlvdQw== - -ua-parser-js@^0.7.18: - version "0.7.20" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz#7527178b82f6a62a0f243d1f94fd30e3e3c21098" - integrity sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw== + version "3.6.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.6.4.tgz#b18752bb3792bc1a0281335f7f6ebf1bbfc5b91d" + integrity sha512-unoCll1+l+YK4i4F8f22TaNVPRHcD9PA3yCuZ8g5e0qGqlVlJ/8FSateOLLSagn+Yg5+ZwuPkL8LFUc0Jcvksg== uglify-js@3.4.x: version "3.4.10" @@ -7567,12 +7364,13 @@ uncontrollable@^6.0.0: invariant "^2.2.4" uncontrollable@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-7.0.1.tgz#9451ecd13ed480c3e8318c2ee5f0f7522b13b33c" - integrity sha512-MGlbii7jczJYfY2GbmZi4j1JmB/6giM0Xc/WcKfxEN5W86KS8NPH/Fq/AD1nKjiFEMq7/MRwTCtzKWCeYgiWMA== + version "7.0.2" + resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-7.0.2.tgz#8c8fc4d04c2c13a8cb463991838ca3016945475f" + integrity sha512-7fa8OBQ5+X4VAcp0os6BD74bCeUPQSHmr4Rqy75Me98NnlD5kNShCqqx4xWo4OmlAMiT2/YSMklLFC4FCuoGYg== dependencies: "@babel/runtime" "^7.4.5" invariant "^2.2.4" + react-lifecycles-compat "^3.0.4" union-value@^1.0.0: version "1.0.1" @@ -7622,9 +7420,9 @@ unset-value@^1.0.0: isobject "^3.0.0" upath@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.2.tgz#3db658600edaeeccbe6db5e684d67ee8c2acd068" - integrity sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q== + version "1.2.0" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== upper-case@^1.1.1: version "1.1.3" @@ -7644,13 +7442,13 @@ urix@^0.1.0: integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= url-loader@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz#bcc1ecabbd197e913eca23f5e0378e24b4412961" - integrity sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A== + version "2.2.0" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.2.0.tgz#af321aece1fd0d683adc8aaeb27829f29c75b46e" + integrity sha512-G8nk3np8ZAnwhHXas1JxJEwJyQdqFXAKJehfgZ/XrC48volFBRtO+FIKtF2u0Ma3bw+4vnDVjHPAQYlF9p2vsw== dependencies: loader-utils "^1.2.3" mime "^2.4.4" - schema-utils "^2.0.0" + schema-utils "^2.4.1" url-parse-lax@^3.0.0: version "3.0.0" @@ -7737,12 +7535,7 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.0.1, uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== - -uuid@^3.3.3: +uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== @@ -7867,7 +7660,7 @@ webpack-cli@^3.3.9: v8-compile-cache "2.0.3" yargs "13.2.4" -webpack-dev-middleware@^3.7.1: +webpack-dev-middleware@^3.7.2: version "3.7.2" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== @@ -7879,9 +7672,9 @@ webpack-dev-middleware@^3.7.1: webpack-log "^2.0.0" webpack-dev-server@^3.8.1: - version "3.8.1" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.8.1.tgz#485b64c4aadc23f601e72114b40c1b1fea31d9f1" - integrity sha512-9F5DnfFA9bsrhpUCAfQic/AXBVHvq+3gQS+x6Zj0yc1fVVE0erKh2MV4IV12TBewuTrYeeTIRwCH9qLMvdNvTw== + version "3.8.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.8.2.tgz#3292427bf6510da9a3ac2d500b924a4197667ff9" + integrity sha512-0xxogS7n5jHDQWy0WST0q6Ykp7UGj4YvWh+HVN71JoE7BwPxMZrwgraBvmdEMbDVMBzF0u+mEzn8TQzBm5NYJQ== dependencies: ansi-html "0.0.7" bonjour "^3.5.0" @@ -7892,18 +7685,18 @@ webpack-dev-server@^3.8.1: del "^4.1.1" express "^4.17.1" html-entities "^1.2.1" - http-proxy-middleware "^0.19.1" + http-proxy-middleware "0.19.1" import-local "^2.0.0" internal-ip "^4.3.0" ip "^1.1.5" - is-absolute-url "^3.0.2" + is-absolute-url "^3.0.3" killable "^1.0.1" loglevel "^1.6.4" opn "^5.5.0" p-retry "^3.0.1" portfinder "^1.0.24" schema-utils "^1.0.0" - selfsigned "^1.10.6" + selfsigned "^1.10.7" semver "^6.3.0" serve-index "^1.9.1" sockjs "0.3.19" @@ -7912,7 +7705,7 @@ webpack-dev-server@^3.8.1: strip-ansi "^3.0.1" supports-color "^6.1.0" url "^0.11.0" - webpack-dev-middleware "^3.7.1" + webpack-dev-middleware "^3.7.2" webpack-log "^2.0.0" ws "^6.2.1" yargs "12.0.5" @@ -7925,15 +7718,7 @@ webpack-log@^2.0.0: ansi-colors "^3.0.0" uuid "^3.3.2" -webpack-sources@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.1.tgz#b91b2c5b1c4e890ff50d1d35b7fa3657040da1da" - integrity sha512-XSz38193PTo/1csJabKaV4b53uRVotlMgqJXm3s3eje0Bu6gQTxYDqpD38CmQfDBA+gN+QqaGjasuC8I/7eW3Q== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack-sources@^1.4.1: +webpack-sources@^1.4.0, webpack-sources@^1.4.1: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -7942,9 +7727,9 @@ webpack-sources@^1.4.1: source-map "~0.6.1" webpack@^4.41.0: - version "4.41.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.0.tgz#db6a254bde671769f7c14e90a1a55e73602fc70b" - integrity sha512-yNV98U4r7wX1VJAj5kyMsu36T8RPPQntcb5fJLOsMz/pt/WrKC0Vp1bAlqPLkA1LegSwQwf6P+kAbyhRKVQ72g== + version "4.41.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.2.tgz#c34ec76daa3a8468c9b61a50336d8e3303dce74e" + integrity sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5" @@ -7984,11 +7769,6 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== -whatwg-fetch@>=0.10.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -8119,9 +7899,9 @@ xtend@~2.1.1: integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" - integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yargs-parser@^11.1.1: version "11.1.1" From 5583d79fc4fca520986e524d688684ad00dc3056 Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 11 Nov 2019 13:38:42 +0000 Subject: [PATCH 12/30] update: Better animation for trasfer progress --- src/components/Transfer.tsx | 6 +++--- src/containers/Accounts.tsx | 2 +- src/index.css | 5 +++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index 8994b25..64bb90e 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -7,12 +7,12 @@ import { useDispatch, useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; -import Row from 'react-bootstrap/Row'; import InputGroup from 'react-bootstrap/InputGroup'; +import Row from 'react-bootstrap/Row'; import Avatar from '../components/Avatar'; -import { selectTransferLoading, selectAccountError } from '../selectors'; +import { selectAccountError, selectTransferLoading } from '../selectors'; import { transfer } from '../modules/accounts'; import Loader from './Loader'; @@ -22,7 +22,7 @@ function isLetter(str: string) { } const STransfer = styled.div` - padding-top: 10px; + padding-top: 20px; `; const SLoader = styled(Loader)` diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 5e914cd..e7a89b2 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -32,7 +32,7 @@ const SAccount = styled.div` &:hover { cursor: pointer; - background: #f3f3f3; + background: #f1f1f1; } span { diff --git a/src/index.css b/src/index.css index 95f6e15..a826f4a 100644 --- a/src/index.css +++ b/src/index.css @@ -31,7 +31,6 @@ h5 { .bg-light { background: rgba(255, 255, 255, 1) !important; color: #000 !important; - box-shadow: 0 4px 6px -10px #f1f1f1 !important; width: 100% !important; /* border-bottom: 1px solid #fafafa; */ } @@ -49,7 +48,9 @@ a:hover { border-radius: 0 !important; padding: 30px 0 !important; background: #fff !important; - margin-bottom: 0 !important; + /* margin-bottom: 0 !important; */ + box-shadow: 0 4px 20px #f1f1f1 !important; + margin-bottom: 30px; } p { From 710446e0e5df03f0296a4e36fc383dc9ba029e1e Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 11 Nov 2019 15:28:46 +0000 Subject: [PATCH 13/30] update: New design for wallet --- src/app/App.tsx | 8 +- src/components/Header.tsx | 172 +++++--------------------- src/components/Sidebar.tsx | 67 ++++++++++ src/components/Wrapper.tsx | 18 ++- src/containers/Accounts.tsx | 235 +++++++++++++----------------------- src/index.css | 28 ++++- 6 files changed, 231 insertions(+), 297 deletions(-) create mode 100644 src/components/Sidebar.tsx diff --git a/src/app/App.tsx b/src/app/App.tsx index b83475b..e349180 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -28,9 +28,13 @@ const App: React.FunctionComponent<{}> = () => { - + - + s.charAt(0).toUpperCase() + s.slice(1); - -const SDropdown = styled(NavDropdown)` - border: 1px solid #eee !important; - border-radius: 5px; - margin-right: 5px; +const SHeader = styled.div` + position: sticky !important; + top: 0 !important; + background: #fff; + box-shadow: 2px 0px 70px rgba(0, 0, 0, 0.1); + height: 70px; + line-height: 70px !important; +`; - a { - color: rgba(0, 0, 0, 0.6); - } +const SLogo = styled.div` + background: #fff; + text-align: center; `; -const SRefresh = styled(Button)` - /* padding: 10px 13px !important; */ - /* padding-top: 7px !important; */ - margin-left: 5px; - margin-right: 10px !important; +const SPadding = styled.div` + padding: 0 20px; `; -const SNav = styled(Nav)` - a { - color: rgba(0, 0, 0, 0.6); - border-radius: 5px; - } +const SHeading = styled.div` + font-size: 25px; + font-weight: bold; `; type Props = {}; const Header: React.FunctionComponent = () => { - const dispatch = useDispatch(); - - const getLoading = useSelector(selectGetAccountLoading); - - const accounts = useSelector(selectAccounts); - const selected = useSelector(selectedAccount); - - const [show, setShow] = useState(false); - const [showNew, setShowNew] = useState(false); - - const [clickedAccount, setClickedAccount] = useState({ - address: '', - balance: new Currency(0), - nonce: 0, - bytecode: '', - moniker: '' - }); - - const handleClose = () => setShow(false); - const handleShow = () => setShow(true); - - const handleCloseNew = () => setShowNew(false); - const handleShowNew = () => setShowNew(true); - - const refresh = () => dispatch(getSelectedAccount()); - - const onAccountClickBinder = (account: MonikerEVMAccount) => (e: any) => { - setClickedAccount(account); - handleShow(); - }; - return ( - - - - - - - - - - - Settings - - - {accounts.map(account => ( - - - - - - - {capitalize(account.moniker)} - - - ))} - - - View All - - - {' '} - {selected && ( - <> - - {getLoading ? 'Refreshing...' : 'Refresh'} - {' '} - - )} + + + + + + + + + + + Monet Wallet + + + - + ); }; diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx new file mode 100644 index 0000000..297ffeb --- /dev/null +++ b/src/components/Sidebar.tsx @@ -0,0 +1,67 @@ +import React, { useEffect } from 'react'; + +import styled from 'styled-components'; + +import { useDispatch, useSelector } from 'react-redux'; + +import Col from 'react-bootstrap/Col'; + +import Avatar from '../components/Avatar'; + +import { listAccounts } from '../modules/accounts'; +import { selectAccounts } from '../selectors'; + +const SSidebar = styled(Col)` + background: #fff !important; + height: calc(100vh - 70px); + padding: 0 !important; + margin: 0 !important; + overflow-x: auto; + box-shadow: 1px 0px 30px rgba(0, 0, 0, 0.05); +`; + +const SAvatar = styled.div` + display: block; + cursor: pointer; + padding: 15px; + padding-top: 15px; + + img { + margin: auto !important; + box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2); + } + + :hover { + background: #fff; + } +`; + +const Sidebar: React.FC<{}> = () => { + const dispatch = useDispatch(); + const accounts = useSelector(selectAccounts); + + const fetchAll = () => dispatch(listAccounts(true)); + + useEffect(() => { + fetchAll(); + }, []); + + return ( + <> + + {accounts.map(a => ( + + + + ))} + {accounts.map(a => ( + + + + ))} + + + ); +}; + +export default Sidebar; diff --git a/src/components/Wrapper.tsx b/src/components/Wrapper.tsx index 1df0633..dee62a8 100644 --- a/src/components/Wrapper.tsx +++ b/src/components/Wrapper.tsx @@ -1,12 +1,26 @@ import React from 'react'; +import Col from 'react-bootstrap/Col'; +import Container from 'react-bootstrap/Container'; +import Row from 'react-bootstrap/Row'; + import Header from '../components/Header'; +import Sidebar from '../components/Sidebar'; const Wrapper: React.FunctionComponent<{}> = props => { return ( -
    - {props.children} + + + +
    + + + + + {props.children} + + ); }; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index e7a89b2..e07936c 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,167 +1,106 @@ -import React, { useEffect, useState } from 'react'; +import React from 'react'; -import utils, { Currency } from 'evm-lite-utils'; +// import { Currency } from 'evm-lite-utils'; import styled from 'styled-components'; -import { useDispatch, useSelector } from 'react-redux'; - import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; -import Jumbotron from 'react-bootstrap/Jumbotron'; -import Media from 'react-bootstrap/Media'; import Row from 'react-bootstrap/Row'; -import Avatar from '../components/Avatar'; -import SelectAccountModal from '../components/SelectAccountModal'; - -import { MonikerEVMAccount } from '../monet'; -import { selectAccounts } from '../selectors'; +// const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); -import { listAccounts } from '../modules/accounts'; - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); +const SPadding = styled.div` + padding: 20px; +`; type Props = { handleClose: () => void; show: boolean; }; -const SAccount = styled.div` - padding: 15px !important; - padding-top: 20px !important; - - &:hover { - cursor: pointer; - background: #f1f1f1; - } - - span { - font-size: 18px; - } -`; - -const SJumbotron = styled(Jumbotron)` - box-shadow: 0 2px 20px -15px #ddd !important; -`; - -const SHeadingContainer = styled(Container)` - padding: 0 5px !important; -`; - -const SContainer = styled.div` - background: #fff; -`; - const Accounts: React.FC = props => { - const dispatch = useDispatch(); - const accounts = useSelector(selectAccounts); - - const [show, setShow] = useState(false); - const [clickedAccount, setClickedAccount] = useState({ - address: '', - balance: new Currency(0), - nonce: 0, - bytecode: '', - moniker: '' - }); - - const handleShow = () => setShow(true); - const handleClose = () => setShow(false); - - const onAccountClickBinder = (account: MonikerEVMAccount) => (e: any) => { - setClickedAccount(account); - - handleShow(); - }; - - const fetchAll = () => dispatch(listAccounts(true)); - - const parseBalance = (balance: Currency) => { - const b = balance.format('T'); - const l = b.split('.'); - - if (l.length !== 2) { - return l.join('.'); - } - - if (l[1]) { - l[1] = l[1].slice(0, 2); - } - - return l.join('.') + 'T'; - }; - - useEffect(() => { - fetchAll(); - }, []); - - const renderAccount = (a: MonikerEVMAccount) => { - return ( - - - - - - - -
    {capitalize(a.moniker)}
    -

    - {utils.cleanAddress(a.address)} -

    -
    -
    - - - - {parseBalance(a.balance)} - -
    Balance
    - - - {a.nonce} -
    Nonce
    - -
    -
    -
    - ); - }; - return ( - - - - - - -

    All Accounts

    -

    Click on an account to make transfers

    - - -

    Total Balance

    -

    - {(accounts.length && - parseBalance( - accounts - .map(a => a.balance) - .reduce((a, c) => c.plus(a)) - )) || - '-'} -

    - - -

    Count

    -

    {accounts.length}

    - -
    -
    -
    - {accounts.map(a => renderAccount(a))} -
    + + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, + sed do eiusmod tempor incididunt ut labore et dolore + magna aliqua. Consectetur lorem donec massa sapien + faucibus et molestie ac. Neque gravida in fermentum et + sollicitudin ac orci phasellus egestas. Tempor orci eu + lobortis elementum. Gravida arcu ac tortor dignissim. + Dignissim suspendisse in est ante in nibh mauris. Eu + facilisis sed odio morbi. Ultricies integer quis auctor + elit sed vulputate mi. Nisl purus in mollis nunc sed id. + Ornare suspendisse sed nisi lacus sed. Mattis + pellentesque id nibh tortor id aliquet lectus. Eget sit + amet tellus cras adipiscing enim eu turpis egestas. Id + aliquet lectus proin nibh nisl. Vitae suscipit tellus + mauris a diam. Sed vulputate mi sit amet mauris commodo + quis. Amet cursus sit amet dictum. Euismod lacinia at + quis risus sed vulputate odio. Egestas pretium aenean + pharetra magna ac placerat vestibulum lectus mauris. + Mauris vitae ultricies leo integer. Netus et malesuada + fames ac turpis egestas sed. Montes nascetur ridiculus + mus mauris vitae ultricies. Pharetra massa massa + ultricies mi quis hendrerit dolor magna. Mattis + ullamcorper velit sed ullamcorper morbi. Pharetra magna + ac placerat vestibulum lectus mauris ultrices. Viverra + aliquet eget sit amet. Et netus et malesuada fames. + Sapien eget mi proin sed libero enim sed faucibus. Eget + lorem dolor sed viverra. Amet nulla facilisi morbi + tempus iaculis urna. Tortor id aliquet lectus proin nibh + nisl condimentum. Cursus in hac habitasse platea + dictumst quisque sagittis. Mattis aliquam faucibus purus + in massa. Tincidunt lobortis feugiat vivamus at augue + eget arcu dictum. Arcu cursus vitae congue mauris + rhoncus aenean vel elit. Ut sem nulla pharetra diam sit + amet nisl suscipit. Proin nibh nisl condimentum id. Quis + lectus nulla at volutpat diam ut. Phasellus faucibus + scelerisque eleifend donec. Sed cras ornare arcu dui + vivamus arcu felis. Id semper risus in hendrerit gravida + rutrum quisque. Elit eget gravida cum sociis natoque. + Porta nibh venenatis cras sed felis eget velit aliquet + sagittis. Sed viverra ipsum nunc aliquet bibendum. Risus + in hendrerit gravida rutrum quisque. Et tortor at risus + viverra. Ultrices mi tempus imperdiet nulla malesuada + pellentesque elit eget gravida. Vulputate eu scelerisque + felis imperdiet proin fermentum. Ut enim blandit + volutpat maecenas volutpat blandit aliquam etiam erat. + Viverra nam libero justo laoreet sit amet. Fusce ut + placerat orci nulla pellentesque dignissim enim sit + amet. Consequat interdum varius sit amet mattis + vulputate. Habitant morbi tristique senectus et netus. + Proin fermentum leo vel orci porta non pulvinar neque. + Vel pharetra vel turpis nunc eget lorem dolor sed + viverra. Est pellentesque elit ullamcorper dignissim + cras tincidunt. Suspendisse faucibus interdum posuere + lorem ipsum dolor. Id ornare arcu odio ut sem nulla + pharetra. Eget velit aliquet sagittis id consectetur + purus ut faucibus. Morbi quis commodo odio aenean sed + adipiscing. Et malesuada fames ac turpis egestas + integer. Dapibus ultrices in iaculis nunc sed augue. + Pellentesque adipiscing commodo elit at imperdiet dui. + Dolor morbi non arcu risus quis varius quam. Egestas + integer eget aliquet nibh praesent tristique magna sit. + Vel orci porta non pulvinar. Blandit aliquam etiam erat + velit. Eu non diam phasellus vestibulum lorem sed. Sed + nisi lacus sed viverra. Neque vitae tempus quam + pellentesque nec nam aliquam sem. At consectetur lorem + donec massa sapien. Tristique risus nec feugiat in + fermentum posuere. Eget egestas purus viverra accumsan. + Vestibulum lectus mauris ultrices eros in cursus turpis + massa tincidunt. Integer malesuada nunc vel risus + commodo viverra maecenas. Egestas egestas fringilla + phasellus faucibus scelerisque eleifend donec. + + + + + + + ); }; diff --git a/src/index.css b/src/index.css index a826f4a..5583d96 100644 --- a/src/index.css +++ b/src/index.css @@ -13,11 +13,12 @@ body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; - background: #f8f9fa !important; + background: #fff !important; margin: 0 !important; padding: 0 !important; font-size: 15px; font-family: 'Open Sans', sans-serif !important; + overflow-x: hidden; } h1, @@ -25,7 +26,6 @@ h2, h3, h4, h5 { - font-family: 'Open Sans', sans-serif !important; } .bg-light { @@ -39,6 +39,10 @@ a { color: #7b3992; } +.container-fluid { + padding: 0 !important; +} + a:hover { text-decoration: none !important; color: inherit !important; @@ -46,17 +50,21 @@ a:hover { .jumbotron { border-radius: 0 !important; - padding: 30px 0 !important; + padding: 10px 0 !important; background: #fff !important; /* margin-bottom: 0 !important; */ - box-shadow: 0 4px 20px #f1f1f1 !important; - margin-bottom: 30px; + border-bottom: 1px solid #eee; + margin-bottom: 0px; } p { color: rgba(0, 0, 0, 0.7) !important; } +.row { + padding: 0 !important; +} + .address { font-family: 'Cousine', monospace !important; font-size: 15px; @@ -160,3 +168,13 @@ p { hr { border-color: #f3f3f3 !important; } + +.sticky-top { + position: sticky !important; + top: 0 !important; +} + +.sticky-top-70 { + position: sticky !important; + top: 70px !important; +} From 68c2a69af085f4b68d030209aac7996081de86c7 Mon Sep 17 00:00:00 2001 From: Danu Date: Wed, 13 Nov 2019 14:41:33 +0000 Subject: [PATCH 14/30] update: Better design and integrated accounts, settings and account pages --- package.json | 4 +- src/app/App.tsx | 4 +- src/assets/chev-black.svg | 2 - src/assets/chev-white.svg | 2 - src/assets/fonts/monet.ttf | Bin 0 -> 55292 bytes src/assets/icon.png | Bin 0 -> 32678 bytes src/assets/loader.svg | 2 +- src/assets/loader2.svg | 1 - src/assets/monet-hub.png | Bin 0 -> 20402 bytes src/assets/monet_logo.icns | Bin 35059 -> 0 bytes src/assets/monet_logo.ico | Bin 197338 -> 0 bytes src/assets/monet_logo.png | Bin 24697 -> 0 bytes src/assets/refresh.png | Bin 5312 -> 0 bytes src/components/Avatar.tsx | 2 +- src/components/FloatButton.tsx | 41 ------ src/components/Header.tsx | 68 +++++---- src/components/Loader.tsx | 8 +- src/components/NewAccountModal.tsx | 129 ------------------ src/components/SelectAccountModal.tsx | 80 ----------- src/components/Sidebar.tsx | 143 +++++++++++++------ src/components/SubHeader.tsx | 68 --------- src/components/Transaction.tsx | 55 ++++++++ src/components/Transfer.tsx | 58 ++++---- src/components/Wrapper.tsx | 22 +-- src/components/styled.tsx | 14 -- src/containers/Account.tsx | 163 ++++++++++++++-------- src/containers/Accounts.tsx | 146 ++++++++------------ src/containers/Settings.tsx | 147 +++++++++++++++----- src/index.css | 189 ++++++++++++-------------- src/selectors/index.ts | 2 + tslint.json | 1 + yarn.lock | 28 +++- 32 files changed, 627 insertions(+), 752 deletions(-) delete mode 100644 src/assets/chev-black.svg delete mode 100644 src/assets/chev-white.svg create mode 100644 src/assets/fonts/monet.ttf create mode 100644 src/assets/icon.png delete mode 100644 src/assets/loader2.svg create mode 100644 src/assets/monet-hub.png delete mode 100644 src/assets/monet_logo.icns delete mode 100644 src/assets/monet_logo.ico delete mode 100644 src/assets/monet_logo.png delete mode 100644 src/assets/refresh.png delete mode 100644 src/components/FloatButton.tsx delete mode 100644 src/components/NewAccountModal.tsx delete mode 100644 src/components/SelectAccountModal.tsx delete mode 100644 src/components/SubHeader.tsx create mode 100644 src/components/Transaction.tsx delete mode 100644 src/components/styled.tsx diff --git a/package.json b/package.json index b8fb5eb..6bb4783 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,9 @@ "version": "1.0.0", "private": true, "dependencies": { + "@fortawesome/fontawesome-svg-core": "^1.2.25", + "@fortawesome/free-solid-svg-icons": "^5.11.2", + "@fortawesome/react-fontawesome": "^0.1.7", "bootstrap": "^4.3.1", "evm-lite-client": "^1.3.7", "evm-lite-consensus": "^1.3.7", @@ -22,7 +25,6 @@ "styled-components": "^4.4.0" }, "scripts": { - "prepublish": "yarn run build", "dev": "concurrently --kill-others \"yarn run start:server\" \"yarn run start:electron\"", "start:server": "webpack-dev-server --config config/webpack.config.js --hot --inline", "start:electron": "electron ./dist", diff --git a/src/app/App.tsx b/src/app/App.tsx index e349180..bb12600 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -28,13 +28,13 @@ const App: React.FunctionComponent<{}> = () => { + - - diff --git a/src/assets/chev-white.svg b/src/assets/chev-white.svg deleted file mode 100644 index 1617d25..0000000 --- a/src/assets/chev-white.svg +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/src/assets/fonts/monet.ttf b/src/assets/fonts/monet.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4f0a18200a138675752cbcc6cdeb2f57350b67c4 GIT binary patch literal 55292 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 M@MuPu2m-VJ4@fHZD*ylh literal 0 HcmV?d00001 diff --git a/src/assets/icon.png b/src/assets/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f622568bc54b4d5277f36336bf7e998f3b59c9e4 GIT binary patch literal 32678 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 NvV!`XDmk;T{{b5y7W)7I literal 0 HcmV?d00001 diff --git a/src/assets/loader.svg b/src/assets/loader.svg index 7dca68b..4a59b7d 100644 --- a/src/assets/loader.svg +++ b/src/assets/loader.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/loader2.svg b/src/assets/loader2.svg deleted file mode 100644 index 72d89e5..0000000 --- a/src/assets/loader2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/assets/monet-hub.png b/src/assets/monet-hub.png new file mode 100644 index 0000000000000000000000000000000000000000..c781a2524a3f0999915a69b8122dbe0769aae6bb GIT binary patch literal 20402 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 diff --git a/src/assets/refresh.png b/src/assets/refresh.png deleted file mode 100644 index 0aec405955fdf2cf549ddbc84ff5fdaea4199930..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5312 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 x0_T4U7QSwQA props.theme.bottomOffset}px; - right: 0; - width: auto; - color: white !important; - border-top-left-radius: 7px; - border-bottom-left-radius: 7px; - &:hover { - cursor: pointer; - } - & button { - border-top-right-radius: 0px !important; - border-bottom-right-radius: 0px !important; - margin: 0 !important; - margin-left: -2px !important; - box-shadow: 0 4px 20px -6px #999 !important; - } -`; - -interface Props { - bottomOffset: number; -} - -const FloatButton: React.FunctionComponent = props => { - const theme = { - bottomOffset: props.bottomOffset - }; - - return ( - - {props.children} - - ); -}; - -export default FloatButton; diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 93156ee..95146f0 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -6,51 +6,45 @@ import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Row from 'react-bootstrap/Row'; -import Logo from '../assets/monet_logo.png'; - const SHeader = styled.div` - position: sticky !important; - top: 0 !important; - background: #fff; - box-shadow: 2px 0px 70px rgba(0, 0, 0, 0.1); - height: 70px; - line-height: 70px !important; -`; - -const SLogo = styled.div` background: #fff; - text-align: center; + height: 60px; + line-height: 60px; + width: 100%; + box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); + border-bottom: 1px solid #eee; `; -const SPadding = styled.div` - padding: 0 20px; +const STitle = styled.div` + font-size: 20px; + font-weight: 600; + font-family: 'Titillium Web', sans-serif; `; -const SHeading = styled.div` - font-size: 25px; - font-weight: bold; -`; - -type Props = {}; +type Props = { + title: string; + icon?: JSX.Element; +}; -const Header: React.FunctionComponent = () => { +const Header: React.FC = props => { return ( - - - - - - - - - - - Monet Wallet - - - - - + <> + + + + + + {props.icon} + {props.title} + + + + {props.children} + + + + + ); }; diff --git a/src/components/Loader.tsx b/src/components/Loader.tsx index 0ebabd8..e6b1227 100644 --- a/src/components/Loader.tsx +++ b/src/components/Loader.tsx @@ -2,7 +2,7 @@ import React from 'react'; import Image from 'react-bootstrap/Image'; -import LoaderGif from '../assets/loader2.svg'; +import LOADER from '../assets/loader.svg'; type Props = { loading: boolean; @@ -12,9 +12,9 @@ type Props = { const Loader: React.FC = props => { return !!props.loading ? ( ) : ( <> diff --git a/src/components/NewAccountModal.tsx b/src/components/NewAccountModal.tsx deleted file mode 100644 index 554cd3e..0000000 --- a/src/components/NewAccountModal.tsx +++ /dev/null @@ -1,129 +0,0 @@ -import React, { useEffect, useState } from 'react'; - -// import styled from 'styled-components'; - -import utils from 'evm-lite-utils'; - -import { Account } from 'evm-lite-core'; -import { useDispatch, useSelector } from 'react-redux'; -import { toast } from 'react-toastify'; - -import Button from 'react-bootstrap/Button'; -import Col from 'react-bootstrap/Col'; -import Form from 'react-bootstrap/Form'; -import Modal from 'react-bootstrap/Modal'; -import Row from 'react-bootstrap/Row'; - -import Avatar from './Avatar'; - -import { createAccount } from '../modules/accounts'; -import { selectCreateAccountLoading } from '../selectors'; - -type Props = { - handleClose: () => void; - show: boolean; -}; - -const NewAccountModel: React.FC = props => { - const dispatch = useDispatch(); - - const [moniker, setMoniker] = useState(''); - const [passphrase, setPassphrase] = useState(''); - - const [account, setAccount] = useState(); - - const loading = useSelector(selectCreateAccountLoading); - - const create = async () => { - if (!utils.validMoniker(moniker)) { - toast.error( - 'Moniker can only include alphanumeric characters and `_`' - ); - return; - } - - if (passphrase.length < 3) { - toast.error('Passphrase must be longer than 3 characters'); - return; - } - - await dispatch(createAccount(moniker, passphrase)); - - props.handleClose(); - }; - - useEffect(() => { - setAccount(Account.new()); - }, []); - - const randomize = () => { - setAccount(Account.new()); - console.log(passphrase); - }; - - return ( - <> - -
    - - New Account - - - - - - - -
    {moniker || 'Moniker'}
    - - {utils.cleanAddress( - (account && account.address) || '' - )} - - -
    -
    -
    - - - - setMoniker(e.target.value) - } - placeholder="Moniker" - type="text" - /> - - - - - setPassphrase(e.target.value) - } - placeholder="Passphrase" - type="password" - /> - -
    - - - - -
    -
    - - ); -}; - -export default NewAccountModel; diff --git a/src/components/SelectAccountModal.tsx b/src/components/SelectAccountModal.tsx deleted file mode 100644 index f25c963..0000000 --- a/src/components/SelectAccountModal.tsx +++ /dev/null @@ -1,80 +0,0 @@ -import React, { useState } from 'react'; - -import utils from 'evm-lite-utils'; - -import { useDispatch } from 'react-redux'; - -import Button from 'react-bootstrap/Button'; -import Col from 'react-bootstrap/Col'; -import Form from 'react-bootstrap/Form'; -import Modal from 'react-bootstrap/Modal'; -import Row from 'react-bootstrap/Row'; - -import Avatar from './Avatar'; - -import { selectAccount } from '../modules/accounts'; - -import { MonikerEVMAccount } from '../monet'; - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); - -type Props = { - handleClose: () => void; - show: boolean; - account: MonikerEVMAccount; -}; - -const SelectAccountModal: React.FC = props => { - const dispatch = useDispatch(); - - const [passphrase, setPassphrase] = useState(''); - - const select = (moniker: string, pass: string) => - dispatch(selectAccount(moniker, pass)); - - const handleSwitchAccount = async () => { - await select(props.account.moniker, passphrase); - - props.handleClose(); - }; - - return ( - -
    - - Switch Accounts - - - - - - - -
    {capitalize(props.account.moniker)}
    - - {utils.cleanAddress(props.account.address)} - - -
    -
    - setPassphrase(e.target.value)} - placeholder="Passphrase" - type="password" - /> -
    - - - -
    -
    - ); -}; - -export default SelectAccountModal; diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx index 297ffeb..ec7c614 100644 --- a/src/components/Sidebar.tsx +++ b/src/components/Sidebar.tsx @@ -1,66 +1,119 @@ -import React, { useEffect } from 'react'; +import React from 'react'; import styled from 'styled-components'; -import { useDispatch, useSelector } from 'react-redux'; +import { faCog } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import Col from 'react-bootstrap/Col'; +import LOGO from '../assets/icon.png'; +import { Link } from 'react-router-dom'; -import Avatar from '../components/Avatar'; +type Props = {}; -import { listAccounts } from '../modules/accounts'; -import { selectAccounts } from '../selectors'; - -const SSidebar = styled(Col)` - background: #fff !important; - height: calc(100vh - 70px); - padding: 0 !important; - margin: 0 !important; - overflow-x: auto; - box-shadow: 1px 0px 30px rgba(0, 0, 0, 0.05); +const SSidebar = styled.div` + /* width: 300px; */ + height: 100vh; + background: #fff; + box-shadow: 0 2px 40px rgba(0, 0, 0, 0.03); + border-right: 1px solid #eee; `; -const SAvatar = styled.div` - display: block; - cursor: pointer; - padding: 15px; - padding-top: 15px; +const SLogo = styled.div` + font-family: Monet; + height: 60px; + line-height: 60px; + border-bottom: 1px solid #eee; + font-size: 18px; + letter-spacing: 3px; + padding: 0 20px; img { - margin: auto !important; - box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2); + margin-right: 7px; } +`; - :hover { - background: #fff; +const SLinks = styled.div` + margin-bottom: 50px; + + h3 { + font-size: 14px; + text-transform: uppercase; + letter-spacing: 0px; + color: #777; + margin-left: 20px; + font-weight: 700; + margin-bottom: 15px; + } + + ul { + text-indent: 0 !important; + padding: 0 !important; + margin: 0 !important; + } + + li { + margin: 0 !important; + font-family: 'Titillium Web', sans-serif; + list-style: none; + font-size: 16px; + border-bottom: 1px solid #f3f3f3; } -`; -const Sidebar: React.FC<{}> = () => { - const dispatch = useDispatch(); - const accounts = useSelector(selectAccounts); + li:first-child { + border-top: 1px solid #f3f3f3 !important; + } - const fetchAll = () => dispatch(listAccounts(true)); + a { + svg { + margin-right: 6px; + } - useEffect(() => { - fetchAll(); - }, []); + transition: background 0.1s cubic-bezier(1, 1, 1, 1); + color: #333; + font-weight: 600; + display: block !important; + padding: 12px 30px !important; + } + a:hover { + background: var(--blue); + color: white !important; + text-decoration: none; + } +`; + +const Sidebar: React.FunctionComponent = () => { return ( - <> - - {accounts.map(a => ( - - - - ))} - {accounts.map(a => ( - - - - ))} - - + + + + Monet + +
    +
    + +

    Actions

    + +
    + + +
      +
    • + + + Settings + +
    • +
    +
    +
    ); }; diff --git a/src/components/SubHeader.tsx b/src/components/SubHeader.tsx deleted file mode 100644 index 9d69a43..0000000 --- a/src/components/SubHeader.tsx +++ /dev/null @@ -1,68 +0,0 @@ -import React from 'react'; - -import styled from 'styled-components'; - -import Container from 'react-bootstrap/Container'; -import Tab from 'react-bootstrap/Tab'; -import Tabs from 'react-bootstrap/Tabs'; -import Transfer from './Transfer'; - -const SContainer = styled.div` - background: #fff; - border-top: 1px solid #f3f3f3 !important; - border-bottom: 1px solid #f3f3f3 !important; - /* padding: 15px 0; */ - - .nav-tabs { - border-color: #f3f3f3; - } - - .nav-link.active { - background: #fff !important; - border-bottom: 0px solid #eee !important; - } - - .nav-link { - background: #fff !important; - border-top: none !important; - border-radius: 0 !important; - border-bottom: 1px solid #f3f3f3 !important; - font-size: 14px !important; - } - - .tab-content { - background: #fff; - padding: 20px 0; - } -`; - -const SubHeader: React.FC<{}> = () => { - return ( - - - - - - - - - - - - - When in the chronicle of wasted time I see descriptions - of the fairest wights, And beauty making beautiful old - rime, In praise of ladies dead and lovely knights, Then, - in the blazon of sweet beauty's best, Of hand, of foot, - of lip, of eye, of brow, I see their antique pen would - have express'd Even such a beauty as you master now. So - all their praises are but prophecies Of this our time, - all you prefiguring; - - - - - ); -}; - -export default SubHeader; diff --git a/src/components/Transaction.tsx b/src/components/Transaction.tsx new file mode 100644 index 0000000..16d1dc1 --- /dev/null +++ b/src/components/Transaction.tsx @@ -0,0 +1,55 @@ +import React, { useState } from 'react'; + +// import { useDispatch } from 'react-redux'; + +import Button from 'react-bootstrap/Button'; +// import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import Modal from 'react-bootstrap/Modal'; +// import Row from 'react-bootstrap/Row'; + +// import Avatar from './Avatar'; + +type Props = { + transaction: any; + show: boolean; + handleClose: () => void; +}; + +const Transaction: React.FC = props => { + // const dispatch = useDispatch(); + + const [passphrase, setPassphrase] = useState(''); + + console.log(passphrase); + + return ( + +
    + + Confirm Transaction + + +
    +						
    +							{JSON.stringify(props.transaction, null, 4)}
    +						
    +					
    +
    + setPassphrase(e.target.value)} + placeholder="Passphrase" + type="password" + /> +
    + + + +
    +
    + ); +}; + +export default Transaction; diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index 64bb90e..f986ffb 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -2,7 +2,7 @@ import React, { useState } from 'react'; import styled from 'styled-components'; -import { useDispatch, useSelector } from 'react-redux'; +import { useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; @@ -11,15 +11,10 @@ import InputGroup from 'react-bootstrap/InputGroup'; import Row from 'react-bootstrap/Row'; import Avatar from '../components/Avatar'; - -import { selectAccountError, selectTransferLoading } from '../selectors'; - -import { transfer } from '../modules/accounts'; import Loader from './Loader'; +import Transaction from './Transaction'; -function isLetter(str: string) { - return str.length === 1 && str.match(/[a-z]/i); -} +import { selectConfig, selectTransferLoading } from '../selectors'; const STransfer = styled.div` padding-top: 20px; @@ -29,39 +24,42 @@ const SLoader = styled(Loader)` margin-left: 10px !important; `; -const Transfer: React.FC<{}> = () => { - const dispatch = useDispatch(); +type Props = { + from: string; +}; +const Transfer: React.FC = props => { const loading = useSelector(selectTransferLoading); - const error = useSelector(selectAccountError); + const config = useSelector(selectConfig); const [to, setTo] = useState(''); const [value, setValue] = useState(''); - const makeTransfer = async () => { - if (isLetter(value.slice(-1))) { - await dispatch(transfer(to, value)); - } else { - await dispatch(transfer(to, value + 'T')); - } - - if (!error) { - setTo(''); - setValue(''); - } + const [show, setShow] = useState(false); + const handleClose = () => setShow(false); + const confirmTx = async () => { + setShow(true); }; return ( +
    - - {to.length > 0 ? ( + {to.length > 0 && ( + - ) : ( -
    Transfer Coins
    - )} - + + )} = () => { +
    + + + + +

    {parseBalance(account.balance)}

    +
    Balance
    - -

    Balance

    -

    - {selected - ? parseBalance(selected.balance) - : '-'} -

    + +

    {account.nonce}

    +
    Nonce
    - -

    Nonce

    -

    - {selected ? selected.nonce : '-'} -

    + +

    + +

    +
    Validator
    - - - {selected && renderUnlocked()} +
    +
    + +
    Transfer
    + +
    + +
    Account Actions
    +
  • Change Password
  • +
  • Unlock
  • +
    ); }; -export default Accounts; +export default Account; diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index e07936c..3e356f5 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -1,106 +1,66 @@ import React from 'react'; -// import { Currency } from 'evm-lite-utils'; import styled from 'styled-components'; -import Col from 'react-bootstrap/Col'; -import Container from 'react-bootstrap/Container'; -import Row from 'react-bootstrap/Row'; +import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { useDispatch, useSelector } from 'react-redux'; +import { Link } from 'react-router-dom'; -// const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); +import Button from 'react-bootstrap/Button'; -const SPadding = styled.div` - padding: 20px; +import Avatar from '../components/Avatar'; +import Header from '../components/Header'; +import Loader from '../components/Loader'; + +import { listAccounts } from '../modules/accounts'; +import { selectAccounts, selectListAccountLoading } from '../selectors'; + +const SAccounts = styled.div` + padding: 30px !important; `; -type Props = { - handleClose: () => void; - show: boolean; -}; +const SAvatar = styled.div` + transition: opacity 0.2s cubic-bezier(1, 1, 1, 1); + opacity: 0.9; + display: inline-block; + cursor: pointer; + + :hover { + opacity: 1; + } +`; + +type Props = {}; + +const Accounts: React.FC = () => { + const dispatch = useDispatch(); + + const accounts = useSelector(selectAccounts); + const loading = useSelector(selectListAccountLoading); + + const refresh = () => dispatch(listAccounts()); -const Accounts: React.FC = props => { return ( - - - - - Lorem ipsum dolor sit amet, consectetur adipiscing elit, - sed do eiusmod tempor incididunt ut labore et dolore - magna aliqua. Consectetur lorem donec massa sapien - faucibus et molestie ac. Neque gravida in fermentum et - sollicitudin ac orci phasellus egestas. Tempor orci eu - lobortis elementum. Gravida arcu ac tortor dignissim. - Dignissim suspendisse in est ante in nibh mauris. Eu - facilisis sed odio morbi. Ultricies integer quis auctor - elit sed vulputate mi. Nisl purus in mollis nunc sed id. - Ornare suspendisse sed nisi lacus sed. Mattis - pellentesque id nibh tortor id aliquet lectus. Eget sit - amet tellus cras adipiscing enim eu turpis egestas. Id - aliquet lectus proin nibh nisl. Vitae suscipit tellus - mauris a diam. Sed vulputate mi sit amet mauris commodo - quis. Amet cursus sit amet dictum. Euismod lacinia at - quis risus sed vulputate odio. Egestas pretium aenean - pharetra magna ac placerat vestibulum lectus mauris. - Mauris vitae ultricies leo integer. Netus et malesuada - fames ac turpis egestas sed. Montes nascetur ridiculus - mus mauris vitae ultricies. Pharetra massa massa - ultricies mi quis hendrerit dolor magna. Mattis - ullamcorper velit sed ullamcorper morbi. Pharetra magna - ac placerat vestibulum lectus mauris ultrices. Viverra - aliquet eget sit amet. Et netus et malesuada fames. - Sapien eget mi proin sed libero enim sed faucibus. Eget - lorem dolor sed viverra. Amet nulla facilisi morbi - tempus iaculis urna. Tortor id aliquet lectus proin nibh - nisl condimentum. Cursus in hac habitasse platea - dictumst quisque sagittis. Mattis aliquam faucibus purus - in massa. Tincidunt lobortis feugiat vivamus at augue - eget arcu dictum. Arcu cursus vitae congue mauris - rhoncus aenean vel elit. Ut sem nulla pharetra diam sit - amet nisl suscipit. Proin nibh nisl condimentum id. Quis - lectus nulla at volutpat diam ut. Phasellus faucibus - scelerisque eleifend donec. Sed cras ornare arcu dui - vivamus arcu felis. Id semper risus in hendrerit gravida - rutrum quisque. Elit eget gravida cum sociis natoque. - Porta nibh venenatis cras sed felis eget velit aliquet - sagittis. Sed viverra ipsum nunc aliquet bibendum. Risus - in hendrerit gravida rutrum quisque. Et tortor at risus - viverra. Ultrices mi tempus imperdiet nulla malesuada - pellentesque elit eget gravida. Vulputate eu scelerisque - felis imperdiet proin fermentum. Ut enim blandit - volutpat maecenas volutpat blandit aliquam etiam erat. - Viverra nam libero justo laoreet sit amet. Fusce ut - placerat orci nulla pellentesque dignissim enim sit - amet. Consequat interdum varius sit amet mattis - vulputate. Habitant morbi tristique senectus et netus. - Proin fermentum leo vel orci porta non pulvinar neque. - Vel pharetra vel turpis nunc eget lorem dolor sed - viverra. Est pellentesque elit ullamcorper dignissim - cras tincidunt. Suspendisse faucibus interdum posuere - lorem ipsum dolor. Id ornare arcu odio ut sem nulla - pharetra. Eget velit aliquet sagittis id consectetur - purus ut faucibus. Morbi quis commodo odio aenean sed - adipiscing. Et malesuada fames ac turpis egestas - integer. Dapibus ultrices in iaculis nunc sed augue. - Pellentesque adipiscing commodo elit at imperdiet dui. - Dolor morbi non arcu risus quis varius quam. Egestas - integer eget aliquet nibh praesent tristique magna sit. - Vel orci porta non pulvinar. Blandit aliquam etiam erat - velit. Eu non diam phasellus vestibulum lorem sed. Sed - nisi lacus sed viverra. Neque vitae tempus quam - pellentesque nec nam aliquam sem. At consectetur lorem - donec massa sapien. Tristique risus nec feugiat in - fermentum posuere. Eget egestas purus viverra accumsan. - Vestibulum lectus mauris ultrices eros in cursus turpis - massa tincidunt. Integer malesuada nunc vel risus - commodo viverra maecenas. Egestas egestas fringilla - phasellus faucibus scelerisque eleifend donec. - - - - - - - + <> +
    + {' '} + +
    + + +

    Select an account to view more options

    + {accounts.map(a => ( + + + + + + ))} +
    + ); }; diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx index 8709f7f..95e41ff 100644 --- a/src/containers/Settings.tsx +++ b/src/containers/Settings.tsx @@ -1,25 +1,43 @@ import React, { useEffect, useState } from 'react'; -import { useDispatch, useSelector } from 'react-redux'; - import styled from 'styled-components'; +import { faCheck, faTimes } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Monet } from 'evm-lite-core'; +import { useDispatch, useSelector } from 'react-redux'; + import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; import Form from 'react-bootstrap/Form'; import Row from 'react-bootstrap/Row'; +import Header from '../components/Header'; import Loader from '../components/Loader'; -import { SContent } from '../components/styled'; - import { save } from '../modules/config'; +import { MonetInfo } from '../monet'; import { selectConfig, selectConfigSaveLoading } from '../selectors'; -const SSettings = styled.div``; +const SContent = styled.div` + padding: 30px !important; +`; -const Settings: React.FC<{}> = () => { +const SNode = styled.div` + padding: 10px 0; + /* background: var(--blue); */ + /* color: white; */ + + h5 { + color: var(--orange); + box-shadow: 1px 1px 0px #000; + } +`; + +type Props = {}; + +const Settings: React.FC = props => { const dispatch = useDispatch(); const config = useSelector(selectConfig); @@ -48,16 +66,50 @@ const Settings: React.FC<{}> = () => { setHost(config.connection.host); }, [config]); + // node details + + const fetchNodeDetails = async () => { + const monet = new Monet(host, Number(port)); + + try { + const info = await monet.getInfo(); + + if (info.min_gas_price) { + setMinGasPrice(Number(info.min_gas_price)); + setIsConnected(true); + } + } catch { + setIsConnected(false); + setMinGasPrice(0); + } + }; + + const [isConnected, setIsConnected] = useState(false); + const [minGasPrice, setMinGasPrice] = useState(0); + + useEffect(() => { + if (host.length && port.length) { + fetchNodeDetails(); + } + }, [host, port]); return ( - + <> +
    + {' '} + +
    - -

    Settings

    -
    - + + - + setHost(e.target.value) @@ -67,11 +119,14 @@ const Settings: React.FC<{}> = () => { placeholder="Host" /> - The default host address. + This is the IP address of the Monet node. If + you wish to connect to the current live + testnet use{' '} + camille.monet.network - + setPort(e.target.value) @@ -81,24 +136,50 @@ const Settings: React.FC<{}> = () => { placeholder="Port" /> - The default port. + The service port of the Monet + node. This is usally 8080. - - - {' '} - - + +
    +
    Details
    + {`${host}:${port}`} + + + + +
    Connection
    + + + +
    Min Gas Price
    + {minGasPrice || 0} Attoms + +
    +
    +
    +
    + +
    + +
    +
    + - + setGas(e.target.value) @@ -109,14 +190,18 @@ const Settings: React.FC<{}> = () => { /> The default gas to be used for - all transactions. + all transactions (excluding transfers). Gas + price will be pulled automatically from the + respective node before transactions are + submitted. - - + + +
    -
    + ); }; diff --git a/src/index.css b/src/index.css index 5583d96..dc3faa7 100644 --- a/src/index.css +++ b/src/index.css @@ -1,149 +1,131 @@ -@import url('https://fonts.googleapis.com/css?family=Titillium+Web:300,400&display=swap'); -@import url('https://fonts.googleapis.com/css?family=Cousine&display=swap'); -@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap'); -@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap'); +@import url('https://fonts.googleapis.com/css?family=Titillium+Web:400,600,700&display=swap'); @import url('https://fonts.googleapis.com/css?family=Fira+Code&display=swap'); -/* Blue: #1f3b94 */ -/* Red: #5bc0de */ -/* Green: #5cb85c */ -/* Orange: #f0ad4e */ -/* Purple: #7B3992 */ +@font-face { + font-family: 'Monet'; + src: local('Monet'), url(./assets/fonts/monet.ttf); +} + +* { + --blue: #253c99; + --orange: #f16622; + --green: #02a24b; + --red: #ec1c24; + --purple: #7f3b97; + --yellow: #ffe014; +} body { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - background: #fff !important; margin: 0 !important; padding: 0 !important; - font-size: 15px; - font-family: 'Open Sans', sans-serif !important; + + -webkit-font-smoothing: antialiased; overflow-x: hidden; -} -h1, -h2, -h3, -h4, -h5 { + background: #fff !important; + line-height: 1.7; } -.bg-light { - background: rgba(255, 255, 255, 1) !important; - color: #000 !important; - width: 100% !important; - /* border-bottom: 1px solid #fafafa; */ +.sticky-top { + position: sticky !important; + top: 0 !important; } -a { - color: #7b3992; +.sticky-top-60 { + position: sticky !important; + top: 60px !important; } .container-fluid { padding: 0 !important; } -a:hover { - text-decoration: none !important; - color: inherit !important; +h1, +h2, +h3, +h4, +h5 { + font-family: 'Titillium Web', sans-serif; + font-weight: 600; } -.jumbotron { - border-radius: 0 !important; - padding: 10px 0 !important; - background: #fff !important; - /* margin-bottom: 0 !important; */ - border-bottom: 1px solid #eee; - margin-bottom: 0px; +pre, +code { + font-family: 'Fira Code', monospace !important; + /* color: rgba(31, 66, 146, 1); */ + word-wrap: break-word; } -p { - color: rgba(0, 0, 0, 0.7) !important; +.mono { + font-family: 'Fira Code', monospace !important; + font-size: 18px; } -.row { - padding: 0 !important; +.btn { + font-family: 'Titillium Web', sans-serif; + font-weight: 700; } -.address { - font-family: 'Cousine', monospace !important; - font-size: 15px; +.btn-warning { + background: var(--orange); + color: white; + border: none !important; + outline: none !important; } -.btn { - font-size: 15px; - border-radius: 5px !important; +.btn-warning:hover { + background: #d35a1e; + color: white; } -.btn:focus { +.btn-warning:active { box-shadow: none !important; + outline: none !important; + border: none !important; } .btn-primary { - background: #1f4292 !important; + background: var(--blue); + color: white; border: none !important; + outline: none !important; } -.btn-outline-primary { - color: #1f4292 !important; - border-color: #1f4292 !important; -} - -.btn-outline-primary:hover { - color: #fff !important; - background-color: #1f4292 !important; - border-color: #1f4292 !important; +.btn-primary:hover { + background: #1e3383; + color: white; } -.btn-warning { - background: #f26630 !important; +.btn-primary:active { + box-shadow: none !important; + outline: none !important; border: none !important; - color: white !important; } .btn-success { - background-color: darkgreen; - border-color: darkgreen; -} - -.btn-outline-success { - border-color: darkgreen; - color: darkgreen !important; -} - -.btn-outline-success:hover { - color: #fff !important; - background-color: darkgreen !important; - border-color: darkgreen; -} - -.btn-warning:hover { - background: #e55e2b !important; - border: none !important; - color: white !important; -} - -.modal-content { + background: var(--green); + color: white; border: none !important; - border-radius: 5 !important; outline: none !important; - box-shadow: none !important; } -.modal-header { - border-bottom: 1px solid #f3f3f3 !important; +.btn-success:hover { + background: #02642e; + color: white; } -.modal-body { - padding: 30px 20px !important; +.btn-success:active { + box-shadow: none !important; + outline: none !important; + border: none !important; } -.modal-footer { - border-top: 1px solid #f3f3f3 !important; +.green { + color: var(--green); } -.mono { - font-family: 'Fira Code', monospace !important; +.red { + color: var(--red); } .dropdown-menu { @@ -165,16 +147,21 @@ p { background: #f1f1f1; } -hr { - border-color: #f3f3f3 !important; +.modal-content { + border: none !important; + border-radius: 5px !important; + outline: none !important; + box-shadow: none !important; } -.sticky-top { - position: sticky !important; - top: 0 !important; +.modal-header { + border-bottom: 1px solid #f3f3f3 !important; } -.sticky-top-70 { - position: sticky !important; - top: 70px !important; +.modal-body { + padding: 30px 20px !important; +} + +.modal-footer { + border-top: 1px solid #f3f3f3 !important; } diff --git a/src/selectors/index.ts b/src/selectors/index.ts index 904c2c5..60ba723 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -9,6 +9,8 @@ export const selectTransferLoading = (store: Store) => export const selectGetAccountLoading = (store: Store) => store.accounts.loading.get; +export const selectListAccountLoading = (store: Store) => + store.accounts.loading.list; export const selectCreateAccountLoading = (store: Store) => store.accounts.loading.create; diff --git a/tslint.json b/tslint.json index 2a5e948..c5e45e6 100644 --- a/tslint.json +++ b/tslint.json @@ -8,6 +8,7 @@ ] }, "rules": { + "no-unused-variable": false, "no-console": false, "no-shadowed-variable": false, "interface-name": false, diff --git a/yarn.lock b/yarn.lock index 08cce3b..53bdedf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -173,6 +173,32 @@ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.4.tgz#a87b4b04e5ae14a88d48ebef15015f6b7d1f5677" integrity sha512-kBa+cDHOR9jpRJ+kcGMsysrls0leukrm68DmFQoMIWQcXdr2cZvyvypWuGYT7U+9kAExUE7+T7r6G3C3A6L8MQ== +"@fortawesome/fontawesome-common-types@^0.2.25": + version "0.2.25" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.25.tgz#6df015905081f2762e5cfddeb7a20d2e9b16c786" + integrity sha512-3RuZPDuuPELd7RXtUqTCfed14fcny9UiPOkdr2i+cYxBoTOfQgxcDoq77fHiiHcgWuo1LoBUpvGxFF1H/y7s3Q== + +"@fortawesome/fontawesome-svg-core@^1.2.25": + version "1.2.25" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.2.25.tgz#24b03391d14f0c6171e8cad7057c687b74049790" + integrity sha512-MotKnn53JKqbkLQiwcZSBJVYtTgIKFbh7B8+kd05TSnfKYPFmjKKI59o2fpz5t0Hzl35vVGU6+N4twoOpZUrqA== + dependencies: + "@fortawesome/fontawesome-common-types" "^0.2.25" + +"@fortawesome/free-solid-svg-icons@^5.11.2": + version "5.11.2" + resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.11.2.tgz#2f2f1459743a27902b76655a0d0bc5ec4d945631" + integrity sha512-zBue4i0PAZJUXOmLBBvM7L0O7wmsDC8dFv9IhpW5QL4kT9xhhVUsYg/LX1+5KaukWq4/cbDcKT+RT1aRe543sg== + dependencies: + "@fortawesome/fontawesome-common-types" "^0.2.25" + +"@fortawesome/react-fontawesome@^0.1.7": + version "0.1.7" + resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.7.tgz#c004ca75c15c5a1218101e8f042b8da8dec0c4b5" + integrity sha512-AHWSzOsHBe5vqOkrvs+CKw+8eLl+0XZsVixOWhTPpGpOA8WQUbVU6J9cmtAvTaxUU5OIf+rgxxF8ZKc3BVldxg== + dependencies: + prop-types "^15.5.10" + "@mrmlnc/readdir-enhanced@^2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" @@ -5575,7 +5601,7 @@ prop-types-extra@^1.1.0: react-is "^16.3.2" warning "^3.0.0" -prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: +prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== From 7f45cb3e823758f0834045bb2810fc86900c9e66 Mon Sep 17 00:00:00 2001 From: Danu Date: Wed, 13 Nov 2019 15:47:23 +0000 Subject: [PATCH 15/30] update: Added react-reveal types and better design Account page --- package.json | 1 + src/components/Header.tsx | 7 +- src/components/Sidebar.tsx | 16 ++-- src/components/Transfer.tsx | 30 +++----- src/components/Wrapper.tsx | 4 +- src/containers/Account.tsx | 18 ++--- src/containers/Settings.tsx | 135 +++++++++++++++++++--------------- src/index.css | 3 +- src/selectors/index.ts | 3 + tsconfig.json | 3 +- types/react-reveal/index.d.ts | 25 +++++++ yarn.lock | 7 ++ 12 files changed, 149 insertions(+), 103 deletions(-) create mode 100644 types/react-reveal/index.d.ts diff --git a/package.json b/package.json index 6bb4783..130c64e 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "react-bootstrap": "^1.0.0-beta.14", "react-dom": "^16.10.2", "react-redux": "^7.1.1", + "react-reveal": "^1.2.2", "react-spring": "^8.0.27", "react-toastify": "^5.4.0", "redux": "^4.0.4", diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 95146f0..7f507a1 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -11,8 +11,9 @@ const SHeader = styled.div` height: 60px; line-height: 60px; width: 100%; - box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); + /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ border-bottom: 1px solid #eee; + padding: 0 15px; `; const STitle = styled.div` @@ -21,6 +22,8 @@ const STitle = styled.div` font-family: 'Titillium Web', sans-serif; `; +const SIcon = styled.span``; + type Props = { title: string; icon?: JSX.Element; @@ -34,7 +37,7 @@ const Header: React.FC = props => { - {props.icon} + {props.icon} {props.title} diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx index ec7c614..278d1e5 100644 --- a/src/components/Sidebar.tsx +++ b/src/components/Sidebar.tsx @@ -2,11 +2,11 @@ import React from 'react'; import styled from 'styled-components'; -import { faCog } from '@fortawesome/free-solid-svg-icons'; +import { faCog, faUser } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Link } from 'react-router-dom'; import LOGO from '../assets/icon.png'; -import { Link } from 'react-router-dom'; type Props = {}; @@ -14,7 +14,7 @@ const SSidebar = styled.div` /* width: 300px; */ height: 100vh; background: #fff; - box-shadow: 0 2px 40px rgba(0, 0, 0, 0.03); + /* box-shadow: 0 2px 40px rgba(0, 0, 0, 0.03); */ border-right: 1px solid #eee; `; @@ -65,7 +65,7 @@ const SLinks = styled.div` a { svg { - margin-right: 6px; + margin-right: 13px; } transition: background 0.1s cubic-bezier(1, 1, 1, 1); @@ -95,10 +95,10 @@ const Sidebar: React.FunctionComponent = () => {

    Actions

    diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index f986ffb..8539100 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -8,10 +8,10 @@ import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; import InputGroup from 'react-bootstrap/InputGroup'; -import Row from 'react-bootstrap/Row'; +// import Row from 'react-bootstrap/Row'; -import Avatar from '../components/Avatar'; -import Loader from './Loader'; +// import Avatar from '../components/Avatar'; +// import Loader from './Loader'; import Transaction from './Transaction'; import { selectConfig, selectTransferLoading } from '../selectors'; @@ -20,9 +20,9 @@ const STransfer = styled.div` padding-top: 20px; `; -const SLoader = styled(Loader)` - margin-left: 10px !important; -`; +// const SLoader = styled(Loader)` +// margin-left: 10px !important; +// `; type Props = { from: string; @@ -54,12 +54,7 @@ const Transfer: React.FC = props => { }} />
    - - {to.length > 0 && ( - - - - )} + = props => { The address you wish to transfer to. - - = props => { is provided. - - + - - - - + +
    ); diff --git a/src/components/Wrapper.tsx b/src/components/Wrapper.tsx index cd9adea..93eae48 100644 --- a/src/components/Wrapper.tsx +++ b/src/components/Wrapper.tsx @@ -9,7 +9,7 @@ import Row from 'react-bootstrap/Row'; import Sidebar from '../components/Sidebar'; const SPadding = styled.div` - min-height: 200vh; + min-height: 100vh; `; const Wrapper: React.FunctionComponent<{}> = props => { @@ -17,7 +17,7 @@ const Wrapper: React.FunctionComponent<{}> = props => { <> - + diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index ce7e39e..a2ff5c6 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -1,10 +1,11 @@ import React, { useEffect, useState } from 'react'; -import utils, { Currency } from 'evm-lite-utils'; +import { Currency } from 'evm-lite-utils'; import styled from 'styled-components'; -import { faCircleNotch, faCheck } from '@fortawesome/free-solid-svg-icons'; +import { faCheck, faCircleNotch } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Monet } from 'evm-lite-core'; import { useSelector } from 'react-redux'; import { RouteComponentProps } from 'react-router-dom'; @@ -24,15 +25,13 @@ import { selectConfig, selectListAccountLoading } from '../selectors'; -import { Monet } from 'evm-lite-core'; const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); const SStatistic = styled.div` - background: #fff; - z-index: 23; + /* background: #fff; */ + /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ width: 100%; - box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); border-bottom: 1px solid #eee; .col { @@ -98,6 +97,8 @@ const Account: React.FC> = props => { if (a) { setAccount(a); fetchAccount(a); + } else { + props.history.push('/'); } }, []); @@ -105,9 +106,7 @@ const Account: React.FC> = props => { <>
    } - title={`${capitalize(account.moniker)} (${utils.cleanAddress( - account.address - )})`} + title={`${capitalize(account.moniker)}`} > {' '}
    - - + + = props => { This is the IP address of the Monet node. If you wish to connect to the current live testnet use{' '} - camille.monet.network + camille.monet.network @@ -136,47 +141,25 @@ const Settings: React.FC = props => { placeholder="Port" /> - The service port of the Monet - node. This is usally 8080. + The service port of the Monet node. This is + usally 8080. - -
    -
    Details
    - {`${host}:${port}`} - - - - -
    Connection
    - - - -
    Min Gas Price
    - {minGasPrice || 0} Attoms - -
    -
    -
    -
    + +

    + {' '} + Connection +


    - + @@ -189,14 +172,46 @@ const Settings: React.FC = props => { placeholder="Gas" /> - The default gas to be used for - all transactions (excluding transfers). Gas + The default gas to be used for all + transactions (excluding transfers). Gas price will be pulled automatically from the respective node before transactions are submitted. + + {!isConnected &&

    No valid connection

    } + {isConnected &&

    {minGasPrice || 0} Attoms

    } + +
    + +
    +

    Advanced

    +
    +
    + + + + + + setVDatadir(e.target.value) + } + type="text" + defaultValue={vdatadir} + placeholder="Gas" + /> + + The data directory is the folder in which + all settings and encrypted keyfiles are + stored. This setting should not be changed + unless you are aware of the side effects. + For more info visit the{' '} + documentation. + + +
    diff --git a/src/index.css b/src/index.css index dc3faa7..9f1b9d6 100644 --- a/src/index.css +++ b/src/index.css @@ -7,6 +7,7 @@ } * { + transition: height 1s cubic-bezier(1, 0, 0, 1); --blue: #253c99; --orange: #f16622; --green: #02a24b; @@ -22,7 +23,7 @@ body { -webkit-font-smoothing: antialiased; overflow-x: hidden; - background: #fff !important; + background: #f9f9f9 !important; line-height: 1.7; } diff --git a/src/selectors/index.ts b/src/selectors/index.ts index 60ba723..95ad29e 100644 --- a/src/selectors/index.ts +++ b/src/selectors/index.ts @@ -18,6 +18,9 @@ export const selectCreateAccountLoading = (store: Store) => export const selectAccountError = (store: Store) => store.accounts.error; // config selectors +export const selectDatadir = (store: Store) => store.config.directory; export const selectConfig = (store: Store) => store.config.data; +export const selectConfigError = (store: Store) => store.config.error; + export const selectConfigSaveLoading = (store: Store) => store.config.loading.save; diff --git a/tsconfig.json b/tsconfig.json index a7082c2..5bdc925 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -20,7 +20,8 @@ "allowSyntheticDefaultImports": true, "strict": true, "resolveJsonModule": true, - "noEmit": true + "noEmit": true, + "typeRoots": ["./types", "./node_modules/@types"] }, "exclude": [ "node_modules", diff --git a/types/react-reveal/index.d.ts b/types/react-reveal/index.d.ts new file mode 100644 index 0000000..b47a3bb --- /dev/null +++ b/types/react-reveal/index.d.ts @@ -0,0 +1,25 @@ +const Bounce: React.FC; +const Fade: React.FC; +const Slide: React.FC; +const Pulse: React.FC; +const Flip: React.FC; + +declare module 'react-reveal/Bounce' { + export default Bounce; +} + +declare module 'react-reveal/Pulse' { + export default Pulse; +} + +declare module 'react-reveal/Fade' { + export default Fade; +} + +declare module 'react-reveal/Flip' { + export default Flip; +} + +declare module 'react-reveal/Slide' { + export default Slide; +} diff --git a/yarn.lock b/yarn.lock index 53bdedf..7492365 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5884,6 +5884,13 @@ react-redux@^7.1.1: prop-types "^15.7.2" react-is "^16.9.0" +react-reveal@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/react-reveal/-/react-reveal-1.2.2.tgz#f47fbc44debc4c185ae2163a215a9e822c7adfef" + integrity sha512-JCv3fAoU6Z+Lcd8U48bwzm4pMZ79qsedSXYwpwt6lJNtj/v5nKJYZZbw3yhaQPPgYePo3Y0NOCoYOq/jcsisuw== + dependencies: + prop-types "^15.5.10" + react-router-dom@^5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" From fad6fe0f48582281731d00986a5f0b78deeb1320 Mon Sep 17 00:00:00 2001 From: Danu Date: Wed, 13 Nov 2019 17:46:04 +0000 Subject: [PATCH 16/30] update: Added loader to settings page --- src/containers/Settings.tsx | 41 ++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx index 0075c83..ce9f880 100644 --- a/src/containers/Settings.tsx +++ b/src/containers/Settings.tsx @@ -74,6 +74,8 @@ const Settings: React.FC = props => { // node details const fetchNodeDetails = async () => { + setConLoading(true); + const monet = new Monet(host, Number(port)); try { @@ -87,9 +89,14 @@ const Settings: React.FC = props => { setIsConnected(false); setMinGasPrice(0); } + + setTimeout(() => { + setConLoading(false); + }, 500); }; const [isConnected, setIsConnected] = useState(false); + const [conLoading, setConLoading] = useState(false); const [minGasPrice, setMinGasPrice] = useState(0); useEffect(() => { @@ -148,11 +155,21 @@ const Settings: React.FC = props => {

    - {' '} - Connection + {conLoading ? ( + + ) : ( +
    + {' '} + Connection +
    + )}

    @@ -181,8 +198,18 @@ const Settings: React.FC = props => { - {!isConnected &&

    No valid connection

    } - {isConnected &&

    {minGasPrice || 0} Attoms

    } + {conLoading ? ( + + ) : ( +
    + {isConnected && ( + <> +

    {minGasPrice || 0} Attoms

    +
    Gas Price
    + + )} +
    + )}
    From 525fe082fc4463808ea57be5fcf4f12abbd8bb49 Mon Sep 17 00:00:00 2001 From: Danu Date: Thu, 14 Nov 2019 13:49:28 +0000 Subject: [PATCH 17/30] update: Working transfer, settings and accounts page --- src/app/App.tsx | 2 +- src/components/Avatar.tsx | 8 +- src/components/NewAccount.tsx | 157 +++++++++++++++++++++++++++++++ src/components/Sidebar.tsx | 2 + src/components/Transfer.tsx | 171 ++++++++++++++++++++++++++++------ src/components/Wrapper.tsx | 2 +- src/containers/Account.tsx | 32 +++---- src/containers/Accounts.tsx | 58 ++++++++++-- src/containers/Settings.tsx | 13 +-- src/index.css | 5 +- src/index.ts | 4 +- src/modules/accounts.ts | 160 +++---------------------------- src/modules/config.ts | 7 -- src/utils.ts | 18 ++++ 14 files changed, 416 insertions(+), 223 deletions(-) create mode 100644 src/components/NewAccount.tsx create mode 100644 src/utils.ts diff --git a/src/app/App.tsx b/src/app/App.tsx index bb12600..52c9f38 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -17,7 +17,7 @@ const App: React.FunctionComponent<{}> = () => { const dispatch = useDispatch(); const initConf = () => dispatch(initConfig()); - const initAccounts = () => dispatch(listAccounts()); + const initAccounts = () => dispatch(listAccounts(true)); useEffect(() => { initConf(); diff --git a/src/components/Avatar.tsx b/src/components/Avatar.tsx index d6731e6..2bc0e41 100644 --- a/src/components/Avatar.tsx +++ b/src/components/Avatar.tsx @@ -7,7 +7,7 @@ import Image from 'react-bootstrap/Image'; const SAvatar = styled(Image)` border-radius: 5px !important; - margin-right: 5px; + margin-right: 1px; `; type Props = { @@ -18,12 +18,12 @@ type Props = { const Avatar: React.FC = props => { return ( ); }; diff --git a/src/components/NewAccount.tsx b/src/components/NewAccount.tsx new file mode 100644 index 0000000..47a1e81 --- /dev/null +++ b/src/components/NewAccount.tsx @@ -0,0 +1,157 @@ +import React, { useEffect, useState } from 'react'; + +import utils from 'evm-lite-utils'; +import styled from 'styled-components'; + +import { faTimes } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Account } from 'evm-lite-core'; +import { useDispatch, useSelector } from 'react-redux'; + +import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Form from 'react-bootstrap/Form'; +import Row from 'react-bootstrap/Row'; + +import Avatar from './Avatar'; + +import { createAccount } from '../modules/accounts'; +import { selectCreateAccountLoading } from '../selectors'; + +const SCreateAccount = styled.div` + padding: 30px; + border-bottom: 1px solid rgba(0, 0, 0, 0.1); + + h4 { + /* margin-bottom: 20px !important; */ + } +`; + +const NewAccount: React.FC<{}> = () => { + const dispatch = useDispatch(); + + const [moniker, setMoniker] = useState(''); + const [passphrase, setPassphrase] = useState(''); + const [error, setError] = useState(''); + const [account, setAccount] = useState(); + + console.log(error); + + const loading = useSelector(selectCreateAccountLoading); + + const create = async () => { + if (!moniker.length) { + setError('Moniker cannot be empty'); + return; + } + + if (!utils.validMoniker(moniker)) { + setError( + 'Moniker can only include alphanumeric characters and underscores' + ); + return; + } + + if (passphrase.length < 3) { + setError('Passphrase must be longer than 3 characters'); + return; + } + + if (account) { + await dispatch(createAccount(account, moniker, passphrase)); + + randomize(); + setMoniker(''); + setPassphrase(''); + } + }; + + useEffect(() => { + setAccount(Account.new()); + }, []); + + const randomize = () => { + setAccount(Account.new()); + }; + + return ( + <> + + + +

    New Account

    +

    Fill in the form below to create a new account.

    +
    + + + + + +
    {moniker || 'Moniker'}
    + + {utils.cleanAddress( + (account && account.address) || '' + )} + + +
    +
    + + + + setMoniker(e.target.value) + } + placeholder="Moniker" + type="text" + /> + + + + + setPassphrase(e.target.value) + } + placeholder="Passphrase" + type="password" + /> + + {' '} + + + + + {error.length > 0 && ( + + +
    + {' '} +
    + + +
    {error}
    + +
    + )} + +
    +
    + + ); +}; + +export default NewAccount; diff --git a/src/components/Sidebar.tsx b/src/components/Sidebar.tsx index 278d1e5..dedf420 100644 --- a/src/components/Sidebar.tsx +++ b/src/components/Sidebar.tsx @@ -25,6 +25,8 @@ const SLogo = styled.div` border-bottom: 1px solid #eee; font-size: 18px; letter-spacing: 3px; + color: var(--blue); + padding: 0 20px; img { diff --git a/src/components/Transfer.tsx b/src/components/Transfer.tsx index 8539100..c457db7 100644 --- a/src/components/Transfer.tsx +++ b/src/components/Transfer.tsx @@ -2,60 +2,86 @@ import React, { useState } from 'react'; import styled from 'styled-components'; -import { useSelector } from 'react-redux'; +import { faCheck } from '@fortawesome/free-solid-svg-icons'; +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Currency } from 'evm-lite-utils'; +import { useDispatch, useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Form from 'react-bootstrap/Form'; import InputGroup from 'react-bootstrap/InputGroup'; -// import Row from 'react-bootstrap/Row'; +import Row from 'react-bootstrap/Row'; -// import Avatar from '../components/Avatar'; -// import Loader from './Loader'; -import Transaction from './Transaction'; +import Avatar from './Avatar'; +import Loader from './Loader'; -import { selectConfig, selectTransferLoading } from '../selectors'; +import { MonikerEVMAccount } from 'src/monet'; +import { transfer } from '../modules/accounts'; +import { selectTransferLoading } from '../selectors'; + +function isLetter(str: string) { + return str.length === 1 && str.match(/[a-z]/i); +} const STransfer = styled.div` padding-top: 20px; + + td { + padding-right: 10px; + } + + h5 { + } `; -// const SLoader = styled(Loader)` -// margin-left: 10px !important; -// `; +const SConfirm = styled.div` + padding-left: 30px; +`; type Props = { - from: string; + account: MonikerEVMAccount; + getAccount: () => any; }; const Transfer: React.FC = props => { + const dispatch = useDispatch(); + const loading = useSelector(selectTransferLoading); - const config = useSelector(selectConfig); + const [success, setSuccess] = useState(''); const [to, setTo] = useState(''); const [value, setValue] = useState(''); + const [passphrase, setPassphrase] = useState(''); + + const makeTransfer = async () => { + if (isLetter(value.slice(-1))) { + await dispatch( + transfer(props.account.moniker, passphrase, to, value) + ); + } else { + await dispatch( + transfer(props.account.moniker, passphrase, to, value + 'T') + ); + } + + setTo(''); + setValue(''); + + setSuccess('Transfer successful'); + await props.getAccount(); - const [show, setShow] = useState(false); - const handleClose = () => setShow(false); - const confirmTx = async () => { - setShow(true); + setTimeout(() => { + setSuccess(''); + }, 3000); }; return ( -
    - + +
    Transfer
    setTo(e.target.value)} @@ -94,17 +120,102 @@ const Transfer: React.FC = props => { is provided. - + + + setPassphrase(e.target.value) + } + value={passphrase} + type="password" + placeholder="Passphrase" + /> + + {' '} + + + + {to.length > 0 && + value.length > 0 && + passphrase.length > 0 ? ( + +
    Confirm
    +

    + Make sure the details below are correct + before submitting transaction +

    + + From + To + + + + + + + + + + {props.account.address} + + + + + + + + + + + {to} + + + + +
    +
    + {' '} + {value.length > 0 + ? new Currency(value + 'T').format('T') + : '0T'} +
    +
    + ) : ( + success.length > 0 && ( + +
    + {' '} +
    +
    {success}
    +
    + ) + )} -
    diff --git a/src/components/Wrapper.tsx b/src/components/Wrapper.tsx index 93eae48..c5954c6 100644 --- a/src/components/Wrapper.tsx +++ b/src/components/Wrapper.tsx @@ -9,7 +9,7 @@ import Row from 'react-bootstrap/Row'; import Sidebar from '../components/Sidebar'; const SPadding = styled.div` - min-height: 100vh; + padding-bottom: 70px; `; const Wrapper: React.FunctionComponent<{}> = props => { diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index a2ff5c6..68baf9c 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -25,17 +25,17 @@ import { selectConfig, selectListAccountLoading } from '../selectors'; - -const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); +import { capitalize, parseBalance } from '../utils'; const SStatistic = styled.div` /* background: #fff; */ /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ width: 100%; - border-bottom: 1px solid #eee; + border-bottom: var(--border); .col { padding: 20px 0; + border-right: var(--border); } `; @@ -46,6 +46,7 @@ const SSettings = styled.div` const STransfer = styled.div` padding: 30px !important; + border-bottom: var(--border); `; type Props = { @@ -76,21 +77,6 @@ const Account: React.FC> = props => { }); }; - const parseBalance = (balance: Currency) => { - const b = balance.format('T'); - const l = b.split('.'); - - if (l.length !== 2) { - return l.join('.'); - } - - if (l[1]) { - l[1] = l[1].slice(0, 4); - } - - return l.join('.') + 'T'; - }; - useEffect(() => { const a = accounts.find(a => a.moniker.toLowerCase() === moniker); @@ -116,6 +102,10 @@ const Account: React.FC> = props => { + +
    0 Seconds ago
    +
    Last Updated
    +

    {parseBalance(account.balance)}

    Balance
    @@ -135,8 +125,10 @@ const Account: React.FC> = props => {
    -
    Transfer
    - + fetchAccount(account)} + account={account} + />
    Account Actions
    diff --git a/src/containers/Accounts.tsx b/src/containers/Accounts.tsx index 3e356f5..f569e06 100644 --- a/src/containers/Accounts.tsx +++ b/src/containers/Accounts.tsx @@ -4,27 +4,53 @@ import styled from 'styled-components'; import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; import { Link } from 'react-router-dom'; import Button from 'react-bootstrap/Button'; +import Col from 'react-bootstrap/Col'; +import Container from 'react-bootstrap/Container'; +import Row from 'react-bootstrap/Row'; import Avatar from '../components/Avatar'; import Header from '../components/Header'; import Loader from '../components/Loader'; +import NewAccount from '../components/NewAccount'; import { listAccounts } from '../modules/accounts'; import { selectAccounts, selectListAccountLoading } from '../selectors'; +import { parseBalance } from '../utils'; const SAccounts = styled.div` padding: 30px !important; + border-bottom: var(--border); + z-index: 100; +`; + +const SStatistic = styled.div` + /* background: #fff; */ + /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ + width: 100%; + border-bottom: var(--border); + background: #fff; + + h3 { + font-size: 35px; + } + + .col { + padding: 10px 0; + border-right: var(--border); + } `; const SAvatar = styled.div` transition: opacity 0.2s cubic-bezier(1, 1, 1, 1); opacity: 0.9; - display: inline-block; cursor: pointer; + display: inline-block; + margin-bottom: 15px; :hover { opacity: 1; @@ -39,7 +65,12 @@ const Accounts: React.FC = () => { const accounts = useSelector(selectAccounts); const loading = useSelector(selectListAccountLoading); - const refresh = () => dispatch(listAccounts()); + const refresh = () => dispatch(listAccounts(true)); + + let totalBalance = new Currency(0); + accounts.map(account => { + totalBalance = totalBalance.plus(account.balance); + }); return ( <> @@ -49,17 +80,32 @@ const Accounts: React.FC = () => {
    - - -

    Select an account to view more options

    + + + + +

    {parseBalance(totalBalance)}

    +
    Total Balance
    + + +

    {accounts.length}

    +
    Accounts
    + +
    +
    +
    + +

    Select an account view more options

    {accounts.map(a => ( - + ))}
    + + ); }; diff --git a/src/containers/Settings.tsx b/src/containers/Settings.tsx index ce9f880..f5d3a6e 100644 --- a/src/containers/Settings.tsx +++ b/src/containers/Settings.tsx @@ -9,9 +9,7 @@ import { useDispatch, useSelector } from 'react-redux'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; -// import Container from 'react-bootstrap/Container'; import Form from 'react-bootstrap/Form'; -// import Row from 'react-bootstrap/Row'; import Header from '../components/Header'; import Loader from '../components/Loader'; @@ -20,13 +18,17 @@ import { save, setDirectory } from '../modules/config'; import { MonetInfo } from '../monet'; import { selectConfig, + selectConfigError, selectConfigSaveLoading, - selectDatadir, - selectConfigError + selectDatadir } from '../selectors'; const SContent = styled.div` padding: 30px !important; + + h4 { + margin-bottom: 15px; + } `; type Props = {}; @@ -113,7 +115,7 @@ const Settings: React.FC = props => { onClick={saveConfig} variant="outline-success" > - Save + {datadir !== vdatadir ? 'Save Datadir' : 'Save'}

    1~Y!Pben$S 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%0D_C6G)U_?QYKBe=ZB zGUT7+L?Y_EalUpV^1k^6l=`ud!n?7Xz9sW@t1x#$nKSqw<1<%dFEF%U^f933(*93ueQ@+C1@`td6I8eT z!3Cdc2}ZaFw-@v62~Ps4DEG>x%CB!->@_>JthO*(t4^9T0;~>{6}x${vHD?qnzi0E zXin6Uy^D?!bj$ET13Q`R-M^A%jaOixINRWMF6Ce1_-9YO;O1degryfvz@3h6wG_oG0Qfri5Bs#Ux7il;gdrFAD$nRxr z-lt6vR+e!r#M~Ay_9UM_|3S@B@XYBcrtOE_H5a0)@5IG_;FfN*L}lf@Fu_=` zug)XIQ(&(!ov@b5^&WrxQei1h=H{+~%a727YqvIvcF&9rw=hMT4_PycT zD=hujpHYKLhI>7{NdHp6Ux(UX6hHk!qL1QBcID=qjaQiNA{?I{$({w}|N7`?&=%@B zbI`x@Bm%el6@22qmg)7sp7pQaYpoX9{OkK)z2D!z_fQX5hssw%L;HiC^zaeMp5q7o zqyHbTH`0ZfMQywi@3`ps_v!ZsvH$#)hZm3VOW666kY#7T>D1#p=&28bi*F4X{;Rh4 z`j^Zy9_(W*Prcp?9oYOVa0BKPSWJ7hNa>OP;u(9Y`QdfEO6$W6ME5$>fBTuI_%ZOJ zs{b!9dI(L_7ngPVpl5xf>5ja(e9k@X&XK?H>VJNE+^xSxGjndK_;miyfA?2xAY=5p z_W$HC24vZ}B=u8!3je=Zq{08A5fLYl7u{5++q>&&q>IcB`C1uC_VLqJ~~YYV1K4#U;fyh65Zb~9>yOjS$1Sl5MS8r zCDImEIdxDKr-=dMQo-;W1?-uj?r&akp8&FD{~&3cy10)t_IVYF<&(f3m(6XvC=Ym8 zW-Si@ikJ^s^au1lC2$>XLMO6GUH^b4k!A(-!s1Gh@4U~;>}Q}4-Hw##nodpGmS`qCJN`U$QFN_+6Q8DBPelYo$&JMX8L`SH8`Tus-f4#e>>3K#kV?GP}E~>rsTEGeU;r@_dj&_i<6{XJsfq@4){f9L30+%f&Bt~qy*MmC+VZI zbQLoCi%0!mql@c3YGWVlo*m0?u2GmRFzt6>pU#rV>4K15d1+j2p{qjtKZ)yKXUupA zsBflKVt)NWy{hL(Nu44zGgipn)DUsSY`4O(AMWfGX_Vd`(r#2m*FcmH8X|;%#OxKP zQaign0)qCLGv3OSjqoCc)-Zi6hKaAJON2LH~~?>BVW2^*zy4bg=Yr&Uyz$| z!Q-H~dH5)^ETgJfX#_I4t;=tDw_@{up<;ilJbW}mPJz*p$8VXKgb4{f+a#k4G~=pye77+(`6{ay9?$NLopJX)G0@oF5l%M2L$lFr=`Ce@{+=<-kx`5BMtr=s zyiZLnr>PL@v}bnG%73(ezzU}F(xJKF3Gto_n1FwWl){6F0U-{`tJxEi3j{rF1fo-p zU6SC%r(a<6Aj8f&dmCOS)5AFj zxu2n(?W$~*i65G0Z?fL&FHu4x*Z!%sIa0-cXisUSiFw)}ZN~s6BDL(&1}b=?RWNe< zq;qdn;`&KaO~QkIB`_XUf%WbUllGLt2wsv@HmMf>J)dpN1LSf;_S9`*BMmO^JvkXj zGwTPMBQp!BBsIBTUL#5EL?IW`2U6CC*!wCC@ z$gaw-XG5nt(tnc*z~yMmv-(+Fdt!~b+^*z3Pmsy7)cn}f4wYghO8NwC|Kt$J-zE5T zc)txg-eI%NO2bWfpX5wJW7h?=#eQkDAZS;(`SVHb1^RJKz}JR&*~q}!Ni`+?UJ&Ft zb?%y@u+dM(;dj5?s`trK9=06T zjmKqvWemZo9r96KHe3n6#jS%6p?`?e1JpUCX}OS%6ZWd1X$)R2LBw_iv! z+8bXAsCKRVW&E%3rLhy=Lp9+t0kOwFhHB4{&C^bQZOPTXHmEI@b+)9h{-1v z8!KFU7n3~sL0kbYBXQLC7cNtRsso9NY$6^tTir;HuBus|U zwAZxCL{>I{O4uRGY{X^0e6^8OeCrKHzYl3?8Kw@Q!gg0~ce3VvJ`1V463z=3vbUMX z5-g;25@|gfdI?#YK(CJqkG#3vc=$N&o1I3QJs{C@@f03`XQ_)q9hy^Pp}l20+ndK! zIl>zv1;?Y?)8L9bDw^heJS`&F^Rz~gE$jYb>#@)0KP4Ll6f{Z=|(!4nJJFoAwL#aRXfh8K>JG#z$WS{qw&|u#oMt0c8u8 z+34|T+d!waA@G?8F+GqdbD8`~7Bte0irLY+_F*Iktj+~~J$;S-dRCVnX6 zVchG`5T-^twpT{mT83wHe|Q^HZe2sQ-hvi5>MM0;Z4bs*P`2wPIo8R?eVv0odL57A>r$(7j|PjEqAL-C*hZeH zXsG6CGTAsdgOebhH>tm*4N1@@uwr@-uufxy&xe7)(t2uZl7b4o4Nl=CZtiqQ5`9d*b2*~^#O zn#2&1Tpyos`=*#9qp2F|c=sZA^(=Uj%I$lh#EnT7W>AEIZc5#@L=HGW5(D_T>4fY! zrP&HY(zCPqs8x2L+v`Tyc6sqg2KOy=Be1m;RfJAJ&A4AA$D5+~$; z_n<1B+lSf9SS|3z_Y?WR^cBy_fdpJW*c7ZJfTx273n)XKPwFxfP7SUC$wLEokxzDFz(43O7*YHqkyUOj2=`D<$;OP18 zLfmkWxP{o(kK5QbX^xW0?BegQQ*Qg5mKsQAvahz=oJB@i57&&Q7WP?`Mk=dnck*qS z_VBW)vle}QVzDmdFk`#|FgXGBZeuLU(jR5vKAnwhRFoGTP09c9=~R@mih4CGvfoCE z>TqwNS$M2tKg}`jAbQbW*XeOqP#dEoLL@h+=#DQ4X{>qDOevQ0K$HdMR(6OH5Ab{Rq!f~~;T6b^3e z&2U594WcJe>rg>XB>3^KHM^%}X4;wuSXSbS%qX_L`*COqe+QZ{?+8N<2MWVNRW#~I z=XBh+7Vajl$c7q64YKApwq27bFlvc`fH&kvlr6rFykVVy7OB{nV(IS6Sh+3R65gqz z*WLi<(k&>qk}2+w70w*TueQ$(Lhn8rWn5lfSiQ zA}V_M#_k*+w5lRW)a6@O4?s+veGrhL_oy|K+P?k#F@w|eA{UhJNBngczzy`RoAAq0 z{+!`jHur;r**auHsN)J7@emW-jy_bc^QLQTCclLrm`nC6A>%#s{x?aad z2>zL%fhiVz9^24;p;xd_PMtuK&!V7wwnI_g-ZN%HQ*G(7PYUHHUh=bTE8!P5UO`P&H8U5lAAPGtLovn88fr(V)hXj;bgF;kh z9&Ev&(-Ik&COeUu8QIHa*k&_MOp^81>M6E@HzgosS`LaU*+>wg+iHw&&P`WC(P zZm*?xX^eInizIOfP$-pG@EXF4@-a--t$4_rMysaDs<@J^k>%AqM+LaD&e>nDn*|;rSbmeOmt!*RMcA^U%|I-MUxU!Go$HXQ)&5ucB zgn-K=u+&0!Y15+j=aqYJc}(1)&^C|?pyqS)^xJapF$}lwk@BOB{Rsp!doNytFJwFDa(;5g z4ECv=P0S9ps5U*@)S_tPrCzY{kAiMYrp9Vfte{Qm?rE3#7&b<5jrsF5pQyB%7x?;^ zAit5jq1Yl}(0vCd<*u5W{#?#&vJZ)H0?)_Q5+XFj?OhOz3c4L`@3_nO4TpVJ5!?5- z(r)v58Ji72p`v>&{4+n=6&p$BMF}PIB-7(d$pA*ivhtf38JZk1ZblA316xKrQnRp) z)gd1SShy~<#~too4)8$BMbGxQZ;@GdGoB+#4fNmj<2D-ve{?mxp+vk843)3XqNa1u zomR2nubdPW6^DC66A30Pt9(d8bv} zhj;)IW{~_CQ5P7ZVuM+{0%cOU)F!R1pS+{cBLMtBCo%O?mCZQZk(y*)n)igl&1j6Ci4F5=}(w2MR6@%fWc-W(vD?*ws4R)8~Ri zl-nteCCvd($a(bDJ+)@&FaaU2S`HqDmZmxzNWbd@2~AxSaC3Xuy(sFuWc*`wG)%ME zUcGYdyPv??pgZ7(3^JQ5v$(rFHY4}2E$-VqJ0+S(i#*Rvs0Yx9L_wj2c;!~v9)=ux zZ8w~Io5#ZyrtevzEcVKN{E@ zNk#j6W)G!ga4{+LVq1YGvu!4KvA1Ds+)c=AVYfx=V1~n}E_A(GbOhmpGcz*_aNYCn zm+aekD6r$w{p_#<(gwq&^Q9cXB_Lk@3EP`bbcRvVz+S1PhwD!=ML))q*^!;|4kbw( zRfpu=D&|nrjZ>M39Av=jBX>hP+rzz13w>Fd?rw4Cl|3dkcD%qcL7kVpAmf{|Zpg8v zq+q#4hJnm3eUSf{|A342JM@`L1w>Y4y{~5;^QN(|Vz}#1smETi_GE`?HDe~O{;bB+ z`|Yh6CKqgsoB9xHq~3c_iQa@=+Dxqs_$2c@Yq_emi>S2l7>cltoO zVAjD;6_%%8%m3`2s4Vzg3iz%0MDz3qL~-=5l{8#D(t6!M@UGdKn!M;xNT;|LZuExz ztEyIQC$7U@RMcwa46r7$bPmNLpHOpOlq5De&1|DxPMA$R1ErwKX{hkZg&TZ$R7?XY zy?F=gdB%;uGNM{#NHeEz{=>%x&?IrpHG&N4i&baY!?|Mvsri_9#tBG8T9@WA;yZ$_ zSllWmiq5g0YpZ_Eh=?0{gBfcAYXgeUcG^tl(o_4VL&jzAR?xELHI2tRghJol zR1&36uf3@Isi?`=yBSY>i0OnnNP8#jLE_1)m?Bf>?v5u%hT+=$J0;*^K|M`VGg2~T zfdy3^C&R(JJxZat!T=AEQ@{LoTHW{zoV@|N>-wowjXUouZ` zdlT0g)pi`^?|aG7(ow|b7tPc?u$wE$1@7u;SO#;NqkJ2QG#cX1mn^M}cR#rGSS)K6o5{<$ssf`i0YI zsOqA-D#tAv%QEY2+pa@s=P2T#298SJSa4@yB(KT4bpR8Kh^feHta`|0a5)8UZ_#vj zqI|5F)W>3wZ*$M~7Gia=d)=GX`T(4x`91~q&ddpP+y{J)M@%nL?8`+%dY0sq(paP7 zPHZ`kXQgG@&W@IWJZ45ZOyT~D(uU79@p$OHFe1Z-unU@JdYG9tX&p9og;F()jVX{L&ic za*)WPFIpxx9$OPE6vmfDe7D@E+juif(}D{m-A3b9*S<|X<~Mhl$@A&a^Pv;k&Zp@q zMwG8;w3`-23sBh%0`G-O7Zj8glb1wUR+LP4P#Hz*g#ob32gH$zZF+7XRc!fse)R>- zwE=}n94}cDH%w+!m54Bg@zCKD5{HhEc^o?W_qQK>&l+pokgeuDO_;zGZS`CbutOnZ zfE09zW#+Tu&W^w*S`^=X$aOTEn zKvYBD7~Y-0r>atkqkdY0GH`L+qFfDb_Mxi<(wcC~$v?$Q|+Y$?5-PW7BHV6QxXb?xQ93E}T= z6Q$xzhIm6;u1!SOE2?06t!wF;=1S*vm`i;apv5I1bP7YOKDMiy=MATic=IZlBo8K2 z`kF!>j1%cFOyRv}@-}`G9A0lM)_wcOL!-?vmxJttvc(yznr4xh!Fg(u6uh=DJ*r=y zoJVzd&Z1N@`RRapkIB1lC{ij7t$^x)xE^`Nt(NG2H_U&Dit>hMioIM|1jnN!jWA7@oEdk zj4S;}P`_el^`W)#b?Po191S$I=b@896FByn3*>K1WjcQ1Fk^(l&nO=@ezOHL%b8Ts zYm?YKc0ujK%RZLItgemxSX?7(*^f_f-j_60++@opYxw9tS29kYc>nNR#ioTo=>&j? z@A8f~75GdX3z@^;uKF*D06A^kiZg-d^V#?M4`p*$z72S8mGNkSTZwo;wQ@t5iQBuj z{;84CWo>udauY?xkC&gMuPna2+%n2_e(8OJ;nP>^SB=O-zx!Tpyb`X}R@WWxLvPC8 zV-Va7?Fn#O9YC^FGOT~O+jv}j?c@7!VRu*_A1!>R*|DPin%fGfIgNt#v8tECuo1J=m_vCSEtk8e6-r^z8IW;k>Z)Bs;vb$9Bv6epHcv~S2cIx++7 zX@^T=bka8H<5ldufD>QVj1v#FElsC1EeSx$npO1u&B0UiK-b%JI=y z6ze_v@>#M0x6;>QeBWulXuv@en-}EPI1kG*7E~ve#1dZ*4N}SMyzdej04gi((I8#Z z*1^}pctF1HK<78xZ`UrX-593rpl%BS2f5DKpJIr(DEEJ(&8|aH9Nra!0f!0!+9=ko zi{$I+fSc80abBmVH0-a-3uGq5I?t8+3zk=AiEXU6xDP(f{YbcN*KLX56#wB#8nHQF z3GSuHDV;NQ7<3wMh8Ckq3D8Od-2UQ4k`y#Pwk_U>}zD~&HPd*^EQm79u+JnR9ChTVA)8|Z{Dy37zaN{{XNc+Q)t^g z!Uj5)Rjmg<+sM?#W!U0F(i1t+Wu^SjXQk}|O>Xm8LBa{%k!7OS2Mv$4);(bqGV5Z^ z2WiEo0ZMnFJuB0;Mbxo-;cMVp`3`P=e)0YH*DNS1iRx_sQc!Jc0-?Qobon()4ySDs zpK3Q(#!| zC1m0<7HQOoj|H|MTau&n&FN99`nXj~YwIrv(kfv+lVN;T*yd0kESDAeh;KsN&SkbR zya&2DE9?UWc?%6yrZW=cE3m{MvEF$U=KR279aF5G)3eS@ozbNsfTr0jtd+Lwqv26r zq+(y^QMye^LOWYnM>_rEd#mjRUTu*#dE=w=8&Z72gJ!_8ON;C^8S>9qp*vM5& zYoVIhbH&>^_3Z}3&RQ)l2YnBRuR-NASllBE{j%A5o7Dbv3n-6k-?EFz%Md~2ej*wJ z@k`)r>FDVj-wt78R?BLsV!e4T&E(b6Lwx8Qte{Jl@56MNJfH6E3m114_yQ;p29sY8 zpF@HmB44}&(lSnbhv~(z5TkiJ&GqJJ!FEt95gh~d4hJZ{YK9Gt-AbB9y(diYp?6Mu zd)Q#YKx93~vAn@J^zx)TSE}bI=m!Px9KnrpxSN~?^*gP31avvG3781nMecYerEkha z7)y4+yY*Hdu@3S|yVjQ!I$v3fzdav&#T3KozTTjVYBsy;wOmz4boJS{J%PnTB5~J; zj6bB;?Ew?^c#vNSnUu|KK=T8?zz8fGx$aNL%=F?19=CQw;2 z4Xb;~xUpKfGf=i#K0o`wG7_F$)LTD;#6al~XZb(%v2Ac7`!sCaub9hoa%Ev5}3TY|>H3r4}?gb97Mp^!zB%n)UG;9JisRf-(NITZZ9Kx*+vUkL&B^{2S5TkAC}5NBd7APi#QQ>l5xxq z3i6=qhKxc~4IE(t%{TXoF^`yb*@~HxU2_Iug2vTtKi#bar-5l5iaVDFW_&LPa%xP8 zR2wdrWzDTGBiskR+~aOBd0b4)mWjff2c(Iw+b%pDeFpnI-IP(|s@P=MgIE=b2iCxQ zvebcVE3$v&*qhIK;Q6cu0h+3+fRqo|0i*$kZ^i;!eWh9N3dVG_Qz_IQAI8?JRY?9n+(vyrV8)bul%vgYkr{#XD8z>J6r>ksBPnH0quV{`HA9ttFFuusd?icyF8Dupru~QrP_%YD-PypkaUjhsd)yxK9 zQc9W)kOdoytF1Y~4tE<^>xx$ag4#8-`HUNW$V{Fs{On5PQ>O&ggMRhi%S|}=cNx)^ z)SYn=JQD(aL58Lnm1vmbpi=;^FqL->xXjYx)!M|J$l&o<_lgp5m?lt)cq4pIry&sm zfL#hU2)d=y1tpxmS##;+J|Np$Z`11+_gX6WGAg>3_>0fl^zjQ-DxELzubJ&|(N;{legi7Xtr z@B6p}!%yZO>uT?DelK&~%?+vW;)$GanG1aFY24!f?eLzs4~(6Xa@WI_sCfGFA$gy- zK0FBVxVT47yUQ|qkHRjWe%J zQ-5EPT?XO>=`$H&!mpIs0~4}$?kmu^eL28Nh<8bncpuHby@*G0B0@ONuikW)IDx0H zizI;e(`0MwxqYp~d-qi-fBmXYW#Rn#&${A^T+hhWBHjh-?_1>twKGswdB+)KpWLDFd+6S0tf9t)=(Wgm7&+KQ*2D`TW{N}jK6>s-_WbFSZgfdhL zNd@j_?>4*sdRUJU_Df`%1juAm*!TO4PZPKqWsH3qo9^$z6jmOzhWi^4r8#lp>Gh@hytH zX}6U@y{{T3cEj`)uV1Ty+iT)CsXPgO}>BLyF`D;6OHE{f=gG% z&dA+GynDAFkKvWwH7@r97#AB?&~Jk6c4}WSLlQ}&-x&RRPW;Yb`rCMei4hr`tMQ~H z$*0LRWt;t!>#4MxY)sz%Wl(AE3RX--YG!x+zAyzLqx(%^D!m<2;PZ-V$Sz{(70o^@ zHSs3i?m~%vO+S90qszjD%FTZ#-325j(tO%mih9V-c;eN5g#7aDU3N+Q>sKvGk&EII znSQ8QaUykCwXSYIHmGnC&!baFf6Xp6+l@pzWBAN|pPhgriLloMXDZq63R-n%vA-uj z%IDJ`Yo8sDaj`H?IwR-f9pk$n<>KC@Tp#0Xe?0>*E)+%5^b z8qV3qSN)WT=99eS!+-+#H37rbv8IA75t1kC@0x_N?C6UaJ*{fsL3Cji7Km zrq8gchN)uuFnIK{?r1K)9~Hpgn>PKN*?tDh#`EE8%j#g#scC0>e#hZut=!H@E$eFX zv5jej0K#q7tjPtlIkal=$i3zxb!siWB#mXbAS7qd0c+8 zP^i=zwHV_v#|3(+MPO0GsgX%+;T45!*Rp?iz7CFm8Dq7Z!f`t7mK(-scSC+AneVc7 z=8Iasfum1c^~X`So%C9!Z%v&7lL#>!(T~j-k4kCZzIMv6b-fI9@3eI1D>mnNV2`CX zsxx(#nQg!7`Gm@T|FET8LV7$bBHDwAr!;!R=EQ$6HOjO2>Mw+B_EBqUjB`fG)?$Op zTD^EVXeC4-D{-^<5tCH>pwNs6?mI;#Cm8f{-9APOmv~&`PX$R1Rk5k%Kuui2qPoj1 zp2spD7u#8Hi4xx$BHf*x*EBCw4rMHc96gDjiWvhP^I~=IO;dot;Em^k*W?ym2C?+` zrX}n)sc6Sc@o-=@J=0L+?bCvvx4s=0xAJxvj2L86Y>^YaZSP9y{fyfIzo6u1^A0Kx zI#l_fXB0(YTP}Ts`*BO2bJC{HXzqYRUu28hoUQitbcI@1EpC-1FG|!A!&Jo4inVGE zAp&Wt)fk)l>uw}2t)8M_kbG=l9*X3#YpF>lCG=w}Qd{|v)RT%6GI{+(fk~3#3aI`Y z87;9U)<3ez6UuRT6|+2rOyBX|ZQ*;??Ya%$c<_M4c{op@Bva~+8iS)v%Cp5}=9JFQ zYcwB+02~*#l@%Ee^a?mey$p?#W zsA1SeZJyR<(8Vo$r@Vqwz49(%K`Zn}afgP%eJ zEO?Cm-(5l=u=_LbCrZrMl1qVN?8K6OCze->=Y4{{Gq#^U3#1$CD?xz4&--A*kY&~P zY9riMdYGz-!ZLiD-c6Wt4eQ zq*Hs;V29S{&qse204QyDy9R%SBE8s|Pm^HwRBwBuyHf6(E$9QoINTavdO)GBep_ma)IQc}CFPHc-fhK->dKR#fN94KNjQubd(9Z4$zBM9A; zZ28gl_zs>R81-lb@TIL5-lgMWj-UK^!U%gQ5QkF}eSNZ4c`8Cc%8(F!m>hETYX*ZT zuO|2)FD$&j=M~Q*;-`-IVON;4b-1 zMJyS`HUOkr|2o90F(CHk+E@J`KJIICNScw&pcS)9>CB!Vgz5sHqW#}{8b<`p@DnDe zUz)*Jog+kc(-d2=9ui5vMXzRcNr(-7(6Tj?(d)Y`%DciVSwfNV_+B_OHNTKSeal^u zYpsq>sCy>x{f^lTERRNVE;zG~Fo zZl?**5a~nUi&J+1+f`b9Mvd^fZwSN&TA$lD1V*Kve;ztagW=r4itn^Ls(HEY=rQ)L zemCX)aI-6b^D?EcH}B8xtLN39K7I1vefrnZu&h?w;@kT&Wz(?FT^d#B6ssjXIJd9e+4t=NT zi60w8XYpNl1b(~h%6fty`xL9?yKo;M+-7YKFG4Q#@*N8R#@u+kT>nH-@py2xVpaA> zN|^|Ld&|`z3BLqUB4Uz+Y*XsI9zZI(^ajj&Y(D{mKHyg7?|!9~V92eU^9xFgJU2*n zG*JXJ>JglIH}YSlD{`C<`>qUs5FqTYI%GU4&o(IvHhWEx!-RTA;|;5o84SNBZX^js zPT9pW6ORseBA|t(x{6g_HdNKzanrg@V8UnOlOkOkE@f2kkKSdCCt{;wkNTA*`Ksfu z+*X>ykE65jB-?_u#s*00IFxEwG&FRMMYME@Hq4TL)zO_b+2Z^OFFuHKi36|@B( z9GFwuk8491-QjP#zFC#Ug5UGSgW*7_1K4u3YH@3-xK7XjNZXfa5YChH6_k@)w-#!f z%2x-?#v=4jcb|UUbQZ(HWm=U+7oR-G7iCNp-d2;jv8@PO(ou=JZ+>6Yhqu9cVv$&K zx=6R`2d-!?7XSKl@C869`_lS5$j%*_gK6FGcH8;o=`ei_JlI z#Fjf0;bNosRV@6dW$NT}b>7qk_ZpOLf0S@bB$npNibEd;<>UW>O#DB2-^9?-c~iA~!?kDeb39 zgG%R+Obl{xOa^sakRol;-3RSWC_U~B4T0&DlB_P3a2I;BLg5UkzREM@X?<-`5e^Rf z3a)Oq?oIBHuHI>vlD0rkd|N`J2+amO1h3`{+@%UL}f7PUKj zr;{v5h5vAM(7Y8bp!VbG6KOYHtB=Q|YVK`(Aro>le#kV*6T2>x zlZFJ#i!eY`YCB1i7eIWh;Nc{ydh@{wWKUNHQn#H4!T}A)Ep2%(qvX>u*^N^)V1zlx zeu=nGw-s?JpwNI54@hlp5pU7@D>`AtR~(#H0|biBVE~5avD8N_#LQ)$le_VeZ6T%{ zao+c{YSUmUs?8EVtVNjVd^#F1>*hE}SC%^5pnC59{PjX&oW1>x&XORvt?gA!%tn}t zd^Xs9l3G=dDFwvQ|7(3Z`*fmOS9(t65Q!z{Spob=XQGQdJD!1BX9XG#uWX9t;75|i zz{phjI+#hFBM!ki;id?J1}8JT?#Qiox?McXokhwW*uH=#K6k>$=)XP=iX(K#=S92_ui zj;nz!v~#^pVl2yt6-{n{#SH(W%dI9>&j;Iu=ZX`}xx>wPEWv1Oa|9&`_l&CkPCHN+O*1{FI**Ne9#kKE~=?pXjiO!owRYb`3Poo8dQfg`r{G@_S1%|%?r zTvaKXMxB1BBF0*Gqb*#k?;h>#@xCcN7Zwr3Y{<5>>Be+Na&BOzZrpg0V>z+pakTCa zYwW3A#%ql)^elA9i1;%3ag!y@+Yi(1H^@=jU?`rI$WqF7uAwpw#lj7pmKFX*&==B{3^rtkK?J!(|u}biPD$5u)61>MkW)s zof7KKB>7EfOuB3kCR)l*mEs4ql+VA+k#i#*mdC9m8AVr!TY$R)gU#CDfeom65 z1l(BwLo;F{ST^_>O1*9WY6OSi+k*Hc(WLLh0K-Q8l|u1~8rd5p>FZ}aH|}wGF$+>X z)3K?$5-)&c^CEo}D8AX#5^eqb^G*9C!)K{)qft6^lx|-+N?(|)J?gld*0b8N(DC#E zOf*v!#mj7y3U{y}q}%X7yuAk#>tAcd#u6vDro8g~&tDOlavr_k zElt_^)MHAkmRPb=O~pvE#`dg+3Rs*I_@rY}38veku0N=ikR7V~ zpv+KVn0pPap4c4{lMs1VnCcXN4p^_s2eiP!--tZt#&xZesmwn3{eVzJW!7m`%=JaR zN!6P7-!p^~B8|uq{a`KPrtRl5cZL10si>_9`Sq~e_~}rFfnhGaDxV>D zKFx6A;PZitDe6kgSr22XHCA8Ge>Mz=IWHBuIRe(9InUz$;GW!8D(g8j?A$dG^EUX} zGcb6Gikwiw@Lq;PL#3!DrbH7to58&jiE>60uE+WDP7txsT9NW{{duD~T_;o=L=SX3bG0Vx3l#0#&cy)>idVgm0=@8w~)eYID8io8quzVvfy+$=^K??zZv=tmZE@rIbMm6{ zOIzKxQWgXD-S&ju8(#++Oa%Eu6Ws+SwJCK{v8K{rlud?{D|XHYiAgbl&G=rs)gXw6 zQlEqz@lt=sp_8ME>n*n2gk78Ul`LC``l%Wk%Na_4(?f3vHx0B+b?k6~ zE20^sr)*FH_85~Q1-IPrN4Zl`kSgNo2XKd*@XbdiS-m-F3IgYK-(vG`PL##;O?jmS zjLge-()@qay=PdH>(({uvS0&65fKnUQ9+O*RT8QwC@6@O&;lY-Ly?joT||mhL5cz) zRB54xUKONB2{n|2A|fp`sgZu};9Boqd+qh@bG~=K-*wLU!(}1KljoW3o^y;br5Zsk z8JkW*k{@X|s_%tT?r-gOdyt`bRNj{3lVjf$J0zm*=e`=aJc&fTY|3)aMWGiav#c{w z=ncQF{V6AvplX}9eNR_cWg)T}G7!sg8`o@Ix?}YX?;L0oy?ed=-rGlphSuvIJ!Jhaya|quRe(cW^Fb%lvgrG z`gP&;Rfbf;hMWU{?qWKdVLE=kKP1EC%#R!^Q>pm|D6005(s(F&GfST!6CT1>r4{qC zns-Gg;CM@=jdYge!pfk>CTV0o-ooSb8!U<|8ENaLJ;|&^k%)9+|6n<=eZ52jwV`!| zO&zHaB&w~(5?n1awJyMC&}j0a4B*9mH0vHjBy7#ZdOK=NQ@V00yB{MhCT_seswbt| zn>}2+O1uFqtJ|Wi>o{w(M_PKgtapvGM?QOqxzQT|T{HD%1AcU@h5E}SuT8;G)Qg?yjfyza+ zo{HGP(Ug0(?lXF5e(b`qi_;XVJu0vIs$^#c-5+QR+1;ZeISwjlv1F-M8J)C{Bpi;r zC_4*TS04l#t@O0&MxTD(m^gbWttnEt8OuVWT1?=(5*zg)~#--{%Q{UG-4 z>qeKLe-<--FUK>@y_zmih_dF5E4Jp$Z>bQiMd)!JWkMO0ORprJEOY2JPqtPhA>jyU zfi?6%4AeGwfT%?~4aqIVzWIvRlYd>z$WZ}6|IW*C*`4?MoJrc&q|S%)m2+oGveSvk z;gA9Z>AmKVGs3?g$#1K;xLInYSZ?i8CTVMp*di7usmzyEdiTEQ^r^r@W(u=M<>I4{ zHjIa8bW@;(U_ zPSiR#wUoTv+tjkIwo`y-Q7(6ACQ)Ux@X}1PiZ4{$3(<44fMw;p13S<^PQi&m{Vyc~xv>p(Ld-|Q4jruog%S$|UTaQoT;gFald$KbT2z!JHV5kqtlAa7ent1OgjElx>mxvZXt^_!sM z4a;-Uq*_h6BS%v9BH}s*=q?BH5;A~Jh9z&$< z%@dIvFV>vIF6J&LFR9qML|>z`G-fP=SXUM-$P_`hw<$Z6nvtr&z^<`Szd5hWIT*Xv z8m!$riBdt-HiBLO6>>NeZ%&2%LmlnTo+1I9Me}^0HB(O+dt_AkTtESmGj`#bVY|?c zZVX$8Xd;HACX)oo-Q=2y`8}@TtdB~CMhHa8PtgzzkBt3(ko|VhH^V6EH8g(Xiz`aQ zQ3Wa=(UxJf@b^P0fJUG zo2UC`Gh|nC(Imxix_cwu$m|MVk8bTVa*q?cXQZuab5@Re%xZQ@)4*%RICcv)6Sxjt z2ZApiQz&Hduo?EV4W%6vF_MYIsl;TNTPq=WD3Wtd??!ITOpP{s_7XaS$dxnOB?02q zi^0~={4WQG`cAyDA$`#qbT0xO{HJf{*0#k-l|s!`FTDRK@m73fnX~gT9<3|Pszw~T ziBp-!(gs39je1ZkF^GgO^p|Fy%4VpvP^UPv*Gh8nk+-j|hjG9f>ZJpG`!;=z#o#E^ zT_(fa6KJ;asjY!=zS_rd2r?VuW0^2f_RcFEjwkvc%sgj=ijURhx70&q7M?dkYwOBL zLdVoxW|taMAzfu&Pfz%+e#YxYO2pRaMQ1IfOdgGsRzUuAGm}IVJ}LpHSCb=LQK+*p zc9Xu`plG)Ng z&7IwBm%%w2MzVc>R4hf0sPSFDKd{z*ATn^+J25Mq={4q93%>sX4dYM_i9g*zhR0}U zIGvcottbA3zVacz@lPs))jG+BDYb}<$>x1dB#uaT!eSxKW8X!kORmSmlhWr9q0Q?xN@Dy z74Z1CXJ>2p>S;cj<*tsvHN>Cb5qw?yMa^rl3Q=?p4})kl#UppLscv>mIMP*XjAgCl z;VyQzPy7QUMh)#$wX1b1YZofM8KlrL^KNIhi~ElM)$;;~gQtu+ z>mJv;?yOI$9vNZpI5N^#HIKw&;5MJx!K?I}mT0A%Frd+cdnTLvUaaw>B3k5 zv%k_~4R=_jj$C(pJetwD?&en2E+AcUNuD3d+4GlI3se1m5pqBig2TJ{uBVRtXZm9J z*@CfLnCqp=oM^Ma_Joer#6>S2!uAFFD-Oq-T zmtUkj0A;is0j8OoM<M!XCi@-r!%m5Ye& z()1kyGb%FqzQ6-g`=yxewQ&qrm7{5DS|)Gi!m(VdtsUnmLRr;^9OlyHxazX0_^#IY zeA|lyh#3|h)4G`=8Eysd%-Ckt>us8aVm><2n|U=pT71si(Y@z@8#^1qo-T*otWf2o1$U5@a?game+>x{xwFh*C*dLR@r$w@KTh|+& z4}|XKhb9?GR(D4|h&H?gL>y4Zs#N=X?McniL6_wxp=Dh0&!0RmML86h0m;ZagwE=L!iXVCd%XvXe`ZiU_wSj+tt!i&z46?}fVb!va_vIjquJ&f z)8-#;s|Lr>roxM>cX5cnWRWK{N#%Q#&FLzjlL(bFXO<9nh4_vNTTXTnO{&5!kDAgw zs+$P}usj9$;vDNxV?Je$gYLFK&6Yh(AqLGcA>!(t>zZ%h;@jCG+asJ#Y~bD8=}w?a zHDuRrDKD7wN?Jnc55icufjGTh*cif+VYbaE--(e(;R7OFkG3t=Y1u@bDFNp z8HYb9){)774e!aSIpkj^q^msZf@T#-mg{LVuuvfoC6mhs{kHjfYMeG#gEKNsH7L|Z z+)C!I$5QO%4Ak3lAo5e zC``o%9IwN%u^IcwIt{b9og@8*UqwVm3!;iuj1?Q1NuA`M`7}`t{MMG#A&+se473r) zibCBoR^(r$bDRA$)ls_c!1<#@}Vqj{NWye^)liZ)j$%IK1_p zOXkLcOJ7Bh=mz-}D=EE&z;da~r2yDD>!w_dAP?cn`VbIj3!Ve49FWwc+j$HT2Z=|; zE9`(KFbnh&v0vp~zJk_#VeSl7tvDYYF?+>lvzNYKTW%N~I%IsuYPQMJ*bMWmkEE74 zZ@?SS%JPH-+KpC&=dgB{N6Z*eqDrXVw(RGqXTb$)JO zkz<9Dd$l>^^kpFCX3UO87hI+i8;%LGc_J4W77JenO>1J#B(jZ?GJyVBJ4pRI#?|*6EK^=0p8CQn_o^eH?0~+i#l51iy3{@VA#=8a4${6?wq{=rd;wiF31ji zkj-p?>YfyF@AJ|Q!?jmL4NJXoDZNTVsC-C1t~cgNly+@@DEH2fSB3;QqJK6-FWJ%9 z=jTz6r4#87(u#w+5-Cr5*C_^sy?pK&LPZsbqCTpMF_&$ckPh6L>l>8y_FgkCr^+@3 z6MIlJcFRDUsMN`K=?nxqla`-61@(Khe0ta+p#4PG)GN)x&d|L++;k?1S`r7G>mSGo z+D@2K$qG$$vWi!)xVMlUT{UZxbG-`lfn5A8OE>xna**QLW7}OJ;kZ37@XBZpuCi}` z)zSO0!$UQ*?sss~9TJ9L;XNwYZk2}>`Wya4#4um=&u=*x3o{uf-4`404O~||$e*X{ zxHpP;FH5v_v234%a%8o{E(9vcOM`K9Io?7M62?|&n!=~dskwO@qLfZh9(h=E#Zh{& zQrZTMGH2sUupD@`-fVO7k-Wc!C>7N)u(IjS4vUW(-JXJNU^ir9tqNY}dqamZ@?^Yy z1-0oCEo*MEd`bh&TNO1tXptz4@T53Q??le8P-pB8)qM)^?3DRsm6#$Cm;|EL3}6G| zYcIpxeF@Gg*KPo$6ERh8a<2vxuo!JCwlUgtQ<^zwlsACs?MY_<}dt!UR)AKn`Ib7j@#y*q6v+SLD z=Li|Gn%!}kMa~MyvXh&7=9*H2lQIh>0l&w{&mzxK37&_;@Hq=-6T6F?2JIAAHch86 z)_*W4H{=uS(16aFrL*tklc!ZtRXtN>PL*S9@YhSi8PodjYYc?xHa;5TCZ5Y|6w!o~ zO?O?7RSFfodz@NdVCAKUMz4E%Xk`O*;v_@P;$bX(f0RstxH)!?ZP58yF+kB-w4~T*wZ45M3jbtSUN| zn48>7|6yh$iLI?83t`2T+Y|^j02-wRQfn4Xn{C5fCW>&xI&ICX+*&x$Kp<&7vj~ii zx;p}7IH1n$rkBNPZ-`YSizXlt686FV?Ja={K*Uan6>hk;?NEjh_SYS49p?lk2wxo! z^)Oqtk0f`99|P3qT^h46jJGGhi;!Nh^KFCc%N}bF<YS2p)PZm0UlqaE{453~Y)&q&44C}*hkfxF_z4qM;N8G?AxfmRYZR2hd;NS)V3a0rhQwb@Hl zpoKYSAEsJeeai3f_#w-!FopCfW6+Zly0ph;qpC9v0NxxY!?39b^~%@^NzfE zNtXE$FrVb%&DP2Xx+qA~GbdW6igMkp^&sI<6uvRCZDID@~K~U3I~yV}0`VFta8cylVq!^gp=XolXUD_+^$mB zs#)yoLx1V=8}syQOQ#MPCp5C#95P$n`$uj?hVra~{*#mN(t$Mt#YMVBg64rIFRtMVjQ3EDu1`it6 zVE>X^@{`XyeN7V!6h7QZgEj((b(9>SLkL<>g+SgufJJt~Q33AB10CN*#*$6NyILPp z6>p$X+f1=?J*bz#+mEfO&?jbuY-E*VZMDJ@!nC;n&wtq1reaP^TrWkzGxI+7?mWK? zP{4$8S{RR7Ou&MPL!fRAHnrv*1BYg4KzCXjzorRx-@rZHAr~X)#Rit`@~{N0h=o^r zg^6kikF#=Z#g>Qmi)Rv9%+A1tMxPJp6a@6I7=OqEuA7}0t7C>n>Tg(cja)CEN@7?F zm-=cJ+0$fAsMxc=q0N-mbi}4zQ}9g<3G*lesk8`H&s^TN7`BJV2RZD*{^c)TdTNQ- z3)`5ZUA>!{IBtzNSSm`h5W@&d zo)FE-Gd1W83b&6}y!m91C6t->-S?2E!NC!$$-T>_utiQY9Ij^~b%=f0ZZ$?uL)gdi zV4lME4E%}{5PD?Ywd$em0~pZglVTK@aM0N{rMRk(ET*iRpFX*P8I72&=Ozi4HssMs zo21kJpodW=`3+IL+%|A9(3z&Qe9wmsndTnB8v=6gq*sJQTc12rWLUBPILb=Axve&L z;6pT+h>E{0WxUAM+A(j2)%Y2Mtgq;)G%t2;d&QCVer>Mt9J|J-tqk!Ha-ngrgPeTi zr77JHVW&n@m_UqN;p=jE34cAgRJCUNnS>Ed=NlcFjpIhot@h~lvbOt!L$M3!6n^%p zIDxO+mRuVYD;Y0yA>V%m5bW5y_dV zoW*Y;rk-lu9B~b;?9QrmxM!q0fMEcYsTJ0VG1cwHh9?GsW^$qYX2ziizF0v+XAh@3Sm&>5Q(~GGRK;QhU4{96nx^ZwKTJGDbDG%0y%H%blkZ{o&TL6p9S{%SvZr9PXa&u|!Z7Zi9JKQ$N_LPkp zqOu7rgSO@dC0Tl-a;gM-;er7Ji9d^(08mr5j8&%eMc&Ip(0g;rZB6VDQ+hg!JSq+s z07}h6WXB+8@Z;U(eI(zRyXDVrw`!c{QI0mf86?rx z^gh}nc%{#-;;G8$IM{9{>hh=$gY4Du>7y*a64gQq>s?a`P8S%nQXEO`M7?Tx?&LwX z&xQuzY^pk1W1bWOS+r<8j`Ey}Z9s?yXbba2Aj=OkrtMI*rfXXQ`pplP)EIEO8>P^|(2!-Crd(Xm1&D#wCX9zb#^ zKv}0~o7G-GH2r1>#G6Y>kQ4pa%w?^aq6y(&>t z)O3lmfp4c`NlWqJ08?L{W0FrZ#7x7MD_3`pfY~xY+z(uu-f_sjX+ZJvW&mV%gpIi77Ft8;r`;TN)TvT!#0j=n~98Rz!ubB-#V z?f{5N1THeiuu7`RB8e@Ip4ldPjq&d;8BAw@CekA^Og%mekqD{>= zpED|hT>*j~rrHR}VbPW!w@2F9Gh*Az+o2X?nYkOh)Q2gI#XBfPJfS3dntm>vy|lLT zJkq|q2sj79S47>a)wyB7_Ikb7Tg8S9{eu>vMFINxtWN8A8mye!o&gZ2lJHohQ^;nuf+|!Ew|-# zelYRtc`+Lu=zfN7j9Z94aw?=UcTD-uPuQx7mG=SDKk^ z;Qeny?kTR{!W1vqk#w7>hlFW;8^zi3F_hMCC2_fEyZX5qW5eO_nHv``Up>FMHM9P( zcfAxetwsy(0>qgL`=OQd`8d)mKZGqQteSri;1sh3u|T)%SO@OdLIwm`Ut;_D);Roo zCX4^ZnxfT1KlIS28#9qKyVoOX01b=r3bJ+)DCEY={W=6jm8%oyu2(U1X*(uZxpEL> zHIy58`8L$g-@$KwVL@tr35@4FCQz*JD#k`_>;9frsDsIo66ac1X#iXU?W(I})DX2* zRo%vpAU)Oj>F#NrTO3Pi|D}7Da?1P>4tpA=YjZVpfyo;`ZLzUqm@eLH9s4sc(8C>b zMW01~+oDKrna09m;5k}-q@c+;`wBs}5Y%`oyE)wKql=XVN82Z@Pbz`a+AC?a^Ed-E zI@$xojd}oM^62|cpUKqqR-QWbpz~x8RFe_i%NW?D;4I+s$swthCc1Y@R z%oym-m3S&%07|_4tX;&d&-+kU3ch0_JNGe~GiRF=2=csq1EWH01A0HK5XPlvZ4>VV z)r~p3Jbx~YthoDMJ>DSdJkN6?ozMRd@zDf{{hEc1kiK(JlWTy!(_C_IR6`+=Ws&>T zC;n59E*7mve+FYh*coPjVrm@pTLV>T@ke-$wM@V;e_|JMusw)7nWKW%v`>Pne_5m~ zS@H8q{Jq!Hk?@j(24UcmI-_id)_4Kq0gF!X52<30&7_?&@v zKOfkR!6{=aAjzGX9v>bKc>|z^Hfm?qUf#Ohs1NSc=Hjrq=LD`{itT;{cxnqj@Fg2blJ6*HyO!NoVWHY_Y`|+<| z@9;pkfl@}+_xcfsYYGd$9KfTHx49=+8~y{gt$dl^9&~3P^vso0hZle)$(*52t9{^EuG@{NxcCJ2r_AIx+vc%9e=K`c$%PY1WaGOs zVRlhOoKSBwWTcn6aR8SF+0>-F4JxL?*@wPU^FmlK00!L%7W{DWGoI1p)814=)^X%; zb1{><=hfam0Wi<2RDr+t$#O_ex!5xYTX`}{Cnj1Z_x`suWKno|dxelf2oht2oH3Y{ zzMgDC;Solw@`=OMebIfLsZ3<)FAf0OuRY0jnoL}p!EjMOy_Zt3ND-n3u-6)LymO42 zCcb@(%ysP9VTK*5A#Cgfk8W%iEZX(mJkQ9xO-=SdZKkT0fURf=gA`_h zGqq515o^$Im0jUvU-z%z5{-2Wo9QblO8Oyj;&)n?;{FHbkw)jw`Dwbg7(DYB$aJYTFaaXQL)fF9=WEIb@1AMnmvSF*rywEaLIq(j z$mksE)-57XzV%c*--4olnlNc57A~vR`}I>}*tTYzlKQ)lj!+11%u$Wjp0E5fTLl+| zp3+6DhQJN|5JM_zv&PQvCbX-5Gz196GjyMsj2==OAdk5X-}iDJb;jTD&OXQ5_C2jY z6TS_UIVCP0Yui@}5Ii?!4g;#*t7VWa0OBt*I>t-MLj3}c^E=Ye{4Cs-c6}(wOMPhb z@>cpq`D)3@VEKrK+3UvT7=WA)!3*E_C}{C++#3RZ{v~fv!1j{-IJJp6_JESm zl^`S4m<1ULvjxK;6=tpR%lydsF$4XR(mx-=Xs8O?!loL|-}wyf0o3xQXCs@FJ}Izq zG~C@tGT-G4Lr5T5`y2}NDbQJT8BXbjO?2eVN~#Qk1c; zT#;;IAy{zu&Kub}#)?L;YQYy5ocUDQ_<2(+sXL9VrMfGhM_O`_qklU+*R2L07&^jcjq?9HRYu?thue5s_m!R;uGC$fW*8tpA?}b()wfy80PSA zY|2x@haHANW5{8Ss#MH3p_H|ASUqS`^by_^C<)DX4j0PgRwUicHxrjDaEwWrkoH}WYRF^3|xvXc-CMB60-}^hX<(L$!F&;7NtlYY3yS{-+ zSU@=E7>@KV)lQt-8#2j0)(6_8*2RUN-AJ_UZQ=`qb%B)%t*D5o0U#0#KTjlgn;#quLwJfULwjiDT-ArcdUfC?G6iDNrv z9Ni~cTsMu9%=mu(QTzj+!Zfj=kP?PK2h6vg|M?zYo8c{SsjO6=S1R=m z?QLl3efDYni*Hzot>TMV>Nqm>-elVS_utO70c%x=1ACZ`8k?OHLg|Fz$C0JFYMt74 zpHfG}`k_Xq;u;qK(<>xjS(6zNF(5HS1??$|@;H#f1ObP>LI|Mgh@dW3w0b$TsJ#1sRf^J#v`kY79Vm z^Ggy2irH@ji3%Y%d5j6ELil3>6AYN2ua+TzfK=}II;$&ngQ1*C1Md$#GMY%Fyq>qS zQ;S2L$#ouRF)*cW*SXo?GORr&W*ki;1YA8Wu+QU+orw*dT(Ibh-C*s(Ya_?HLjoNA zvcnScahw%`Dw2zzJF;9+nJVPcZ$I!X(=3S6C!gg_3O?>XUTU4%!ctjL&QY9uu2B|4=4G*E@ z=Y&c~$x{Z**kNgo3mGTItJqh!3UQ|$*Sn!#SS~#{BCQp=a$iGYYPd&=1yY4sCTmY| zRm_dWfaMuO%lg*)s-P=d1-@U=5L>#XAjT^AHf`O*__^>$RPAp^zg2^WB-t7lg$<|Z z;c2ZiVyO3+A4|2?QYWz;WAW~|HnG?WMWpA{0K*66-_p?uu1ysHUws4j4V%xd0he$+ zVY$$+_GP|mwA`p{bRHEeLRB@_)NMHQg+`Gkcg7Cf;MC zCK2$y%jk|2mCTG9R?Ose*{S({MWE9pH7?$dN4+W;o9{UZR^ugePUpv*JK)~>w7(rzm0F-{X@=834rPxn^C;d*a!RZin`g>6zl=R;KcE z7xHVUyg=p~dX^cfgHofUJ3FU~=z3(1!5MxviS3G%SFnA!k0o@GB_I?R@oF*=Xkf7n zzu>%tBmI$YGU5FlnxNbCB4iH>HT#0k_%OK)RYjZ=0CL*F#0|21#z~{YFG>$qu4dbc z0!Ty5jPcJin!(+MBQvmVF$A|!3L%p(W5=H@&lu=rzd9P7`5+Nh(v@8uTX<=EXIjx)~91%ZbZ18==Yk-5lHojY#u%lG(T7; z@SWQ;D@W_mq_Y!HQYg1&RC)^}5)fO3psg#+a1Y1S0+=-L#x+7q{*uwH{Wky8@<{+z8R$F&Q;@xyt^xxt? zY~FSzK-DP$j@J-^Q&o{Wd|AImb?Tm(7G&1kgI-IfSz4EWU?2R2yw2G&gR`}z&VEiUNqd0?@o``!}=~!Je4gX-f*fq2IpjYMFX!Vtq8ItZf0n#swqn903 z>R=%J4p}gfGp<@z=4xDXG%aTKE`-yY8F?C~!oEpWhc=V!jPOeD;z)i=q9Jo|lXG3B&jxypLV`m=wB6!VF=!~Y6mf77~HocLjn80b8hrgn-is9;3;|VtP zp|BhMC!n)m4{{Q6sh6JZfN8p^+YorV>=qLXPWedW#q|f`LuXvRqm_jnF#q-KS!(Qg`pMt z&(m?)8&^5anO~4q+sh@>TwDQ*uq-s{bi;C-G!OS2sHv2Prw5Hsha-b;Z*@?Wy7|w$ zU+&lx1emPW@=Ig(yCJmQ*w6$jXD(m(3M(`)g`wV+ZtX~J-x^qriJ=({TW!*|Ej*Q2->}FZN{nmWWpQjSQpoJD>Fs2o>Rjg-{#8d%SFjK__tS+0^ z04J>6HH6rOIo>v*-l*S@Q;xPXW2M8)EK`Y2zQfk#OpXhF{8t3ZRjf}D+}$HuDkfLl z)MB54VffKxJ726O@zAjp@-`R)bmrX6U=0v%|MIM#U%+H`c0W9={@#K%v+2}M8x`xSUh~cr*V6$Q^Js=Hw&$uicSzqpgD|q6CHHAK!rxv zGP$3T+rB84$If(&n@E}S`%$@}W6(z%iqLa^T$G%`=%X_C6)?U&uX@g6*HpwKhk4qR z-S30w0-FTKHKh9<3z&QOlK2t2iyuxkP{l`54P({-+qE;PJ0~ZzRg+!hnMix$#Y$Nd zdX`&g4<8!N=DY^gh{an!+T z7AuK0Vr_;L^R4y|W%3`Af9Q+P2_2#?i_rx7gN$0iw?#z=otl1X$+TB4SkPPzR$+_k zKEm}nM(E7j8$PC~UFK6lD!0;dy8U$9?x)mTN{&hTA)=RJdcEiVL!k)35^9+`R!-|@)k(&-C5Qpp7;=rY|dIJQr|*1snC9X9&q zt_CG5NPElNy`GiD_k%C={Wk1cT{(3Y{Pw*Gp>TTO@&V!9w8>ZV$E$c(f|RNRRtLLU zUmt_D-({}5c6~@u6HR^{U&RAuzCZI`t$_}gC1_$a?KRDZ!r2B4ZLJiE&9J>~X>;5{vDL#lXfyCFS*UP zw&|yj5YOtZ%Jqmpm~%+FC~3GvJsz#_YJAvneYtV08iUrY9&mw+W4zslSI73~OylDe z_iB(jy?MkjAqF)pvkBG3WEH}~ld5mr5W}=;CLf*gQkqeO;0`F*B#oX~T0ZA#KSP%X z`&su?qsV5Bvn@kcuckDMPHmOdA-5n1otx!1=>vxevwW_Q7C;XeZ{+Z_X)I>VW!SQH zJ*cyF8$k5`A#V;EID6}WvZ5Jbf4A{!uX#cDOLFDxKk0UTyvfip+Yjq!gaaKO0UUs; z1`8is`n}shUEU>Vx+ndyw^L^>JsW^$uebtmO6i=PiCp!cbQt$kwz;TMa{s%siVcw;0SlUUZ(s5?^$+hxwkE_) zfn*0e?9BH+sf<3RrLM9lj*o*>4OtfX`u;bxIR$eLf}Jb$%iio;AFZf+bzU*3oP*K+ z)2H0u`;>t|`PE%!5u3m0)zVlDYu?=A#0j=By)CYpmt92)32B{lj#{9h`|0HT2bc1S80Ao7V ztkC6HASD7_h7 zKml!a(k-+7b)=`~ZMiZwScX`t$$%>E&jr6`<_# zI&j$j?b)~qg@sz`8~^2Zk8!?%+zj>!bNDy!^B-S^?p($y0Q%lLuHumFWVHAF{`oR| zPTggTYp89KFs|=m`0FJeq36cPlH+h)0|d08lleANF{vS{8kLM}7 ze(=#`9Lw$hF_ zrr;%b3G?x~hK3$eNiVyXq`oWM|C6=;{u&M~4&*ZyS5JGq_KnrQvBhStH;~C54&7?A zR{x{_VyQ>Ys8C;iJVj3A-(H5LJ56T{Gq|Vef9p8kj!+%Pf!~=JniXkf zX#9t6XO{XuVO^^2e`n;r$3td0cT2e%$lP_dDic|>CJq|*%BA4c+LvvEE`&5gi8){%a_K7sUc)nGy6 zC|J*KC3TXGjV+sUV8m*;Qlb?jQ&Z$xO4RD)uFbM7xkBF3k*cnwLUhZ_C8O#5f2=fM#Y-Xw$xB! zNlA$vf(z~V=%=5jq{PjYKL|OK-7BDE-yWZbE+5s)|2cS8eH~#v{~g0Zv2Ydr62NP3MjrslcSA zc6I>gS7~_oUklJ9XXL0Rj7S1$eRh{D?p`VFRxn!irpjY|07DK=@RTWFpj*t&AM-qm zkG&y$zh>&&vr()vYp#3*(LLzU#$+#NRRm3Em{JDkU!q^YB~VUadjzzzY|GZqT)fGr z>pg|l!PO2|xw6(|&~y%7u>PBfdF~E1V9sVUU7QSJ>(0+KtT5Hori|<|_vXT-$aIN* z6_Z$_m2VO?Cvdwa2JeI^;(okNZf6dO_=jBjpnmEvj^)D$5{@N3+o$9tImd%{mHy`Y zpO@eJz=tCKCj_F}=*vwBOFtTSbx)N;YS^l8c6Q!K3!;PRS8=y)w*{M?eeig=Ms5X& ztkNB4;=lh)Gx{$dc<{)1L*Vl&U~$M-3i}*QCt&LeRRXTvC{Q3h&hGKk=$(wG2WXO+ zmM%5()&Xj?*c6*PP$(S*m^eB_Uk)AAX`a^F+Ikd=!&`2l0cF#uGwIGKSc`m=RosRa z$gJLHgtc?Vh#7xQg3*2pmSW_uX_ zcscfTVb)N9wq|>Xy|(bn+t9brjm05fnojl+Tg%&jv2@wWKWhJxjU^=J(!sQ30td0X zo8f}{O6L!-aFlNSsU#2~HCp^upFK9>x$9mE1SD(0F4SS7cz8Q5RSoh6ZcEk0OA8q(- zMTc_ZouNgu`$u70GYfS;)m7bqtLPS4(&I^;Q3~7jLp<({ut6TY>9_)ox#H zJ(?!L?UUAbUnK-@D@R?oIH=-xhOU3{TcCh1P+Q;5o9yF&?87VmOM&HeYcJEQ1-x-+ z2${Z1h8FK$vD*3;_=95WsjX0bmoBO8#;(P~E)LyntvV`5 zsNB9-WE&ui&J}F8@geA|fa-r;IdY~Jj1YSUrKS*KUUk_e!z|SCcEh6AB>Rf;ZjFPz zJ8A%X!?Bc4Pr@o)v(|Sr-uSOJ>mkt(Y(G=&zCAmLgdYv9`9gd3kU>+x=wSOdGm#iHuogTUbc zYl=~g-5nStN;Jh{Pl+P#wiTPSM6va7K<<{o|8nc8P8Q<2SA*Vt&w5+DCz`l}d4M^2 zPwPAQo(Vh78;6X*ewVgTgHYMWg{-$pBvM_a^D@gi#W+;ztQJ5qT;R{E= z$hq%D)~jd3&XYdF!@~_bk-RWp0PW*gIoVcV+Ic7NtY~f8&gS9xyWUf>r!fCoqy_L( zpY$q^vA4MxVu~0l<~wBQDRsRsG*M23^=pbt-Pbt7oo1_~x*eiC`z+x0wnf&pag;y) z^it58Sg3Hoboa^x4kxqJ#2K9WT~&JhdvE;)W)tjLKLP@q1Gp2WlX!Hn$y6*9XWBJe z37#h`TbIx@9g7^83BRID0~ZBZ&vSQ2A!=l6tM<6St1^d4F&URDe~k<0FN3hKWw>wO zzTMqclo#J08jG_-PI2m*8;y%xf-6P`!!E%UAL__H>_|<2p``Xu_GiY60PX-rpZb^D zTKP}pVfDUEFY}c1Kk+A=Va$6N@!KhjV=wpbe`FfYeC}#Z+{{%|Q=4YAefV3q`5B*k z^HL>ol&ZHf)zT7;$eZ1B$TI!YS*c3n0r?PQ&m=tWu@^0?*!2#NpFc*uD2J$(lFkGk z&8l66oY9)0uIs+OJlS3{ECUD{_VtXggT$XBjtj$ZF`GeicQ+6MzXK3lc&ttNJ?WjF z#-4B8asi_*N*~BjB&{7c&@HjyJACp&q1FS8G#n2UV!yUkD(?I3AieBgetf*?b=?W2 zZ-_f8VRmmn|N2kPf$&IH!bKU(Qsw!dNLLMOV?sLdHQo52oYNiT#tP51uIVHLwW8Ec z%ziG6+Y*NTQl%@{shz4{horN_50S9CMM{~l-1yw!4SKho zXakpf{AJ(6Z*AgZ#Z_a(tYd5qBlANqNI~-OnDxV2KZn!Z?HzW1x;_VD1u5Xkeu{Mt z-M9Y;$BTdZaqytyWE}s<(W>ez&weW(c}E{d!{q`c7i9_qfA=P-hn@SZ+<8#Q-%%V z7?$WHbw0p(nvh)U!NR@wyYC=nwNg{bAhzR{Ua*MNwO>C ztlTx94=q?%uuff7xyEDrahAz3SMHl^TTTy_;VQw|L55^qhQypud#-;%p16q{I;RnVtwABB#*e4 z-HoJRj*Xqog%r-jZ34SE1Za3!0 zI!<*Y7Calhl@-i#{?_*HzO(;o1RqtXMquw+Q044=|AwuT@Yak{lB|Z$154ubqC!i8 zl4*PVoJ{4a%WVG*3y}984<+3ROtBkl@M=fdo)s{-4r-pNq70AijU`Zb>n!A!emka< z|HNl?XSL5T`nW*l|Ha#T$Mx8^|Kmhdv{WdmNL!+zJ!oiaPZdgg(4OjDQlik_wCmlH zmbR=kl(tF(?X9W(J?+7+NtBzZp!1) zU4P^?JliyM?S^y%0+SBGFn|23l0gPFEnot z29+QOZ%c7snR{v8&Pplhn6(aY$_|n0)(#<9=94Hzq+SpE2IydRK`gbftJ>034^ul@ zJp{@(Iz7LLcj+L615@!vi4@~XBcIp_Oof=|28h$1bctIpax5b_1)NU6LFvZdh|au9rBix zbI%1w>{k>=7ui$#@|2j)L%{a{N4b4#z<}9rPHEzq>p06;e^pic8NLF7;wD(Ik?gUy zq!9uEff@|666hIDNG&e5YLMN{Kp@=TCB&R=j~DbX4#q03C8vgYjy7Ieks?~8^}%Ug z$4#u03_P>Cd@S{RZ~4|KmRTy;doxHrk83hQ(Ac>V@%+G5)1IR2tt5AFPg)Ws55XOt z{%?0EMH2YE5fn8V&Xca(L$ImC|7z;nTfbYg1J!e2@zPU^5b+r7(6yn6sJ~@JO!Udp zX*L@!qu?uS8$*3U4-_lJT%3dUfrA|@{YdvrVq>-UE_#8r@RGqP^-)c`_&|ehys<9y zpmmi>(fW(VaBrOEH@JxetQ&2^bE9&tDYjv1y2VENl<-wXsB})kcy&3CyO1_X2Cq*g zMV6xL)t#iUdRhT{X{(nNcXVLpO_-IZQAvjm~*mBENAQPgN zE{s+GllYrp4BjCycuXEtg695N*D9F@&yo9gAMcl^op(H zuDOn-C^z@Ps14gz1zv3{7Lve#M^Zb@IGvI=BHNwcz4uhxrS?5!O(JWSuj*l}>dw=h$@7|y4Iz~X z`E?^{V&`8Xa)}pt`ne#V!+0<=ZsH-4NXA?t4}*8pn%T-%bQWK+-V|)VULWxOyGVg3 zx+u?Fjep8n#-@iK-Rim4Z)WS)V6Q@PT*{(9DT=0FR+8!Ao4G3*Hdb-F~tUAeK zdV@CR6;gKVCj}j~YSaXilaoI}U>QAgeEh99?x8^tp5l(oj445d9e(Ovv<8XIKv+SFglAFaTPf*IKNaJ3oyIU> zw*)gu#mw;LoW}=(G`+`PL|hI@NGjTNX~a7_NJ-FB?fM?Ls55?Wm91e>V@m<`6kNR$ zc#4MiYaU>K%Mr|5G+ON%Jr$@qTKibXNV&I^bwfJ_W9J`d3~@Mi52g1oxd9Km-fi)WG#43X zx_^H+&xw5}*uI+hFY11)(@C|}X5U5bFC50^uAqJ$LA*w?T$6=Sv({9J#TvkM!BSz5Hox^}ODuXZ=Wcc=!~u zYJ&Q(-5woDKjtk|@Rql^W9NE`EN^$~U6}$C>yxRxYQ}kYPUx>*!lc^3)G;q^gUz)i zk(S2Xw*=WCiDT~P74%(JMbh*fzQ%(eQ)`Wp&n|V(9O)LPl9CeJ!H=ZMxivv2 z19xdCNeX7&qAU6N*m?9N0QrlV_PAW89)^nF?f&NCiJ%X2=@$ApFX_u$l?MO2Bo z)y+ni9^R@MXMB|+3fOg23~MpKJ@YxZPNh=#pNraxFQ5IWr&y+)yhQFl zY*IE~J(8kYEV81>Sew?+AkXi*klx-CK*6SyyjO9ORu#x`EgYd(z*&CToW@cuW@0fb`nU?zQptIQF{c2A~6U68kHGKj@|_jSbd(p(Ex!@s zmwpg+O^?>71V078TW;6O_u%9mnROQGu%BmqbQ=A~fy^uAeMCpa<%0bNy!bJK#>q(G zPc+$~@{)7wxO%mj=))Eehd1WxDy>H2>yO@?IAR}2^XA=uVElaCG+Z zX|yrB@`|_+2WUhBi61Lw1Kn7726W?VjGDT|nW6h6$N(bO)J)Zu^SEdHTBSCg?4r02jZjrql`vC+CW<+{8g17>zJzrG%p;P`1-?^ zQe;?rEfBw`BXsLh$n{D4gF93%D*4EH2G7rNcBP#8LU}O;eam>!M`F=cM~i#d!KlkD z`iYxhvo}XnpI`PRP${v!Whjsa(nw$^+vxI%!K5x>-&)+C1IT4MmdnSNb>B7g&gL2N z{CwuPVDHYaqRZGXUrURmMT(hvVj_-}Q7Nl>xBiyg#Ve|LHzh4Xae2Pu9NKwX7+sKx zmri-7ZIZ96tE+<{f=yFVMO8KMl{=E=ASbhJB(%`1t$2IRsk`uIahe!6_qPx-<61NJ zMuJ|tOGS}$qNYdg#aQpu-A_VsQU{4K_n-93ZuT*?PO3a5+xfKf+yvawJAW9lF7L9v zSjp8z{Tu7+$yB9|w8Mo|xG<9YH^#2Nly|X;ZOx%518tCif3TNZc2&>LV)Ow1%lF8Q z(0#Svx9dj8f8WSgYcR?BQY3_nnonb5*!+lTi!P?6q~O0#NJ!SgX2-7wd$Ar7wjX`s zP^+G)5f&O6`l=E`io;|C5;Z|or`aMnZ2yqrM$D3)QNybT2`A2cJgT~RP{I3lE8$L? zAFT2^bo~;@JzgT|CiQxfAKGk)O&v|1z!QUwD@e{?dHv(3R_mvj^8x7)XOHP|Cx|UX z%Qc3IA6ycg(#h*lrK5^IpWXeF(`9=6GvN`Vhb&t@jF(=G9oTuhGA!G2VSlpG-c9eE zW&=%tGqGYjGl4lbt`u=#7yTQoevqupYtex8Xr3!W20zOYt*rCTt+8Y+0w$zwjtER? zJSYG*5c*-kB@)r?aN?eg(Ju}7_P}oq*F<)mfc^IgFcItpH@@$}d^|(d54s2k-(h%f z$1hTcB7;50;FW!C&Q1K9XE!8h%0>>P^|C$%%XHtQd@F-D#j57eTV780OqPDG`&@P_ zJDz}drqGLJ#RptIO}g<1w>;9{x!pFe^9gD5?6s%a!6wLWpML~KH9!K!=Rf1^Dz~O5 zILC%+;v6$2Kn+pF-?lee`FEg8AZ&qdx8X*2L+Ay!PEFcIEK zehh8CfpVwzlu%?%VJTxqY~8e2#Vp zp-{<3x8-S-K*G))H__$)_9m|ojj`z7)fy?#WkBr7?4z-?ixDPFjrjc^XR}k?n~pca zyu}?(=99MHDkNg&9{AMxe)N4ls;V@xk-cJAE!gz}xOiBQ+BT*TxEyO|+D|msGaaW` zrhXbUIboAlzN4^<;nK_5z{CCKb<2uJEv+`*DbE;FW{JB^)FQ1L z8XthDudUe`*yfcYX+rxL2_)Y3XvippWXyBD`6rCZ>z&RNzRzE_{9qcqQf8x5VFa6E z2sjI}l!Dj^su_Nhs`(gc>uKeGiH5uk3lo=UFL~wDZ@LOA@fTvF>UX+1bQy4H#7yM8 zjk3-O~+3-D z+7H(RcQR@1x!=|sAv)zhB|4)l%JkvGRhhTpo`kKcBQY?P?ne*H935^CS7m4+ZIk_7 z@AGaF{j|A*Lt&P8%ojEi#JC&SjmUPs9gmJAY!82$a0uchu9(1D!|;#Ypd}StZp#iD z-zLFw`>13x5aUF#0_VrZ1*#3jlidbXam|&^Ol;r#dOFTVJi_G)cvZY%&A8ylGCVbN z(gMqEGT{uyF6lg?GoLx4Wl`rt_UbzJ@Mk~_Zr~w~@*&aGW`8KM=ednQrk$VIaG*;JO@AjU;#r0W>tLyPg1qDX@ z=XMhWr^V|a7P7OIo`p4slr?%18*Z;r$Ui=>)K9(=1 zN&M&c+Rq3}-w&iZVc-5>xg&HY>Rm|Mm0jlU@o#e%Hgw_=ceuF!hi!W&yGn*h zsgaLod9MQpC!Davrb5JCYi#Qf^M@41x5|(C=V+}y5OQoHyx}@q!$?NJO7D0&9fiM9 z^4qlkGa?IhT`7lH{9#uJ$^VT8`{Tq&{paVFU;JU0p;vqf`P?4o)%c&Q!)iVGCXaou zL9YJY+tl48&kz$DBK~HLf)pXk@Y`O({)=Fi@OrOvVPWe%I7PqtS~u%F+m8w{HN91y zh*%asqDkV`Lr+Z)vGyKZt{=`ldS5uaH85(;v9|K0Zrt?IB9FjTCOPv!fg3%1z0P&~ z$E1gT1U-J$Q^ZrxU|9X=#Z(LWBuB_d4p9#y>BSGN%kml;;RUA6Z*KM$n1zJ0>s}=F zAKSO{JTe?4S69Se#Uvm(p5CrLp?(fy!@_M3i7a!i#s!O}+TQ@SA0rFb%*{yTumBwAeL-!}EPi79$^sufIn5RYNo77`9on0u6u z#EzGmDBjghEx&k9?O4_#xQau07sHKEqt9ccWU4Hz1Km~L>b`4TK8%}qUsQg#n|f;h zcNR~)I}bX{d-)+_)8{5Qg5JHBVVSU!Wf zA9(eHS&8O@J2emi^8HG`#y77e{fW~(^-;r4KWSp4=LSqGtzwC=NHN`|-%g#PjSYPM z=H@lK+9=!6*LSySF6Y7l{F6Ti1XEq&{v9P;uDSY-;^%^}ILh?2$c+X3olmqo;0+lg z6*{VKx%BbgnRpR(*u5U=KkoVEXcanvyOYw|>;2lN%C4YHrK4ZphvfRycDUU2`VQHO z!r3Yl$Ej`xfOACv)JtZnyD-JF>tzd|Qy;oPUADtSaLwl+aUEd6SpA4j1_Q23dAuY0 z#7nE{jmIYi83i3Dp9s4xNkiE%SusukH)fV{=ehUGYSD$S_=My@W;E)i$eZ2^5L+BEIamrTGf$@rGc892>uG%<8j0uIE~yifZ_ zH{)w-Yo8)Zr~3eZ2WWwYE4m4nag}@8k6eSY_tBFVEhE**(E+l()=rfh<{eoqFeLcd z!gQ}-zw2UxObBCQz-8zMwu%yT%5h(4zJjt#pF;C30`@9my7y533;^evSQ+D>vp3dd zI125OFa#Tsi#j}hzCWh%)FREqVh>hWmHdY06 zAA-QYb>h)-EY~a1ePxBASqt046IE#lSG_rMS z0l_;T*H8O|UAL$qI*6%XN(5_mLSD>iQ@t%{970ol6Og#-ji~e1j~d)OWoOZ^A+NrV z{8WD^gm8e5Gy0OAcdF^B=?VM0P4aO9>M#*(ud)w?d@P@GG_OtkW7R^62=Dz{B17CRbhH^5+X@NBZCT5l3X^l*)qSP<+WbaPQSnxUSK+H@+>! zHU_{gCOAE9CkQ0w@67JqArz?7hejJ{1Kgiho&;);`%AsjEv2ONsT{NU{o0!rH=4eO>=TD2$EM0p8~6De?PSxM>JRxAMp8AqjE9 zC(l#wBj^rl&-I@#ZHMaI*Hq}DANvsRG!5k1VkVnPgAW&`(lPc5Dy9{Xz#LBDf-KCKqtczXcQkf}T#>k$Tbqh`K51#Hca zRD~E>NUQ$FbJ2WxhSR(UcUMh?IovB}JwfZ(SdTVnD1q3qCA2~I2lEHZ18U1YV0yCR z--$NKp+=t_Ef?QeQ$)Qx_BqazLVcU(z%wnFXtLUO?#aoXqCq4zA`*1d;{_W@c0aS; z=FjOjH&1rHi*xX30%Y&C1B6s(0;za{-#eL(D_#w>KzA+%7 zOXoWJ`BYb_LuM$4fxe=^*qIEq3>CFyv5h$wfGc)X)rGOu1BQ{A$D-qKN$#p-{%Tmk zswO00&Az-yNKQ%VDl*uH|H6~SuR7pt1{Y1dw^wrvAB4Bn^4 zMOM1X{Dr0G96UBt>_!@2TJ>C9>8#phKnM2P&ebyMX12F2v67kW%w9v+FHY&4-y0Lh zA}QdT->^1F6avBT!FBSE!`hLw^&hlbPXNz+ApWd6T?PR!t?THiv9=7=>mIWw+KCJG zDDKek+n#X_QNOl29AkrExv~~#D%WxvA}@&F-B{F|5JIPOJ1d{+0vxs}?v3h+Bo>ki zXdt+Sz|KU~C&vuX>Y0p>MK@mo)UvmVwSNMv#o44QkHf(~=_VLmKcW8A0>Fw{6B#;% zXitX$^*A{S_Z??vPx9g(k~op_jPVCk6Wh`q1tG7T8OpGI%M+bf zg9NAfR^THoGcHs32T}8@^tsIlvoUG%yF+DcZmP<Q@jiaERj!vyWz;Cl=S>Icw>HSxol<4nYwCHG{+N2*4z?GQVp!_~!Q!>!h6#!5=r?mPjJtPb9_1E`mH^mDNWu(QwloDFB(Nz6J3<#%= z96h$;UdNb6$1l98k~u&`ZA#&Zo`>O?78-Xfum9NUOTXFat=h)*-u)7T$Szl04Ez&t zGtD!Q`g2_BQ8-P|c0_690QN4;NyL6_0H^s6u!vW2mK{u&nsxR8X{Fo*f^*_Pzo>jQ z<&0=yxmzu`5iLOBs3m~5*buHiKj8I3mzktc^~TAa61ReDKSaFJG`=2!DGfybU?ce? z>icTG{@f}J#9HHbZ-X%P-CdjFbeg_a0vMqo81Y=j?)*%|!{}2qPh#pFXjz%azKGtV z5_l0U)u8r144m%b-p*Rttx#T@@}Kvw-LA$(>493&E3%A=b^iVU<*{xfvaz6AGF>_` z2zbK?fY`5U)(?M*Nr8@}j`TS6Y$50jl+`BhZ$HUDI#oaLHd;zXT@GB|>}JU{#W-_? zLxVQ7V_`VW(w8lFrgZn9B#t0X=il0Is`5rx5(_*N>E8YTUzy z7~UqwrL#OAQPFzlZRyI12h5cC3tSgD#;>87dDJ$uy9=#)I--X%2VNfnV-^m}k8N6B z+z^ktU?^32Scr?ORUo%+y*<(REi2zdSRra_hZ+Rz58|x8&EAfEGfzS0U5Qs=*@p}* zwt%4A5z8aGwbFE1^~GAQULX-#s{b&Juc}@Z-11yDMzHY_-Wjyl^m=A`5K=PgG_ysek55!F21S_J2y>A8 z3slS}^sF6{$SvJGS90^?>}SG|>kk`eqT&RdWFyY$4URS^sU%4e0)Yd=c(;Hj=3su1 z^sE;p+>yDL_a&bL+D_tuUowIcf>P$jpWR)pW!;RP(gx&9%2Gs2pW}e6WMhN z0Cn|gePurTMeX!U^}Rzd_STT%3Hq{1VLHp5wl==;&IWS=>a==5G8pv~StZ`p&Q7({ z%*{9cbc8}tc!0QF2MhVJp( zbaw^1&v@`IN7y=0$t7`h3r>klS?yOtjW+9v){^CRZ_V}^N8Hm(S#twJS^3m$ra}`O zLQfU|>G0@=Mc=(XxRaA|xK&|+%r=Ht<1ihR{eW~&hQ4}LgdQ}BjaT^bz@s6_b##59(H z=nSdON5-|EK7~Q!lWr<#_YF>gwtXtW5L%VCF+U&IYEV?uxg#QV&T zMOM=b8>dApTo;4E0aD!j`PfqnHxC_H>Vzn5o+-syk@if@2m}{Ou%Pxci=f;47=eTj zkMr(w_ya&6gO`%_FE2&GvrTQ@rb@6@ldk(*^l-rgx))ZTj@kBlRm%t$mOo=Y+Rw$> z30)4w>(FA*;kDnKz)5|Q(yX?zF+5whSm*t7*if4YKDiv=VQ|Vas)^bf)G1ii!0R2~ z-x2XH2J%5VBROgr!C_A|p||l2QT>IT`9Em_l-3}zBnn9v5}A}%oQue0?$kNG_HXJ+ zhM=8Q*bO`u!`ia6TRS#kSXVgU%vlUjqb(_NL(vvFPa#iI3(bJmWd_w@;}K1ux{6YJ zOJI*?wgF3Lj$RL|y!uEbP|v6~n1MmSJH7M(Pib1T;*~{uVd37=vpj(tz*Q{!4jg`x zXIOKzyzTW!ys%pxxW@Ao{;Rxb1A|Nhja>Z-9ZpWpEV0i93uq}CkC8a1If@4=Fj4&n z#jc1hc-z-d{a5a#d-Lq-jAhh%$D!tnX?n*|7CBX_r3<4cQYGgsIfvXBU8eDbC3i$o zbU%ONKp;x~rro(Q@C9t8+`{7=O6!1?C@zyaXoF*)>M4$ZL2p{Zs_&ngyDplhMQWEIbVFmGK6Cv-{>w$CHE%g4~@R09H>SxeWt7=I;_jLpuCz%oNY<;bN zD;%K6_sos6HJ8-_g9NO<@=eTJh-yOc1t zi!4PydPKbO%E>4bc>ftsewbeY7=PA}=a?!QV~bIyh?7TbZ^ zJxE2iq&(#5En{6*!+q{pk95^h2ro_d>cTc;{>)m4rIM|BiaOS8sx~xQT3RL@3A0pN z%QA74;BJw~*TzV}lRgeN5%LxZUty=JMsphLW`S;7s0f&(g4A_o`WSSEccQjh^VogD z6B2=uuFxX6-_Zq@G7ZAgm#1twuP(#%@CUD5u@&|nFk=L3J0$_`|5$;j;T6KCVfDxO zdjpq5P`|yOJiH_4;jTx6T^{ZVA@1Wx28)7rp}fTX#wQD0cIY4?I1cR(Oyc(sKfPf1 z;fsDDtLZi9=-|O!|C}J6ebL3m#TF*})o*UB4ME>yIJACrO-~qPNHJGHIDzC2JMxe+ zYCpMiyEa|vogY$TeHCRqy&Islt@JbpE^jVNDbR}E9uVV)bp{fJESfpjsu_!(!T4%@ zi+9b?D=KFVe!tiWp3+e;blLOho61-kSLmK%@-c-7=BlDmf{nz%IC*Y-9%am%GKK;ttA=PBZ-UBk7%hD$=0yn9MehJ#eO+S(3 zI6&wY0_mcs7TGV9+5O8YMxU^UdD$O9b!I2lbY$zwxw@7j06P%kK3<7%STrgIU%LSu# zMcr)+X}8Gys1jH-2FpJppihRCRh>T3*u+E*tXMKM7OG@wu&=<*rdx*t^#ykYf5eJWPw@h97P;@zQCeWk%&f! z8Jb86uZ8BXW(8QakD||Fqbw#3KA!p?lm)J)<*iGi&kgB!oLR{I-Y)grc*=F|b-s-p zG&yx!-U@>n_*a&lsXdbOn*UZ#?{Wm%mWAGLGpHsVI`yF@y_aGvUo&gK!WKXJySzG| z3v@8aK#pNObG~A8smCT!s#6U&6?~{q#o16f=}1qG6L5IhG4mx)9M(isX}1<0Mwf)gJAx>fCi$dTh=FU|cb4j4MVt!=Ki= zxxZLbGVyUgSLjm-A7yXIe2QNYT|DqU;SwWmKa|W>XG>Rh<9>(nwpEy(_0=Fv3K~qR zkXxUYnkRS!5;4q(V*p!4Wz-UkxF1Fj>jg5SH#0n-OMbsaos;?*o!iQ-wKn~gdPqJb zQ$a^Zr;>4;O6@`hRkLbmVva!|HJU*G1h?t+z{6+)qqpql3s>9qH&oxJm@g>veDVO4 z@|!8+KrQs6<;gC3ZxImZ+C*V!dizCLn>&9*4ER8Y_=i)J=1N_&z<$+niMRl zYrJ=Pe?U#_50_(G%{(W&%knvgO8jP?fU)SZQY>|_>UMfcN?gSpmYK|`*B|Hj1wbHa z8;QF;=y$)N0tik`DCwWpHyOoY>Dro&(AJBFIR4tL3oHg4W4v1T`xbAjELAYafksJX z_AsQ~#ryum2>b(p81*3@?=n-Tg4&O4m+G^oX-9T?E{G$8vE&%AQO>qSeA>;iov<`D z$k%GTN-@SNXILf&!2CO7u3hRWcV_Pir-Iz!yX_l2zBAmHq1)DHMgc2$#8m)sx@Y}j zcli+UEp_3T9N>1bYea_CYS5vX?|v=N*Y})01sHV6<5BOr>|N`NY=8Jy)k6mhgJK%@ z;yWO)0(I=}gpur}-{Ovey!UgbP#I@y;dm#7r>T{lmP|r9Xze5vDrEk+T!*x_5uLFJTxOl5t#@igtyS^B7-jrA|B>JMzO(iY&5ru`2C;(bO1wk8E+@zGUdTxMM5%z=0A_k!QjMDt2be=}Lb4 z`0^KMzs^la90zs^5U7SXFc8b-5Q`;8~9+%5a-m3DMu7Kr%HaNtE zP5Ck0oj;8n!uq#(wXTt13`MB%8d7-AjktR@vr_9Uz+gB&sZt0y>JNH^$jU@=3@;Kahd{+h`mRfTF8)W-F#XSYnWTZ3b6lyRB^}vaHix!-p+DykJc&8S zsCll`QN86)5gm9*CptZKzvCvM=?cv9H9GJTKIv|SJ-zJE`vqs@0;spwx8_NAvHs!T zn12K`aq8kfgdGIqG@s`qx;V8tWYSf+c(AL)BXhF5L~m(&Me=Tcag8S5YT2uNB00sP zE4Fra+4QNWd5&UchEDo=G5t|MSqVufqut(=l;7wP(V% z6!_zA9siRe!em>{ttPi>TN*v{@ zXD7rN5Ziz==X^K4QwCK0WOCI9&V(-u*pJv-C4N{Kk;9Y=Uv({<1q*{m!qEDWye!6K26V*fWfJ&>D$ zj@V%%Ygg_XxpcbNZ6(DW8`XP}Kw?Tw%kT9woK0nk`cM}7jEoFaOVV=*(l^sO6q3!};tpTV_*%%m!_4%KIBvj54OdrELWWm5`hGg++XW<^J6z z1TR6L>5uQT>~;A^4hnM#Oh=BL?QB zG`HPM9C(|!*SdIca8UYv07VK!n4~)S*gZhI{X#U4jUd?cC7?(KJjxx9Z%AZw9Mbs| zNxR)>YFOpH9;#Z|jwYHXZ3I5b3g!8JV? zlVx%H2cLq;pvZTJ4yfS{L&#Ye+h#vMR3DM1#BF?)5Nme;bAT7?VPV@rf1d2}?y74g zwjIQY4{gu(t|2``OHH8=u2f;|l?DPbAO!rKY+&fz=XZsZg>Uiknei77xv}es>HUAS zS=j`E!=+N6R;5l-^9mV$lXQ_6*cy9)cVsn@5h-;Ib4cuMVg~c9V`3}-y?khC(0P7tF2Hk0QV6HojP%-W4J+i0EbkcA{aX z&%j5x2S=H1TgK7@* zr>S1Ru9u#;Bg#V4IGo9`J)v?!dRR%KkW^D24|1V!Bn9y1LPCj~o+jt@N zI5t+=YlvwSzVVU&uWt^Zb^p(|53S@d6?y^tIeuWyfnp|c_#2i6F$BbF{{{n}LZx3U z4OTlbpoWY_SXlkLuPXf-ZwXx%lji>`5<>3J*v}>PcxPz=F-y0{$^8MD@Rw3{ zuDA#KxFTR=$c%Clc7ctgM|$pAA)oTs>?lQ|P-*fAJAtmpB3#Hqf}5!L9=mQ8n}f_S zzuvZ`rQkC2ZjEfV!#;@O5hw%B>s-n5j`POpXv<} zh1B+66w)w8snsd{okG&2!(d7t{%>f=?SW4hLKyi1DTT4xUa{B5F`E1M-)a9x{|oZJ zDg~qFZ1*Ui`rnY;?V2r{am)U+3rQnbyMXbIV}AYU94H|0 za&T}A;)X39fYApnjsw52`VN?*!0Tlviz9>WieO3}v=xw#zJqGMnF4!mYKW-&uNRYj z6}nIXrI42A-N_4BQ z_Yr>tU~G0yocmlY;BKGsjSs^(xHBg%TE37v4n;_R4#2upT`V<-Zj$OBcgM(E}4R%kBLL$5;(ugM&!L;VD ziEEpu15?cmZ@tCZPevj(K#b8{PB2nToqXIN-es6_tfx44%TO)1dd;u<8_XjN6Y*Hx ze=+lN3*66s5kJ=?0)^I=mdjSg*yAz$QxHyoUwO~ja&$jd5H zk%LORQWZ{gRe5^8^8lO%jI2>_`7k4xQVJEtPvris9) z2>j}?aCTh@+|-0{fTMqe`QwaGXuL(0tR#&+@A3RN#>z#QUv8un!by*w?zI;9b$g=^ zn)lS{bf6rHpo|x1VES7K2(mQH^Ta8u1bm9^SV}~Ic|VBT>s3H;NW(Da_Y?I=?H?02 zJz>WGQ`qQA|2YUt!5HocL9QW_u!bJ!Ii$~=izbOZr}aV%&~!q(<;)dsD2WhKnMPE3u^d|1cQUNvy75E{E)0-c|%DQTAhMg1%QT}P+BwZK<%u3`y(-F%`#3|2VhUzUBDhW!s6!8^ z&SH;{l94l(x-%_oI14%YAPu4&M8FSO58P05WZl0p`<7VJ7ri-zAVUCpvML(h z&4!zpB2|yVW(&S!280z%z*xp=?eD+Y6=i+&?C@dB*$Vt~B!ElEMrLTjh|o6!j4OSB zIE1n>Yg)Xkd8Jh~ty=YHAa7sfjDUCXJoY0?AVD3ZuHTc9U!#kTj%KB#q%3mV*qHH* zfDx@V-Qm!sg{WVvvfyi!)Z+&Z7BaXHVM}d7x;P8N1Zx%`S)g`O;A};`*I*7{`get` z?@cFZJr4j6NdZ_ehkxJ-qLoHFTX@u%pmq=3aTAxMwIiM>=m;NF8 z002D4^I3`X3QV86gN)398rG%E(4j3)-#EczPF^0cjGX}B?{CX&@A_P2kICiRR92{T z0!{Ug;|2%-185Ki6qkV^wzmMPy{X`<4`0ikty4&lRR#KDpDHgQHJ_4kL*yw)S>jtZ z)z^mresRA@PsPe)eiNeK9b>exG$=snMj4}`_<#$?Ylb&zV_}A?{zc0#*LxJoaGF7Z z)}|{bWi6qfs8ZM;;6PgRV8ZVg9rYJt+^^!cHl};a<^!*zQ?oTiL$Ny(7$DGp%q$}F zZZ$n5;kmhD!oRgXzpp9HbAR)I*}%RNR(*g4ybSo`8&+T^Y`(CJvyc?-HKM?xnZ@1^ zAo+vK(NFBqv@eTo`b9n$0`ONFR1ywoB4~JFQjBFbtO+WNjs;HVG;2BIX*bbshDz@q z1BgC8^#}~=jeyz6BK;RuF!{utzhICz{4mt=JAOcsm^}alIgLI(c}=R0GOczPkC+9$ z7Y1EGx~eQ0&6hSFb~`}_O2-wT7z~^$fgKKmU+tR0kQS`Ey5PP04*YV8aO(Hqoz<@} zgWjx!jEQ-kfn9yu7}mIt2}E8-DnSDqxzMNbRremNVi`cyCd07yj)i%1)|IXG5m8R7 zZtlV^9ks>`sl$Zl2G*y`W|ATM*|G2wb}AI4W;Qi66m&m>1sI$jtM_#5 zi0GD?ZvpE5mK&LnK!#_(w-uJLxIhrEF${a^r;_{U=#^=lE1TrJ(yLlxsHhke3yM5w zN%z(51Vnc$PvyhV-wgcH^Gg5BpA7si1IktXlg|}MK?GPpdt%M&kIy#W zDnxOy2t+_R9pea+5)}EE&CLoLsQpB9n;p>_;g~xN|1>FRX|jv!GvhBp+{9`s ztaI0;)iBP_6;)`gs{+sxEvHSvM6qbTJHY79IJaFbE2^GolTJQn;C^S8wP)F}B*RKv z1M9H3>#q>q;IKVl{(>PFj0V=Cqr%VB%+=?-yY8H+eS2?O^!*IwBq?7pN`nc%c}a!YRIsw^}c(1VG2dGkF%SGh~R zLo7gLkroHUTC}8HrOi-ExIFL+%kW?@>%Y}RKfZ_0b?^jU`PIpwMq!K5AOOpWsn5Oo zrRw{f$Gi>Ca=r@Rn#*(3-9kc{Kw?7x+t_eCI=Vz~1I?{(qS9MMTCf_&z54?&$!Q8e zZEMrAGVV`I#4$lhPT7?&+dDW9)E^Cg#+nvwrziwdD;NFgw4&-JPa!2W!efbSY32= zlzye&U{l4kbKs(GktM0RJ&eLR#fa4{N9NcG-m=csuO)USF3^>hwJga( za+1sV5zI>$15BUkNiJbwJywmZ<9xikV8*{Zm!<_9gV58oze;KuPo2V_-QykVMdBL5 zSV3Rm!>po4GWPts*nYKu0KC&D%~~#v(;rZCCG*Eq@wVSTCarL>ET(9!%;auU#Ux|? zt(W!C2JNQL@uh^z#JI8CWUgssG0qOzg7Q2a$K_y}b{y=8F|J^m+Py9Vk7QIARc_a) zvf^zulwvb;`fXPLN$gT8=A&;sU}NKb8Cb`LIIw;{x@XFeol3BisP}G& z!>;W(dvScpKML}F3V@n%X5k!dV!B-;A#asR@XkxpEZ1L$TYS++p z;3pV^m0aXtX<|vza*<~6H`nYwQC#eIpML?9{{3Jif)igZEtWF{Fh6m+9o?Re$8XZ% z)`De;=^j)i#Ye%BvkI1$=4@fI9&X1d8yWdNd8M#mxq`c_$kW2K8>7_a-LOz-<0{=u zY%5;k#>`2(8Z4(FU_$;qg*3`k;{rC`SrEmr&X45bA|1{{iWV6&-B_Lya0+>fy5#@I zr!X{B)nyJdhwXjYl>co#Y+tpR2CS?6tFM{EOJoO0Fovas(f@5>CBoRS#MhXj70V5Y zZIK}t#G`1Qqvv3{vO=J^)-N|5ghlj>;3oM#b&LM>fmBrI2a7s7I-+5ruf=~|D~#Ne z)L&9KpF2ay+mzi8785R2MSMMpW%cYw48Ih@%Gj)%-B|v9)Dy>LBsMj2#&af8kWtKQ z=T0vrK2*6+YnGTK8%f+nE1gKrTeAM1(ES;|=vatF0Vr{yz@xhl|DAW99T>FvB*1y- zSR+EaVtKR7TYIz$2JDZ7akq0)2-9fZGK-hbfCak4BHA-FENA# zWcBaG=5yMP!pQ#M*Vk^CcBEzP-ux>jjQ{R(^RG+x78VxFb<&A&6Dc2LJ{4vXu~)H6 z;wesyrF0y_CgjR=GXvb2cPd6=VYsoXcn--T0w#375m54G4BwsIOeYb6Fgh%pdXieV#*BLl1yt{D0hd9 z4L=0z4(Q(u_v)fKm3%+VnQF67*RNsO-nj>bM(%p?jqtS$nEn!!NODE>ysIfOZMyMp zZR1Ot{^&H7$)^V^n!+4FA_9qt6|2v@*baRJ!>p5w`gE(!S7;fExjV1f-KyZhrs&!# z#FXc9%k30Z8%*3C(iCEjrpiYh`QESPVtHy8Ytku^qkiFfh>MFK7jnKmSIoQ-w9x>! zY@YOAEs>%a%Cz)W#vK*Aso@BY<%~X`)+I{?1%(^X1vtg4jZJo>|FAVh>I{K|+j4rq zktfU3=T0i@loYzp2Dkyio&NOV<$UIsZNNs4f-6c#?)Si~lH?gY?Q&YGLng_S+vo|M~0JSb1K9d&=A2AW854 zU+hFbJ~N3z@gGY*=4SUr2V{U+@>Edj^@Y#W`UiGznP;yv zWadyTe5-*)#T${p@o(*KK1|G$Vx}B#C);Utdbg~7&fb>HMio^%IbDlPM7R3{%zd}- z@a(~IG(%fdaPt0uLx?tL6pnViGSg5ggk_`w?5z=%6ji)MB-dx`;s0PRtR1 z7uW8^iNnKF6hzg&0w0T1-VVzTcreqA$k&_=t17o)<3KK%mG9HuE(Rh*Yu{vV0x3Y{1iw5}Buz!D=hdA5FkX_*5P)>`&(nN`~WS%NB-6e(Csy?(yJ4CEUo(n8x|?! z#3N_es&gApIebq>^)HkJoU2|1aZeZYRxBxEhks16VtHB%e4iO>S8*+WehfdhQybvJ zp&0(rpU=^uV^BMFE1~HJyf zYnsO0pVoU~G1)gZpGmeG+wEBHAB-K#0X?YOT_^Xy!mGbs*OIH=tqTVYcdfOA*iH!H zh@`WB!x4Wx*M$mxg!o>QN3alIfRrTG5hvtMek>P#>WSXBb06QmujMsukE=7BoMa-zKqScp^o$2%~`Lr@Zb{L0d@BGoE6>H7W^$|&IT>U?P;fZX1CT+ z0u82dMqra2@l<0(JX~wC`8SWm4*O53U^$sFoUCyV=R?t<*nGT^^VpOG9Vm$_-0$5> z~StH0H9ci9#cxIXx1)<^Q=ZMv;Sen3@`1)KOGqy;n5z zKxNiemQh^9Zn}sqgGf#Xy0%>^7cp>dncJ8%8<)%mr_d_NnH3Ef^AWQX5mT>SWmyK*kfjH(DBI5kYF5PlT9Vrz>sJQ&67IQAp_hS z)n9gP&!!WjBi>tW*3VqeU*>3OZB2v}r(R9ItiKFybtEMDL*6vy1eK1Z#=Oa^p*aEF zdnz$jFKZdUK~;hXI+&x(whq#|lMwL_KAHVU|G1%m!}|C|OD#T_Y4aA60?$gf0N6lu zkovZmN@P^W^=8RqgwVF_qGg)k+v4cgw;+792-X~n5P-<1$ve*sZMu)c(fae`GJimfPeg@j_AwBm|GG)rfAAet1MlrtdaYNb>MRPaT(z z0}N2A#yxfq7EJS-RYBVSK6I(_QeIeqU1#!AbQRwN*n;OR^WGnoNibQ<^n^0~4d@>~ z3`0m1wXUOZ-x$YO9fiK-xbxsE`vU1$ufek+zoCzZY|(?A?uJ@-SB83MX^?%B%-YRUR8VB#2ir|mPOnb<604#hVZyEOe$jQgnZhoYaoLa>qZEfiivTWhx#(nNh> zD2mX#=8HBZL*Yb{@p)eJ$Etowa#A3xQDfyl^=U>T}vZ+}naW7u4MA)vL>z@c6J z1{C9R;{|ixokhm6T$SPoRBh~sip)s@HMiDfqGNMDJ4IRP{9b;O)qOBc>+coZA1igV z$pz|*gm)G`L$#4fGNJ$12i`aEm9gZSjy&F`)a_hBd{jNiETQ@OVP zXs6G9~-Q>l=#%(DhmLZu7|$vn?frj)5nMUq*BWS(aVkvYj6LgslM7R&d%SMBHd zY-{c6eeCCV9KZke(YDsQ@9R3Rb9kMv^L26fMXr5)NaA4^!QZ8KdthE4 zHvP;A{WGoXrrKpV8<7m;mA!DSo<^8)?p_4&8_K3Z%SH+dB}Dj{7C-&)@rqw>|=h-)4I1$xks6w zLb;$9qBNkQ-fAx#jN(6_8*U>id)@_(i96hKCa8avdE>T8!O%JCxa_PUxc6O#;MyRX zKLrI1w+QYjnZ7~2*XD&Nr9Y^o*n6y6WQ2+wSAmrf)lr4lp@e@VxOcgv#k&*xMeieC z;b;&QBTu`D^O{A}u7oj?Dg_+D#U4^rl%#TFCs%bOnO9Z$2aw%5LHW`$A;M;Su`=jb zgA&ntdAT*hN z{slC9lbo)oJW_9}PG15rc^`6J{ru9#148x}ZV{lgYS4AG)fhp<=Udm{xIMjHmXpI% zV6$;o#3NFgqr@u5xa%^J&J2W9(wz<9aM_{zKwl5HDQZ02$BVDNIj#sm#Q83bTg;N6q`lJ1(df-ldf1PDz>Cv)W3{o642Vx; z1D`LSeg)3=>y;@Ji0xW}FM&xCviyFZd0{LF4ha!ao_SS)hTEFIb zIp4v5PmfxHoBVkdUQ2$ZWhKdoCb|HO*4EyU`W=_wH%jmGgVqk+D;=Josp2Lt Z1bU0?bgPlC&@7N2F4~&v~;TsE7?* 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 From cff16dc7a4b8f53cadee0a5b37d27cdd6b4ba514 Mon Sep 17 00:00:00 2001 From: Danu Date: Mon, 21 Oct 2019 16:31:24 +0100 Subject: [PATCH 10/30] remove: Wireframe assets --- wireframes/Monet Wallet.xd | Bin 169811 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 wireframes/Monet Wallet.xd diff --git a/wireframes/Monet Wallet.xd b/wireframes/Monet Wallet.xd deleted file mode 100644 index a09bf93de7081d226aa29bcee00da8e4ba14a427..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 169811 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 D6_kAn From ba132d7fdc99666730eece004ea3a0081fc9e0c6 Mon Sep 17 00:00:00 2001 From: Danu Date: Wed, 23 Oct 2019 13:16:43 +0100 Subject: [PATCH 11/30] update: Added main page to list all accounts and other reworks --- package.json | 7 +- src/app/App.tsx | 4 +- src/assets/loader.svg | 1 + src/assets/loader2.svg | 1 + src/components/Header.tsx | 120 ++- src/components/Loader.tsx | 24 + src/components/NewAccountModal.tsx | 129 +++ src/components/SelectAccountModal.tsx | 80 ++ src/components/SubHeader.tsx | 68 ++ src/components/Transfer.tsx | 59 +- src/containers/Account.tsx | 105 +++ src/containers/Accounts.tsx | 166 +++- src/containers/Settings.tsx | 58 +- src/index.css | 39 +- src/index.ts | 2 +- src/modules/accounts.ts | 121 ++- src/modules/config.ts | 6 +- src/selectors/index.ts | 8 + yarn.lock | 1136 ++++++++++--------------- 19 files changed, 1284 insertions(+), 850 deletions(-) create mode 100644 src/assets/loader.svg create mode 100644 src/assets/loader2.svg create mode 100644 src/components/Loader.tsx create mode 100644 src/components/NewAccountModal.tsx create mode 100644 src/components/SelectAccountModal.tsx create mode 100644 src/components/SubHeader.tsx create mode 100644 src/containers/Account.tsx diff --git a/package.json b/package.json index 3b5f8a0..b8fb5eb 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,9 @@ "evm-lite-datadir": "^1.3.7", "evm-lite-keystore": "^1.3.7", "evm-lite-utils": "^1.3.7", - "random-hash": "^4.0.1", - "react": "^16.10.1", - "react-bootstrap": "^1.0.0-beta.12", - "react-dom": "^16.10.1", + "react": "^16.10.2", + "react-bootstrap": "^1.0.0-beta.14", + "react-dom": "^16.10.2", "react-redux": "^7.1.1", "react-spring": "^8.0.27", "react-toastify": "^5.4.0", diff --git a/src/app/App.tsx b/src/app/App.tsx index 4e64731..b83475b 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -7,6 +7,7 @@ import { ToastContainer } from 'react-toastify'; import { listAccounts } from '../modules/accounts'; import { initConfig } from '../modules/config'; +import Account from '../containers/Account'; import Accounts from '../containers/Accounts'; import Settings from '../containers/Settings'; @@ -27,8 +28,9 @@ const App: React.FunctionComponent<{}> = () => { - + + \ No newline at end of file diff --git a/src/assets/loader2.svg b/src/assets/loader2.svg new file mode 100644 index 0000000..72d89e5 --- /dev/null +++ b/src/assets/loader2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/Header.tsx b/src/components/Header.tsx index 08a0736..bd34f62 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -2,7 +2,7 @@ import React, { useState } from 'react'; import styled from 'styled-components'; -import utils, { Currency } from 'evm-lite-utils'; +import { Currency } from 'evm-lite-utils'; import { useDispatch, useSelector } from 'react-redux'; import { NavLink } from 'react-router-dom'; @@ -10,38 +10,49 @@ import { NavLink } from 'react-router-dom'; import Button from 'react-bootstrap/Button'; import Col from 'react-bootstrap/Col'; import Container from 'react-bootstrap/Container'; -import Form from 'react-bootstrap/Form'; import Image from 'react-bootstrap/Image'; -import Modal from 'react-bootstrap/Modal'; import Nav from 'react-bootstrap/Nav'; import Navbar from 'react-bootstrap/Navbar'; import NavDropdown from 'react-bootstrap/NavDropdown'; import Row from 'react-bootstrap/Row'; -import { getSelectedAccount, selectAccount } from '../modules/accounts'; +import { getSelectedAccount } from '../modules/accounts'; import { MonikerEVMAccount } from '../monet'; -import { selectAccounts, selectedAccount } from '../selectors'; +import { + selectAccounts, + selectedAccount, + selectGetAccountLoading +} from '../selectors'; -import Logo from '../assets/monet_logo.png'; -// import Refresh from '../assets/refresh.png'; import Avatar from './Avatar'; +import NewAccountModal from './NewAccountModal'; +import SelectAccountModal from './SelectAccountModal'; + +import Logo from '../assets/monet_logo.png'; const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); const SDropdown = styled(NavDropdown)` border: 1px solid #eee !important; border-radius: 5px; - margin-right: 10px; + margin-right: 5px; + + a { + color: rgba(0, 0, 0, 0.6); + } `; const SRefresh = styled(Button)` /* padding: 10px 13px !important; */ /* padding-top: 7px !important; */ + margin-left: 5px; + margin-right: 10px !important; `; const SNav = styled(Nav)` a { + color: rgba(0, 0, 0, 0.6); border-radius: 5px; } `; @@ -51,12 +62,14 @@ type Props = {}; const Header: React.FunctionComponent = () => { const dispatch = useDispatch(); + const getLoading = useSelector(selectGetAccountLoading); + const accounts = useSelector(selectAccounts); const selected = useSelector(selectedAccount); - const [passphrase, setPassphrase] = useState(''); - const [show, setShow] = useState(false); + const [showNew, setShowNew] = useState(false); + const [clickedAccount, setClickedAccount] = useState({ address: '', balance: new Currency(0), @@ -68,8 +81,8 @@ const Header: React.FunctionComponent = () => { const handleClose = () => setShow(false); const handleShow = () => setShow(true); - const select = (moniker: string, pass: string) => - dispatch(selectAccount(moniker, pass)); + const handleCloseNew = () => setShowNew(false); + const handleShowNew = () => setShowNew(true); const refresh = () => dispatch(getSelectedAccount()); @@ -78,50 +91,14 @@ const Header: React.FunctionComponent = () => { handleShow(); }; - const handleSwitchAccount = async () => { - await select(clickedAccount.moniker, passphrase); - - handleClose(); - }; - return ( - - -

    @@ -215,7 +217,6 @@ const Settings: React.FC = props => {

    Advanced

    -
    diff --git a/src/index.css b/src/index.css index 9f1b9d6..398c352 100644 --- a/src/index.css +++ b/src/index.css @@ -8,12 +8,15 @@ * { transition: height 1s cubic-bezier(1, 0, 0, 1); + --blue: #253c99; --orange: #f16622; --green: #02a24b; --red: #ec1c24; --purple: #7f3b97; --yellow: #ffe014; + + --border: 1px solid rgba(0, 0, 0, 0.1); } body { @@ -59,7 +62,7 @@ code { .mono { font-family: 'Fira Code', monospace !important; - font-size: 18px; + font-size: 16px; } .btn { diff --git a/src/index.ts b/src/index.ts index 1e432d8..3e0e070 100644 --- a/src/index.ts +++ b/src/index.ts @@ -23,8 +23,8 @@ function createWindow() { // createMenu(); - // main.loadURL(`file://${__dirname}/index.html`); - main.loadURL(`http://localhost:8081`); + main.loadURL(`file://${__dirname}/index.html`); + // main.loadURL(`http://localhost:8081`); main.on('closed', () => { main = null; diff --git a/src/modules/accounts.ts b/src/modules/accounts.ts index c1c7f71..5f3539e 100644 --- a/src/modules/accounts.ts +++ b/src/modules/accounts.ts @@ -1,4 +1,5 @@ import { Account, Monet } from 'evm-lite-core'; +import { AbstractKeystore } from 'evm-lite-keystore'; import { Currency } from 'evm-lite-utils'; import { toast } from 'react-toastify'; @@ -26,15 +27,6 @@ const TRANSFER_INIT = '@monet/accounts/TRANSFER/INIT'; const TRANSFER_SUCCESS = '@monet/accounts/TRANSFER/SUCCESS'; const TRANSFER_ERROR = '@monet/accounts/TRANSFER/ERROR'; -// Select an account as primary -const SELECT_ACCOUNT_SUCCESS = '@monet/accounts/SELECT/SUCCESS'; -const SELECT_ACCOUNT_ERROR = '@monet/accounts/SELECT/ERROR'; - -// For transferring tokens/coins from an account -const GET_SELECTED_INIT = '@monet/accounts/GET/SELECTED/INIT'; -const GET_SELECTED_SUCCESS = '@monet/accounts/GET/SELECTED/SUCCESS'; -const GET_SELECTED_ERROR = '@monet/accounts/GET/SELECTED/ERROR'; - // Accounts state structure export type AccountsState = { // Entire list of accounts @@ -74,47 +66,6 @@ export default function reducer( action: BaseAction = {} as BaseAction ): Readonly { switch (action.type) { - case SELECT_ACCOUNT_SUCCESS: - return { - ...state, - selected: action.payload - }; - - case SELECT_ACCOUNT_ERROR: - return { - ...state, - error: action.payload - }; - - case GET_SELECTED_INIT: - return { - ...state, - loading: { - ...state.loading, - get: true - } - }; - - case GET_SELECTED_SUCCESS: - return { - ...state, - selected: action.payload, - loading: { - ...state.loading, - get: false - } - }; - - case GET_SELECTED_ERROR: - return { - ...state, - error: action.payload, - loading: { - ...state.loading, - get: false - } - }; - // List accounts case LIST_INIT: return { @@ -207,91 +158,6 @@ export default function reducer( } } -export function getSelectedAccount(): ThunkResult> { - return async (dispatch, getState) => { - const state = getState(); - const selected = { - ...state.accounts.selected! - }; - - dispatch({ - type: GET_SELECTED_INIT - }); - - await new Promise(resolve => setTimeout(resolve, 1000)); - - try { - const n = new Monet( - state.config.data.connection.host, - state.config.data.connection.port - ); - - const d = await n.getAccount(selected.address); - - selected.balance = new Currency(d.balance); - selected.nonce = d.nonce; - - dispatch({ - type: GET_SELECTED_SUCCESS, - payload: selected - }); - } catch (e) { - selected.balance = new Currency(0); - selected.nonce = 0; - - dispatch({ - type: GET_SELECTED_SUCCESS, - payload: selected - }); - - dispatch({ - type: GET_SELECTED_ERROR, - payload: e.toString() - }); - } - }; -} - -export function selectAccount( - moniker: string, - password: string -): ThunkResult> { - return async (dispatch, getState) => { - const { config } = getState(); - - const datadir = new MonetDataDir(config.directory); - const keyfile = await datadir.getKeyfile(moniker); - - try { - const account = MonetDataDir.decrypt( - keyfile, - password.trim().replace(/(\r\n|\n|\r)/gm, '') - ); - - const monikerAccount = new MonikerAccount({ - address: account.address, - privateKey: account.privateKey - }); - - monikerAccount.moniker = moniker; - - dispatch({ - type: SELECT_ACCOUNT_SUCCESS, - payload: monikerAccount - }); - - dispatch(getSelectedAccount()); - } catch (e) { - dispatch({ - type: SELECT_ACCOUNT_ERROR, - payload: e.toString() - }); - - toast.error('Invalid password!'); - } - }; -} - export function listAccounts( fetch: boolean = false ): ThunkResult> { @@ -346,6 +212,8 @@ export function listAccounts( } export function transfer( + moniker: string, + passphrase: string, to: string, value: string ): ThunkResult> { @@ -372,10 +240,12 @@ export function transfer( if (info) { try { + const datadir = new MonetDataDir(state.config.directory); + const keyfile = await datadir.getKeyfile(moniker); + const account = MonetDataDir.decrypt(keyfile, passphrase); + const receipt = await node.transfer( - Account.fromPrivateKey( - state.accounts.selected!.privateKey - ), + account, to, new Currency(value), 21000, @@ -387,7 +257,6 @@ export function transfer( payload: receipt }); - await dispatch(getSelectedAccount()); toast.success('Transfer successful'); } catch (e) { error(e.toString()); @@ -400,6 +269,7 @@ export function transfer( } export function createAccount( + account: Account, moniker: string, password: string ): ThunkResult> { @@ -412,19 +282,19 @@ export function createAccount( try { const datadir = new MonetDataDir(config.directory); - const keyfile = await datadir.newKeyfile(moniker, password); + const keyfile = AbstractKeystore.encrypt(account, password); + + await datadir.importKeyfile(moniker, keyfile); - const account: MonikerEVMAccount = { - address: keyfile.address, - balance: new Currency(0), - nonce: 0, + const a: MonikerEVMAccount = { + ...account, bytecode: '', moniker }; dispatch({ type: CREATE_SUCCESS, - payload: account + payload: a }); toast.success( diff --git a/src/modules/config.ts b/src/modules/config.ts index c6db8e2..decf205 100644 --- a/src/modules/config.ts +++ b/src/modules/config.ts @@ -6,8 +6,6 @@ import { toast } from 'react-toastify'; import { BaseAction, ThunkResult } from '.'; import { MonetDataDir } from '../monet'; -import { getSelectedAccount } from './accounts'; - // Set configuration data directory const SET_DIRECTORY_SUCCESS = '@monet/configuration/DATADIRECTORY/SUCCESS'; const SET_DIRECTORY_ERROR = '@monet/configuration/DATADIRECTORY/ERROR'; @@ -211,11 +209,6 @@ export function save( payload: newConfig }); - if (state.accounts.selected) { - dispatch(getSelectedAccount()); - } - - toast.success(`Configuration saved.`); return newConfig; } catch (error) { dispatch({ diff --git a/src/utils.ts b/src/utils.ts new file mode 100644 index 0000000..650a034 --- /dev/null +++ b/src/utils.ts @@ -0,0 +1,18 @@ +import { Currency } from 'evm-lite-utils'; + +export const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1); + +export const parseBalance = (balance: Currency) => { + const b = balance.format('T'); + const l = b.split('.'); + + if (l.length !== 2) { + return l.join('.'); + } + + if (l[1]) { + l[1] = l[1].slice(0, 4); + } + + return l.join('.') + 'T'; +}; From 6254b1ad2f4825fd2cb9390bfbc140d6db4dedf4 Mon Sep 17 00:00:00 2001 From: Danu Date: Thu, 14 Nov 2019 14:34:17 +0000 Subject: [PATCH 18/30] update: Better transfer component and styling/spacing --- package.json | 2 ++ src/app/App.tsx | 3 +++ src/components/Avatar.tsx | 2 +- src/components/Transfer.tsx | 36 ++++++++++++++++--------------- src/containers/Account.tsx | 42 ++++++++++++++++++++++++------------- src/containers/Accounts.tsx | 35 +++++++++++++++++++++++-------- src/index.ts | 4 ++-- src/modules/accounts.ts | 14 +------------ src/selectors/index.ts | 3 --- src/utils.ts | 4 ++++ yarn.lock | 19 +++++++++++++++-- 11 files changed, 102 insertions(+), 62 deletions(-) diff --git a/package.json b/package.json index 130c64e..3546017 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "@fortawesome/fontawesome-svg-core": "^1.2.25", "@fortawesome/free-solid-svg-icons": "^5.11.2", "@fortawesome/react-fontawesome": "^0.1.7", + "@types/react-tooltip": "^3.11.0", "bootstrap": "^4.3.1", "evm-lite-client": "^1.3.7", "evm-lite-consensus": "^1.3.7", @@ -20,6 +21,7 @@ "react-reveal": "^1.2.2", "react-spring": "^8.0.27", "react-toastify": "^5.4.0", + "react-tooltip": "^3.11.1", "redux": "^4.0.4", "redux-persist": "^6.0.0", "redux-thunk": "^2.3.0", diff --git a/src/app/App.tsx b/src/app/App.tsx index 52c9f38..cb1d35a 100644 --- a/src/app/App.tsx +++ b/src/app/App.tsx @@ -1,5 +1,7 @@ import React, { useEffect } from 'react'; +import ReactTooltip from 'react-tooltip'; + import { useDispatch } from 'react-redux'; import { HashRouter, Route } from 'react-router-dom'; import { ToastContainer } from 'react-toastify'; @@ -26,6 +28,7 @@ const App: React.FunctionComponent<{}> = () => { return ( + diff --git a/src/components/Avatar.tsx b/src/components/Avatar.tsx index 2bc0e41..d228a72 100644 --- a/src/components/Avatar.tsx +++ b/src/components/Avatar.tsx @@ -18,7 +18,7 @@ type Props = { const Avatar: React.FC = props => { return ( = props => { const dispatch = useDispatch(); + const error = useSelector(selectAccountError); const loading = useSelector(selectTransferLoading); const [success, setSuccess] = useState(''); @@ -54,6 +52,9 @@ const Transfer: React.FC = props => { const [value, setValue] = useState(''); const [passphrase, setPassphrase] = useState(''); + const allFieldsNotEmpty = + to.length > 0 && value.length > 0 && passphrase.length > 0; + const makeTransfer = async () => { if (isLetter(value.slice(-1))) { await dispatch( @@ -110,14 +111,7 @@ const Transfer: React.FC = props => { - The amount will default to Tenom if no{' '} - - unit - {' '} - is provided. + Enter an amount in tenom @@ -141,9 +135,7 @@ const Transfer: React.FC = props => { - {to.length > 0 && - value.length > 0 && - passphrase.length > 0 ? ( + {allFieldsNotEmpty ? (
    Confirm

    @@ -202,6 +194,16 @@ const Transfer: React.FC = props => { : '0T'} + ) : error ? ( + +

    + {' '} +
    +
    {error}
    +
    ) : ( success.length > 0 && ( diff --git a/src/containers/Account.tsx b/src/containers/Account.tsx index 68baf9c..1f83741 100644 --- a/src/containers/Account.tsx +++ b/src/containers/Account.tsx @@ -1,10 +1,11 @@ import React, { useEffect, useState } from 'react'; import { Currency } from 'evm-lite-utils'; +import ReactTooltip from 'react-tooltip'; import styled from 'styled-components'; -import { faCheck, faCircleNotch } from '@fortawesome/free-solid-svg-icons'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +// import { faCircleNotch } from '@fortawesome/free-solid-svg-icons'; +// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { Monet } from 'evm-lite-core'; import { useSelector } from 'react-redux'; import { RouteComponentProps } from 'react-router-dom'; @@ -20,19 +21,20 @@ import Loader from '../components/Loader'; import Transfer from '../components/Transfer'; import { MonikerEVMAccount } from 'src/monet'; -import { - selectAccounts, - selectConfig, - selectListAccountLoading -} from '../selectors'; +import { selectAccounts, selectConfig } from '../selectors'; import { capitalize, parseBalance } from '../utils'; const SStatistic = styled.div` /* background: #fff; */ /* box-shadow: 2px 0px 40px rgba(0, 0, 0, 0.05); */ width: 100%; + font-weight: 600 !important; border-bottom: var(--border); + h3 { + font-size: 35px; + } + .col { padding: 20px 0; border-right: var(--border); @@ -56,9 +58,9 @@ type Props = { const Account: React.FC> = props => { const accounts = useSelector(selectAccounts); const config = useSelector(selectConfig); - const loading = useSelector(selectListAccountLoading); const moniker = props.match.params.moniker; + const [loading, setLoading] = useState(false); const [account, setAccount] = useState({ moniker: '', balance: new Currency(0), @@ -68,6 +70,8 @@ const Account: React.FC> = props => { }); const fetchAccount = async (a: MonikerEVMAccount) => { + setLoading(true); + const node = new Monet(config.connection.host, config.connection.port); const res = await node.getAccount(a.address); @@ -75,6 +79,8 @@ const Account: React.FC> = props => { ...res, moniker: a.moniker }); + + setTimeout(() => setLoading(false), 500); }; useEffect(() => { @@ -86,6 +92,8 @@ const Account: React.FC> = props => { } else { props.history.push('/'); } + + ReactTooltip.hide(); }, []); return ( @@ -95,17 +103,21 @@ const Account: React.FC> = props => { title={`${capitalize(account.moniker)}`} > {' '} -

    1~Y!Pben$S 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 %!dT zST8KFMI8NbzT=B1Q>h`_t>#t0q98>x*4!87KO{sBM27xNr= zq9!H88daZ+?eWu6$!0cuI*4_&fBrDD7`jHA3j)dDnXB^?gc@4eUh3ydygW55Z)zp{ zo>L*f^xOE5K59Q?dvx%_+dG!p-{BY4<_jJ+kHc7|g~;AsJRK=I(>DQP*rl#F3Abgh zZ`B_iL^av6{t|xCnf_dXt*K_ZD;}><7k`P{M9KWMzCfGhTmA|z{qNLD!tczsdw+~#==9viH(FVcr81FlPt{AmN{|9;TL{^-3H5AcU%Eeqc;DpDjY=euH2XY!nHLLW7+MHZWGp$c zv3zGzjS>Rm5m{V069RnDnquoyqw_=6qc}Eam)O4jreGSKkei~SG{Ao6yKr$X$(Csz8-YaXIYBm7C`@k{x57>%vyT9NhuItX2B6QAv{u!)Kk=pD(wN90Z%m z%+^?r@$r*r`3Pl*jzDi*UAGhR#HptUrd+0H%`SOUb5xGqk*8uy*=)qZsv?@bEZv_4 zQ{aRUHXYcV?mgf=ChV`v()utwi{|URL$7JVf#78=ARrKMJJ5{%!0IWt#L%k8`s>jL zyts%~hN-+%^aE>F!+r>}sIa}jPbks9Ub6lU;q=0Ki13EwwIs4N33`Ut`p+KSs-)%5 z%s#D|y?0CL2Sl^wON;_({y@(=>;ChMs^H^NY!fpeUJW5BbPP`SVl0r_cFC zUVWj`^&2BA`aIcg6&A* z5tpL$2d|w2bSW{J_-SR)>|S>Wvl%nS`AQ4e_Nf}9tNGK3+qUq_5{2*v)sZx0z9cG|sV~(igrKn@CLN@Z~cAZ8AcO;;`Igs^%(Y%EfrpSDI z6+*Hf{jZpLf_+V=7w(T5y=Pl5_rsCde<#d|?@{bMggj*P9rv~2$I(HXCz)q-je|Wb z{vt>kxh8t#C!>e|F@`m!Dx@l~D#j^cOl*t%NrdQI$Tu3Q2yBss$VXz!8JHPd8G0F= z8AJmFrBB9#w#33nvLiE>{z0zTkj93tDO1H)SR5?if?q_WRk&5gs5DH_=&N)^4|gI1`>FlRz+)3SMmk!b ztPI-h?F_=~>9qQk!SyFcPhsr!5e*4iGCX39A|C0TeT4a)gE$*>Lxug&f%<|=h43_^ z;@1B7BIPvYOh?|`G_7QAp;^A<{N7RR6zy~m(Odr;PsFBQO(Z=jzdpzQw(u!K4aXGo zf8syy&)@W^3F=RQS&R3oDf+j;!&llLDjB31U?E?G!-P50HPXe?cSG1iEqYAKhjs|R?t^$yWz3g zABcbcEdNp-p=$n<)ui93z5H=WSA~X|^HAw%kPeRiyAm}s`>qYg=#Rlo9Y%^}(j^y# z-G%7|Q6uVw90h35*U)cJap=j!R7K`QDYOhaI#D@(GO0Q)RT^(J`uQ}Nt2qfuU#V?5 zYjHdAyZ_DbJWYUMKx-Iz7-#GAR@7DwX}j#t*{ag^(#nZ}J?5*Nt5Q8N8nU>SxFr&y zokGe(!>x)7HSHC)k99(3U#c#5mwM2(Oi7xFDrmK#u^IIyy zFV}XqlXe@XuPXymTLr`A!O&&>?{3->`CFyJ{OApri9u2SjB`8b{ z$KJ>2_lvy^=j#`46g|mK)NwBpU)6uS;0uum;mops&Tg`h!4$dkccN8XFMg5tHNAz@ z)U;FUnd&}|G`VzGvIfJsj6xPD?w8E0M!9*E01phO+CV zF(ot;CzuSTzMn&SvSTyF2Gj<`)~VJx2GFwnWi(kTD4ICZITtS&TTPk=d!$+7lX$M% z9@pbt;h}v(kIjv(Wtcr&JhQ*@datDfRciF4QK5Gtef+El=OhS8C|@YN^g)@j5l;_# zmulo7&6AhPftPPJ+J)Q8rgEletBVg84jfi6m$O%PX-RPPU%vi^FMgPjZK&4sK53lF zHY%#K#_+sXjU`{3h;}xW7kdz!)=$`~$(?UK<4WGSkuoPIYpr|h`#4$97`?n+gc zD*LLOm|#2HcE8%Y8hTi;N}J^9!EJOig3{()fC9yU;zrYMsbW_fkLqqL)HUrA`lW5wV34u#Arnx!=^-5E?$W~yd1BMllXdeh^1 z`-Lm?RqF>U5#6Ec?<*B7oKHiS z;^WoH;LO8pLyAx`3z~@&E0>Ow6U*`0k=+lIa@C7X((64%n&`FC!l?R~)6r9rT}zH%+x<0au;wT+?(rq0jlqW^eh0@}HtByC}!wtBNtR#L>v&*}AXR>6=-5D~syq@T6<` zqt3Z)A;*V~)H@rqg*8U*#XHKY+NTcZc7)Z$4!3`N{-VKaQKn_wAy+32*;{X}b%x3E zMUKO{h>3SX*XoZhhh|-p+L9ihMBVD_iEKl%vw5!Y4p#kcsIIwsmwNq^=v{O!bXPm~ z=_gSa(01ynotVyQ7DCtKH7&<2CucJoTo_p|xz^o|(N?hviPL#z@Tgzmf7@SnJyt^S z!R+oqojaGVk`aC2X^p-^oMqbMY|6)I1Yz>J{To-7qUMTV?8`Fjkm&N-)9okQdvA3+ zCuQhxBtOE&GSfhLTHDFN&{^8=7g+P%eSH`h2%?1ut`S(6m=^f>7e5J6T`)Ws%NSQB zqMpu=&&5B*(PVf=hm_pjh+s}5CTjPkpKM~X|TO}MS%C+Ise)|_~ws*2L5^u-cBh<|MBZbK`9UZ zV;`jke22gX5fBptTZo>Gfq{jsv87%2tBP810NqMd)fNHa<-5B#qL}>KJ<$G`iGqrq zij*X~o+Xq{N8eJ{fX)eOb=M98rxQEag&NrDkT^ljEo|AHxJdu`1v}WkJ4{bX^3PA~ z%(zHZq-041ENu)(m_Qu=K+64ygoK3CM&FQKUQqbor-Q$^NR936tk~)49UUF%92w{= zZH(wYvazwzfA~cI=@TvZ1+A^Kg`JKQt%WVwzZ&_Eb_5M<^=wS6>`W{zNbcIz(Y3U< z<02)!yU>5W{&k-QPA30#B@5escMEio{_Y$4k8~gC|FdmyD(Br%c3BfA19KHY6DY75 zxCZwpW;RyNe@^)Sef3|L{MV_9wgxr=mQZk}9ru4({og15_b>myC;oFy)&IKYM@DAm z|9;K?_SL^n<)pvs`+u{=zYP7)QDABAN1XKkIcnUGEG4Whz(Bq>5tLB?TQJS;UP#m6 zgYsWnu#cn`@No`eh=9P0ASTGC;Dop}?VJ!ceA~Kzy2bG0_n6t!M?$HJ@r8mI-`+}; zKcsa~{l;Yw9Fdsu{>>X`PC-;@u(`pkBWl^~A;;%c{ddVp_Zp{8Zd}if{ zSefK_ilgg#-@(OG0~5qwYX(~;EX6noeH|=kdNACB9w@+T-EZOjUvC4fp8xIA)z#Az zl4XQ=p#0#x@93(5v6R}xvD#gIfo;EgtYh~u<8DE(>qNaGyKfu*IADh8#4sz83(GPp zzFJ52lB5L|`JZ?ZQM0>&sYlwmb_I5*=MH&-=!k1otpTRUPVnEe`wsA@%DX92-$0c} z2&Tv*8y=)sbuiI@b2(M^9RFYVky?zuEiJ&4oC^I9CW<bGv{|uVJbFzl$ zm;(Qb_?7Ny+g~IiB2vn@z|rK~`pR#T#{3=h-wsFJJ^T=S}$H=M#16mtLy8;Uq(F%Y|E>wM($UMnZaKkDhmqwN+)ry zBTF_lHQ^8vLiy9Ys8xQZh<~R{)ol*S)o-6v%n*Hsf`-=FG@`kDUl+zZ$BzCKyI%Sy zUWPgtQT;cus7NMnBZ?}M;86mOJ5#wR7%$i0v+jeyK=vC$RO8gCLP6NWT&Gjp3Xduj z`Juc+t*z>ah^h&5Ihf%SP5%7bGAd)vFR()$kkTtJatb+XV8{4_w@+ z^$B3D2T~+i@uyb~P@>(_IUykB-YvQcAqFK6;08uup9qjG$~|d&)<ZSGdSW=#t&dkNuaI?WIsf(M--J{Fh zMh--Ib;YBSRw78cFnz3e`nyE&Oa(ltXG|>jT~HbTCmkU@p3wqu@aXw-X%f$0iVw%k zGbT}mpcQ??`O2H|mJR*i-US=vyGGL}_aF-r52S~4=hZnMwsmecil-`nT-9d^4GbLl zN+wcaKK|*&t7|E<(IR{5P^AJDu?o}SPs0+s*3_}&`3(4P?&&K?B7DJOdTUjs|7guQ z_3oq$(O=u%X_ekNn1<5HH<>Sn9zT98ABxYE0G$iQrQbmohA=MX*Nvkp!J(5Y=8im; zGn|P$9@1DmS3k9!Qj=b27)V^?BWJSRbHsR&fQvw9J+t}>?jxA@>t^1C?)_1*w~ zf73s{`*DmW-$=>G6w3^0nJi~Cz&v9d7KoH?3GnkX*goO0%Z*X8>|4h9LlVR5@$g*9LtDDdFrRmggovVU_Qu~8FtgFyD|1Z>1uBZz*^rdHZp4oSuo?G}bSH9%4Cg5_=yVo!#Ix+;_{SeD|M>B$P#vyRs8;c5vTsx=o*DY0 zett1L;K%lgk=fW!9cuN;gu1%A=g^p`NRhDDAK#2N#PN7Em=42~2-)qd^5S4)afPq% z8%`d+eFGdI`fIwt6iRI*Gsi44VLW#|7C?@B~8UF$#LXst?d91$jz?KtXGWc@{|hm zcBWk@LHtsl#N58G1Ne03sU*wCMn5Qer;U2H&^{!I;GOeF6(S=gm2@hNU+IcnRJb&s zZ4mJOt+5%93&}Q~il#bfd>2nDEke2F^g~yZ95L?i{QP>Vrv~Cd=T7!sqS5iiHs){& zU(?$i(VNV0Zu}($S}>!Hq$n%H(F-o#-5RRh8~srOhZ<{IT?{Kl7AlSlA$ZC=N9slJ z5}V6*rMzsqZaS`>&j;0Xx+c`y+nWx*r^2n=O?rw=Q_I<{!exf%0R12`K=}{tD*X-{ zb4w=W3u;=8L#5`|fkQMx8@W17L+C+CY_`Gz0qzB$XY6j3ro$awOa_V&dLo|Wdz;W7 zm@uRyY}D)}xW}0H*Q60_$Xh#`EN>}I;oi3gohJB<#t~)jTw22tztd|sn8|a)j&d~U zVh)zt$z*zO|D^2m^-pn6u$&U(6hJg8b&cf%3R!C$N0|M_Qr7l!kon{$8{NXTXSr9^ z!hmx!`{j9~R%MmSZnu_#t6gwAt8_X#fOmQilHp%~TICMLI+#EVbOE6D`zrmktsIFN z%UQrX4aDDJb<6t9xw(Xkh2Zv%ScX-m)MB*?aYBxUMPybE$DM)zVs{lH@*Q@!3p=-x zQ#0q~gZ>-m+q}8M=E&jOnc~Xz75wIelr;&IWJo>i7@L3~U)$qa5zKH~q}&InkB90{ zXW|QP=q&6Gmc;6hwvtLu9LMmgy}17~R`>(E+~@>48}E!Oc5O8DZfQaISK5 zHE2Shw4E5S*5KyS?XV?aznbXSj73dK%8&8#y{xF{myT%KO<(Rsdh&xT(ASHrL$RJH zfJmspqFEu5No2Q|cOUj%PUh)kLJ?}hN>u)P^`he|SvDZ4?7-?JWV89}EWOwwH3YYu z6%;;fgfMH=SWL5TPr_wnIQM<8uC5m7Z;nS%D=elbx=K<2vVHs*B>e>U>=hzN4h{%K z#Q}ttXV(xw@LGDPF`5FH-g5uPcm-mSyF*?&-4(z8Ru@_h{pIMasUD z7XCxlEN5dVH@)$8X33l$07W?ZiZg&a<0Zvf^}@-n2Z2OxNBzj7=l8~{&UYQ3sgUXE z0v#6#WPV6u#fGS!aae;QwC%8$$l*A0u-wUHy&yR4IC~uvqBoGyTdv#u=z71EI8Pm3 z6vtwj`jr?=*;PwlQ`$3$bu+oNp%Bq--5@riOy!^^XIxz zn4GU3`|X~{d%YL3o4a~4eWF5CVLB+U*Ag-U;NS7D2Ut0-=LcCfYn|v9CB#ZaSCHbm zgCHX3rDwpvz2hr4--HwHi$>e*?#R^XZ`#AY=s{XIxS`K@NuGIaKF6*=9|B-G$7~eT z(hlv1OY}sXVKDLor}eGzGJI~=sx0ZmG<+GJ^c?M&+?I3M?Vunf2YMNU!@WLsdP~~y zAh|9n7PEoxxk34F@ke!BWf{YZ9X!f3y_#)0208Xuo2M6p9H@?FBdIkGnVVmSN-|QK z(gZhvr6x`M1R@%}(6LQOs!h)$)Y{S}ku;IsXgBHh=Hg`1*|aYuRjtxI*L=LRnTzyy ze&_OlC*p&nVP%Hn-)O{f+w1u)mPW}bZ;0>B0!7`$+;zq*^dzB}v%X)pT@p zdcsy>%{SVUcI?rEgoTASx>;teDg%?5wSO=jywM?fChf}) zE1bvFbj0-9h3uuWnVmE9=2XcE&LhRQX$&XN$b>saM_Jn6*xZ}nSiIvm&dd_N;TaC4 zti>^zNxFB)WJ<({e{1ze@K7xmUGBE%1=)pIB^PY#$4HT8K6MmL=j0?ud!>eCBND(? zg8(R}JwU_S=t~t~HyoKZyeZXhPrEul%;)vGqJAYW3p}`DH?U`sR=rv% zLF1Ay&$h!sOg=e23#Pi)kcB|w*)@0G^SNxH)uv%KnI}R&4tWBSMz3t=VdUzbMD6$~ zK3M~6;e2ezdz;;gi`A>xpI?sN^slj}h4(CR(1&*_(1p5;G#8hkzFCv?yl9x#bewgA z_ayTaSC=*R7l<8xr%B7PIa^gyIbwryHK=8ig>8mSVNv$61Vry9=A&7_N^vLwi`KqsAQPo#P5Dku zen=!KF}IzsQqOqWl$KxD%R@Q#S2Yq8f3T>sJ+yE-wEh5^b=R)sa>&q6IB7s?JZMcj zJPQAI+!%*Sp0Q--MZ)D~apO>pJxzAr+FHM!Xc0x<{Db?Y^AYDDAR9I?HOAo?{Y_a5 ziDgJM4X^y59r*m6!q3lb24d#c4LCG6vaz2GzB8FcBX4h2MA0a(gT7N6{_&}G*#0(+ zS!*%9%5;|g8-3#7&EiAs_X?D%ktSxPe%oC#hCJqPdKIvOCP_Cn^AKVu^x` z{C55IvuCNP0;rv~2dfhyuyD*m=!9boFjTNY0tS3 zu~V$60iCF<)-~mN|6Y;{W;Y6)>2U>~i;Z`=G6&kkeY5fmVlb`NjS2^JGw^6BO&wi} zRC2$S8Jqz}nDBZy#p{70W#C>it(Mcg(g7e2h6_~7j(Qt!*M1*ht(Uastz9?l<{O14 zmCpZCG!)r#K3rKZ(#K|#3}#x6rFua^3A1+}eMfo6Tx|}@P#ABGS;MaOTNg$2JyZc= z%blt|{F_{6dFKZ9wTb zlT)F|)Utx}wfUd7*NoN`x@mfLOIKRc>OlI0*pES6dfMec$kC|nxZ&I{P=SQI$^VJs&DA-5 zrvqShyJHzf6>zULnE&JYbs`(R|%&bHVY>{KO*El>|&_7+^J;( zD}g@#x@OC#YVHKY*27q68FZS{F zrPp{`{TD#cN)1cLaIc@H9=P+!T>c@`cc&R9F=BS^`2Mnf?E{`%Asca#YU=9nCst7j z%W6fbfN>ic26Rc&EJR19Z@ty44j-AJUz+9$uH>?KFg+<4i{vi5jl}?Uzr5s zRzgRmyR|G09USNgJ(4j)-Pzn~{N1lg#tAR0&kpOvW|17~p(<5{RFbg?i}L}*18C&M zD&@xgON_lgp<63Ex%k+crTQh1n$fI^+Spq)lAW;zw^{)8vY?Zdxq^Yusb%NL0lZb$ zBA3OhHqYI`xcH68#k9b!5rIl6C3F`)Jh5? z1*#SL`?{-4d=I#*GJn-(QKr-OjO{0ep*x&}0T%UdV6w?pRS9{d<6d5iMKJe7S{O5@ zIZa;+A+s;%ALK~f*j*9rvS1kS@e6bYRig@+K@-|_fiHLzZ*Q)d9Cui1u1_Wxe{Xqk z^`!~f;!rDyo=!V9I_%D5ViMd8G!WkAsh^l%aJ}arF1^TC@YKHI!fhxS7K};298Ar5 z#f5{NVgiqnUrlXF2ui@Mlqfu{BsCp9nOtv_AcRMj?%KCfn_WdA&eP*!n847)6Z zD>mK)-w_1{0sUplGKxhCrk_VZ_akLC$|FK1CR{tLO#cbhl916Gfb-WF-)@xx!c3FF(=!TyGMA>ZOYuQ z=0&mxpg}|nSuEM6vPU3R^)PSdD;JLpWOhDBCWb~y*V4KH6r5mJDRuS)k5lC~3@=lB z9I5=o)i(|qtz$Bb^6O#&dTJPlgK#gh!Emvm-i7!B)Y$J%!-8sAGr4|Q8vAWYk>6>V z;b8%U3hQ-P9fM^1rrG@;zp6p=f}$TbsH@8qjSSK&+KA)3I6Jdx4?(h}*(N((TyBf0 zb1_Gha`tjSvPyK!vWK-NT^Y^kNi_r2(^C;5Dt+Cg(qFHq?l-L+ClsF8r z)AtQZW2QMC8kFgLIeO_Z1Mgwp*LGu)C@Cpnw_OQQDpoacfYQyIzwlVvdlvedi9cN= zG`hIhGEL%+!kxBmC4_C{WDU>q@2yIlSybrYCu*?taVKsREzVVYIx>@)%I@S4!;fSMX)yPDzRk=$lG)v=MBPW9eSqw{CfkR4 zOfaAfpR$oi+g_A*SnHdiisUpISOu)K<&=rmy@|T7yfDllP>5Jt&ra??@wl-L9xfHy z%94)NJ&<_AC5Dpw}!|S&1sNlTwVFW-(K9b5_=47cE`nTZ{~xt4|-tby#Beql|8)E3?gjUM$7PN#C zP>e55RG2Xp+0#@6a^?>fsdV$$N>56CE{BaEM71waBx6tqTVRC`eTg(0VrH$4MqZT* z?&Tise)C4`Bv}pjG?rd_b%kr$p1Ssi{UV=nf@yOJzop;FUe>oK^EBrD$V(0+-qyx{^-oJdb+>_Wz=pUJ=ku8&~luX366nE>h zp?|1MS0;41^M%sQom~N?u3ll%{A2QDtGXPyAp72#$?ylnfrk*Op;{q{VW!5Vq@<*O z3=18fph}h*ToBu|+dI;N3=Kgt55GI!s8s3d*==3%LBx(^43682I1Z+EIUOc*nWz<0 zf7YCC6#=(J!S)@8#(h+RzFvP|BRLMbM)P(&I{3cE#e0cqTlGX#0}O*2~*F4SFJ%^#?32o>m#KERstXxz%LeGR~dBFACm*C+91(!hSNAOnto|16!% ziJ{ZH2$E)gf3aQXtajVYLS1fK+Yxt=r7C%I2)BJUp`Z8V<>8@Rxvo9?L?*5c^2TLa z^Ki~B0uG(VS&&<{p$`xMnDN3>4`z~;&9LZ|N?tp5bT&x@^lZxs+Wp}7woqiA-C}=c zE33+{k#{uIlvQdPO5-oM{ffn6Du-MOKVP+M#dN05+4M<#!+j~0fj~g1*pP&0LD)fkOCn);UFWwa>Ds@zs8dAck7#3pa(4pbZ zR+Bx_Jj4KHZ1GScE@42oNJW3W7MiLsi{U0<65llJm1pwM=6W?(Tt?1#5rZBq9E&(Z zFqf@Jhc$g9O)>18np7uw+)v>A_wQfhm5|st4x5rIy$2PmT}m&okCkTLzv-Ay77^*) z9qeI{qm<5y3Kjis%PEc(2NAGqG6G%l_;r?{07uKHmPuYh zfCP20CG#qlu<>89?Z?{1qy~?S=X)^}Y8{}UHn*DB;y~#?S?C5DIiGT zzB$tiCE(Gzxw(N=i$$I_e1i=F7!^h12shWKw5cPg>i@VUp9?y zCp7MkyM@BJo%WuB9D+jCHY_Y`q|~6Zi(X4P^0|kWW!-+(OIo!IOA3$Fh{AY9PG(^b zLri&}c`}78$yohk=X(4??MAI#$5#bgawv8!_6p;VT-N;j?G$ZZ)$7s0q3eGyA#M^++Q!))H$ujY6}*SgzTip(o8*)7W} z3ucrT$Pn0M6|N;RVI^_AnDTSu+6a&Js`n|G3XpqD!$3kaxF=s z`kHVU)Kr4lFP+G4(j7N^ao8KBY%X(Ofvr~v1;F`>g(jvwlw7Dn*>2~VkovNH3Hn^i z*@i%yqqT7XQ2mxF=g+}(ocKBOp{%x|kQ6rGpDjZ??Xp`BJ7}k%=OnzHnTesW)M7H3 z8e?OzT~P*zESy@YAV)D@DgVT_BJnh`@r?9_XeJ}kleY4#;XKUs`gpV*-?#AX1t=lC z!+RdO+2)Sx|AgS>>Bn~E+F%&`v?f$k`LE_@xS-O7`sR?A556+Bc)nfoUba3NP8q7mk8LLb=dM z<~R<=B2b_kN^RmW?N1Y$TJCH}ViH@U)2vw=)sBh(xi-;RxrlV%JhlZ#w3n}6E?wAc zIWJ1ux~g0&6%aLSwU^}CZJKJ~$EHciGu~;bsi}FgCEjUWBL|()bc#I*fw)tb8~Lhn z=fjc}#xoj#EexX=Hw(g;_^>t?&MnRuU?^az+5Kb$WN*sNk8l=t%Ph?)`%opePY$d_ z;1<)8N%;b<`%NRz3D(rV=r73E0`n9XL?#uH9k%IIXZh)>OS$8!B7wxI2T-|`LnxWQ)pd@{utPyqiF zynynF$aRm8kcoq%5d=1TD?iObDB>SS_J;HedgeaB8EkUueW%he4t`l_GR^**K|PLk zH9%Wd@nCPhiM&m%fBYKOPv7{qt>9hNS1cBV&tX&pW5D&jO*RSUuo$m9|3+OVHq8hU zTTJ2`F?lJ4a$`AK)jHO8=JiWm^9>ZC-H+;jfuJY_Xf?8b{rW{ya|ISVJ{Ro!VKC8i zd0D;IuuvJ#WFRKUS1RiBx}H?n8mT>+6F`rgRo=Q{XF7w9%U_q7)LYOg@t<TTUM(>^Aq}(MqMJgry z$65uuN;Cr_3c==s$>Dl@Xx=IvPI{XvtHw3R}2ff z9Bt)Nuh_SA;cZOkhof7s)J#G5S8pd#Y6|a4jbN^BwDmV_Oy$~M*g<_DEWVVwsSA0OZ`pc)rm$EPAcFDtG3|9_{XZP{qvmqe6-u(y{f7 zXSR^c6RT;AHpLMF@hc0|;7x!eN_v8w?GrQQ`C>Q^Yoi??#FYUgD0jbR@4nTEv*@Vg zdlxLqbNy!6*(ArJ@j7hD&Ut#meC7&H?&t!+GTUXYl`J5%>1vbNfnE5XvUe+OKyv58nSo@Y_dpGnH=EKB z4di9?Bl(VEtcMFX3*Kppc?w@?-y7!#xf=&zE4eHL2FGii*g82?;WL`2s9RJwn=A61 zeRJ3xDI8QgJnRrsG^CJD$l2k7v8spOR_HuX6r%rHyH8=>R(0!nBgQ?Zl$iL@4fYL6 z*I@i$+g{sgeqj)u`||9}IDpDERt~E+5|)P|L=dOVIyn#W%`If%$Y2Lhkgl+tl_uz- z*O*>4+t}(CGCc|@4#MeJID(&kuDWnb5=jm@Q*d{8Z{KECoE-o5*OJ*yRm!cB%JL<# zvyQSr1gE(bH%FoTRs5qrAPqYi$i(oL4hN?7jw=?5vhhU&+ zyWafiJ#ncy=;fj3j7puU)hHUm2&%N4)dG-zr0r|ELY39LKHvD~b)Z#cgbjU$YOyHy zDt4w)FZMKRYHj&M6p|yZ|9coBn*o^t$jIaJ7`|sW*PLI=_Y1m;mi$dwr zHo5+VoQ*{)=6z!m>OUN7UzyQy8(BDzEI=$uNM~kd;@AyJ%Mz>9A5%u5eogXDbLapP zZ@Kgst%0%%Qm)dj(E}TcA*(&GMj7Jqps&`gb8iF~|6bKypQvvPeO&*n zJH=I}<>7^bfxA&Ls#Uw-<9>atj6AUk)8rI;o8wlB=c6Xje!2u?#BfW+Eah9{;GNn*i0T8*<3US`@{?VLntEeqA>mrP z1H12W4Nud0J=zM{F)wpI|K?}Gb_1w5ZlpLkPuOxWCzRs2i*|g;tTc}%+?QquS(TVJ zLg>8A$xQD@vb67a#p=9@==Q2>?!Kwc&K3NH!+zHw?xo4~ck3b<0 zn8^+m`F0~*>%q;LQ5FX-+O$(V50-ioN18;BSF_uopF<#JDWda?(gs47^#m3HHsqjuIPh6LLgcm0nRdEdwcN_77?oz?{-(uhyV{! z9*|(L!N+@XEyO(5`rat!sK|MFd8wHqfyC8Ns=%dZ`m>kE&AGDX?562~Z=>dZJ4kN6 zQ%SO21Z|u9fRbyja5sMGY;MMrOD?Bu0FeeVO3ddt$%t}aVqb&O+b}4gN+q%@0&?5q zn-b8@;+0Xfd<3om8PAqvq=`HSt=hLz2?>*(Zbxpjh z_z-vjiaT~|N*1JfH$gf*7$U4)QxH%b#*ooG;0Dq(8J@$CN{eY&dqrm=C8+XU9PJbW z;g5EaSPkdyeCp67%pJ@<@~yLsyR3rUK1t@eKG4&}aW*7!8z&AcJPsWxI1eZ{arv>K z&|8Ssu@q6(I>T7}%&~$}NoYXzIKEZLa<6fpHOPaM z=BS=ZUA@j}KbZay@4i*f7Y~7~135Usn<@+BbBQ}Z_nab^E|Txj=q~-S9s_-5`=Ti9 zHTOb7v3zESU(CX6GLOeh?k5v?Krf&MZQTJ;aA7`RB>nX0&-T)ybyb^cl}pk{gO%hW4d2P%GvY0Jebw zz0CP=cH`8Y=GbyE9aFv6d&_2@+$lZu5{vDlLEy!QofJ?j<&ea*D~&^E ze7wD1dxNA`8yGY)JiOT3$9BU8NKD60bZCMBI+3b%*ctfoF`Y^G@5A$0(^N4+kK1cF zK8wl1R+#2hUy5D?4f#|PVN%ZssRXFVdV#$y*R@?6X!46h0D%)^J|fLw2Rb2EO) z(;Q{Q8wJC3?ib&_$HT}vulrN5(tzjjS07MFlm&2G&3B!_@GhZ;Z3ACUI~U-3RdOdc zTIr5k&o4IA{77kf$?ANN!5*g>4_z@IYWv!AeR37`L|yLF`}Z2jkBN(bvMsNffHq-! zWxMk5_0F5UmUzpxNy|pt@ZTCAf|5NhsG7E)CYkcdse9RiQa#Am>Hteq0OCN);PvG$ z&xVosLtH9(L68>}12SM+VL*e`BT4wEPKf8$UEDsoE4|e5Dh5BiasPI9EH7=Ao;%Ae z;E&?&y6c4#Osis(b?hqjVMCQko-4QYf-h>_r0}suJd?pB71zseQkk~r6ccd5$u19R zs`qNtQJu=WR}LC7oSIF!1#x5|4&X@uaZs~RSnWxadVVu<#tqEcN|c`l7FeD^r_yLW zzv-2a^L^Ezb4qvoqbb{z#RtGY;+y?Zbf|SypFi}&)sjt`s!p8C5t6o$wFB915A%r^ zpVvjoE?Rp}$T(oO@R^vlJL!){wLN0HCa7pXHa|FA?p$>+OHf5CH|)kAhMlOw@a~nY>6r#$-1@1W{ycJb8VjWWHwx+gN8mI5-G$k?iZM z_5F|k1&~)aAzwM$b0eN=>rcJ4g}2Q`kV*c|wqulL-!yGfT6it8Q94g5HX*K*fj|2& zM&8&s2Z+Sz)eY`2EFe5Rxv%ZgcB&RV)ceB;Ih2xJKTYM5s{zX^;Bh40SNEO4b0^cW z?6z3?GH5G1#4Z*4Ninh3E;=9}z;rkdN5;spsFH(Oo2sfBJdG7ar>O>_JUbxEcfjKj zXWVqBEe4-HZ;lj?f;_HJJBEI=U$6D3!1=@qqWQh49yzH{QypY-4)J_aNt~)UGzwPn z`xz~~=AStfebQaOqHYPXRT$tH!j%b2%sUk10=b*)2 zN>ZK*EZ<>=i$>-}i+MkZVA4wXpXPwVsq@LW$P2rXH^-)mg0?Zsir30$u^pMY@q64h zOFy|cXT%M9po0;|6vLM{Q`8a1jm{dJSwD?qxYb-VhA|8jjY9%PmTE)@XExsvFk@n1 z3<9!nC|kyII2R%U9uSfTB7+3FJ9+a~Sw(^aP`4`1|M8>WiMxN*OYp8R(-_Ml1Bxoq zn53D<&*VP{(lePZEqxn+z0W5$)?PnU|3~wNoE=CoPxFO3i=}1(MkjwYgw&~Out-rZXv+Zh^b#O_>|KaVuqnb>=wP8gNK@m$31rZSo z1OcUvbW}i^)PPbIL~7_ofq;PE2%<=lCcP(gLWiIrg7n^tg&um9{_f2DX3n?Pcg`!G zKi+?4xkiY2o_pWBUe~o(&#OZ1wfnWuyjx?bL42RS+l|5A$6}Trt|&!!08k!4@>C}W z9ph5mhot5Tk9N5*ZzmM$AyWgT@;(o~``T%=;a)m^s{BDg8m-^5`jdCv>V-q~RDFrd zRmW zyP)X7M^Av%%WOR@W!m=R?oy*s(|9`nmF2FM*vpI~9oc^;->@s|}NCcya!R-`li!1?M~k~zAp0!0t2?lD>ySue9Y zeYD-&!RlQ_jIpP7C9476bn}LPOpX%g)QgF+t(_@h7Ue3L#yc%sNz6kg_hdM8XHD4vlo>a{57z;NAj7#(dLup<5V3o}0=YTz}G_ z-4?$ba+qwBvLY<_aM2?~?I!~IA`HBlX*O!9-d!#T>)&0M0RVYBApU^E>m(Z_IOKYZ zGon!0KY~9B8*lfxIXP_jlH9CaWp7-+g=7UJZa*d0H#USyBVR;QbsAqb4rP$JQ`-pM zC|_*XHBi8EAUL)@$M7?WjHO`BmEa1b`n1xOGVdJi%Z-JI-R2J_%2>$Uze90!EZ&x z=QWGEZQa`v)m*x)nK`g9xp=+mVEs}z_lk9PxV(M(&L6IN{dZ-i3Z@BIS33cUjUD<2 zy4hFMDVwE;JFfeuDh6*Ikbcz;I9$8xn!ejEI1Nstih(@i=9liXbXJM`_gb?1Ab^YR zTrUT}o2zQ2DI`!#d~ZfCflD{{HdN^(AQUQXu>y;)dCjB=4W#9V6>i8!jy89vdZ0p; ze$8M+mgM#5mbZ-zkVX0m&^XNIn(4|E|Hk84oe)lKfmxm`OJufj^Es5DB&abdqcU~w zL!0$g^Eoap{2ivDr!v6RD;{g@_szv@lx4xN?vYoJzCyGGwb;>)$@Y|$x_a(NgV6G< zVk@VL)>E|#E57lLZNr$gC=v-tuiQD!aqO7N-C$U;$L@3n?B&bVlhJ>d`bRPFM5XZ2t&NLUsu=}UFB8Y z8ypX!b@LYor+VTtY{weXmd2aSS2f#L#?xP7Lw=lWS5GK!v;tt4*^b<-kmm z&%EMT>2}2|0-M_y$=}Z8G+-ke1gHs(gfa zvL*}qee2toDyE{B#xM!9UhW!U-5IJ1VFn4!>|I;jX;rtz+=uR8%GyWqX)9r9=A0S~ z`l7Tg44!PRq9b;C$&CgVN@uAKsl{0g^*y<8Q+!T1h4(ENs*K%_tW0#}Tf|AMR%!GZ zcW$Fbvkm$0e*k7l3vUuPKYtCgP(8v?pcK!+wPyhPG134*)RIh>HrTzT_kOqTJA;9u z9Orm5l+&5J*jKCx7NSlSWImLN}~4ceLMmZ7>t*){oX4 zee9ICW3Wj7m~lfg_u~iB$PWrU;ohs-#e7ynWtyGL{)5^d9&b_)+sfx2?EU;au)okM zCcWTHajOF)jnzLF>$y8C+{GQBQNKbIEJ`(r*PGuh0% zHrg<8jt1UK~!4WTq*<_ymAP2+SXDc?M;R$nUkPU)mF0L^A{C{r%tS zTwko$mejj0(~&eeV+OQZPn*66#+wBh4o`l>U~Pjc&ee^^NiZu(l^Bf9Ovb(KXLYzJ zbNx#A&XCKXIutnMMz2oVKNeGn6hLh&+#i9WfLIN!PTCT^f!BLaXk`9^@lbsFaGL&tUe3TfQ>ab4C@^?=D%zM|-tn%kVa_)rJ<%@l7RLg^In={?F z3xTd=oHD-uz`<1iUPm_&cbEe5z>wQ!hWXT+$N}xx2XQyQFg(y+(ls%5}mwVN{VK2C>LaO8uTox{GCDtP1UN?JGWT{5Kz;x39&vE|xF%23ly zFVoH7GTkc*%J`8>P+Msf00aS8*7{B%$TW(e8mxNHQPHqwefiax?hV(`&H_W@m6?7` zK(O@D+kUj1Pvq57 z?pW;2_=bKwO_L|QG#n{N{4%8!aly;!5|WXT*ak31d+@kO`FHhmKg%FT-zI!_0`RF- zT?}^&)Puo~S}SfdfBs?*lPOJzP`}I9--umi=a!=;2vU~;s(%u@;65gA66qd zY?syU+_V+rm<&!@T(iesfdi8yUfo8PMBu(N*V#(UI?X!WG93e#?tZC$J!fxUkgFui zJU}G;1%O9qLW}n3C@?neD%+3Ni7P7SrdV9-s3*E>SGq4$k59FyfJa?c0hiZD<OMMLy`eyOkGV)O*jg~R-9L-A9zO>k1-M`QH&ACAmo$*S8DemP4NJE>KZ3=Wp3E?I0!H3$Up) z9)!g@j>{vx!e6LkxkBZKU6=fqMqPgR3nEURJ}q7Y&7ugoR8EJnhBKI*_3>mgr2Dh) zHhboro(JJAs=yPqe}b6ASUo>^=EVnj7!twlqt^?_YPWBs+Ko4}D@B))YVRdOugZe+ zmtOQb?l@bDy0gqf)2O4^?g}JiVPaeJRX>q&^aZj_F507cE^C%!%rc>B`ActQ&Its~ zcPNQ-c7%${uze=>A$^^z&$j!$S)W{}!9^Uy%GZbPBDH5a4r;J^_rDDFR3c;VSIR%;-rugZdmk#&K!e$IC% zhl%;uQ(YMx;^GzR_kDILr0m$YK8UQ3A-SLK6mo7GF@N<{9$63{aaW@`i4ctjB2lkP z;8PapxI;eJ0kG!fuU@oiGH+&+-*XyS1bva=-J91wuLj~ljq3H7&Y(+d&Yh12U?N0+ zXdpXd{73ZDk=oQ&f(@R5t|PyWcJ;cVY{n>WKyBnUZ9r-GgUv5Iyx+&7XoxhR)} zlW|rlN835e@o_0`<2nE=rt73J0QqKmbx z)JKkV=q6dJL61dE#OH?HV+haUUBH@6hgxNq*=21%my|<=&6Z5wc``C2nWLlyv?eG@ zKYB{%9CHzTcl!9r(j0?1UFDoDx|~l#jAoyXlIM`qXpr4elT;oV+QnQ6Cr_N<(*=(klkL&w_j#nkfu$Z?(}lN^d8i%kE>5DC z!`JKp-Ki*$4T`d^q!KXiQV<>qxHa8l_$FT?<5a!FCUKKn3txMROUEPzBk<)Qtyr(~ z+N{xdjJrpgfeAkC`^1g$_vjxryX~2T4WzcA|ExoEe;w3(G{Mr$K{Gp*-W5IYN-UfP z9YP%@T3RiOz8xeEl?$`9T3BD*tI}I)ecRQW`#ngy5;=TVK}Uw1jD}~~)xH#1*=EM? zZJe*^Z0fnp7}YR2m1SgCQa`1(zi3Ea|Fk+ zaO1AQS^>!+w}>0-`0ORYE-(~NA$#9J?A{}P}|_; zr845Z><1n*io+=OgNuhl$|uDJ)@sF_~ln0%nllq%6FG>7xnz~oTBd#%5OpldNw zOKA~;(pXqsX;d#-c`ZDf4SHd9r}SNIghzwb()BAcGNAuRm~FVVM`Vn|c?}qcT%|cY z1%S;(0XY6jax)HAHip?x6}#KTy0%}ER-sy=*xwYSbk0C{I@^mgzeBZ4A*bsI8q{SR zstC0CS%i%?4SkG*@c8?R`#LC9)B(}mt)=OuX7R!h4Xxg$KYkn`As~J7Bh$8~;9gBb zHG{`xmhc=(v@9H4b?h@u=`+J+L@(rA-76+V;yh`J^Zv-vB?&MK=+q#P%E#%X5`^Q- zVwy#k@S^h{4oIHP1AJV;=B!K41~JPDBpC`o`ADiXWuSY0sbXgXM-nb0Dlf`za_JPc zkgOd-ULN!Z8$Q2bW`2Het=~$#|LM4{0iYx-PXC63glx^<Et4y{ASbJEiVjOMjyariuZyrb5B{T(d!S(e5FIOStHorQ??-XZl=8L0y_S=t6K$lAPg%P>bQ(6#LWg$ai@4uC7 zwN62tj^a1h(DiOLo*r_U%W>b`9PUb1WbC(ZS44N~IvutQ1^82XRoe?*a z254agS7KZ%Nkr91VJFMMmPK5z2jw|+O-XxWVoThC{jC-Od-gzgt^$_zIx1-Tjxt`B zFg?vjCPkMz0n#Z-&{#jCzUm4TD3UetDsmT(1a{>aD-qj`4Ye^Vol`!~=gffake~EU ztL~JxMb7z_UNEo;Glj`}6w2=Fqx8Trir${DqII}6;I3WRavAQ2vMqFbF&G!QMlX0YqxfcaMJP&`P#`UN6bj zJQOT1u~37h_LY8!m{mt9Q^<@rgd0M7p060O91cL8D-LuwQ+i&V;kAHZD!I}!@dLU& z59P1sJO?Gkv`jKndTrw<2a8UWCZOy!@Zh5;KPsbG9XQ@fcSEOrui1?++*P&Y#*VgZ{j-97L$3j*K0LlZcF+?f_AV*f)th_u=CK`MnDU%DgTyOr zT7y~4+HWK-fji20uIYi^tBi|DE__Dhw0w+74M^J<#GfQP^oXRky8ngLo}EoFNvb%_ z8|Si3E`{4%F(e*0G4Y6qVDO2ynxOX>-)nAS(ntC#tHc=e9F_0mlLnyV_~?X5R|B*N z$PCWxu|L0$ED409wamUv>4{6WPPuLOIFmDI#TFF2i#54baY#gbkDnva4j1ecwc=H0VWUXW2tFraq%V;Wk)Ucj9@=W z`YO-$x5!KHD)a3>p?eJCcYEI3$ydwLTrxb(OvSg_vt z)6UVp@e2}HCHMM;{u_Ts+AM&c(0sOcC$mU$GF#f`S>ZCj5`i2PN}wa6G5cO}?b&96 zNwRNgj~Hv5seA=qcfT!%5I~;F)~CEE0%GxdoLB9FUP_%d%fCLw<06?lLNWd}^WH7y zB3R7rZ2w335Lmw){$hE)MFKtpef~-GUb{E@Je1*4*gj?`J&R3M@_q{OP(3y|`7;QA ztNXd_^-&H5lP)loGGi+eUPwHBkgjB`2UHjW$3&F;_G%-~NF|9_Ej$xn(9wD@5E2#i zqTKSHt>Ygn!jc||j$mQ|LW6rei~sywfFkMHA>62uV$bjWu5uFC6>izvFmJC6kbnHP zhXwp*9#ziSyu`8T-MGXmo;_Rme_m0n9EF*g*=c8joW8IC<3Er8@5lc0BL9cKs71nFjr800 zd;R%;e-5ieN*jFRJJ)h^s(gQ!f)FWIa%XW zop0CW2^sMF|31my{^WrKm!xIHeL8Z_m-e5_eUY@9LEU%n9^*fkOCkhJA|sdnRio5D z*LQE<75b2eIyyQ|gNso8f9fJgyx|jl?pq2`E?{@V|UgslQ|D*ad0*-}Okb zzK|1WwE9&i?-fk{?->=7hN%CWGo>RrqG)PGm-iCW8ht`PsZS6I?6j*#*P z7F@rZcLb=zZ>q9y>=l>u?;Ap0R8~`~0*AEhoRjw3rhk`oXI}a>{q`?9kop{|DtIA1 zWC6^%_Ui5b{<&I3cvwrl<-IaN|Gj@$X|O^ca1cvoIdQ-JonQYQRL6dvF8S@7b4Z=E zGzR(PZO`rBd{~L|B(cWz)P>W(`-`#EqM^&B9iM{IR|5v0TW$ehO zaXovVq5S9g&uhYy7W=mDwU77DwKhSTAoV{Ih ziIXS7c#M1%!>+Lyy@C0GrSNQ#VV%h3hErGXJxGvwb2p*KBCjzW=4_@*;eRLd5@~R~ z-pRdNx$yN6^hat5o3q00l1tD?_uK?LaRF&O0l;4E-7LjOfr8~W`AEwZtDNdnc3mC# z%SQIV%S@SBmZW5Q#3W>YC$jm-uV0Tx8`akKoO>b5EuTaYNtk-hRMCnngx5Upb>CTH z?lhFJ$25w>1LzscNr5rPCzhf!!RXW>8~eG6$s2d^|ABt7l{Z368@ zBT#EDTJ3gBvem#Zm!LzjI^<%t37`)iF@hT|tr-9D#AwHcWG(;hS z@5|$+_u-2HqwlnvG_=wA!B4|4Q{ShA=5FpUo4X#$u{q>YDTb+}g(058 z!&*6$kkbeUU4Rf9r^L9GWE77@%*N;5J&EAt5L6mF1mGjumlc9~t_#)gZO=EUUGKd^ zj@({Ld3#N;){?D8BVV#rhtS}*RysVY+n6J%cP1Ktkt_zY8a{(>ziUe5lB&K>!|Ps2 zbtMd|cM7*Xyt^F(2*<*EIQcTzggvRW+M%YDv^;DagPCrV=T;04HH{B&fE4Ir{V%KS zLlg}1%If1j&0?F=)`gz^Fva}>MC#7qr!@R3G?J|?V}G)~&IX-3-uG8GIVD?jgO;8j z_ke$?3ntPdNV~l+4GaU?hK;*=XXCefMunmTql!4Ni!zSDWRbB^nd{4qMe&vlFEGQBfo57@lf%N z#ZLHgWSYQ5ZNhIFX=^A-s>HpwZ;b zh&iJu6RRWHdWQFL&*eyq6NmdVbxXgN_oS&^(S{2&14xd78+K!1*bzW)^)LSfFn&MG zCsn&zl^>4ZyczxNC?fYLD9v0b{N+WGg*@kS)OSu?L2T;k7Fc+p(YyP}PYzLa-&W>h zK@7@WXaRAbNSNe)cMw$Py0mbxEoTJUNb+|FVwIG^m>jz9*NipC#CWdNi0`x_&d;6X#(Dd~2J}>6cy}TAaH-Ys3}C z83$L#BCR5P)%fjk%dvNFc*O(29uI0vf~%Kc7^?4iQvq;oIiTRyA^rO7a@=nAoURUFxuvSnR^nj3 z2`)fwY*Z-DQvun4K=*paw-QQr;kNdw$S{pI6@Y$6_c`~i1^jwaG|Y=SD$~X9e$6bM z&0T5|=0-2T1Rnf+K^W*#){iwsMds=N#bu+rBDujZ-V}-!^gxyq>Y&sMT4qZixGK6B zRi3D22-FLa8U%9AALji98N!j1moF%1#!i4WBh<qX#fC$r=Cl?YSxt=PJ(x`FV$U#FMqa9qqVn6yAWkU-%KcKLeo*F1KW_iSBXb#u-3?-~rZx z?4bzR?9Ton6eizScN~EV9|A2qQFIVP{HyXIO6RP*kphi;)8%q6h-NsQ20Ux^p{J(| znM_kD8h)-UOz7S& zPyN-CuC(m?Vu(bo7U}s1zeoYF_hJ!}Dp4G-qc^*YMWS%cDPgEIPaz>CEVU>6N1LX9 z2)2rSbv5N0XXFrNbN=Q{A0fSEugz6mZBNiWbM(e!Ow$2kS#Fu_jY6GQu_ieM)hmBS zb}gBfg1qLrM@NF2+4$&BiiLK;u}q(@k6nvdyk5^$Y9TpZn%`vbh_w=JaioxE5-^c9p+24#yMzqMNBa|>oKce z>KSzWNI@UwvjsZV$=%0RT9a|oT!0IiNKao|8BHVKo@h;&DISmJEw}kWf)zdH$iS=4 zD}8YZ(OBbWy3H213)el7LN8%ERLAzqdHd9BSUEA=Cp#TRVaN2eKrA5}b-%M4fgpti zG^~!ngG=E)M7y!!y@W{b+;59VmrN!*w#i!Xc;=D&&no6J%A=$;5~3jM{t-)uhyrNivZ?2$ zbEEzIH}k%O+sc>G)MJ?-=x#cwbYm3JE*4TUDUb4)yl(h8v3$2`d=_AI==@HNg3LI{mpS%4d_hrlNCYrbtDqJlL*G5zZLEOdKjPsQ94N3YY2C=* z-E)|`OquzSBQq{G)raRN{Fs+G`3hy&Tnxdu#C|ex(R!ub_$zEpIYQu7JtcI~*#bl| zJiQ9QK(ry9^J;$E?l1cbn~uOsfZQ5&*#Ka4KHj(!g?nQTkRB=J>8XHQN2w~W6Wmgw z93wCg4nD@aHf7C%a=!qia9X>+j*s4DjLD4H1;E@Z+QT1{GR`!#-wB` zZ0KtbX0eInVW6Iqj=Y(-cr+uJ!y5NidXq@F86-5$#Szus)L~2I`_5S#5;Cb$ICC`t zO%{TAR=GfJCS<&#tB{~lQhZSr>QtQ2!7pAGiphK>#ii&Sz;~o%OB|B9o)<`+i~)Zh z9-;2-(&25c0;}t}$8$KW$PW)W6FK|ccemSDN5Cr-@^{^14a+*e3?CTNHIBt)<__=f zteGzHHnK?_#rDiGdXEH`KY<*`bFI`fg^+yhCn+jDdaI7Vrmc3WR<}Fu#kq)uZN|(c zV7lL}_h4&x0N%w5T~F=puAjENbq?$=cr1FZxvX?*dYykAaDSRacl z_4ArE*x9)q^A-M8r(=EYuo}{H{;B=_WkO{-^(0sMa$7+i64&#Y(dz70G|ENt(}b8t z-8L4-wgGy_;bO{`EWY^(1zp~DtPFE3GyA1Uy7%?@+ePL|%J%vra^DLgtQsZEG?&(%U{rz?;|ML7Z=RYcksU0Iqek zca~TWG`!jRE>5H3qdEi02Nq4N+jR9_nNoPK=+!2%-z)C7EKL%*Eq;N~B3rVqOy|ln zYvO@VH~S!svZ7AFZdJ_HXg++jMtxd$CZ2iqW<+K%BfnWN8s92?Ml->4_0-HiS^#S) zo+-uTFL^VwE#r=sIJCqiuW&q@I;=^_bYd&zfVeKF%&!`K9>e6+G`>?hLrI}}W&mK_ zMJG|srA-89-Ra;eoet!02%lt+Ptd_i-2Fq#IJxE%r|?RL+Dw??>zCRVA?Fa~I~zpB z{Z|Vo2lBLUp!TyzF*g;?H1)0#rRtjDEhzboK1wL4r~Eouo=cmex~ zmh<(;yRTRha)oThzx##w|LHRO`I@-tV>96K9Jx8#is>o?xp^KTjvw1aYpBnZot&@g zB}2Yr5{`rtSgWqN6`&7?atJ4Uov!1^I@=^y+UaKUsK;cpe|YC{$+h#^Y7a$?^yATQ zL|5-@?)cU>rk6}%C2K`Dek!b?)RoViC^R#>?(V+4RiZ5Eef9^Jb1mNg8;__)uYlG9 zx%%0>DbIL%U3-;2x}zmpl3ylF)TF9Syj!jB^D!|uEe(ooOe8phX65FoOA#qJg@JF$ zE3EI#C$72XDhl*|f`stQ-GhbHFQ*Qd1RN-Xvu-50wBQw=lhsFkr>1E2`DIXA4Od<< zS{gsWap(qbz0vTp_%k-O(jPf`7A;q9-ami~ipMOLXEDn%U7LC!5|eCggqO2WqxJP6 z6+!7M6RoW86-r4ZiWiQj?G)k~>k;26T6u2~UR{T<5mR;9mFc|ZyKNz2zsTeH&UoDP zj28-Zg1Rly+r{?dlJ{5NGaV{9v2VmS*g_TMh`4wGNTFQ%TpLrD;Tsk)+z{xq&(y1~ z95^MYP~Okojz_MrADc8UhSa{CbN%3k>t@pVOfs~MV(|eZ$3+Zt$&G`eN;!GQZTg2! zk8KhT@Tq3;XtpLd7gN8Iij)?QhBDb+V|v?QJXUUjpmK+=n>wwPNn>an7L&c9@xvl< zSP)AthE#N1!FiaToNH|E4fch!%=Nn^x|S6-KR#CN1f>n+D9hv@%p z5lks_8IijZaxe?38pki?xoIr$c2b?Z>iYyJ?$B|mhmRNtB+b+P8D6Qp5{l~!J^ z2tQaoN@^_l|e<vKY(5S@&sz_q&TvW>v1 z2DG6WHndP@6B_A@UU79}LUvIPI5JIB?YBRe|7n6rgQA9&ttvxs60%S;xggvt%N}*k zJP;)|t-`&icfi?JWA#$KI5U)X)!F%uyhjF~Qd}_RNXiIEkIsX3%_>+;Br^RoKjsdm zDo;~YS$#9X7U*$K1%PD_a|=csT+MG$sAssqHYLpV+R}KKfbrtU;!DRQFLt!nd>ZT~ zd`3M-rI~D76J=y6jR7lrI5WT&7v)1dTJea{MOi(>c;%@Yl_hGl)0j0AnU!g8tf#ug3EFq0Qsc=Roaa1jEgI;g zY=?yW=`jII_!ibEUp?*>RGN*bK7Nun-JS0jxyiAgisy%8Q=2$8a;d&W@GDrxh+!pEw&r?@l&%5y=U<9!9Bgv!yUeK9jztmjf&$!2_!5pEzi-qi+Iqn{n-t| zB@cx8`{J_(0bku!;l7KPBG`S`>IRA2ur9&SGlXxsz-0^jW4QzfEwM!%q^P-ywtx%QQXX=Jf0M0qoWbNw?WM3BJ(Jq#KTd=-8Y3SWW$yTV8 zdZC|1hj^?;p)`8PHRN7?0x~#BIk#V($~voj)z-LMiFm_)$OTe7zClef>4G}(=i_CA z-)7|B`lk-ZN;}HTwN9kwew&?KN^3U7r&WH1q~lx^-GGxHzL-hwtrxO-^RuSzA0^z3 zXuQg?tGkflpkZmknTjer7ah@7`x1o|o$pL+tS!bQ6cyv^j4h*>gJe8`*rWtnH5m})cUa>T{=ka%{XVEZick8F+nR`?o2 z_SVtzew!-o*`q1%ZG9*A3G^)+W}KLzzF49-7wK_;vLtUt$$dlZSc5-T&wn~}{!MjH zDgqqX_OUA!k|ZfiQC|60C5s=?B|;Yc=t7$G!2`@Iopc5zLiK2Z?N=MkjtR5Nx}78D z)PlI1Y4CkQc8Yuppb+R+UmQelJk&Vz#9N-1e|sT8c^;ksic7X@clVH;EYkRXM)Bz+ zS*pwWe=mXxYJ2tKZfVMrA5tT!^17wp;l6b;40ZRbbE18^-cDNkS)vRzKTC`!=JAgn zM|`!3wEAha!fvdr-V9~V+T`bcguPme@(mgaMT{bA`qWw25Z2g!iX-+X@VO3Z5bVCp z9zdMvTz^uY*_w<@hVO1V4v_q)q%#Lc`$UXke4z-z)d*O}9;+;CnRJP#*v?2jK-0%PR z_Wa~D^m~p%!b&I6zIiD#NJh=Tmr~li+cK`rVl+(PaR1>po1f`( z#24wB=K5014@npo!0b+!Ej39V=W)8PbF6($^zHJR%&~I|&XwD8U|Bcw zf@$9vtbFZ_c9{(?IQJOArHqnP(YL!ktOZszqo11UsSgqPh{^k))XM#CV=?Xa zH-Xys)jPGUN@og!Urardi=i(xqK?JQ(FhJa(A0GZ*}T@i$+JNzJFo%DxD!lWENJhB zUk%YbUXj^+6r@A?p0c*pj5mv$t$oIDLp?67h@~k1sK0$`4f4=Qw9V5OH$8<~SH^Ai zzx}mreUwGW2?M2hVnh4wVy}2p#(=6L6h{0fGMcLCaU|~1P@N~?D@uoOD^As0{xG`O z!fy_fG`@x|EY-DP5nFRDl>XLfT#2spW1C1nE@+1yt&<)p(GBU-_mHGOCp3mqQHQ=^ z;IGq0aHt)O@41nxT4n|M)gNOkt&3v5&431~IV@K>bfvs-D#6`S&Eu96+a{RF26cLI z|5^Ge)TohuQ3u!t9~<_=I!KyDTN=oFPMtSo^v2s=HEGy$Fc8Sc@`U_012vG^Rc6NK$nEXf(z#^&Ad+lN z5Kk71S3CpH4yWIx3h&rJ~5L$63EP zA^e>XTSR@qPrVgRVz8HX=9_D}0PRX`Z2hu2 z!V-@9t~TGJ+5mjBWD=#6J2bgsr_xG!8KmwdP?a|ReZ&S%)Q&RRZCjel*9W+xBs$5Z z=pM9N6D{lCy%qyMuJ{pWLWKCI)jMKcjJ#2D%ZC`-M2|hp95gAAdApSC8KEvZyo-*j zopu85FdY;!FfDV|`oN!b>rrK>s};0qK@^Istv(&#UWB;Mm^jUudtmh}W5B8NYU{|f zDiZ0>sPuMUuh(xYNqb)EFbn)ptc{Q*r1cO@|{}Vf!8;?jypXdZcc9w(aL(o z6PSh36)r2ma}O@aCh3;bf)x1az>Z;>G;mQ_h(4(j{yv8sBat^Vb3QY$=V8XVf(|;UY6Mr^9@v?5&CpiI zfo=eGDK_^3Uqjddzd|C6W2_i*+R>2Q$Dj*(AG7DlGa(v{v|ZmrI~pu1my(zst86=hPQ)BERbMzwEId~*6vRI|P=yF`_d2USQ?XVhs0;o1=El_eMrIp1 z3p5WieIsCqq3|?SV&K3vhd(#16Gi@bYycUzJEil zDS`D`F;NTa6D)g*e=}Rd^lB3yf^-gDoG!&{q_vb}PAI3jZA;$zWyUZ-@x5u#h{1VC zGawCm>87j?KBN6_3Q-e_6ysRE-^6DG#NM?R4W9+3Guxq~?8`~+B&ACyyn=ppJKXO& zi3BsGa2s&!6)xt~^O4PhItN*bX?rq-6qc)Oz7oIVJZL}rN8k6R#&O|gSC;4@+bMX@i|>>) zCe&{Q%k)DrhXxn^x`}#rb0gWoH+%u6vf(#vE!*kyv~34wP70RK6!iB&of4k=6Q)6h z5V1Lo^agIXnFV$pL#)sonB6pZCk1I~Le`7SDU}DyQBFftH!~oCmAAL)!(e2QXV20s z9zA{S!{xj0!`d_{qX=u-aw#QLOd=a(4TLpkFoOA~hwsZkMQ<}YHF!Q{ZeJ3p;H*M3 z&%2aZ&IEm~C}7~4*1J-EBJj-29&qSv79ysfJQ5VktX94Xd#>>P{-(dGj;zTSseGeh zt?DX-qQrFBTPJbKYJtgicn0|Zdpz3`_AAW zw@_(r+0sj&DbK*;m&d6oaA9^GXGE~Q!tk&ct*MX6Pir$wKD8D#Q7`a!veyWbUtY@b zrOkyy&bTyZvp`4Klh;e9sq?n0lPRPCd@M{ZveGsj@a(+yFle|9$rWb!q^x)qVXDGZ zNm=mL8Akt99Cbro=>$f;S|vt(VH_o;%*QpIMr#C}?mX;7W5#V4{G`0HzE7(Fh(z_n zL^UDLb90vNm?;xa!xNB^nGROFD@**Q!LC3Icqk2$PZmImXBSmxSxyYPD;G{Lc-^$^ zqMFtKS}4{3pb?IR%^BGDVJ=Cpk(?!Tn)z8F2!z873k=6hM>AJ5t9Tw=dN#v2tuvrGqEr zrlvJ-CVN<>_~rNv(6CE>hV6HKs9yNSN~?--LNuP^C}3e`iIpP1u!V>+2^}`18Vm#1 z?NEo9ZrDCDQ1XABwsi|nb57)sjMD*g?;o|r-Yv59{;bZ@LT^vKd9fHh5t}OQ+lbib zKkMb|#lCi|uo;3u1!>aK`l4gl9h#e-t&i!i-cuIm?iO|)^gWK?>@4^>qzR!ccb-n9 z1X|G+5P33FHi-JWX0)Qq%G>zaPyW=AZR}OIi*t{k5r{*cf?ZyHd^%1 zV*ud&W(@Y4wi8;u2Fi1VJC4?jdtB{T@z|qDQy-> zrVN?!dnl25nk4BM)=7+hLEQUW&EqE!G;6Y~E>l}2{jOQvmEMQF4CI^@;u=FazZgxd zt6D*RPZydsf8U~frE3+0JX5aP<}nf8zodRw-1$UJBhV-wl7y>~Dhqz7M~!P31pRAA zr`phrKDZt;FzHa3)bc&6o--_nJxCf{rdSkSULNcO;amJV;f!-LHW1&h9&$e>G8=VE zN=5&eQ>dUTwkLF|?ou^6#6I zP$NgTWwm+6L#7>OI-H<*%NBRGtRH)c4Lh@n`bdIsh;B~jt(1O|sZ z0xkE&ku#Yo0S>_&Yz&&t12n#7G3pK|cac+l_LopPVQTK=BCuOd@~8U4cAdz~L#iQt zFsvEbQ2rGTyd{+a96g9?wXQ-dC%GuqIq@dHY(EJMqhXrSBdJ1{)OyDklt66S8tZzp z7`)>9;$X-!47Q(v$JpWa>)C#}1P@r4v{G*@9VgieN5{SI9iWXUz69f53OIGBjtU0< z_*0;K&S6$~SR>QoHlbgW{Y`toRGlUwkG(r_OOX$+`S)Rgq#_>F=@L~;`V&|=Qyl(m zP|ly=ZTf?iXS@Qc;Zz=G&`pz_9DjZKeeN|Lo9UdI2p;y zvBUe#i|1S}gvO?J#VNce`)oO;P#?%wO#FUCYk>lLfvu!dL%SFHD%#8Cng&{wx(_48 zFeRk?^xLCtk`lsf#)tdEELBY2Dj}{;k!?g-Y+T8kc6{3m16HK(D2xUl^ej%46>TCp z%DeSkk~q6)^W0*q#^i%x?cS<@MNf9N{4}~4=_}9`J3%TfH^vJlBym|MaQ))lro(Rx zND+J;A~=`$lPl3r;zid-g1)sMEVR*-Oti;F)?R`W#`NeKC!22DI6^gNGw3C3EKz@qyH>iXaQ$;5(e9kLm^xvu-hOlp_Un=Vld`5ZZ8 z0C))3IwUpKRBC)I^6*B4kHKtjUJB&-ANdU8cK~U?RfLjK)L$txqwz&64f>TwKdUr?upNjInVh zwKS_Ob9EfBX@90Sx)0qC|>=;HN2Q4@|A-ac_iy}D(| z#;EAzw0;-YY^NxMJsP*^K}tQh_0gxH)u>c?%~QoQ;7!vP@j9(0R1Qo z=)JaRA?Frs?#~TX7>uA|<+9fWn5IkiKi0414PA>YND6RJH-JVu-{Xd`*hSpzc;E71 zf_MuF%A&)}up9#$x93?mpzjm8^Pqk6Lgr+RhI@9)e|wz&pTquIK{{E~HwC(}_zXw@ zC0j#DMhTFvY%n@ubWYadd+wGLyFQ`9sEip<4L9w)O=sZ>tz~plh=wobC!jxLR82Uh z?`24;&|J?rmf1h#x}-=1^}TDGo`<>S$C%YcBT9hh1$jA#cNK84_~Dvdh2`MmJOS=&3; z$T5F3qQ8+r@LkzfrXvt5GFTYO+I5EML`eNuk|Jw`DBBB{A2n}Cy;k0tE!?Sc8bU6^8uhn@a4vUf`H99 zE4&Y9wIbd=*Kw9mEi-n~@EjkxM&MqGy&y#((`=>VD~O$d+|YvByI8UM$-DcH!ygp* z2xvSL=tIbLT3_`mPj#6_$%VyYZ zv)C`)eRqeHekU~=OFtx|6JIX#@o^G=)Hez-m^($ZJG+sP`+YWh(K!K%`CYmDg+8Vg z-+eh$$1X*M@fyEIL)KwBh>E_4IOj1&2|8uGUlw<1)`ph_- z1VI1me?S5L{TF=qJzQbXnU%g&Wa$D;CWR2Gy!@iK;+QJplt^|HWhtk2kLBlAXOdOe z29v)gkOhQm86Nh38ZI>DnRYB0&qQ zi?Fp=AFR6$z;Y|-=%VV%im2!))Y%03NHFB^n-i@hRBtlsokme_sEVK1-8Hxl5p#2I zO09|&I6e@^_J!oz@v0Q32N5R8==4?ixV~l3)&YVxbXm0S+Lc+qR!$Ug^B63GWy!EL z^huG^9w{}D(PtyIE479%^4cFu$*s3kOKMr^(r%85638&~0nn#x_?+JUSZ^hfh3DH4 z(C$vAynK1`N*^hK77!OoIN=pg~mqQ+kfO{L=3XO9fGtV}Jzq(KX(k)c{r6NPiS<U{9CZ(UvJ485l}HH%j!X$DO$6%c{iO84 zh+lV#(Pl9l8XV&^(3Ry z9g^dIaMruQgor1AsUj8Krb|_4Z2H4S&f5MT-rhW%%DsIbE|I7xL$k0$W->;`Br?ZZ zWG0!%49Psx)}S&kbLM3#GnvXR!ZIXePGXtKn8o6~?)LY2f6w!McF(iD$MOFD*vGN= z=62ur=l%@WbzbLrUS<^G*avY~h(4$92w8P9ofUVrYNr2oGfMe)5o1NJYJ&}Bm=#Bh zjOOe)6f}euBr9jIc>@rM*q=!g>_YMR}{IUPKW)uRU*zyuSR{S0|Y3d&mO)3v^bSJ#@t^yEi{jRic%(yA&p!@rXM= zq^`pUnHv{>j9%lF?eg~X^X^D+O?E83i*7m(ss2ZFCtrZfI~}^7lks((Ln786GxDb$ zHZEZhYv6eV+|bVmk~w<3;Do3|Rm}8b==mJ@psEzi@kZMvR@zF#N*#v9e`tOTljzH0 z&Wbj1Pq-RdP4l7lt0EC~UQbqhIRw}Xt=M~h)Q7h%tx z8ypR#3bz^e=|Q>mgclldXltEX2eOrbp={d6X{dd@X;JYzHC45CA&raLH9EGaO76te zfqcqhhi2`FT8L3=n2kq0OK@9Tqr1uXUlN-1O@Tblc^kZK<) zBI`g$J+xJbTJk&QximDTcGI+Ca^#wg8~ag%^*yp|*Bs=mDkC)Zx=7 zHNUm!5O3**A#_!vv_B!2uh&=5!Z+!UA(j2vjf*wu8<@Zpa7mQE%r(&)tE0s>?tg$v z5jK4(A3|I>eYNRLbJ^1KJ`pxmgJ;Cq&uk=R-Yh90?pOue(5ub?xTiGo4%ZpH#eLY& zYAo+-{;>kSsk2fsgF|FOns<@yDq6w)6h5P8zt1`7aGnl*!>`ys8@c5f6ryUXOk8Rb zCR%Zj<}5`QZr^d;*|PDd=#fAy;Z3hg zn5wiLfjcL-jw-6GhycUCMMiFCTEC>dm;&f8M`C_G+Un+DCZlkHveB3{nWH=K=LmHn z`RSTLF9;4T6*L7>30MO5@sl}E#~?2_{U|to+Q2C*+=X)} zuQMd(OP|#bw)8p_cj2T#TVs8f}L zb9F-aC5{TFap3=BrEJGTb6TH0e&AqMHl%aEpNBHrUR^xA$WdB&$lbMc@MQ#L7Drwx zl9fUou`X@6k$5v%NsQS?8|bTeCY{W453ZA}m(i+SW@hJ|;?-JE7>xv`-cj?OsD2Ct z=XT#Km%blmpzFE!ZEH*L_8$+v)Sg^WzMuDyZq=i2OJO%kSCjcF*`nKM-zmwyY|S4v z;ZXXBp5ZOkeDM(n*^BzK?){H_T^q9)?`O^)wx)EHPbhTyAj0ikTJL2nd!2Q;F^lg^ zh)@YbX$Vnpct+_-C6|ad`Th9bXlq?oQh9~PXUu_9t(S#U(akzQ7roe#nLAX@dG$oz z2gHPQ&B!NckdiCcvAXNh9%=mz`B;SSXN5F@qh5<#MGWg7T+d2QQEufbr59eiX(cq8)e>7r(>z8f zbwEpU3mwT`gIl6>wAc%Z7|Szw`h27(&}=EKvs^106K$7G0DPzHSb^iPAD?WsB8jn-C<6MD9^i*nPAjsrNugQReBfu+c^dsquEi1*YkFuT3u5||G5a? z9qO=U`3jg#z3=Go73{f!aNIkqXb?VbY-FDbSrekEaMmi=)H?upc#4J4{pcNy*J-zY&6KMsDY}eCNK^m_yD%*45i=BOewlEB2s->)c!4( zU#n)~=w;BI!m(f&?SeQW2adfjkyM+A*yy)p)cRQWG%L@XF4Zl8stx>#G%YUj1Qj^X zLAzu%k9@YbL4~DcZi0wzE_LWN)tAUpINzIH-DEyy(X93>wO`bY<$OOA&Ucg{rC^#I zQBEESecI70>QJ>4cUs&v$Ng2P&}HDcX<`RFuk1KxU420~qM%3irLz-CGR z`0{SN^= zLu1t;XX14(tX@xWCiPU`8i0~&(8d^ue0&}XwrgqJj6YEkEq-=P$~aR!Zz?gt=cY!@ z)8i3k9e2|vfPt0i?T!Ey;Tt#vr1Q4SbJF3p2i|5WlIQTKPwFcSEru5rO>%^l0^hRq z9ZZy->+gJwGwhv)A1!TUcZLsgzQ|rQn>b+o?xcoD(e0oYl(o|~{`A_n(tJDU8y;>2 z*f9$lI#MX zt@V+DO$3~D!*aiRYZ{NCdSBWO+l@r|K>GR(V;kTo7K07{d+;Sb^IFMJK7*!~{QUh? z=<3B*p7L78SdFmU>gtq1?7g@1J;G0j%vs^lsb|F)DhBb-k3~n~1k`E489N`kL0>el z^Q{!hcQ4Q48$fCnnflNSVjehks_}TWsjy{;V#<)eyi@ySy{k0Tt*;t&R2WKBDv6gb zRR+!>(kzgzCcG^lldd(oYY*59>DLfu>1jaiEjdEEPSQ^BJzdRCk+@tnXN#ewQVM3q!>+%Pq7 zVfFL_5ySoyJU18(Pt;0#t=oZ|c>D#_P6^!ZP&)J7K`0`{%fga<(60kitXTAr>dtD@ zXHe-_Ai+}0veQ@iLGcc8i@e9d&Fv2ewvLfLaZ645W+K1n0lIx>jizi&n=d$h1stW@f1n84(`#BHid7WGTnZv@H)^6q)K8O|=SAfrodk%J94vKR*U$E- z<6RV@P0$5Gc9ascE15SRMjv(7f90Z~=LZF|7Rg-BWsq0V(#>c!_w+^CYnoORln=BZ zE&)*{`9*%N$x@60;jbUajG|kn*&7P^OQpO9lC88%FVT}fEH`i#>}m?xh+fmo;vRT@ z$J&`lycwe?e{3xwCtvwvVDP{Ra~ufhPYz#Oh?Pl&#mD-&??t|*`4f5q=91ZUVl*=d zU~e6>>e;WrOMYg6DbtOf`xAi{^3?tK`sN;6uBYxJJnuX4)u1fCJYXaIcG>DvfCs>@DsNuj7Oky=>|L-nVpUxS z6Cy3;ndB{f5_#4PL%Y5GOat|BX+t{<_(xD*Gg9n2T~MvqR=mP9cPe?b%-{!;*{H;_cS8VS)4I%=z95aMYne8wtdaYs`TsOU7XhX z;jg5-Bp$A-;yZ;kv!pJzoco5cuacXPmQ}1!#lQEp+=tmomjUo|BM-^vCRrJ=! zjk03({<^b~HOT}u4H@H(w5&y%32RsV$2<@!iLu*(w6j1?HO1Yhy)plx)Yc7`>pfOF z)`QT+>7&u{a&Ug;)RWQS$sMpPoo+c8-KjQ!@KjP~97^js<Plgh8gh7mqat|` z>Rp?|x)c$JGZf}|15{0HAzsjG;Z1>z`(CFkd1hOy&?ToYGN3KBQ;G$c5C`(@>L?GD z|BMg+>rX={!Bk8`_B@o=Rh3MDep`afQu7qFDhe$hiP(bcf*RptHB`yQ?m^)W;Piug zFpbi9046dP1kJ04P=hx=OsN6BYfmc6mgkU(W1W@ za&4G-wlNwM6TJXLNFw@|%MbPc3-RQiD`2VYV14lLZL`ubnbh1v+Ys}}PN>T)i${MKYk;luOG$lZT67L zAMP3lOPWs5BKxeN&kEdmfJ>IV!WV`}+CT~@pl_WSz3eGL{kP4(;U$VGz^qB*rqEd$ zaHrlEa5*64@W}y??wTMj3wBV)LKPw-z**=L&uta)E^cLuo?~32s_FG>dYcH=_VEoZxxX>3g z#BuY6CU2Va?=;8dpPi5GtUa&EnVYPM3RnCfsmcCKGq;(CBTX|H#moF#Y?Cm4d&5$) zV6&*-vZF0IUea=XX{Xl6Wj(pJZ>_d>XI|3MXMLmMzOGGfW{UxA=M;(BH%yjEkwxhY zVIlggQ!{f|6yRG<%OdYFDfdVaCRY_;ZFxjU%F0?v4s-K!9IXHGjt{#L3;}2rH{@iI z#YeT3{P*oAAw6`AN#@`FrIV551MN3U$Q}8hk-;@TyHBKc@`XK;Kqxc^5(k$upc$n3 zZ+@frd2v84FF#mI) z2+PX(kK+oct<|aypF-}^&a3LV#1cUwj}yofqM+Yia6W~egcgi^pb*gl#V@1z_rOOKpIbN-PSra8!Iae5VHhx8 zb0~H26?so^g~fl=`s+_75Rx0L`!coD82kFA_{Ue(`Mpj;L9jqFRg{S9-7F8#uzU@ zkBus*7^#N-n)c1p60-g>eiSP4Y4{EpF=zOzXwQe-#ftq<4{cH6DiG3o*O~Eo#gr?p z3yRw5^`#20gpGFzeXZuPhT6!+Sqxz6_ zo;$Ji+vZ~6i;-u}=+btnabXGgrZ<=EbB;*vwpmKKe72Unk;?H@`T>L^$ukl0KrYJK zjN1C;;Ly?kIXL9!oMbX%XLqW0q>s<%m$Y+&pI1byR;}~Qwa>b20ohoY!USYa6cIv? zh#FQr3w*J=BE75S0K6lcWzwr!0YYTknju2E`E;YXv9Vu$$r)TV=rxOC7i0DX?9j*2 zfT904a_Jv$u#G=g?AFLeUGeAJ57&xpsLLT_BY&V?B7Z1c3P<&$+sa*mmd@wQtIs{> z4<8C&KlSPBUoJ+NY>bB_3I_zbHl^*_UI-4!wUd^QRCAKiepoj0qdME;B)Kr0~Cerx*T!&>jRr^ z16j>?=p;ed-wJ{S&CE~ITm2o{=8wHT z#87c3^%b}B4&HsGF12~53XFbQLA|DtrJA6P7PMDyb5Hy(O>Ln#8D*qKF_|%sSeVQt zNHpRElT)W)ySWt|;QL-M`DTof=QQWE^icKnts!L5BN)Mv``oYopb_*5GO0AT*on%0 zVq4C~sGY5Jw)K_WXhqG`^3jK|59hT3dTSnU9>XD~oo*d3jsJGerS0Z2E@FEKOinU= z&31?IQlbleH$r8bMZig=rsr;peRhn?mF|flwRfX)S``J15-w5}jJGkG(_$&({qwdG zMHNSMl6*dR=iWrBhei3}@QldR1oQ*P7h%X-U z>Lqm~#ax00Mc-E~H=n}Q-#a`~%u-yKidrpNy;PKzBg!9d47GX0x?CZ;=@AAJN9Af` zX6IXdhXGFOshgkoT2w@ z5b3S(AFiPf+RJV~-WQOaEt6E#GJ>L7GL%FL6pUEEVZ0q2M{^0e-e zM)vmnn0ZDLQi5^nB3HQYSK1VIWZkxck=ZS&?J??z8>>(qvKE7_pFCPmJ@X?3SNYpJ z8}&tjPNzre`e`gwE@GayQRw&Z1f)WVyQpSot!VL7WfibxTKIgwKjh?&eA*5h`OOY- zr!Dw^6>~sn>G32#Z#OIk-d5O6OhnnJdZhpxE`~`{YCDrwEw!wlX2h#IVFcBC%k1%F zqv5dMqSvTCQrIsZe{x0pO)P|!FNdJg5;UoL*#cNR1$80(2B&63>o-+Dkbe)hnfYRH zBFcXZ_DD2O`sw@|8q=T+$nRYn-6f8igE5qZYOE1140sOi@E+H~5t z7^Q$=8~Op4qyI4JnI;$RlI2PG(4xL#qDYP-I~enFN`I8lTRi04depOKQ#nu_{;Q$| zbZmm%+wr_xD-iJOlssZ%_x#5(j9COyiy!@E+`aM?h0PPqAk5Sy?tk9bCV$cprRgkz zR~UBQUN*h3^*j~jHA~(x2dxNWrCXM}eYuNq9=LC7n>BdJBA=7kQI{Q&4*dG>G$&eZ znfA2gmb$wkJujQ38oS0oV`p`wN zwPhWVcCh-GWpAXcR*BWk7j+@kVGJK$ZOeD!M?P@38R{uwc9<56D1H~&TECUy*t(@o z2w9Jr&mVOkT`P2th9NESc^)vj;=Rt=>+h8iP1uJ&1M03nx3r{wg?&3n8gJ6#isFPto}h2bHj=6)Ld7(|yLW0U)rx^c7l|MTN7lS8*Vf}=F}l7! zBk#BisBXSv>LJpg^5vQ-JlTYLIJhw@ypH)*s(BqBPEC5ZiGG+d$8TCV@zzuKVfNQg z-c{Ro8E@rsc15);v4cXUkEb4=*eW_OW8ZAc`lfQd1w;Je0X%?M!XUR8uh@yTS;5h^ zhvs_8t&F$k1DYgs{4VfqxWGA4TqJgaBBrnCyEjw#jVE_kB5L5Rq}W!d``%a21&g^1 zeY8B%W9$v4F@-yqad$gPrw@O`;BR_q2;p0q!_H~e#t7QCueF^_Sk;<7Fw-Y1_(kld zY}cfR)W8n6k5ORpw7cLUC0D*iNVZwb4tG&dsYL8}3Q=jP92$V}wc~22A*?h$J*88^ zBPP0nQF$scm|{TLFO-g4cojg@%5CibF;;2=Tcx{Rm()+MYp$tE7d%bv{@ zy0i^;buoxc<9Uk3teb`_cas~pY?n0bzY{s>PtLpycU-?xv_7Zq_)%!@%;?l} zLZ`+VnRj)bm^rx^!wMBI2!&7)wVOCc-r4*TH6m&)?fco$AJ^$K+Po<)_iTyrck#Q= zq+0dH`l!nPL5ipOO-1>^lCANU-VN4jZt4B+f)6IlL*awhm^h=u6-FwClnMj*twtoA z?b<e(37dmJOX zHAR{a9Ls!2n4LGO^;V*&-vZ7GZ+4}!PbeRi }iPKKxmX3E`b7aESb&kl+YFz41o4oA`WEp!@9Uil0?bVj zzN_g$*z==MJVUSbCz9tD#&JG$JIl+C`Er|cEKB-P(_!NuZ)F!=eYkf~10!P=s-WKb zs>Mr&;P2?WlF(y@M9$>r^2qgezuoFBcT4FxlGxkb)A2Z48mXzYAUPbiUiD?|X_j{1 z?Kw;7Jgn_|zO89K?gsPr?^Zq#CB86M4 zR!0)#Rrr6VkB(eP7Qy%%UvUw98QZDyR&digRBy&Z6FmsS@p-VW6rFq@4dD`Q|lBQYDVF(Wm|!E8pq+ zg>{i8$|T0QC*tseh7|==+HRDFJ*|pNS%sbPsWxw2a52;`a*N}dR=l%gOpM+>$h{VO z%;>6`buKE_(R$*5bLcw<=@V|3d1Mp4`P=K*Saicq&bm!VC{QQ{PvWaVw?1Jnvr+C6wZ>j148e z77J4tq{&iq>naV-3bSoo(`}U0;d9B@$v3)AGFar{vSv znhfX8>=svw)_s3$9;qraZS&#uRmmRT?q#E{Tw6x0$XtxnB07)fccK8X2Z znjOQB3Y4K>xQBgkt0QtrS*khntzNd%9m!#hip{67)LwGvhWwx)T&i}qc@N`{Wn3zx zh4-7=D++1i(*BsGbV`cp+quOMeumdS(nD$|#U^Q<{u1CB^)aLqAB%n5G8<+B-b?5D z#~#zu!?yRJ)wSNd+zCZz@6)O^&V7M#RA>F89AXz#kNVk%Mc8XuEoOl#kb!?zp#YATjmyiOUuGbvi1%UNPEeENhW^B>hc%!PJdS2L2{;^ObU2zmiyazhOA-#lE) zt1~uNW>UZ23KNdA>KJgV97MfT;TPc<8?^Ad+rp6@g(#5o0d7L?E9`dGL<^aIC?y?E z7@bOJmdes;ZLhdME7HEKd2=(9&&PTb_~AzAH9PGVyM-+c;HNryYk>(K;gg#9bjD08Y3^@{Pwn^yo$wY!Mh1@*W$Dp5h0wv! zn&fVBYIn7Yj+B}7+~q`V%4FVM#49Z*We^Pr*z>QgHZqZe`*|yv5nY zEmUp3L*NUbK@uCJzI~oNW&5kWOJ;8bWH{1$*;pUKAl}PYi=5oB>coy5`bcLP{o9&|fkDUrV zHIs@{G<`Q_HA{W{0@*s|O*EhgFVBeF%bCau)Wa^AUtS|Mzuv9+j6a$pjF77BUU`8` zezsGO^G=rLqy|sp^K2Sp@hMU^+Vz<%x3dkK%dzzahz0HV&eWK9Do!*d z)aEonw5R{0K;p_7+x(lu>W4UFUmuCy&JwN7t@%n{lykmlH#bk6EgvE@DF6aSJkhsG zli4Z|{O3lFP_!{E$*lR=gA3^M2*2%gtQ5xlF-o_@m$A7tH{W2l>H3Oy61{9!8elD41uz7Hq{$n(?)6*42k2k! zI&$o={wjhb+%U&TT94gD4U!@0kC0$|rBwEDf_ZFQw! zj9LG@N8h&GIAnktx=;-}Se`So8+_DE2$cZsp|NFIFRb;pL_{ibPg5%M+vaF2-|-Ns z5GE>Ltrl}%uFm&^z^#yzG}(GE=mnVTnBEBa;~g}KPSta8iLV;%%MKo=q#taR%n3tha4m!Wl8w@BaOQ3Q8s1!$nh`uTCjv#nLSMHRJ-=dI1B zbu?MMw&pANAoiJ1jMVAKmR7CD#H_I3-)rzJ-t;I^QVy8{0}S+rB_tu047s!DqPhw!>Kvxfvz}7j z6Va zrARWR`si{1mvr`Tc#2n$9$KxCF(#L%HOg(gYnD5t+wFe#vn|zrDb1eOr1Z3Qc14r% z?Ux!|vjfeCFZB*~`Cfs^gf$xhCo5LDquGJu8a#t2znpWqnl>({hY!lDgEI2D((`$_ zlYT1+qxqrvYEEou`7m3G>#V_%%bx(Z*lfsHTUwr%i#LW=1QU72M4Pp=%VX*19+E1o zSVU8L~&0{uuHWk`SU5qu((;V{h{NW}H?#_DO+ z&SF(vA@kHVeC$?f6OIcHqnP7`3eJIqA?oD*IPXJ{jFfQpCAu`0t;5QF1lYV+`|5lg zHy?fiU=giaUfL1cP;;-YrXyvwwMO?`;#NqDRut@ZPR)M`Jsh6JD2*I&{2uKA7RsYf z%@I%M3BV;hnm`>$6;9QYV*Yy8$v5yBg-Z6KeYrQg+EaeKY@Os9rmrSzbM?VSlZ!(y zx)3=-ih;`)QCXxESRv1Yg$)TMy)+r)vZtuQL`uVrbq)s_C2@ejb zY6x{_7TaMfMgX(jbkj(HNWB%DhV|C^;GNo2`M8f@I)5Ecb00rtt5JHg?`m-nd>KLe zaK~>10tDqr#^hy>{C^$&ZXS3H1+?wp*0ob?CIj`9O1NbWcRYo3j}_WJ0Ya2~S=mnK!k$D<;jQ?a}{ z>Mmf)AA6X$GL_&~w>g;?c!z?1qEY{<%jSodE1TLK_k&*KevG$?vL1F=1j|DML>Oz6 z{A_1hgdIcqus?;gjwTs9$dR3>iI^GB^f^@UnP$fI&I2YBtQW zItezQk{N5kxt==a+#Nk?F+Who#mJw~y<_s+cPanC`~Dnn6OXaO#6XzfMVEXQ3gKr|kFC zk@ucWBb?0BT2;ah6oZo&qxBPHhtCBCuVL^ilSw^rv=B<{l#MJACK0`ax^a|-1tE&G zYlZppAjZTlxwS%AfwI{$-tFvSReXbYd+iw3pl=rIxH5v-_*}Yf)4nE@Rh{|9Eo0`SrOmCxb+s4UrGpLGxus1wbtHN9}VyA z#wYG}r|h86$JE|U)a)c6&g6M^=u`ICO7(xM#Qu5KSro|d1->w=J@H(U0hy=SQ!PN& zHFkb1k$!5j+T8FMXGeCX#tq6CA^pNGHf~H>YS`J|OT{9f946sI3OVFs1HrS;uU@aZ zS9qMMbC<-2k*=VTZ=U&&uFiXBKevVz9uZ5?rZ$tptbH4lq;O>0E`^Dv{U%{O+(p+& zl5Ry&w#yPg`2*2xSL_uyMJDBL3v%~cSHF@H8QF()hS5Sm%;GkI)+4C&bMxgauF><& z_RzWc*s8UgfAML4tn!TL@Qj)Ckj7Y2dG5)kVk7s^g~BkSh0?;Yz!wx1Y*sx+RpmZn z#Pf9XCp$>vX>YYTEm0KkRDKDZkIK}gFViafBk>`EI#fZS)B+<)oq_!V%|kTH0St&I z85*BA6E9qnre1gM$ED%B!&oya{-9At6^*O;=!wd9t=p@wjgrps0?CroBp%=Gn5Ai3 zA`DBSSKMIAyHd)w5|5chV1j9ZPl|8f=5h|_X1=&X^4O!}j4Dh552RWx+lyjRGym!^ zct0#zok^rI?nn>DN6Teuv*yW6_}B%s*FsaO)z%K%4~)x&ML7>+HRVcaX1~Y3L~+jr zfYv@it|MYiPjS8SG#!$^=V4RRpD8Xdr6&=gPQh2To@kolQowydcG5E&31b~d*?wam z;6Cz+d$Jd|9v8YV;KT7|e0Uvoc(TW2d{0=i_m>;|#ab_IS?U}Pc;Uv%6a=q%)$Wis zAt>uiAIe%EPJ!9%gTqhg=y3eF({)m^=@udFvWKmS%VkAA1$Qc^pIr@}Uvb;ox*vpg z`+W=5(|T;k%${Q2B5qXtSb|b8QtiBvSx)Lj+ot?_rTt1Cr!TI_MZ($Ox|TU#>&!dk z@IVIA#DMc?AtWFZL5$lbA_Zo)p|1wQycaJw`kkK>`64~u3fAOX zp3xe1xw@~m&}gE;z5?IXaKzqS^Nlc?6XavsG;DU|2wsNf7mZ+W`*c(A=*CFmy+6Np z>nRR)jK3{bebRdXoZ>lSFHd~NQ!hh_`BhbA;ljq(Aqk}P++g3E!sG*>LXN}#R86OB z%B!i{|7b*?YG1+4q*JtAylh-SsyAK*)upJ|+Bx&JM#16s@Kh_qG%u*5a03;Xs500& ze}JN4lE|@pQ&5w2$|2TT{1?Ov8527av!mhbGkS{GS@Md$mq&1m4M^HJXi*kr?0fis z=0MH+Ve8T!hw@e-(nD>Y0WbryFt@RsS&uEOhS{TZHmAF$s&z>L=_XO%5QRm`Dqmj*vC%69oK zwY?m2JM>CQ`gY$4q{CU&7H{3CrGA*W?Mz6_l|QbCIPD-=t9LK-mEz~iM5L*Up2&bz zdO%+zQf>`lLBdbj1ObSdhB${!k2dmE(4ZGcFmML-;BkYoSK&LqEgpGy853;+v5gk#-ugJ zBR~34;Q6=1MoWPXBJW@ps1(bLlFN^4=@68n>%4#HdQ3zsywfK4x_*X4;;`yOtLt;F z{FhhhADqF3W6-n-axW_Q%ra7~T)avobD#F-vUWxfExP$w zbg2K_WR;{V=J<#Mcw6KbB4uW|$-`KRZ8`sjZnad%K8oN+g5E+)n@XI?1_ z#?pMvKOms%Nb*~MOk09R+ttH7C>+L-fz{g$lB=KbV|7Z4W6F;|E-G;bis%dGltUOD ziwJ`@S5vnr+*oU(kJ*aoV5WmK!F$nx2XXHYmb1^P1#)a=q zVa;_HstMsZ1Y?UrD*4sMyOES-Zmdv3-0DY9jCmiv)WZ*%$U-p?)3l4W(l{w2vLkXU zOmham^InPe(t0E6qewz%1tYQsEX`BNZ%^g0JN6*r=Y^7JD|xbQs2J@LJF5EReP%JS zeRu3IJdIDlnPp-EwDf!)asy6{NAp^`aMmL$W?uVnRl@lUoM|A;F%*g>G09Rr-X zjDb*KNR@Mg6tL%Rhty2nFIjX2Isiq=VK#gDyuwgoelLVeMF{ZRbAywoJy zo(*033Ndv%(6)k)cRIaW^QO@Lg=!n;a;{m$TT-Lfl?NdeYK5aud$?$Ky60{|eZ#Yk zQ@O4K5*vVii}*Bx4qJPTIljEVxC7Ws)Jp4I1zNjZi6cJ0+{bQ{K?Q3^UHZbqC!d@P zF829;^hD7wd%F)gyx_3iY1+PD@MH~KCKcR*mG5PDvZ%cdmbk(DuF5!}2A(=02W$Bi3HrGvc> z_o=NjHy*v{9~C-D^;>Yx*W5<)3$4csPF)y8@Ohh|Eg5xyD z+)C|hnu-Tk94b?-%B!gAdk0f|I>h2#IPr3N2D3g$xLN*+QGyThH4u?y-*Lgl$e6X) zlIq&F5~_wKxAlNtWhw4A(^7`B9$dUg7ptLvbrvTwB9&E@zrHoDd+%*CMd8KZT5#%$ z4rUtEXL!*j7H18Z&zQ|~2+BD`jme20`7-&G>rZY3@2B0T+R9i$5ie4|PeZbcfd5C4 zam{v8-7ir}+UF|>jdh5oNf-Y-WA&E&c5*i^MJsnxS5yE_pH10yPuzIMn)Z~M-xg%+ z7M+aKYb!|(UUwa`K01%o)6C@SKS2lPy;3rcoNwo!#qr5xV6CLu`g{~8aS~!`(^_Up z8_}dUXJf2sNx?#B`95LkTtW@rysmUr6&ZTvI;YMN#BiGPP|Cbg>nzWT<%lQajErrs zC=jBcewXgOJ?4(i&K)b{KwRjUikk)&Lpm|YBT9CtnYIWIPHuq`sf zJ5VJ_kA!7*g;Q{aXT0<{0hU8|=BY zWqya*yYJjzuKXrvo_!(#HLl#5HQ1YHf+jKD4ApvD;r1ij=j?LYWx4zAlosX#;x*`w z4d4klX_#dDN>qSs%;|x~2P?Stzw~ZU z-YNCS2uoH&B1m*Uej7uw%mV{}n~9W#G}wG(y1zRq{$e%;cu@wle$ zdJE%(UFJyZnHXOdpJgti@8JP_d7nC}eu;})6g1q2fHwvyz7^j6Mvx;($Juh|`i9>y z|5Rqs_hD^^&eWz}?WUtb;gyN%4*&q`OA9%1v5U)$QSB#TAO+B3asX)$r;kt~QN){s z47I+*NNJ^J#8CcRv$@-?f-s3ep@?wfr<2bIcfP z%62H~i;}OVHP6^9QqxeIcs}c`V3rb}%?~xW7%JhdXFfS$4GvN%N?z0cTGM>wT(heD zFSXv)w#81ce2X-n9F)(siADMKN*))%LGw}Hky~G%6F;m^Bxt;{qtYFkFSh7$t-Tym z`?)vn9UopUuuPe!?9)^HRlZ))o2^si9o6AhfnUUSm(SdY?zPCPr43in;N~$cZ=|}C zPv9>_@;4BHR*EURNw1h!qX@WVom-|Mz=`(0lQlg<{(hk8(+aiwm1nKz9cq)3m3O0F zT1kvQ-{Ien|LiWfE$<`o@nV*AVc1TyfCake{kd-2!m2E+3FeD+wlCKt6eR<`mAcoh zB(e6ezP2}$6djCZEFwL#lKgZ7TTNq|ZST;Yu#tJna%8pZu3C<3#>Ug_iwZ}-LB{Vd6a+sFnOe;@|Mx1YsZ-QC&+-sUG9vaxk$!%CeRz{ zL=54yN<63zTA@2lE5fse(oKvr(8H*y7^qL^4WisHpwfS#(3=R5KDVWzOFH5)%OYda zLb<)*Ue5)Jl8qJ+Gl+kaLU`L~)-Ije8MHa5t{9!g)m3-`NQ3Lw3LK+hb~-a18L*~~ zfmpv7+5nz)uA_a@^e;E~#Y0$Bfw+VFV#QSmU@1uuF8fbbIzo6v)8P2O0S(wm_s%o< z7KE4wJ$&o3-#QG0QISwQ8Ub=JU$Sif;!2fd*sQ+w>kIyBHT>J4LqzbFG)q0jVQQ12dv7DiayW-w`~!Kz z%%9T1zjsSoW`5{TO)r0uq*q`s*G2Ncgz8slAnfHLS{4v9y28zxdvEXMx=3Dr{k;6C zM>j?(&;G@T{l#?pp9#_F0y8l=Qjh8H4aU#ukSYzQ@7DO`&y;(ZzA_!4w)0Z63E0bw z`fxH%%E$9Ktmg6m3#-{1hT?2rbmm>mr_OM4CS~ZZ7-}4;wBSq28 zr4|HY>AOYlUJ7K|AzqfT7g%a`K&xyjSZZ_UPi1})&m&B@XJ;LbfJnJ>bjz?Gc2n2~5~;BHPog|NpnAontWW5#uIYd-_=P zu%}h0;k`I*O#k+KLH%8d2Ig)ARjBHoK9-URxKeY5uTyq|*}|_s>i_-`k%ftUKwY7+ z{D1%8KRvN0`=5uG*Oc|m|MYwR>p=qQXyOXc+OF4)?Vml~%gY^``rSX(O8peio@SLF zM3h8#6}#hmnN}C!B1zNIV}E}p{uHUFNP${zz3E#t1EvWV|oDESh)jn^-RO7gtW5=?W7jy+EPJlQteX#0rw%D5@8vobc{o$l-=$k5>}8r69)gtZFiYfKPRpzp z09BwQY|7*JvT{Ox?wTb9rPE`A)p5Nnd-#6)NwgGUt#Y`&wB!7jvHH(XZ6XAVHN8vV zR~{*U6$P45QmE*A2i%_8ZR_Ee3E>R#4>0F1xZq((p39R2G7 z^pAJ{i$B&d1?N_sOuT)jDs{@G>i#|5k*Ra>=dy#aaqDKW&)>i6zJN=x5PXkVS?ne5 zRw09pA=fF&?!sQi{|JnVnT+7!yME_W}J5U_AGnYQI1U+!RlEkP`UB{koMkj zO=a8rumw?3iVC72#eyIRQL1zh5$Om7q^n35P!Nz3A|ORjP^$Fa5+G7SXbC7PQbR{- zKnN}L7Fv?uVP;^w-?{V7c;El{gmZRT>silQYwvy5{x9jTiCTC=qX!PHW>AxE6tsPHyNpSzKh|_i_a3H6pO?FDTmd5=;ch~Z2 zI)K+67e|HPdfaD1*~ZCp9&3@+jCC9mZ=}d9-EyBCsXHt^5tE%%Bjt>}d)na1(9(K! zcFfisbSxL;N9j#3oSD!Lq2TPslD60dG&PbJBawyX#kcR5dAoH#{RUS&IU3OAt|d!PTn+>JMJ4M*7hTVdy;Z_$^I& zAAV6|tyJ{T+X@@Q6Hp0%;^(Y? z+Gg;{M%6?f3obx)7vYV}o|972*ARy}_z6{Wb{3njTfhv56c0aL?E=~5W1hij2Bq+Q ztn&ht?Vj3G82eiP9FMb+YF+I}Ju?_gH~z!;&eylah69^@hrXT!3T-(f_*gO4{zdcW zWd(4g`qkNxnW_2O)kD%IZB+bu9KLCMGR`ATBRy_>x$K^VMEXc)(7Mj5j1(IDZasvX z^B?hvSb&Fl<9Tnh{C4Fg@9*B!&76J6U+({zdk)=|^ZEiA0g;haDr_pYK zZpn9(9v`}e%#Plf_9m_}-%Oj9__?^?3S}7|l4N+edFcN;ZUEMp=nm)z@NA+HRk?ZP zeI-kwnhE;e&llg|LpX+tSc1tPPJuv5iJNe`%6q^^21?PG=O2=R^o0t@wlcFU)D?HW zC9}eN(*%c_Z7Fy<>aGphBrYL4pgJ%E+ahNs&1^pf8@QT)Q9deBa*Oa2E-^LSs+tz#VBZUHIgw{~WFnqZBl2f(K0 zLt}oVC(zei{#QW@SzSibz+qDZ(`vkP<3uP$QGBz+EX+czsbc~ldx-ao$L#;aqLbS9 z`+h9PTsg%!Xc^Jf5JTtXQa&B#7J1w`zVs2_l*gB|p2&czL{rnU!RvS^hj$fFz!3(yyKR>-9}gmsC0B*yqiy;@{Ym7wv7f^ z@tSo)Z1=XP27{+__UA zc7y>;u?w9`$JYvuW(%y?yfK(-ScA~yzL3Yn%-1_Fi*qt_UvJ}%D-PZCZt1azHvV9U zW6K|nHJ9i+U(!J@y);?fsKB0cfFx={cz~){$`M)({r+Y30*}Ny$bIKgX0u0_>F*QHT?%1RcjwB9Bi&mg3T#`;g+MhS zY&g6`28EZVfby5e-#w7&7e>L|p?VmUNDo2gpK$wLTLIhC)kr715rYpxm|cIe;{Bwl z1z(OeESiC|mgBi&2Bj9BL$YJ!+nA-@Vx4M+SoJ;@QQevVm?VC-kCk$lPHOwpQa@q- zv5eFcN*Bn}ReWKVHO8v+)4k?sh6yfxa{hMDek(B!f%HTf`LEa+lz{>9P-E#QxbyL= zd=Dx(OuckAKHp`II!qxJ`qVjF1@d?EBvXb@=da?lhn7Ch(|Ht-@n}Z_1aLO18-&~Z zh{P+Hts9V@MXr$g!b@Il8oGkO@4GkiJB)iTR6Zyup>SnKXA`|tjV}k5} z#F}`R1hR0ZE;rfJq<2A)FVYRNRJG)njJqdl0>u|CcViv%J-;k{i4XwQl?0R&^uzeB z8p`zd;h3eYa(RcN>PDf1$@2v*^*GX0fk*oTM`szfr= z2%z8E!mf=3XQ%$=WF6D8uk99FZi&|?U6Nr1htbOx;O9j{DKBq<%6@?IWq$Y;DBwZf zWTD1brK;3{XN_olRAsXE$pHv~&?8`k-tGn8fxOAb7=th#kk@O*4J%VU(Xpj+29G|v zAC8WaJbH`Ga~zBhia=QV7hBQYnmD)ht>07+?CJou@1D3H-C?g)BEzvJJywUWl-;0A zKuGJ^7^kPmH;#|XxzCuOJS3~1e8PjjOl>ZXI0O=o3F7W;wtGMZ*ZN1rnStu0&2|&n z+?Y(*r$pNU1%F$&zUdA8+wQG8fBkLb%;Jdi^kD3iYm9w&-ez8G(mM9wR0zG~;?gwA z!A!`V%{yatsBAV1d*x}ak*ScrnVXXM@P}lunN$u3!ja%S+F^#yxY|oYkE+%jTdks4 zVL?45LlL+S_~iyx)762ZX{hh`s-X9BpkxCu_*!00Gg;A2d-VK{Bep<MqLxGx6R` z0#~DEB{AS>8QFR8QSU4cJ4bP-LnXnd2tsI7+*tbJ>1u+AD}_{y&o`5K&5rcB^dlQ8 zaaD6EGTighs1jdF^7@iu7a>y|I@dFS&+~G$!%+)TY)m5L5>iMV{#Q+RSu$mKx^M<2PpN=1`?X)lH;J&oDs(^yu z6m=T{?gBob9CRH_?lv`#4Yzg4jb86VLE(L0J*3e`Qac+}7)Cd%w~HT<8u`)pnNn2m zul7_|qi2ASpeG_qVW`^O0M4|odZ?M|r9(C0qx}AE+0vWbTWlWQvFYHErO%pVH$!V5}Lw5U1 zaul4h4we6Ll?cSk5Q9SeTgVn(1Qq3J6o9n_S9*T&-~;=7d&xy_bLe)w{Tpx$4{m*6 z4QzdFTpy+8fFAWJx(8>mDHX4iYGenB+?r~Jj&K;AZ>*R+~>Sqgv4JF!7VVMnu{=Jz|~5@le@yq(ynR-6UnRSTDI- z(7g=&#u3eYwFg#FW{sS|vbz~9S2l|;D@UapCI>)rD1<%YvH0c}Cf1skZxwLb#>c4ZhWK1&#~2xZS28r*k>!l>P(k|t@QVQ z@)|i0ROCcv<6!+_)zI0R?ZGO`qSy0mq^~eRC)ko{7mdTXm*$xp5L@1tSstTCvPzI=46;X81jI7p1#@!?V$ZdBDwcu zS^id{2FV;^+R{KQ9hdpr5(In8XnlvWfC4lMVwClDF}J*+wf637{kZk*HM}E=07aASs;^epMb2D`Ns+P= zvH0i$1>PDvY|2~hVtaJ_(zol{tODos4#&mGx4F$%IP|)qXkjDyVmK0^Yoo`8ZI&?a zI=Mk{$6f|o;}eoex#0X+ZoighDk@FM$6K~8@g*&Umo@~~P9+rYQ9G_{i3^<&dMQI$ z@L*PW|2?2kfSef9p;IZjM!to0r7g(`X1VO~HgWd9k;AkF7ge-M5;GE3eAz2HI@m#0 zVy+pS*{AC$IhAKOT@UX^yL#Q-Sdd}WXA(mVjCK~Z_{kr$-VVRN#4KB4(F-I&u%5fH z$}Rm+A^|qUeK) zmjOz)E?Ol?0(F~BdM?$;CA=(`IgRNXrMu0wK&TFTUMlF1K}1dqg{nAiwiyAD-x%{0 z%S}=Rf6~=)DAo0^a*YIH+KF1ATG-1%dPi^sCY9;7W2sw-Z~4~zM*Fl#(V_si?*5|j z<-|Gq9_H6b5SwcCpiTeM_d63mto_o&^~5ceAnD-QVz4_B&D9EBbt4vFtQU$*G_D>U z4ehKr>w$^yY3j$V{8;iqIow;4DYAmg+O4_t7Wh#-J76cRvxhw)En~>_jqa^!Go$2# z)6v94g!i@x7wLh?i49*pe*#rJAsTxcM{Z|@EvyR6%i3je+De-&uW@tF8TzO6!xefu z@<;=jjRs0{y8fDCUL8kQYa=$L%x`NSD7RpRu(@D9y zalx4`tg0OETj!XpX1ZudvIZw>)R|V+^pd%oi78%djaD`1dLS}uq|jve5_>y&F(p2A zf-w4iVafDxl9BgDe?PUoHZLpG64wmFK>ftnWpivjAg0|yYHOZGXf~jb-G5tZ+*>^z zp5lAEJ^b6&+_$5Z%A$S6BArVvd3uka zpI50Zz9`hM=M(!9qy3aWA2?#08j#t%M7U-RLuXCf6?b80om+{G8!@Ev4PBRN*Y&P> z2aqI*NI~3@=y+)&bItfh9-S~yWy8fE4N7!UwBuPZb1je727i?Tk_N-tG@MRp-xe#| zgetO1H%qnEF+EZ9{gs*6*pr3>4$EC|+t6IY=+c#w$0AiV`q41aO&H2Mokkz5DNH`A zsZ~-=d7~H|gSwf@1z*?;)j5ZMl{DQKLKgPc&6hU5BU**hxAS{6+L*o&C^SvwR2)`>qP3 zGqnmVma?ySc`M6Ck$IVJ5X`$1tiR|fwjI+XBc{s`$U*(X2eO)N;)p<@9$sE=7}HmB z%LeouK7obFVSF7yyFk4qG7B|iZ7WwKCCvlaynC@+=L7r>s;^qcQda!fm zqkzj9#;^7ykV;_>$4+}Dw1f9KJfk)wG_QQvssuo{$ zj8e(EYHB=~c+oiEItfJV%NZShDURDqLrK@3c&dubm?f6$E4NA@>MeQ7=M(}Y#I)b6 zM`AGr5^gAvdtg9KVj<4C*&#&4^DP&mXtgMyd=2#=$kO90{ z;IqigcO{Dn`sn9j8ZXvH^I`qWW*ewb>e($Vij1z-%48Tii>8V@CH9G9ahFW`?7?bi zQwun%1uf&@uwlb@1UIDp@doL^f$iK2Nzpx!mas(PmPUCM_+4dxx4Kpd`Q~jHA*;b5 z+jT9*%@#ahT5)bWO10rB4r6;ie6wmMn^@}e#`({aE;SVMd6}AooIcS|*-F)U6S-R+ zQK3AFx-|zdG)K}n74POoGcz%IA~;Xi9PnjSJfUc|6_}Ir;(+#{Db5R=XnuPiQj5?H zRnhoII)RZCjLM_GnxUnd9LMvIi&shi;o5O*-PFJsC9S{aA*j+kQ1+aAB6U= zeFkzp(kjBU@#Ae{#xfIftcMHQNb9!6p}U%$mcur%#8^^@RSC+50>d7rtTKT%jXZ{z{7 zzCI;~-3SqDDhWMkJ~VXfraOps1=2s*L_#7wueYY;&>=A2x3|adC||FA64spa-Hu~f ze!1KQzOlV@+PkF38FKs*&-5l{x`Lio9GmPKzlwhqXRlR^wUMTB&62L^@D}@XL@rI9LU$$g zyE^+6dCx;j?a4|?b5ZOTn* zT1YR@$?#1x9L#%Io|bjeQ05BwYIUSA#bjX2xcq~u_y*1mK30&ed026_ArkwZH{D!K zulNLy;|AIzVQ zWqG}wd~|sF2|-nTpJt#R?X#uRbRDGUH2Ym`jEs`1QEyz%u$gXC0Bt_Ui^8>Y=%nZD zm$-RgA0N<0+eCr$OQ&s$;LioF*Uem8&=qNBpCts-2^BE)2nUV*23WtZc2)y6Y%L;B zm}cB3L${B1y!I|h%r({rQ_C!7dWrMdA>{|L5R^!ax0rA#%u8lMNl|X_Hg~?|J^UQhQc*G^p z1^3C{bOc`+?4O)Pb4C)|5j(S=|T&*M!iC^S>g4QS8GI2640ax?vE+lvk?!#KJVWWUcZV{UGpJuIxbQVd