@formo/analytics 1.16.3 → 1.16.5

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.
Files changed (263) hide show
  1. package/dist/cjs/src/FormoAnalytics.d.ts +69 -38
  2. package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
  3. package/dist/cjs/src/FormoAnalytics.js +143 -198
  4. package/dist/cjs/src/FormoAnalytics.js.map +1 -1
  5. package/dist/cjs/src/FormoAnalyticsProvider.js +5 -5
  6. package/dist/cjs/src/FormoAnalyticsProvider.js.map +1 -1
  7. package/dist/cjs/src/constants/config.d.ts +1 -1
  8. package/dist/cjs/src/constants/config.d.ts.map +1 -1
  9. package/dist/cjs/src/constants/config.js +1 -1
  10. package/dist/cjs/src/constants/config.js.map +1 -1
  11. package/dist/cjs/src/constants/events.d.ts +14 -5
  12. package/dist/cjs/src/constants/events.d.ts.map +1 -1
  13. package/dist/cjs/src/constants/events.js +20 -12
  14. package/dist/cjs/src/constants/events.js.map +1 -1
  15. package/dist/cjs/src/lib/event/EventFactory.d.ts +22 -54
  16. package/dist/cjs/src/lib/event/EventFactory.d.ts.map +1 -1
  17. package/dist/cjs/src/lib/event/EventFactory.js +187 -116
  18. package/dist/cjs/src/lib/event/EventFactory.js.map +1 -1
  19. package/dist/cjs/src/lib/event/EventManager.d.ts +22 -0
  20. package/dist/cjs/src/lib/event/EventManager.d.ts.map +1 -0
  21. package/dist/cjs/src/lib/event/EventManager.js +48 -0
  22. package/dist/cjs/src/lib/event/EventManager.js.map +1 -0
  23. package/dist/cjs/src/lib/event/constants.d.ts +4 -0
  24. package/dist/cjs/src/lib/event/constants.d.ts.map +1 -0
  25. package/dist/cjs/src/lib/event/constants.js +8 -0
  26. package/dist/cjs/src/lib/event/constants.js.map +1 -0
  27. package/dist/cjs/src/lib/event/index.d.ts +1 -0
  28. package/dist/cjs/src/lib/event/index.d.ts.map +1 -1
  29. package/dist/cjs/src/lib/event/index.js +1 -0
  30. package/dist/cjs/src/lib/event/index.js.map +1 -1
  31. package/dist/cjs/src/lib/event/type.d.ts +5 -3
  32. package/dist/cjs/src/lib/event/type.d.ts.map +1 -1
  33. package/dist/cjs/src/lib/event/utils.d.ts +4 -0
  34. package/dist/cjs/src/lib/event/utils.d.ts.map +1 -0
  35. package/dist/cjs/src/lib/event/utils.js +16 -0
  36. package/dist/cjs/src/lib/event/utils.js.map +1 -0
  37. package/dist/cjs/src/lib/fetch.d.ts +1 -1
  38. package/dist/cjs/src/lib/queue/EventQueue.d.ts +1 -0
  39. package/dist/cjs/src/lib/queue/EventQueue.d.ts.map +1 -1
  40. package/dist/cjs/src/lib/queue/EventQueue.js +22 -14
  41. package/dist/cjs/src/lib/queue/EventQueue.js.map +1 -1
  42. package/dist/cjs/src/lib/ramda/internal/_curry1.d.ts +10 -0
  43. package/dist/cjs/src/lib/ramda/internal/_curry1.d.ts.map +1 -0
  44. package/dist/cjs/src/lib/ramda/internal/_curry1.js +26 -0
  45. package/dist/cjs/src/lib/ramda/internal/_curry1.js.map +1 -0
  46. package/dist/cjs/src/lib/ramda/internal/_curry2.d.ts +10 -0
  47. package/dist/cjs/src/lib/ramda/internal/_curry2.d.ts.map +1 -0
  48. package/dist/cjs/src/lib/ramda/internal/_curry2.js +43 -0
  49. package/dist/cjs/src/lib/ramda/internal/_curry2.js.map +1 -0
  50. package/dist/cjs/src/lib/ramda/internal/_curry3.d.ts +10 -0
  51. package/dist/cjs/src/lib/ramda/internal/_curry3.d.ts.map +1 -0
  52. package/dist/cjs/src/lib/ramda/internal/_curry3.js +74 -0
  53. package/dist/cjs/src/lib/ramda/internal/_curry3.js.map +1 -0
  54. package/dist/cjs/src/lib/ramda/internal/_has.d.ts +2 -0
  55. package/dist/cjs/src/lib/ramda/internal/_has.d.ts.map +1 -0
  56. package/dist/cjs/src/lib/ramda/internal/_has.js +7 -0
  57. package/dist/cjs/src/lib/ramda/internal/_has.js.map +1 -0
  58. package/dist/cjs/src/lib/ramda/internal/_isObject.d.ts +2 -0
  59. package/dist/cjs/src/lib/ramda/internal/_isObject.d.ts.map +1 -0
  60. package/dist/cjs/src/lib/ramda/internal/_isObject.js +7 -0
  61. package/dist/cjs/src/lib/ramda/internal/_isObject.js.map +1 -0
  62. package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.d.ts +2 -0
  63. package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.d.ts.map +1 -0
  64. package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.js +7 -0
  65. package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.js.map +1 -0
  66. package/dist/cjs/src/lib/ramda/mergeDeepRight.d.ts +3 -0
  67. package/dist/cjs/src/lib/ramda/mergeDeepRight.d.ts.map +1 -0
  68. package/dist/cjs/src/lib/ramda/mergeDeepRight.js +14 -0
  69. package/dist/cjs/src/lib/ramda/mergeDeepRight.js.map +1 -0
  70. package/dist/cjs/src/lib/ramda/mergeDeepWithKey.d.ts +3 -0
  71. package/dist/cjs/src/lib/ramda/mergeDeepWithKey.d.ts.map +1 -0
  72. package/dist/cjs/src/lib/ramda/mergeDeepWithKey.js +20 -0
  73. package/dist/cjs/src/lib/ramda/mergeDeepWithKey.js.map +1 -0
  74. package/dist/cjs/src/lib/ramda/mergeWithKey.d.ts +3 -0
  75. package/dist/cjs/src/lib/ramda/mergeWithKey.d.ts.map +1 -0
  76. package/dist/cjs/src/lib/ramda/mergeWithKey.js +26 -0
  77. package/dist/cjs/src/lib/ramda/mergeWithKey.js.map +1 -0
  78. package/dist/cjs/src/lib/storage/native.d.ts +1 -0
  79. package/dist/cjs/src/lib/storage/native.d.ts.map +1 -1
  80. package/dist/cjs/src/lib/storage/native.js +3 -0
  81. package/dist/cjs/src/lib/storage/native.js.map +1 -1
  82. package/dist/cjs/src/lib/version.d.ts +2 -0
  83. package/dist/cjs/src/lib/version.d.ts.map +1 -0
  84. package/dist/cjs/src/lib/version.js +6 -0
  85. package/dist/cjs/src/lib/version.js.map +1 -0
  86. package/dist/cjs/src/types/base.d.ts +1 -0
  87. package/dist/cjs/src/types/base.d.ts.map +1 -1
  88. package/dist/cjs/src/types/events.d.ts +55 -27
  89. package/dist/cjs/src/types/events.d.ts.map +1 -1
  90. package/dist/cjs/src/types/events.js.map +1 -1
  91. package/dist/cjs/src/utils/base.d.ts +1 -1
  92. package/dist/cjs/src/utils/base.d.ts.map +1 -1
  93. package/dist/cjs/src/utils/base.js +2 -2
  94. package/dist/cjs/src/utils/base.js.map +1 -1
  95. package/dist/cjs/src/utils/timestamp.d.ts +8 -0
  96. package/dist/cjs/src/utils/timestamp.d.ts.map +1 -0
  97. package/dist/cjs/src/utils/timestamp.js +12 -0
  98. package/dist/cjs/src/utils/timestamp.js.map +1 -0
  99. package/dist/cjs/src/validators/checks.d.ts +77 -0
  100. package/dist/cjs/src/validators/checks.d.ts.map +1 -0
  101. package/dist/cjs/src/validators/checks.js +141 -0
  102. package/dist/cjs/src/validators/checks.js.map +1 -0
  103. package/dist/cjs/src/validators/index.d.ts +2 -1
  104. package/dist/cjs/src/validators/index.d.ts.map +1 -1
  105. package/dist/cjs/src/validators/index.js +2 -1
  106. package/dist/cjs/src/validators/index.js.map +1 -1
  107. package/dist/cjs/src/validators/network.d.ts +2 -0
  108. package/dist/cjs/src/validators/network.d.ts.map +1 -0
  109. package/dist/cjs/src/validators/network.js +31 -0
  110. package/dist/cjs/src/validators/network.js.map +1 -0
  111. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  112. package/dist/esm/src/FormoAnalytics.d.ts +69 -38
  113. package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
  114. package/dist/esm/src/FormoAnalytics.js +146 -201
  115. package/dist/esm/src/FormoAnalytics.js.map +1 -1
  116. package/dist/esm/src/FormoAnalyticsProvider.js +5 -5
  117. package/dist/esm/src/FormoAnalyticsProvider.js.map +1 -1
  118. package/dist/esm/src/constants/config.d.ts +1 -1
  119. package/dist/esm/src/constants/config.d.ts.map +1 -1
  120. package/dist/esm/src/constants/config.js +1 -1
  121. package/dist/esm/src/constants/config.js.map +1 -1
  122. package/dist/esm/src/constants/events.d.ts +14 -5
  123. package/dist/esm/src/constants/events.d.ts.map +1 -1
  124. package/dist/esm/src/constants/events.js +19 -11
  125. package/dist/esm/src/constants/events.js.map +1 -1
  126. package/dist/esm/src/lib/event/EventFactory.d.ts +22 -54
  127. package/dist/esm/src/lib/event/EventFactory.d.ts.map +1 -1
  128. package/dist/esm/src/lib/event/EventFactory.js +185 -117
  129. package/dist/esm/src/lib/event/EventFactory.js.map +1 -1
  130. package/dist/esm/src/lib/event/EventManager.d.ts +22 -0
  131. package/dist/esm/src/lib/event/EventManager.d.ts.map +1 -0
  132. package/dist/esm/src/lib/event/EventManager.js +45 -0
  133. package/dist/esm/src/lib/event/EventManager.js.map +1 -0
  134. package/dist/esm/src/lib/event/constants.d.ts +4 -0
  135. package/dist/esm/src/lib/event/constants.d.ts.map +1 -0
  136. package/dist/esm/src/lib/event/constants.js +4 -0
  137. package/dist/esm/src/lib/event/constants.js.map +1 -0
  138. package/dist/esm/src/lib/event/index.d.ts +1 -0
  139. package/dist/esm/src/lib/event/index.d.ts.map +1 -1
  140. package/dist/esm/src/lib/event/index.js +1 -0
  141. package/dist/esm/src/lib/event/index.js.map +1 -1
  142. package/dist/esm/src/lib/event/type.d.ts +5 -3
  143. package/dist/esm/src/lib/event/type.d.ts.map +1 -1
  144. package/dist/esm/src/lib/event/utils.d.ts +4 -0
  145. package/dist/esm/src/lib/event/utils.d.ts.map +1 -0
  146. package/dist/esm/src/lib/event/utils.js +13 -0
  147. package/dist/esm/src/lib/event/utils.js.map +1 -0
  148. package/dist/esm/src/lib/queue/EventQueue.d.ts +1 -0
  149. package/dist/esm/src/lib/queue/EventQueue.d.ts.map +1 -1
  150. package/dist/esm/src/lib/queue/EventQueue.js +21 -13
  151. package/dist/esm/src/lib/queue/EventQueue.js.map +1 -1
  152. package/dist/esm/src/lib/ramda/internal/_curry1.d.ts +10 -0
  153. package/dist/esm/src/lib/ramda/internal/_curry1.d.ts.map +1 -0
  154. package/dist/esm/src/lib/ramda/internal/_curry1.js +20 -0
  155. package/dist/esm/src/lib/ramda/internal/_curry1.js.map +1 -0
  156. package/dist/esm/src/lib/ramda/internal/_curry2.d.ts +10 -0
  157. package/dist/esm/src/lib/ramda/internal/_curry2.d.ts.map +1 -0
  158. package/dist/esm/src/lib/ramda/internal/_curry2.js +37 -0
  159. package/dist/esm/src/lib/ramda/internal/_curry2.js.map +1 -0
  160. package/dist/esm/src/lib/ramda/internal/_curry3.d.ts +10 -0
  161. package/dist/esm/src/lib/ramda/internal/_curry3.d.ts.map +1 -0
  162. package/dist/esm/src/lib/ramda/internal/_curry3.js +68 -0
  163. package/dist/esm/src/lib/ramda/internal/_curry3.js.map +1 -0
  164. package/dist/esm/src/lib/ramda/internal/_has.d.ts +2 -0
  165. package/dist/esm/src/lib/ramda/internal/_has.d.ts.map +1 -0
  166. package/dist/esm/src/lib/ramda/internal/_has.js +4 -0
  167. package/dist/esm/src/lib/ramda/internal/_has.js.map +1 -0
  168. package/dist/esm/src/lib/ramda/internal/_isObject.d.ts +2 -0
  169. package/dist/esm/src/lib/ramda/internal/_isObject.d.ts.map +1 -0
  170. package/dist/esm/src/lib/ramda/internal/_isObject.js +4 -0
  171. package/dist/esm/src/lib/ramda/internal/_isObject.js.map +1 -0
  172. package/dist/esm/src/lib/ramda/internal/_isPlaceholder.d.ts +2 -0
  173. package/dist/esm/src/lib/ramda/internal/_isPlaceholder.d.ts.map +1 -0
  174. package/dist/esm/src/lib/ramda/internal/_isPlaceholder.js +4 -0
  175. package/dist/esm/src/lib/ramda/internal/_isPlaceholder.js.map +1 -0
  176. package/dist/esm/src/lib/ramda/mergeDeepRight.d.ts +3 -0
  177. package/dist/esm/src/lib/ramda/mergeDeepRight.d.ts.map +1 -0
  178. package/dist/esm/src/lib/ramda/mergeDeepRight.js +9 -0
  179. package/dist/esm/src/lib/ramda/mergeDeepRight.js.map +1 -0
  180. package/dist/esm/src/lib/ramda/mergeDeepWithKey.d.ts +3 -0
  181. package/dist/esm/src/lib/ramda/mergeDeepWithKey.d.ts.map +1 -0
  182. package/dist/esm/src/lib/ramda/mergeDeepWithKey.js +15 -0
  183. package/dist/esm/src/lib/ramda/mergeDeepWithKey.js.map +1 -0
  184. package/dist/esm/src/lib/ramda/mergeWithKey.d.ts +3 -0
  185. package/dist/esm/src/lib/ramda/mergeWithKey.d.ts.map +1 -0
  186. package/dist/esm/src/lib/ramda/mergeWithKey.js +21 -0
  187. package/dist/esm/src/lib/ramda/mergeWithKey.js.map +1 -0
  188. package/dist/esm/src/lib/storage/native.d.ts +1 -0
  189. package/dist/esm/src/lib/storage/native.d.ts.map +1 -1
  190. package/dist/esm/src/lib/storage/native.js +3 -0
  191. package/dist/esm/src/lib/storage/native.js.map +1 -1
  192. package/dist/esm/src/lib/version.d.ts +2 -0
  193. package/dist/esm/src/lib/version.d.ts.map +1 -0
  194. package/dist/esm/src/lib/version.js +3 -0
  195. package/dist/esm/src/lib/version.js.map +1 -0
  196. package/dist/esm/src/types/base.d.ts +1 -0
  197. package/dist/esm/src/types/base.d.ts.map +1 -1
  198. package/dist/esm/src/types/events.d.ts +55 -27
  199. package/dist/esm/src/types/events.d.ts.map +1 -1
  200. package/dist/esm/src/types/events.js.map +1 -1
  201. package/dist/esm/src/utils/base.d.ts +1 -1
  202. package/dist/esm/src/utils/base.d.ts.map +1 -1
  203. package/dist/esm/src/utils/base.js +2 -2
  204. package/dist/esm/src/utils/base.js.map +1 -1
  205. package/dist/esm/src/utils/timestamp.d.ts +8 -0
  206. package/dist/esm/src/utils/timestamp.d.ts.map +1 -0
  207. package/dist/esm/src/utils/timestamp.js +8 -0
  208. package/dist/esm/src/utils/timestamp.js.map +1 -0
  209. package/dist/esm/src/validators/checks.d.ts +77 -0
  210. package/dist/esm/src/validators/checks.d.ts.map +1 -0
  211. package/dist/esm/src/validators/checks.js +119 -0
  212. package/dist/esm/src/validators/checks.js.map +1 -0
  213. package/dist/esm/src/validators/index.d.ts +2 -1
  214. package/dist/esm/src/validators/index.d.ts.map +1 -1
  215. package/dist/esm/src/validators/index.js +2 -1
  216. package/dist/esm/src/validators/index.js.map +1 -1
  217. package/dist/esm/src/validators/network.d.ts +2 -0
  218. package/dist/esm/src/validators/network.d.ts.map +1 -0
  219. package/dist/esm/src/validators/network.js +28 -0
  220. package/dist/esm/src/validators/network.js.map +1 -0
  221. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  222. package/dist/index.umd.min.js +1 -1
  223. package/dist/index.umd.min.js.map +1 -1
  224. package/package.json +3 -3
  225. package/src/FormoAnalytics.ts +380 -242
  226. package/src/FormoAnalyticsProvider.tsx +5 -5
  227. package/src/constants/config.ts +1 -1
  228. package/src/constants/events.ts +15 -4
  229. package/src/lib/event/EventFactory.ts +358 -162
  230. package/src/lib/event/EventManager.ts +39 -0
  231. package/src/lib/event/constants.ts +4 -0
  232. package/src/lib/event/index.ts +1 -0
  233. package/src/lib/event/type.ts +6 -8
  234. package/src/lib/event/utils.ts +15 -0
  235. package/src/lib/queue/EventQueue.ts +23 -11
  236. package/src/lib/ramda/internal/_curry1.ts +19 -0
  237. package/src/lib/ramda/internal/_curry2.ts +37 -0
  238. package/src/lib/ramda/internal/_curry3.ts +68 -0
  239. package/src/lib/ramda/internal/_has.ts +3 -0
  240. package/src/lib/ramda/internal/_isObject.ts +3 -0
  241. package/src/lib/ramda/internal/_isPlaceholder.ts +5 -0
  242. package/src/lib/ramda/mergeDeepRight.ts +13 -0
  243. package/src/lib/ramda/mergeDeepWithKey.ts +22 -0
  244. package/src/lib/ramda/mergeWithKey.ts +28 -0
  245. package/src/lib/storage/native.ts +4 -0
  246. package/src/lib/version.ts +2 -0
  247. package/src/types/base.ts +1 -0
  248. package/src/types/events.ts +93 -58
  249. package/src/utils/base.ts +2 -2
  250. package/src/utils/timestamp.ts +9 -0
  251. package/src/validators/checks.ts +160 -0
  252. package/src/validators/index.ts +2 -1
  253. package/src/validators/network.ts +34 -0
  254. package/tsconfig.json +1 -1
  255. package/dist/cjs/src/validators/type-check.d.ts +0 -14
  256. package/dist/cjs/src/validators/type-check.d.ts.map +0 -1
  257. package/dist/cjs/src/validators/type-check.js +0 -61
  258. package/dist/cjs/src/validators/type-check.js.map +0 -1
  259. package/dist/esm/src/validators/type-check.d.ts +0 -14
  260. package/dist/esm/src/validators/type-check.d.ts.map +0 -1
  261. package/dist/esm/src/validators/type-check.js +0 -46
  262. package/dist/esm/src/validators/type-check.js.map +0 -1
  263. package/src/validators/type-check.ts +0 -61
