aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/utils/utils.ts
diff options
context:
space:
mode:
authorBrandon Millman <brandon@0xproject.com>2018-06-30 03:01:13 +0800
committerGitHub <noreply@github.com>2018-06-30 03:01:13 +0800
commitcc12bc9247d432b7f1248c8c0aaf9f905fa58d6d (patch)
treee17104279cc60566fd8443ba7805ec7e64380f84 /packages/website/ts/utils/utils.ts
parent50556e26098a9720f933153697008fb4ea8ececb (diff)
parentddec01e6c1d9cfeaf5b01278b1b796644705433b (diff)
downloaddexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar.gz
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar.bz2
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar.lz
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar.xz
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.tar.zst
dexon-sol-tools-cc12bc9247d432b7f1248c8c0aaf9f905fa58d6d.zip
Merge pull request #792 from 0xProject/feature/website/wallet-polish
Various wallet polish items
Diffstat (limited to 'packages/website/ts/utils/utils.ts')
-rw-r--r--packages/website/ts/utils/utils.ts27
1 files changed, 21 insertions, 6 deletions
diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts
index d12ae6a98..726e1815f 100644
--- a/packages/website/ts/utils/utils.ts
+++ b/packages/website/ts/utils/utils.ts
@@ -9,6 +9,7 @@ import deepEqual = require('deep-equal');
import * as _ from 'lodash';
import * as moment from 'moment';
import {
+ AccountState,
BlockchainCallErrs,
BrowserType,
Environments,
@@ -192,23 +193,37 @@ export const utils = {
const truncatedAddress = `${address.substring(0, 6)}...${address.substr(-4)}`; // 0x3d5a...b287
return truncatedAddress;
},
- getReadableAccountState(
+ getReadableAccountState(accountState: AccountState, userAddress: string): string {
+ switch (accountState) {
+ case AccountState.Loading:
+ return 'Loading...';
+ case AccountState.Ready:
+ return utils.getAddressBeginAndEnd(userAddress);
+ case AccountState.Locked:
+ return 'Please Unlock';
+ case AccountState.Disconnected:
+ return 'Connect a Wallet';
+ default:
+ return '';
+ }
+ },
+ getAccountState(
isBlockchainReady: boolean,
providerType: ProviderType,
injectedProviderName: string,
userAddress?: string,
- ): string {
+ ): AccountState {
const isAddressAvailable = !_.isUndefined(userAddress) && !_.isEmpty(userAddress);
const isExternallyInjectedProvider = utils.isExternallyInjected(providerType, injectedProviderName);
if (!isBlockchainReady) {
- return 'Loading account';
+ return AccountState.Loading;
} else if (isAddressAvailable) {
- return utils.getAddressBeginAndEnd(userAddress);
+ return AccountState.Ready;
// tslint:disable-next-line: prefer-conditional-expression
} else if (isExternallyInjectedProvider) {
- return 'Account locked';
+ return AccountState.Locked;
} else {
- return 'No wallet detected';
+ return AccountState.Disconnected;
}
},
hasUniqueNameAndSymbol(tokens: Token[], token: Token): boolean {