From 3e76e0adff8afd0e775a5b00d3e8bdd3246249cd Mon Sep 17 00:00:00 2001 From: Jesse Eilers Date: Mon, 6 Jun 2022 14:49:41 +0200 Subject: [PATCH] feat/reinvest-feature --- package-lock.json | 14 +-- package.json | 2 +- src/actionhandler/index.ts | 8 ++ src/components/asset/StakeTableContents.vue | 33 ++++++ .../stake/ReinvestForm/ReinvestForm.vue | 91 +++++++++++++++ src/components/stake/ReinvestForm/index.ts | 3 + .../wizard/previews/PreviewReinvest.vue | 108 ++++++++++++++++++ .../ViewStateReceipt.vue | 17 +++ .../ViewStateReview.vue | 3 + src/locales/en.json | 10 +- src/types/actions.ts | 15 +++ src/views/Staking.vue | 22 +++- 12 files changed, 315 insertions(+), 11 deletions(-) create mode 100644 src/components/stake/ReinvestForm/ReinvestForm.vue create mode 100644 src/components/stake/ReinvestForm/index.ts create mode 100644 src/components/wizard/previews/PreviewReinvest.vue diff --git a/package-lock.json b/package-lock.json index caad5d641..4ad4397c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -73,7 +73,7 @@ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", "@babel/plugin-proposal-optional-chaining": "^7.16.7", "@babel/preset-typescript": "^7.16.7", - "@emeris/types": "^0.3.0", + "@emeris/types": "^0.3.1-pr-182-cf34178cb63185e263a2e390db69e9fb3ee86b89.0", "@esbuild-plugins/node-globals-polyfill": "^0.1.1", "@keplr-wallet/types": "0.8.8", "@pinia/testing": "^0.0.10", @@ -1576,9 +1576,9 @@ } }, "node_modules/@emeris/types": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@emeris/types/-/types-0.3.0.tgz", - "integrity": "sha512-LiBp0O2lIUt36kwzVazxpe8LAM+f41HGpKJ9ITipoMjLZjoLLsaWNStVyAgcTMdMMKuFJsXuAC+B6xyDCHKdtg==", + "version": "0.3.1-pr-182-cf34178cb63185e263a2e390db69e9fb3ee86b89.0", + "resolved": "https://registry.npmjs.org/@emeris/types/-/types-0.3.1-pr-182-cf34178cb63185e263a2e390db69e9fb3ee86b89.0.tgz", + "integrity": "sha512-iFyfSl7w79Dj3Qd1BVLGoqHpBcA4ZtevlqIIb0oSvVstP70vlk5XNcIJmnit2VwaCcRWuWriFlN5onokRw6tRg==", "dev": true, "dependencies": { "@sinclair/typebox": "^0.22.1" @@ -12408,9 +12408,9 @@ } }, "@emeris/types": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@emeris/types/-/types-0.3.0.tgz", - "integrity": "sha512-LiBp0O2lIUt36kwzVazxpe8LAM+f41HGpKJ9ITipoMjLZjoLLsaWNStVyAgcTMdMMKuFJsXuAC+B6xyDCHKdtg==", + "version": "0.3.1-pr-182-cf34178cb63185e263a2e390db69e9fb3ee86b89.0", + "resolved": "https://registry.npmjs.org/@emeris/types/-/types-0.3.1-pr-182-cf34178cb63185e263a2e390db69e9fb3ee86b89.0.tgz", + "integrity": "sha512-iFyfSl7w79Dj3Qd1BVLGoqHpBcA4ZtevlqIIb0oSvVstP70vlk5XNcIJmnit2VwaCcRWuWriFlN5onokRw6tRg==", "dev": true, "requires": { "@sinclair/typebox": "^0.22.1" diff --git a/package.json b/package.json index caef7682b..f82556b79 100644 --- a/package.json +++ b/package.json @@ -83,7 +83,7 @@ "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", "@babel/plugin-proposal-optional-chaining": "^7.16.7", "@babel/preset-typescript": "^7.16.7", - "@emeris/types": "^0.3.0", + "@emeris/types": "^0.3.1", "@esbuild-plugins/node-globals-polyfill": "^0.1.1", "@keplr-wallet/types": "0.8.8", "@pinia/testing": "^0.0.10", diff --git a/src/actionhandler/index.ts b/src/actionhandler/index.ts index d10fbccc3..3c812c10a 100644 --- a/src/actionhandler/index.ts +++ b/src/actionhandler/index.ts @@ -259,6 +259,14 @@ export async function actionHandler(action: Actions.UserAction): Promise + + + +
+ +
+ + {{ $t('components.stakeTable.claimAndReinvest') }} + + + {{ totalRewardsDisplayAmount }} + +
+ + +
+ + +
+ +
+ + @@ -255,6 +285,9 @@ const goStakeActionPage = (action: string, valAddress = '') => { case StakingActions.SWITCH: router.push(`/staking/${props.denom}/${action}${validatorAddress ? `/${validatorAddress}` : ''}`); return; + case StakingActions.REINVEST: + router.push(`/staking/${props.denom}/${StakingActions.REINVEST}`); + return; default: router.push(`/staking/${props.denom}/${StakingActions.CLAIM}`); return; diff --git a/src/components/stake/ReinvestForm/ReinvestForm.vue b/src/components/stake/ReinvestForm/ReinvestForm.vue new file mode 100644 index 000000000..7fe38f2c2 --- /dev/null +++ b/src/components/stake/ReinvestForm/ReinvestForm.vue @@ -0,0 +1,91 @@ + + + + diff --git a/src/components/stake/ReinvestForm/index.ts b/src/components/stake/ReinvestForm/index.ts new file mode 100644 index 000000000..da9ee24f3 --- /dev/null +++ b/src/components/stake/ReinvestForm/index.ts @@ -0,0 +1,3 @@ +import ReinvestForm from './ReinvestForm.vue'; + +export default ReinvestForm; diff --git a/src/components/wizard/previews/PreviewReinvest.vue b/src/components/wizard/previews/PreviewReinvest.vue new file mode 100644 index 000000000..eaffca016 --- /dev/null +++ b/src/components/wizard/previews/PreviewReinvest.vue @@ -0,0 +1,108 @@ + + + + + diff --git a/src/features/transactions/components/TransactionProcessViewer/ViewStateReceipt.vue b/src/features/transactions/components/TransactionProcessViewer/ViewStateReceipt.vue index 37f59c08c..062ba5d02 100644 --- a/src/features/transactions/components/TransactionProcessViewer/ViewStateReceipt.vue +++ b/src/features/transactions/components/TransactionProcessViewer/ViewStateReceipt.vue @@ -87,6 +87,16 @@ />

+