@formo/analytics 1.11.13 → 1.11.14-alpha.2

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 (37) hide show
  1. package/CONTRIBUTING.md +43 -0
  2. package/README.md +4 -251
  3. package/dist/cjs/src/FormoAnalytics.d.ts +10 -9
  4. package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
  5. package/dist/cjs/src/FormoAnalytics.js +215 -132
  6. package/dist/cjs/src/FormoAnalytics.js.map +1 -1
  7. package/dist/cjs/src/FormoAnalyticsProvider.d.ts.map +1 -1
  8. package/dist/cjs/src/FormoAnalyticsProvider.js +53 -37
  9. package/dist/cjs/src/FormoAnalyticsProvider.js.map +1 -1
  10. package/dist/cjs/src/constants/config.d.ts +0 -1
  11. package/dist/cjs/src/constants/config.d.ts.map +1 -1
  12. package/dist/cjs/src/constants/config.js +1 -2
  13. package/dist/cjs/src/constants/config.js.map +1 -1
  14. package/dist/cjs/src/types/base.d.ts +1 -1
  15. package/dist/cjs/src/types/base.d.ts.map +1 -1
  16. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  17. package/dist/esm/src/FormoAnalytics.d.ts +10 -9
  18. package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
  19. package/dist/esm/src/FormoAnalytics.js +216 -133
  20. package/dist/esm/src/FormoAnalytics.js.map +1 -1
  21. package/dist/esm/src/FormoAnalyticsProvider.d.ts.map +1 -1
  22. package/dist/esm/src/FormoAnalyticsProvider.js +53 -37
  23. package/dist/esm/src/FormoAnalyticsProvider.js.map +1 -1
  24. package/dist/esm/src/constants/config.d.ts +0 -1
  25. package/dist/esm/src/constants/config.d.ts.map +1 -1
  26. package/dist/esm/src/constants/config.js +0 -1
  27. package/dist/esm/src/constants/config.js.map +1 -1
  28. package/dist/esm/src/types/base.d.ts +1 -1
  29. package/dist/esm/src/types/base.d.ts.map +1 -1
  30. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  31. package/dist/index.umd.min.js +1 -1
  32. package/dist/index.umd.min.js.map +1 -1
  33. package/package.json +2 -2
  34. package/src/FormoAnalytics.ts +169 -123
  35. package/src/FormoAnalyticsProvider.tsx +36 -30
  36. package/src/constants/config.ts +0 -1
  37. package/src/types/base.ts +1 -1
