From c482c9926c4514e67105c61f4909ff019caeb7f0 Mon Sep 17 00:00:00 2001 From: Whymarrh Whitby Date: Mon, 24 Sep 2018 13:27:37 -0230 Subject: Default to the new UI for first time users --- ui/app/select-app.js | 29 +++++++++++------------------ ui/app/selectors.js | 8 ++++++++ 2 files changed, 19 insertions(+), 18 deletions(-) (limited to 'ui/app') diff --git a/ui/app/select-app.js b/ui/app/select-app.js index f2e8e8d10..f5f9e33ab 100644 --- a/ui/app/select-app.js +++ b/ui/app/select-app.js @@ -5,17 +5,14 @@ const h = require('react-hyperscript') const { HashRouter } = require('react-router-dom') const App = require('./app') const OldApp = require('../../old-ui/app/app') -const { autoAddToBetaUI } = require('./selectors') +const { getShouldUseNewUi } = require('./selectors') const { setFeatureFlag } = require('./actions') const I18nProvider = require('./i18n-provider') function mapStateToProps (state) { return { - betaUI: state.metamask.featureFlags.betaUI, - autoAdd: autoAddToBetaUI(state), - isUnlocked: state.metamask.isUnlocked, isMascara: state.metamask.isMascara, - firstTime: Object.keys(state.metamask.identities).length === 0, + shouldUseNewUi: getShouldUseNewUi(state), } } @@ -56,17 +53,13 @@ SelectedApp.prototype.componentWillReceiveProps = function (nextProps) { } SelectedApp.prototype.render = function () { - // Code commented out until we begin auto adding users to NewUI - // const { betaUI, isMascara, firstTime } = this.props - // const Selected = betaUI || isMascara || firstTime ? App : OldApp - - const { betaUI, isMascara } = this.props - - return betaUI || isMascara - ? h(HashRouter, { - hashType: 'noslash', - }, [ - h(I18nProvider, [ h(App) ]), - ]) - : h(OldApp) + const { shouldUseNewUi } = this.props + const newUi = h(HashRouter, { + hashType: 'noslash', + }, [ + h(I18nProvider, [ + h(App), + ]), + ]) + return shouldUseNewUi ? newUi : h(OldApp) } diff --git a/ui/app/selectors.js b/ui/app/selectors.js index 7209f19d1..b518527c9 100644 --- a/ui/app/selectors.js +++ b/ui/app/selectors.js @@ -31,6 +31,7 @@ const selectors = { getSelectedTokenToFiatRate, getSelectedTokenContract, autoAddToBetaUI, + getShouldUseNewUi, getSendMaxModeState, getCurrentViewContext, getTotalUnapprovedCount, @@ -185,6 +186,13 @@ function autoAddToBetaUI (state) { return userIsNotInBeta && userPassesThreshold } +function getShouldUseNewUi (state) { + const isAlreadyUsingBetaUi = state.metamask.featureFlags.betaUI + const isMascara = state.metamask.isMascara + const isFreshInstall = Object.keys(state.metamask.identities).length === 0 + return isAlreadyUsingBetaUi || isMascara || isFreshInstall +} + function getCurrentViewContext (state) { const { currentView = {} } = state.appState return currentView.context -- cgit