From 7343e23018c2138e2110b632f314f108db91a6bb Mon Sep 17 00:00:00 2001 From: "Valentin D. Pinkman" Date: Wed, 3 Oct 2018 18:23:35 +0200 Subject: [PATCH 1/2] merged the 4 translation files into one --- src/components/Onboarding/steps/Analytics.js | 18 +- src/components/Onboarding/steps/Finish.js | 6 +- .../GenuineCheck/GenuineCheckErrorPage.js | 16 +- .../Onboarding/steps/GenuineCheck/index.js | 16 +- src/components/Onboarding/steps/Init.js | 10 +- src/components/Onboarding/steps/NoDevice.js | 8 +- .../Onboarding/steps/SelectDevice.js | 6 +- .../steps/SelectPIN/SelectPINblue.js | 12 +- .../steps/SelectPIN/SelectPINnano.js | 14 +- .../steps/SelectPIN/SelectPINrestoreBlue.js | 12 +- .../steps/SelectPIN/SelectPINrestoreNano.js | 14 +- .../Onboarding/steps/SelectPIN/index.js | 4 +- .../Onboarding/steps/SetPassword.js | 10 +- src/components/Onboarding/steps/Start.js | 4 +- .../steps/WriteSeed/WriteSeedBlue.js | 18 +- .../steps/WriteSeed/WriteSeedNano.js | 18 +- .../steps/WriteSeed/WriteSeedRestore.js | 26 +- src/components/SettingsPage/LanguageSelect.js | 4 +- src/components/TranslatedError.js | 6 +- src/components/modals/ShareAnalytics.js | 24 +- src/components/modals/TechnicalData.js | 14 +- src/reducers/onboarding.js | 12 +- static/i18n/en/app.json | 391 ++++++++++++++++++ static/i18n/en/errors.json | 182 -------- static/i18n/en/language.json | 5 - static/i18n/en/onboarding.json | 204 --------- 26 files changed, 528 insertions(+), 526 deletions(-) delete mode 100644 static/i18n/en/errors.json delete mode 100644 static/i18n/en/language.json delete mode 100644 static/i18n/en/onboarding.json diff --git a/src/components/Onboarding/steps/Analytics.js b/src/components/Onboarding/steps/Analytics.js index 2ac8af4d..0e6897d7 100644 --- a/src/components/Onboarding/steps/Analytics.js +++ b/src/components/Onboarding/steps/Analytics.js @@ -70,14 +70,14 @@ class Analytics extends PureComponent { deviceType={onboarding.isLedgerNano ? 'Nano S' : 'Blue'} /> - {t('onboarding:analytics.title')} - {t('onboarding:analytics.desc')} + {t('app:onboarding.analytics.title')} + {t('app:onboarding.analytics.desc')} - {t('onboarding:analytics.technicalData.title')} + {t('app:onboarding.analytics.technicalData.title')} { - {t('onboarding:analytics.technicalData.desc')} + {t('app:onboarding.analytics.technicalData.desc')} - {t('onboarding:analytics.technicalData.mandatoryText')} + {t('app:onboarding.analytics.technicalData.mandatoryText')} @@ -106,7 +106,7 @@ class Analytics extends PureComponent { - {t('onboarding:analytics.shareAnalytics.title')} + {t('app:onboarding.analytics.shareAnalytics.title')} { - {t('onboarding:analytics.shareAnalytics.desc')} + {t('app:onboarding.analytics.shareAnalytics.desc')} { - {t('onboarding:analytics.sentryLogs.title')} + {t('app:onboarding.analytics.sentryLogs.title')} - {t('onboarding:analytics.sentryLogs.desc')} + {t('app:onboarding.analytics.sentryLogs.desc')} { - {t('onboarding:finish.title')} - {t('onboarding:finish.desc')} + {t('app:onboarding.finish.title')} + {t('app:onboarding.finish.desc')} diff --git a/src/components/Onboarding/steps/GenuineCheck/GenuineCheckErrorPage.js b/src/components/Onboarding/steps/GenuineCheck/GenuineCheckErrorPage.js index c9f0a5ec..443f5731 100644 --- a/src/components/Onboarding/steps/GenuineCheck/GenuineCheckErrorPage.js +++ b/src/components/Onboarding/steps/GenuineCheck/GenuineCheckErrorPage.js @@ -40,21 +40,23 @@ class GenuineCheckErrorPage extends PureComponent { {onboarding.genuine.isGenuineFail ? ( {this.trackErrorPage('Not Genuine')} - {t('onboarding:genuineCheck.errorPage.title.isGenuineFail')} - {t('onboarding:genuineCheck.errorPage.desc.isGenuineFail')} + {t('app:onboarding.genuineCheck.errorPage.title.isGenuineFail')} + + {t('app:onboarding.genuineCheck.errorPage.desc.isGenuineFail')} + ) : !onboarding.genuine.pinStepPass ? ( {this.trackErrorPage('PIN Step')} - {t('onboarding:genuineCheck.errorPage.title.pinFailed')} - {t('onboarding:genuineCheck.errorPage.desc.pinFailed')} + {t('app:onboarding.genuineCheck.errorPage.title.pinFailed')} + {t('app:onboarding.genuineCheck.errorPage.desc.pinFailed')} ) : ( {this.trackErrorPage('Recovery Phase Step')} - {t('onboarding:genuineCheck.errorPage.title.recoveryPhraseFailed')} + {t('app:onboarding.genuineCheck.errorPage.title.recoveryPhraseFailed')} - {t('onboarding:genuineCheck.errorPage.desc.recoveryPhraseFailed')} + {t('app:onboarding.genuineCheck.errorPage.desc.recoveryPhraseFailed')} )} @@ -83,7 +85,7 @@ class GenuineCheckErrorPage extends PureComponent { diff --git a/src/components/Onboarding/steps/GenuineCheck/index.js b/src/components/Onboarding/steps/GenuineCheck/index.js index 5be2b91b..801811b0 100644 --- a/src/components/Onboarding/steps/GenuineCheck/index.js +++ b/src/components/Onboarding/steps/GenuineCheck/index.js @@ -174,18 +174,18 @@ class GenuineCheck extends PureComponent { deviceType={onboarding.isLedgerNano ? 'Nano S' : 'Blue'} /> - {t('onboarding:genuineCheck.title')} + {t('app:onboarding.genuineCheck.title')} {onboarding.flowType === 'restoreDevice' ? ( - {t('onboarding:genuineCheck.descRestore')} + {t('app:onboarding.genuineCheck.descRestore')} ) : ( - {t('onboarding:genuineCheck.descGeneric')} + {t('app:onboarding.genuineCheck.descGeneric')} )} {'1.'} - {t('onboarding:genuineCheck.step1.title')} + {t('app:onboarding.genuineCheck.step1.title')} @@ -204,7 +204,7 @@ class GenuineCheck extends PureComponent { {'2.'} - {t('onboarding:genuineCheck.step2.title')} + {t('app:onboarding.genuineCheck.step2.title')} @@ -228,7 +228,7 @@ class GenuineCheck extends PureComponent { {'3.'} - {t('onboarding:genuineCheck.step3.title')} + {t('app:onboarding.genuineCheck.step3.title')} {genuine.recoveryStepPass && ( @@ -237,7 +237,7 @@ class GenuineCheck extends PureComponent { - {t('onboarding:genuineCheck.isGenuinePassed')} + {t('app:onboarding.genuineCheck.isGenuinePassed')} ) : genuine.genuineCheckUnavailable ? ( @@ -250,7 +250,7 @@ class GenuineCheck extends PureComponent { disabled={!genuine.recoveryStepPass} onClick={this.handleOpenGenuineCheckModal} > - {t('onboarding:genuineCheck.buttons.genuineCheck')} + {t('app:onboarding.genuineCheck.buttons.genuineCheck')} )} diff --git a/src/components/Onboarding/steps/Init.js b/src/components/Onboarding/steps/Init.js index 8b028718..3dcdc577 100644 --- a/src/components/Onboarding/steps/Init.js +++ b/src/components/Onboarding/steps/Init.js @@ -30,7 +30,7 @@ class Init extends PureComponent { { key: 'newDevice', icon: , - title: t('onboarding:init.newDevice.title'), + title: t('app:onboarding.init.newDevice.title'), onClick: () => { jumpStep('selectDevice') flowType('newDevice') @@ -39,7 +39,7 @@ class Init extends PureComponent { { key: 'restoreDevice', icon: , - title: t('onboarding:init.restoreDevice.title'), + title: t('app:onboarding.init.restoreDevice.title'), onClick: () => { jumpStep('selectDevice') flowType('restoreDevice') @@ -48,7 +48,7 @@ class Init extends PureComponent { { key: 'initializedDevice', icon: , - title: t('onboarding:init.initializedDevice.title'), + title: t('app:onboarding.init.initializedDevice.title'), onClick: () => { jumpStep('selectDevice') flowType('initializedDevice') @@ -57,7 +57,7 @@ class Init extends PureComponent { { key: 'noDevice', icon: , - title: t('onboarding:noDevice.title'), + title: t('app:onboarding.noDevice.title'), onClick: () => { jumpStep('noDevice') flowType('noDevice') @@ -77,7 +77,7 @@ class Init extends PureComponent { } /> - {t('onboarding:init.title')} + {t('app:onboarding.init.title')} {optionCards.map(card => )} diff --git a/src/components/Onboarding/steps/NoDevice.js b/src/components/Onboarding/steps/NoDevice.js index 26365db0..e9fed8a4 100644 --- a/src/components/Onboarding/steps/NoDevice.js +++ b/src/components/Onboarding/steps/NoDevice.js @@ -26,7 +26,7 @@ class NoDevice extends PureComponent { { key: 'buyNew', icon: , - title: t('onboarding:noDevice.buyNew.title'), + title: t('app:onboarding.noDevice.buyNew.title'), onClick: () => { openURL(urls.noDeviceBuyNew) }, @@ -34,7 +34,7 @@ class NoDevice extends PureComponent { { key: 'trackOrder', icon: , - title: t('onboarding:noDevice.trackOrder.title'), + title: t('app:onboarding.noDevice.trackOrder.title'), onClick: () => { openURL(urls.noDeviceTrackOrder) }, @@ -42,7 +42,7 @@ class NoDevice extends PureComponent { { key: 'learnMore', icon: , - title: t('onboarding:noDevice.learnMore.title'), + title: t('app:onboarding.noDevice.learnMore.title'), onClick: () => { openURL(urls.noDeviceLearnMore) }, @@ -68,7 +68,7 @@ class NoDevice extends PureComponent { } /> - {t('onboarding:noDevice.title')} + {t('app:onboarding.noDevice.title')} {optionCards.map(card => )} diff --git a/src/components/Onboarding/steps/SelectDevice.js b/src/components/Onboarding/steps/SelectDevice.js index 9676937c..be1811fe 100644 --- a/src/components/Onboarding/steps/SelectDevice.js +++ b/src/components/Onboarding/steps/SelectDevice.js @@ -41,7 +41,7 @@ class SelectDevice extends PureComponent { - {t('onboarding:selectDevice.title')} + {t('app:onboarding.selectDevice.title')} @@ -53,7 +53,7 @@ class SelectDevice extends PureComponent { - {t('onboarding:selectDevice.ledgerNanoCard.title')} + {t('app:onboarding.selectDevice.ledgerNanoCard.title')} { - {t('onboarding:selectDevice.ledgerBlueCard.title')} + {t('app:onboarding.selectDevice.ledgerBlueCard.title')} diff --git a/src/components/Onboarding/steps/SelectPIN/SelectPINblue.js b/src/components/Onboarding/steps/SelectPIN/SelectPINblue.js index e612ee73..32c6c4fb 100644 --- a/src/components/Onboarding/steps/SelectPIN/SelectPINblue.js +++ b/src/components/Onboarding/steps/SelectPIN/SelectPINblue.js @@ -25,14 +25,14 @@ class SelectPIN extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:selectPIN.initialize.instructions.blue.step1'), + desc: t('app:onboarding.selectPIN.initialize.instructions.blue.step1'), }, { key: 'step2', icon: {'2.'}, desc: ( - + {'Tap on'} {'Configure as new device'} @@ -44,7 +44,7 @@ class SelectPIN extends PureComponent { { key: 'step3', icon: {'3.'}, - desc: t('onboarding:selectPIN.initialize.instructions.blue.step3'), + desc: t('app:onboarding.selectPIN.initialize.instructions.blue.step3'), }, ] @@ -52,17 +52,17 @@ class SelectPIN extends PureComponent { { key: 'note1', icon: , - desc: t('onboarding:selectPIN.disclaimer.note1'), + desc: t('app:onboarding.selectPIN.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:selectPIN.disclaimer.note2'), + desc: t('app:onboarding.selectPIN.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:selectPIN.disclaimer.note3'), + desc: t('app:onboarding.selectPIN.disclaimer.note3'), }, ] diff --git a/src/components/Onboarding/steps/SelectPIN/SelectPINnano.js b/src/components/Onboarding/steps/SelectPIN/SelectPINnano.js index 00a35774..d02c96d3 100644 --- a/src/components/Onboarding/steps/SelectPIN/SelectPINnano.js +++ b/src/components/Onboarding/steps/SelectPIN/SelectPINnano.js @@ -25,19 +25,19 @@ class SelectPINnano extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:selectPIN.initialize.instructions.nano.step1'), + desc: t('app:onboarding.selectPIN.initialize.instructions.nano.step1'), }, { key: 'step2', icon: {'2.'}, - desc: t('onboarding:selectPIN.initialize.instructions.nano.step2'), + desc: t('app:onboarding.selectPIN.initialize.instructions.nano.step2'), }, { key: 'step3', icon: {'3.'}, desc: ( - + {'Press the right button to select'} {'Configure as new device'} @@ -49,24 +49,24 @@ class SelectPINnano extends PureComponent { { key: 'step4', icon: {'4.'}, - desc: t('onboarding:selectPIN.initialize.instructions.nano.step4'), + desc: t('app:onboarding.selectPIN.initialize.instructions.nano.step4'), }, ] const disclaimerNotes = [ { key: 'note1', icon: , - desc: t('onboarding:selectPIN.disclaimer.note1'), + desc: t('app:onboarding.selectPIN.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:selectPIN.disclaimer.note2'), + desc: t('app:onboarding.selectPIN.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:selectPIN.disclaimer.note3'), + desc: t('app:onboarding.selectPIN.disclaimer.note3'), }, ] diff --git a/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreBlue.js b/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreBlue.js index 18566798..11e1c71f 100644 --- a/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreBlue.js +++ b/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreBlue.js @@ -25,14 +25,14 @@ class SelectPINrestoreBlue extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:selectPIN.restore.instructions.blue.step1'), + desc: t('app:onboarding.selectPIN.restore.instructions.blue.step1'), }, { key: 'step2', icon: {'2.'}, desc: ( - + {'Tap on'} {'Restore configuration'} @@ -44,7 +44,7 @@ class SelectPINrestoreBlue extends PureComponent { { key: 'step3', icon: {'3.'}, - desc: t('onboarding:selectPIN.restore.instructions.blue.step3'), + desc: t('app:onboarding.selectPIN.restore.instructions.blue.step3'), }, ] @@ -52,17 +52,17 @@ class SelectPINrestoreBlue extends PureComponent { { key: 'note1', icon: , - desc: t('onboarding:selectPIN.disclaimer.note1'), + desc: t('app:onboarding.selectPIN.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:selectPIN.disclaimer.note2'), + desc: t('app:onboarding.selectPIN.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:selectPIN.disclaimer.note3'), + desc: t('app:onboarding.selectPIN.disclaimer.note3'), }, ] diff --git a/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreNano.js b/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreNano.js index 1d3302f8..99a0ad59 100644 --- a/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreNano.js +++ b/src/components/Onboarding/steps/SelectPIN/SelectPINrestoreNano.js @@ -25,19 +25,19 @@ class SelectPINrestoreNano extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:selectPIN.restore.instructions.nano.step1'), + desc: t('app:onboarding.selectPIN.restore.instructions.nano.step1'), }, { key: 'step2', icon: {'2.'}, - desc: t('onboarding:selectPIN.restore.instructions.nano.step2'), + desc: t('app:onboarding.selectPIN.restore.instructions.nano.step2'), }, { key: 'step3', icon: {'3.'}, desc: ( - + {'Press the left button to cancel'} {'Initialize as new device?'} @@ -53,24 +53,24 @@ class SelectPINrestoreNano extends PureComponent { { key: 'step4', icon: {'4.'}, - desc: t('onboarding:selectPIN.restore.instructions.nano.step4'), + desc: t('app:onboarding.selectPIN.restore.instructions.nano.step4'), }, ] const disclaimerNotes = [ { key: 'note1', icon: , - desc: t('onboarding:selectPIN.disclaimer.note1'), + desc: t('app:onboarding.selectPIN.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:selectPIN.disclaimer.note2'), + desc: t('app:onboarding.selectPIN.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:selectPIN.disclaimer.note3'), + desc: t('app:onboarding.selectPIN.disclaimer.note3'), }, ] diff --git a/src/components/Onboarding/steps/SelectPIN/index.js b/src/components/Onboarding/steps/SelectPIN/index.js index f6f6227a..d5587ad3 100644 --- a/src/components/Onboarding/steps/SelectPIN/index.js +++ b/src/components/Onboarding/steps/SelectPIN/index.js @@ -29,14 +29,14 @@ export default (props: StepProps) => { /> {onboarding.flowType === 'restoreDevice' ? ( - {t('onboarding:selectPIN.restore.title')} + {t('app:onboarding.selectPIN.restore.title')} {onboarding.isLedgerNano ? : } ) : ( - {t('onboarding:selectPIN.initialize.title')} + {t('app:onboarding.selectPIN.initialize.title')} {onboarding.isLedgerNano ? : } diff --git a/src/components/Onboarding/steps/SetPassword.js b/src/components/Onboarding/steps/SetPassword.js index 767f4552..ec3294e5 100644 --- a/src/components/Onboarding/steps/SetPassword.js +++ b/src/components/Onboarding/steps/SetPassword.js @@ -85,17 +85,17 @@ class SetPassword extends PureComponent { { key: 'note1', icon: , - desc: t('onboarding:setPassword.disclaimer.note1'), + desc: t('app:onboarding.setPassword.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:setPassword.disclaimer.note2'), + desc: t('app:onboarding.setPassword.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:setPassword.disclaimer.note3'), + desc: t('app:onboarding.setPassword.disclaimer.note3'), }, ] @@ -110,9 +110,9 @@ class SetPassword extends PureComponent { - {t('onboarding:setPassword.title')} + {t('app:onboarding.setPassword.title')} - {t('onboarding:setPassword.desc')} + {t('app:onboarding.setPassword.desc')} diff --git a/src/components/Onboarding/steps/Start.js b/src/components/Onboarding/steps/Start.js index d5fcdbe8..dcc77d7c 100644 --- a/src/components/Onboarding/steps/Start.js +++ b/src/components/Onboarding/steps/Start.js @@ -21,10 +21,10 @@ export default (props: StepProps) => { icon={} /> - {t('onboarding:start.title')} + {t('app:onboarding.start.title')} diff --git a/src/components/Onboarding/steps/WriteSeed/WriteSeedBlue.js b/src/components/Onboarding/steps/WriteSeed/WriteSeedBlue.js index 872e07b8..84a995df 100644 --- a/src/components/Onboarding/steps/WriteSeed/WriteSeedBlue.js +++ b/src/components/Onboarding/steps/WriteSeed/WriteSeedBlue.js @@ -31,14 +31,14 @@ class WriteSeedBlue extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:writeSeed.initialize.blue.step1'), + desc: t('app:onboarding.writeSeed.initialize.blue.step1'), }, { key: 'step2', icon: {'2.'}, desc: ( - + {'Tap'} {'Next'} @@ -55,37 +55,37 @@ class WriteSeedBlue extends PureComponent { { key: 'step3', icon: {'3.'}, - desc: t('onboarding:writeSeed.initialize.blue.step3'), + desc: t('app:onboarding.writeSeed.initialize.blue.step3'), }, ] const disclaimerNotes = [ { key: 'note1', icon: , - desc: t('onboarding:writeSeed.disclaimer.note1'), + desc: t('app:onboarding.writeSeed.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:writeSeed.disclaimer.note2'), + desc: t('app:onboarding.writeSeed.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:writeSeed.disclaimer.note3'), + desc: t('app:onboarding.writeSeed.disclaimer.note3'), }, { key: 'note4', icon: , - desc: t('onboarding:writeSeed.disclaimer.note4'), + desc: t('app:onboarding.writeSeed.disclaimer.note4'), }, ] return ( - {t('onboarding:writeSeed.initialize.title')} - {t('onboarding:writeSeed.initialize.desc')} + {t('app:onboarding.writeSeed.initialize.title')} + {t('app:onboarding.writeSeed.initialize.desc')} diff --git a/src/components/Onboarding/steps/WriteSeed/WriteSeedNano.js b/src/components/Onboarding/steps/WriteSeed/WriteSeedNano.js index 18f4c1b5..ffbec310 100644 --- a/src/components/Onboarding/steps/WriteSeed/WriteSeedNano.js +++ b/src/components/Onboarding/steps/WriteSeed/WriteSeedNano.js @@ -33,7 +33,7 @@ class WriteSeedNano extends PureComponent { icon: {'1.'}, desc: ( - + {'Copy the word displayed below'} {'Word #1'} @@ -48,7 +48,7 @@ class WriteSeedNano extends PureComponent { icon: {'2.'}, desc: ( - + {'Press the right button to display'} {'Word #2'} @@ -61,37 +61,37 @@ class WriteSeedNano extends PureComponent { { key: 'step3', icon: {'3.'}, - desc: t('onboarding:writeSeed.initialize.nano.step3'), + desc: t('app:onboarding.writeSeed.initialize.nano.step3'), }, ] const disclaimerNotes = [ { key: 'note1', icon: , - desc: t('onboarding:writeSeed.disclaimer.note1'), + desc: t('app:onboarding.writeSeed.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:writeSeed.disclaimer.note2'), + desc: t('app:onboarding.writeSeed.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:writeSeed.disclaimer.note3'), + desc: t('app:onboarding.writeSeed.disclaimer.note3'), }, { key: 'note4', icon: , - desc: t('onboarding:writeSeed.disclaimer.note4'), + desc: t('app:onboarding.writeSeed.disclaimer.note4'), }, ] return ( - {t('onboarding:writeSeed.initialize.title')} - {t('onboarding:writeSeed.initialize.desc')} + {t('app:onboarding.writeSeed.initialize.title')} + {t('app:onboarding.writeSeed.initialize.desc')} diff --git a/src/components/Onboarding/steps/WriteSeed/WriteSeedRestore.js b/src/components/Onboarding/steps/WriteSeed/WriteSeedRestore.js index ad9de3fb..ed56ff6f 100644 --- a/src/components/Onboarding/steps/WriteSeed/WriteSeedRestore.js +++ b/src/components/Onboarding/steps/WriteSeed/WriteSeedRestore.js @@ -34,14 +34,14 @@ class WriteSeedRestore extends PureComponent { { key: 'step1', icon: {'1.'}, - desc: t('onboarding:writeSeed.restore.nano.step1'), + desc: t('app:onboarding.writeSeed.restore.nano.step1'), }, { key: 'step2', icon: {'2.'}, desc: ( - + {'Select the first letters of'} {'Word #1'} @@ -56,7 +56,7 @@ class WriteSeedRestore extends PureComponent { icon: {'3.'}, desc: ( - + {'Select'} {'Word #1'} @@ -69,54 +69,54 @@ class WriteSeedRestore extends PureComponent { { key: 'step4', icon: {'4.'}, - desc: t('onboarding:writeSeed.restore.nano.step4'), + desc: t('app:onboarding.writeSeed.restore.nano.step4'), }, ] const stepsBlue = [ { key: 'step1', icon: {'1.'}, - desc: t('onboarding:writeSeed.restore.blue.step1'), + desc: t('app:onboarding.writeSeed.restore.blue.step1'), }, { key: 'step2', icon: {'2.'}, - desc: t('onboarding:writeSeed.restore.blue.step2'), + desc: t('app:onboarding.writeSeed.restore.blue.step2'), }, { key: 'step3', icon: {'3.'}, - desc: t('onboarding:writeSeed.restore.blue.step3'), + desc: t('app:onboarding.writeSeed.restore.blue.step3'), }, ] const disclaimerNotes = [ { key: 'note1', icon: , - desc: t('onboarding:writeSeed.disclaimer.note1'), + desc: t('app:onboarding.writeSeed.disclaimer.note1'), }, { key: 'note2', icon: , - desc: t('onboarding:writeSeed.disclaimer.note2'), + desc: t('app:onboarding.writeSeed.disclaimer.note2'), }, { key: 'note3', icon: , - desc: t('onboarding:writeSeed.disclaimer.note3'), + desc: t('app:onboarding.writeSeed.disclaimer.note3'), }, { key: 'note4', icon: , - desc: t('onboarding:writeSeed.disclaimer.note4'), + desc: t('app:onboarding.writeSeed.disclaimer.note4'), }, ] return ( - {t('onboarding:writeSeed.restore.title')} - {t('onboarding:writeSeed.restore.desc')} + {t('app:onboarding.writeSeed.restore.title')} + {t('app:onboarding.writeSeed.restore.desc')} diff --git a/src/components/SettingsPage/LanguageSelect.js b/src/components/SettingsPage/LanguageSelect.js index 7ae27dc8..bac585e9 100644 --- a/src/components/SettingsPage/LanguageSelect.js +++ b/src/components/SettingsPage/LanguageSelect.js @@ -27,8 +27,8 @@ class LanguageSelect extends PureComponent { setLanguage(languageKey) } - languages = [{ value: null, label: this.props.t(`language:system`) }].concat( - languageKeys.map(key => ({ value: key, label: this.props.t(`language:${key}`) })), + languages = [{ value: null, label: this.props.t(`app:language.system`) }].concat( + languageKeys.map(key => ({ value: key, label: this.props.t(`app:language.${key}`) })), ) render() { diff --git a/src/components/TranslatedError.js b/src/components/TranslatedError.js index cac520c0..666282fa 100644 --- a/src/components/TranslatedError.js +++ b/src/components/TranslatedError.js @@ -33,13 +33,13 @@ class TranslatedError extends PureComponent { // $FlowFixMe const arg: Object = Object.assign({ message: error.message }, error) if (error.name) { - const translation = t(`errors:${error.name}.${field}`, arg) - if (translation !== `${error.name}.${field}`) { + const translation = t(`app:errors.${error.name}.${field}`, arg) + if (translation !== `errors.${error.name}.${field}`) { // It is translated return translation } } - return t(`errors:generic.${field}`, arg) + return t(`apps:errors.generic.${field}`, arg) } } diff --git a/src/components/modals/ShareAnalytics.js b/src/components/modals/ShareAnalytics.js index e13f47d0..90e72469 100644 --- a/src/components/modals/ShareAnalytics.js +++ b/src/components/modals/ShareAnalytics.js @@ -20,43 +20,43 @@ class ShareAnalytics extends PureComponent { const items = [ { key: 'item1', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item1'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item1'), }, { key: 'item2', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item2'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item2'), }, { key: 'item3', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item3'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item3'), }, { key: 'item4', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item4'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item4'), }, { key: 'item5', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item5'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item5'), }, { key: 'item6', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item6'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item6'), }, { key: 'item7', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item7'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item7'), }, { key: 'item8', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item8'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item8'), }, { key: 'item9', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item9'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item9'), }, { key: 'item10', - desc: t('onboarding:analytics.shareAnalytics.mandatoryContextual.item10'), + desc: t('app:onboarding.analytics.shareAnalytics.mandatoryContextual.item10'), }, ] return ( @@ -65,9 +65,9 @@ class ShareAnalytics extends PureComponent { render={({ onClose }) => ( - {t('onboarding:analytics.shareAnalytics.title')} + {t('app:onboarding.analytics.shareAnalytics.title')} - {t('onboarding:analytics.shareAnalytics.desc')} + {t('app:onboarding.analytics.shareAnalytics.desc')}
    {items.map(item =>
  • {item.desc}
  • )}
diff --git a/src/components/modals/TechnicalData.js b/src/components/modals/TechnicalData.js index 2d55b202..3696de58 100644 --- a/src/components/modals/TechnicalData.js +++ b/src/components/modals/TechnicalData.js @@ -20,23 +20,23 @@ class TechnicalData extends PureComponent { const items = [ { key: 'item1', - desc: t('onboarding:analytics.technicalData.mandatoryContextual.item1'), + desc: t('app:onboarding.analytics.technicalData.mandatoryContextual.item1'), }, { key: 'item2', - desc: t('onboarding:analytics.technicalData.mandatoryContextual.item2'), + desc: t('app:onboarding.analytics.technicalData.mandatoryContextual.item2'), }, { key: 'item3', - desc: t('onboarding:analytics.technicalData.mandatoryContextual.item3'), + desc: t('app:onboarding.analytics.technicalData.mandatoryContextual.item3'), }, { key: 'item4', - desc: t('onboarding:analytics.technicalData.mandatoryContextual.item4'), + desc: t('app:onboarding.analytics.technicalData.mandatoryContextual.item4'), }, { key: 'item5', - desc: t('onboarding:analytics.technicalData.mandatoryContextual.item5'), + desc: t('app:onboarding.analytics.technicalData.mandatoryContextual.item5'), }, ] @@ -46,9 +46,9 @@ class TechnicalData extends PureComponent { render={({ onClose }) => ( - {t('onboarding:analytics.technicalData.mandatoryContextual.title')} + {t('app:onboarding.analytics.technicalData.mandatoryContextual.title')} - {t('onboarding:analytics.technicalData.desc')} + {t('app:onboarding.analytics.technicalData.desc')}
    {items.map(item =>
  • {item.desc}
  • )}
diff --git a/src/reducers/onboarding.js b/src/reducers/onboarding.js index cfc768c2..29f3b39c 100644 --- a/src/reducers/onboarding.js +++ b/src/reducers/onboarding.js @@ -70,14 +70,14 @@ const initialState: OnboardingState = { }, { name: 'selectDevice', - label: 'onboarding:breadcrumb.selectDevice', + label: 'app:onboarding.breadcrumb.selectDevice', options: { showBreadcrumb: true, }, }, { name: 'selectPIN', - label: 'onboarding:breadcrumb.selectPIN', + label: 'app:onboarding.breadcrumb.selectPIN', options: { showBreadcrumb: true, alreadyInitSkip: true, @@ -85,7 +85,7 @@ const initialState: OnboardingState = { }, { name: 'writeSeed', - label: 'onboarding:breadcrumb.writeSeed', + label: 'app:onboarding.breadcrumb.writeSeed', options: { showBreadcrumb: true, alreadyInitSkip: true, @@ -93,14 +93,14 @@ const initialState: OnboardingState = { }, { name: 'genuineCheck', - label: 'onboarding:genuineCheck.title', + label: 'app:onboarding.genuineCheck.title', options: { showBreadcrumb: true, }, }, { name: 'setPassword', - label: 'onboarding:breadcrumb.setPassword', + label: 'app:onboarding.breadcrumb.setPassword', options: { showBreadcrumb: true, relaunchSkip: true, @@ -108,7 +108,7 @@ const initialState: OnboardingState = { }, { name: 'analytics', - label: 'onboarding:breadcrumb.analytics', + label: 'app:onboarding.breadcrumb.analytics', options: { showBreadcrumb: true, relaunchSkip: true, diff --git a/static/i18n/en/app.json b/static/i18n/en/app.json index a3cebda7..32ae7e4d 100644 --- a/static/i18n/en/app.json +++ b/static/i18n/en/app.json @@ -463,5 +463,396 @@ "desc_1": "Before sending and receiving crypto assets, educate yourself to make informed decisions. Crypto assets are volatile and the prices can go up and down. Carefully evaluate your trading goals and the financial risk you are willing to take.", "desc_2": "Please beware that Ledger does not provide financial, tax, or legal advice. You should take such decisions on your own or consult with reliable experts.", "cta": "Got it" + }, + "language": { + "system": "Use system language", + "en": "English", + "fr": "French" + }, + "onboarding": { + "breadcrumb": { + "selectDevice": "Device selection", + "selectPIN": "PIN code", + "writeSeed": "Recovery phrase", + "setPassword": "Password lock", + "analytics": "Bugs & analytics" + }, + "start": { + "title": "Welcome to Ledger Live", + "startBtn": "Get started" + }, + "init": { + "title": "Get started with your Ledger device", + "newDevice": { + "title": "Initialize a new Ledger device" + }, + "restoreDevice": { + "title": "Restore a Ledger device" + }, + "initializedDevice": { + "title": "Use a device that's already initialized" + } + }, + "noDevice": { + "title": "Do not have a Ledger device yet?", + "buyNew": { + "title": "Buy a Ledger device" + }, + "trackOrder": { + "title": "Track your order" + }, + "learnMore": { + "title": "Learn about Ledger" + } + }, + "selectDevice": { + "title": "Select your device", + "ledgerNanoCard": { + "title": "Ledger Nano S" + }, + "ledgerBlueCard": { + "title": "Ledger Blue" + } + }, + "selectPIN": { + "disclaimer": { + "note1": "Choose your own PIN code, this code will unlock your device.", + "note2": "An 8-digit PIN code offers an optimum level of security.", + "note3": "Never use a device supplied with a PIN code or a 24-word recovery phrase." + }, + "initialize": { + "title": "Choose your PIN code", + "instructions": { + "nano": { + "step1": "Connect the Ledger Nano S to your computer.", + "step2": "Press both buttons simultaneously as instructed on the screen.", + "step3": "Press the right button to select <1><0>Configure as new device?", + "step4": "Choose a PIN code between 4 and 8 digits long, followed by the checkmark (✓)." + }, + "blue": { + "step1": "Connect the Ledger Blue to your computer.", + "step2": "Tap on <1><0>Configure as new device.", + "step3": "Choose a PIN code between 4 and 8 digits long." + } + } + }, + "restore": { + "title": "Choose your PIN code", + "instructions": { + "nano": { + "step1": "Connect the Ledger Nano S to your computer.", + "step2": "Press both buttons simultaneously as instructed on the screen.", + "step3": "Press the left button to cancel <1><0>Initialize as new device?. Then press the right button to select <3><0>Restore configuration?", + "step4": "Choose a PIN code between 4 and 8 digits long, followed by the checkmark (✓)." + }, + "blue": { + "step1": "Connect the Ledger Blue to your computer.", + "step2": "Tap on <1><0>Restore configuration.", + "step3": "Choose a PIN code between 4 and 8 digits long." + } + } + } + }, + "writeSeed": { + "initialize": { + "title": "Save your recovery phrase", + "desc": "Your device will generate a 24-word recovery phrase to back up your private keys", + "nano": { + "step1": "Copy the word displayed below <1><0>Word #1 in position 1 on a blank Recovery sheet.", + "step2": "Press the right button to display <1><0>Word #2 and repeat the process until all 24 words are copied on the Recovery sheet.", + "step3": "Confirm your recovery phrase: select each requested word and press both buttons to validate it." + }, + "blue": { + "step1": "Copy each word of the recovery phrase on a blank Recovery sheet. Copy the words in the same order.", + "step2": "Tap <1><0>Next to move to the next words. Repeat the process until the <3><0>Confirmation screen appears.", + "step3": "Type each requested word to confirm your recovery phrase." + } + }, + "restore": { + "title": "Enter your recovery phrase", + "desc": "Copy the 24-word recovery phrase from your Recovery sheet on your device.", + "nano": { + "step1": "Select the length of your recovery phrase. Press both buttons to continue.", + "step2": "Select the first letters of <1><0>Word #1 by pressing the right or left button. Press both buttons to confirm each letter.", + "step3": "Select <1><0>Word #1 from the suggested words. Press both buttons to continue.", + "step4": "Repeat the process until the last word." + }, + "blue": { + "step1": "Select the length of your recovery phrase.", + "step2": "Type the first word of your recovery phrase. Select the word when it appears.", + "step3": "Repeat the process until the last word." + } + }, + "disclaimer": { + "note1": "Carefully secure your 24-word recovery phrase out of sight.", + "note2": "Make sure you are the sole holder of your recovery phrase.", + "note3": "Ledger does not keep any backup of your recovery phrase.", + "note4": "Never use a device supplied with a recovery phrase or a PIN code." + } + }, + "genuineCheck": { + "title": "Security checklist", + "descGeneric": "Before continuing, please complete the security checklist", + "descRestore": "Before getting started, please confirm", + "step1": { + "title": "Did you choose your PIN code by yourself?" + }, + "step2": { + "title": "Did you save your recovery phrase by yourself?" + }, + "step3": { + "title": "Is your Ledger device genuine?" + }, + "isGenuinePassed": "Your device is genuine", + "buttons": { + "genuineCheck": "Check now", + "contactSupport": "Contact us" + }, + "errorPage": { + "title": { + "pinFailed": "Didn't choose your own PIN code?", + "recoveryPhraseFailed": "Didn't save your own recovery phrase?", + "isGenuineFail": "Oops, your device does not seem genuine..." + }, + "desc": { + "pinFailed": "Never use a device supplied with a PIN code. If your device was provided with a PIN code, please contact us.", + "recoveryPhraseFailed": "Only save a recovery phrase that is displayed on your device. Please contact us in case of doubt. Otherwise, go back to the security checklist.", + "isGenuineFail": "Your device did not pass the authenticity test required to connect to Ledger’s secure server. Please contact Ledger Support to get assistance." + } + } + }, + "setPassword": { + "title": "Password lock (optional)", + "desc": "Set a password to prevent unauthorized access to Ledger Live data stored on your computer, including account names, balances, transactions and public addresses.", + "disclaimer": { + "note1": "Make sure to remember your password. Do not share it.", + "note2": "Losing your password requires resetting Ledger Live and re-adding accounts.", + "note3": "Resetting Ledger Live does not affect your crypto assets." + } + }, + "analytics": { + "title": "Analytics and bug reports", + "desc": "Share anonymous usage and diagnostics data to help improve Ledger products, services and security features.", + "shareAnalytics": { + "title": "Share analytics", + "desc": "Enable analytics to help Ledger understand how to improve the user experience.", + "mandatoryContextual": { + "item1": "In-app page visits", + "item2": "Actions (send, receive, lock)", + "item3": "Clicks", + "item4": "Redirections to webpages", + "item5": "Scrolled to end of page", + "item6": "Install/Uninstall", + "item7": "Number of accounts, currencies and operations", + "item8": "Overall and page session duration", + "item9": "Type of Ledger device", + "item10": "Device firmware and app version numbers" + } + }, + "sentryLogs": { + "title": "Report bugs", + "desc": "Automatically send reports to help Ledger fix bugs." + }, + "technicalData": { + "title": "Technical data *", + "desc": "Ledger will automatically collect technical information to get basic feedback on usage. This information is anonymous and does not contain personal data.", + "mandatoryText": "* mandatory", + "mandatoryContextual": { + "title": "Technical data", + "item1": "Anonymous unique application ID", + "item2": "OS name and version", + "item3": "Ledger Live version", + "item4": "Application language or region", + "item5": "OS language or region" + } + } + }, + "finish": { + "title": "Your device is ready!", + "desc": "Proceed to your portfolio and start adding your accounts...", + "openAppButton": "Open Ledger Live" + } + }, + "errors": { + "generic": { + "title": "{{message}}", + "description": "Something went wrong. Please retry or contact us." + }, + "AccountNameRequired": { + "title": "An account name is required", + "description": "Please provide an account name" + }, + "BtcUnmatchedApp": { + "title": "That's the wrong app", + "description": "Open the ‘{{managerAppName}}’ app on your device" + }, + "DeviceNotGenuine": { + "title": "Possibly not genuine", + "description": "Request Ledger Support assistance." + }, + "DeviceGenuineSocketEarlyClose": { + "title": "Sorry, try again (genuine-close)", + "description": null + }, + "DeviceSocketFail": { + "title": "Oops, try again", + "description": "Some connection failed, so please try again." + }, + "DeviceSocketNoBulkStatus": { + "title": "Oops, try again", + "description": "Some connection failed, so please try again." + }, + "DeviceSocketNoHandler": { + "title": "Oops, try again", + "description": "Some connection failed, so please try again." + }, + "DisconnectedDevice": { + "title": "Oops, device was disconnected", + "description": "The connection to the device was lost, so please try again." + }, + "EnpointConfig": { + "title": "Invalid endpoint", + "description": "Please provide a valid endpoint" + }, + "FeeEstimationFailed": { + "title": "Sorry, fee estimation failed", + "description": "Try setting a custom fee (status: {{status}})" + }, + "HardResetFail": { + "title": "Oops, could not reset", + "description": "Please retry or contact Ledger Support." + }, + "LatestMCUInstalledError": { + "title": "Oops, nothing to update", + "description": "Needlessly tried to update the device microcontroller. Contact Ledger Support if there's a problem with your device." + }, + "LedgerAPIError": { + "title": "Sorry, try again (API HTTP {{status}})", + "description": "Interacting with Ledger's API server went wrong. Please retry." + }, + "LedgerAPIErrorWithMessage": { + "title": "Oops, {{message}}", + "description": "Please retry or contact Ledger Support." + }, + "LedgerAPINotAvailable": { + "title": "Sorry, {{currencyName}} services unavailable", + "description": "Please retry or contact Ledger Support." + }, + "ManagerAPIsFail": { + "title": "Oops, Manager services unavailable.", + "description": "Please check the network status." + }, + "ManagerAppAlreadyInstalled": { + "title": "Oops, that's already installed.", + "description": "Check your device to see which apps are already installed." + }, + "ManagerAppRelyOnBTC": { + "title": "Bitcoin and Ethereum apps required", + "description": "Install the latest Bitcoin and Ethereum apps first." + }, + "ManagerDeviceLocked": { + "title": "Please unlock your device", + "description": "Your device was locked. Please unlock it." + }, + "ManagerNotEnoughSpace": { + "title": "Sorry, not enough storage left", + "description": "Please uninstall some apps to make space. This will not affect your crypto assets." + }, + "ManagerUninstallBTCDep": { + "title": "Sorry, this app is required", + "description": "Uninstall the Bitcoin or Ethereum app last." + }, + "NetworkDown": { + "title": "Oops, internet seems down", + "description": "Please check your internet connection." + }, + "NoAddressesFound": { + "title": "Sorry, no accounts found", + "description": "Something went wrong with address calculation, try again or contact Ledger Support." + }, + "NotEnoughBalance": { + "title": "Oops, insufficient balance", + "description": "Make sure the account to debit has sufficient balance" + }, + "NotEnoughBalanceBecauseDestinationNotCreated": { + "title": "Recipient address is inactive. Send at least {{minimalAmount}} to activate it" + }, + "PasswordsDontMatch": { + "title": "Passwords don't match", + "description": "Please try again" + }, + "PasswordIncorrect": { + "title": "The password you entered is incorrect", + "description": "Please try again" + }, + "SelectExchangesLoadError": { + "title": "Unable to load", + "description": "Can't load the exchanges" + }, + "TimeoutError": { + "title": "Oops, a time out occurred", + "description": "It took too long for the server to respond." + }, + "TimeoutTagged": { + "title": "Oops, a time out occurred ({{tag}})", + "description": "It took too long for the server to respond." + }, + "TransportError": { + "title": "Something went wrong. Please reconnect your device.", + "description": "{{message}}" + }, + "TransportStatusError": { + "title": "Something went wrong. Please reconnect your device.", + "description": "{{message}}" + }, + "UserRefusedFirmwareUpdate": { + "title": "Firmware update refused on device", + "description": "Please retry or contact Ledger Support" + }, + "UserRefusedOnDevice": { + "title": "Transaction refused on device", + "description": "Please retry or contact Ledger Support in case of doubt." + }, + "UserRefusedAddress": { + "title": "Receive address rejected", + "description": "Please try again or contact Ledger Support" + }, + "UpdateYourApp": { + "title": "App update required. Uninstall and reinstall the {{managerAppName}} app in the Manager", + "description": null + }, + "WebsocketConnectionError": { + "title": "Sorry, try again (websocket error).", + "description": null + }, + "WebsocketConnectionFailed": { + "title": "Sorry, try again (websocket failed).", + "description": null + }, + "WrongDeviceForAccount": { + "title": "Oops, wrong device for ‘{{accountName}}’.", + "description": "The connected device is not associated with the account you selected. Please connect the right device." + }, + "DeviceAppVerifyNotSupported": { + "title": "Open Manager to update this App", + "description": "The app verification is not supported" + }, + "InvalidAddress": { + "title": "This is not a valid {{currencyName}} address" + }, + "CantOpenDevice": { + "title": "Oops, couldn’t connect to device", + "description": "Device detected but connection failed. Please retry and get help if the problem persists." + }, + "ETHAddressNonEIP": { + "title": "Auto-verification not available: carefully verify the address", + "description": null + }, + "CantScanQRCode": { + "title": "Couldn't scan this QR-code: auto-verification not supported by this address" + }, + "FeeNotLoaded": { + "title": "Couldn’t load fee rates. Please set manual fees" + } } } diff --git a/static/i18n/en/errors.json b/static/i18n/en/errors.json deleted file mode 100644 index 41a48a51..00000000 --- a/static/i18n/en/errors.json +++ /dev/null @@ -1,182 +0,0 @@ -{ - "generic": { - "title": "{{message}}", - "description": "Something went wrong. Please retry or contact us." - }, - "AccountNameRequired": { - "title": "An account name is required", - "description": "Please provide an account name" - }, - "BtcUnmatchedApp": { - "title": "That's the wrong app", - "description": "Open the ‘{{managerAppName}}’ app on your device" - }, - "DeviceNotGenuine": { - "title": "Possibly not genuine", - "description": "Request Ledger Support assistance." - }, - "DeviceGenuineSocketEarlyClose": { - "title": "Sorry, try again (genuine-close)", - "description": null - }, - "DeviceSocketFail": { - "title": "Oops, try again", - "description": "Some connection failed, so please try again." - }, - "DeviceSocketNoBulkStatus": { - "title": "Oops, try again", - "description": "Some connection failed, so please try again." - }, - "DeviceSocketNoHandler": { - "title": "Oops, try again", - "description": "Some connection failed, so please try again." - }, - "DisconnectedDevice": { - "title": "Oops, device was disconnected", - "description": "The connection to the device was lost, so please try again." - }, - "EnpointConfig": { - "title": "Invalid endpoint", - "description": "Please provide a valid endpoint" - }, - "FeeEstimationFailed": { - "title": "Sorry, fee estimation failed", - "description": "Try setting a custom fee (status: {{status}})" - }, - "HardResetFail": { - "title": "Oops, could not reset", - "description": "Please retry or contact Ledger Support." - }, - "LatestMCUInstalledError": { - "title": "Oops, nothing to update", - "description": "Needlessly tried to update the device microcontroller. Contact Ledger Support if there's a problem with your device." - }, - "LedgerAPIError": { - "title": "Sorry, try again (API HTTP {{status}})", - "description": "Interacting with Ledger's API server went wrong. Please retry." - }, - "LedgerAPIErrorWithMessage": { - "title": "Oops, {{message}}", - "description": "Please retry or contact Ledger Support." - }, - "LedgerAPINotAvailable": { - "title": "Sorry, {{currencyName}} services unavailable", - "description": "Please retry or contact Ledger Support." - }, - "ManagerAPIsFail": { - "title": "Oops, Manager services unavailable.", - "description": "Please check the network status." - }, - "ManagerAppAlreadyInstalled": { - "title": "Oops, that's already installed.", - "description": "Check your device to see which apps are already installed." - }, - "ManagerAppRelyOnBTC": { - "title": "Bitcoin and Ethereum apps required", - "description": "Install the latest Bitcoin and Ethereum apps first." - }, - "ManagerDeviceLocked": { - "title": "Please unlock your device", - "description": "Your device was locked. Please unlock it." - }, - "ManagerNotEnoughSpace": { - "title": "Sorry, not enough storage left", - "description": "Please uninstall some apps to make space. This will not affect your crypto assets." - }, - "ManagerUninstallBTCDep": { - "title": "Sorry, this app is required", - "description": "Uninstall the Bitcoin or Ethereum app last." - }, - "NetworkDown": { - "title": "Oops, internet seems down", - "description": "Please check your internet connection." - }, - "NoAddressesFound": { - "title": "Sorry, no accounts found", - "description": "Something went wrong with address calculation, try again or contact Ledger Support." - }, - "NotEnoughBalance": { - "title": "Oops, insufficient balance", - "description": "Make sure the account to debit has sufficient balance" - }, - "NotEnoughBalanceBecauseDestinationNotCreated": { - "title": "Recipient address is inactive. Send at least {{minimalAmount}} to activate it" - }, - "PasswordsDontMatch": { - "title": "Passwords don't match", - "description": "Please try again" - }, - "PasswordIncorrect": { - "title": "The password you entered is incorrect", - "description": "Please try again" - }, - "SelectExchangesLoadError": { - "title": "Unable to load", - "description": "Can't load the exchanges" - }, - "TimeoutError": { - "title": "Oops, a time out occurred", - "description": "It took too long for the server to respond." - }, - "TimeoutTagged": { - "title": "Oops, a time out occurred ({{tag}})", - "description": "It took too long for the server to respond." - }, - "TransportError": { - "title": "Something went wrong. Please reconnect your device.", - "description": "{{message}}" - }, - "TransportStatusError": { - "title": "Something went wrong. Please reconnect your device.", - "description": "{{message}}" - }, - "UserRefusedFirmwareUpdate": { - "title": "Firmware update refused on device", - "description": "Please retry or contact Ledger Support" - }, - "UserRefusedOnDevice": { - "title": "Transaction refused on device", - "description": "Please retry or contact Ledger Support in case of doubt." - }, - "UserRefusedAddress": { - "title": "Receive address rejected", - "description": "Please try again or contact Ledger Support" - }, - "UpdateYourApp": { - "title": "App update required. Uninstall and reinstall the {{managerAppName}} app in the Manager", - "description": null - }, - "WebsocketConnectionError": { - "title": "Sorry, try again (websocket error).", - "description": null - }, - "WebsocketConnectionFailed": { - "title": "Sorry, try again (websocket failed).", - "description": null - }, - "WrongDeviceForAccount": { - "title": "Oops, wrong device for ‘{{accountName}}’.", - "description": "The connected device is not associated with the account you selected. Please connect the right device." - }, - "DeviceAppVerifyNotSupported": { - "title": "Open Manager to update this App", - "description": "The app verification is not supported" - }, - "InvalidAddress": { - "title": "This is not a valid {{currencyName}} address" - }, - "CantOpenDevice": { - "title": "Oops, couldn’t connect to device", - "description": "Device detected but connection failed. Please retry and get help if the problem persists." - }, - "ETHAddressNonEIP": { - "title": "Auto-verification not available: carefully verify the address", - "description": null - }, - "CantScanQRCode": { - "title": "Couldn't scan this QR-code: auto-verification not supported by this address" - }, - "FeeNotLoaded": { - "title": "Couldn’t load fee rates. Please set manual fees" - } -} diff --git a/static/i18n/en/language.json b/static/i18n/en/language.json deleted file mode 100644 index 2ffc717c..00000000 --- a/static/i18n/en/language.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "system": "Use system language", - "en": "English", - "fr": "French" -} \ No newline at end of file diff --git a/static/i18n/en/onboarding.json b/static/i18n/en/onboarding.json deleted file mode 100644 index fba5f304..00000000 --- a/static/i18n/en/onboarding.json +++ /dev/null @@ -1,204 +0,0 @@ -{ - "breadcrumb": { - "selectDevice": "Device selection", - "selectPIN": "PIN code", - "writeSeed": "Recovery phrase", - "setPassword": "Password lock", - "analytics": "Bugs & analytics" - }, - "start": { - "title": "Welcome to Ledger Live", - "startBtn": "Get started" - }, - "init": { - "title": "Get started with your Ledger device", - "newDevice": { - "title": "Initialize a new Ledger device" - }, - "restoreDevice": { - "title": "Restore a Ledger device" - }, - "initializedDevice": { - "title": "Use a device that's already initialized" - } - }, - "noDevice": { - "title": "Do not have a Ledger device yet?", - "buyNew": { - "title": "Buy a Ledger device" - }, - "trackOrder": { - "title": "Track your order" - }, - "learnMore": { - "title": "Learn about Ledger" - } - }, - "selectDevice": { - "title": "Select your device", - "ledgerNanoCard": { - "title": "Ledger Nano S" - }, - "ledgerBlueCard": { - "title": "Ledger Blue" - } - }, - "selectPIN": { - "disclaimer": { - "note1": "Choose your own PIN code, this code will unlock your device.", - "note2": "An 8-digit PIN code offers an optimum level of security.", - "note3": "Never use a device supplied with a PIN code or a 24-word recovery phrase." - }, - "initialize": { - "title": "Choose your PIN code", - "instructions": { - "nano": { - "step1": "Connect the Ledger Nano S to your computer.", - "step2": "Press both buttons simultaneously as instructed on the screen.", - "step3": "Press the right button to select <1><0>Configure as new device?", - "step4": "Choose a PIN code between 4 and 8 digits long, followed by the checkmark (✓)." - }, - "blue": { - "step1": "Connect the Ledger Blue to your computer.", - "step2": "Tap on <1><0>Configure as new device.", - "step3": "Choose a PIN code between 4 and 8 digits long." - } - } - }, - "restore": { - "title": "Choose your PIN code", - "instructions": { - "nano": { - "step1": "Connect the Ledger Nano S to your computer.", - "step2": "Press both buttons simultaneously as instructed on the screen.", - "step3": "Press the left button to cancel <1><0>Initialize as new device?. Then press the right button to select <3><0>Restore configuration?", - "step4": "Choose a PIN code between 4 and 8 digits long, followed by the checkmark (✓)." - }, - "blue": { - "step1": "Connect the Ledger Blue to your computer.", - "step2": "Tap on <1><0>Restore configuration.", - "step3": "Choose a PIN code between 4 and 8 digits long." - } - } - } - }, - "writeSeed": { - "initialize": { - "title": "Save your recovery phrase", - "desc": "Your device will generate a 24-word recovery phrase to back up your private keys", - "nano": { - "step1": "Copy the word displayed below <1><0>Word #1 in position 1 on a blank Recovery sheet.", - "step2": "Press the right button to display <1><0>Word #2 and repeat the process until all 24 words are copied on the Recovery sheet.", - "step3": "Confirm your recovery phrase: select each requested word and press both buttons to validate it." - }, - "blue": { - "step1": "Copy each word of the recovery phrase on a blank Recovery sheet. Copy the words in the same order.", - "step2": "Tap <1><0>Next to move to the next words. Repeat the process until the <3><0>Confirmation screen appears.", - "step3": "Type each requested word to confirm your recovery phrase." - } - }, - "restore": { - "title": "Enter your recovery phrase", - "desc": "Copy the 24-word recovery phrase from your Recovery sheet on your device.", - "nano": { - "step1": "Select the length of your recovery phrase. Press both buttons to continue.", - "step2": "Select the first letters of <1><0>Word #1 by pressing the right or left button. Press both buttons to confirm each letter.", - "step3": "Select <1><0>Word #1 from the suggested words. Press both buttons to continue.", - "step4": "Repeat the process until the last word." - }, - "blue": { - "step1": "Select the length of your recovery phrase.", - "step2": "Type the first word of your recovery phrase. Select the word when it appears.", - "step3": "Repeat the process until the last word." - } - }, - "disclaimer": { - "note1": "Carefully secure your 24-word recovery phrase out of sight.", - "note2": "Make sure you are the sole holder of your recovery phrase.", - "note3": "Ledger does not keep any backup of your recovery phrase.", - "note4": "Never use a device supplied with a recovery phrase or a PIN code." - } - }, - "genuineCheck": { - "title": "Security checklist", - "descGeneric": "Before continuing, please complete the security checklist", - "descRestore": "Before getting started, please confirm", - "step1": { - "title": "Did you choose your PIN code by yourself?" - }, - "step2": { - "title": "Did you save your recovery phrase by yourself?" - }, - "step3": { - "title": "Is your Ledger device genuine?" - }, - "isGenuinePassed": "Your device is genuine", - "buttons": { - "genuineCheck": "Check now", - "contactSupport": "Contact us" - }, - "errorPage": { - "title": { - "pinFailed": "Didn't choose your own PIN code?", - "recoveryPhraseFailed": "Didn't save your own recovery phrase?", - "isGenuineFail": "Oops, your device does not seem genuine..." - }, - "desc": { - "pinFailed": "Never use a device supplied with a PIN code. If your device was provided with a PIN code, please contact us.", - "recoveryPhraseFailed": "Only save a recovery phrase that is displayed on your device. Please contact us in case of doubt. Otherwise, go back to the security checklist.", - "isGenuineFail": "Your device did not pass the authenticity test required to connect to Ledger’s secure server. Please contact Ledger Support to get assistance." - } - } - }, - "setPassword": { - "title": "Password lock (optional)", - "desc": "Set a password to prevent unauthorized access to Ledger Live data stored on your computer, including account names, balances, transactions and public addresses.", - "disclaimer": { - "note1": "Make sure to remember your password. Do not share it.", - "note2": "Losing your password requires resetting Ledger Live and re-adding accounts.", - "note3": "Resetting Ledger Live does not affect your crypto assets." - } - }, - "analytics": { - "title": "Analytics and bug reports", - "desc": "Share anonymous usage and diagnostics data to help improve Ledger products, services and security features.", - "shareAnalytics": { - "title": "Share analytics", - "desc": "Enable analytics to help Ledger understand how to improve the user experience.", - "mandatoryContextual": { - "item1": "In-app page visits", - "item2": "Actions (send, receive, lock)", - "item3": "Clicks", - "item4": "Redirections to webpages", - "item5": "Scrolled to end of page", - "item6": "Install/Uninstall", - "item7": "Number of accounts, currencies and operations", - "item8": "Overall and page session duration", - "item9": "Type of Ledger device", - "item10": "Device firmware and app version numbers" - } - }, - "sentryLogs": { - "title": "Report bugs", - "desc": "Automatically send reports to help Ledger fix bugs." - }, - "technicalData": { - "title": "Technical data *", - "desc": "Ledger will automatically collect technical information to get basic feedback on usage. This information is anonymous and does not contain personal data.", - "mandatoryText": "* mandatory", - "mandatoryContextual": { - "title": "Technical data", - "item1": "Anonymous unique application ID", - "item2": "OS name and version", - "item3": "Ledger Live version", - "item4": "Application language or region", - "item5": "OS language or region" - } - } - }, - "finish": { - "title": "Your device is ready!", - "desc": "Proceed to your portfolio and start adding your accounts...", - "openAppButton": "Open Ledger Live" - } -} \ No newline at end of file From e6e362ccfd37eb4493c6c7b5bfc4e7af3d865804 Mon Sep 17 00:00:00 2001 From: "Valentin D. Pinkman" Date: Thu, 4 Oct 2018 13:20:13 +0200 Subject: [PATCH 2/2] remove app: prefix from translation keys --- scripts/check-wordings.js | 50 +++++++++---------- .../AccountPage/AccountHeaderActions.js | 6 +-- .../AccountPage/EmptyStateAccount.js | 6 +-- src/components/AccountPage/index.js | 2 +- src/components/AdvancedOptions/BitcoinKind.js | 8 +-- .../AdvancedOptions/EthereumKind.js | 4 +- src/components/AdvancedOptions/RippleKind.js | 2 +- src/components/BalanceSummary/BalanceInfos.js | 14 ++---- src/components/CurrentAddress/index.js | 18 +++---- .../DashboardPage/AccountCardListHeader.js | 2 +- .../DashboardPage/AccountCardPlaceholder.js | 4 +- src/components/DashboardPage/AccountsOrder.js | 8 +-- .../DashboardPage/CurrentGreetings.js | 6 +-- src/components/DashboardPage/EmptyState.js | 8 +-- src/components/DashboardPage/SummaryDesc.js | 2 +- src/components/DashboardPage/index.js | 2 +- .../DeviceInteraction/components.js | 4 +- src/components/EnsureDeviceApp.js | 4 +- src/components/ExchangePage/ExchangeCard.js | 4 +- src/components/ExchangePage/index.js | 4 +- src/components/ExportLogsBtn.js | 2 +- src/components/FeesField/BitcoinKind.js | 4 +- src/components/FeesField/GenericContainer.js | 2 +- src/components/GenuineCheck.js | 2 +- src/components/GenuineCheckModal.js | 2 +- src/components/GlobalSearch.js | 2 +- src/components/IsUnlocked.js | 16 +++--- src/components/MainSideBar/index.js | 23 ++++----- src/components/ManagerPage/AppsList.js | 12 ++--- src/components/ManagerPage/Dashboard.js | 6 +-- src/components/ManagerPage/FirmwareUpdate.js | 8 +-- src/components/ManagerPage/ManagerApp.js | 2 +- .../ManagerPage/ManagerGenuineCheck.js | 4 +- src/components/ManagerPage/PlugYourDevice.js | 6 +-- .../ManagerPage/UpdateFirmwareButton.js | 4 +- src/components/Onboarding/OnboardingFooter.js | 4 +- src/components/Onboarding/steps/Analytics.js | 22 ++++---- src/components/Onboarding/steps/Finish.js | 6 +-- .../GenuineCheck/GenuineCheckErrorPage.js | 18 +++---- .../GenuineCheck/GenuineCheckUnavailable.js | 8 +-- .../Onboarding/steps/GenuineCheck/index.js | 20 ++++---- src/components/Onboarding/steps/Init.js | 10 ++-- src/components/Onboarding/steps/NoDevice.js | 10 ++-- .../Onboarding/steps/SelectDevice.js | 6 +-- .../steps/SelectPIN/SelectPINblue.js | 12 ++--- .../steps/SelectPIN/SelectPINnano.js | 14 +++--- .../steps/SelectPIN/SelectPINrestoreBlue.js | 12 ++--- .../steps/SelectPIN/SelectPINrestoreNano.js | 14 +++--- .../Onboarding/steps/SelectPIN/index.js | 4 +- .../Onboarding/steps/SetPassword.js | 16 +++--- src/components/Onboarding/steps/Start.js | 4 +- .../steps/WriteSeed/WriteSeedBlue.js | 18 +++---- .../steps/WriteSeed/WriteSeedNano.js | 18 +++---- .../steps/WriteSeed/WriteSeedRestore.js | 26 +++++----- src/components/OpenUserDataDirectoryBtn.js | 2 +- .../OperationsList/ConfirmationCheck.js | 2 +- src/components/OperationsList/DateCell.js | 2 +- src/components/OperationsList/index.js | 4 +- src/components/PillsDaysCount.js | 2 +- src/components/RenderError.js | 23 ++++----- src/components/RequestAmount/index.js | 2 +- src/components/SelectAccount/index.js | 4 +- src/components/SelectCurrency/index.js | 4 +- src/components/SelectExchange.js | 6 +-- src/components/SettingsPage/CleanButton.js | 8 +-- .../SettingsPage/DisablePasswordModal.js | 10 ++-- src/components/SettingsPage/LanguageSelect.js | 4 +- .../SettingsPage/LaunchOnboardingBtn.js | 2 +- .../SettingsPage/MarketIndicatorRadio.js | 4 +- src/components/SettingsPage/PasswordButton.js | 2 +- src/components/SettingsPage/PasswordForm.js | 6 +-- src/components/SettingsPage/PasswordModal.js | 14 +++--- .../SettingsPage/ReleaseNotesButton.js | 2 +- src/components/SettingsPage/ResetButton.js | 8 +-- src/components/SettingsPage/index.js | 10 ++-- src/components/SettingsPage/sections/About.js | 14 +++--- .../SettingsPage/sections/Currencies.js | 4 +- .../SettingsPage/sections/CurrencyRows.js | 8 +-- .../SettingsPage/sections/Display.js | 42 ++++++---------- src/components/SettingsPage/sections/Help.js | 28 +++++------ src/components/SyncAgo.js | 2 +- src/components/TopBar/ActivityIndicator.js | 10 ++-- src/components/TopBar/index.js | 4 +- src/components/TranslatedError.js | 2 +- .../UpdateNotifier/UpdateDownloaded.js | 4 +- src/components/base/AccountsList/index.js | 4 +- src/components/base/CopyWithFeedback.js | 2 +- src/components/base/InputPassword/index.js | 2 +- src/components/base/Modal/ConfirmModal.js | 4 +- src/components/base/Modal/ModalTitle.js | 2 +- src/components/base/RetryButton.js | 2 +- .../modals/AccountSettingRenderBody.js | 26 +++++----- src/components/modals/AddAccounts/index.js | 10 ++-- .../steps/01-step-choose-currency.js | 2 +- .../steps/02-step-connect-device.js | 4 +- .../AddAccounts/steps/03-step-import.js | 30 ++++++----- .../AddAccounts/steps/04-step-finish.js | 6 +-- src/components/modals/Disclaimer.js | 8 +-- src/components/modals/OperationDetails.js | 28 +++++------ src/components/modals/Receive/index.js | 10 ++-- .../modals/Receive/steps/01-step-account.js | 4 +- .../Receive/steps/02-step-connect-device.js | 4 +- .../Receive/steps/03-step-confirm-address.js | 8 +-- .../modals/ReleaseNotes/ReleaseNotesBody.js | 8 +-- .../modals/Send/fields/AmountField.js | 2 +- .../modals/Send/fields/RecipientField.js | 2 +- src/components/modals/Send/index.js | 10 ++-- .../modals/Send/steps/01-step-amount.js | 6 +-- .../Send/steps/02-step-connect-device.js | 2 +- .../modals/Send/steps/03-step-verification.js | 4 +- .../modals/Send/steps/04-step-confirmation.js | 8 +-- src/components/modals/ShareAnalytics.js | 26 +++++----- src/components/modals/TechnicalData.js | 16 +++--- .../modals/UpdateFirmware/Disclaimer.js | 10 ++-- .../modals/UpdateFirmware/Installing.js | 4 +- src/components/modals/UpdateFirmware/index.js | 8 +-- .../steps/01-step-install-full-firmware.js | 6 +-- .../UpdateFirmware/steps/02-step-flash-mcu.js | 10 ++-- .../steps/03-step-confirmation.js | 6 +-- src/reducers/onboarding.js | 12 ++--- src/renderer/i18n/instanciate.js | 1 + 121 files changed, 498 insertions(+), 533 deletions(-) diff --git a/scripts/check-wordings.js b/scripts/check-wordings.js index e1f301cb..43adaa10 100644 --- a/scripts/check-wordings.js +++ b/scripts/check-wordings.js @@ -5,34 +5,34 @@ const { spawn } = require('child_process') // those wordings are dynamically created, so they are detected // as false positive const WHITELIST = [ - 'app:operation.type.IN', - 'app:operation.type.OUT', - 'app:exchange.coinhouse', - 'app:exchange.changelly', - 'app:exchange.coinmama', - 'app:exchange.simplex', - 'app:exchange.paybis', - 'app:addAccounts.accountToImportSubtitle_plural', - 'app:dashboard.summary_plural', - 'app:addAccounts.success_plural', - 'app:addAccounts.successDescription_plural', - 'app:time.since.day', - 'app:time.since.week', - 'app:time.since.month', - 'app:time.since.year', - 'app:time.day', - 'app:time.week', - 'app:time.month', - 'app:time.year', - 'app:addAccounts.cta.add_plural', - 'app:manager.apps.installing', - 'app:manager.apps.uninstalling', - 'app:manager.apps.installSuccess', - 'app:manager.apps.uninstallSuccess', + 'operation.type.IN', + 'operation.type.OUT', + 'exchange.coinhouse', + 'exchange.changelly', + 'exchange.coinmama', + 'exchange.simplex', + 'exchange.paybis', + 'addAccounts.accountToImportSubtitle_plural', + 'dashboard.summary_plural', + 'addAccounts.success_plural', + 'addAccounts.successDescription_plural', + 'time.since.day', + 'time.since.week', + 'time.since.month', + 'time.since.year', + 'time.day', + 'time.week', + 'time.month', + 'time.year', + 'addAccounts.cta.add_plural', + 'manager.apps.installing', + 'manager.apps.uninstalling', + 'manager.apps.installSuccess', + 'manager.apps.uninstallSuccess', ] const WORDINGS = { - app: require('../static/i18n/en/app.json'), + require('../static/i18n/en/app.json'), onboarding: require('../static/i18n/en/onboarding.json'), // errors: require('../static/i18n/en/errors.json'), // language: require('../static/i18n/en/language.json'), diff --git a/src/components/AccountPage/AccountHeaderActions.js b/src/components/AccountPage/AccountHeaderActions.js index 9ae4abb7..a9a8d747 100644 --- a/src/components/AccountPage/AccountHeaderActions.js +++ b/src/components/AccountPage/AccountHeaderActions.js @@ -67,19 +67,19 @@ class AccountHeaderActions extends PureComponent {
) : null} - t('app:account.settings.title')}> + t('account.settings.title')}> openModal(MODAL_SETTINGS_ACCOUNT, { account })}> diff --git a/src/components/AccountPage/EmptyStateAccount.js b/src/components/AccountPage/EmptyStateAccount.js index 79353be4..11cddb4b 100644 --- a/src/components/AccountPage/EmptyStateAccount.js +++ b/src/components/AccountPage/EmptyStateAccount.js @@ -40,9 +40,9 @@ class EmptyStateAccount extends PureComponent { height="89" /> - {t('app:account.emptyState.title')} + {t('account.emptyState.title')} - + {'Make sure the'} {account.currency.managerAppName} @@ -53,7 +53,7 @@ class EmptyStateAccount extends PureComponent { diff --git a/src/components/AccountPage/index.js b/src/components/AccountPage/index.js index 169aec71..15dce6ab 100644 --- a/src/components/AccountPage/index.js +++ b/src/components/AccountPage/index.js @@ -97,7 +97,7 @@ class AccountPage extends PureComponent { /> - +
diff --git a/src/components/AdvancedOptions/BitcoinKind.js b/src/components/AdvancedOptions/BitcoinKind.js index d9220787..45eb8491 100644 --- a/src/components/AdvancedOptions/BitcoinKind.js +++ b/src/components/AdvancedOptions/BitcoinKind.js @@ -15,12 +15,12 @@ type Props = { } export default translate()(({ isRBF, onChangeRBF, t }: Props) => ( - + @@ -32,7 +32,7 @@ export default translate()(({ isRBF, onChangeRBF, t }: Props) => ( diff --git a/src/components/AdvancedOptions/EthereumKind.js b/src/components/AdvancedOptions/EthereumKind.js index 4a15f33c..2060ccdd 100644 --- a/src/components/AdvancedOptions/EthereumKind.js +++ b/src/components/AdvancedOptions/EthereumKind.js @@ -15,11 +15,11 @@ type Props = { } export default translate()(({ gasLimit, onChangeGasLimit, t }: Props) => ( - + diff --git a/src/components/AdvancedOptions/RippleKind.js b/src/components/AdvancedOptions/RippleKind.js index ff34faa7..088acd36 100644 --- a/src/components/AdvancedOptions/RippleKind.js +++ b/src/components/AdvancedOptions/RippleKind.js @@ -33,7 +33,7 @@ class RippleKind extends Component { diff --git a/src/components/BalanceSummary/BalanceInfos.js b/src/components/BalanceSummary/BalanceInfos.js index aadf2fca..ef0bf11f 100644 --- a/src/components/BalanceSummary/BalanceInfos.js +++ b/src/components/BalanceSummary/BalanceInfos.js @@ -56,11 +56,7 @@ export function BalanceSincePercent(props: BalanceSinceProps) { withIcon /> )} - {!isAvailable ? ( - - ) : ( - {t(`app:time.since.${since}`)} - )} + {!isAvailable ? : {t(`time.since.${since}`)}} ) } @@ -82,11 +78,7 @@ export function BalanceSinceDiff(props: Props) { withIcon /> )} - {!isAvailable ? ( - - ) : ( - {t(`app:time.since.${since}`)} - )} + {!isAvailable ? : {t(`time.since.${since}`)}} ) } @@ -127,7 +119,7 @@ function BalanceInfos(props: Props) { isAvailable={isAvailable} totalBalance={totalBalance} > - {t('app:dashboard.totalBalance')} + {t('dashboard.totalBalance')} { return ( } - label={t('app:common.copyAddress')} + label={t('common.copyAddress')} onClick={() => { this.setState({ copyFeedback: true }) this._timeout = setTimeout(() => this.setState({ copyFeedback: false }), 1e3) @@ -193,17 +193,17 @@ class CurrentAddress extends PureComponent {
- {copyFeedback && {t('app:common.addressCopied')}} + {copyFeedback && {t('common.addressCopied')}} {address}
@@ -217,19 +217,17 @@ class CurrentAddress extends PureComponent { ff="Open Sans" > {isAddressVerified === null - ? t('app:currentAddress.messageIfUnverified', { currencyName }) + ? t('currentAddress.messageIfUnverified', { currencyName }) : isAddressVerified - ? t('app:currentAddress.messageIfAccepted', { currencyName }) - : t('app:currentAddress.messageIfSkipped', { currencyName })} + ? t('currentAddress.messageIfAccepted', { currencyName }) + : t('currentAddress.messageIfSkipped', { currencyName })}