rozmova-analytics 1.0.6 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,12 @@
1
1
  import { AnalyticsCommonParams, EventParams } from "./types";
2
2
  export declare const generateUserId: () => string;
3
3
  export declare const getUserId: () => string;
4
+ export declare const setLocale: (newLocale: string) => void;
5
+ export declare const getLocale: () => string;
6
+ export declare const setPlatform: (newPlatform: string) => void;
7
+ export declare const getPlatform: () => string;
4
8
  export declare const getCommonParams: () => AnalyticsCommonParams;
5
- export declare const init: (additionalParams?: EventParams) => void;
9
+ export declare const init: (locale?: string, platform?: string) => void;
6
10
  export declare const trackEvent: (eventName: string, properties?: EventParams) => void;
7
11
  export declare const setUser: (userId: string, userParams: {
8
12
  email: string;
package/dist/analytics.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.trackEvent = exports.setUser = exports.resetUser = exports.init = exports.getUserId = exports.getCommonParams = exports.generateUserId = void 0;
6
+ exports.trackEvent = exports.setUser = exports.setPlatform = exports.setLocale = exports.resetUser = exports.init = exports.getUserId = exports.getPlatform = exports.getLocale = exports.getCommonParams = exports.generateUserId = void 0;
7
7
  var _jsCookie = _interopRequireDefault(require("js-cookie"));
8
8
  var _mixpanelBrowser = _interopRequireDefault(require("mixpanel-browser"));
9
9
  var _nanoid = require("nanoid");
@@ -50,6 +50,18 @@ var getCurrentParams = function getCurrentParams() {
50
50
  });
51
51
  return currentParams;
52
52
  };
