@formo/analytics 1.13.4 → 1.14.1

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 (115) hide show
  1. package/.github/workflows/ci.yml +51 -0
  2. package/CONTRIBUTING.md +1 -1
  3. package/dist/cjs/src/FormoAnalytics.d.ts +4 -3
  4. package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
  5. package/dist/cjs/src/FormoAnalytics.js +82 -79
  6. package/dist/cjs/src/FormoAnalytics.js.map +1 -1
  7. package/dist/cjs/src/FormoAnalyticsEventQueue.d.ts +35 -0
  8. package/dist/cjs/src/FormoAnalyticsEventQueue.d.ts.map +1 -0
  9. package/dist/cjs/src/FormoAnalyticsEventQueue.js +272 -0
  10. package/dist/cjs/src/FormoAnalyticsEventQueue.js.map +1 -0
  11. package/dist/cjs/src/FormoAnalyticsProvider.d.ts +4 -5
  12. package/dist/cjs/src/FormoAnalyticsProvider.d.ts.map +1 -1
  13. package/dist/cjs/src/FormoAnalyticsProvider.js +37 -60
  14. package/dist/cjs/src/FormoAnalyticsProvider.js.map +1 -1
  15. package/dist/cjs/src/constants/base.d.ts +3 -0
  16. package/dist/cjs/src/constants/base.d.ts.map +1 -0
  17. package/dist/cjs/src/constants/base.js +6 -0
  18. package/dist/cjs/src/constants/base.js.map +1 -0
  19. package/dist/cjs/src/constants/config.d.ts +1 -1
  20. package/dist/cjs/src/constants/config.js +58 -58
  21. package/dist/cjs/src/constants/config.js.map +1 -1
  22. package/dist/cjs/src/constants/index.d.ts +4 -2
  23. package/dist/cjs/src/constants/index.d.ts.map +1 -1
  24. package/dist/cjs/src/constants/index.js +2 -0
  25. package/dist/cjs/src/constants/index.js.map +1 -1
  26. package/dist/cjs/src/constants/regex.d.ts +4 -0
  27. package/dist/cjs/src/constants/regex.d.ts.map +1 -0
  28. package/dist/cjs/src/constants/regex.js +7 -0
  29. package/dist/cjs/src/constants/regex.js.map +1 -0
  30. package/dist/cjs/src/lib/index.d.ts +3 -0
  31. package/dist/cjs/src/lib/index.d.ts.map +1 -0
  32. package/dist/cjs/src/lib/index.js +24 -0
  33. package/dist/cjs/src/lib/index.js.map +1 -0
  34. package/dist/cjs/src/lib/session-storage.d.ts +11 -0
  35. package/dist/cjs/src/lib/session-storage.d.ts.map +1 -0
  36. package/dist/cjs/src/lib/session-storage.js +52 -0
  37. package/dist/cjs/src/lib/session-storage.js.map +1 -0
  38. package/dist/cjs/src/lib/utils.d.ts +2 -0
  39. package/dist/cjs/src/lib/utils.d.ts.map +1 -1
  40. package/dist/cjs/src/lib/utils.js +8 -0
  41. package/dist/cjs/src/lib/utils.js.map +1 -1
  42. package/dist/cjs/src/types/base.d.ts +6 -0
  43. package/dist/cjs/src/types/base.d.ts.map +1 -1
  44. package/dist/cjs/src/types/events.d.ts +7 -0
  45. package/dist/cjs/src/types/events.d.ts.map +1 -1
  46. package/dist/cjs/src/types/events.js.map +1 -1
  47. package/dist/cjs/test/lib.spec.js +11 -3
  48. package/dist/cjs/test/lib.spec.js.map +1 -1
  49. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  50. package/dist/esm/src/FormoAnalytics.d.ts +4 -3
  51. package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
  52. package/dist/esm/src/FormoAnalytics.js +81 -75
  53. package/dist/esm/src/FormoAnalytics.js.map +1 -1
  54. package/dist/esm/src/FormoAnalyticsEventQueue.d.ts +35 -0
  55. package/dist/esm/src/FormoAnalyticsEventQueue.d.ts.map +1 -0
  56. package/dist/esm/src/FormoAnalyticsEventQueue.js +266 -0
  57. package/dist/esm/src/FormoAnalyticsEventQueue.js.map +1 -0
  58. package/dist/esm/src/FormoAnalyticsProvider.d.ts +4 -5
  59. package/dist/esm/src/FormoAnalyticsProvider.d.ts.map +1 -1
  60. package/dist/esm/src/FormoAnalyticsProvider.js +38 -61
  61. package/dist/esm/src/FormoAnalyticsProvider.js.map +1 -1
  62. package/dist/esm/src/constants/base.d.ts +3 -0
  63. package/dist/esm/src/constants/base.d.ts.map +1 -0
  64. package/dist/esm/src/constants/base.js +3 -0
  65. package/dist/esm/src/constants/base.js.map +1 -0
  66. package/dist/esm/src/constants/config.d.ts +1 -1
  67. package/dist/esm/src/constants/config.js +58 -58
  68. package/dist/esm/src/constants/config.js.map +1 -1
  69. package/dist/esm/src/constants/index.d.ts +4 -2
  70. package/dist/esm/src/constants/index.d.ts.map +1 -1
  71. package/dist/esm/src/constants/index.js +4 -2
  72. package/dist/esm/src/constants/index.js.map +1 -1
  73. package/dist/esm/src/constants/regex.d.ts +4 -0
  74. package/dist/esm/src/constants/regex.d.ts.map +1 -0
  75. package/dist/esm/src/constants/regex.js +4 -0
  76. package/dist/esm/src/constants/regex.js.map +1 -0
  77. package/dist/esm/src/lib/index.d.ts +3 -0
  78. package/dist/esm/src/lib/index.d.ts.map +1 -0
  79. package/dist/esm/src/lib/index.js +3 -0
  80. package/dist/esm/src/lib/index.js.map +1 -0
  81. package/dist/esm/src/lib/session-storage.d.ts +11 -0
  82. package/dist/esm/src/lib/session-storage.d.ts.map +1 -0
  83. package/dist/esm/src/lib/session-storage.js +49 -0
  84. package/dist/esm/src/lib/session-storage.js.map +1 -0
  85. package/dist/esm/src/lib/utils.d.ts +2 -0
  86. package/dist/esm/src/lib/utils.d.ts.map +1 -1
  87. package/dist/esm/src/lib/utils.js +5 -0
  88. package/dist/esm/src/lib/utils.js.map +1 -1
  89. package/dist/esm/src/types/base.d.ts +6 -0
  90. package/dist/esm/src/types/base.d.ts.map +1 -1
  91. package/dist/esm/src/types/events.d.ts +7 -0
  92. package/dist/esm/src/types/events.d.ts.map +1 -1
  93. package/dist/esm/src/types/events.js.map +1 -1
  94. package/dist/esm/test/lib.spec.js +9 -1
  95. package/dist/esm/test/lib.spec.js.map +1 -1
  96. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  97. package/dist/index.umd.min.js +1 -1
  98. package/dist/index.umd.min.js.LICENSE.txt +0 -12
  99. package/dist/index.umd.min.js.map +1 -1
  100. package/package.json +7 -6
  101. package/src/FormoAnalytics.ts +83 -63
  102. package/src/FormoAnalyticsEventQueue.ts +282 -0
  103. package/src/FormoAnalyticsProvider.tsx +29 -64
  104. package/src/constants/base.ts +2 -0
  105. package/src/constants/config.ts +58 -58
  106. package/src/constants/index.ts +4 -2
  107. package/src/constants/regex.ts +3 -0
  108. package/src/lib/index.ts +2 -0
  109. package/src/lib/session-storage.ts +53 -0
  110. package/src/lib/utils.ts +9 -0
  111. package/src/types/base.ts +10 -3
  112. package/src/types/events.ts +15 -7
  113. package/test/lib.spec.ts +13 -1
  114. package/dist/387.index.umd.min.js +0 -125
  115. package/dist/387.index.umd.min.js.map +0 -1
