From f27e943258746fc61fbf8030e5b0e0c2c193bb76 Mon Sep 17 00:00:00 2001 From: Tom Schmidt Date: Tue, 6 Mar 2018 09:47:13 -0800 Subject: Added provider canonical name mapping --- packages/website/ts/utils/utils.ts | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts index a1e045af7..3d24cb1f4 100644 --- a/packages/website/ts/utils/utils.ts +++ b/packages/website/ts/utils/utils.ts @@ -309,6 +309,25 @@ export const utils = { containerId, }); }, + web3ProviderNameToString(web3ProviderName: string): string { + let parsedProviderName = "UNKNOWN"; + if(web3ProviderName === "MetamaskInpageProvider") { + parsedProviderName = "METAMASK"; + } + else if(web3ProviderName === "EthereumProvider") { + parsedProviderName = "MIST"; + } + else if(web3ProviderName === "o") { + parsedProviderName = "PARITY"; + } + else if(web3ProviderName.indexOf("infura") !== -1) { + parsedProviderName = "INFURA"; + } + else if(web3ProviderName.indexOf("localhost") !== -1) { + parsedProviderName ="LOCALHOST"; + } + return parsedProviderName; + }, async onPageLoadAsync(): Promise { if (document.readyState === 'complete') { return; // Already loaded @@ -316,5 +335,5 @@ export const utils = { return new Promise((resolve, reject) => { window.onload = () => resolve(); }); - }, + } }; -- cgit v1.2.3 From c009e9979e8590701d10fbe5f623c6e618e86fc6 Mon Sep 17 00:00:00 2001 From: Tom Schmidt Date: Thu, 8 Mar 2018 16:06:44 -0800 Subject: Added web3 provider logging --- packages/website/ts/index.tsx | 6 ++++++ packages/website/ts/utils/utils.ts | 26 +++++++++----------------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/packages/website/ts/index.tsx b/packages/website/ts/index.tsx index c0539c6d0..f3ec00e35 100644 --- a/packages/website/ts/index.tsx +++ b/packages/website/ts/index.tsx @@ -18,6 +18,8 @@ import { tradeHistoryStorage } from 'ts/local_storage/trade_history_storage'; import { reducer, State } from 'ts/redux/reducer'; import { WebsitePaths } from 'ts/types'; import { muiTheme } from 'ts/utils/mui_theme'; +import { utils } from 'ts/utils/utils'; +import * as Web3 from 'web3'; import 'whatwg-fetch'; injectTapEventPlugin(); @@ -46,6 +48,10 @@ const LazyConnectDocumentation = createLazyComponent('Documentation', async () = ); ReactGA.initialize('UA-98720122-1'); +window.onload = () => { + const providerName = (window as any).web3 ? utils.web3ProviderToString((window as any).web3.currentProvider) : 'NONE'; + ReactGA.ga('set', 'dimension1', providerName); +}; const store: ReduxStore = createStore(reducer); render( diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts index 3d24cb1f4..bed818351 100644 --- a/packages/website/ts/utils/utils.ts +++ b/packages/website/ts/utils/utils.ts @@ -1,4 +1,4 @@ -import { ECSignature, ExchangeContractErrs, ZeroEx, ZeroExError } from '0x.js'; +import { ECSignature, ExchangeContractErrs, ZeroEx, ZeroExError, Web3Provider } from '0x.js'; import { BigNumber } from '@0xproject/utils'; import deepEqual = require('deep-equal'); import isMobile = require('is-mobile'); @@ -309,22 +309,14 @@ export const utils = { containerId, }); }, - web3ProviderNameToString(web3ProviderName: string): string { - let parsedProviderName = "UNKNOWN"; - if(web3ProviderName === "MetamaskInpageProvider") { - parsedProviderName = "METAMASK"; - } - else if(web3ProviderName === "EthereumProvider") { - parsedProviderName = "MIST"; - } - else if(web3ProviderName === "o") { - parsedProviderName = "PARITY"; - } - else if(web3ProviderName.indexOf("infura") !== -1) { - parsedProviderName = "INFURA"; - } - else if(web3ProviderName.indexOf("localhost") !== -1) { - parsedProviderName ="LOCALHOST"; + web3ProviderToString(provider: Web3Provider): string { + let parsedProviderName = provider.constructor.name; + if (provider.constructor.name === 'MetamaskInpageProvider') { + parsedProviderName = 'METAMASK'; + } else if (provider.constructor.name === 'EthereumProvider') { + parsedProviderName = 'MIST'; + } else if (provider.constructor.name === 'o') { + parsedProviderName = 'PARITY'; } return parsedProviderName; }, -- cgit v1.2.3 From c78e504bfba369adf2716964f787f9655fc9ea07 Mon Sep 17 00:00:00 2001 From: Tom Schmidt Date: Thu, 8 Mar 2018 17:08:43 -0800 Subject: Fixed lint --- packages/website/ts/index.tsx | 4 +++- packages/website/ts/utils/utils.ts | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/website/ts/index.tsx b/packages/website/ts/index.tsx index f3ec00e35..1eaf6274b 100644 --- a/packages/website/ts/index.tsx +++ b/packages/website/ts/index.tsx @@ -49,7 +49,9 @@ const LazyConnectDocumentation = createLazyComponent('Documentation', async () = ReactGA.initialize('UA-98720122-1'); window.onload = () => { - const providerName = (window as any).web3 ? utils.web3ProviderToString((window as any).web3.currentProvider) : 'NONE'; + const providerName = (window as any).web3 + ? utils.web3ProviderToString((window as any).web3.currentProvider) + : 'NONE'; ReactGA.ga('set', 'dimension1', providerName); }; const store: ReduxStore = createStore(reducer); diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts index bed818351..b6a02f253 100644 --- a/packages/website/ts/utils/utils.ts +++ b/packages/website/ts/utils/utils.ts @@ -1,4 +1,4 @@ -import { ECSignature, ExchangeContractErrs, ZeroEx, ZeroExError, Web3Provider } from '0x.js'; +import { ECSignature, ExchangeContractErrs, Web3Provider, ZeroEx, ZeroExError } from '0x.js'; import { BigNumber } from '@0xproject/utils'; import deepEqual = require('deep-equal'); import isMobile = require('is-mobile'); @@ -313,9 +313,9 @@ export const utils = { let parsedProviderName = provider.constructor.name; if (provider.constructor.name === 'MetamaskInpageProvider') { parsedProviderName = 'METAMASK'; - } else if (provider.constructor.name === 'EthereumProvider') { + } else if (provider.constructor.name === 'EthereumProvider') { parsedProviderName = 'MIST'; - } else if (provider.constructor.name === 'o') { + } else if (provider.constructor.name === 'o') { parsedProviderName = 'PARITY'; } return parsedProviderName; @@ -327,5 +327,5 @@ export const utils = { return new Promise((resolve, reject) => { window.onload = () => resolve(); }); - } + }, }; -- cgit v1.2.3 From 654c790c3df3ee857952a1023761f186bb9c777d Mon Sep 17 00:00:00 2001 From: Tom Schmidt Date: Fri, 9 Mar 2018 12:44:11 -0800 Subject: Fixed Parity detection --- packages/website/ts/utils/utils.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts index b6a02f253..eaf1d43cc 100644 --- a/packages/website/ts/utils/utils.ts +++ b/packages/website/ts/utils/utils.ts @@ -315,7 +315,7 @@ export const utils = { parsedProviderName = 'METAMASK'; } else if (provider.constructor.name === 'EthereumProvider') { parsedProviderName = 'MIST'; - } else if (provider.constructor.name === 'o') { + } else if ((provider as any).isParity) { parsedProviderName = 'PARITY'; } return parsedProviderName; -- cgit v1.2.3