aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/util/analytics.ts
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2018-12-19 22:16:35 +0800
committerFabio Berger <me@fabioberger.com>2018-12-19 22:16:35 +0800
commit293dadc22aedcaf540f2dc17c8c38087e7ace037 (patch)
tree79f624ab03071a28da83c7bf542acfe0dd7af8cb /packages/instant/src/util/analytics.ts
parentddf3bb7c0446f2d85b6fa55cbe0b00b227f08af7 (diff)
parent040b402b6d558d13f2f4e032297b6723cdf2aafe (diff)
downloaddexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar.gz
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar.bz2
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar.lz
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar.xz
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.tar.zst
dexon-sol-tools-293dadc22aedcaf540f2dc17c8c38087e7ace037.zip
Merge branch 'development' into website/addPySRA
* development: (141 commits) Add missing CHANGELOG entry for OrderWatcher WS interface Bump up stale to close to 30 days Move onMessageAsync outside of tests and add comments Fix WS tests to remove race-condition and be more specific about the message expected Add temporary console.log to test failing on CI Make @0x/contracts-test-utils a dependency instead of a devDependency Fix test-publish failure in contracts packages Fixed solhint errors Added documentation to `LibAddressArray.append` and switched `if` to `require` smt Updated changelogs for new contracts Added `gas` field so tests pass on Geth; Added Changelog for new Extensions Updated comment `Execute fillOrder` -> `Execute exchange function` Explicit returns Prettier / Linter on contracts + TS Refactoring balance threshold filter Moved exchange calldata functions to separate mixin Less Assembly. More Solidity. Less Efficiency. More Readability. Run all tests for extensions Cleaned up tests for balance threshold filter ...
Diffstat (limited to 'packages/instant/src/util/analytics.ts')
-rw-r--r--packages/instant/src/util/analytics.ts9
1 files changed, 9 insertions, 0 deletions
diff --git a/packages/instant/src/util/analytics.ts b/packages/instant/src/util/analytics.ts
index e6128f857..6c63907dc 100644
--- a/packages/instant/src/util/analytics.ts
+++ b/packages/instant/src/util/analytics.ts
@@ -6,6 +6,7 @@ import { GIT_SHA, HEAP_ENABLED, INSTANT_DISCHARGE_TARGET, NODE_ENV, NPM_PACKAGE_
import {
AffiliateInfo,
Asset,
+ BaseCurrency,
Network,
OrderProcessState,
OrderSource,
@@ -37,6 +38,7 @@ enum EventNames {
ACCOUNT_UNLOCK_REQUESTED = 'Account - Unlock Requested',
ACCOUNT_UNLOCK_DENIED = 'Account - Unlock Denied',
ACCOUNT_ADDRESS_CHANGED = 'Account - Address Changed',
+ BASE_CURRENCY_CHANGED = 'Base Currency - Changed',
PAYMENT_METHOD_DROPDOWN_OPENED = 'Payment Method - Dropdown Opened',
PAYMENT_METHOD_OPENED_ETHERSCAN = 'Payment Method - Opened Etherscan',
PAYMENT_METHOD_COPIED_ADDRESS = 'Payment Method - Copied Address',
@@ -47,6 +49,7 @@ enum EventNames {
BUY_TX_SUBMITTED = 'Buy - Tx Submitted',
BUY_TX_SUCCEEDED = 'Buy - Tx Succeeded',
BUY_TX_FAILED = 'Buy - Tx Failed',
+ USD_PRICE_FETCH_FAILED = 'USD Price - Fetch Failed',
INSTALL_WALLET_CLICKED = 'Install Wallet - Clicked',
INSTALL_WALLET_MODAL_OPENED = 'Install Wallet - Modal - Opened',
INSTALL_WALLET_MODAL_CLICKED_EXPLANATION = 'Install Wallet - Modal - Clicked Explanation',
@@ -118,6 +121,7 @@ export interface AnalyticsEventOptions {
selectedAssetSymbol?: string;
selectedAssetData?: string;
selectedAssetDecimals?: number;
+ baseCurrency?: string;
}
export enum TokenSelectorClosedVia {
ClickedX = 'Clicked X',
@@ -141,6 +145,7 @@ export const analytics = {
window: Window,
selectedAsset?: Asset,
affiliateInfo?: AffiliateInfo,
+ baseCurrency?: BaseCurrency,
): AnalyticsEventOptions => {
const affiliateAddress = affiliateInfo ? affiliateInfo.feeRecipient : 'none';
const affiliateFeePercent = affiliateInfo ? parseFloat(affiliateInfo.feePercentage.toFixed(4)) : 0;
@@ -159,6 +164,7 @@ export const analytics = {
selectedAssetName: selectedAsset ? selectedAsset.metaData.name : 'none',
selectedAssetData: selectedAsset ? selectedAsset.assetData : 'none',
instantEnvironment: INSTANT_DISCHARGE_TARGET || `Local ${NODE_ENV}`,
+ baseCurrency,
};
return eventOptions;
},
@@ -170,6 +176,8 @@ export const analytics = {
trackAccountUnlockDenied: trackingEventFnWithoutPayload(EventNames.ACCOUNT_UNLOCK_DENIED),
trackAccountAddressChanged: (address: string) =>
trackingEventFnWithPayload(EventNames.ACCOUNT_ADDRESS_CHANGED)({ address }),
+ trackBaseCurrencyChanged: (currencyChangedTo: BaseCurrency) =>
+ trackingEventFnWithPayload(EventNames.BASE_CURRENCY_CHANGED)({ currencyChangedTo }),
trackPaymentMethodDropdownOpened: trackingEventFnWithoutPayload(EventNames.PAYMENT_METHOD_DROPDOWN_OPENED),
trackPaymentMethodOpenedEtherscan: trackingEventFnWithoutPayload(EventNames.PAYMENT_METHOD_OPENED_ETHERSCAN),
trackPaymentMethodCopiedAddress: trackingEventFnWithoutPayload(EventNames.PAYMENT_METHOD_COPIED_ADDRESS),
@@ -230,4 +238,5 @@ export const analytics = {
fetchOrigin,
});
},
+ trackUsdPriceFailed: trackingEventFnWithoutPayload(EventNames.USD_PRICE_FETCH_FAILED),
};