@@ -0,0 +1,266 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
+ return new (P || (P = Promise))(function (resolve, reject) {
15
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
19
+ });
20
+ };
21
+ var __generator = (this && this.__generator) || function (thisArg, body) {
22
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
23
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
+ function verb(n) { return function (v) { return step([n, v]); }; }
25
+ function step(op) {
26
+ if (f) throw new TypeError("Generator is already executing.");
27
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
+ if (y = 0, t) op = [op[0] & 2, t.value];
30
+ switch (op[0]) {
31
+ case 0: case 1: t = op; break;
32
+ case 4: _.label++; return { value: op[1], done: false };
33
+ case 5: _.label++; y = op[1]; op = [0]; continue;
34
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
+ default:
36
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
+ if (t[2]) _.ops.pop();
41
+ _.trys.pop(); continue;
42
+ }
43
+ op = body.call(thisArg, _);
44
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
+ }
47
+ };
48
+ import fetch from "fetch-retry";
49
+ import isNetworkError from "is-network-error";
50
+ import FingerprintJS from "@fingerprintjs/fingerprintjs";
51
+ var sdkFetch = fetch(global.fetch);
52
+ var noop = function () { };
53
+ var DEFAULT_RETRY = 3;
54
+ var MAX_RETRY = 5;
55
+ var MIN_RETRY = 1;
56
+ var DEFAULT_FLUSH_AT = 20;
57
+ var MAX_FLUSH_AT = 20;
58
+ var MIN_FLUSH_AT = 1;
59
+ var DEFAULT_QUEUE_SIZE = 1024 * 500; // 500kB
60
+ var MAX_QUEUE_SIZE = 1024 * 500; // 500kB
61
+ var MIN_QUEUE_SIZE = 200; // 200 bytes
62
+ var DEFAULT_FLUSH_INTERVAL = 1000 * 60; // 1 MINUTE
63
+ var MAX_FLUSH_INTERVAL = 1000 * 300; // 5 MINUTES
64
+ var MIN_FLUSH_INTERVAL = 1000 * 10; // 10 SECONDS
65
+ var FormoAnalyticsEventQueue = /** @class */ (function () {
66
+ function FormoAnalyticsEventQueue(writeKey, options) {
67
+ var _this = this;
68
+ options = options || {};
69
+ this.queue = [];
70
+ this.writeKey = writeKey;
71
+ this.url = options.url;
72
+ this.retryCount = this.getFormattedNumericParams(options.retryCount || DEFAULT_RETRY, MAX_RETRY, MIN_RETRY);
73
+ this.flushAt = this.getFormattedNumericParams(options.flushAt || DEFAULT_FLUSH_AT, MAX_FLUSH_AT, MIN_FLUSH_AT);
74
+ this.maxQueueSize = this.getFormattedNumericParams(options.maxQueueSize || DEFAULT_QUEUE_SIZE, MAX_QUEUE_SIZE, MIN_QUEUE_SIZE);
75
+ this.flushInterval = this.getFormattedNumericParams(options.flushInterval || DEFAULT_FLUSH_INTERVAL, MAX_FLUSH_INTERVAL, MIN_FLUSH_INTERVAL);
76
+ this.flushed = true;
77
+ this.errorHandler = options.errorHandler;
78
+ this.pendingFlush = null;
79
+ this.timer = null;
80
+ // flush before page close
81
+ window.addEventListener("beforeunload", function (e) { return __awaiter(_this, void 0, void 0, function () {
82
+ return __generator(this, function (_a) {
83
+ switch (_a.label) {
84
+ case 0:
85
+ e.stopImmediatePropagation();
86
+ return [4 /*yield*/, this.flush()];
87
+ case 1:
88
+ _a.sent();
89
+ return [2 /*return*/];
90
+ }
91
+ });
92
+ }); });
93
+ }
94
+ //#region Public functions
95
+ FormoAnalyticsEventQueue.prototype.enqueue = function (message, callback) {
96
+ callback = callback || noop;
97
+ // check if the message already exists
98
+ if (this.checkDuplicate(message)) {
99
+ console.warn("Event already enqueued, try again after ".concat(this.millisecondsToSecond(this.flushInterval), " seconds."));
100
+ return;
101
+ }
102
+ this.queue.push({ message: message, callback: callback });
103
+ console.log("Event enqueued: ".concat(this.getActionDescriptor(message.action, message.payload)));
104
+ if (!this.flushed) {
105
+ this.flushed = true;
106
+ this.flush();
107
+ return;
108
+ }
109
+ var hasReachedFlushAt = this.queue.length >= this.flushAt;
110
+ var hasReachedQueueSize = this.queue.reduce(function (acc, item) { return acc + JSON.stringify(item).length; }, 0) >=
111
+ this.maxQueueSize;
112
+ if (hasReachedFlushAt || hasReachedQueueSize) {
113
+ this.flush();
114
+ return;
115
+ }
116
+ if (this.flushInterval && !this.timer) {
117
+ this.timer = setTimeout(this.flush.bind(this), this.flushInterval);
118
+ }
119
+ };
120
+ FormoAnalyticsEventQueue.prototype.flush = function (callback) {
121
+ return __awaiter(this, void 0, void 0, function () {
122
+ var err_1, items, data, done, req, _a;
123
+ var _b, _c;
124
+ var _this = this;
125
+ return __generator(this, function (_d) {
126
+ switch (_d.label) {
127
+ case 0:
128
+ callback = callback || noop;
129
+ if (this.timer) {
130
+ clearTimeout(this.timer);
131
+ this.timer = null;
132
+ }
133
+ if (!this.queue.length) {
134
+ callback();
135
+ return [2 /*return*/, Promise.resolve()];
136
+ }
137
+ _d.label = 1;
138
+ case 1:
139
+ _d.trys.push([1, 4, , 5]);
140
+ if (!this.pendingFlush) return [3 /*break*/, 3];
141
+ return [4 /*yield*/, this.pendingFlush];
142
+ case 2:
143
+ _d.sent();
144
+ _d.label = 3;
145
+ case 3: return [3 /*break*/, 5];
146
+ case 4:
147
+ err_1 = _d.sent();
148
+ this.pendingFlush = null;
149
+ throw err_1;
150
+ case 5:
151
+ items = this.queue.splice(0, this.flushAt);
152
+ data = items.map(function (item) { return item.message; });
153
+ done = function (err) {
154
+ items.forEach(function (_a) {
155
+ var message = _a.message, callback = _a.callback;
156
+ return callback(err, message, data);
157
+ });
158
+ callback(err, data);
159
+ };
160
+ _b = {};
161
+ _c = {
162
+ "Content-Type": "application/json",
163
+ Authorization: "Basic ".concat(this.writeKey)
164
+ };
165
+ _a = "X-Visitor-Id";
166
+ return [4 /*yield*/, this.getVisitorId()];
167
+ case 6:
168
+ req = (_b.headers = (_c[_a] = _d.sent(),
169
+ _c),
170
+ _b);
171
+ return [2 /*return*/, (this.pendingFlush = sdkFetch("".concat(this.url), __assign({ method: "POST", body: JSON.stringify(data), retries: this.retryCount, retryDelay: function (attempt) { return Math.pow(2, attempt) * 1000; }, retryOn: function (_, error) { return _this.isErrorRetryable(error); } }, req))
172
+ .then(function () {
173
+ done();
174
+ return Promise.resolve(data);
175
+ })
176
+ .catch(function (err) {
177
+ if (typeof _this.errorHandler === "function") {
178
+ done(err);
179
+ return _this.errorHandler(err);
180
+ }
181
+ if (err.response) {
182
+ var error = new Error(err.response.statusText);
183
+ done(error);
184
+ throw error;
185
+ }
186
+ done(err);
187
+ throw err;
188
+ }))];
189
+ }
190
+ });
191
+ });
192
+ };
193
+ //#endregion
194
+ //#region Utility functions
195
+ FormoAnalyticsEventQueue.prototype.getVisitorId = function () {
196
+ return __awaiter(this, void 0, void 0, function () {
197
+ var fp, visitorId;
198
+ return __generator(this, function (_a) {
199
+ switch (_a.label) {
200
+ case 0: return [4 /*yield*/, FingerprintJS.load()];
201
+ case 1:
202
+ fp = _a.sent();
203
+ return [4 /*yield*/, fp.get()];
204
+ case 2:
205
+ visitorId = (_a.sent()).visitorId;
206
+ return [2 /*return*/, visitorId];
207
+ }
208
+ });
209
+ });
210
+ };
211
+ FormoAnalyticsEventQueue.prototype.isErrorRetryable = function (error) {
212
+ var _a, _b, _c;
213
+ // Retry Network Errors.
214
+ if (isNetworkError(error))
215
+ return true;
216
+ // Cannot determine if the request can be retried
217
+ if (!(error === null || error === void 0 ? void 0 : error.response))
218
+ return false;
219
+ // Retry Server Errors (5xx).
220
+ if (((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.status) >= 500 && ((_b = error === null || error === void 0 ? void 0 : error.response) === null || _b === void 0 ? void 0 : _b.status) <= 599)
221
+ return true;
222
+ // Retry if rate limited.
223
+ if (((_c = error === null || error === void 0 ? void 0 : error.response) === null || _c === void 0 ? void 0 : _c.status) === 429)
224
+ return true;
225
+ return false;
226
+ };
227
+ FormoAnalyticsEventQueue.prototype.millisecondsToSecond = function (milliseconds) {
228
+ return Math.ceil(milliseconds / 1000);
229
+ };
230
+ FormoAnalyticsEventQueue.prototype.toDateHourMinute = function (date) {
231
+ return (date.getUTCFullYear() +
232
+ "-" +
233
+ ("0" + (date.getUTCMonth() + 1)).slice(-2) +
234
+ "-" +
235
+ ("0" + date.getUTCDate()).slice(-2) +
236
+ " " +
237
+ ("0" + date.getUTCHours()).slice(-2) +
238
+ ":" +
239
+ ("0" + date.getUTCMinutes()).slice(-2));
240
+ };
241
+ FormoAnalyticsEventQueue.prototype.checkDuplicate = function (newMessage) {
242
+ var _this = this;
243
+ // check if exists a message with identical payload within 1 minute
244
+ var formattedTimestamp = this.toDateHourMinute(new Date(newMessage.timestamp));
245
+ var stringifiedMessage = JSON.stringify(__assign(__assign({}, newMessage), { timestamp: formattedTimestamp }));
246
+ return this.queue.some(function (item) {
247
+ var message = item.message;
248
+ var formattedItemTimestamp = _this.toDateHourMinute(new Date(message.timestamp));
249
+ var stringifiedItem = JSON.stringify(__assign(__assign({}, message), { timestamp: formattedItemTimestamp }));
250
+ return stringifiedItem === stringifiedMessage;
251
+ });
252
+ };
253
+ FormoAnalyticsEventQueue.prototype.getActionDescriptor = function (action, payload) {
254
+ return "".concat(action).concat((payload === null || payload === void 0 ? void 0 : payload.status) ? " ".concat(payload === null || payload === void 0 ? void 0 : payload.status) : "");
255
+ };
256
+ FormoAnalyticsEventQueue.prototype.getFormattedNumericParams = function (value, max, min) {
257
+ if (value < min)
258
+ return min;
259
+ if (value > max)
260
+ return max;
261
+ return value;
262
+ };
263
+ return FormoAnalyticsEventQueue;
264
+ }());
265
+ export { FormoAnalyticsEventQueue };
266
+ //# sourceMappingURL=FormoAnalyticsEventQueue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormoAnalyticsEventQueue.js","sourceRoot":"","sources":["../../../src/FormoAnalyticsEventQueue.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import React from 'react';
2
- import { FormoAnalytics } from './FormoAnalytics';
3
- import { FormoAnalyticsProviderProps } from './types';
4
- export declare const FormoAnalyticsContext: React.Context<FormoAnalytics | undefined>;
5
- export declare const FormoAnalyticsProvider: ({ apiKey, options, disabled, children, }: FormoAnalyticsProviderProps) => import("react/jsx-runtime").JSX.Element;
1
+ import { FormoAnalytics } from "./FormoAnalytics";
2
+ import { FormoAnalyticsProviderProps } from "./types";
3
+ export declare const FormoAnalyticsContext: import("react").Context<FormoAnalytics | undefined>;
4
+ export declare const FormoAnalyticsProvider: (props: FormoAnalyticsProviderProps) => string | number | boolean | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
6
5
  export declare const useFormoAnalytics: () => FormoAnalytics | undefined;
7
6
  //# sourceMappingURL=FormoAnalyticsProvider.d.ts.map
@@ -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,4CAuE7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,kCAQ7B,CAAC"}
1
+ {"version":3,"file":"FormoAnalyticsProvider.d.ts","sourceRoot":"","sources":["../../../src/FormoAnalyticsProvider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAEtD,eAAO,MAAM,qBAAqB,qDAEjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAW,2BAA2B,iIAexE,CAAC;AAsCF,eAAO,MAAM,iBAAiB,kCAQ7B,CAAC"}
@@ -1,3 +1,14 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
13
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
14
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -35,62 +46,43 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
46
  }
36
47
  };