@@ -52,7 +52,6 @@ var mipd_1 = require("mipd");
52
52
  var constants_1 = require("./constants");
53
53
  var lib_1 = require("./lib");
54
54
  var types_1 = require("./types");
55
- var utils_1 = require("./utils");
56
55
  var validators_1 = require("./validators");
57
56
  var FormoAnalytics = /** @class */ (function () {
58
57
  function FormoAnalytics(writeKey, options) {
@@ -61,28 +60,25 @@ var FormoAnalytics = /** @class */ (function () {
61
60
  this.writeKey = writeKey;
62
61
  this.options = options;
63
62
  this._providerListeners = {};
64
- this.anonymousId = null;
65
- this.userId = null;
66
63
  this.config = {
67
64
  writeKey: writeKey,
68
65
  trackLocalhost: options.trackLocalhost || false,
69
66
  };
70
67
  this.session = new FormoAnalyticsSession();
68
+ this.currentUserId =
69
+ lib_1.session.get(constants_1.SESSION_USER_ID_KEY) || undefined;
71
70
  // Initialize logger with configuration from options
72
71
  lib_1.Logger.init({
73
72
  enabled: ((_a = options.logger) === null || _a === void 0 ? void 0 : _a.enabled) || false,
74
73
  enabledLevels: ((_b = options.logger) === null || _b === void 0 ? void 0 : _b.levels) || [],
75
74
  });
76
- this.eventFactory = new lib_1.EventFactory();
77
- this.eventQueue = new lib_1.EventQueue(this.config.writeKey, {
75
+ this.eventManager = new lib_1.EventManager(new lib_1.EventQueue(this.config.writeKey, {
78
76
  url: constants_1.EVENTS_API_URL,
79
77
  flushAt: options.flushAt,
80
78
  retryCount: options.retryCount,
81
79
  maxQueueSize: options.maxQueueSize,
82
80
  flushInterval: options.flushInterval,
83
- });
84
- this.anonymousId = this.getAnonymousId();
85
- this.userId = lib_1.session.get(constants_1.SESSION_USER_ID_KEY);
81
+ }));
86
82
  // TODO: replace with eip6963
87
83
  var provider = options.provider || (window === null || window === void 0 ? void 0 : window.ethereum);
88
84
  if (provider) {
@@ -101,7 +97,7 @@ var FormoAnalytics = /** @class */ (function () {
101
97
  return [4 /*yield*/, analytics.getProviders()];
102
98
  case 1:
103
99
  providers = _a.sent();
104
- return [4 /*yield*/, analytics.detects(providers)];
100
+ return [4 /*yield*/, analytics.detectWallets(providers)];
105
101
  case 2:
106
102
  _a.sent();
107
103
  return [2 /*return*/, analytics];
@@ -114,13 +110,17 @@ var FormoAnalytics = /** @class */ (function () {
114
110
  */
115
111
  /**
116
112
  * Emits a page visit event with the current URL information, fire on page change.
113
+ * @param {string} category - The category of the page
114
+ * @param {string} name - The name of the page
115
+ * @param {Record<string, any>} properties - Additional properties to include
116
+ * @param {Record<string, any>} context - Additional context to include
117
117
  * @returns {Promise<void>}
118
118
  */
119
- FormoAnalytics.prototype.page = function () {
119
+ FormoAnalytics.prototype.page = function (category, name, properties, context) {
120
120
  return __awaiter(this, void 0, void 0, function () {
121
121
  return __generator(this, function (_a) {
122
122
  switch (_a.label) {
123
- case 0: return [4 /*yield*/, this.trackPageHit()];
123
+ case 0: return [4 /*yield*/, this.trackPageHit(category, name, properties, context)];
124
124
  case 1:
125
125
  _a.sent();
126
126
  return [2 /*return*/];
@@ -133,20 +133,22 @@ var FormoAnalytics = /** @class */ (function () {
133
133
  * @returns {void}
134
134
  */
135
135
  FormoAnalytics.prototype.reset = function () {
136
- this.anonymousId = this.getAnonymousId();
137
- this.userId = null;
136
+ this.currentUserId = undefined;
138
137
  lib_1.local.remove(constants_1.LOCAL_ANONYMOUS_ID_KEY);
139
138
  lib_1.session.remove(constants_1.SESSION_USER_ID_KEY);
140
139
  };
141
140
  /**
142
- * Emits a wallet connect event.
141
+ * Emits a connect wallet event.
143
142
  * @param {ChainID} params.chainId
144
143
  * @param {Address} params.address
144
+ * @param {IFormoEventProperties} properties
145
+ * @param {IFormoEventContext} context
146
+ * @param {(...args: unknown[]) => void} callback
145
147
  * @throws {Error} If chainId or address is empty
146
148
  * @returns {Promise<void>}
147
149
  */
148
- FormoAnalytics.prototype.connect = function (_a) {
149
- return __awaiter(this, arguments, void 0, function (_b) {
150
+ FormoAnalytics.prototype.connect = function (_a, properties_1, context_1, callback_1) {
151
+ return __awaiter(this, arguments, void 0, function (_b, properties, context, callback) {
150
152
  var chainId = _b.chainId, address = _b.address;
151
153
  return __generator(this, function (_c) {
152
154
  switch (_c.label) {
@@ -158,11 +160,11 @@ var FormoAnalytics = /** @class */ (function () {
158
160
  lib_1.logger.warn("Connect: Address cannot be empty");
159
161
  }
160
162
  this.currentChainId = chainId;
161
- this.currentConnectedAddress = address;
162
- return [4 /*yield*/, this.trackEvent(constants_1.Event.CONNECT, {
163
+ this.currentAddress = address;
164
+ return [4 /*yield*/, this.trackEvent(constants_1.EventType.CONNECT, {
163
165
  chainId: chainId,
164
166
  address: address,
165
- })];
167
+ }, properties, context, callback)];
166
168
  case 1:
167
169
  _c.sent();
168
170
  return [2 /*return*/];
@@ -174,17 +176,20 @@ var FormoAnalytics = /** @class */ (function () {
174
176
  * Emits a wallet disconnect event.
175
177
  * @param {ChainID} params.chainId
176
178
  * @param {Address} params.address
179
+ * @param {IFormoEventProperties} properties
180
+ * @param {IFormoEventContext} context
181
+ * @param {(...args: unknown[]) => void} callback
177
182
  * @returns {Promise<void>}
178
183
  */
179
- FormoAnalytics.prototype.disconnect = function (params) {
184
+ FormoAnalytics.prototype.disconnect = function (params, properties, context, callback) {
180
185
  return __awaiter(this, void 0, void 0, function () {
181
186
  var address, chainId;
182
187
  return __generator(this, function (_a) {
183
188
  switch (_a.label) {
184
189
  case 0:
185
- address = (params === null || params === void 0 ? void 0 : params.address) || this.currentConnectedAddress;
190
+ address = (params === null || params === void 0 ? void 0 : params.address) || this.currentAddress;
186
191
  chainId = (params === null || params === void 0 ? void 0 : params.chainId) || this.currentChainId;
187
- return [4 /*yield*/, this.handleDisconnect(chainId, address)];
192
+ return [4 /*yield*/, this.handleDisconnect(chainId, address, properties, context, callback)];
188
193
  case 1:
189
194
  _a.sent();
190
195
  return [2 /*return*/];
@@ -196,12 +201,15 @@ var FormoAnalytics = /** @class */ (function () {
196
201
  * Emits a chain network change event.
197
202
  * @param {ChainID} params.chainId
198
203
  * @param {Address} params.address
204
+ * @param {IFormoEventProperties} properties
205
+ * @param {IFormoEventContext} context
206
+ * @param {(...args: unknown[]) => void} callback
199
207
  * @throws {Error} If chainId is empty, zero, or not a valid number
200
208
  * @throws {Error} If no address is provided and no previous address is recorded
201
209
  * @returns {Promise<void>}
202
210
  */
203
- FormoAnalytics.prototype.chain = function (_a) {
204
- return __awaiter(this, arguments, void 0, function (_b) {
211
+ FormoAnalytics.prototype.chain = function (_a, properties_1, context_1, callback_1) {
212
+ return __awaiter(this, arguments, void 0, function (_b, properties, context, callback) {
205
213
  var chainId = _b.chainId, address = _b.address;
206
214
  return __generator(this, function (_c) {
207
215
  switch (_c.label) {
@@ -212,14 +220,14 @@ var FormoAnalytics = /** @class */ (function () {
212
220
  if (isNaN(Number(chainId))) {
213
221
  throw new Error("FormoAnalytics::chain: chainId must be a valid decimal number");
214
222
  }
215
- if (!address && !this.currentConnectedAddress) {
223
+ if (!address && !this.currentAddress) {
216
224
  throw new Error("FormoAnalytics::chain: address was empty and no previous address has been recorded");
217
225
  }
218
226
  this.currentChainId = chainId;
219
- return [4 /*yield*/, this.trackEvent(constants_1.Event.CHAIN_CHANGED, {
227
+ return [4 /*yield*/, this.trackEvent(constants_1.EventType.CHAIN, {
220
228
  chainId: chainId,
221
- address: address || this.currentConnectedAddress,
222
- })];
229
+ address: address || this.currentAddress,
230
+ }, properties, context, callback)];
223
231
  case 1:
224
232
  _c.sent();
225
233
  return [2 /*return*/];
@@ -234,14 +242,17 @@ var FormoAnalytics = /** @class */ (function () {
234
242
  * @param {Address} params.address
235
243
  * @param {string} params.message
236
244
  * @param {string} params.signatureHash - only provided if status is confirmed
245
+ * @param {IFormoEventProperties} properties
246
+ * @param {IFormoEventContext} context
247
+ * @param {(...args: unknown[]) => void} callback
237
248
  * @returns {Promise<void>}
238
249
  */
239
- FormoAnalytics.prototype.signature = function (_a) {
240
- return __awaiter(this, arguments, void 0, function (_b) {
250
+ FormoAnalytics.prototype.signature = function (_a, properties_1, context_1, callback_1) {
251
+ return __awaiter(this, arguments, void 0, function (_b, properties, context, callback) {
241
252
  var status = _b.status, chainId = _b.chainId, address = _b.address, message = _b.message, signatureHash = _b.signatureHash;
242
253
  return __generator(this, function (_c) {
243
254
  switch (_c.label) {
244
- case 0: return [4 /*yield*/, this.trackEvent(constants_1.Event.SIGNATURE, __assign({ status: status, chainId: chainId, address: address, message: message }, (signatureHash && { signatureHash: signatureHash })))];
255
+ case 0: return [4 /*yield*/, this.trackEvent(constants_1.EventType.SIGNATURE, __assign({ status: status, chainId: chainId, address: address, message: message }, (signatureHash && { signatureHash: signatureHash })), properties, context, callback)];
245
256
  case 1:
246
257
  _c.sent();
247
258
  return [2 /*return*/];
@@ -258,14 +269,17 @@ var FormoAnalytics = /** @class */ (function () {
258
269
  * @param {string} params.to
259
270
  * @param {string} params.value
260
271
  * @param {string} params.transactionHash - only provided if status is broadcasted
272
+ * @param {IFormoEventProperties} properties
273
+ * @param {IFormoEventContext} context
274
+ * @param {(...args: unknown[]) => void} callback
261
275
  * @returns {Promise<void>}
262
276
  */
263
- FormoAnalytics.prototype.transaction = function (_a) {
264
- return __awaiter(this, arguments, void 0, function (_b) {
277
+ FormoAnalytics.prototype.transaction = function (_a, properties_1, context_1, callback_1) {
278
+ return __awaiter(this, arguments, void 0, function (_b, properties, context, callback) {
265
279
  var status = _b.status, chainId = _b.chainId, address = _b.address, data = _b.data, to = _b.to, value = _b.value, transactionHash = _b.transactionHash;
266
280
  return __generator(this, function (_c) {
267
281
  switch (_c.label) {
268
- case 0: return [4 /*yield*/, this.trackEvent(constants_1.Event.TRANSACTION, __assign({ status: status, chainId: chainId, address: address, data: data, to: to, value: value }, (transactionHash && { transactionHash: transactionHash })))];
282
+ case 0: return [4 /*yield*/, this.trackEvent(constants_1.EventType.TRANSACTION, __assign({ status: status, chainId: chainId, address: address, data: data, to: to, value: value }, (transactionHash && { transactionHash: transactionHash })), properties, context, callback)];
269
283
  case 1:
270
284
  _c.sent();
271
285
  return [2 /*return*/];
@@ -274,116 +288,63 @@ var FormoAnalytics = /** @class */ (function () {
274
288
  });
275
289
  };
276
290
  /**
277
- * Emits an detect event with current wallet provider info.
291
+ * Emits an identify event with current wallet address and provider info.
278
292
  * @param {string} params.providerName
279
293
  * @param {string} params.rdns
280
294
  * @param {string} params.userId
281
295
  * @param {string} params.address
282
- *
296
+ * @param {IFormoEventProperties} properties
297
+ * @param {IFormoEventContext} context
298
+ * @param {(...args: unknown[]) => void} callback
283
299
  * @returns {Promise<void>}
284
300
  */
285
- FormoAnalytics.prototype.identify = function (params) {
301
+ FormoAnalytics.prototype.identify = function (params, properties, context, callback) {
286
302
  return __awaiter(this, void 0, void 0, function () {
287
- var providers, _a, _i, providers_1, eip6963ProviderDetail, accounts, _b, accounts_1, address, err_1, _c, userId, address, providerName, rdns;
288
- return __generator(this, function (_d) {
289
- switch (_d.label) {
303
+ var userId, address, providerName, rdns;
304
+ return __generator(this, function (_a) {
305
+ switch (_a.label) {
290
306
  case 0:
291
- if (!((0, validators_1.isArray)(params) || !params)) return [3 /*break*/, 17];
292
- if (!(0, validators_1.isArray)(params)) return [3 /*break*/, 1];
293
- _a = params;
294
- return [3 /*break*/, 3];
295
- case 1: return [4 /*yield*/, this.getProviders()];
296
- case 2:
297
- _a = _d.sent();
298
- _d.label = 3;
299
- case 3:
300
- providers = _a;
301
- _d.label = 4;
302
- case 4:
303
- _d.trys.push([4, 15, , 16]);
304
- _i = 0, providers_1 = providers;
305
- _d.label = 5;
306
- case 5:
307
- if (!(_i < providers_1.length)) return [3 /*break*/, 14];
308
- eip6963ProviderDetail = providers_1[_i];
309
- if (!eip6963ProviderDetail)
310
- return [3 /*break*/, 13];
311
- return [4 /*yield*/, this.getAccounts(eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.provider)];
312
- case 6:
313
- accounts = _d.sent();
314
- if (!(accounts && accounts.length > 0)) return [3 /*break*/, 11];
315
- _b = 0, accounts_1 = accounts;
316
- _d.label = 7;
317
- case 7:
318
- if (!(_b < accounts_1.length)) return [3 /*break*/, 10];
319
- address = accounts_1[_b];
320
- return [4 /*yield*/, this.identify({
321
- address: address,
322
- providerName: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.name,
323
- rdns: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.rdns,
324
- })];
325
- case 8:
326
- _d.sent();
327
- _d.label = 9;
328
- case 9:
329
- _b++;
330
- return [3 /*break*/, 7];
331
- case 10: return [3 /*break*/, 13];
332
- case 11:
333
- // Identify without accounts
334
- return [4 /*yield*/, this.identify({
335
- address: null,
336
- providerName: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.name,
337
- rdns: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.rdns,
338
- })];
339
- case 12:
340
- // Identify without accounts
341
- _d.sent();
342
- _d.label = 13;
343
- case 13:
344
- _i++;
345
- return [3 /*break*/, 5];
346
- case 14: return [3 /*break*/, 16];
347
- case 15:
348
- err_1 = _d.sent();
349
- lib_1.logger.error("Error identifying all:", err_1);
350
- return [3 /*break*/, 16];
351
- case 16: return [3 /*break*/, 19];
352
- case 17:
353
- _c = params, userId = _c.userId, address = _c.address, providerName = _c.providerName, rdns = _c.rdns;
354
- if (userId)
355
- this.userId = userId || null;
356
- return [4 /*yield*/, this.trackEvent(constants_1.Event.IDENTIFY, {
307
+ userId = params.userId, address = params.address, providerName = params.providerName, rdns = params.rdns;
308
+ this.currentAddress = address;
309
+ if (userId) {
310
+ this.currentUserId = userId;
311
+ lib_1.session.set(constants_1.SESSION_USER_ID_KEY, userId);
312
+ }
313
+ return [4 /*yield*/, this.trackEvent(constants_1.EventType.IDENTIFY, {
357
314
  address: address,
358
315
  providerName: providerName,
316
+ userId: userId,
359
317
  rdns: rdns,
360
- })];
361
- case 18:
362
- _d.sent();
363
- _d.label = 19;
364
- case 19: return [2 /*return*/];
318
+ }, properties, context, callback)];
319
+ case 1:
320
+ _a.sent();
321
+ return [2 /*return*/];
365
322
  }
366
323
  });
367
324
  });
368
325
  };
369
326
  /**
370
- * Emits an identify event with current wallet address.
371
- * @param {Address} params.address
327
+ * Emits a detect wallet event with current wallet provider info.
328
+ * @param {string} params.providerName
329
+ * @param {string} params.rdns
330
+ * @param {IFormoEventProperties} properties
331
+ * @param {IFormoEventContext} context
332
+ * @param {(...args: unknown[]) => void} callback
372
333
  * @returns {Promise<void>}
373
334
  */
374
- FormoAnalytics.prototype.detect = function (_a) {
375
- return __awaiter(this, arguments, void 0, function (_b) {
335
+ FormoAnalytics.prototype.detect = function (_a, properties_1, context_1, callback_1) {
336
+ return __awaiter(this, arguments, void 0, function (_b, properties, context, callback) {
376
337
  var providerName = _b.providerName, rdns = _b.rdns;
377
338
  return __generator(this, function (_c) {
378
339
  switch (_c.label) {
379
340
  case 0:
380
341
  if (this.session.isWalletDetected(rdns))
381
- return [2 /*return*/, lib_1.logger.warn("detect: Wallet ".concat(providerName, " already detected in this session"))];
382
- this.session.markWalletdetected(rdns);
383
- return [4 /*yield*/, this.trackEvent(constants_1.Event.DETECT_WALLET, {
342
+ return [2 /*return*/, lib_1.logger.warn("Detect: Wallet ".concat(providerName, " already detected in this session"))];
343
+ this.session.markWalletDetected(rdns);
344
+ return [4 /*yield*/, this.trackEvent(constants_1.EventType.DETECT, {
384
345
  providerName: providerName,
385
346
  rdns: rdns,
386
- })];
347
+ }, properties, context, callback)];
387
348
  case 1:
388
349
  _c.sent();
389
350
  return [2 /*return*/];
@@ -392,16 +353,18 @@ var FormoAnalytics = /** @class */ (function () {
392
353
  });
393
354
  };
394
355
  /**
395
- * Emits a custom event with custom data.
396
- * @param {string} action
397
- * @param {Record<string, any>} payload
356
+ * Emits a custom user event with custom properties.
357
+ * @param {string} event The name of the tracked event
358
+ * @param {IFormoEventProperties} properties
359
+ * @param {IFormoEventContext} context
360
+ * @param {(...args: unknown[]) => void} callback
398
361
  * @returns {Promise<void>}
399
362
  */
400
- FormoAnalytics.prototype.track = function (action, payload) {
363
+ FormoAnalytics.prototype.track = function (event, properties, context, callback) {
401
364
  return __awaiter(this, void 0, void 0, function () {
402
365
  return __generator(this, function (_a) {
403
366
  switch (_a.label) {
404
- case 0: return [4 /*yield*/, this.trackEvent(action, payload)];
367
+ case 0: return [4 /*yield*/, this.trackEvent(constants_1.EventType.TRACK, { event: event }, properties, context, callback)];
405
368
  case 1:
406
369
  _a.sent();
407
370
  return [2 /*return*/];
@@ -419,7 +382,7 @@ var FormoAnalytics = /** @class */ (function () {
419
382
  return;
420
383
  }
421
384
  this.currentChainId = undefined;
422
- this.currentConnectedAddress = undefined;
385
+ this.currentAddress = undefined;
423
386
  if (this._provider) {
424
387
  var actions = Object.keys(this._providerListeners);
425
388
  for (var _i = 0, actions_1 = actions; _i < actions_1.length; _i++) {
@@ -585,10 +548,10 @@ var FormoAnalytics = /** @class */ (function () {
585
548
  return __generator(this, function (_b) {
586
549
  switch (_b.label) {
587
550
  case 0:
588
- if (address === this.currentConnectedAddress)
551
+ if (address === this.currentAddress)
589
552
  // We have already reported this address
590
553
  return [2 /*return*/];
591
- this.currentConnectedAddress = address;
554
+ this.currentAddress = address;
592
555
  _a = this;
593
556
  return [4 /*yield*/, this.getCurrentChainId()];
594
557
  case 1:
@@ -599,20 +562,20 @@ var FormoAnalytics = /** @class */ (function () {
599
562
  });
600
563
  });
601
564
  };
602
- FormoAnalytics.prototype.handleDisconnect = function (chainId, address) {
565
+ FormoAnalytics.prototype.handleDisconnect = function (chainId, address, properties, context, callback) {
603
566
  return __awaiter(this, void 0, void 0, function () {
604
567
  var payload;
605
568
  return __generator(this, function (_a) {
606
569
  switch (_a.label) {
607
570
  case 0:
608
571
  payload = {
609
- chain_id: chainId || this.currentChainId,
610
- address: address || this.currentConnectedAddress,
572
+ chainId: chainId || this.currentChainId,
573
+ address: address || this.currentAddress,
611
574
  };
612
575
  this.currentChainId = undefined;
613
- this.currentConnectedAddress = undefined;
576
+ this.currentAddress = undefined;
614
577
  lib_1.session.remove(constants_1.SESSION_USER_ID_KEY);
615
- return [4 /*yield*/, this.trackEvent(constants_1.Event.DISCONNECT, payload)];
578
+ return [4 /*yield*/, this.trackEvent(constants_1.EventType.DISCONNECT, payload, properties, context, callback)];
616
579
  case 1:
617
580
  _a.sent();
618
581
  return [2 /*return*/];
@@ -624,7 +587,7 @@ var FormoAnalytics = /** @class */ (function () {
624
587
  return __awaiter(this, void 0, void 0, function () {
625
588
  return __generator(this, function (_a) {
626
589
  switch (_a.label) {
627
- case 0: return [4 /*yield*/, this.handleDisconnect(this.currentChainId, this.currentConnectedAddress)];
590
+ case 0: return [4 /*yield*/, this.handleDisconnect(this.currentChainId, this.currentAddress)];
628
591
  case 1:
629
592
  _a.sent();
630
593
  return [2 /*return*/];
@@ -639,7 +602,7 @@ var FormoAnalytics = /** @class */ (function () {
639
602
  switch (_a.label) {
640
603
  case 0:
641
604
  this.currentChainId = parseInt(chainIdHex);
642
- if (!!this.currentConnectedAddress) return [3 /*break*/, 2];
605
+ if (!!this.currentAddress) return [3 /*break*/, 2];
643
606
  if (!this.provider) {
644
607
  lib_1.logger.info("OnChainChanged: Provider not found. CHAIN_CHANGED not reported");
645
608
  return [2 /*return*/, Promise.resolve()];
@@ -651,14 +614,14 @@ var FormoAnalytics = /** @class */ (function () {
651
614
  lib_1.logger.info("OnChainChanged: Unable to fetch or store connected address");
652
615
  return [2 /*return*/, Promise.resolve()];
653
616
  }
654
- this.currentConnectedAddress = address;
617
+ this.currentAddress = address;
655
618
  _a.label = 2;
656
619
  case 2:
657
620
  // Proceed only if the address exists
658
- if (this.currentConnectedAddress) {
621
+ if (this.currentAddress) {
659
622
  return [2 /*return*/, this.chain({
660
623
  chainId: this.currentChainId,
661
- address: this.currentConnectedAddress,
624
+ address: this.currentAddress,
662
625
  })];
663
626
  }
664
627
  else {
@@ -723,46 +686,36 @@ var FormoAnalytics = /** @class */ (function () {
723
686
  });
724
687
  });
725
688
  };
726
- FormoAnalytics.prototype.trackPageHit = function () {
727
- var _this = this;
728
- if (!this.config.trackLocalhost && (0, validators_1.isLocalhost)()) {
729
- return lib_1.logger.warn("Track page hit: Ignoring event because website is running locally");
730
- }
731
- setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {
689
+ FormoAnalytics.prototype.trackPageHit = function (category, name, properties, context, callback) {
690
+ return __awaiter(this, void 0, void 0, function () {
691
+ var _this = this;
732
692
  return __generator(this, function (_a) {
733
- this.trackEvent(constants_1.Event.PAGE);
693
+ if (!this.config.trackLocalhost && (0, validators_1.isLocalhost)()) {
694
+ return [2 /*return*/, lib_1.logger.warn("Track page hit: Ignoring event because website is running locally")];
695
+ }
696
+ setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {
697
+ return __generator(this, function (_a) {
698
+ this.trackEvent(constants_1.EventType.PAGE, {
699
+ category: category,
700
+ name: name,
701
+ }, properties, context, callback);
702
+ return [2 /*return*/];
703
+ });
704
+ }); }, 300);
734
705
  return [2 /*return*/];
735
706
  });
736
- }); }, 300);
707
+ });
737
708
  };
738
- FormoAnalytics.prototype.trackEvent = function (action, payload) {
709
+ FormoAnalytics.prototype.trackEvent = function (type, payload, properties, context, callback) {
739
710
  return __awaiter(this, void 0, void 0, function () {
740
- var address, user_id, requestData, error_3;
741
711
  return __generator(this, function (_a) {
742
- switch (_a.label) {
743
- case 0:
744
- _a.trys.push([0, 3, , 4]);
745
- return [4 /*yield*/, this.getAddress()];
746
- case 1:
747
- address = _a.sent();
748
- user_id = this.userId;
749
- requestData = this.eventFactory.create(this.anonymousId, user_id, address, __assign({ action: action }, payload));
750
- return [4 /*yield*/, this.eventQueue.enqueue(requestData, function (err, _, data) {
751
- if (err) {
752
- lib_1.logger.error("Error sending events:", err);
753
- }
754
- else
755
- lib_1.logger.info("Events sent successfully: ".concat(data.length, " events"));
756
- })];
757
- case 2:
758
- _a.sent();
759
- return [3 /*break*/, 4];
760
- case 3:
761
- error_3 = _a.sent();
762
- lib_1.logger.error("Error tracking event:", error_3);
763
- return [3 /*break*/, 4];
764
- case 4: return [2 /*return*/];
712
+ try {
713
+ this.eventManager.addEvent(__assign(__assign({ type: type }, payload), { properties: properties, context: context, callback: callback }), this.currentAddress, this.currentUserId);
765
714
  }
715
+ catch (error) {
716
+ lib_1.logger.error("Error tracking event:", error);
717
+ }
718
+ return [2 /*return*/];
766
719
  });
767
720
  });
768
721
  };
@@ -785,18 +738,18 @@ var FormoAnalytics = /** @class */ (function () {
785
738
  });
786
739
  });
787
740
  };
788
- FormoAnalytics.prototype.detects = function (providers) {
741
+ FormoAnalytics.prototype.detectWallets = function (providers) {
789
742
  return __awaiter(this, void 0, void 0, function () {
790
- var _i, providers_2, eip6963ProviderDetail, err_2;
743
+ var _i, providers_1, eip6963ProviderDetail, err_1;
791
744
  return __generator(this, function (_a) {
792
745
  switch (_a.label) {
793
746
  case 0:
794
747
  _a.trys.push([0, 5, , 6]);
795
- _i = 0, providers_2 = providers;
748
+ _i = 0, providers_1 = providers;
796
749
  _a.label = 1;
797
750
  case 1:
798
- if (!(_i < providers_2.length)) return [3 /*break*/, 4];
799
- eip6963ProviderDetail = providers_2[_i];
751
+ if (!(_i < providers_1.length)) return [3 /*break*/, 4];
752
+ eip6963ProviderDetail = providers_1[_i];
800
753
  return [4 /*yield*/, this.detect({
801
754
  providerName: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.name,
802
755
  rdns: eip6963ProviderDetail === null || eip6963ProviderDetail === void 0 ? void 0 : eip6963ProviderDetail.info.rdns,
@@ -809,8 +762,8 @@ var FormoAnalytics = /** @class */ (function () {
809
762
  return [3 /*break*/, 1];
810
763
  case 4: return [3 /*break*/, 6];
811
764
  case 5:
812
- err_2 = _a.sent();
813
- lib_1.logger.error("Error detect all wallets:", err_2);
765
+ err_1 = _a.sent();
766
+ lib_1.logger.error("Error detect all wallets:", err_1);
814
767
  return [3 /*break*/, 6];
815
768
  case 6: return [2 /*return*/];
816
769
  }
@@ -824,22 +777,14 @@ var FormoAnalytics = /** @class */ (function () {
824
777
  enumerable: false,
825
778
  configurable: true
826
779
  });
827
- FormoAnalytics.prototype.getAnonymousId = function () {
828
- var storedAnonymousId = lib_1.local.get(constants_1.LOCAL_ANONYMOUS_ID_KEY);
829
- if (storedAnonymousId && typeof storedAnonymousId === "string")
830
- return storedAnonymousId;
831
- var newAnonymousId = (0, utils_1.generateNativeUUID)();
832
- lib_1.local.set(constants_1.LOCAL_ANONYMOUS_ID_KEY, newAnonymousId);
833
- return newAnonymousId;
834
- };
835
780
  FormoAnalytics.prototype.getAddress = function () {
836
781
  return __awaiter(this, void 0, void 0, function () {
837
- var accounts, err_3;
782
+ var accounts, err_2;
838
783
  return __generator(this, function (_a) {
839
784
  switch (_a.label) {
840
785
  case 0:
841
- if (this.currentConnectedAddress)
842
- return [2 /*return*/, this.currentConnectedAddress];
786
+ if (this.currentAddress)
787
+ return [2 /*return*/, this.currentAddress];
843
788
  if (!(this === null || this === void 0 ? void 0 : this.provider)) {
844
789
  lib_1.logger.info("The provider is not set");
845
790
  return [2 /*return*/, null];
@@ -857,8 +802,8 @@ var FormoAnalytics = /** @class */ (function () {
857
802
  }
858
803
  return [3 /*break*/, 4];
859
804
  case 3:
860
- err_3 = _a.sent();
861
- lib_1.logger.error("Failed to fetch accounts from provider:", err_3);
805
+ err_2 = _a.sent();
806
+ lib_1.logger.error("Failed to fetch accounts from provider:", err_2);
862
807
  return [2 /*return*/, null];
863
808
  case 4: return [2 /*return*/, null];
864
809
  }
@@ -867,7 +812,7 @@ var FormoAnalytics = /** @class */ (function () {
867
812
  };
868
813
  FormoAnalytics.prototype.getAccounts = function (provider) {
869
814
  return __awaiter(this, void 0, void 0, function () {
870
- var p, res, err_4;
815
+ var p, res, err_3;
871
816
  return __generator(this, function (_a) {
872
817
  switch (_a.label) {
873
818
  case 0:
@@ -884,9 +829,9 @@ var FormoAnalytics = /** @class */ (function () {
884
829
  return [2 /*return*/, null];
885
830
  return [2 /*return*/, res.filter(function (e) { return (0, validators_1.isAddress)(e); })];
886
831
  case 3:
887
- err_4 = _a.sent();
888
- if (err_4.code !== 4001) {
889
- lib_1.logger.error("FormoAnalytics::getAccounts: eth_accounts threw an error", err_4);
832
+ err_3 = _a.sent();
833
+ if (err_3.code !== 4001) {
834
+ lib_1.logger.error("FormoAnalytics::getAccounts: eth_accounts threw an error", err_3);
890
835
  }
891
836
  return [2 /*return*/, null];
892
837
  case 4: return [2 /*return*/];
@@ -896,7 +841,7 @@ var FormoAnalytics = /** @class */ (function () {
896
841
  };
897
842
  FormoAnalytics.prototype.getCurrentChainId = function () {
898
843
  return __awaiter(this, void 0, void 0, function () {
899
- var chainIdHex, err_5;
844
+ var chainIdHex, err_4;
900
845
  var _a;
901
846
  return __generator(this, function (_b) {
902
847
  switch (_b.label) {
@@ -918,8 +863,8 @@ var FormoAnalytics = /** @class */ (function () {
918
863
  }
919
864
  return [2 /*return*/, parseInt(chainIdHex, 16)];
920
865
  case 3:
921
- err_5 = _b.sent();
922
- lib_1.logger.error("eth_chainId threw an error:", err_5);
866
+ err_4 = _b.sent();
867
+ lib_1.logger.error("eth_chainId threw an error:", err_4);
923
868
  return [2 /*return*/, 0];
924
869
  case 4: return [2 /*return*/];
925
870
  }
@@ -974,7 +919,7 @@ var FormoAnalyticsSession = /** @class */ (function () {
974
919
  var rdnses = lib_1.session.get(constants_1.SESSION_WALLET_DETECTED_KEY) || [];
975
920
  return rdnses.includes(rdns);
976
921
  };
977
- FormoAnalyticsSession.prototype.markWalletdetected = function (rdns) {
922
+ FormoAnalyticsSession.prototype.markWalletDetected = function (rdns) {
978
923
  var rdnses = lib_1.session.get(constants_1.SESSION_WALLET_DETECTED_KEY) || [];
979
924
  rdnses.push(rdns);
980
925
  lib_1.session.set(constants_1.SESSION_WALLET_DETECTED_KEY, rdnses);