From 5372d4249c87029c4537ae37b0a1ce35cb8d318b Mon Sep 17 00:00:00 2001 From: Denis Davidyuk Date: Wed, 25 Nov 2020 06:27:55 +0300 Subject: [PATCH 001/242] App: Remove duplicate font-family definition --- src/App.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/src/App.vue b/src/App.vue index ece3a285f..1056bdcf1 100644 --- a/src/App.vue +++ b/src/App.vue @@ -139,7 +139,6 @@ export default { From 9e27b8d57a99de15ce86418b41f4fc8c551d3641 Mon Sep 17 00:00:00 2001 From: Stanislav Slavov Date: Thu, 12 Nov 2020 10:16:18 +0200 Subject: [PATCH 010/242] Applied new dropdown component to currency switcher --- src/components/layout/RightSectionWallet.vue | 66 ++++++++++++++------ 1 file changed, 47 insertions(+), 19 deletions(-) diff --git a/src/components/layout/RightSectionWallet.vue b/src/components/layout/RightSectionWallet.vue index dc8bc417b..6cb904fc2 100644 --- a/src/components/layout/RightSectionWallet.vue +++ b/src/components/layout/RightSectionWallet.vue @@ -22,13 +22,28 @@
- + show-right + > + + +
diff --git a/src/components/AeInputAmount.vue b/src/components/AeInputAmount.vue index fa58dd508..251109d33 100644 --- a/src/components/AeInputAmount.vue +++ b/src/components/AeInputAmount.vue @@ -15,17 +15,6 @@ @input="$emit('input', $event.target.value)" >
- -
-
- AE -   + {{ tokenTipable && selectedToken !== 'native' ? tokenInfo[selectedToken].symbol : 'AE' }} + + + +
@@ -52,11 +61,13 @@ - - From 7577e05a53f641aa2ee599cf120efd33a2cc7ef1 Mon Sep 17 00:00:00 2001 From: Stanislav Slavov Date: Wed, 2 Dec 2020 18:59:12 +0200 Subject: [PATCH 014/242] Applied default dropdown name Updated TipInput fix lint Removed trailing space Optimized button styles in AeInputAmount Extracted without-symbol class styles Refreshed slots in right section Refreshed slots in TipInput Refreshed slots in AeInputAmount Hide TipInput dropdown from User Profile page Removed redundant click stop propagation Optimized currency dropdown method Optimized Aeternity token data Refactored token dropdown instance Removed redundant template tag Removed unneeded template tag in TipInput Removed custom styles for dropdown component from TipInput Reverted AeAmount multile selector Set mutations to be in one line for the right section component Optimized buttons with ButtonPlain Extracted dropdown click handler Applied newly defined padding for dropdown item Removed redundant class --- src/components/AeAmount.vue | 9 +--- src/components/AeInputAmount.vue | 17 +++--- .../{CustomDropdown.vue => Dropdown.vue} | 28 +++++++--- src/components/TipInput.vue | 53 +++++++------------ src/components/layout/RightSectionWallet.vue | 52 +++++++----------- 5 files changed, 72 insertions(+), 87 deletions(-) rename src/components/{CustomDropdown.vue => Dropdown.vue} (82%) diff --git a/src/components/AeAmount.vue b/src/components/AeAmount.vue index 0d5c1cf18..cc8c6e047 100644 --- a/src/components/AeAmount.vue +++ b/src/components/AeAmount.vue @@ -1,8 +1,5 @@ From ae1c277f9d025e03f2eda3394cee2da6715a91bc Mon Sep 17 00:00:00 2001 From: Denis Davidyuk Date: Thu, 26 Nov 2020 09:54:42 +0300 Subject: [PATCH 091/242] Remove unused icons --- src/assets/ShieldFill.svg | 7 --- src/assets/activeTabIcon.svg | 15 ------ src/assets/buttonCancel.png | Bin 345 -> 0 bytes src/assets/iconExtension.svg | 1 - src/assets/iconTipsActive.svg | 3 -- src/assets/quote.svg | 8 ---- src/assets/walletAndroid.svg | 41 ----------------- src/assets/walletChrome.svg | 3 -- src/assets/walletFirefox.svg | 83 ---------------------------------- src/assets/walletIOS.svg | 10 ---- 10 files changed, 171 deletions(-) delete mode 100644 src/assets/ShieldFill.svg delete mode 100644 src/assets/activeTabIcon.svg delete mode 100644 src/assets/buttonCancel.png delete mode 100644 src/assets/iconExtension.svg delete mode 100644 src/assets/iconTipsActive.svg delete mode 100644 src/assets/quote.svg delete mode 100644 src/assets/walletAndroid.svg delete mode 100644 src/assets/walletChrome.svg delete mode 100644 src/assets/walletFirefox.svg delete mode 100644 src/assets/walletIOS.svg diff --git a/src/assets/ShieldFill.svg b/src/assets/ShieldFill.svg deleted file mode 100644 index e36cb53df..000000000 --- a/src/assets/ShieldFill.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/assets/activeTabIcon.svg b/src/assets/activeTabIcon.svg deleted file mode 100644 index a4cbf102a..000000000 --- a/src/assets/activeTabIcon.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/src/assets/buttonCancel.png b/src/assets/buttonCancel.png deleted file mode 100644 index 872849098785bc71b1585da27d508035e385e6cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 345 zcmV-f0jB;kd-?Qi4%#KdXG@6Oa0=`-DOVsxnwV6Fh`ia~=ykj%l0vli_smjIc z^G~3X^xOv@0=8Q07kEkG3AEv@B>8upGX%T`-g9^h^i9%NF~=@sW-jP)`?#YIz%SHH z2 diff --git a/src/assets/iconTipsActive.svg b/src/assets/iconTipsActive.svg deleted file mode 100644 index 21b47fcac..000000000 --- a/src/assets/iconTipsActive.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/assets/quote.svg b/src/assets/quote.svg deleted file mode 100644 index 87890c365..000000000 --- a/src/assets/quote.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/assets/walletAndroid.svg b/src/assets/walletAndroid.svg deleted file mode 100644 index afa7fba23..000000000 --- a/src/assets/walletAndroid.svg +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/assets/walletChrome.svg b/src/assets/walletChrome.svg deleted file mode 100644 index 7df1946b8..000000000 --- a/src/assets/walletChrome.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/assets/walletFirefox.svg b/src/assets/walletFirefox.svg deleted file mode 100644 index 8e3de1285..000000000 --- a/src/assets/walletFirefox.svg +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/assets/walletIOS.svg b/src/assets/walletIOS.svg deleted file mode 100644 index f44dacfef..000000000 --- a/src/assets/walletIOS.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - From 225d4c6f1baa656357a2c7ad9d544d0dbb9f9b94 Mon Sep 17 00:00:00 2001 From: Denis Davidyuk Date: Thu, 26 Nov 2020 09:56:42 +0300 Subject: [PATCH 092/242] Update SVG assets --- src/assets/aeternityLogo.svg | 16 ++++++++++------ src/assets/buttonSave.svg | 11 +---------- src/assets/cookieImg.svg | 4 ++-- src/assets/favicon.svg | 9 ++++++++- src/assets/headerLogo.svg | 16 +++++++++++++++- src/assets/iconActivity.svg | 16 ++++++++++++++-- src/assets/iconChannel.svg | 23 +++++++++++++---------- src/assets/iconDiamond.svg | 13 +++++++++---- src/assets/iconDrawer.svg | 4 ++-- src/assets/iconGovernance.svg | 15 ++++++++++----- src/assets/iconHelp.svg | 18 ++++++++++++++---- src/assets/iconMeet.svg | 17 +++++++++++------ src/assets/iconSearch.svg | 18 ++++++++++++++---- src/assets/iconTipped.svg | 2 +- src/assets/iconTips.svg | 27 +++++++++++++++++++++------ src/assets/iconUser.svg | 22 ++++++++++++++-------- src/assets/recharge.gif | Bin 26614 -> 279194 bytes src/assets/soundWave.svg | 2 +- src/assets/textEditFocus.svg | 2 +- src/assets/verifiedUrl.svg | 4 ++-- 20 files changed, 163 insertions(+), 76 deletions(-) diff --git a/src/assets/aeternityLogo.svg b/src/assets/aeternityLogo.svg index 034123010..2cd9e8c6c 100644 --- a/src/assets/aeternityLogo.svg +++ b/src/assets/aeternityLogo.svg @@ -1,8 +1,12 @@ - - diff --git a/src/assets/buttonSave.svg b/src/assets/buttonSave.svg index dfdb4a050..4954ba18c 100644 --- a/src/assets/buttonSave.svg +++ b/src/assets/buttonSave.svg @@ -1,10 +1 @@ - - - - - - - - \ No newline at end of file + diff --git a/src/assets/cookieImg.svg b/src/assets/cookieImg.svg index d4286be43..73f8d6a49 100644 --- a/src/assets/cookieImg.svg +++ b/src/assets/cookieImg.svg @@ -2,8 +2,8 @@ viewBox="0 0 60 56.25"> - - + + diff --git a/src/assets/favicon.svg b/src/assets/favicon.svg index 81ac6993c..8d42c2d0b 100644 --- a/src/assets/favicon.svg +++ b/src/assets/favicon.svg @@ -1 +1,8 @@ - + + + + + + + + diff --git a/src/assets/headerLogo.svg b/src/assets/headerLogo.svg index 6179fa044..296e18ccf 100644 --- a/src/assets/headerLogo.svg +++ b/src/assets/headerLogo.svg @@ -1 +1,15 @@ - \ No newline at end of file + + + Group 36 + + + + + + + + + diff --git a/src/assets/iconActivity.svg b/src/assets/iconActivity.svg index e9f3b551f..9abffc1f6 100644 --- a/src/assets/iconActivity.svg +++ b/src/assets/iconActivity.svg @@ -1,3 +1,15 @@ - - + + + iconActivity + + + + + + + + + + + diff --git a/src/assets/iconChannel.svg b/src/assets/iconChannel.svg index 3faab4ea5..c72dc8872 100644 --- a/src/assets/iconChannel.svg +++ b/src/assets/iconChannel.svg @@ -1,12 +1,15 @@ - - - - - + + + iconChannel + + + + + + + + + + - - - - - diff --git a/src/assets/iconDiamond.svg b/src/assets/iconDiamond.svg index 6222fe6dd..8c6273169 100644 --- a/src/assets/iconDiamond.svg +++ b/src/assets/iconDiamond.svg @@ -1,5 +1,10 @@ - - - - + + + iconDiamond + + + + + + diff --git a/src/assets/iconDrawer.svg b/src/assets/iconDrawer.svg index fc3e5a9c9..ed2abf9b2 100644 --- a/src/assets/iconDrawer.svg +++ b/src/assets/iconDrawer.svg @@ -1,4 +1,4 @@ - - + + diff --git a/src/assets/iconGovernance.svg b/src/assets/iconGovernance.svg index 2cacb5912..45c3fcbd8 100644 --- a/src/assets/iconGovernance.svg +++ b/src/assets/iconGovernance.svg @@ -1,6 +1,11 @@ - - - - - + + + iconGovernance + + + + + + + diff --git a/src/assets/iconHelp.svg b/src/assets/iconHelp.svg index 05fcf8bef..563fb5cb5 100644 --- a/src/assets/iconHelp.svg +++ b/src/assets/iconHelp.svg @@ -1,5 +1,15 @@ - - - - + + + iconHelp + + + + + + + + + + + diff --git a/src/assets/iconMeet.svg b/src/assets/iconMeet.svg index 03391abd2..8c3a4a10e 100644 --- a/src/assets/iconMeet.svg +++ b/src/assets/iconMeet.svg @@ -1,6 +1,11 @@ - - - - - - \ No newline at end of file + + + iconMeet + + + + + + + + diff --git a/src/assets/iconSearch.svg b/src/assets/iconSearch.svg index d3192c79a..a4c8d7a06 100644 --- a/src/assets/iconSearch.svg +++ b/src/assets/iconSearch.svg @@ -1,5 +1,15 @@ - - - - + + + iconSearch + + + + + + + + + + + diff --git a/src/assets/iconTipped.svg b/src/assets/iconTipped.svg index 7ffcf5d6f..4704f1525 100644 --- a/src/assets/iconTipped.svg +++ b/src/assets/iconTipped.svg @@ -1,7 +1,7 @@ - + diff --git a/src/assets/iconTips.svg b/src/assets/iconTips.svg index ad33ce098..8f7555050 100644 --- a/src/assets/iconTips.svg +++ b/src/assets/iconTips.svg @@ -1,7 +1,22 @@ - - + + + iconTips + + + + + + + + + + + + + + + + + + diff --git a/src/assets/iconUser.svg b/src/assets/iconUser.svg index 3595da8f8..26020f5fe 100644 --- a/src/assets/iconUser.svg +++ b/src/assets/iconUser.svg @@ -1,9 +1,15 @@ - - + + + iconUser + + + + + + + + + + + diff --git a/src/assets/recharge.gif b/src/assets/recharge.gif index 470d440f58e7eb9f56ca0730d6b3459e1c6aa050..3b17d77a133f85602e0a0ceec82c4fa156ed8156 100644 GIT binary patch literal 279194 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

~R!MOv7HbZn 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

2PVm=L7?uLaO#zeh?)qJByA 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

Khissb+z<-Y0xe%&>*@syXnqQo{#g0q?k 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ⅅ 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 literal 26614 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 \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/textEditFocus.svg b/src/assets/textEditFocus.svg index e39a02a98..e1227362e 100644 --- a/src/assets/textEditFocus.svg +++ b/src/assets/textEditFocus.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/assets/verifiedUrl.svg b/src/assets/verifiedUrl.svg index 8ce243a91..930801af8 100644 --- a/src/assets/verifiedUrl.svg +++ b/src/assets/verifiedUrl.svg @@ -1,9 +1,9 @@ - + - + From b0b578c7bf092963b5eee50e301cd748ef5b4689 Mon Sep 17 00:00:00 2001 From: maxkpower Date: Thu, 26 Nov 2020 09:57:45 +0300 Subject: [PATCH 093/242] Implement new Brand Identity --- src/components/AlertModal.vue | 2 +- src/components/CookiesDialog.vue | 6 ++--- src/components/TipInput.vue | 2 +- src/components/UserCard.vue | 2 +- src/components/UserInfo.vue | 16 ++++++++++--- src/components/layout/FooterSection.vue | 2 +- src/components/layout/Navigation.vue | 3 +-- src/components/layout/RightSection.vue | 2 +- src/components/tipRecords/TipComment.vue | 2 +- src/components/tipRecords/TipCommentList.vue | 2 +- src/components/tipRecords/TipPreview.vue | 4 ++-- src/locales/en.json | 2 +- src/styles/_variables.scss | 25 ++++++++++---------- src/utils/index.js | 2 +- src/views/Maintenance.vue | 5 ++-- 15 files changed, 43 insertions(+), 34 deletions(-) diff --git a/src/components/AlertModal.vue b/src/components/AlertModal.vue index 835def929..318a4e331 100644 --- a/src/components/AlertModal.vue +++ b/src/components/AlertModal.vue @@ -62,7 +62,7 @@ export default { margin: 0 auto; padding: 2.5rem 2.5rem; background-color: $actions_ribbon_background_color; - border-radius: 0.5rem; + border-radius: 0.25rem; box-shadow: 0 0.1rem 0.4rem rgba(0, 0, 0, 0.33); img { diff --git a/src/components/CookiesDialog.vue b/src/components/CookiesDialog.vue index d66ebbe19..1a3ae0dbd 100644 --- a/src/components/CookiesDialog.vue +++ b/src/components/CookiesDialog.vue @@ -55,7 +55,7 @@ export default { left: -4%; background-color: $buttons_background; border: 1px solid $article_content_color; - border-radius: 0.5rem; + border-radius: 0.25rem; width: 108%; padding: 1rem; cursor: default; @@ -88,7 +88,7 @@ export default { .cookies-button { border: 1px solid $secondary_color; - border-radius: 0.5rem; + border-radius: 0.25rem; font-weight: 500; color: $secondary_color; padding: 0.35rem 0.7rem; @@ -96,7 +96,7 @@ export default { margin: 0.5rem 0.5rem 0.5rem 0; &:hover { - background-color: #2a9cff50; + background-color: #1161fe50; } } } diff --git a/src/components/TipInput.vue b/src/components/TipInput.vue index 57f975f81..f249a472e 100644 --- a/src/components/TipInput.vue +++ b/src/components/TipInput.vue @@ -256,7 +256,7 @@ export default { .not-bootstrap-modal > ::v-deep .not-bootstrap-modal-content { background-color: $article_content_color; - border-radius: 0.5rem; + border-radius: 0.25rem; margin-top: 0.25rem; min-width: 19rem; padding: 1rem; diff --git a/src/components/UserCard.vue b/src/components/UserCard.vue index 2eb42f7c3..2bf4bf093 100644 --- a/src/components/UserCard.vue +++ b/src/components/UserCard.vue @@ -24,7 +24,7 @@ export default { diff --git a/src/components/tipRecords/TipComment.vue b/src/components/tipRecords/TipComment.vue index d8faa13a8..03678ccdc 100644 --- a/src/components/tipRecords/TipComment.vue +++ b/src/components/tipRecords/TipComment.vue @@ -60,7 +60,7 @@ export default { .tip-comment { margin-bottom: 0.5rem; padding: 1rem; - border-radius: 0.5rem; + border-radius: 0.25rem; background-color: $light_color; @include smallest { diff --git a/src/components/tipRecords/TipCommentList.vue b/src/components/tipRecords/TipCommentList.vue index 1c79e95d7..ee8f0e360 100644 --- a/src/components/tipRecords/TipCommentList.vue +++ b/src/components/tipRecords/TipCommentList.vue @@ -44,7 +44,7 @@ export default { From d59197013764ef395be0fa2c7f4b1edf3786d5ed Mon Sep 17 00:00:00 2001 From: Stanislav Slavov Date: Thu, 7 Jan 2021 15:14:48 +0200 Subject: [PATCH 094/242] Added a new arrow back icon --- src/assets/backArrow.svg | 5 +++-- src/components/BackButtonRibbon.vue | 9 ++------- src/components/MessageInput.vue | 2 -- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/assets/backArrow.svg b/src/assets/backArrow.svg index 11e0fc80a..c62ee84aa 100644 --- a/src/assets/backArrow.svg +++ b/src/assets/backArrow.svg @@ -1,3 +1,4 @@ - - + + + diff --git a/src/components/BackButtonRibbon.vue b/src/components/BackButtonRibbon.vue index 01c07f579..71b174d3c 100644 --- a/src/components/BackButtonRibbon.vue +++ b/src/components/BackButtonRibbon.vue @@ -61,13 +61,8 @@ export default { justify-content: flex-start; } - img { - width: 1rem; - height: 1rem; - - &:hover { - cursor: pointer; - } + img:hover { + cursor: pointer; } .title { diff --git a/src/components/MessageInput.vue b/src/components/MessageInput.vue index 75e23bdfb..ae17029dc 100644 --- a/src/components/MessageInput.vue +++ b/src/components/MessageInput.vue @@ -109,9 +109,7 @@ export default { padding-right: 0.25rem; img { - width: 0.8rem; transform: rotate(180deg); - vertical-align: baseline; } } From 7bea0cf1b35c8393ac2f14f1fe43f79fb2ea4e05 Mon Sep 17 00:00:00 2001 From: Stanislav Slavov Date: Thu, 7 Jan 2021 16:48:37 +0200 Subject: [PATCH 095/242] Updated message input field designs --- src/components/MessageInput.vue | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/src/components/MessageInput.vue b/src/components/MessageInput.vue index ae17029dc..f60f4dcad 100644 --- a/src/components/MessageInput.vue +++ b/src/components/MessageInput.vue @@ -51,32 +51,33 @@ export default { display: flex; &:focus-within .arrow { - border: 0.05rem solid $secondary_color; + border: 1px solid $secondary_color; border-top: none; border-right: none; + background-color: $background_color; } .arrow { flex-shrink: 0; - height: 0.8rem; - width: 0.8rem; + height: 16px; + width: 16px; background-color: $buttons_background; transform: rotate(45deg); - border-bottom-left-radius: 0.2rem; - margin-top: 0.6rem; - margin-left: 0.6rem; - margin-right: -0.4rem; + margin-top: 12px; + margin-left: 12px; + margin-right: -8px; } .text-box { flex-grow: 1; background-color: $buttons_background; display: flex; - border: 0.05rem solid transparent; - border-radius: 0.25rem; + border: 1px solid transparent; + border-radius: 6px; &:focus-within { border-color: $secondary_color; + background-color: $background_color; } textarea, @@ -90,14 +91,14 @@ export default { textarea { flex-grow: 1; color: $standard_font_color; - height: 2.1rem; - font-size: 0.75rem; - line-height: 1.25rem; - padding: 0.375rem 0.25rem 0.375rem 0.75rem; + height: 38px; + font-size: 14px; + line-height: 22.65px; + padding: 8.5px 16px; resize: none; &::placeholder { - color: #6c757c; + color: $light_font_color; } &:disabled { @@ -106,7 +107,7 @@ export default { } button { - padding-right: 0.25rem; + padding-right: 5px; img { transform: rotate(180deg); @@ -115,7 +116,7 @@ export default { .spinner-border { align-self: center; - margin: 0 0.4rem; + margin: 0 8px; } } } From d25ef4a8d60a06330df76340af0a65da189dcdfc Mon Sep 17 00:00:00 2001 From: Stanislav Slavov Date: Thu, 7 Jan 2021 18:40:53 +0200 Subject: [PATCH 096/242] Updated SearchInput --- src/components/layout/SearchInput.vue | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/src/components/layout/SearchInput.vue b/src/components/layout/SearchInput.vue index f898be9de..da40dae7f 100644 --- a/src/components/layout/SearchInput.vue +++ b/src/components/layout/SearchInput.vue @@ -63,11 +63,12 @@ export default {
- {{ showTokenAmount(option.balance, option.token) }} + {{ + showTokenAmount(option.balance, option.token) + }} span.append-ae { - input:focus ~ .input-group-append, - input:focus ~ .input-group-append .input-group-text { - background-color: $background_color; - } + input:focus ~ .input-group-append, + input:focus ~ .input-group-append .input-group-text { + background-color: $background_color; + } - .input-group-append > span.append__ae { - font-size: 0.75rem; - background: $buttons_background; - cursor: default; + .input-group-append > span.append__ae { + font-size: 0.75rem; + background: $buttons_background; + cursor: default; - .symbol { - color: $secondary_color; + .symbol { + color: $secondary_color; + } } - } - .token-option { - display: flex; - align-items: center; - min-width: 240px; - max-width: 300px; + .token-option { + display: flex; + align-items: center; + min-width: 240px; + max-width: 300px; - > div:first-child { - flex-grow: 1; + > div:first-child { + flex-grow: 1; + } } - } - .tokens-amount { - color: $tip-note-color; - margin-right: 0.1rem; - } + .tokens-amount { + color: $tip-note-color; + margin-right: 0.1rem; + } - .dropdown::v-deep { - border-radius: 50%; + .dropdown::v-deep { + border-radius: 50%; - > button { - background-color: transparent; - height: 42px; - margin-left: -16px; - } + > button { + background-color: transparent; + height: 42px; + margin-left: -16px; + } - .not-bootstrap-modal-content { - margin-top: 5px; + .not-bootstrap-modal-content { + margin-top: 5px; + } } } } diff --git a/src/components/UserInfo.vue b/src/components/UserInfo.vue index 35ab81d16..e7e33b10d 100644 --- a/src/components/UserInfo.vue +++ b/src/components/UserInfo.vue @@ -463,13 +463,8 @@ input[type="file"] { } } -<<<<<<< HEAD - .avatar-button { - background: #2a9cffa8; -======= .avatar__button { background: #1161fea8; ->>>>>>> bb18b8de... Implement new Brand Identity bottom: 0; left: 0; position: absolute; @@ -506,13 +501,8 @@ input[type="file"] { } } -<<<<<<< HEAD - .save-button { - background: #67f7b8a8; -======= .save__button { background: #00ff9da8; ->>>>>>> bb18b8de... Implement new Brand Identity &:hover { background: #00ff9dcc; From c94db14b2b32b91aab2b90a9773511d0b32c33d8 Mon Sep 17 00:00:00 2001 From: Milen Radkov Date: Thu, 21 Jan 2021 17:04:34 +0200 Subject: [PATCH 100/242] fix: broken amount input style --- src/components/AeInputAmount.vue | 74 ++++++++++++++------------------ 1 file changed, 33 insertions(+), 41 deletions(-) diff --git a/src/components/AeInputAmount.vue b/src/components/AeInputAmount.vue index 38bca57dc..8bedfd49f 100644 --- a/src/components/AeInputAmount.vue +++ b/src/components/AeInputAmount.vue @@ -127,16 +127,15 @@ export default { From 20d158085a9fd772332e73524d16415c34acffd7 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 4 Sep 2020 12:12:12 +0200 Subject: [PATCH 105/242] satisfy linter --- src/views/WordBazaar.vue | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index ea87f096f..a4ca6b26d 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -1,11 +1,14 @@ @@ -99,16 +31,16 @@ import WORD_REGISTRY_CONTRACT from 'wordbazaar-contracts/WordRegistry.aes'; import FUNGIBLE_TOKEN_CONTRACT from 'wordbazaar-contracts/FungibleTokenCustom.aes'; import TOKEN_SALE_CONTRACT from 'wordbazaar-contracts/TokenSale.aes'; -import TOKEN_VOTING_CONTRACT from 'wordbazaar-contracts/TokenVoting.aes'; -import { client, createOrChangeAllowance } from '@/utils/aeternity'; +import { client } from '@/utils/aeternity'; import backend from '@/utils/backend'; -import util from '@/utils/util'; -import { EventBus } from '@/utils/eventBus'; import { mapState } from 'vuex'; -import BigNumber from 'bignumber.js'; +import WordListing from '@/components/WordListing.vue'; export default { name: 'WordBazaar', + components: { + WordListing, + }, data: () => ({ newWord: '', words: [], @@ -131,9 +63,8 @@ export default { async updateWords() { this.wordRegistry = await client .getContractInstance(WORD_REGISTRY_CONTRACT, - { contractAddress: 'ct_2t35yjUT4Bh3sLkTqaXNnZeH1gqnn55JB8UX2dM5XLi6ea6UyE' }); + { contractAddress: 'ct_UXU3jSUHS2Zy1YkqUBjm1Aw31uBmc6bHKMmwPMRt8N9sN7HmW' }); this.wordRegistryState = (await this.wordRegistry.methods.get_state()).decodedResult; - // this.selectWord(this.wordRegistryState.tokens[0][0], this.wordRegistryState.tokens[0][1]); }, async createWordSale() { const tokenSale = await client.getContractInstance(TOKEN_SALE_CONTRACT); @@ -146,104 +77,6 @@ export default { await this.wordRegistry.methods.add_token(tokenSale.deployInfo.address); await this.updateWords(); }, - async selectWord(word, sale) { - this.selectedWordContract = await client - .getContractInstance(TOKEN_SALE_CONTRACT, { contractAddress: sale }); - this.spread = util.shiftDecimalPlaces( - (await this.selectedWordContract.methods.spread()).decodedResult, -18, - ).toFixed(); - this.votes = await Promise.all((await this.selectedWordContract.methods.votes()).decodedResult - .map(([id, vote]) => this.getVoteInfo(id, vote[1], vote[0]))); - this.selectedWord = word; - }, - async getVoteInfo(id, vote, alreadyApplied) { - const tokenVoting = await client.getContractInstance(TOKEN_VOTING_CONTRACT, - { contractAddress: vote }); - const state = (await tokenVoting.methods.get_state()).decodedResult; - const voteTimeout = (await this.selectedWordContract.methods.vote_timeout()).decodedResult; - const height = await client.height(); - - const votedFor = state.vote_state.find(([s]) => s)[1]; - const votedAgainst = state.vote_state.find(([s]) => !s)[1]; - const ifAgainstZero = votedFor === 0 ? 0 : 100; - const votedPositive = new BigNumber(votedFor) - .dividedBy(new BigNumber(votedFor).plus(votedAgainst)).times(100).toFixed(0); - const voterAccount = state.vote_accounts.find(([acc]) => acc === this.address); - - return { - id, - alreadyApplied, - instance: tokenVoting, - subject: state.metadata.subject, - timeouted: (state.close_height + voteTimeout) < height, - closeHeight: state.close_height, - accountHasVoted: !!voterAccount, - hasSpread: new BigNumber(this.spread).isGreaterThan(0), - hasWithdrawAmount: voterAccount - && new BigNumber(voterAccount[1][0]).isGreaterThan(0) && !voterAccount[1][2], - isClosed: height >= state.close_height, - votePercent: votedAgainst !== 0 ? votedPositive : ifAgainstZero, - }; - }, - async applyPayout(id) { - await this.selectedWordContract.methods.apply_vote_subject(id); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - EventBus.$emit('reloadData'); - }, - async withdraw(instance) { - await instance.methods.withdraw(); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - EventBus.$emit('reloadData'); - }, - async voteOption(instance, option) { - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; - const tokenContract = await client.getContractInstance(FUNGIBLE_TOKEN_CONTRACT, - { contractAddress: token }); - - const amount = (await tokenContract.methods.balance(this.address)).decodedResult; - await createOrChangeAllowance(token, amount, - instance.deployInfo.address.replace('ct_', 'ak_')); - - await instance.methods.vote(option, amount); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - EventBus.$emit('reloadData'); - }, - async revokeVote(instance) { - await instance.methods.revoke_vote(); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - EventBus.$emit('reloadData'); - }, - async createVote() { - const tokenVoting = await client.getContractInstance(TOKEN_VOTING_CONTRACT); - - const metadata = { - subject: { VotePayout: [this.newVotePayout] }, - description: `Payout spread of ${this.selectedWord} to ${this.newVotePayout}`, - link: 'https://aeternity.com/', - }; - const closeHeight = (await client.height()) + 20; - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; - await tokenVoting.methods.init(metadata, closeHeight, token); - - await this.selectedWordContract.methods.add_vote(tokenVoting.deployInfo.address); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - }, - async buy() { - await this.selectedWordContract.methods - .buy({ amount: util.shiftDecimalPlaces(this.buyAmount, 18).toFixed() }); - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; - await backend.invalidateTokenCache(token); - EventBus.$emit('reloadData'); - }, - async sell() { - const amount = util.shiftDecimalPlaces(this.sellAmount, 18).toFixed(); - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; - await createOrChangeAllowance(token, amount, - this.selectedWordContract.deployInfo.address.replace('ct_', 'ak_')); - await this.selectedWordContract.methods.sell(amount); - EventBus.$emit('reloadData'); - await this.selectWord(this.selectedWord, this.selectedWordContract.deployInfo.address); - }, }, }; diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue new file mode 100644 index 000000000..15ee67990 --- /dev/null +++ b/src/views/WordDetail.vue @@ -0,0 +1,196 @@ + + + + + From c3a50faad9a476ffd39afc86389dc58bb2dda6ca Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 25 Sep 2020 15:18:50 +0200 Subject: [PATCH 117/242] style adjustments --- src/components/WordListing.vue | 97 +++++++++++++++++++++------------- src/views/WordBazaar.vue | 4 +- 2 files changed, 63 insertions(+), 38 deletions(-) diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index ac5ac03bc..575fe067d 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -8,7 +8,7 @@ {{ word }}
-
+
-
- {{ totalSupply }} +
+ -
Account Balance
- -
Amount buying
+
Account Balance
+ +
Amount buying
-
Total you pay
+
Total you pay
-
+
-
Account Balance
- -
Amount selling
+
Account Balance
+ +
Amount selling
-
Total you get
+
Total you get
-
+
({ + contract: null, buyPrice: null, sellPrice: null, buyAmount: 0, sellAmount: 0, spread: 0, totalSupply: null, + tokenAddress: null, showBuyModal: false, showSellModal: false, }), computed: { - ...mapState(['address', 'balance']), + ...mapState(['address', 'balance', 'tokenBalances']), + tokenBalance() { + const balance = this.tokenBalances && this.tokenAddress + && this.tokenBalances.find((t) => t.token === this.tokenAddress); + + return balance ? balance.balance : '0'; + }, }, mounted() { - this.selectWord(this.word, this.sale); + this.loadWordData(); }, methods: { - async selectWord(word, sale) { - this.selectedWordContract = await client - .getContractInstance(TOKEN_SALE_CONTRACT, { contractAddress: sale }); + async loadWordData() { + this.contract = this.contract ? this.contract : await client + .getContractInstance(TOKEN_SALE_CONTRACT, { contractAddress: this.sale }); this.spread = util.shiftDecimalPlaces( - (await this.selectedWordContract.methods.spread()).decodedResult, -18, + (await this.contract.methods.spread()).decodedResult, -18, ).toFixed(); - const tokenAddress = (await this.selectedWordContract.methods.get_token()).decodedResult; + this.tokenAddress = (await this.contract.methods.get_token()).decodedResult; const tokenContract = await client - .getContractInstance(FUNGIBLE_TOKEN_CONTRACT, { contractAddress: tokenAddress }); + .getContractInstance(FUNGIBLE_TOKEN_CONTRACT, { contractAddress: this.tokenAddress }); - this.totalSupply = - util.shiftDecimalPlaces( - (await tokenContract.methods.total_supply()).decodedResult, -18, - ).toFixed(); + this.totalSupply = (await tokenContract.methods.total_supply()).decodedResult; - const [buy, sell] = (await this.selectedWordContract.methods.prices()).decodedResult; + const [buy, sell] = (await this.contract.methods.prices()).decodedResult; this.buyPrice = 1 / buy; this.sellPrice = 1 / sell; }, async buy() { - await this.selectedWordContract.methods + await this.contract.methods .buy({ amount: util.shiftDecimalPlaces(this.buyAmount, 18).toFixed() }); - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; + const token = (await this.contract.methods.get_token()).decodedResult; await backend.invalidateTokenCache(token); EventBus.$emit('reloadData'); - await this.selectWord(this.word, this.sale); + this.loadWordData(); }, async sell() { const amount = util.shiftDecimalPlaces(this.sellAmount, 18).toFixed(); - const token = (await this.selectedWordContract.methods.get_token()).decodedResult; + const token = (await this.contract.methods.get_token()).decodedResult; await createOrChangeAllowance(token, amount, - this.selectedWordContract.deployInfo.address.replace('ct_', 'ak_')); - await this.selectedWordContract.methods.sell(amount); + this.contract.deployInfo.address.replace('ct_', 'ak_')); + await this.contract.methods.sell(amount); EventBus.$emit('reloadData'); - await this.selectWord(this.word, this.sale); + this.loadWordData(); }, }, }; diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index c1a0a64db..981272c68 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -10,8 +10,8 @@
Asset
-
Price
-
Supply
+
Price
+
Supply
Market
Date: Fri, 25 Sep 2020 15:23:18 +0200 Subject: [PATCH 118/242] optimizations --- src/components/WordListing.vue | 36 +++++++++++++++++++++++----------- src/views/WordBazaar.vue | 16 +++++++++++---- src/views/WordDetail.vue | 22 +++++++++------------ 3 files changed, 46 insertions(+), 28 deletions(-) diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index 575fe067d..57f2480bd 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -22,7 +22,8 @@ + :token="tokenAddress" + /> -
Account Balance
+
+ Account Balance +
-
Amount buying
+
+ Amount buying +
-
Total you pay
- +
+ Total you pay +
+
-
Account Balance
+
+ Account Balance +
-
Amount selling
+
+ Amount selling +
-
Total you get
- +
+ Total you get +
+
-
Asset
-
Price
-
Supply
-
Market
+
+ Asset +
+
+ Price +
+
+ Supply +
+
+ Market +
+ > + +
+ + + + + + + +
+
Asset @@ -22,15 +32,23 @@ Market
-
- + + + +
+
+ +
@@ -43,11 +61,16 @@ import { client } from '@/utils/aeternity'; import backend from '@/utils/backend'; import { mapState } from 'vuex'; import WordListing from '@/components/WordListing.vue'; +import Loading from '@/components/Loading.vue'; +import OutlinedButton from '@/components/OutlinedButton.vue'; +import { EventBus } from '@/utils/eventBus'; export default { name: 'WordBazaar', components: { WordListing, + Loading, + OutlinedButton, }, data: () => ({ newWord: '', @@ -60,6 +83,7 @@ export default { spread: 0, votes: null, newVotePayout: '', + loadingState: true, }), computed: { ...mapState(['address']), @@ -69,22 +93,29 @@ export default { }, methods: { async updateWords() { + this.loadingState = true; this.wordRegistry = await client .getContractInstance(WORD_REGISTRY_CONTRACT, { contractAddress: 'ct_UXU3jSUHS2Zy1YkqUBjm1Aw31uBmc6bHKMmwPMRt8N9sN7HmW' }); this.wordRegistryState = (await this.wordRegistry.methods.get_state()).decodedResult; + this.loadingState = false; }, async createWordSale() { + this.loadingState = true; const tokenSale = await client.getContractInstance(TOKEN_SALE_CONTRACT); await tokenSale.methods.init(20); const token = await client.getContractInstance(FUNGIBLE_TOKEN_CONTRACT); await token.methods.init(`${this.newWord} Token`, 18, this.newWord, tokenSale.deployInfo.address.replace('ct_', 'ak_')); - await backend.addToken(token.deployInfo.address); + this.addToken(token.deployInfo.address); await tokenSale.methods.set_token(token.deployInfo.address); await this.wordRegistry.methods.add_token(tokenSale.deployInfo.address); await this.updateWords(); }, + async addToken(address) { + await backend.addToken(address); + EventBus.$emit('reloadData'); + }, }, }; From d30178a577fc3cb193e9a21e582c072ef96508b9 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 2 Oct 2020 15:14:24 +0200 Subject: [PATCH 120/242] optimize loading --- src/components/WordListing.vue | 28 +++++++++++++++++++++++++--- src/views/WordBazaar.vue | 12 +++++++++--- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index 57f2480bd..ce97f7f35 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -80,7 +80,12 @@ @click="buy" > - Buy + + Buy
@@ -117,7 +122,12 @@ @click="sell" > - Sell + + Sell
@@ -125,7 +135,7 @@ From 2b73a890577027d8c85336a34adee8bdd57cad37 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Sun, 1 Nov 2020 11:55:39 +0100 Subject: [PATCH 127/242] use backend to cache word bazaar data --- src/components/WordListing.vue | 42 ++++++++++++++++------------------ src/utils/backend.js | 8 +++++++ src/views/WordBazaar.vue | 19 ++++++++------- 3 files changed, 39 insertions(+), 30 deletions(-) diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index 74c1e6f76..bc8d0572a 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -135,11 +135,10 @@ diff --git a/src/utils/backend.js b/src/utils/backend.js index 11c941d7c..08587b419 100644 --- a/src/utils/backend.js +++ b/src/utils/backend.js @@ -130,6 +130,10 @@ export default class Backend { static getTokenInfo = async () => backendFetch('tokenCache/tokenInfo'); + static getWordRegistry = async () => backendFetch('tokenCache/wordRegistry'); + + static getWordSale = async (address) => backendFetch(`tokenCache/wordSale?address=${address}`); + static getTokenBalances = async (address) => backendFetch(`tokenCache/balances?address=${address}`); static getWordSaleDetailsByToken = async (address) => backendFetch(`tokenCache/wordSaleByToken?address=${address}`); @@ -138,6 +142,10 @@ export default class Backend { static invalidateTokenCache = async (token) => backendFetch(`cache/invalidate/token/${token}`); + static invalidateWordSaleCache = async (wordSale) => backendFetch(`cache/invalidate/wordSale/${wordSale}`); + + static invalidateWordRegistryCache = async () => backendFetch('cache/invalidate/wordRegistry'); + static getCommentCountForAddress = async (address) => backendFetch(`comment/count/author/${address}`); static getTipPreviewUrl = (previewLink) => `${process.env.VUE_APP_BACKEND_URL}${previewLink}`; diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index a3bdb802e..ce84a6930 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -71,7 +71,7 @@ import TOKEN_SALE_CONTRACT from 'wordbazaar-contracts/TokenSale.aes'; import BONDING_CURVE_MOCK from 'wordbazaar-contracts/BondingCurveMock.aes'; import { mapState } from 'vuex'; import { client } from '../utils/aeternity'; -import backend from '../utils/backend'; +import Backend from '../utils/backend'; import WordListing from '../components/WordListing.vue'; import Loading from '../components/Loading.vue'; import OutlinedButton from '../components/OutlinedButton.vue'; @@ -104,15 +104,12 @@ export default { ...mapState(['address']), }, mounted() { - setTimeout(this.updateWords, 5000); + this.updateWords(); }, methods: { async updateWords() { this.loadingState = true; - this.wordRegistry = await client - .getContractInstance(WORD_REGISTRY_CONTRACT, - { contractAddress: process.env.VUE_APP_WORD_REGISTRY_ADDRESS }); - this.wordRegistryState = (await this.wordRegistry.methods.get_state()).decodedResult; + this.wordRegistryState = await Backend.getWordRegistry(); this.loadingState = false; this.newWord = ''; }, @@ -132,12 +129,18 @@ export default { this.createProgressText = `Please confirm popup 4 of 5\n\n Registering ${this.newWord} Token for sale`; await tokenSale.methods.set_token(token.deployInfo.address); this.createProgressText = `Please confirm popup 5 of 5\n\n Adding Token Sale for ${this.newWord} to Word Bazaar`; - await this.wordRegistry.methods.add_token(tokenSale.deployInfo.address); + + const wordRegistry = await client + .getContractInstance(WORD_REGISTRY_CONTRACT, + { contractAddress: process.env.VUE_APP_WORD_REGISTRY_ADDRESS }); + await wordRegistry.methods.add_token(tokenSale.deployInfo.address); + await Backend.invalidateWordRegistryCache(); + await this.updateWords(); this.createProgressText = null; }, async addToken(address) { - await backend.addToken(address); + await Backend.addToken(address); EventBus.$emit('reloadData'); }, }, From 839bc9bc4abb17e993ebd3caedcfe9cd6517865d Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Sat, 7 Nov 2020 09:37:17 +0100 Subject: [PATCH 128/242] fetch worddetail info from cache --- src/views/WordDetail.vue | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 00c3f6757..75b985d98 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -60,7 +60,6 @@ + + diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index bc8d0572a..34bc95092 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -30,107 +30,7 @@ />
-
- - - Buy - - - - - Sell - -
- - -
- Account Balance -
- -
- Amount buying -
-
- -
-
- Total you pay -
- -
- - - - Buy - -
-
- - -
- Account Balance -
- -
- Amount selling -
-
- -
-
- Total you get -
- -
- - - - Sell - -
-
+
@@ -142,19 +42,15 @@ import Backend from '../utils/backend'; import { EventBus } from '../utils/eventBus'; import AeAmount from './AeAmount.vue'; import Loading from './Loading.vue'; -import OutlinedButton from './OutlinedButton.vue'; -import Modal from './Modal.vue'; -import AeAmountFiat from './AeAmountFiat.vue'; import { shiftDecimalPlaces } from '../utils'; +import WordBuySellButtons from './WordBuySellButtons.vue'; export default { name: 'WordListing', components: { - AeAmountFiat, + WordBuySellButtons, AeAmount, Loading, - OutlinedButton, - Modal, }, props: { word: { type: String, required: true }, @@ -245,18 +141,6 @@ h2 { margin-top: 1rem; } -.not-bootstrap-modal ::v-deep .not-bootstrap-modal-content { - background-color: $article_content_color; - border-radius: 0.5rem; - margin: 1.9rem -13.6rem; - padding: 1rem; - - @include smallest { - min-width: 16rem; - padding: 0.5rem; - } -} - .label { color: $light_font_color; font-size: 0.7rem; diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 75b985d98..5bb60c0ab 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -1,9 +1,12 @@ @@ -207,7 +200,7 @@ export default { .not-bootstrap-modal ::v-deep .not-bootstrap-modal-content { background-color: $article_content_color; border-radius: 0.5rem; - margin: 1.9rem -13.6rem; + margin: 0rem -6.3rem; padding: 1rem; @include smallest { diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index 34bc95092..e370edf13 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -35,14 +35,10 @@ - From 208d8cd51aaf480814ba39b795f5aa3e30f32046 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 13 Nov 2020 09:22:45 +0100 Subject: [PATCH 140/242] design fix rem sizes --- src/assets/iconClaimBack.svg | 3 +++ src/views/WordDetail.vue | 50 +++++++++++++++++++----------------- 2 files changed, 29 insertions(+), 24 deletions(-) create mode 100644 src/assets/iconClaimBack.svg diff --git a/src/assets/iconClaimBack.svg b/src/assets/iconClaimBack.svg new file mode 100644 index 000000000..6562b4bad --- /dev/null +++ b/src/assets/iconClaimBack.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index f0ddf8926..285dcfa91 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -142,7 +142,7 @@ :v-if="!vote.isClosed && vote.accountHasVoted" @click="revokeVote(vote.voteAddress)" > - Revoke + Revoke
@@ -200,6 +200,7 @@ import BackButtonRibbon from '../components/BackButtonRibbon.vue'; import WordBuySellButtons from '../components/WordBuySellButtons.vue'; import IconPie from '../assets/iconPie.svg?icon-component'; import IconInfo from '../assets/iconInfo.svg?icon-component'; +import IconClaimBack from '../assets/iconClaimBack.svg?icon-component'; import AeAmount from '../components/AeAmount.vue'; import ActivityRibbon from '../components/ActivityRibbon.vue'; import TabBar from '../components/TabBar.vue'; @@ -216,6 +217,7 @@ export default { BackButtonRibbon, AeInputAmount, AeButton, + IconClaimBack, }, data: () => ({ wordRegistryState: null, @@ -330,14 +332,6 @@ export default { diff --git a/src/locales/en.json b/src/locales/en.json index 12e1b37f3..13ff0c433 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -464,7 +464,7 @@ "feed": "Feed", "MyProfile": "My Profile", "League": "League", - "WordBazaar": "Word Bazaar", + "WordBazaar": "WordBazaar", "Governance": "Voting" }, "Overview": { diff --git a/src/locales/fr.json b/src/locales/fr.json index dd248adce..0a52f2fc7 100644 --- a/src/locales/fr.json +++ b/src/locales/fr.json @@ -460,7 +460,7 @@ "Navigation": { "MyProfile": "Mon Profil", "League": "Ligue", - "WordBazaar": "Mot Bazar", + "WordBazaar": "MotBazar", "Governance": "Voter" }, "Overview": { diff --git a/src/router.js b/src/router.js index cb9c6f34b..063aec4d1 100644 --- a/src/router.js +++ b/src/router.js @@ -54,7 +54,7 @@ const routes = [ name: 'wordbazaar', component: WordBazaar, meta: { - title: 'Word Bazaar', + title: 'WordBazaar', }, props: true, }, diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index 51011a5ab..0de8b1c45 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -1,10 +1,22 @@ @@ -66,12 +46,10 @@ import { mapState } from 'vuex'; import Backend from '../utils/backend'; import WordListing from '../components/WordListing.vue'; import Loading from '../components/Loading.vue'; -import OutlinedButton from '../components/OutlinedButton.vue'; -import { EventBus } from '../utils/eventBus'; -import Modal from '../components/Modal.vue'; import BackButtonRibbon from '../components/BackButtonRibbon.vue'; import ActivityRibbon from '../components/ActivityRibbon.vue'; import TabBar from '../components/TabBar.vue'; +import CreateToken from '../components/CreateToken.vue'; import IconHelp2 from '../assets/iconHelp2.svg?icon-component'; import IconTokens from '../assets/iconTokens.svg?icon-component'; import IconPlus from '../assets/iconPlus.svg?icon-component'; @@ -82,29 +60,26 @@ export default { components: { WordListing, Loading, - OutlinedButton, - Modal, BackButtonRibbon, ActivityRibbon, TabBar, + CreateToken, }, data: () => ({ - newWord: '', - words: [], wordRegistryState: null, - selectedWord: null, - selectedWordContract: null, - buyAmount: 0, - sellAmount: 0, - spread: 0, - votes: null, - newVotePayout: '', - loadingState: true, - createProgressText: null, activity: 'assets', activeTab: 'all', - ribbonTabs: [{ icon: IconTokens, text: 'Assets', activity: 'assets' }, { icon: IconPlus, text: 'Create token', activity: 'create' }, { icon: IconAe, text: 'Get AE', activity: 'getae' }, { icon: IconHelp2, text: 'How it works', activity: 'how' }], - tabs: [{ text: 'All tokens', tab: 'all' }, { text: 'Trending', tab: 'trending' }, { text: 'Recent', tab: 'recent' }], + ribbonTabs: [ + { icon: IconTokens, text: 'Assets', activity: 'assets' }, + { icon: IconPlus, text: 'Create token', activity: 'create' }, + { icon: IconAe, text: 'Get AE', activity: 'getae' }, + { icon: IconHelp2, text: 'How it works', activity: 'how' }, + ], + tabs: [ + { text: 'All tokens', tab: 'all' }, + { text: 'Trending', tab: 'trending' }, + { text: 'Recent', tab: 'recent' }, + ], }), computed: { ...mapState(['address']), @@ -114,37 +89,7 @@ export default { }, methods: { async updateWords() { - this.loadingState = true; this.wordRegistryState = await Backend.getWordRegistry(); - this.loadingState = false; - this.newWord = ''; - }, - async createWordSale() { - this.loadingState = true; - this.createProgressText = `Please confirm popup 1 of 5\n\n Creating Bonding Curve Contract for sale of ${this.newWord} Tokens`; - const bondingCurve = await this.$store.dispatch('deployBondingCurve'); - this.createProgressText = `Please confirm popup 2 of 5\n\n Creating Token Sale Contract for ${this.newWord} Tokens`; - const tokenSaleAddress = await this.$store.dispatch('deployTokenSaleContract', - 20, bondingCurve.deployInfo.address); - - this.createProgressText = `Please confirm popup 3 of 5\n\n Creating ${this.newWord} Token Contract`; - const fungibleTokenAddress = await this.$store.dispatch('deployFungibleTokenContract', `${this.newWord} Token`, 18, this.newWord, - tokenSaleAddress.replace('ct_', 'ak_')); - - this.addToken(fungibleTokenAddress); - this.createProgressText = `Please confirm popup 4 of 5\n\n Registering ${this.newWord} Token for sale`; - await this.$store.dispatch('tokenSaleMethod', this.saleContractAddress, 'set_token', fungibleTokenAddress); - this.createProgressText = `Please confirm popup 5 of 5\n\n Adding Token Sale for ${this.newWord} to Word Bazaar`; - - await this.$store.dispatch('wordRegistryAddToken', tokenSaleAddress); - await Backend.invalidateWordRegistryCache(); - - await this.updateWords(); - this.createProgressText = null; - }, - async addToken(address) { - await Backend.addToken(address); - EventBus.$emit('reloadData'); }, }, }; @@ -159,13 +104,4 @@ a { h2 { margin-top: 1rem; } - -.not-bootstrap-modal ::v-deep .not-bootstrap-modal-content { - background-color: $article_content_color; - border-radius: 0.5rem; - margin: 0 -33rem; - white-space: pre-line; - padding: 1rem; - width: 34rem; -} diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 797dc962c..08ef0242f 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -341,7 +341,7 @@ export default { }, async loadVotes() { let votes = await Backend.getWordSaleVotesDetails(this.saleContractAddress); - const height = await getClient().then((client) => client.height()); + const height = await this.$store.dispatch('getHeight'); votes = votes.map((vote) => { const voterAccount = vote.voteAccounts.find(([acc]) => acc === this.address); From 37e21574a10b0efe730a8fb92b66534acd6196ce Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Wed, 9 Dec 2020 17:07:31 +0100 Subject: [PATCH 153/242] add steps to create token --- src/components/CreateToken.vue | 86 +++++++++++++++++++++++++--------- 1 file changed, 64 insertions(+), 22 deletions(-) diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index 287a4a2f4..461a51c32 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -1,27 +1,37 @@ @@ -47,6 +57,7 @@ export default { data: () => ({ newWord: '', loadingState: false, + step: 1, createProgressText: null, }), methods: { @@ -83,6 +94,37 @@ export default { diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index b2a574e2a..27008cbcb 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -138,7 +138,7 @@ export default { background-color: $light_color; display: flex; - .heading-text.active{ + .heading-text.active { color: $custom_links_color; } From 6ace092c4cf9c6f4fa6fe337220d6b6b1ede1861 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 11 Dec 2020 12:28:26 +0100 Subject: [PATCH 155/242] use updated bonding curve contract --- package-lock.json | 37 +++++++++- package.json | 2 +- src/components/CreateToken.vue | 27 +++++--- src/components/WordBuySellButtons.vue | 84 +++++++++++++++++++---- src/store/modules/aeternity.js | 99 +++++++++++++++++---------- src/views/WordBazaar.vue | 2 +- src/views/WordDetail.vue | 38 ++++++---- 7 files changed, 214 insertions(+), 75 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4e0923272..f03c8f795 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7123,6 +7123,11 @@ "domelementtype": "1" } }, + "dot-notes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/dot-notes/-/dot-notes-3.1.1.tgz", + "integrity": "sha1-eufhqUgTRSnzdosvsT9Mj6kqV88=" + }, "dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", @@ -10935,6 +10940,14 @@ "html-escaper": "^2.0.0" } }, + "it-each": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/it-each/-/it-each-0.4.0.tgz", + "integrity": "sha512-fbOxSUiOByQnkgoFUEKPfzAuoUZ0mQRAXdWWsfI53gMJZ2oyhPcJBOCFx8yuMM36yP6OUUL3LgilYEqBiSACmQ==", + "requires": { + "dot-notes": "3.1.1" + } + }, "javascript-stringify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-2.0.1.tgz", @@ -17055,6 +17068,27 @@ } } }, + "sophia-bonding-curve": { + "version": "github:mradkov/BondingCurve#fddf1b36f15af68c223cedc8fd05a1f75ea6f774", + "from": "github:mradkov/BondingCurve", + "requires": { + "@aeternity/aepp-sdk": "^7.5.0", + "aeproject-lib": "^2.2.0", + "bignumber.js": "^9.0.0", + "esm": "^3.2.25", + "it-each": "^0.4.0" + }, + "dependencies": { + "aeproject-lib": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/aeproject-lib/-/aeproject-lib-2.2.0.tgz", + "integrity": "sha512-M4Dfh7ypiw7904c331BYR+6/YqfZwNI3RUk7mvZZcsq8Erde1pbwJsRQwpz84qiWzg1/xRInzcFpWeOGlC/Z0A==", + "requires": { + "typescript": "^3.5.2" + } + } + } + }, "sort-keys": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", @@ -20355,7 +20389,8 @@ "aeternity-fungible-token": "github:mradkov/aeternity-fungible-token", "bignumber.js": "^9.0.0", "chai": "^4.2.0", - "esm": "^3.2.25" + "esm": "^3.2.25", + "sophia-bonding-curve": "github:mradkov/BondingCurve" }, "dependencies": { "@aeternity/aepp-sdk": { diff --git a/package.json b/package.json index 94454b73a..30c887c81 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,7 @@ "jdenticon": "^2.2.0", "jitsi-iframe-api": "^1.0.0", "lodash-es": "^4.17.20", + "sophia-bonding-curve": "github:mradkov/BondingCurve", "soundcloud-widget": "^0.2.1", "tipping-contract": "github:aeternity/tipping-contract#develop", "vue": "^2.6.12", @@ -39,7 +40,6 @@ "vue-meta": "^2.4.0", "vue-router": "^3.4.9", "vue-timeago": "^5.1.2", - "vue-timeago": "^5.1.2", "vuex": "^3.6.0", "vuex-router-sync": "^5.0.0", "wordbazaar-contracts": "github:aeternity/wordbazaar-contracts#voting" diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index f00843c24..28cd69b6f 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -102,32 +102,43 @@ export default { methods: { async createWordSale() { this.loadingState = true; + const decimals = 18; this.step = 1; // `Please confirm popup 1 of 5\n\n Creating Bonding Curve Contract for sale`; - const bondingCurve = await this.$store.dispatch('deployBondingCurve'); + const bondingCurveAddress = await this.$store.dispatch('aeternity/deployBondingCurve', decimals); this.step = 2; // `Please confirm popup 2 of 5\n\n Creating Token Sale Contract for ${this.newWord} Tokens`; - const tokenSaleAddress = await this.$store.dispatch('deployTokenSaleContract', - 20, bondingCurve.deployInfo.address); + const timeout = 20; + const tokenSaleAddress = await this.$store.dispatch('aeternity/deployTokenSaleContract', + { timeout, bondingCurveAddress, description: this.description }); this.step = 3; // `Please confirm popup 3 of 5\n\n Creating ${this.newWord} Token Contract`; - const fungibleTokenAddress = await this.$store.dispatch('deployFungibleTokenContract', `${this.newWord} Token`, 18, this.newWord, - tokenSaleAddress.replace('ct_', 'ak_')); + const fungibleTokenAddress = await this.$store.dispatch('aeternity/deployFungibleTokenContract', + { + name: `${this.newWord} Token`, + decimals, + symbol: this.newWord, + tokenSaleAddress: tokenSaleAddress.replace('ct_', 'ak_'), + }); this.addToken(fungibleTokenAddress); this.step = 4; // `Please confirm popup 4 of 5\n\n Registering ${this.newWord} Token for sale`; - await this.$store.dispatch('tokenSaleMethod', this.saleContractAddress, 'set_token', fungibleTokenAddress); + await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: tokenSaleAddress, + method: 'set_token', + args: [fungibleTokenAddress], + }); this.step = 5; // `Please confirm popup 5 of 5\n\n Adding Token Sale for ${this.newWord} to Word Bazaar`; - await this.$store.dispatch('wordRegistryAddToken', tokenSaleAddress); + await this.$store.dispatch('aeternity/wordRegistryAddToken', tokenSaleAddress); await Backend.invalidateWordRegistryCache(); - await this.updateWords(); this.loadingState = false; this.step = 1; }, diff --git a/src/components/WordBuySellButtons.vue b/src/components/WordBuySellButtons.vue index e146b67c8..558c96bda 100644 --- a/src/components/WordBuySellButtons.vue +++ b/src/components/WordBuySellButtons.vue @@ -39,12 +39,22 @@ type="number" maxlength="90" class="form-control" + @change="buyValue" >
Total you pay
- + +
Total you get
- -
+ +
({ buyPrice: null, sellPrice: null, - buyAmount: 0, - sellAmount: 0, + buyAmount: 1, + sellAmount: 1, totalSupply: null, tokenAddress: null, - tokenContract: null, + buyAeAmount: null, + sellAeAmount: null, showBuyModal: false, showSellModal: false, loading: true, @@ -167,17 +187,51 @@ export default { this.buyPrice = data.buyPrice; this.sellPrice = data.sellPrice; + this.buyAmount = 1; + this.sellAmount = 1; + + // just trigger loading + this.buyValue(); + this.sellValue(); + this.loading = false; - this.buyAmount = 0; - this.sellAmount = 0; this.showSellModal = false; this.showBuyModal = false; }, + async buyValue() { + const amount = shiftDecimalPlaces(this.buyAmount, 18).toFixed(); + + const value = await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.sale, + method: 'calculate_buy_price', + args: [amount], + }); + + this.buyAeAmount = value; + + return { amount, value }; + }, + async sellValue() { + const amount = shiftDecimalPlaces(this.sellAmount, 18).toFixed(); + this.sellAeAmount = await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.sale, + method: 'calculate_sell_return', + args: [amount], + }); + }, async buy() { this.loading = true; - await this.$store.dispatch('tokenSaleMethod', this.sale, - 'buy', [], { amount: shiftDecimalPlaces(this.buyAmount, 18).toFixed() }); + const { amount, value } = await this.buyValue(); + await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.sale, + method: 'buy', + args: [amount], + options: { amount: value }, + }); await Backend.invalidateTokenCache(this.tokenAddress); await Backend.invalidateWordSaleCache(this.sale); @@ -188,10 +242,14 @@ export default { const amount = shiftDecimalPlaces(this.sellAmount, 18).toFixed(); - await this.$store.dispatch('createOrChangeAllowance', + await this.$store.dispatch('aeternity/createOrChangeAllowance', this.tokenAddress, amount, this.sale.replace('ct_', 'ak_')); - await this.$store.dispatch('tokenSaleMethod', this.sale, - 'sell', [amount]); + await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.sale, + method: 'sell', + args: [amount], + }); await Backend.invalidateTokenCache(this.tokenAddress); await Backend.invalidateWordSaleCache(this.sale); diff --git a/src/store/modules/aeternity.js b/src/store/modules/aeternity.js index bda9e8365..3ce66dffc 100644 --- a/src/store/modules/aeternity.js +++ b/src/store/modules/aeternity.js @@ -9,13 +9,15 @@ import TIPPING_INTERFACE_V2 from 'tipping-contract/Tipping_v2_Interface.aes'; import TIPPING_INTERFACE_V3 from 'tipping-contract/Tipping_v3_Interface.aes'; import tippingContractUtil from 'tipping-contract/util/tippingContractUtil'; -import FUNGIBLE_TOKEN_CONTRACT from 'aeternity-fungible-token/FungibleTokenFullInterface.aes'; +import FUNGIBLE_TOKEN_CONTRACT_INTERFACE from 'aeternity-fungible-token/FungibleTokenFullInterface.aes'; +import FUNGIBLE_TOKEN_CONTRACT from 'wordbazaar-contracts/FungibleTokenCustom.aes'; import TOKEN_VOTING_CONTRACT from 'wordbazaar-contracts/TokenVoting.aes'; import TOKEN_SALE_CONTRACT from 'wordbazaar-contracts/TokenSale.aes'; import WORD_REGISTRY_CONTRACT from 'wordbazaar-contracts/WordRegistry.aes'; +import BONDING_CURVE from 'sophia-bonding-curve/BondCurveLinear.aes'; import { BigNumber } from 'bignumber.js'; -import { IS_MOBILE_DEVICE } from '../../utils'; +import { IS_MOBILE_DEVICE, shiftDecimalPlaces } from '../../utils'; export default { namespaced: true, @@ -148,87 +150,109 @@ export default { ) { if (!fungibleTokenContracts[contractAddress]) { commit('setFungibleTokenContract', contractAddress, await sdk - .getContractInstance(FUNGIBLE_TOKEN_CONTRACT, { contractAddress })); + .getContractInstance(FUNGIBLE_TOKEN_CONTRACT_INTERFACE, { contractAddress })); } }, async initWordRegistryContractIfNeeded({ commit, state: { sdk, wordRegistryContract } }) { if (!wordRegistryContract) { - commit('setWordRegistryContract', await sdk + const contract = await sdk .getContractInstance(WORD_REGISTRY_CONTRACT, - { contractAddress: process.env.VUE_APP_WORD_REGISTRY_ADDRESS })); + { contractAddress: process.env.VUE_APP_WORD_REGISTRY_ADDRESS }); + commit('setWordRegistryContract', contract); + return contract; } + + return wordRegistryContract; }, async initTokenVotingContractIfNeeded( { commit, state: { sdk, tokenVotingContracts } }, contractAddress, ) { if (!tokenVotingContracts[contractAddress]) { - commit('setTokenVotingContract', contractAddress, await sdk - .getContractInstance(TOKEN_VOTING_CONTRACT, { contractAddress })); + const contract = await sdk + .getContractInstance(TOKEN_VOTING_CONTRACT, { contractAddress }); + commit('setTokenVotingContract', contractAddress, contract); + return contract; } + + return tokenVotingContracts[contractAddress]; }, async initTokenSaleContractIfNeeded( { commit, state: { sdk, tokenSaleContracts } }, contractAddress, ) { if (!tokenSaleContracts[contractAddress]) { - commit('setTokenSaleContract', contractAddress, await sdk - .getContractInstance(TOKEN_SALE_CONTRACT, { contractAddress })); + const contract = await sdk.getContractInstance(TOKEN_SALE_CONTRACT, { contractAddress }); + commit('setTokenSaleContract', contractAddress, contract); + return contract; } + + return tokenSaleContracts[contractAddress]; + }, + async deployBondingCurve({ state: { sdk } }, decimals) { + const BONDING_CURVE_DECIMALS = BONDING_CURVE.replace( + 'function alpha() : Frac.frac = Frac.make_frac(1, 1)', + `function alpha() : Frac.frac = Frac.make_frac(1, ${shiftDecimalPlaces(1, decimals)})`, + ); + const contract = await sdk.getContractInstance(BONDING_CURVE_DECIMALS); + await contract.methods.init(); + + return contract.deployInfo.address; }, async deployTokenSaleContract( { commit, state: { sdk } }, - timeout, - bondingCurveAddress, + { timeout, bondingCurveAddress, description }, ) { const contract = await sdk.getContractInstance(TOKEN_SALE_CONTRACT); - await contract.init(timeout, bondingCurveAddress); + await contract.methods.init(timeout, bondingCurveAddress, description); commit('setTokenSaleContract', contract.deployInfo.address, contract); return contract.deployInfo.address; }, async deployFungibleTokenContract( { commit, state: { sdk } }, - name, - decimals, - symbol, - tokenSaleAddress, + { + name, + decimals, + symbol, + tokenSaleAddress, + }, ) { const contract = await sdk.getContractInstance(FUNGIBLE_TOKEN_CONTRACT); - await contract.init(name, decimals, symbol, tokenSaleAddress); + await contract.methods.init(name, decimals, symbol, tokenSaleAddress); commit('setFungibleTokenContract', contract.deployInfo.address, contract); return contract.deployInfo.address; }, async deployTokenVotingContract( { commit, state: { sdk } }, - metadata, - closeHeight, - token, + { + metadata, + closeHeight, + token, + }, ) { const contract = await sdk.getContractInstance(TOKEN_VOTING_CONTRACT); - await contract.init(metadata, closeHeight, token); + await contract.methods.init(metadata, closeHeight, token); commit('setTokenVotingContract', contract.deployInfo.address, contract); return contract.deployInfo.address; }, - async wordRegistryAddToken( - { dispatch, state: { wordRegistryContract } }, - addTokenAddress, - ) { - await dispatch('initWordRegistryContractIfNeeded'); + async wordRegistryAddToken({ dispatch }, addTokenAddress) { + const contract = await dispatch('initWordRegistryContractIfNeeded'); - const { decodedResult } = await wordRegistryContract.add_token(addTokenAddress); + const { decodedResult } = await contract.methods.add_token(addTokenAddress); return decodedResult; }, async tokenSaleMethod( - { dispatch, state: { tokenSaleContracts } }, - contractAddress, - method, - args, - options, + { dispatch }, + { + contractAddress, + method, + args = [], + options = {}, + }, ) { - await dispatch('initTokenSaleContractIfNeeded', contractAddress); + const contract = await dispatch('initTokenSaleContractIfNeeded', contractAddress); - const { decodedResult } = await tokenSaleContracts[contractAddress] - .methods[method](...args, options); + const { decodedResult } = await contract.methods[method](...args, options); return decodedResult; }, async tokenVotingMethod( @@ -238,10 +262,9 @@ export default { args, options, ) { - await dispatch('initTokenVotingContractIfNeeded', contractAddress); + const contract = await dispatch('initTokenVotingContractIfNeeded', contractAddress); - const { decodedResult } = await tokenVotingContracts[contractAddress] - .methods[method](...args, options); + const { decodedResult } = await contract.methods[method](...args, options); return decodedResult; }, async tokenBalance( diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index 8ccc69dc3..bebda1d05 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -67,7 +67,7 @@ export default { }, data: () => ({ wordRegistryState: null, - activity: 'assets', + activity: 'create', activeTab: 'all', ribbonTabs: [ { icon: IconTokens, text: 'Assets', activity: 'assets' }, diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 08ef0242f..79320bc8c 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -341,7 +341,7 @@ export default { }, async loadVotes() { let votes = await Backend.getWordSaleVotesDetails(this.saleContractAddress); - const height = await this.$store.dispatch('getHeight'); + const height = await this.$store.dispatch('aeternity/getHeight'); votes = votes.map((vote) => { const voterAccount = vote.voteAccounts.find(([acc]) => acc === this.address); @@ -397,28 +397,32 @@ export default { this.myVotes = votes.filter((v) => v.statusMy); }, async applyPayout(id) { - await this.$store.dispatch('tokenSaleMethod', this.saleContractAddress, - 'apply_vote_subject', [id]); + await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.saleContractAddress, + method: 'apply_vote_subject', + args: [id], + }); this.updateWords(); await Backend.invalidateWordSaleVotesCache(this.saleContractAddress); EventBus.$emit('reloadData'); }, async withdraw(address) { - await this.$store.dispatch('tokenVotingMethod', address, 'withdraw'); + await this.$store.dispatch('aeternity/tokenVotingMethod', address, 'withdraw'); EventBus.$emit('reloadData'); }, async voteOption(address, option, amount) { const shiftedAmount = shiftDecimalPlaces(amount, this.tokenInfo[this.data.tokenAddress].decimals).toFixed(); - await this.$store.dispatch('createOrChangeAllowance', this.data.tokenAddress, shiftedAmount, address.replace('ct_', 'ak_')); - await this.$store.dispatch('tokenVotingMethod', address, 'vote', [option, shiftedAmount]); + await this.$store.dispatch('aeternity/createOrChangeAllowance', this.data.tokenAddress, shiftedAmount, address.replace('ct_', 'ak_')); + await this.$store.dispatch('aeternity/tokenVotingMethod', address, 'vote', [option, shiftedAmount]); await Backend.invalidateWordSaleVoteStateCache(address); EventBus.$emit('reloadData'); }, async revokeVote(address) { - await this.$store.dispatch('tokenVotingMethod', address, 'revoke_vote'); + await this.$store.dispatch('aeternity/tokenVotingMethod', address, 'revoke_vote'); await Backend.invalidateWordSaleVoteStateCache(address); EventBus.$emit('reloadData'); }, @@ -429,13 +433,21 @@ export default { link: 'https://aeternity.com/', }; - const height = await this.$store.dispatch('getHeight'); + const height = await this.$store.dispatch('aeternity/getHeight'); const closeHeight = height + 20; - const token = await this.$store.dispatch('tokenSaleMethod', this.saleContractAddress, 'get_token'); - const address = await this.$store.dispatch('deployTokenVotingContract', metadata, closeHeight, token); - - await this.$store.dispatch('tokenSaleMethod', this.saleContractAddress, - 'add_vote', [address]); + const token = await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.saleContractAddress, + method: 'get_token', + }); + const address = await this.$store.dispatch('aeternity/deployTokenVotingContract', { metadata, closeHeight, token }); + + await this.$store.dispatch('aeternity/tokenSaleMethod', + { + contractAddress: this.saleContractAddress, + method: 'add_vote', + args: [address], + }); await Backend.invalidateWordSaleVotesCache(this.saleContractAddress); EventBus.$emit('reloadData'); }, From 1090d877643899468c411c274ffb53e4d97a3020 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 11 Dec 2020 16:03:15 +0100 Subject: [PATCH 156/242] show correct metadata --- .env | 2 +- src/views/WordBazaar.vue | 2 +- src/views/WordDetail.vue | 41 ++++++++++++++++++++-------------------- 3 files changed, 22 insertions(+), 23 deletions(-) diff --git a/.env b/.env index f631d3921..16ea04b33 100644 --- a/.env +++ b/.env @@ -7,6 +7,6 @@ VUE_APP_COMPILER_URL=https://latest.compiler.aepps.com VUE_APP_CONTRACT_V1_ADDRESS=ct_2Cvbf3NYZ5DLoaNYAU71t67DdXLHeSXhodkSNifhgd7Xsw28Xd VUE_APP_CONTRACT_V2_ADDRESS=ct_2ZEoCKcqXkbz2uahRrsWeaPooZs9SdCv6pmC4kc55rD4MhqYSu VUE_APP_CONTRACT_V3_ADDRESS=ct_WscpdLQf6ZZxoVqrsEwUwmuAEdzEkJii5W5TzG84rVgHeK6BW -VUE_APP_WORD_REGISTRY_ADDRESS=ct_2kWHvyfDzsJyAxwcoia3wea1rvnbYHFLbdurPYD9QMPwnzsBLp +VUE_APP_WORD_REGISTRY_ADDRESS=ct_csaAHdSq9bATjixzgHn7FWQuMJPXD4S34ehvkUYRrC9GqzoGW VUE_APP_IMGUR_API_CLIENT_ID=eafea0a779e4039 VUE_APP_GIPHY_API_KEY=P16yBDlSeEfcrJfp1rwnamtEZmQHxHNM diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index bebda1d05..8ccc69dc3 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -67,7 +67,7 @@ export default { }, data: () => ({ wordRegistryState: null, - activity: 'create', + activity: 'assets', activeTab: 'all', ribbonTabs: [ { icon: IconTokens, text: 'Assets', activity: 'assets' }, diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 79320bc8c..63b21761a 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -15,24 +15,6 @@
-
-

Asset

-
- {{ selectedWord }} -
-

Description

-
- The Matrix is everywhere. It is all around us. Even now, in this very room. - You can see it when you look out your window or when you turn on your television. - You can feel it when you go to work... when you go to church... - when you pay your taxes. It is the world that has been pulled over your eyes to blind - you from the truth. What truth? - That you are a slave, Neo. Like everyone else you were born into bondage. - Into a prison that you cannot taste or - see or touch. A prison for your mind. -
-
-
-

Initial Price

+

Sell Price

@@ -63,6 +45,23 @@ />
+ +
+

Asset

+
+ {{ tokenInfo[data.tokenAddress].name }} +
+

Description

+
+ {{ data.description }} +
+
@@ -483,7 +482,7 @@ h3 { } .asset_details__section-content { - padding: 0 1.5rem 1.5rem 1.5rem; + padding: 1.5rem; } } From c56a176dd925c33e7176893d2656a4880a2b012e Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Fri, 11 Dec 2020 18:24:38 +0100 Subject: [PATCH 157/242] reload data, update price to aettos --- .env | 2 +- src/components/CreateToken.vue | 20 +++++++++----------- src/components/WordListing.vue | 15 +++++++++++++-- src/utils/backend.js | 2 -- src/views/WordBazaar.vue | 12 ++++++++++-- src/views/WordDetail.vue | 2 ++ 6 files changed, 35 insertions(+), 18 deletions(-) diff --git a/.env b/.env index 16ea04b33..f86e9e4c7 100644 --- a/.env +++ b/.env @@ -7,6 +7,6 @@ VUE_APP_COMPILER_URL=https://latest.compiler.aepps.com VUE_APP_CONTRACT_V1_ADDRESS=ct_2Cvbf3NYZ5DLoaNYAU71t67DdXLHeSXhodkSNifhgd7Xsw28Xd VUE_APP_CONTRACT_V2_ADDRESS=ct_2ZEoCKcqXkbz2uahRrsWeaPooZs9SdCv6pmC4kc55rD4MhqYSu VUE_APP_CONTRACT_V3_ADDRESS=ct_WscpdLQf6ZZxoVqrsEwUwmuAEdzEkJii5W5TzG84rVgHeK6BW -VUE_APP_WORD_REGISTRY_ADDRESS=ct_csaAHdSq9bATjixzgHn7FWQuMJPXD4S34ehvkUYRrC9GqzoGW +VUE_APP_WORD_REGISTRY_ADDRESS=ct_2nBfk6xdmBNtZFB1h4wmXV94X2nTUxx2XgdmJkyRRL9RD44QBT VUE_APP_IMGUR_API_CLIENT_ID=eafea0a779e4039 VUE_APP_GIPHY_API_KEY=P16yBDlSeEfcrJfp1rwnamtEZmQHxHNM diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index 28cd69b6f..52116b45f 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -9,7 +9,7 @@
@@ -104,17 +104,17 @@ export default { this.loadingState = true; const decimals = 18; - this.step = 1; + this.step = 2; // `Please confirm popup 1 of 5\n\n Creating Bonding Curve Contract for sale`; const bondingCurveAddress = await this.$store.dispatch('aeternity/deployBondingCurve', decimals); - this.step = 2; + this.step = 3; // `Please confirm popup 2 of 5\n\n Creating Token Sale Contract for ${this.newWord} Tokens`; const timeout = 20; const tokenSaleAddress = await this.$store.dispatch('aeternity/deployTokenSaleContract', { timeout, bondingCurveAddress, description: this.description }); - this.step = 3; + this.step = 4; // `Please confirm popup 3 of 5\n\n Creating ${this.newWord} Token Contract`; const fungibleTokenAddress = await this.$store.dispatch('aeternity/deployFungibleTokenContract', { @@ -123,9 +123,10 @@ export default { symbol: this.newWord, tokenSaleAddress: tokenSaleAddress.replace('ct_', 'ak_'), }); - this.addToken(fungibleTokenAddress); + await Backend.addToken(fungibleTokenAddress); + EventBus.$emit('reloadData'); - this.step = 4; + this.step = 5; // `Please confirm popup 4 of 5\n\n Registering ${this.newWord} Token for sale`; await this.$store.dispatch('aeternity/tokenSaleMethod', { @@ -134,18 +135,15 @@ export default { args: [fungibleTokenAddress], }); - this.step = 5; + this.step = 6; // `Please confirm popup 5 of 5\n\n Adding Token Sale for ${this.newWord} to Word Bazaar`; await this.$store.dispatch('aeternity/wordRegistryAddToken', tokenSaleAddress); await Backend.invalidateWordRegistryCache(); + EventBus.$emit('reloadData'); this.loadingState = false; this.step = 1; }, - async addToken(address) { - await Backend.addToken(address); - EventBus.$emit('reloadData'); - }, }, }; diff --git a/src/components/WordListing.vue b/src/components/WordListing.vue index 27008cbcb..37dec4185 100644 --- a/src/components/WordListing.vue +++ b/src/components/WordListing.vue @@ -34,6 +34,7 @@ { + this.reloadData(); + }); + setInterval(() => this.reloadData(), 120 * 1000); + }, mounted() { - this.loadWordData(); + this.reloadData(); }, methods: { - async loadWordData() { + async reloadData() { + if (!this.sale) return; + this.totalSupply = null; this.buyPrice = null; diff --git a/src/utils/backend.js b/src/utils/backend.js index a9299160c..444edb17e 100644 --- a/src/utils/backend.js +++ b/src/utils/backend.js @@ -140,8 +140,6 @@ export default class Backend { static getTokenBalances = async (address) => backendFetch(`tokenCache/balances?address=${address}`); - static getWordSaleDetailsByToken = async (address) => backendFetch(`tokenCache/wordSaleByToken?address=${address}`); - static cacheInvalidateTips = async () => backendFetch('cache/invalidate/tips'); static invalidateTokenCache = async (token) => backendFetch(`cache/invalidate/token/${token}`); diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index 8ccc69dc3..331ce5ff5 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -54,6 +54,7 @@ import IconHelp2 from '../assets/iconHelp2.svg?icon-component'; import IconTokens from '../assets/iconTokens.svg?icon-component'; import IconPlus from '../assets/iconPlus.svg?icon-component'; import IconAe from '../assets/iconAe.svg?icon-component'; +import { EventBus } from '../utils/eventBus'; export default { name: 'WordBazaar', @@ -85,10 +86,17 @@ export default { ...mapState(['address']), }, mounted() { - this.updateWords(); + this.reloadData(); + }, + created() { + this.reloadData(); + EventBus.$on('reloadData', () => { + this.reloadData(); + }); + setInterval(() => this.reloadData(), 120 * 1000); }, methods: { - async updateWords() { + async reloadData() { this.wordRegistryState = await Backend.getWordRegistry(); }, }, diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 63b21761a..a7aea3e29 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -28,6 +28,7 @@
@@ -35,6 +36,7 @@

Sell Price

From 31e694ce9fad377e78dc866fbffd74c63f23b8a9 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Sat, 12 Dec 2020 10:30:28 +0100 Subject: [PATCH 158/242] update create token --- src/components/CreateToken.vue | 72 +++++++++++++++++++++------------- src/views/WordBazaar.vue | 5 ++- 2 files changed, 49 insertions(+), 28 deletions(-) diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index 52116b45f..f73a0b989 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -5,6 +5,7 @@

Create Your Token

In Less Than 5 Minutes

+ {{ stepDescription }}
@@ -13,15 +14,9 @@ :key="i" class="step" > - - Token info -
@@ -35,6 +30,7 @@ class="form-control" minlength="1" maxlength="333" + :disabled="loadingState" >
@@ -47,6 +43,7 @@ class="form-control" minlength="1" maxlength="500" + :disabled="loadingState" >
@@ -59,9 +56,13 @@ class="form-control" minlength="1" maxlength="6" + :disabled="loadingState" > - + ({ name: '', @@ -97,7 +99,7 @@ export default { ticker: '', loadingState: false, step: 1, - createProgressText: null, + stepDescription: 'Please fill in the fields below with your token details.', }), methods: { async createWordSale() { @@ -105,17 +107,17 @@ export default { const decimals = 18; this.step = 2; - // `Please confirm popup 1 of 5\n\n Creating Bonding Curve Contract for sale`; + this.stepDescription = `Creating ${this.ticker} Bonding Curve Contract... Please confirm the transaction!`; const bondingCurveAddress = await this.$store.dispatch('aeternity/deployBondingCurve', decimals); this.step = 3; - // `Please confirm popup 2 of 5\n\n Creating Token Sale Contract for ${this.newWord} Tokens`; + this.stepDescription = `Creating ${this.ticker} Token Sale Contract... Please confirm the transaction!`; const timeout = 20; const tokenSaleAddress = await this.$store.dispatch('aeternity/deployTokenSaleContract', { timeout, bondingCurveAddress, description: this.description }); this.step = 4; - // `Please confirm popup 3 of 5\n\n Creating ${this.newWord} Token Contract`; + this.stepDescription = `Creating ${this.ticker} Token Contract... Please confirm the transaction!`; const fungibleTokenAddress = await this.$store.dispatch('aeternity/deployFungibleTokenContract', { name: `${this.newWord} Token`, @@ -127,7 +129,7 @@ export default { EventBus.$emit('reloadData'); this.step = 5; - // `Please confirm popup 4 of 5\n\n Registering ${this.newWord} Token for sale`; + this.stepDescription = `Registering ${this.ticker} Token for sale... Please confirm the transaction!`; await this.$store.dispatch('aeternity/tokenSaleMethod', { contractAddress: tokenSaleAddress, @@ -136,13 +138,16 @@ export default { }); this.step = 6; - // `Please confirm popup 5 of 5\n\n Adding Token Sale for ${this.newWord} to Word Bazaar`; + this.stepDescription = `Adding ${this.ticker} Sale to Word Bazaar... Please confirm the transaction!`; await this.$store.dispatch('aeternity/wordRegistryAddToken', tokenSaleAddress); await Backend.invalidateWordRegistryCache(); EventBus.$emit('reloadData'); this.loadingState = false; + this.stepDescription = 'Please fill in the fields below with your token details.'; this.step = 1; + + this.navigateAssets(); }, }, }; @@ -161,11 +166,12 @@ export default { width: 100%; height: 100%; background-image: url('../assets/createTokenBg.svg'); - filter: grayscale(100%); + background-repeat: no-repeat; + mix-blend-mode: luminosity; } .create-header-content { - padding: 1.2rem 0 2.2rem 0; + padding: 1.2rem 0 1.2rem 0; position: relative; display: flex; flex-direction: column; @@ -182,6 +188,13 @@ export default { font-weight: normal; color: $tip_note_color; } + + .step-description { + font-size: 0.75rem; + font-weight: 500; + color: $pure_white; + margin-top: 1rem; + } } } @@ -192,19 +205,9 @@ export default { .step { flex-grow: 1; - margin: 0.8rem 0.4rem; + margin: 0 0.4rem 1.6rem 0.4rem; position: relative; - .step-title { - position: absolute; - margin-top: -1.5rem; - font-size: 0.75rem; - font-weight: 500; - z-index: 10; - text-align: center; - width: 100%; - } - .step-box { height: 0.8rem; background: $super_dark; @@ -223,6 +226,21 @@ export default { blue($custom_links_color), 0.4 ); + + &.pulse { + animation: pulse 2s infinite ease-in-out; + } + + @keyframes pulse { + 0%, + 100% { + filter: saturate(0.5) brightness(0.5); + } + + 50% { + filter: saturate(1) brightness(1); + } + } } } } diff --git a/src/views/WordBazaar.vue b/src/views/WordBazaar.vue index 331ce5ff5..d92331db7 100644 --- a/src/views/WordBazaar.vue +++ b/src/views/WordBazaar.vue @@ -37,7 +37,10 @@
- +
From 64967b24ca52680c64d9c2026dd866186dc95944 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Sat, 12 Dec 2020 16:52:41 +0100 Subject: [PATCH 159/242] refactor tip amount input --- src/views/WordDetail.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index a7aea3e29..7122f7af1 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -198,8 +198,8 @@ Date: Sat, 12 Dec 2020 17:01:24 +0100 Subject: [PATCH 160/242] catch sell value bonding curve errors --- src/components/WordBuySellButtons.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/WordBuySellButtons.vue b/src/components/WordBuySellButtons.vue index 558c96bda..85d7bea3d 100644 --- a/src/components/WordBuySellButtons.vue +++ b/src/components/WordBuySellButtons.vue @@ -219,7 +219,7 @@ export default { contractAddress: this.sale, method: 'calculate_sell_return', args: [amount], - }); + }).catch(() => 0); }, async buy() { this.loading = true; From 1e5667ccf19c64c44add99eb596bf0922bdc115c Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Sat, 12 Dec 2020 17:25:37 +0100 Subject: [PATCH 161/242] fix voting status model for unsuccessful votes --- src/views/WordDetail.vue | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 7122f7af1..619f97184 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -150,7 +150,9 @@ released for transfer to spread was transferred to to be released for transfer to - spread was not transferred to + spread was not transferred to
@@ -188,14 +190,21 @@ Enter stake amount +
{{ vote.stakePercent }}% Timed out 👎 + Unsuccessful 👎 Funds transferred 👍
@@ -357,14 +370,17 @@ export default { const showWithdraw = vote.isClosed && hasWithdrawAmount; const statusClosed = vote.isClosed && !vote.alreadyApplied && !vote.timeouted; + const statusClosedAndUnsuccessful = statusClosed && !vote.isSuccess; const statusApplied = vote.alreadyApplied; const statusTimeouted = !vote.alreadyApplied && vote.timeouted; - const statusTimeouting = statusClosed && !statusTimeouted; - const statusOngoing = !vote.isClosed || !(statusTimeouted || statusApplied); - const statusPast = statusTimeouted || statusApplied; + const statusTimeouting = statusClosed && !statusClosedAndUnsuccessful && !statusTimeouted; + const statusOngoing = (!vote.isClosed || !(statusTimeouted || statusApplied)) + && !statusClosedAndUnsuccessful; + const statusPast = statusTimeouted || statusApplied || statusClosedAndUnsuccessful; const statusMy = accountHasVoted; - const stakeAmountUnshifted = voterAccount ? voterAccount[1][0] : this.maxAmount; + const stakeMaxAmount = showVoteOption ? this.maxAmount : 0; + const stakeAmountUnshifted = voterAccount ? voterAccount[1][0] : stakeMaxAmount; const stakeAmount = shiftDecimalPlaces( stakeAmountUnshifted, -this.tokenInfo[this.data.tokenAddress].decimals, ).toFixed(2); @@ -381,6 +397,7 @@ export default { showApplyPayout, showWithdraw, statusClosed, + statusClosedAndUnsuccessful, statusApplied, statusTimeouted, statusTimeouting, @@ -393,6 +410,8 @@ export default { }; }); + console.log(votes); + this.ongoingVotes = votes.filter((v) => v.statusOngoing); this.pastVotes = votes.filter((v) => v.statusPast); this.myVotes = votes.filter((v) => v.statusMy); From 453e24891d91462aa04e92c75c74fbbd0045f201 Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Wed, 16 Dec 2020 09:32:33 +0100 Subject: [PATCH 162/242] minor design adjustments --- src/components/CreateToken.vue | 4 ++-- src/views/WordDetail.vue | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index f73a0b989..1d3a18fbe 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -234,11 +234,11 @@ export default { @keyframes pulse { 0%, 100% { - filter: saturate(0.5) brightness(0.5); + filter: opacity(0.4); } 50% { - filter: saturate(1) brightness(1); + filter: opacity(1); } } } diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 619f97184..8862f6c5c 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -209,6 +209,7 @@ :disabled="!vote.showVoteOption" :token="data.tokenAddress" no-dropdown + no-fiatvalue /> Date: Wed, 16 Dec 2020 09:56:08 +0100 Subject: [PATCH 163/242] optimize buy/sell modals --- src/components/CreateToken.vue | 1 + src/components/WordBuySellButtons.vue | 70 ++++++++++++++++++--------- src/store/modules/aeternity.js | 28 +++++------ src/views/WordDetail.vue | 2 - 4 files changed, 61 insertions(+), 40 deletions(-) diff --git a/src/components/CreateToken.vue b/src/components/CreateToken.vue index 1d3a18fbe..ef94f0557 100644 --- a/src/components/CreateToken.vue +++ b/src/components/CreateToken.vue @@ -127,6 +127,7 @@ export default { }); await Backend.addToken(fungibleTokenAddress); EventBus.$emit('reloadData'); + EventBus.$emit('reloadData'); this.step = 5; this.stepDescription = `Registering ${this.ticker} Token for sale... Please confirm the transaction!`; diff --git a/src/components/WordBuySellButtons.vue b/src/components/WordBuySellButtons.vue index 85d7bea3d..e52037c9c 100644 --- a/src/components/WordBuySellButtons.vue +++ b/src/components/WordBuySellButtons.vue @@ -39,22 +39,25 @@ type="number" maxlength="90" class="form-control" - @change="buyValue" + @keyup="buyValue" >
Total you pay
- - +
+ + +
Total you get
- -
+
+ + +
+
0); + this.updatingValue = false; }, async buy() { this.loading = true; @@ -271,4 +284,15 @@ export default { padding: 0.5rem; } } + +.return-amount { + display: flex; + flex-direction: row; + + .update-loading { + margin-left: 0.5rem; + width: auto; + opacity: 0.6; + } +} diff --git a/src/store/modules/aeternity.js b/src/store/modules/aeternity.js index 3ce66dffc..04d90c86c 100644 --- a/src/store/modules/aeternity.js +++ b/src/store/modules/aeternity.js @@ -149,9 +149,13 @@ export default { contractAddress, ) { if (!fungibleTokenContracts[contractAddress]) { - commit('setFungibleTokenContract', contractAddress, await sdk - .getContractInstance(FUNGIBLE_TOKEN_CONTRACT_INTERFACE, { contractAddress })); + const contract = await sdk + .getContractInstance(FUNGIBLE_TOKEN_CONTRACT_INTERFACE, { contractAddress }); + commit('setFungibleTokenContract', contractAddress, contract); + return contract; } + + return fungibleTokenContracts[contractAddress]; }, async initWordRegistryContractIfNeeded({ commit, state: { sdk, wordRegistryContract } }) { if (!wordRegistryContract) { @@ -256,7 +260,7 @@ export default { return decodedResult; }, async tokenVotingMethod( - { dispatch, state: { tokenVotingContracts } }, + { dispatch }, contractAddress, method, args, @@ -267,22 +271,16 @@ export default { const { decodedResult } = await contract.methods[method](...args, options); return decodedResult; }, - async tokenBalance( - { dispatch, state: { fungibleTokenContracts } }, - contractAddress, - address, - ) { - await dispatch('initFungibleTokenContractIfNeeded', contractAddress); + async tokenBalance({ dispatch }, { contractAddress, address }) { + const contract = await dispatch('initFungibleTokenContractIfNeeded', contractAddress); - const { decodedResult } = await fungibleTokenContracts[contractAddress] - .methods.balance(address); + const { decodedResult } = await contract.methods.balance(address); return new BigNumber(decodedResult || 0).toFixed(); }, - async tokenTotalSupply({ dispatch, state: { fungibleTokenContracts } }, contractAddress) { - await dispatch('initFungibleTokenContractIfNeeded', contractAddress); + async tokenTotalSupply({ dispatch }, contractAddress) { + const contract = await dispatch('initFungibleTokenContractIfNeeded', contractAddress); - const { decodedResult } = await fungibleTokenContracts[contractAddress] - .methods.total_supply(); + const { decodedResult } = await contract.methods.total_supply(); return new BigNumber(decodedResult || 0).toFixed(); }, async createOrChangeAllowance( diff --git a/src/views/WordDetail.vue b/src/views/WordDetail.vue index 8862f6c5c..bb59e1023 100644 --- a/src/views/WordDetail.vue +++ b/src/views/WordDetail.vue @@ -411,8 +411,6 @@ export default { }; }); - console.log(votes); - this.ongoingVotes = votes.filter((v) => v.statusOngoing); this.pastVotes = votes.filter((v) => v.statusPast); this.myVotes = votes.filter((v) => v.statusMy); From 54779b64ccc7e62a406787ab0d34c899cb64a3fc Mon Sep 17 00:00:00 2001 From: Philipp Piwo Date: Thu, 17 Dec 2020 17:04:48 +0100 Subject: [PATCH 164/242] only load buy/sell value on modal open --- src/components/WordBuySellButtons.vue | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/components/WordBuySellButtons.vue b/src/components/WordBuySellButtons.vue index e52037c9c..bac3a68fa 100644 --- a/src/components/WordBuySellButtons.vue +++ b/src/components/WordBuySellButtons.vue @@ -1,9 +1,10 @@