37
48
  import { jsx as _jsx } from "react/jsx-runtime";
38
- import { createContext, useContext, useEffect, useState, useRef, } from 'react';
39
- import { FormoAnalytics } from './FormoAnalytics';
40
- import { ErrorBoundary } from '@highlight-run/react';
41
- import { H } from 'highlight.run';
42
- var HIGHLIGHT_PROJECT_ID = process.env.REACT_APP_HIGHLIGHT_PROJECT_ID;
49
+ import { createContext, useContext, useEffect, useState, useRef } from "react";
50
+ import { FormoAnalytics } from "./FormoAnalytics";
43
51
  export var FormoAnalyticsContext = createContext(undefined);
44
- export var FormoAnalyticsProvider = function (_a) {
45
- var apiKey = _a.apiKey, options = _a.options, disabled = _a.disabled, children = _a.children;
52
+ export var FormoAnalyticsProvider = function (props) {
53
+ var apiKey = props.apiKey, disabled = props.disabled, children = props.children;
54
+ // Keep the app running without analytics if no API key is provided or disabled
55
+ if (!apiKey) {
56
+ console.error("FormoAnalyticsProvider: No API key provided");
57
+ return children;
58
+ }
59
+ if (disabled) {
60
+ console.warn("FormoAnalytics is disabled");
61
+ return children;
62
+ }
63
+ return _jsx(InitializedAnalytics, __assign({}, props));
64
+ };
65
+ var InitializedAnalytics = function (_a) {
66
+ var apiKey = _a.apiKey, options = _a.options, children = _a.children;
46
67
  var _b = useState(), sdk = _b[0], setSdk = _b[1];
47
- var _c = useState(false), isInitialized = _c[0], setIsInitialized = _c[1];
48
68
  var initializedStartedRef = useRef(false);
49
- var initializeHighlight = function () { return __awaiter(void 0, void 0, void 0, function () {
50
- return __generator(this, function (_a) {
51
- if (HIGHLIGHT_PROJECT_ID) {
52
- try {
53
- H.init(HIGHLIGHT_PROJECT_ID, {
54
- serviceName: 'formo-analytics-sdk',
55
- tracingOrigins: true,
56
- networkRecording: {
57
- enabled: true,
58
- recordHeadersAndBody: true,
59
- urlBlocklist: [
60
- 'https://www.googleapis.com/identitytoolkit',
61
- 'https://securetoken.googleapis.com',
62
- ],
63
- },
64
- });
65
- console.log('Highlight.run initialized successfully');
66
- }
67
- catch (error) {
68
- console.error('Failed to initialize Highlight.run', error);
69
- }
70
- }
71
- return [2 /*return*/];
72
- });
73
- }); };
74
69
  var initializeFormoAnalytics = function (apiKey, options) { return __awaiter(void 0, void 0, void 0, function () {
75
70
  var sdkInstance, error_1;
76
71
  return __generator(this, function (_a) {
77
72
  switch (_a.label) {
78
73
  case 0:
79
- _a.trys.push([0, 2, 3, 4]);
74
+ _a.trys.push([0, 2, , 3]);
80
75
  return [4 /*yield*/, FormoAnalytics.init(apiKey, options)];
81
76
  case 1:
82
77
  sdkInstance = _a.sent();
83
78
  setSdk(sdkInstance);
84
- console.log('FormoAnalytics SDK initialized successfully');
85
- return [3 /*break*/, 4];
79
+ console.log("FormoAnalytics SDK initialized successfully");
80
+ return [3 /*break*/, 3];
86
81
  case 2:
87
82
  error_1 = _a.sent();
88
- console.error('Failed to initialize FormoAnalytics SDK', error_1);
89
- return [3 /*break*/, 4];
90
- case 3:
91
- setIsInitialized(true); // Ensure UI renders even after failure
92
- return [7 /*endfinally*/];
93
- case 4: return [2 /*return*/];
83
+ console.error("Failed to initialize FormoAnalytics SDK", error_1);
84
+ return [3 /*break*/, 3];
85
+ case 3: return [2 /*return*/];
94
86
  }
95
87
  });
96
88
  }); };
@@ -99,39 +91,24 @@ export var FormoAnalyticsProvider = function (_a) {
99
91
  return __generator(this, function (_a) {
100
92
  switch (_a.label) {
101
93
  case 0:
102
- if (!apiKey) {
103
- console.error('FormoAnalyticsProvider: No API key provided');
104
- return [2 /*return*/];
105
- }
106
- if (disabled) {
107
- console.warn('FormoAnalytics is disabled');
108
- return [2 /*return*/];
109
- }
110
94
  if (initializedStartedRef.current)
111
95
  return [2 /*return*/];
112
96
  initializedStartedRef.current = true;
113
- return [4 /*yield*/, initializeHighlight()];
114
- case 1:
115
- _a.sent();
116
97
  return [4 /*yield*/, initializeFormoAnalytics(apiKey, options)];
117
- case 2:
98
+ case 1:
118
99
  _a.sent();
119
100
  return [2 /*return*/];
120
101
  }
121
102
  });
122
103
  }); };
