aesirx-analytics 2.1.1 → 2.2.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.
- package/README.md +4 -4
- package/dist/{Consent-MKSHHJAP.js → Consent-3FMR7JQE.js} +2006 -355
- package/dist/analytics.js +3600 -434
- package/dist/{chunk-OGDZQCIU.js → chunk-ZYCOHH2R.js} +2 -1
- package/dist/index.js +53 -25
- package/package.json +21 -14
@@ -144,6 +144,7 @@ function warn() {
|
|
144
144
|
}
|
145
145
|
if (typeof args[0] === "string")
|
146
146
|
args[0] = `react-i18next:: ${args[0]}`;
|
147
|
+
console.warn(...args);
|
147
148
|
}
|
148
149
|
}
|
149
150
|
var alreadyWarned = {};
|
@@ -473,7 +474,7 @@ var common_default2 = {
|
|
473
474
|
txt_revoke_consent: "Revoke Consent",
|
474
475
|
txt_yes_i_consent: "Yes, I consent",
|
475
476
|
txt_reject_consent: "Reject Consent",
|
476
|
-
txt_please_connect: "Please connect your
|
477
|
+
txt_please_connect: "Please connect your Web3 wallet",
|
477
478
|
txt_please_sign: "Please sign the message on your wallet twice and wait for it to be saved.",
|
478
479
|
txt_saving: "Saving...",
|
479
480
|
txt_please_connect_your_wallet: "Please connect to your wallet",
|
package/dist/index.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import {
|
2
2
|
AnalyticsContext,
|
3
3
|
AnalyticsContextProvider_default
|
4
|
-
} from "./chunk-
|
4
|
+
} from "./chunk-ZYCOHH2R.js";
|
5
5
|
|
6
6
|
// src/AnalyticsNext/index.tsx
|
7
7
|
import React2 from "react";
|
@@ -41,6 +41,9 @@ var createRequest = (endpoint, task) => {
|
|
41
41
|
var createRequestV2 = (endpoint, task) => {
|
42
42
|
return `${endpoint}/visitor/v2/${task}`;
|
43
43
|
};
|
44
|
+
var rememberFlow = (endpoint, flow) => {
|
45
|
+
return `${endpoint}/remember_flow/${flow}`;
|
46
|
+
};
|
44
47
|
var startTracker = async (endpoint, url, referer, user_agent) => {
|
45
48
|
const allow = sessionStorage.getItem("aesirx-analytics-allow");
|
46
49
|
if (allow === "0") {
|
@@ -72,8 +75,8 @@ var startTracker = async (endpoint, url, referer, user_agent) => {
|
|
72
75
|
return await trackerService(createRequestV2(endpoint, "start"), {
|
73
76
|
fingerprint,
|
74
77
|
url,
|
75
|
-
...referer && referer !== url && {
|
76
|
-
referer
|
78
|
+
...referer && (referer !== url || document2.referrer) && {
|
79
|
+
referer: referer !== url ? referer : document2.referrer
|
77
80
|
},
|
78
81
|
user_agent,
|
79
82
|
ip,
|
@@ -88,8 +91,16 @@ var startTracker = async (endpoint, url, referer, user_agent) => {
|
|
88
91
|
}
|
89
92
|
});
|
90
93
|
});
|
94
|
+
if (window["aesirxTrackEcommerce"] === "true" && sessionStorage.getItem("aesirx-analytics-flow") !== (await responseStart)?.flow_uuid) {
|
95
|
+
sessionStorage.setItem("aesirx-analytics-flow", (await responseStart)?.flow_uuid);
|
96
|
+
await trackerService(
|
97
|
+
rememberFlow(window.location.origin, (await responseStart)?.flow_uuid),
|
98
|
+
{}
|
99
|
+
);
|
100
|
+
}
|
91
101
|
return responseStart;
|
92
102
|
} catch (error) {
|
103
|
+
console.error("Analytics Error: ", error);
|
93
104
|
}
|
94
105
|
};
|
95
106
|
var trackEvent = async (endpoint, referer, data) => {
|
@@ -108,26 +119,30 @@ var trackEvent = async (endpoint, referer, data) => {
|
|
108
119
|
const device = browser?.platform?.model ?? browser?.platform?.type;
|
109
120
|
const ip = "";
|
110
121
|
const fpPromise = FingerprintJS.load({ monitoring: false });
|
111
|
-
const
|
122
|
+
const responseStart = fpPromise.then((fp) => fp.get()).then(async (result) => {
|
112
123
|
const fingerprint = result.visitorId;
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
124
|
+
const headers = { type: "application/json" };
|
125
|
+
const blobData = new Blob(
|
126
|
+
[
|
127
|
+
JSON.stringify({
|
128
|
+
fingerprint,
|
129
|
+
url,
|
130
|
+
...referer !== "/" && referer && {
|
131
|
+
referer
|
132
|
+
},
|
133
|
+
user_agent,
|
134
|
+
ip,
|
135
|
+
browser_name,
|
136
|
+
browser_version,
|
137
|
+
lang,
|
138
|
+
device,
|
139
|
+
...data
|
140
|
+
})
|
141
|
+
],
|
142
|
+
headers
|
143
|
+
);
|
144
|
+
return navigator.sendBeacon(createRequestV2(endpoint, "start"), blobData);
|
127
145
|
});
|
128
|
-
const headers = { type: "application/json" };
|
129
|
-
const blob = new Blob([JSON.stringify(body)], headers);
|
130
|
-
const responseStart = navigator.sendBeacon(createRequestV2(endpoint, "start"), blob);
|
131
146
|
return responseStart;
|
132
147
|
};
|
133
148
|
var endTracker = (endPoint, event_uuid, visitor_uuid) => {
|
@@ -180,6 +195,7 @@ var AnalyticsHandle = ({ router, children }) => {
|
|
180
195
|
useEffect(() => {
|
181
196
|
const init = async () => {
|
182
197
|
if (!AnalyticsStore.visitor_uuid) {
|
198
|
+
setPrevRoute(router.asPath);
|
183
199
|
await handleStartTracker(router.asPath);
|
184
200
|
}
|
185
201
|
};
|
@@ -217,9 +233,15 @@ var handle_default = AnalyticsHandle;
|
|
217
233
|
|
218
234
|
// src/AnalyticsNext/index.tsx
|
219
235
|
import dynamic from "next/dynamic";
|
220
|
-
var ConsentComponent = dynamic(() => import("./Consent-
|
236
|
+
var ConsentComponent = dynamic(() => import("./Consent-3FMR7JQE.js"), { ssr: false });
|
221
237
|
var AnalyticsNext = ({ router, children }) => {
|
222
|
-
return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(AnalyticsContextProvider_default, null, /* @__PURE__ */ React2.createElement(handle_default, { router }, children, process.env.NEXT_PUBLIC_DISABLE_ANALYTICS_CONSENT !== "true" && /* @__PURE__ */ React2.createElement(
|
238
|
+
return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(AnalyticsContextProvider_default, null, /* @__PURE__ */ React2.createElement(handle_default, { router }, children, process.env.NEXT_PUBLIC_DISABLE_ANALYTICS_CONSENT !== "true" && /* @__PURE__ */ React2.createElement(
|
239
|
+
ConsentComponent,
|
240
|
+
{
|
241
|
+
endpoint: process.env.NEXT_PUBLIC_ENDPOINT_ANALYTICS_URL,
|
242
|
+
aesirXEndpoint: process.env.NEXT_PUBLIC_ENDPOINT_URL ?? "https://api.aesirx.io"
|
243
|
+
}
|
244
|
+
))));
|
223
245
|
};
|
224
246
|
var AnalyticsNext_default = AnalyticsNext;
|
225
247
|
|
@@ -263,9 +285,15 @@ var AnalyticsHandle2 = ({ location, history, children }) => {
|
|
263
285
|
var handle_default2 = AnalyticsHandle2;
|
264
286
|
|
265
287
|
// src/AnalyticsReact/index.tsx
|
266
|
-
var ConsentComponent2 = React4.lazy(() => import("./Consent-
|
288
|
+
var ConsentComponent2 = React4.lazy(() => import("./Consent-3FMR7JQE.js"));
|
267
289
|
var AnalyticsReact = ({ location, history, children }) => {
|
268
|
-
return /* @__PURE__ */ React4.createElement(AnalyticsContextProvider_default, null, /* @__PURE__ */ React4.createElement(handle_default2, { location, history }, children, process.env.REACT_APP_DISABLE_ANALYTICS_CONSENT !== "true" && /* @__PURE__ */ React4.createElement(Suspense, { fallback: /* @__PURE__ */ React4.createElement(React4.Fragment, null) }, /* @__PURE__ */ React4.createElement(
|
290
|
+
return /* @__PURE__ */ React4.createElement(AnalyticsContextProvider_default, null, /* @__PURE__ */ React4.createElement(handle_default2, { location, history }, children, process.env.REACT_APP_DISABLE_ANALYTICS_CONSENT !== "true" && /* @__PURE__ */ React4.createElement(Suspense, { fallback: /* @__PURE__ */ React4.createElement(React4.Fragment, null) }, /* @__PURE__ */ React4.createElement(
|
291
|
+
ConsentComponent2,
|
292
|
+
{
|
293
|
+
endpoint: process.env.REACT_APP_ENDPOINT_ANALYTICS_URL,
|
294
|
+
aesirXEndpoint: process.env.REACT_APP_ENDPOINT_URL ?? "https://api.aesirx.io"
|
295
|
+
}
|
296
|
+
))));
|
269
297
|
};
|
270
298
|
var AnalyticsReact_default = AnalyticsReact;
|
271
299
|
export {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "aesirx-analytics",
|
3
|
-
"version": "2.
|
3
|
+
"version": "2.2.1",
|
4
4
|
"license": "GPL-3.0-only",
|
5
5
|
"author": "AesirX",
|
6
6
|
"repository": "https://gitlab.redweb.dk/aesirx/analytics",
|
@@ -12,32 +12,36 @@
|
|
12
12
|
"@concordium/browser-wallet-api-helpers": "^2",
|
13
13
|
"@concordium/react-components": "^0.3.0",
|
14
14
|
"@concordium/web-sdk": "^6",
|
15
|
-
"@fingerprintjs/fingerprintjs": "
|
16
|
-
"
|
15
|
+
"@fingerprintjs/fingerprintjs": "3.4.2",
|
16
|
+
"@web3modal/ethereum": "^2.7.0",
|
17
|
+
"@web3modal/react": "^2.7.0",
|
18
|
+
"aesirx-sso": "^1.4.1",
|
17
19
|
"axios": "^1.4.0",
|
18
|
-
"bootstrap": "^5.3.
|
20
|
+
"bootstrap": "^5.3.2",
|
19
21
|
"bowser": "^2.11.0",
|
20
22
|
"buffer": "^6.0.3",
|
23
|
+
"ethers": "^6.6.5",
|
21
24
|
"i18next": "^23.4.4",
|
22
25
|
"i18next-browser-languagedetector": "^7.1.0",
|
23
|
-
"next": "^13.4
|
26
|
+
"next": "^13.5.4",
|
24
27
|
"query-string": "^7.1.1",
|
25
28
|
"react": "^18.2.0",
|
26
29
|
"react-bootstrap": "^2.8.0",
|
27
30
|
"react-content-loader": "^6.2.1",
|
28
31
|
"react-device-detect": "^2.2.3",
|
29
32
|
"react-dom": "18",
|
30
|
-
"react-toastify": "^9.1.3"
|
33
|
+
"react-toastify": "^9.1.3",
|
34
|
+
"wagmi": "^1.3.2"
|
31
35
|
},
|
32
36
|
"scripts": {
|
33
|
-
"dev": "tsup --watch
|
37
|
+
"dev": "NODE_ENV=development tsup --watch",
|
34
38
|
"build": "tsup",
|
35
39
|
"lint": "eslint --fix \"src/**/\"",
|
36
40
|
"lint:check": "eslint \"src/**/\"",
|
37
41
|
"lint:nowarns": "eslint --quiet \"src/**/\"",
|
38
42
|
"prepublishOnly": "yarn run build",
|
39
|
-
"format:check": "prettier --check
|
40
|
-
"format:write": "prettier --write
|
43
|
+
"format:check": "prettier --check \"./src/**/*.{js,jsx,ts,tsx}\"",
|
44
|
+
"format:write": "prettier --write \"./src/**/*.{js,jsx,ts,tsx}\"",
|
41
45
|
"test": "jest"
|
42
46
|
},
|
43
47
|
"eslintConfig": {
|
@@ -60,10 +64,10 @@
|
|
60
64
|
},
|
61
65
|
"devDependencies": {
|
62
66
|
"@babel/preset-env": "^7.21.5",
|
63
|
-
"@babel/preset-typescript": "^7.
|
64
|
-
"@jest/globals": "^29.
|
67
|
+
"@babel/preset-typescript": "^7.23.0",
|
68
|
+
"@jest/globals": "^29.7.0",
|
65
69
|
"@types/jest": "^29.5.0",
|
66
|
-
"@types/node": "^20.
|
70
|
+
"@types/node": "^20.8.0",
|
67
71
|
"@types/react": "^18.2.21",
|
68
72
|
"@types/react-dom": "^18.2.4",
|
69
73
|
"@typescript-eslint/eslint-plugin": "^5.57.0",
|
@@ -71,7 +75,7 @@
|
|
71
75
|
"@walletconnect/types": "^2.10.0",
|
72
76
|
"dotenv": "^16.0.3",
|
73
77
|
"esbuild-plugin-inline-image": "^0.0.9",
|
74
|
-
"esbuild-sass-plugin": "^2.
|
78
|
+
"esbuild-sass-plugin": "^2.15.0",
|
75
79
|
"esbuild-scss-modules-plugin": "^1.1.1",
|
76
80
|
"eslint": "^8.48.0",
|
77
81
|
"eslint-plugin-react": "^7.31.10",
|
@@ -86,5 +90,8 @@
|
|
86
90
|
},
|
87
91
|
"files": [
|
88
92
|
"dist"
|
89
|
-
]
|
93
|
+
],
|
94
|
+
"resolutions": {
|
95
|
+
"postcss": "^8"
|
96
|
+
}
|
90
97
|
}
|