@@ -62,7 +62,6 @@ var FormoAnalytics = /** @class */ (function () {
62
62
  this.options = options;
63
63
  this._registeredProviderListeners = {};
64
64
  this.walletAddressSessionKey = "walletAddress";
65
- this.sessionIdKey = constants_1.SESSION_STORAGE_ID_KEY;
66
65
  this.timezoneToCountry = constants_1.COUNTRY_LIST;
67
66
  this.config = {
68
67
  token: this.apiKey,
@@ -92,58 +91,30 @@ var FormoAnalytics = /** @class */ (function () {
92
91
  enumerable: false,
93
92
  configurable: true
94
93
  });
95
- FormoAnalytics.prototype.getSessionId = function () {
96
- var existingSessionId = this.getCookieValue(this.sessionIdKey);
97
- if (existingSessionId) {
98
- return existingSessionId;
99
- }
100
- var newSessionId = this.generateSessionId();
101
- return newSessionId;
102
- };
103
- FormoAnalytics.prototype.getOrigin = function () {
104
- return window.location.origin || "ORIGIN_NOT_FOUND";
105
- };
106
- // Function to set the session cookie
107
- FormoAnalytics.prototype.setSessionCookie = function () {
108
- var sessionId = this.getSessionId();
109
- var cookieValue = "".concat(this.sessionIdKey, "=").concat(sessionId, "; Max-Age=1800; path=/; secure; domain=").concat(this.getOrigin());
110
- document.cookie = cookieValue;
111
- };
112
- // Function to generate a new session ID
113
- FormoAnalytics.prototype.generateSessionId = function () {
114
- return crypto.randomUUID();
115
- };
116
- // Function to get a cookie value by name
117
- FormoAnalytics.prototype.getCookieValue = function (name) {
118
- var cookies = document.cookie.split(";").reduce(function (acc, cookie) {
119
- var _a = cookie.split("="), key = _a[0], value = _a[1];
120
- acc[key.trim()] = value;
121
- return acc;
122
- }, {});
123
- return cookies[name];
124
- };
125
94
  // Function to send tracking data
126
95
  FormoAnalytics.prototype.trackEvent = function (action, payload) {
127
96
  return __awaiter(this, void 0, void 0, function () {
128
97
  var maxRetries, attempt, address, requestData, sendRequest;
98
+ var _a;
129
99
  var _this = this;
130
- return __generator(this, function (_a) {
131
- switch (_a.label) {
100
+ return __generator(this, function (_b) {
101
+ switch (_b.label) {
132
102
  case 0:
133
103
  maxRetries = 3;
134
104
  attempt = 0;
135
- this.setSessionCookie();
136
105
  return [4 /*yield*/, this.getCurrentWallet()];
137
106
  case 1:
138
- address = _a.sent();
139
- requestData = {
107
+ address = _b.sent();
108
+ _a = {
140
109
  address: address,
141
- session_id: this.getSessionId(),
142
110
  timestamp: new Date().toISOString(),
143
111
  action: action,
144
- version: "1",
145
- payload: __assign(__assign({}, this.getCommonTrackingFields()), payload),
112
+ version: "1"
146
113
  };
114
+ return [4 /*yield*/, this.buildEventPayload(payload)];
115
+ case 2:
116
+ requestData = (_a.payload = _b.sent(),
117
+ _a);
147
118
  sendRequest = function () { return __awaiter(_this, void 0, void 0, function () {
148
119
  var response, error_1, retryDelay;
149
120
  return __generator(this, function (_a) {
@@ -183,54 +154,83 @@ var FormoAnalytics = /** @class */ (function () {
183
154
  });
184
155
  }); };
185
156
  return [4 /*yield*/, sendRequest()];
186
- case 2:
187
- _a.sent();
157
+ case 3:
158
+ _b.sent();
188
159
  return [2 /*return*/];
189
160
  }
190
161
  });
191
162
  });
192
163
  };
193
- FormoAnalytics.prototype.getCommonTrackingFields = function () {
194
- var location;
195
- var language = "en";
164
+ // Function to track page hits
165
+ FormoAnalytics.prototype.trackPageHit = function () {
166
+ var _this = this;
167
+ if (this.isAutomationEnvironment())
168
+ return;
169
+ var pathname = window.location.pathname;
170
+ var href = window.location.href;
171
+ setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {
172
+ return __generator(this, function (_a) {
173
+ this.trackEvent(constants_1.Event.PAGE, {
174
+ pathname: pathname,
175
+ href: href,
176
+ });
177
+ return [2 /*return*/];
178
+ });
179
+ }); }, 300);
180
+ };
181
+ FormoAnalytics.prototype.isAutomationEnvironment = function () {
182
+ return (window.__nightmare ||
183
+ window.navigator.webdriver ||
184
+ window.Cypress ||
185
+ false);
186
+ };
187
+ FormoAnalytics.prototype.getUserLocation = function () {
196
188
  try {
197
189
  var timezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
198
- location = this.timezoneToCountry[timezone];
199
- language =
200
- navigator.languages && navigator.languages.length
201
- ? navigator.languages[0]
202
- : navigator.language || "en";
190
+ return this.timezoneToCountry[timezone];
203
191
  }
204
192
  catch (error) {
205
- console.error("Error resolving timezone or language:", error);
193
+ console.error("Error resolving timezone:", error);
194
+ return undefined;
206
195
  }
207
- var url = new URL(window.location.href);
208
- var params = new URLSearchParams(url.search);
209
- return {
210
- "user-agent": window.navigator.userAgent,
211
- locale: language,
212
- location: location,
213
- referrer: document.referrer,
214
- utm_source: params.get("utm_source"),
215
- utm_medium: params.get("utm_medium"),
216
- utm_campaign: params.get("utm_campaign"),
217
- ref: params.get("ref"),
218
- };
219
196
  };
220
- // Function to track page hits
221
- FormoAnalytics.prototype.trackPageHit = function () {
222
- var _this = this;
223
- if (window.__nightmare || window.navigator.webdriver || window.Cypress)
224
- return;
225
- setTimeout(function () {
226
- _this.trackEvent(constants_1.Event.PAGE, {
227
- pathname: window.location.pathname,
228
- href: window.location.href,
197
+ FormoAnalytics.prototype.getUserLanguage = function () {
198
+ try {
199
+ return ((navigator.languages && navigator.languages.length
200
+ ? navigator.languages[0]
201
+ : navigator.language) || "en");
202
+ }
203
+ catch (error) {
204
+ console.error("Error resolving language:", error);
205
+ return "en";
206
+ }
207
+ };
208
+ FormoAnalytics.prototype.buildEventPayload = function () {
209
+ return __awaiter(this, arguments, void 0, function (eventSpecificPayload) {
210
+ var url, params, location, language, address;
211
+ if (eventSpecificPayload === void 0) { eventSpecificPayload = {}; }
212
+ return __generator(this, function (_a) {
213
+ switch (_a.label) {
214
+ case 0:
215
+ url = new URL(window.location.href);
216
+ params = new URLSearchParams(url.search);
217
+ location = this.getUserLocation();
218
+ language = this.getUserLanguage();
219
+ return [4 /*yield*/, this.getAndStoreConnectedAddress()];
220
+ case 1:
221
+ address = _a.sent();
222
+ if (address === null) {
223
+ console.warn("Wallet address could not be retrieved.");
224
+ }
225
+ // common fields
226
+ return [2 /*return*/, __assign({ "user-agent": window.navigator.userAgent, address: address, locale: language, location: location, referrer: document.referrer, utm_source: params.get("utm_source"), utm_medium: params.get("utm_medium"), utm_campaign: params.get("utm_campaign"), ref: params.get("ref") }, eventSpecificPayload)];
227
+ }
229
228
  });
230
- }, 300);
229
+ });
231
230
  };
232
231
  FormoAnalytics.prototype.trackProvider = function (provider) {
233
232
  if (provider === this._provider) {
233
+ console.log("Provider already tracked.");
234
234
  return;
235
235
  }
236
236
  this.currentChainId = undefined;
@@ -243,54 +243,142 @@ var FormoAnalytics = /** @class */ (function () {
243
243
  delete this._registeredProviderListeners[eventName];
244
244
  }
245
245
  }
246
+ console.log("Tracking new provider:", provider);
246
247
  this._provider = provider;
247
248
  this.getCurrentWallet();
248
249
  this.registerAddressChangedListener();
249
250
  this.registerChainChangedListener();
250
251
  };
252
+ FormoAnalytics.prototype.getAndStoreConnectedAddress = function () {
253
+ return __awaiter(this, void 0, void 0, function () {
254
+ var accounts, address, err_1;
255
+ return __generator(this, function (_a) {
256
+ switch (_a.label) {
257
+ case 0:
258
+ console.log("Session data missing. Attempting to fetch address from provider.");
259
+ _a.label = 1;
260
+ case 1:
261
+ _a.trys.push([1, 3, , 4]);
262
+ return [4 /*yield*/, this.fetchAccounts()];
263
+ case 2:
264
+ accounts = _a.sent();
265
+ if (accounts && accounts.length > 0) {
266
+ address = accounts[0];
267
+ this.storeWalletAddress(address);
268
+ return [2 /*return*/, address];
269
+ }
270
+ return [3 /*break*/, 4];
271
+ case 3:
272
+ err_1 = _a.sent();
273
+ console.log("Failed to fetch accounts from provider:", err_1);
274
+ return [3 /*break*/, 4];
275
+ case 4: return [2 /*return*/, null];
276
+ }
277
+ });
278
+ });
279
+ };
251
280
  FormoAnalytics.prototype.getCurrentWallet = function () {
252
281
  return __awaiter(this, void 0, void 0, function () {
253
282
  var sessionData, parsedData, sessionExpiry, currentTime;
254
283
  return __generator(this, function (_a) {
255
- if (!this.provider) {
256
- console.warn("FormoAnalytics::getCurrentWallet: the provider is not set");
257
- return [2 /*return*/];
258
- }
259
- sessionData = sessionStorage.getItem(this.walletAddressSessionKey);
260
- if (!sessionData) {
261
- return [2 /*return*/, null];
262
- }
263
- parsedData = JSON.parse(sessionData);
264
- sessionExpiry = 30 * 60 * 1000;
265
- currentTime = Date.now();
266
- if (currentTime - parsedData.timestamp > sessionExpiry) {
267
- console.warn("Session expired. Ignoring wallet address.");
268
- sessionStorage.removeItem(this.walletAddressSessionKey); // Clear expired session data
269
- return [2 /*return*/, ""];
284
+ switch (_a.label) {
285
+ case 0:
286
+ if (!this.provider) {
287
+ console.warn("FormoAnalytics::getCurrentWallet: the provider is not set");
288
+ return [2 /*return*/];
289
+ }
290
+ sessionData = sessionStorage.getItem(this.walletAddressSessionKey);
291
+ if (!!sessionData) return [3 /*break*/, 2];
292
+ return [4 /*yield*/, this.getAndStoreConnectedAddress()];
293
+ case 1: return [2 /*return*/, _a.sent()];
294
+ case 2:
295
+ parsedData = JSON.parse(sessionData);
296
+ sessionExpiry = 30 * 60 * 1000;
297
+ currentTime = Date.now();
298
+ if (currentTime - parsedData.timestamp > sessionExpiry) {
299
+ console.log("Session expired. Ignoring wallet address.");
300
+ sessionStorage.removeItem(this.walletAddressSessionKey); // Clear expired session data
301
+ return [2 /*return*/, ""];
302
+ }
303
+ this.onAddressConnected(parsedData.address);
304
+ return [2 /*return*/, parsedData.address || ""];
270
305
  }
271
- this.onAddressConnected(parsedData.address);
272
- return [2 /*return*/, parsedData.address || ""];
273
306
  });
274
307
  });
275
308
  };
276
- FormoAnalytics.prototype.getCurrentChainId = function () {
309
+ // Utility to fetch accounts
310
+ FormoAnalytics.prototype.fetchAccounts = function () {
277
311
  return __awaiter(this, void 0, void 0, function () {
278
- var chainIdHex;
312
+ var res, err_2;
279
313
  var _a;
280
314
  return __generator(this, function (_b) {
281
315
  switch (_b.label) {
282
316
  case 0:
283
- if (!this.provider) {
284
- console.error("FormoAnalytics::getCurrentChainId: provider not set");
317
+ _b.trys.push([0, 2, , 3]);
318
+ return [4 /*yield*/, ((_a = this.provider) === null || _a === void 0 ? void 0 : _a.request({
319
+ method: "eth_accounts",
320
+ }))];
321
+ case 1:
322
+ res = _b.sent();
323
+ if (!res || res.length === 0) {
324
+ console.log("FormoAnalytics::fetchAccounts: unable to get account. eth_accounts returned empty");
325
+ return [2 /*return*/, null];
285
326
  }
327
+ return [2 /*return*/, res];
328
+ case 2:
329
+ err_2 = _b.sent();
330
+ if (err_2.code !== 4001) {
331
+ console.log("FormoAnalytics::fetchAccounts: eth_accounts threw an error", err_2);
332
+ }
333
+ return [2 /*return*/, null];
334
+ case 3: return [2 /*return*/];
335
+ }
336
+ });
337
+ });
338
+ };
339
+ // Utility to fetch chain ID
340
+ FormoAnalytics.prototype.fetchChainId = function () {
341
+ return __awaiter(this, void 0, void 0, function () {
342
+ var chainIdHex, err_3;
343
+ var _a;
344
+ return __generator(this, function (_b) {
345
+ switch (_b.label) {
346
+ case 0:
347
+ _b.trys.push([0, 2, , 3]);
286
348
  return [4 /*yield*/, ((_a = this.provider) === null || _a === void 0 ? void 0 : _a.request({
287
349
  method: "eth_chainId",
288
350
  }))];
289
351
  case 1:
290
352
  chainIdHex = _b.sent();
353
+ if (!chainIdHex) {
354
+ console.log("FormoAnalytics::fetchChainId: chainIdHex is null or undefined");
355
+ return [2 /*return*/, null];
356
+ }
357
+ return [2 /*return*/, chainIdHex];
358
+ case 2:
359
+ err_3 = _b.sent();
360
+ console.log("FormoAnalytics::fetchChainId: eth_chainId threw an error", err_3);
361
+ return [2 /*return*/, null];
362
+ case 3: return [2 /*return*/];
363
+ }
364
+ });
365
+ });
366
+ };
367
+ FormoAnalytics.prototype.getCurrentChainId = function () {
368
+ return __awaiter(this, void 0, void 0, function () {
369
+ var chainIdHex;
370
+ return __generator(this, function (_a) {
371
+ switch (_a.label) {
372
+ case 0:
373
+ if (!this.provider) {
374
+ console.log("FormoAnalytics::getCurrentChainId: provider not set");
375
+ }
376
+ return [4 /*yield*/, this.fetchChainId()];
377
+ case 1:
378
+ chainIdHex = _a.sent();
291
379
  // Because we're connected, the chainId cannot be null
292
380
  if (!chainIdHex) {
293
- console.error("FormoAnalytics::getCurrentChainId: chainIdHex is: ".concat(chainIdHex));
381
+ console.log("FormoAnalytics::getCurrentChainId: chainIdHex is: ".concat(chainIdHex));
294
382
  }
295
383
  return [2 /*return*/, parseInt(chainIdHex, 16).toString()];
296
384
  }
@@ -367,58 +455,58 @@ var FormoAnalytics = /** @class */ (function () {
367
455
  });
368
456
  });
369
457
  };
370
- FormoAnalytics.prototype.onAddressDisconnected = function () {
371
- if (!this.currentConnectedAddress) {
458
+ FormoAnalytics.prototype.handleDisconnection = function (chainId, address) {
459
+ if (!address) {
372
460
  return;
373
461
  }
374
462
  var payload = {
375
- chain_id: this.currentChainId,
376
- address: this.currentConnectedAddress,
463
+ chain_id: chainId || this.currentChainId,
464
+ address: address,
377
465
  };
378
466
  this.currentChainId = undefined;
379
467
  this.currentConnectedAddress = undefined;
380
468
  this.clearWalletAddress();
381
469
  return this.trackEvent(constants_1.Event.DISCONNECT, payload);
382
470
  };
471
+ FormoAnalytics.prototype.onAddressDisconnected = function () {
472
+ if (!this.currentConnectedAddress) {
473
+ return;
474
+ }
475
+ this.handleDisconnection(this.currentChainId || undefined, this.currentConnectedAddress);
476
+ };
383
477
  FormoAnalytics.prototype.onChainChanged = function (chainIdHex) {
384
478
  return __awaiter(this, void 0, void 0, function () {
385
- var res, err_1;
479
+ var address;
386
480
  return __generator(this, function (_a) {
387
481
  switch (_a.label) {
388
482
  case 0:
389
483
  this.currentChainId = parseInt(chainIdHex).toString();
390
- if (!!this.currentConnectedAddress) return [3 /*break*/, 4];
484
+ if (!!this.currentConnectedAddress) return [3 /*break*/, 2];
391
485
  if (!this.provider) {
392
- console.error("error", "FormoAnalytics::onChainChanged: provider not found. CHAIN_CHANGED not reported");
486
+ console.log("FormoAnalytics::onChainChanged: provider not found. CHAIN_CHANGED not reported");
393
487
  return [2 /*return*/];
394
488
  }
395
- _a.label = 1;
489
+ return [4 /*yield*/, this.getAndStoreConnectedAddress()];
396
490
  case 1:
397
- _a.trys.push([1, 3, , 4]);
398
- return [4 /*yield*/, this.provider.request({
399
- method: "eth_accounts",
400
- })];
401
- case 2:
402
- res = _a.sent();
403
- if (!res || res.length === 0) {
404
- console.error("error", "FormoAnalytics::onChainChanged: unable to get account. eth_accounts returned empty");
491
+ address = _a.sent();
492
+ if (!address) {
493
+ console.log("FormoAnalytics::onChainChanged: Unable to fetch or store connected address");
405
494
  return [2 /*return*/];
406
495
  }
407
- this.currentConnectedAddress = res[0];
408
- return [3 /*break*/, 4];
409
- case 3:
410
- err_1 = _a.sent();
411
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
412
- if (err_1.code !== 4001) {
413
- // 4001: The request is rejected by the user , see https://docs.metamask.io/wallet/reference/provider-api/#errors
414
- console.error("error", "FormoAnalytics::onChainChanged: unable to get account. eth_accounts threw an error", err_1);
415
- return [2 /*return*/];
496
+ this.currentConnectedAddress = address[0];
497
+ _a.label = 2;
498
+ case 2:
499
+ // Proceed only if the address exists
500
+ if (this.currentConnectedAddress) {
501
+ return [2 /*return*/, this.chain({
502
+ chainId: this.currentChainId,
503
+ address: this.currentConnectedAddress,
504
+ })];
416
505
  }
417
- return [3 /*break*/, 4];
418
- case 4: return [2 /*return*/, this.chain({
419
- chainId: this.currentChainId,
420
- address: this.currentConnectedAddress,
421
- })];
506
+ else {
507
+ console.log("FormoAnalytics::onChainChanged: currentConnectedAddress is null despite fetch attempt");
508
+ }
509
+ return [2 /*return*/];
422
510
  }
423
511
  });
424
512
  });
@@ -429,7 +517,7 @@ var FormoAnalytics = /** @class */ (function () {
429
517
  */
430
518
  FormoAnalytics.prototype.storeWalletAddress = function (address) {
431
519
  if (!address) {
432
- console.error("No wallet address provided to store.");
520
+ console.log("No wallet address provided to store.");
433
521
  return;
434
522
  }
435
523
  var sessionData = {
@@ -464,19 +552,14 @@ var FormoAnalytics = /** @class */ (function () {
464
552
  });
465
553
  };
466
554
  FormoAnalytics.prototype.disconnect = function (params) {
555
+ var _a;
467
556
  var address = (params === null || params === void 0 ? void 0 : params.address) || this.currentConnectedAddress;
468
557
  if (!address) {
469
558
  // We have most likely already reported this disconnection with the automatic
470
559
  // `disconnect` detection
471
560
  return;
472
561
  }
473
- var payload = {
474
- chain_id: (params === null || params === void 0 ? void 0 : params.chainId) || this.currentChainId,
475
- address: address,
476
- };
477
- this.currentChainId = undefined;
478
- this.currentConnectedAddress = undefined;
479
- return this.trackEvent(constants_1.Event.DISCONNECT, payload);
562
+ return this.handleDisconnection((((_a = params === null || params === void 0 ? void 0 : params.chainId) === null || _a === void 0 ? void 0 : _a.toString()) || this.currentChainId), address);
480
563
  };
481
564
  FormoAnalytics.prototype.chain = function (_a) {
482
565
  var chainId = _a.chainId, address = _a.address;
@@ -1 +1 @@
1
- {"version":3,"file":"FormoAnalytics.js","sourceRoot":"","sources":["../../../src/FormoAnalytics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormoAnalytics.js","sourceRoot":"","sources":["../../../src/FormoAnalytics.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FormoAnalyticsProvider.d.ts","sourceRoot":"","sources":["../../../src/FormoAnalyticsProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAMtD,eAAO,MAAM,qBAAqB,2CAEjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,6CAKhC,2BAA2B,4CAiE7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,kCAQ7B,CAAC"}
1
+ {"version":3,"file":"FormoAnalyticsProvider.d.ts","sourceRoot":"","sources":["../../../src/FormoAnalyticsProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAMtD,eAAO,MAAM,qBAAqB,2CAEjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,6CAKhC,2BAA2B,4CAuE7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,kCAQ7B,CAAC"}
@@ -49,9 +49,56 @@ var FormoAnalyticsProvider = function (_a) {
49
49
  var _b = (0, react_1.useState)(), sdk = _b[0], setSdk = _b[1];
50
50
  var _c = (0, react_1.useState)(false), isInitialized = _c[0], setIsInitialized = _c[1];
51
51
  var initializedStartedRef = (0, react_1.useRef)(false);
52
+ var initializeHighlight = function () { return __awaiter(void 0, void 0, void 0, function () {
53
+ return __generator(this, function (_a) {
54
+ if (HIGHLIGHT_PROJECT_ID) {
55
+ try {
56
+ highlight_run_1.H.init(HIGHLIGHT_PROJECT_ID, {
57
+ serviceName: 'formo-analytics-sdk',
58
+ tracingOrigins: true,
59
+ networkRecording: {
60
+ enabled: true,
61
+ recordHeadersAndBody: true,
62
+ urlBlocklist: [
63
+ 'https://www.googleapis.com/identitytoolkit',
64
+ 'https://securetoken.googleapis.com',
65
+ ],
66
+ },
67
+ });
68
+ console.log('Highlight.run initialized successfully');
69
+ }
70
+ catch (error) {
71
+ console.error('Failed to initialize Highlight.run', error);
72
+ }
73
+ }
74
+ return [2 /*return*/];
75
+ });
76
+ }); };
77
+ var initializeFormoAnalytics = function (apiKey, options) { return __awaiter(void 0, void 0, void 0, function () {
78
+ var sdkInstance, error_1;
79
+ return __generator(this, function (_a) {
80
+ switch (_a.label) {
81
+ case 0:
82
+ _a.trys.push([0, 2, 3, 4]);
83
+ return [4 /*yield*/, FormoAnalytics_1.FormoAnalytics.init(apiKey, options)];
84
+ case 1:
85
+ sdkInstance = _a.sent();
86
+ setSdk(sdkInstance);
87
+ console.log('FormoAnalytics SDK initialized successfully');
88
+ return [3 /*break*/, 4];
89
+ case 2:
90
+ error_1 = _a.sent();
91
+ console.error('Failed to initialize FormoAnalytics SDK', error_1);
92
+ return [3 /*break*/, 4];
93
+ case 3:
94
+ setIsInitialized(true); // Ensure UI renders even after failure
95
+ return [7 /*endfinally*/];
96
+ case 4: return [2 /*return*/];
97
+ }
98
+ });
99
+ }); };
52
100
  (0, react_1.useEffect)(function () {
53
101
  var initialize = function () { return __awaiter(void 0, void 0, void 0, function () {
54
- var sdkInstance, error_1;
55
102
  return __generator(this, function (_a) {
56
103
  switch (_a.label) {
57
104
  case 0:
@@ -66,44 +113,13 @@ var FormoAnalyticsProvider = function (_a) {
66
113
  if (initializedStartedRef.current)
67
114
  return [2 /*return*/];
68
115
  initializedStartedRef.current = true;
69
- // Initialize Highlight.run if project ID is available
70
- if (HIGHLIGHT_PROJECT_ID) {
71
- try {
72
- highlight_run_1.H.init(HIGHLIGHT_PROJECT_ID, {
73
- serviceName: 'formo-analytics-sdk',
74
- tracingOrigins: true,
75
- networkRecording: {
76
- enabled: true,
77
- recordHeadersAndBody: true,
78
- urlBlocklist: [
79
- 'https://www.googleapis.com/identitytoolkit',
80
- 'https://securetoken.googleapis.com',
81
- ],
82
- },
83
- });
84
- console.log('Highlight.run initialized successfully');
85
- }
86
- catch (error) {
87
- console.error('Failed to initialize Highlight.run', error);
88
- }
89
- }
90
- _a.label = 1;
116
+ return [4 /*yield*/, initializeHighlight()];
91
117
  case 1:
92
- _a.trys.push([1, 3, 4, 5]);
93
- return [4 /*yield*/, FormoAnalytics_1.FormoAnalytics.init(apiKey, options)];
118
+ _a.sent();
119
+ return [4 /*yield*/, initializeFormoAnalytics(apiKey, options)];
94
120
  case 2:
95
- sdkInstance = _a.sent();
96
- setSdk(sdkInstance);
97
- console.log('FormoAnalytics SDK initialized successfully');
98
- return [3 /*break*/, 5];
99
- case 3:
100
- error_1 = _a.sent();
101
- console.error('Failed to initialize FormoAnalytics SDK', error_1);
102
- return [3 /*break*/, 5];
103
- case 4:
104
- setIsInitialized(true); // Ensure UI renders even after failure
105
- return [7 /*endfinally*/];
106
- case 5: return [2 /*return*/];
121
+ _a.sent();
122
+ return [2 /*return*/];
107
123
  }
108
124
  });
109
125
  }); };