@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.
- package/dist/cjs/src/FormoAnalytics.d.ts +69 -38
- package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
- package/dist/cjs/src/FormoAnalytics.js +143 -198
- package/dist/cjs/src/FormoAnalytics.js.map +1 -1
- package/dist/cjs/src/FormoAnalyticsProvider.js +5 -5
- package/dist/cjs/src/FormoAnalyticsProvider.js.map +1 -1
- package/dist/cjs/src/constants/config.d.ts +1 -1
- package/dist/cjs/src/constants/config.d.ts.map +1 -1
- package/dist/cjs/src/constants/config.js +1 -1
- package/dist/cjs/src/constants/config.js.map +1 -1
- package/dist/cjs/src/constants/events.d.ts +14 -5
- package/dist/cjs/src/constants/events.d.ts.map +1 -1
- package/dist/cjs/src/constants/events.js +20 -12
- package/dist/cjs/src/constants/events.js.map +1 -1
- package/dist/cjs/src/lib/event/EventFactory.d.ts +22 -54
- package/dist/cjs/src/lib/event/EventFactory.d.ts.map +1 -1
- package/dist/cjs/src/lib/event/EventFactory.js +187 -116
- package/dist/cjs/src/lib/event/EventFactory.js.map +1 -1
- package/dist/cjs/src/lib/event/EventManager.d.ts +22 -0
- package/dist/cjs/src/lib/event/EventManager.d.ts.map +1 -0
- package/dist/cjs/src/lib/event/EventManager.js +48 -0
- package/dist/cjs/src/lib/event/EventManager.js.map +1 -0
- package/dist/cjs/src/lib/event/constants.d.ts +4 -0
- package/dist/cjs/src/lib/event/constants.d.ts.map +1 -0
- package/dist/cjs/src/lib/event/constants.js +8 -0
- package/dist/cjs/src/lib/event/constants.js.map +1 -0
- package/dist/cjs/src/lib/event/index.d.ts +1 -0
- package/dist/cjs/src/lib/event/index.d.ts.map +1 -1
- package/dist/cjs/src/lib/event/index.js +1 -0
- package/dist/cjs/src/lib/event/index.js.map +1 -1
- package/dist/cjs/src/lib/event/type.d.ts +5 -3
- package/dist/cjs/src/lib/event/type.d.ts.map +1 -1
- package/dist/cjs/src/lib/event/utils.d.ts +4 -0
- package/dist/cjs/src/lib/event/utils.d.ts.map +1 -0
- package/dist/cjs/src/lib/event/utils.js +16 -0
- package/dist/cjs/src/lib/event/utils.js.map +1 -0
- package/dist/cjs/src/lib/fetch.d.ts +1 -1
- package/dist/cjs/src/lib/queue/EventQueue.d.ts +1 -0
- package/dist/cjs/src/lib/queue/EventQueue.d.ts.map +1 -1
- package/dist/cjs/src/lib/queue/EventQueue.js +22 -14
- package/dist/cjs/src/lib/queue/EventQueue.js.map +1 -1
- package/dist/cjs/src/lib/ramda/internal/_curry1.d.ts +10 -0
- package/dist/cjs/src/lib/ramda/internal/_curry1.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_curry1.js +26 -0
- package/dist/cjs/src/lib/ramda/internal/_curry1.js.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_curry2.d.ts +10 -0
- package/dist/cjs/src/lib/ramda/internal/_curry2.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_curry2.js +43 -0
- package/dist/cjs/src/lib/ramda/internal/_curry2.js.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_curry3.d.ts +10 -0
- package/dist/cjs/src/lib/ramda/internal/_curry3.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_curry3.js +74 -0
- package/dist/cjs/src/lib/ramda/internal/_curry3.js.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_has.d.ts +2 -0
- package/dist/cjs/src/lib/ramda/internal/_has.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_has.js +7 -0
- package/dist/cjs/src/lib/ramda/internal/_has.js.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_isObject.d.ts +2 -0
- package/dist/cjs/src/lib/ramda/internal/_isObject.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_isObject.js +7 -0
- package/dist/cjs/src/lib/ramda/internal/_isObject.js.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.d.ts +2 -0
- package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.js +7 -0
- package/dist/cjs/src/lib/ramda/internal/_isPlaceholder.js.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeDeepRight.d.ts +3 -0
- package/dist/cjs/src/lib/ramda/mergeDeepRight.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeDeepRight.js +14 -0
- package/dist/cjs/src/lib/ramda/mergeDeepRight.js.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeDeepWithKey.d.ts +3 -0
- package/dist/cjs/src/lib/ramda/mergeDeepWithKey.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeDeepWithKey.js +20 -0
- package/dist/cjs/src/lib/ramda/mergeDeepWithKey.js.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeWithKey.d.ts +3 -0
- package/dist/cjs/src/lib/ramda/mergeWithKey.d.ts.map +1 -0
- package/dist/cjs/src/lib/ramda/mergeWithKey.js +26 -0
- package/dist/cjs/src/lib/ramda/mergeWithKey.js.map +1 -0
- package/dist/cjs/src/lib/storage/native.d.ts +1 -0
- package/dist/cjs/src/lib/storage/native.d.ts.map +1 -1
- package/dist/cjs/src/lib/storage/native.js +3 -0
- package/dist/cjs/src/lib/storage/native.js.map +1 -1
- package/dist/cjs/src/lib/version.d.ts +2 -0
- package/dist/cjs/src/lib/version.d.ts.map +1 -0
- package/dist/cjs/src/lib/version.js +6 -0
- package/dist/cjs/src/lib/version.js.map +1 -0
- package/dist/cjs/src/types/base.d.ts +1 -0
- package/dist/cjs/src/types/base.d.ts.map +1 -1
- package/dist/cjs/src/types/events.d.ts +55 -27
- package/dist/cjs/src/types/events.d.ts.map +1 -1
- package/dist/cjs/src/types/events.js.map +1 -1
- package/dist/cjs/src/utils/base.d.ts +1 -1
- package/dist/cjs/src/utils/base.d.ts.map +1 -1
- package/dist/cjs/src/utils/base.js +2 -2
- package/dist/cjs/src/utils/base.js.map +1 -1
- package/dist/cjs/src/utils/timestamp.d.ts +8 -0
- package/dist/cjs/src/utils/timestamp.d.ts.map +1 -0
- package/dist/cjs/src/utils/timestamp.js +12 -0
- package/dist/cjs/src/utils/timestamp.js.map +1 -0
- package/dist/cjs/src/validators/checks.d.ts +77 -0
- package/dist/cjs/src/validators/checks.d.ts.map +1 -0
- package/dist/cjs/src/validators/checks.js +141 -0
- package/dist/cjs/src/validators/checks.js.map +1 -0
- package/dist/cjs/src/validators/index.d.ts +2 -1
- package/dist/cjs/src/validators/index.d.ts.map +1 -1
- package/dist/cjs/src/validators/index.js +2 -1
- package/dist/cjs/src/validators/index.js.map +1 -1
- package/dist/cjs/src/validators/network.d.ts +2 -0
- package/dist/cjs/src/validators/network.d.ts.map +1 -0
- package/dist/cjs/src/validators/network.js +31 -0
- package/dist/cjs/src/validators/network.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/src/FormoAnalytics.d.ts +69 -38
- package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
- package/dist/esm/src/FormoAnalytics.js +146 -201
- package/dist/esm/src/FormoAnalytics.js.map +1 -1
- package/dist/esm/src/FormoAnalyticsProvider.js +5 -5
- package/dist/esm/src/FormoAnalyticsProvider.js.map +1 -1
- package/dist/esm/src/constants/config.d.ts +1 -1
- package/dist/esm/src/constants/config.d.ts.map +1 -1
- package/dist/esm/src/constants/config.js +1 -1
- package/dist/esm/src/constants/config.js.map +1 -1
- package/dist/esm/src/constants/events.d.ts +14 -5
- package/dist/esm/src/constants/events.d.ts.map +1 -1
- package/dist/esm/src/constants/events.js +19 -11
- package/dist/esm/src/constants/events.js.map +1 -1
- package/dist/esm/src/lib/event/EventFactory.d.ts +22 -54
- package/dist/esm/src/lib/event/EventFactory.d.ts.map +1 -1
- package/dist/esm/src/lib/event/EventFactory.js +185 -117
- package/dist/esm/src/lib/event/EventFactory.js.map +1 -1
- package/dist/esm/src/lib/event/EventManager.d.ts +22 -0
- package/dist/esm/src/lib/event/EventManager.d.ts.map +1 -0
- package/dist/esm/src/lib/event/EventManager.js +45 -0
- package/dist/esm/src/lib/event/EventManager.js.map +1 -0
- package/dist/esm/src/lib/event/constants.d.ts +4 -0
- package/dist/esm/src/lib/event/constants.d.ts.map +1 -0
- package/dist/esm/src/lib/event/constants.js +4 -0
- package/dist/esm/src/lib/event/constants.js.map +1 -0
- package/dist/esm/src/lib/event/index.d.ts +1 -0
- package/dist/esm/src/lib/event/index.d.ts.map +1 -1
- package/dist/esm/src/lib/event/index.js +1 -0
- package/dist/esm/src/lib/event/index.js.map +1 -1
- package/dist/esm/src/lib/event/type.d.ts +5 -3
- package/dist/esm/src/lib/event/type.d.ts.map +1 -1
- package/dist/esm/src/lib/event/utils.d.ts +4 -0
- package/dist/esm/src/lib/event/utils.d.ts.map +1 -0
- package/dist/esm/src/lib/event/utils.js +13 -0
- package/dist/esm/src/lib/event/utils.js.map +1 -0
- package/dist/esm/src/lib/queue/EventQueue.d.ts +1 -0
- package/dist/esm/src/lib/queue/EventQueue.d.ts.map +1 -1
- package/dist/esm/src/lib/queue/EventQueue.js +21 -13
- package/dist/esm/src/lib/queue/EventQueue.js.map +1 -1
- package/dist/esm/src/lib/ramda/internal/_curry1.d.ts +10 -0
- package/dist/esm/src/lib/ramda/internal/_curry1.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_curry1.js +20 -0
- package/dist/esm/src/lib/ramda/internal/_curry1.js.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_curry2.d.ts +10 -0
- package/dist/esm/src/lib/ramda/internal/_curry2.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_curry2.js +37 -0
- package/dist/esm/src/lib/ramda/internal/_curry2.js.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_curry3.d.ts +10 -0
- package/dist/esm/src/lib/ramda/internal/_curry3.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_curry3.js +68 -0
- package/dist/esm/src/lib/ramda/internal/_curry3.js.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_has.d.ts +2 -0
- package/dist/esm/src/lib/ramda/internal/_has.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_has.js +4 -0
- package/dist/esm/src/lib/ramda/internal/_has.js.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_isObject.d.ts +2 -0
- package/dist/esm/src/lib/ramda/internal/_isObject.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_isObject.js +4 -0
- package/dist/esm/src/lib/ramda/internal/_isObject.js.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_isPlaceholder.d.ts +2 -0
- package/dist/esm/src/lib/ramda/internal/_isPlaceholder.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/internal/_isPlaceholder.js +4 -0
- package/dist/esm/src/lib/ramda/internal/_isPlaceholder.js.map +1 -0
- package/dist/esm/src/lib/ramda/mergeDeepRight.d.ts +3 -0
- package/dist/esm/src/lib/ramda/mergeDeepRight.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/mergeDeepRight.js +9 -0
- package/dist/esm/src/lib/ramda/mergeDeepRight.js.map +1 -0
- package/dist/esm/src/lib/ramda/mergeDeepWithKey.d.ts +3 -0
- package/dist/esm/src/lib/ramda/mergeDeepWithKey.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/mergeDeepWithKey.js +15 -0
- package/dist/esm/src/lib/ramda/mergeDeepWithKey.js.map +1 -0
- package/dist/esm/src/lib/ramda/mergeWithKey.d.ts +3 -0
- package/dist/esm/src/lib/ramda/mergeWithKey.d.ts.map +1 -0
- package/dist/esm/src/lib/ramda/mergeWithKey.js +21 -0
- package/dist/esm/src/lib/ramda/mergeWithKey.js.map +1 -0
- package/dist/esm/src/lib/storage/native.d.ts +1 -0
- package/dist/esm/src/lib/storage/native.d.ts.map +1 -1
- package/dist/esm/src/lib/storage/native.js +3 -0
- package/dist/esm/src/lib/storage/native.js.map +1 -1
- package/dist/esm/src/lib/version.d.ts +2 -0
- package/dist/esm/src/lib/version.d.ts.map +1 -0
- package/dist/esm/src/lib/version.js +3 -0
- package/dist/esm/src/lib/version.js.map +1 -0
- package/dist/esm/src/types/base.d.ts +1 -0
- package/dist/esm/src/types/base.d.ts.map +1 -1
- package/dist/esm/src/types/events.d.ts +55 -27
- package/dist/esm/src/types/events.d.ts.map +1 -1
- package/dist/esm/src/types/events.js.map +1 -1
- package/dist/esm/src/utils/base.d.ts +1 -1
- package/dist/esm/src/utils/base.d.ts.map +1 -1
- package/dist/esm/src/utils/base.js +2 -2
- package/dist/esm/src/utils/base.js.map +1 -1
- package/dist/esm/src/utils/timestamp.d.ts +8 -0
- package/dist/esm/src/utils/timestamp.d.ts.map +1 -0
- package/dist/esm/src/utils/timestamp.js +8 -0
- package/dist/esm/src/utils/timestamp.js.map +1 -0
- package/dist/esm/src/validators/checks.d.ts +77 -0
- package/dist/esm/src/validators/checks.d.ts.map +1 -0
- package/dist/esm/src/validators/checks.js +119 -0
- package/dist/esm/src/validators/checks.js.map +1 -0
- package/dist/esm/src/validators/index.d.ts +2 -1
- package/dist/esm/src/validators/index.d.ts.map +1 -1
- package/dist/esm/src/validators/index.js +2 -1
- package/dist/esm/src/validators/index.js.map +1 -1
- package/dist/esm/src/validators/network.d.ts +2 -0
- package/dist/esm/src/validators/network.d.ts.map +1 -0
- package/dist/esm/src/validators/network.js +28 -0
- package/dist/esm/src/validators/network.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/index.umd.min.js +1 -1
- package/dist/index.umd.min.js.map +1 -1
- package/package.json +3 -3
- package/src/FormoAnalytics.ts +380 -242
- package/src/FormoAnalyticsProvider.tsx +5 -5
- package/src/constants/config.ts +1 -1
- package/src/constants/events.ts +15 -4
- package/src/lib/event/EventFactory.ts +358 -162
- package/src/lib/event/EventManager.ts +39 -0
- package/src/lib/event/constants.ts +4 -0
- package/src/lib/event/index.ts +1 -0
- package/src/lib/event/type.ts +6 -8
- package/src/lib/event/utils.ts +15 -0
- package/src/lib/queue/EventQueue.ts +23 -11
- package/src/lib/ramda/internal/_curry1.ts +19 -0
- package/src/lib/ramda/internal/_curry2.ts +37 -0
- package/src/lib/ramda/internal/_curry3.ts +68 -0
- package/src/lib/ramda/internal/_has.ts +3 -0
- package/src/lib/ramda/internal/_isObject.ts +3 -0
- package/src/lib/ramda/internal/_isPlaceholder.ts +5 -0
- package/src/lib/ramda/mergeDeepRight.ts +13 -0
- package/src/lib/ramda/mergeDeepWithKey.ts +22 -0
- package/src/lib/ramda/mergeWithKey.ts +28 -0
- package/src/lib/storage/native.ts +4 -0
- package/src/lib/version.ts +2 -0
- package/src/types/base.ts +1 -0
- package/src/types/events.ts +93 -58
- package/src/utils/base.ts +2 -2
- package/src/utils/timestamp.ts +9 -0
- package/src/validators/checks.ts +160 -0
- package/src/validators/index.ts +2 -1
- package/src/validators/network.ts +34 -0
- package/tsconfig.json +1 -1
- package/dist/cjs/src/validators/type-check.d.ts +0 -14
- package/dist/cjs/src/validators/type-check.d.ts.map +0 -1
- package/dist/cjs/src/validators/type-check.js +0 -61
- package/dist/cjs/src/validators/type-check.js.map +0 -1
- package/dist/esm/src/validators/type-check.d.ts +0 -14
- package/dist/esm/src/validators/type-check.d.ts.map +0 -1
- package/dist/esm/src/validators/type-check.js +0 -46
- package/dist/esm/src/validators/type-check.js.map +0 -1
- package/src/validators/type-check.ts +0 -61
|
@@ -9,32 +9,100 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
-
var t = {};
|
|
14
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
-
t[p] = s[p];
|
|
16
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
-
t[p[i]] = s[p[i]];
|
|
20
|
-
}
|
|
21
|
-
return t;
|
|
22
|
-
};
|
|
23
12
|
import { COUNTRY_LIST } from "../../constants";
|
|
13
|
+
import { generateNativeUUID, toChecksumAddress, toSnakeCase, } from "../../utils";
|
|
14
|
+
import { getCurrentTimeFormatted } from "../../utils/timestamp";
|
|
15
|
+
import { isUndefined } from "../../validators";
|
|
24
16
|
import { logger } from "../logger";
|
|
25
|
-
import
|
|
17
|
+
import mergeDeepRight from "../ramda/mergeDeepRight";
|
|
18
|
+
import { local } from "../storage";
|
|
19
|
+
import { version } from "../version";
|
|
20
|
+
import { CHANNEL, VERSION } from "./constants";
|
|
21
|
+
import { generateAnonymousId } from "./utils";
|
|
26
22
|
var EventFactory = /** @class */ (function () {
|
|
27
23
|
function EventFactory() {
|
|
24
|
+
var _this = this;
|
|
25
|
+
this.extractUTMParameters = function (url) {
|
|
26
|
+
var result = {};
|
|
27
|
+
try {
|
|
28
|
+
var urlObj = new URL(url);
|
|
29
|
+
var UTM_PREFIX_1 = "utm_";
|
|
30
|
+
urlObj.searchParams.forEach(function (value, sParam) {
|
|
31
|
+
if (sParam.startsWith(UTM_PREFIX_1)) {
|
|
32
|
+
result[sParam] = value.trim() || "";
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
catch (error) { }
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Add any missing default page properties using values from options and defaults
|
|
41
|
+
* @param properties Input page properties
|
|
42
|
+
* @param options API options
|
|
43
|
+
*/
|
|
44
|
+
this.getPageProperties = function (properties) {
|
|
45
|
+
var pageProps = properties;
|
|
46
|
+
if (isUndefined(pageProps.url)) {
|
|
47
|
+
pageProps.url = new URL(globalThis.location.href).href;
|
|
48
|
+
}
|
|
49
|
+
if (isUndefined(pageProps.path)) {
|
|
50
|
+
pageProps.path = globalThis.location.pathname;
|
|
51
|
+
}
|
|
52
|
+
if (isUndefined(pageProps.hash)) {
|
|
53
|
+
pageProps.hash = globalThis.location.hash;
|
|
54
|
+
}
|
|
55
|
+
return pageProps;
|
|
56
|
+
};
|
|
57
|
+
this.getEnrichedEvent = function (formoEvent, context) {
|
|
58
|
+
var commonEventData = {
|
|
59
|
+
context: _this.generateContext(context),
|
|
60
|
+
original_timestamp: getCurrentTimeFormatted(),
|
|
61
|
+
user_id: formoEvent.user_id,
|
|
62
|
+
type: formoEvent.type,
|
|
63
|
+
channel: CHANNEL,
|
|
64
|
+
version: VERSION,
|
|
65
|
+
};
|
|
66
|
+
if (!local.isAvailable()) {
|
|
67
|
+
commonEventData.anonymous_id = generateNativeUUID();
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
commonEventData.anonymous_id = generateAnonymousId();
|
|
71
|
+
}
|
|
72
|
+
if (formoEvent.address) {
|
|
73
|
+
commonEventData.address = toChecksumAddress(formoEvent.address);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
commonEventData.address = formoEvent.address;
|
|
77
|
+
}
|
|
78
|
+
var processedEvent = mergeDeepRight(formoEvent, commonEventData);
|
|
79
|
+
if (processedEvent.event === undefined) {
|
|
80
|
+
processedEvent.event = null;
|
|
81
|
+
}
|
|
82
|
+
if (processedEvent.properties === undefined) {
|
|
83
|
+
processedEvent.properties = null;
|
|
84
|
+
}
|
|
85
|
+
return toSnakeCase(processedEvent);
|
|
86
|
+
};
|
|
28
87
|
}
|
|
88
|
+
EventFactory.prototype.getTimezone = function () {
|
|
89
|
+
try {
|
|
90
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
logger.error("Error resolving timezone:", error);
|
|
94
|
+
return "";
|
|
95
|
+
}
|
|
96
|
+
};
|
|
29
97
|
EventFactory.prototype.getLocation = function () {
|
|
30
98
|
try {
|
|
31
|
-
var timezone =
|
|
99
|
+
var timezone = this.getTimezone();
|
|
32
100
|
if (timezone in COUNTRY_LIST)
|
|
33
101
|
return COUNTRY_LIST[timezone];
|
|
34
102
|
return timezone;
|
|
35
103
|
}
|
|
36
104
|
catch (error) {
|
|
37
|
-
logger.error("Error resolving
|
|
105
|
+
logger.error("Error resolving location:", error);
|
|
38
106
|
return "";
|
|
39
107
|
}
|
|
40
108
|
};
|
|
@@ -49,135 +117,135 @@ var EventFactory = /** @class */ (function () {
|
|
|
49
117
|
return "en";
|
|
50
118
|
}
|
|
51
119
|
};
|
|
52
|
-
EventFactory.prototype.
|
|
53
|
-
|
|
54
|
-
return {
|
|
55
|
-
anonymous_id: anonymous_id,
|
|
56
|
-
user_id: user_id,
|
|
57
|
-
address: address && toChecksumAddress(address),
|
|
58
|
-
timestamp: new Date().toISOString(),
|
|
59
|
-
action: action,
|
|
60
|
-
version: "1",
|
|
61
|
-
};
|
|
120
|
+
EventFactory.prototype.getLibraryVersion = function () {
|
|
121
|
+
return version;
|
|
62
122
|
};
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
var
|
|
123
|
+
// Contextual fields that are automatically collected and populated by the Formo SDK
|
|
124
|
+
EventFactory.prototype.generateContext = function (context) {
|
|
125
|
+
var _a;
|
|
126
|
+
var url = new URL(globalThis.location.href);
|
|
127
|
+
var params = new URLSearchParams(url.search);
|
|
128
|
+
var path = globalThis.location.pathname;
|
|
66
129
|
var language = this.getLanguage();
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
130
|
+
var timezone = this.getTimezone();
|
|
131
|
+
var location = this.getLocation();
|
|
132
|
+
var library_version = this.getLibraryVersion();
|
|
133
|
+
// contextual properties
|
|
134
|
+
var defaultContext = __assign(__assign({ user_agent: globalThis.navigator.userAgent, href: url.href, locale: language, timezone: timezone, location: location, referrer: document.referrer }, this.extractUTMParameters(globalThis.location.href)), { ref: ((_a = params.get("ref")) === null || _a === void 0 ? void 0 : _a.trim()) || "", page_path: path, page_title: document.title, page_url: url.href, library_name: "Formo Web SDK", library_version: library_version });
|
|
135
|
+
var mergedContext = mergeDeepRight(defaultContext, context || {});
|
|
136
|
+
return mergedContext;
|
|
137
|
+
};
|
|
138
|
+
EventFactory.prototype.generatePageEvent = function (category, name, properties, context) {
|
|
139
|
+
var props = properties !== null && properties !== void 0 ? properties : {};
|
|
140
|
+
props.category = category;
|
|
141
|
+
props.name = name;
|
|
142
|
+
props = this.getPageProperties(props);
|
|
143
|
+
var pageEvent = {
|
|
144
|
+
properties: props,
|
|
145
|
+
type: "page",
|
|
73
146
|
};
|
|
147
|
+
return this.getEnrichedEvent(pageEvent, context);
|
|
74
148
|
};
|
|
75
|
-
EventFactory.prototype.
|
|
76
|
-
var
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
var pathname = window.location.pathname;
|
|
80
|
-
var hash = window.location.hash;
|
|
81
|
-
return {
|
|
82
|
-
pathname: pathname || url.pathname,
|
|
83
|
-
hash: hash || url.hash,
|
|
84
|
-
referrer: document.referrer,
|
|
85
|
-
utm_source: ((_a = params.get("utm_source")) === null || _a === void 0 ? void 0 : _a.trim()) || "",
|
|
86
|
-
utm_medium: ((_b = params.get("utm_medium")) === null || _b === void 0 ? void 0 : _b.trim()) || "",
|
|
87
|
-
utm_campaign: ((_c = params.get("utm_campaign")) === null || _c === void 0 ? void 0 : _c.trim()) || "",
|
|
88
|
-
utm_content: ((_d = params.get("utm_content")) === null || _d === void 0 ? void 0 : _d.trim()) || "",
|
|
89
|
-
utm_term: ((_e = params.get("utm_term")) === null || _e === void 0 ? void 0 : _e.trim()) || "",
|
|
90
|
-
ref: ((_f = params.get("ref")) === null || _f === void 0 ? void 0 : _f.trim()) || "",
|
|
149
|
+
EventFactory.prototype.generateDetectWalletEvent = function (providerName, rdns, properties, context) {
|
|
150
|
+
var detectEvent = {
|
|
151
|
+
properties: __assign({ providerName: providerName, rdns: rdns }, properties),
|
|
152
|
+
type: "detect",
|
|
91
153
|
};
|
|
154
|
+
return this.getEnrichedEvent(detectEvent, context);
|
|
92
155
|
};
|
|
93
|
-
EventFactory.prototype.
|
|
94
|
-
|
|
95
|
-
|
|
156
|
+
EventFactory.prototype.generateIdentifyEvent = function (providerName, rdns, address, userId, properties, context) {
|
|
157
|
+
var identifyEvent = {
|
|
158
|
+
properties: __assign({ providerName: providerName, rdns: rdns }, properties),
|
|
159
|
+
user_id: userId,
|
|
96
160
|
address: address,
|
|
161
|
+
type: "identify",
|
|
97
162
|
};
|
|
163
|
+
return this.getEnrichedEvent(identifyEvent, context);
|
|
98
164
|
};
|
|
99
|
-
EventFactory.prototype.
|
|
100
|
-
|
|
101
|
-
chainId: chainId,
|
|
165
|
+
EventFactory.prototype.generateConnectEvent = function (chainId, address, properties, context) {
|
|
166
|
+
var connectEvent = {
|
|
167
|
+
properties: __assign({ chainId: chainId }, properties),
|
|
102
168
|
address: address,
|
|
169
|
+
type: "connect",
|
|
103
170
|
};
|
|
171
|
+
return this.getEnrichedEvent(connectEvent, context);
|
|
104
172
|
};
|
|
105
|
-
EventFactory.prototype.
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
173
|
+
EventFactory.prototype.generateDisconnectEvent = function (chainId, address, properties, context) {
|
|
174
|
+
var disconnectEvent = {
|
|
175
|
+
properties: __assign({ chainId: chainId }, properties),
|
|
176
|
+
address: address,
|
|
177
|
+
type: "disconnect",
|
|
109
178
|
};
|
|
179
|
+
return this.getEnrichedEvent(disconnectEvent, context);
|
|
110
180
|
};
|
|
111
|
-
EventFactory.prototype.
|
|
112
|
-
|
|
181
|
+
EventFactory.prototype.generateChainChangedEvent = function (chainId, address, properties, context) {
|
|
182
|
+
var chainEvent = {
|
|
183
|
+
properties: __assign({ chainId: chainId }, properties),
|
|
113
184
|
address: address,
|
|
114
|
-
|
|
115
|
-
rdns: rdns,
|
|
185
|
+
type: "chain",
|
|
116
186
|
};
|
|
187
|
+
return this.getEnrichedEvent(chainEvent, context);
|
|
117
188
|
};
|
|
118
|
-
EventFactory.prototype.
|
|
119
|
-
|
|
120
|
-
chainId: chainId,
|
|
189
|
+
EventFactory.prototype.generateSignatureEvent = function (status, chainId, address, message, signatureHash, properties, context) {
|
|
190
|
+
var signatureEvent = {
|
|
191
|
+
properties: __assign({ status: status, chainId: chainId, message: message, signatureHash: signatureHash }, properties),
|
|
121
192
|
address: address,
|
|
193
|
+
type: "signature",
|
|
122
194
|
};
|
|
195
|
+
return this.getEnrichedEvent(signatureEvent, context);
|
|
123
196
|
};
|
|
124
|
-
EventFactory.prototype.
|
|
125
|
-
|
|
126
|
-
status: status,
|
|
127
|
-
chainId: chainId,
|
|
197
|
+
EventFactory.prototype.generateTransactionEvent = function (status, chainId, address, data, to, value, transactionHash, properties, context) {
|
|
198
|
+
var transactionEvent = {
|
|
199
|
+
properties: __assign({ status: status, chainId: chainId, data: data, to: to, value: value, transactionHash: transactionHash }, properties),
|
|
128
200
|
address: address,
|
|
129
|
-
|
|
130
|
-
signatureHash: signatureHash,
|
|
201
|
+
type: "transaction",
|
|
131
202
|
};
|
|
203
|
+
return this.getEnrichedEvent(transactionEvent, context);
|
|
132
204
|
};
|
|
133
|
-
EventFactory.prototype.
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
data: data,
|
|
139
|
-
to: to,
|
|
140
|
-
value: value,
|
|
141
|
-
transactionHash: transactionHash,
|
|
205
|
+
EventFactory.prototype.generateTrackEvent = function (event, properties, context) {
|
|
206
|
+
var transactionEvent = {
|
|
207
|
+
properties: properties,
|
|
208
|
+
event: event,
|
|
209
|
+
type: "track",
|
|
142
210
|
};
|
|
211
|
+
return this.getEnrichedEvent(transactionEvent, context);
|
|
143
212
|
};
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
eventSpecificPayload = this.generateTransactionEvent(event.status, event.chainId, event.address, event.data, event.to, event.value, event.transactionHash);
|
|
213
|
+
// Returns an event with type, context, properties, and common properties
|
|
214
|
+
EventFactory.prototype.create = function (event, address, userId) {
|
|
215
|
+
var formoEvent = {};
|
|
216
|
+
formoEvent.address = address || null;
|
|
217
|
+
formoEvent.user_id = userId || null;
|
|
218
|
+
switch (event.type) {
|
|
219
|
+
case "page":
|
|
220
|
+
formoEvent = this.generatePageEvent(event.category, event.name, event.properties, event.context);
|
|
221
|
+
break;
|
|
222
|
+
case "detect":
|
|
223
|
+
formoEvent = this.generateDetectWalletEvent(event.providerName, event.rdns, event.properties, event.context);
|
|
224
|
+
break;
|
|
225
|
+
case "identify":
|
|
226
|
+
formoEvent = this.generateIdentifyEvent(event.providerName, event.rdns, event.address, event.userId, event.properties, event.context);
|
|
227
|
+
break;
|
|
228
|
+
case "chain":
|
|
229
|
+
formoEvent = this.generateChainChangedEvent(event.chainId, event.address, event.properties, event.context);
|
|
230
|
+
break;
|
|
231
|
+
case "connect":
|
|
232
|
+
formoEvent = this.generateConnectEvent(event.chainId, event.address, event.properties, event.context);
|
|
233
|
+
break;
|
|
234
|
+
case "disconnect":
|
|
235
|
+
formoEvent = this.generateDisconnectEvent(event.chainId, event.address, event.properties, event.context);
|
|
236
|
+
break;
|
|
237
|
+
case "signature":
|
|
238
|
+
formoEvent = this.generateSignatureEvent(event.status, event.chainId, event.address, event.message, event.signatureHash, event.properties, event.context);
|
|
239
|
+
break;
|
|
240
|
+
case "transaction":
|
|
241
|
+
formoEvent = this.generateTransactionEvent(event.status, event.chainId, event.address, event.data, event.to, event.value, event.transactionHash, event.properties, event.context);
|
|
242
|
+
break;
|
|
243
|
+
case "track":
|
|
244
|
+
default:
|
|
245
|
+
formoEvent = this.generateTrackEvent(event.event, event.properties, event.context);
|
|
246
|
+
break;
|
|
179
247
|
}
|
|
180
|
-
return
|
|
248
|
+
return formoEvent;
|
|
181
249
|
};
|
|
182
250
|
return EventFactory;
|
|
183
251
|
}());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventFactory.js","sourceRoot":"","sources":["../../../../../src/lib/event/EventFactory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EventFactory.js","sourceRoot":"","sources":["../../../../../src/lib/event/EventFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Address, APIEvent } from "../../types";
|
|
2
|
+
import { IEventQueue } from "../queue";
|
|
3
|
+
import { IEventFactory, IEventManager } from "./type";
|
|
4
|
+
/**
|
|
5
|
+
* A service to generate valid event payloads and queue them for processing
|
|
6
|
+
*/
|
|
7
|
+
declare class EventManager implements IEventManager {
|
|
8
|
+
eventQueue: IEventQueue;
|
|
9
|
+
eventFactory: IEventFactory;
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* @param eventQueue Event queue instance
|
|
13
|
+
*/
|
|
14
|
+
constructor(eventQueue: IEventQueue);
|
|
15
|
+
/**
|
|
16
|
+
* Consumes a new incoming event
|
|
17
|
+
* @param event Incoming event data
|
|
18
|
+
*/
|
|
19
|
+
addEvent(event: APIEvent, address?: Address, userId?: string): void;
|
|
20
|
+
}
|
|
21
|
+
export { EventManager };
|
|
22
|
+
//# sourceMappingURL=EventManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventManager.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/EventManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEtD;;GAEG;AACH,cAAM,YAAa,YAAW,aAAa;IACzC,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,aAAa,CAAC;IAE5B;;;OAGG;gBACS,UAAU,EAAE,WAAW;IAKnC;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;CAUpE;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import { logger } from "../logger";
|
|
13
|
+
import { EventFactory } from "./EventFactory";
|
|
14
|
+
/**
|
|
15
|
+
* A service to generate valid event payloads and queue them for processing
|
|
16
|
+
*/
|
|
17
|
+
var EventManager = /** @class */ (function () {
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @param eventQueue Event queue instance
|
|
21
|
+
*/
|
|
22
|
+
function EventManager(eventQueue) {
|
|
23
|
+
this.eventQueue = eventQueue;
|
|
24
|
+
this.eventFactory = new EventFactory();
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Consumes a new incoming event
|
|
28
|
+
* @param event Incoming event data
|
|
29
|
+
*/
|
|
30
|
+
EventManager.prototype.addEvent = function (event, address, userId) {
|
|
31
|
+
var callback = event.callback, _event = __rest(event, ["callback"]);
|
|
32
|
+
var formoEvent = this.eventFactory.create(_event, address, userId);
|
|
33
|
+
this.eventQueue.enqueue(formoEvent, function (err, _, data) {
|
|
34
|
+
if (err) {
|
|
35
|
+
logger.error("Error sending events:", err);
|
|
36
|
+
}
|
|
37
|
+
else
|
|
38
|
+
logger.info("Events sent successfully: ".concat(data.length, " events"));
|
|
39
|
+
callback === null || callback === void 0 ? void 0 : callback(err, _, data);
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
return EventManager;
|
|
43
|
+
}());
|
|
44
|
+
export { EventManager };
|
|
45
|
+
//# sourceMappingURL=EventManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventManager.js","sourceRoot":"","sources":["../../../../../src/lib/event/EventManager.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;GAEG;AACH;IAIE;;;OAGG;IACH,sBAAY,UAAuB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,+BAAQ,GAAR,UAAS,KAAe,EAAE,OAAiB,EAAE,MAAe;QAClD,IAAA,QAAQ,GAAgB,KAAK,SAArB,EAAK,MAAM,UAAK,KAAK,EAA/B,YAAuB,CAAF,CAAW;QACtC,IAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,UAAC,GAAG,EAAE,CAAC,EAAE,IAAI;YAC/C,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC;;gBAAM,MAAM,CAAC,IAAI,CAAC,oCAA6B,IAAI,CAAC,MAAM,YAAS,CAAC,CAAC;YACtE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IACH,mBAAC;AAAD,CAAC,AA3BD,IA2BC;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/constants.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,OAAO,QAAQ,CAAC;AACtB,QAAA,MAAM,OAAO,MAAM,CAAC;AAEpB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/lib/event/constants.ts"],"names":[],"mappings":"AAAA,IAAM,OAAO,GAAG,KAAK,CAAC;AACtB,IAAM,OAAO,GAAG,GAAG,CAAC;AAEpB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/event/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { Address, APIEvent, IFormoEvent } from "../../types";
|
|
2
|
+
export interface IEventManager {
|
|
3
|
+
addEvent(event: APIEvent, address?: Address, userId?: string): void;
|
|
4
|
+
}
|
|
3
5
|
export interface IEventFactory {
|
|
4
|
-
create(
|
|
6
|
+
create(event: APIEvent, address?: Address, userId?: string): IFormoEvent;
|
|
5
7
|
}
|
|
6
8
|
//# sourceMappingURL=type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrE;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;CAC1E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/lib/event/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,QAAA,MAAM,mBAAmB,QAAO,WAO/B,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LOCAL_ANONYMOUS_ID_KEY } from "../../constants";
|
|
2
|
+
import { generateNativeUUID } from "../../utils";
|
|
3
|
+
import { local } from "../storage";
|
|
4
|
+
var generateAnonymousId = function () {
|
|
5
|
+
var storedAnonymousId = local.get(LOCAL_ANONYMOUS_ID_KEY);
|
|
6
|
+
if (storedAnonymousId && typeof storedAnonymousId === "string")
|
|
7
|
+
return storedAnonymousId;
|
|
8
|
+
var newAnonymousId = generateNativeUUID();
|
|
9
|
+
local.set(LOCAL_ANONYMOUS_ID_KEY, newAnonymousId);
|
|
10
|
+
return newAnonymousId;
|
|
11
|
+
};
|
|
12
|
+
export { generateAnonymousId };
|
|
13
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/lib/event/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,IAAM,mBAAmB,GAAG;IAC1B,IAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC5D,IAAI,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ;QAC5D,OAAO,iBAAgC,CAAC;IAC1C,IAAM,cAAc,GAAG,kBAAkB,EAAE,CAAC;IAC5C,KAAK,CAAC,GAAG,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;IAClD,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -23,6 +23,7 @@ export declare class EventQueue implements IEventQueue {
|
|
|
23
23
|
private pendingFlush;
|
|
24
24
|
private payloadHashes;
|
|
25
25
|
constructor(writeKey: string, options: Options);
|
|
26
|
+
private generateMessageId;
|
|
26
27
|
enqueue(event: IFormoEvent, callback?: (...args: any) => void): Promise<void>;
|
|
27
28
|
flush(callback?: (...args: any) => void): Promise<any>;
|
|
28
29
|
private isErrorRetryable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventQueue.d.ts","sourceRoot":"","sources":["../../../../../src/lib/queue/EventQueue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAsB,MAAM,aAAa,CAAC;AAW9D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"EventQueue.d.ts","sourceRoot":"","sources":["../../../../../src/lib/queue/EventQueue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAsB,MAAM,aAAa,CAAC;AAW9D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAYrC,KAAK,OAAO,GAAG;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAkBF,qBAAa,UAAW,YAAW,WAAW;IAC5C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,aAAa,CAA0B;gBAEnC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;YAuChC,iBAAiB;IAOzB,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI;IA4C7D,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI;IAoE7C,OAAO,CAAC,gBAAgB;YAiBV,WAAW;IAQzB,OAAO,CAAC,WAAW,CAyDjB;CACH"}
|