123
104
  initialize();
124
- }, [apiKey, disabled, options]);
125
- if (!isInitialized) {
126
- // Optionally show a loading state until initialization attempt finishes
127
- return _jsx("div", { children: "Loading analytics..." });
128
- }
129
- return (_jsx(ErrorBoundary, { onError: function (error, info) { return H === null || H === void 0 ? void 0 : H.consumeError(error, info); }, children: _jsx(FormoAnalyticsContext.Provider, { value: sdk, children: children }) }));
105
+ }, [apiKey, options]);
106
+ return (_jsx(FormoAnalyticsContext.Provider, { value: sdk, children: children }));
130
107
  };
131
108
  export var useFormoAnalytics = function () {
132
109
  var context = useContext(FormoAnalyticsContext);
133
110
  if (!context) {
134
- console.warn('useFormoAnalytics called without a valid context');
111
+ console.warn("useFormoAnalytics called without a valid context");
135
112
  }
136
113
  return context; // Return undefined if SDK is not initialized, handle accordingly in consumer
137
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FormoAnalyticsProvider.js","sourceRoot":"","sources":["../../../src/FormoAnalyticsProvider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAc,EACZ,aAAa,EACb,UAAU,EACV,SAAS,EACT,QAAQ,EACR,MAAM,GACP,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAElC,IAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;AAExE,MAAM,CAAC,IAAM,qBAAqB,GAAG,aAAa,CAChD,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,EAKT;QAJ5B,MAAM,YAAA,EACN,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,QAAQ,cAAA;IAEF,IAAA,KAAgB,QAAQ,EAA8B,EAArD,GAAG,QAAA,EAAE,MAAM,QAA0C,CAAC;IACvD,IAAA,KAAoC,QAAQ,CAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IAC1D,IAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAM,mBAAmB,GAAG;;YAC1B,IAAI,oBAAoB,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE;wBAC3B,WAAW,EAAE,qBAAqB;wBAClC,cAAc,EAAE,IAAI;wBACpB,gBAAgB,EAAE;4BAChB,OAAO,EAAE,IAAI;4BACb,oBAAoB,EAAE,IAAI;4BAC1B,YAAY,EAAE;gCACZ,4CAA4C;gCAC5C,oCAAoC;6BACrC;yBACF;qBACF,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;;;SACF,CAAC;IAEF,IAAM,wBAAwB,GAAG,UAAO,MAAc,EAAE,OAAY;;;;;;oBAE5C,qBAAM,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAA;;oBAAxD,WAAW,GAAG,SAA0C;oBAC9D,MAAM,CAAC,WAAW,CAAC,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;;;;oBAE3D,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,OAAK,CAAC,CAAC;;;oBAEhE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,uCAAuC;;;;;SAElE,CAAC;IAEF,SAAS,CAAC;QACR,IAAM,UAAU,GAAG;;;;wBACjB,IAAI,CAAC,MAAM,EAAE,CAAC;4BACZ,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;4BAC7D,sBAAO;wBACT,CAAC;wBACD,IAAI,QAAQ,EAAE,CAAC;4BACb,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;4BAC3C,sBAAO;wBACT,CAAC;wBACD,IAAI,qBAAqB,CAAC,OAAO;4BAAE,sBAAO;wBAC1C,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;wBAErC,qBAAM,mBAAmB,EAAE,EAAA;;wBAA3B,SAA2B,CAAC;wBAC5B,qBAAM,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAA;;wBAA/C,SAA+C,CAAC;;;;aACjD,CAAC;QAEF,UAAU,EAAE,CAAC;IACf,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,wEAAwE;QACxE,OAAO,iDAA+B,CAAC;IACzC,CAAC;IAED,OAAO,CACL,KAAC,aAAa,IAAC,OAAO,EAAE,UAAC,KAAK,EAAE,IAAI,IAAK,OAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,EAA5B,CAA4B,YACnE,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,GAAG,YACvC,QAAQ,GACsB,GACnB,CACjB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,IAAM,OAAO,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAElD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,OAAO,CAAC,CAAC,6EAA6E;AAC/F,CAAC,CAAC"}
1
+ {"version":3,"file":"FormoAnalyticsProvider.js","sourceRoot":"","sources":["../../../src/FormoAnalyticsProvider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,CAAC,IAAM,qBAAqB,GAAG,aAAa,CAChD,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,KAAkC;IAC/D,IAAA,MAAM,GAAyB,KAAK,OAA9B,EAAE,QAAQ,GAAe,KAAK,SAApB,EAAE,QAAQ,GAAK,KAAK,SAAV,CAAW;IAE7C,+EAA+E;IAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,KAAC,oBAAoB,eAAK,KAAK,EAAI,CAAC;AAC7C,CAAC,CAAC;AAEF,IAAM,oBAAoB,GAAG,UAAC,EAIA;QAH5B,MAAM,YAAA,EACN,OAAO,aAAA,EACP,QAAQ,cAAA;IAEF,IAAA,KAAgB,QAAQ,EAA8B,EAArD,GAAG,QAAA,EAAE,MAAM,QAA0C,CAAC;IAC7D,IAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAM,wBAAwB,GAAG,UAAO,MAAc,EAAE,OAAY;;;;;;oBAE5C,qBAAM,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAA;;oBAAxD,WAAW,GAAG,SAA0C;oBAC9D,MAAM,CAAC,WAAW,CAAC,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;;;;oBAE3D,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,OAAK,CAAC,CAAC;;;;;SAEnE,CAAC;IAEF,SAAS,CAAC;QACR,IAAM,UAAU,GAAG;;;;wBACjB,IAAI,qBAAqB,CAAC,OAAO;4BAAE,sBAAO;wBAC1C,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;wBAErC,qBAAM,wBAAwB,CAAC,MAAO,EAAE,OAAO,CAAC,EAAA;;wBAAhD,SAAgD,CAAC;;;;aAClD,CAAC;QAEF,UAAU,EAAE,CAAC;IACf,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,OAAO,CACL,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,GAAG,YACvC,QAAQ,GACsB,CAClC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,IAAM,OAAO,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAElD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,OAAO,CAAC,CAAC,6EAA6E;AAC/F,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const SESSION_PREFIX = "f0-";
2
+ export declare const SESSION_IDENTIFIED_KEY: string;
3
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/constants/base.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,QAAQ,CAAC;AACpC,eAAO,MAAM,sBAAsB,QAAwC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export var SESSION_PREFIX = "f0-";
2
+ export var SESSION_IDENTIFIED_KEY = SESSION_PREFIX + "session_identified";
3
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/constants/base.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC;AACpC,MAAM,CAAC,IAAM,sBAAsB,GAAG,cAAc,GAAG,oBAAoB,CAAC"}
@@ -62,7 +62,7 @@ export declare const COUNTRY_LIST: {
62
62
  "America/Araguaina": string;
63
63
  "America/Argentina/Buenos_Aires": string;
64
64
  "America/Argentina/Catamarca": string;
65
- "America/Argentina/ComodRivadavi": string;
65
+ "America/Argentina/ComodRivadavia": string;
66
66
  "America/Argentina/Cordoba": string;
67
67
  "America/Argentina/Jujuy": string;
68
68
  "America/Argentina/La_Rioja": string;