53
+ var setLocale = exports.setLocale = function setLocale(newLocale) {
54
+ window.analyticsLocale = newLocale;
55
+ };
56
+ var getLocale = exports.getLocale = function getLocale() {
57
+ return window.analyticsLocale;
58
+ };
59
+ var setPlatform = exports.setPlatform = function setPlatform(newPlatform) {
60
+ window.analyticsPlatform = newPlatform;
61
+ };
62
+ var getPlatform = exports.getPlatform = function getPlatform() {
63
+ return window.analyticsPlatform || "web";
64
+ };
53
65
  var getCommonParams = exports.getCommonParams = function getCommonParams() {
54
66
  var persistedParams = getCurrentParams();
55
67
  return _objectSpread(_objectSpread({}, persistedParams), {}, {
@@ -61,55 +73,55 @@ var getCommonParams = exports.getCommonParams = function getCommonParams() {
61
73
  funnel_name: _jsCookie["default"].get("funnel_name"),
62
74
  funnel_type: _jsCookie["default"].get("funnel_type"),
63
75
  language: (0, _helpers.getBrowserLanguage)(),
64
- platform: "web",
76
+ platform: getPlatform(),
65
77
  url: window.location.href,
66
78
  device: (0, _helpers.detectDeviceType)(),
67
79
  browser: (0, _helpers.detectBrowser)(),
68
- system: (0, _helpers.detectOS)()
80
+ system: (0, _helpers.detectOS)(),
81
+ locale: getLocale()
69
82
  });
70
83
  };
71
- var init = exports.init = function init() {
72
- var additionalParams = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
84
+ var init = exports.init = function init(locale, platform) {
73
85
  var userId = getUserId();
74
86
  if ((0, _helpers.isMetaBrowser)()) {
75
87
  (0, _helpers.setQueryParam)(_constants.USER_ID_KEY, userId);
76
88
  }
77
- (0, _helpers.waitForGA)(function () {
78
- _mixpanelBrowser["default"].init(_constants.MIXPANEL_TOKEN, {
79
- debug: false,
80
- track_pageview: "url-with-path",
81
- persistence: "cookie"
82
- });
83
- var userProperties = _objectSpread(_objectSpread({}, getCommonParams()), additionalParams);
84
- _mixpanelBrowser["default"].register(userProperties);
85
- gtag("config", _constants.GOOGLE_ANALYTICS_ID, {
86
- user_properties: userProperties,
87
- server_container_url: _constants.GA_SERVER_CONTAINER_URL
88
- });
89
+ _mixpanelBrowser["default"].init(_constants.MIXPANEL_TOKEN, {
90
+ debug: false,
91
+ track_pageview: "url-with-path",
92
+ persistence: "cookie"
93
+ });
94
+ if (locale) setLocale(locale);
95
+ if (platform) setPlatform(platform);
96
+ var userProperties = getCommonParams();
97
+ _mixpanelBrowser["default"].register(userProperties);
98
+ gtag("config", _constants.GOOGLE_ANALYTICS_ID, {
99
+ user_properties: userProperties,
100
+ server_container_url: _constants.GA_SERVER_CONTAINER_URL
89
101
  });
90
102
  };
91
103
  var trackEvent = exports.trackEvent = function trackEvent(eventName) {
92
104
  var properties = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
93
- (0, _helpers.waitForGA)(function () {
94
- var commonParams = getCommonParams();
95
- var params = _objectSpread(_objectSpread({}, commonParams), properties);
96
- try {
97
- _mixpanelBrowser["default"].track(eventName, params);
98
- } catch (e) {
99
- console.log(e);
100
- }
101
- try {
102
- gtag("event", eventName, params);
103
- } catch (e) {
104
- console.log(e);
105
- }
106
- });
105
+ var commonParams = getCommonParams();
106
+ var params = _objectSpread(_objectSpread({}, commonParams), properties);
107
+ try {
108
+ _mixpanelBrowser["default"].track(eventName, params);
109
+ } catch (e) {
110
+ console.log(e);
111
+ }
112
+ try {
113
+ gtag("event", eventName, params);
114
+ } catch (e) {
115
+ console.log(e);
116
+ }
107
117
  };
108
118
  var setUser = exports.setUser = function setUser(userId, userParams) {
119
+ var email = userParams.email,
120
+ name = userParams.name;
109
121
  _mixpanelBrowser["default"].identify(userId);
110
122
  _mixpanelBrowser["default"].people.set({
111
- $email: userParams.email,
112
- name: userParams.name
123
+ $email: email,
124
+ name: name
113
125
  });
114
126
  gtag("config", _constants.GOOGLE_ANALYTICS_ID, {
115
127
  user_properties: getCommonParams(),
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/dist/helpers.d.ts CHANGED
@@ -10,4 +10,3 @@ export declare const getReferrer: () => string | null;
10
10
  export declare function getSearchQueryFromReferrer(): string | null;
11
11
  export declare const getGAClientId: () => string;
12
12
  export declare function getGASessionId(): string | null;
13
- export declare const waitForGA: (callback: () => void) => void;
package/dist/helpers.js CHANGED
@@ -10,7 +10,7 @@ exports.getGAClientId = exports.getDomain = exports.getBrowserLanguage = void 0;
10
10
  exports.getGASessionId = getGASessionId;
11
11
  exports.getReferrer = exports.getQueryParam = void 0;
12
12
  exports.getSearchQueryFromReferrer = getSearchQueryFromReferrer;
13
- exports.waitForGA = exports.setQueryParam = exports.isMetaBrowser = void 0;
13
+ exports.setQueryParam = exports.isMetaBrowser = void 0;
14
14
  var _jsCookie = _interopRequireDefault(require("js-cookie"));
15
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
16
16
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
@@ -144,9 +144,4 @@ function getGASessionId() {
144
144
  var parts = match === null || match === void 0 ? void 0 : match[1].split(".");
145
145
  if (parts) return parts[0];
146
146
  return null;
147
- }
148
- var _waitForGA = exports.waitForGA = function waitForGA(callback) {
149
- if (getGASessionId() && getGAClientId()) callback();else setTimeout(function () {
150
- return _waitForGA(callback);
151
- }, 1000);
152
- };
147
+ }
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export declare const Analytics: {
2
2
  getUserId: () => string;
3
3
  generateUserId: () => string;
4
- init: (additionalParams?: import("./types").EventParams) => void;
4
+ init: (locale?: string, platform?: string) => void;
5
5
  getCommonParams: () => import("./types").AnalyticsCommonParams;
6
6
  trackEvent: (eventName: string, properties?: import("./types").EventParams) => void;
7
7
  setUser: (userId: string, userParams: {
@@ -9,4 +9,5 @@ export declare const Analytics: {
9
9
  name: string;
10
10
  }) => void;
11
11
  resetUser: () => void;
12
+ setLocale: (newLocale: string) => void;
12
13
  };
package/dist/index.js CHANGED
@@ -12,5 +12,7 @@ var Analytics = exports.Analytics = {
12
12
  getCommonParams: _analytics.getCommonParams,
13
13
  trackEvent: _analytics.trackEvent,
14
14
  setUser: _analytics.setUser,
15
- resetUser: _analytics.resetUser
16
- };
15
+ resetUser: _analytics.resetUser,
16
+ setLocale: _analytics.setLocale
17
+ };
18
+ window.Analytics = Analytics;
package/dist/types.d.ts CHANGED
@@ -25,5 +25,6 @@ export type AnalyticsCommonParams = {
25
25
  browser: string;
26
26
  system: string;
27
27
  rid: string;
28
+ locale: string;
28
29
  };
29
30
  export type EventParams = Record<string, unknown>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rozmova-analytics",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "A collection of JavaScript functions for Rozmova analytics",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",