From 97921c6eb8c3c7a4657d67f1142c4105a3206fbc Mon Sep 17 00:00:00 2001
From: banklesss <105349292+banklesss@users.noreply.github.com>
Date: Fri, 23 Aug 2024 19:09:05 +0200
Subject: [PATCH] feature(governance): no funds warning (#3554)
---
apps/wallet-mobile/src/WalletNavigator.tsx | 7 +-
.../Governance/GovernanceNavigator.tsx | 7 +
.../Staking/Governance/common/navigation.ts | 2 +
.../Staking/Governance/common/strings.ts | 15 +
.../Governance/illustrations/NoFunds.tsx | 125 ++++++
.../Staking/Governance/illustrations/index.ts | 1 +
.../Governance/useCases/Home/HomeScreen.tsx | 8 +-
.../NoFunds/NoFundsScreen.stories.tsx | 9 +
.../useCases/NoFunds/NoFundsScreen.tsx | 83 ++++
.../Governance/useCases/NoFunds/index.ts | 1 +
.../src/kernel/i18n/locales/en-US.json | 5 +-
.../messages/src/WalletNavigator.json | 96 ++---
.../PairedBalance/PairedBalance.json | 8 +-
.../Staking/Governance/common/strings.json | 405 ++++++++++--------
14 files changed, 536 insertions(+), 236 deletions(-)
create mode 100644 apps/wallet-mobile/src/features/Staking/Governance/illustrations/NoFunds.tsx
create mode 100644 apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.stories.tsx
create mode 100644 apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.tsx
create mode 100644 apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/index.ts
diff --git a/apps/wallet-mobile/src/WalletNavigator.tsx b/apps/wallet-mobile/src/WalletNavigator.tsx
index e5449ad5c6..4b64dc7397 100644
--- a/apps/wallet-mobile/src/WalletNavigator.tsx
+++ b/apps/wallet-mobile/src/WalletNavigator.tsx
@@ -14,7 +14,7 @@ import {TransferProvider} from '@yoroi/transfer'
import {Swap} from '@yoroi/types'
import React from 'react'
import {defineMessages, useIntl} from 'react-intl'
-import {Keyboard, Platform, StyleSheet} from 'react-native'
+import {Keyboard, Platform, StyleSheet, View} from 'react-native'
import {Icon, OfflineBanner} from './components'
import {DiscoverNavigator} from './features/Discover'
@@ -111,10 +111,13 @@ const WalletTabNavigator = () => {
tabBarLabelStyle: styles.labelStyle,
tabBarActiveTintColor: colors.active,
tabBarInactiveTintColor: colors.inactive,
+ tabBarBackground: () => (
+
+ ),
tabBarStyle: {
borderTopColor: colors.divider,
borderTopWidth: 2 * StyleSheet.hairlineWidth,
- backgroundColor: colors.background,
+
// keyboardWillShow keyboardWillHiden dont work on android
display: isKeyboardOpen ? 'none' : undefined,
},
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/GovernanceNavigator.tsx b/apps/wallet-mobile/src/features/Staking/Governance/GovernanceNavigator.tsx
index 923a1bc7f0..af7c24890b 100644
--- a/apps/wallet-mobile/src/features/Staking/Governance/GovernanceNavigator.tsx
+++ b/apps/wallet-mobile/src/features/Staking/Governance/GovernanceNavigator.tsx
@@ -7,6 +7,7 @@ import {defaultStackNavigationOptions} from '../../../kernel/navigation'
import {NetworkTag} from '../../Settings/ChangeNetwork/NetworkTag'
import {NavigationStack, useGovernanceManagerMaker, useStrings} from './common'
import {ChangeVoteScreen, ConfirmTxScreen, FailedTxScreen, HomeScreen, SuccessTxScreen} from './useCases'
+import {NoFundsScreen} from './useCases/NoFunds/NoFundsScreen'
const Stack = NavigationStack
@@ -45,6 +46,12 @@ export const GovernanceNavigator = () => {
+
+
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/common/navigation.ts b/apps/wallet-mobile/src/features/Staking/Governance/common/navigation.ts
index 437f772078..d9fe24ac46 100644
--- a/apps/wallet-mobile/src/features/Staking/Governance/common/navigation.ts
+++ b/apps/wallet-mobile/src/features/Staking/Governance/common/navigation.ts
@@ -18,6 +18,7 @@ export type Routes = {
}
'staking-gov-tx-success'?: {navigateToStaking?: boolean; kind: GovernanceVote['kind']}
'staking-gov-tx-failed': undefined
+ 'staking-gov-no-funds': undefined
}
export const NavigationStack = createStackNavigator()
@@ -30,5 +31,6 @@ export const useNavigateTo = () => {
confirmTx: (params: Routes['staking-gov-confirm-tx']) => navigation.navigate('staking-gov-confirm-tx', params),
txSuccess: (params?: Routes['staking-gov-tx-success']) => navigation.navigate('staking-gov-tx-success', params),
txFailed: () => navigation.navigate('staking-gov-tx-failed'),
+ noFunds: () => navigation.navigate('staking-gov-no-funds'),
}).current
}
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/common/strings.ts b/apps/wallet-mobile/src/features/Staking/Governance/common/strings.ts
index 7b478e681e..7931a0cdb7 100644
--- a/apps/wallet-mobile/src/features/Staking/Governance/common/strings.ts
+++ b/apps/wallet-mobile/src/features/Staking/Governance/common/strings.ts
@@ -38,8 +38,11 @@ export const useStrings = () => {
transactionDetails: intl.formatMessage(messages.transactionDetails),
total: intl.formatMessage(messages.total),
transactionFailed: intl.formatMessage(messages.transactionFailed),
+ noFunds: intl.formatMessage(messages.noFunds),
transactionFailedDescription: intl.formatMessage(messages.transactionFailedDescription),
tryAgain: intl.formatMessage(messages.tryAgain),
+ buyAda: intl.formatMessage(messages.buyAda),
+ goToFaucet: intl.formatMessage(messages.goToFaucet),
withdrawWarningTitle: intl.formatMessage(messages.withdrawWarningTitle),
withdrawWarningDescription: intl.formatMessage(messages.withdrawWarningDescription),
withdrawWarningButton: intl.formatMessage(messages.withdrawWarningButton),
@@ -193,6 +196,10 @@ const messages = defineMessages({
id: 'components.governance.transactionFailed',
defaultMessage: '!!!Transaction failed',
},
+ noFunds: {
+ id: 'components.governance.noFunds',
+ defaultMessage: '!!!To participate in governance you need to have ADA in your wallet',
+ },
transactionFailedDescription: {
id: 'components.governance.transactionFailedDescription',
defaultMessage: '!!!Your transaction has not been processed properly due to technical issues',
@@ -201,6 +208,14 @@ const messages = defineMessages({
id: 'components.governance.tryAgain',
defaultMessage: '!!!Try again',
},
+ buyAda: {
+ id: 'components.governance.buyAda',
+ defaultMessage: '!!!Buy ada',
+ },
+ goToFaucet: {
+ id: 'components.governance.goToFaucet',
+ defaultMessage: '!!!Go to tada faucet',
+ },
withdrawWarningTitle: {
id: 'components.governance.withdrawWarningTitle',
defaultMessage: '!!!Withdraw warning',
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/illustrations/NoFunds.tsx b/apps/wallet-mobile/src/features/Staking/Governance/illustrations/NoFunds.tsx
new file mode 100644
index 0000000000..5dcf5da130
--- /dev/null
+++ b/apps/wallet-mobile/src/features/Staking/Governance/illustrations/NoFunds.tsx
@@ -0,0 +1,125 @@
+import * as React from 'react'
+import Svg, {Defs, LinearGradient, Path, Stop, SvgProps} from 'react-native-svg'
+
+export const NoFunds = (props: SvgProps) => {
+ return (
+
+ )
+}
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/illustrations/index.ts b/apps/wallet-mobile/src/features/Staking/Governance/illustrations/index.ts
index f0e7e74b01..9ee728d435 100644
--- a/apps/wallet-mobile/src/features/Staking/Governance/illustrations/index.ts
+++ b/apps/wallet-mobile/src/features/Staking/Governance/illustrations/index.ts
@@ -1,3 +1,4 @@
export {BrokenImage} from './BrokenImage'
export {GovernanceImage} from './GovernanceImage'
+export {NoFunds} from './NoFunds'
export {SuccessTxImage} from './SuccessTxImage'
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/useCases/Home/HomeScreen.tsx b/apps/wallet-mobile/src/features/Staking/Governance/useCases/Home/HomeScreen.tsx
index c7afce2595..9be82f2308 100644
--- a/apps/wallet-mobile/src/features/Staking/Governance/useCases/Home/HomeScreen.tsx
+++ b/apps/wallet-mobile/src/features/Staking/Governance/useCases/Home/HomeScreen.tsx
@@ -1,3 +1,4 @@
+import {NotEnoughMoneyToSendError} from '@emurgo/yoroi-lib/dist/errors'
import {useFocusEffect} from '@react-navigation/native'
import {isNonNullable, isString} from '@yoroi/common'
import {
@@ -216,7 +217,12 @@ const NeverParticipatedInGovernanceVariant = () => {
})
const createGovernanceTxMutation = useCreateGovernanceTx(wallet, {
- useErrorBoundary: true,
+ useErrorBoundary: (error) => !(error instanceof NotEnoughMoneyToSendError),
+ onError: (error) => {
+ if (error instanceof NotEnoughMoneyToSendError) {
+ navigateTo.noFunds()
+ }
+ },
})
const openDRepIdModal = (onSubmit: (drepId: string) => void) => {
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.stories.tsx b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.stories.tsx
new file mode 100644
index 0000000000..ff29da0db1
--- /dev/null
+++ b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.stories.tsx
@@ -0,0 +1,9 @@
+import {storiesOf} from '@storybook/react-native'
+import React from 'react'
+
+import {SafeArea} from '../../../../../components/SafeArea'
+import {NoFundsScreen} from './NoFundsScreen'
+
+storiesOf('Governance/NoFundsScreen', module)
+ .addDecorator((story) => {story()})
+ .add('Default', () => )
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.tsx b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.tsx
new file mode 100644
index 0000000000..7758c01455
--- /dev/null
+++ b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/NoFundsScreen.tsx
@@ -0,0 +1,83 @@
+import {useNavigation} from '@react-navigation/native'
+import {useTheme} from '@yoroi/theme'
+import {Chain} from '@yoroi/types'
+import React from 'react'
+import {Linking, StyleSheet, View} from 'react-native'
+
+import {Button, Text} from '../../../../../components'
+import {SafeArea} from '../../../../../components/SafeArea'
+import {Space} from '../../../../../components/Space/Space'
+import {TxHistoryRouteNavigation} from '../../../../../kernel/navigation'
+import {useWalletManager} from '../../../../WalletManager/context/WalletManagerProvider'
+import {useStrings} from '../../common'
+import {NoFunds} from '../../illustrations'
+
+export const NoFundsScreen = () => {
+ const strings = useStrings()
+ const navigation = useNavigation()
+ const styles = useStyles()
+ const {
+ selected: {network},
+ } = useWalletManager()
+
+ const handleOnTryAgain = () => {
+ if (network === Chain.Network.Sancho) {
+ Linking.openURL('https://sancho.network/faucet/')
+ return
+ }
+
+ if (network === Chain.Network.Preprod) {
+ Linking.openURL('https://sancho.network/faucet/')
+ return
+ }
+
+ navigation.navigate('exchange-create-order')
+ }
+
+ const buttonText = network === Chain.Network.Mainnet ? strings.buyAda : strings.goToFaucet
+
+ return (
+
+
+
+
+
+
+ {strings.noFunds}
+
+
+
+
+
+
+ )
+}
+
+const useStyles = () => {
+ const {color, atoms} = useTheme()
+
+ const styles = StyleSheet.create({
+ root: {
+ backgroundColor: color.bg_color_high,
+ ...atoms.flex_1,
+ ...atoms.p_xl,
+ },
+ center: {
+ ...atoms.flex_1,
+ ...atoms.align_center,
+ ...atoms.justify_center,
+ },
+ title: {
+ ...atoms.heading_3_medium,
+ ...atoms.text_center,
+ maxWidth: 320,
+ color: color.gray_cmax,
+ },
+ button: {
+ ...atoms.px_xl,
+ ...atoms.py_lg,
+ },
+ })
+
+ return styles
+}
diff --git a/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/index.ts b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/index.ts
new file mode 100644
index 0000000000..b29931194a
--- /dev/null
+++ b/apps/wallet-mobile/src/features/Staking/Governance/useCases/NoFunds/index.ts
@@ -0,0 +1 @@
+export {NoFundsScreen} from './NoFundsScreen'
diff --git a/apps/wallet-mobile/src/kernel/i18n/locales/en-US.json b/apps/wallet-mobile/src/kernel/i18n/locales/en-US.json
index 4419073e8b..eb6bf9160f 100644
--- a/apps/wallet-mobile/src/kernel/i18n/locales/en-US.json
+++ b/apps/wallet-mobile/src/kernel/i18n/locales/en-US.json
@@ -173,9 +173,12 @@
"components.governance.thisTransactionCanTakeAWhile": "This transaction can take a while!",
"components.governance.total": "Total",
"components.governance.transactionDetails": "Transaction details",
- "components.governance.transactionFailed": "Transaction failed",
+ "components.governance.transactionFailed": "To participate in governance you need to have ADA in your wallet",
+ "components.governance.noFunds": "To participate in governance you need to have ADA in your wallet",
"components.governance.transactionFailedDescription": "Your transaction has not been processed properly due to technical issues",
"components.governance.tryAgain": "Try again",
+ "components.governance.buyAda": "Buy ada",
+ "components.governance.goToFaucet": "Go to tada faucet",
"components.governance.txFees": "Transaction fee",
"components.governance.withdrawWarningButton": "Participate on governance",
"components.governance.withdrawWarningDescription": "To withdraw your rewards, you need to participate in the Cardano Governance. Your rewards will continue to accumulate, but you are only able to withdraw it once you join the Governance process.",
diff --git a/apps/wallet-mobile/translations/messages/src/WalletNavigator.json b/apps/wallet-mobile/translations/messages/src/WalletNavigator.json
index 86bebc745b..b4c6618ee5 100644
--- a/apps/wallet-mobile/translations/messages/src/WalletNavigator.json
+++ b/apps/wallet-mobile/translations/messages/src/WalletNavigator.json
@@ -4,14 +4,14 @@
"defaultMessage": "!!!Transactions",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 284,
+ "line": 287,
"column": 22,
- "index": 9916
+ "index": 10028
},
"end": {
- "line": 287,
+ "line": 290,
"column": 3,
- "index": 10019
+ "index": 10131
}
},
{
@@ -19,14 +19,14 @@
"defaultMessage": "!!!Send",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 288,
+ "line": 291,
"column": 14,
- "index": 10035
+ "index": 10147
},
"end": {
- "line": 291,
+ "line": 294,
"column": 3,
- "index": 10134
+ "index": 10246
}
},
{
@@ -34,14 +34,14 @@
"defaultMessage": "!!!Receive",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 292,
+ "line": 295,
"column": 17,
- "index": 10153
+ "index": 10265
},
"end": {
- "line": 295,
+ "line": 298,
"column": 3,
- "index": 10258
+ "index": 10370
}
},
{
@@ -49,14 +49,14 @@
"defaultMessage": "!!!Dashboard",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 296,
+ "line": 299,
"column": 19,
- "index": 10279
+ "index": 10391
},
"end": {
- "line": 299,
+ "line": 302,
"column": 3,
- "index": 10376
+ "index": 10488
}
},
{
@@ -64,14 +64,14 @@
"defaultMessage": "!!!Delegate",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 300,
+ "line": 303,
"column": 18,
- "index": 10396
+ "index": 10508
},
"end": {
- "line": 303,
+ "line": 306,
"column": 3,
- "index": 10491
+ "index": 10603
}
},
{
@@ -79,14 +79,14 @@
"defaultMessage": "!!!Wallet",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 304,
+ "line": 307,
"column": 16,
- "index": 10509
+ "index": 10621
},
"end": {
- "line": 307,
+ "line": 310,
"column": 3,
- "index": 10607
+ "index": 10719
}
},
{
@@ -94,14 +94,14 @@
"defaultMessage": "!!!Staking",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 308,
+ "line": 311,
"column": 17,
- "index": 10626
+ "index": 10738
},
"end": {
- "line": 311,
+ "line": 314,
"column": 3,
- "index": 10691
+ "index": 10803
}
},
{
@@ -109,14 +109,14 @@
"defaultMessage": "!!!NFT Gallery",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 312,
+ "line": 315,
"column": 14,
- "index": 10707
+ "index": 10819
},
"end": {
- "line": 315,
+ "line": 318,
"column": 3,
- "index": 10801
+ "index": 10913
}
},
{
@@ -124,14 +124,14 @@
"defaultMessage": "!!!Menu",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 316,
+ "line": 319,
"column": 14,
- "index": 10817
+ "index": 10929
},
"end": {
- "line": 319,
+ "line": 322,
"column": 3,
- "index": 10869
+ "index": 10981
}
},
{
@@ -139,14 +139,14 @@
"defaultMessage": "!!!Discover",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 320,
+ "line": 323,
"column": 18,
- "index": 10889
+ "index": 11001
},
"end": {
- "line": 323,
+ "line": 326,
"column": 3,
- "index": 10978
+ "index": 11090
}
},
{
@@ -154,14 +154,14 @@
"defaultMessage": "!!!My wallets",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 324,
+ "line": 327,
"column": 31,
- "index": 11011
+ "index": 11123
},
"end": {
- "line": 327,
+ "line": 330,
"column": 3,
- "index": 11120
+ "index": 11232
}
},
{
@@ -169,14 +169,14 @@
"defaultMessage": "!!!Portfolio",
"file": "src/WalletNavigator.tsx",
"start": {
- "line": 328,
+ "line": 331,
"column": 19,
- "index": 11141
+ "index": 11253
},
"end": {
- "line": 331,
+ "line": 334,
"column": 3,
- "index": 11210
+ "index": 11322
}
}
]
\ No newline at end of file
diff --git a/apps/wallet-mobile/translations/messages/src/components/PairedBalance/PairedBalance.json b/apps/wallet-mobile/translations/messages/src/components/PairedBalance/PairedBalance.json
index 2711f5d4be..5b7870363d 100644
--- a/apps/wallet-mobile/translations/messages/src/components/PairedBalance/PairedBalance.json
+++ b/apps/wallet-mobile/translations/messages/src/components/PairedBalance/PairedBalance.json
@@ -4,14 +4,14 @@
"defaultMessage": "!!!Error obtaining {currency} pairing",
"file": "src/components/PairedBalance/PairedBalance.tsx",
"start": {
- "line": 107,
+ "line": 117,
"column": 22,
- "index": 3571
+ "index": 3903
},
"end": {
- "line": 110,
+ "line": 120,
"column": 3,
- "index": 3703
+ "index": 4035
}
}
]
\ No newline at end of file
diff --git a/apps/wallet-mobile/translations/messages/src/features/Staking/Governance/common/strings.json b/apps/wallet-mobile/translations/messages/src/features/Staking/Governance/common/strings.json
index e63a77ae4c..0370584731 100644
--- a/apps/wallet-mobile/translations/messages/src/features/Staking/Governance/common/strings.json
+++ b/apps/wallet-mobile/translations/messages/src/features/Staking/Governance/common/strings.json
@@ -4,14 +4,14 @@
"defaultMessage": "!!!Governance dashboard",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 69,
+ "line": 72,
"column": 25,
- "index": 4322
+ "index": 4479
},
"end": {
- "line": 72,
+ "line": 75,
"column": 3,
- "index": 4429
+ "index": 4586
}
},
{
@@ -19,14 +19,14 @@
"defaultMessage": "!!!Confirm transaction",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 73,
+ "line": 76,
"column": 18,
- "index": 4449
+ "index": 4606
},
"end": {
- "line": 76,
+ "line": 79,
"column": 3,
- "index": 4548
+ "index": 4705
}
},
{
@@ -34,14 +34,14 @@
"defaultMessage": "!!!Learn more About Governance",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 77,
+ "line": 80,
"column": 28,
- "index": 4578
+ "index": 4735
},
"end": {
- "line": 80,
+ "line": 83,
"column": 3,
- "index": 4695
+ "index": 4852
}
},
{
@@ -49,14 +49,14 @@
"defaultMessage": "!!!Delegate to a DRep",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 81,
+ "line": 84,
"column": 30,
- "index": 4727
+ "index": 4884
},
"end": {
- "line": 84,
+ "line": 87,
"column": 3,
- "index": 4837
+ "index": 4994
}
},
{
@@ -64,14 +64,14 @@
"defaultMessage": "!!!You are designating someone else to cast vote on your behalf for all proposals now and in the future.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 85,
+ "line": 88,
"column": 36,
- "index": 4875
+ "index": 5032
},
"end": {
- "line": 89,
+ "line": 92,
"column": 3,
- "index": 5080
+ "index": 5237
}
},
{
@@ -79,14 +79,14 @@
"defaultMessage": "!!!Abstain",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 90,
+ "line": 93,
"column": 22,
- "index": 5104
+ "index": 5261
},
"end": {
- "line": 93,
+ "line": 96,
"column": 3,
- "index": 5195
+ "index": 5352
}
},
{
@@ -94,14 +94,14 @@
"defaultMessage": "!!!You are choosing not to cast a vote on all proposals now and in the future.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 94,
+ "line": 97,
"column": 28,
- "index": 5225
+ "index": 5382
},
"end": {
- "line": 97,
+ "line": 100,
"column": 3,
- "index": 5390
+ "index": 5547
}
},
{
@@ -109,14 +109,14 @@
"defaultMessage": "!!!No confidence",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 98,
+ "line": 101,
"column": 27,
- "index": 5419
+ "index": 5576
},
"end": {
- "line": 101,
+ "line": 104,
"column": 3,
- "index": 5521
+ "index": 5678
}
},
{
@@ -124,14 +124,14 @@
"defaultMessage": "!!!You are expressing a lack of trust for all proposals now and in the future.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 102,
+ "line": 105,
"column": 33,
- "index": 5556
+ "index": 5713
},
"end": {
- "line": 105,
+ "line": 108,
"column": 3,
- "index": 5726
+ "index": 5883
}
},
{
@@ -139,14 +139,14 @@
"defaultMessage": "!!!DRep Key",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 106,
+ "line": 109,
"column": 11,
- "index": 5739
+ "index": 5896
},
"end": {
- "line": 109,
+ "line": 112,
"column": 3,
- "index": 5820
+ "index": 5977
}
},
{
@@ -154,14 +154,14 @@
"defaultMessage": "!!!Delegating to a DRep",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 110,
+ "line": 113,
"column": 21,
- "index": 5843
+ "index": 6000
},
"end": {
- "line": 113,
+ "line": 116,
"column": 3,
- "index": 5946
+ "index": 6103
}
},
{
@@ -169,14 +169,14 @@
"defaultMessage": "!!!Abstaining",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 114,
+ "line": 117,
"column": 14,
- "index": 5962
+ "index": 6119
},
"end": {
- "line": 117,
+ "line": 120,
"column": 3,
- "index": 6048
+ "index": 6205
}
},
{
@@ -184,14 +184,14 @@
"defaultMessage": "!!!Delegate voting to \n{drepID}",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 118,
+ "line": 121,
"column": 24,
- "index": 6074
+ "index": 6231
},
"end": {
- "line": 121,
+ "line": 124,
"column": 3,
- "index": 6189
+ "index": 6346
}
},
{
@@ -199,14 +199,14 @@
"defaultMessage": "!!!Select abstain",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 122,
+ "line": 125,
"column": 17,
- "index": 6208
+ "index": 6365
},
"end": {
- "line": 125,
+ "line": 128,
"column": 3,
- "index": 6301
+ "index": 6458
}
},
{
@@ -214,14 +214,14 @@
"defaultMessage": "!!!Select no confidence",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 126,
+ "line": 129,
"column": 22,
- "index": 6325
+ "index": 6482
},
"end": {
- "line": 129,
+ "line": 132,
"column": 3,
- "index": 6429
+ "index": 6586
}
},
{
@@ -229,14 +229,14 @@
"defaultMessage": "!!!Operations",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 130,
+ "line": 133,
"column": 14,
- "index": 6445
+ "index": 6602
},
"end": {
- "line": 133,
+ "line": 136,
"column": 3,
- "index": 6531
+ "index": 6688
}
},
{
@@ -244,14 +244,14 @@
"defaultMessage": "!!!Enter password to sign this transaction",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 134,
+ "line": 137,
"column": 17,
- "index": 6550
+ "index": 6707
},
"end": {
- "line": 137,
+ "line": 140,
"column": 3,
- "index": 6668
+ "index": 6825
}
},
{
@@ -259,14 +259,14 @@
"defaultMessage": "!!!Drep ID",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 138,
+ "line": 141,
"column": 10,
- "index": 6680
+ "index": 6837
},
"end": {
- "line": 141,
+ "line": 144,
"column": 3,
- "index": 6759
+ "index": 6916
}
},
{
@@ -274,14 +274,14 @@
"defaultMessage": "!!!Thank you for participating in Governance",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 142,
+ "line": 145,
"column": 28,
- "index": 6789
+ "index": 6946
},
"end": {
- "line": 145,
+ "line": 148,
"column": 3,
- "index": 6920
+ "index": 7077
}
},
{
@@ -289,14 +289,14 @@
"defaultMessage": "!!!This transaction can take a while!",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 146,
+ "line": 149,
"column": 32,
- "index": 6954
+ "index": 7111
},
"end": {
- "line": 149,
+ "line": 152,
"column": 3,
- "index": 7082
+ "index": 7239
}
},
{
@@ -304,14 +304,14 @@
"defaultMessage": "!!!Participating in the Cardano Governance gives you the opportunity to participate in the voting as well as withdraw your staking rewards",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 150,
+ "line": 153,
"column": 25,
- "index": 7109
+ "index": 7266
},
"end": {
- "line": 154,
+ "line": 157,
"column": 3,
- "index": 7337
+ "index": 7494
}
},
{
@@ -319,14 +319,14 @@
"defaultMessage": "!!!Go to Governance",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 155,
+ "line": 158,
"column": 18,
- "index": 7357
+ "index": 7514
},
"end": {
- "line": 158,
+ "line": 161,
"column": 3,
- "index": 7453
+ "index": 7610
}
},
{
@@ -334,14 +334,14 @@
"defaultMessage": "!!!Find a DRep here",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 159,
+ "line": 162,
"column": 16,
- "index": 7471
+ "index": 7628
},
"end": {
- "line": 162,
+ "line": 165,
"column": 3,
- "index": 7565
+ "index": 7722
}
},
{
@@ -349,14 +349,14 @@
"defaultMessage": "!!!Review the selections carefully to assign yourself a Governance Status",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 163,
+ "line": 166,
"column": 17,
- "index": 7584
+ "index": 7741
},
"end": {
- "line": 166,
+ "line": 169,
"column": 3,
- "index": 7733
+ "index": 7890
}
},
{
@@ -364,14 +364,14 @@
"defaultMessage": "!!!You have selected {action} as your governance status.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 167,
+ "line": 170,
"column": 34,
- "index": 7769
+ "index": 7926
},
"end": {
- "line": 170,
+ "line": 173,
"column": 3,
- "index": 7925
+ "index": 8082
}
},
{
@@ -379,14 +379,14 @@
"defaultMessage": "!!!You have selected {action} as your governance status. You can change it at any time by clicking in the card below.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 171,
+ "line": 174,
"column": 25,
- "index": 7952
+ "index": 8109
},
"end": {
- "line": 175,
+ "line": 178,
"column": 3,
- "index": 8166
+ "index": 8323
}
},
{
@@ -394,14 +394,14 @@
"defaultMessage": "!!!Change DRep",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 176,
+ "line": 179,
"column": 14,
- "index": 8182
+ "index": 8339
},
"end": {
- "line": 179,
+ "line": 182,
"column": 3,
- "index": 8269
+ "index": 8426
}
},
{
@@ -409,14 +409,14 @@
"defaultMessage": "!!!Confirm",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 180,
+ "line": 183,
"column": 11,
- "index": 8282
+ "index": 8439
},
"end": {
- "line": 183,
+ "line": 186,
"column": 3,
- "index": 8362
+ "index": 8519
}
},
{
@@ -424,14 +424,14 @@
"defaultMessage": "!!!Transaction details",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 184,
+ "line": 187,
"column": 22,
- "index": 8386
+ "index": 8543
},
"end": {
- "line": 187,
+ "line": 190,
"column": 3,
- "index": 8489
+ "index": 8646
}
},
{
@@ -439,14 +439,14 @@
"defaultMessage": "!!!Total",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 188,
+ "line": 191,
"column": 9,
- "index": 8500
+ "index": 8657
},
"end": {
- "line": 191,
+ "line": 194,
"column": 3,
- "index": 8576
+ "index": 8733
}
},
{
@@ -454,14 +454,29 @@
"defaultMessage": "!!!Transaction failed",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 192,
+ "line": 195,
"column": 21,
- "index": 8599
+ "index": 8756
},
"end": {
- "line": 195,
+ "line": 198,
+ "column": 3,
+ "index": 8857
+ }
+ },
+ {
+ "id": "components.governance.noFunds",
+ "defaultMessage": "!!!To participate in governance you need to have ADA in your wallet",
+ "file": "src/features/Staking/Governance/common/strings.ts",
+ "start": {
+ "line": 199,
+ "column": 11,
+ "index": 8870
+ },
+ "end": {
+ "line": 202,
"column": 3,
- "index": 8700
+ "index": 9007
}
},
{
@@ -469,14 +484,14 @@
"defaultMessage": "!!!Your transaction has not been processed properly due to technical issues",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 196,
+ "line": 203,
"column": 32,
- "index": 8734
+ "index": 9041
},
"end": {
- "line": 199,
+ "line": 206,
"column": 3,
- "index": 8900
+ "index": 9207
}
},
{
@@ -484,14 +499,44 @@
"defaultMessage": "!!!Try again",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 200,
+ "line": 207,
"column": 12,
- "index": 8914
+ "index": 9221
},
"end": {
- "line": 203,
+ "line": 210,
"column": 3,
- "index": 8997
+ "index": 9304
+ }
+ },
+ {
+ "id": "components.governance.buyAda",
+ "defaultMessage": "!!!Buy ada",
+ "file": "src/features/Staking/Governance/common/strings.ts",
+ "start": {
+ "line": 211,
+ "column": 10,
+ "index": 9316
+ },
+ "end": {
+ "line": 214,
+ "column": 3,
+ "index": 9395
+ }
+ },
+ {
+ "id": "components.governance.goToFaucet",
+ "defaultMessage": "!!!Go to tada faucet",
+ "file": "src/features/Staking/Governance/common/strings.ts",
+ "start": {
+ "line": 215,
+ "column": 14,
+ "index": 9411
+ },
+ "end": {
+ "line": 218,
+ "column": 3,
+ "index": 9504
}
},
{
@@ -499,14 +544,14 @@
"defaultMessage": "!!!Withdraw warning",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 204,
+ "line": 219,
"column": 24,
- "index": 9023
+ "index": 9530
},
"end": {
- "line": 207,
+ "line": 222,
"column": 3,
- "index": 9125
+ "index": 9632
}
},
{
@@ -514,14 +559,14 @@
"defaultMessage": "!!!To withdraw your rewards, you need to participate in the Cardano Governance. Your rewards will continue to accumulate, but you are only able to withdraw it once you join the Governance process.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 208,
+ "line": 223,
"column": 30,
- "index": 9157
+ "index": 9664
},
"end": {
- "line": 212,
+ "line": 227,
"column": 3,
- "index": 9448
+ "index": 9955
}
},
{
@@ -529,14 +574,14 @@
"defaultMessage": "!!!Participate on governance",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 213,
+ "line": 228,
"column": 25,
- "index": 9475
+ "index": 9982
},
"end": {
- "line": 216,
+ "line": 231,
"column": 3,
- "index": 9587
+ "index": 10094
}
},
{
@@ -544,14 +589,14 @@
"defaultMessage": "!!!Choose your Drep",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 217,
+ "line": 232,
"column": 15,
- "index": 9604
+ "index": 10111
},
"end": {
- "line": 220,
+ "line": 235,
"column": 3,
- "index": 9697
+ "index": 10204
}
},
{
@@ -559,14 +604,14 @@
"defaultMessage": "!!!Hardware wallet support coming soon",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 221,
+ "line": 236,
"column": 35,
- "index": 9734
+ "index": 10241
},
"end": {
- "line": 224,
+ "line": 239,
"column": 3,
- "index": 9866
+ "index": 10373
}
},
{
@@ -574,14 +619,14 @@
"defaultMessage": "!!!We are currently working on integrating hardware wallet support for Governance",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 225,
+ "line": 240,
"column": 34,
- "index": 9902
+ "index": 10409
},
"end": {
- "line": 228,
+ "line": 243,
"column": 3,
- "index": 10076
+ "index": 10583
}
},
{
@@ -589,14 +634,14 @@
"defaultMessage": "!!!Go to wallet",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 229,
+ "line": 244,
"column": 14,
- "index": 10092
+ "index": 10599
},
"end": {
- "line": 232,
+ "line": 247,
"column": 3,
- "index": 10180
+ "index": 10687
}
},
{
@@ -604,14 +649,14 @@
"defaultMessage": "!!!Transaction fee",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 233,
+ "line": 248,
"column": 10,
- "index": 10192
+ "index": 10699
},
"end": {
- "line": 236,
+ "line": 251,
"column": 3,
- "index": 10279
+ "index": 10786
}
},
{
@@ -619,14 +664,14 @@
"defaultMessage": "!!!Register staking key",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 237,
+ "line": 252,
"column": 22,
- "index": 10303
+ "index": 10810
},
"end": {
- "line": 240,
+ "line": 255,
"column": 3,
- "index": 10407
+ "index": 10914
}
},
{
@@ -634,14 +679,14 @@
"defaultMessage": "!!!Identify your preferred DRep and enter their ID below to delegate your vote",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 241,
+ "line": 256,
"column": 19,
- "index": 10428
+ "index": 10935
},
"end": {
- "line": 244,
+ "line": 259,
"column": 3,
- "index": 10584
+ "index": 11091
}
},
{
@@ -649,14 +694,14 @@
"defaultMessage": "!!!Go to Staking",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 245,
+ "line": 260,
"column": 15,
- "index": 10601
+ "index": 11108
},
"end": {
- "line": 248,
+ "line": 263,
"column": 3,
- "index": 10691
+ "index": 11198
}
},
{
@@ -664,14 +709,14 @@
"defaultMessage": "!!!You are now ready to collect your rewards.",
"file": "src/features/Staking/Governance/common/strings.ts",
"start": {
- "line": 249,
+ "line": 264,
"column": 25,
- "index": 10718
+ "index": 11225
},
"end": {
- "line": 252,
+ "line": 267,
"column": 3,
- "index": 10847
+ "index": 11354
}
}
]
\ No newline at end of file