swetrix 3.2.1 → 3.4.0
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/esnext/Lib.d.ts +1 -1
- package/dist/esnext/Lib.js +15 -8
- package/dist/esnext/Lib.js.map +1 -1
- package/dist/esnext/index.d.ts +1 -1
- package/dist/esnext/index.js +2 -2
- package/dist/esnext/index.js.map +1 -1
- package/dist/esnext/utils.d.ts +2 -0
- package/dist/esnext/utils.js +4 -0
- package/dist/esnext/utils.js.map +1 -1
- package/dist/swetrix.cjs.js +92 -15
- package/dist/swetrix.es5.js +92 -15
- package/dist/swetrix.js +1 -1
- package/dist/swetrix.orig.js +92 -15
- package/package.json +1 -1
- package/src/Lib.ts +16 -7
- package/src/index.ts +2 -2
- package/src/utils.ts +6 -0
package/dist/esnext/Lib.d.ts
CHANGED
|
@@ -140,7 +140,7 @@ export declare class Lib {
|
|
|
140
140
|
captureError(event: ErrorEvent): void;
|
|
141
141
|
trackErrors(options?: ErrorOptions): ErrorActions;
|
|
142
142
|
submitError(payload: IErrorEventPayload, evokeCallback?: boolean): void;
|
|
143
|
-
track(event: TrackEventOptions): void
|
|
143
|
+
track(event: TrackEventOptions): Promise<void>;
|
|
144
144
|
trackPageViews(options?: PageViewsOptions): PageActions;
|
|
145
145
|
getPerformanceStats(): IPerfPayload | {};
|
|
146
146
|
private heartbeat;
|
package/dist/esnext/Lib.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isInBrowser, isLocalhost, isAutomated, getLocale, getTimezone, getReferrer, getUTMCampaign, getUTMMedium, getUTMSource, getPath, } from './utils';
|
|
1
|
+
import { isInBrowser, isLocalhost, isAutomated, getLocale, getTimezone, getReferrer, getUTMCampaign, getUTMMedium, getUTMSource, getUTMTerm, getUTMContent, getPath, } from './utils';
|
|
2
2
|
export const defaultActions = {
|
|
3
3
|
stop() { },
|
|
4
4
|
};
|
|
@@ -75,7 +75,7 @@ export class Lib {
|
|
|
75
75
|
Object.assign(errorPayload, privateData);
|
|
76
76
|
this.sendRequest('error', errorPayload);
|
|
77
77
|
}
|
|
78
|
-
track(event) {
|
|
78
|
+
async track(event) {
|
|
79
79
|
if (!this.canTrack()) {
|
|
80
80
|
return;
|
|
81
81
|
}
|
|
@@ -89,8 +89,10 @@ export class Lib {
|
|
|
89
89
|
so: getUTMSource(),
|
|
90
90
|
me: getUTMMedium(),
|
|
91
91
|
ca: getUTMCampaign(),
|
|
92
|
+
te: getUTMTerm(),
|
|
93
|
+
co: getUTMContent(),
|
|
92
94
|
};
|
|
93
|
-
this.sendRequest('custom', data);
|
|
95
|
+
await this.sendRequest('custom', data);
|
|
94
96
|
}
|
|
95
97
|
trackPageViews(options) {
|
|
96
98
|
if (!this.canTrack()) {
|
|
@@ -219,6 +221,8 @@ export class Lib {
|
|
|
219
221
|
so: getUTMSource(),
|
|
220
222
|
me: getUTMMedium(),
|
|
221
223
|
ca: getUTMCampaign(),
|
|
224
|
+
te: getUTMTerm(),
|
|
225
|
+
co: getUTMContent(),
|
|
222
226
|
prev,
|
|
223
227
|
...payload,
|
|
224
228
|
};
|
|
@@ -244,12 +248,15 @@ export class Lib {
|
|
|
244
248
|
}
|
|
245
249
|
return true;
|
|
246
250
|
}
|
|
247
|
-
sendRequest(path, body) {
|
|
251
|
+
async sendRequest(path, body) {
|
|
248
252
|
const host = this.options?.apiURL || DEFAULT_API_HOST;
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
+
await fetch(`${host}/${path}`, {
|
|
254
|
+
method: 'POST',
|
|
255
|
+
headers: {
|
|
256
|
+
'Content-Type': 'application/json',
|
|
257
|
+
},
|
|
258
|
+
body: JSON.stringify(body),
|
|
259
|
+
});
|
|
253
260
|
}
|
|
254
261
|
}
|
|
255
262
|
//# sourceMappingURL=Lib.js.map
|
package/dist/esnext/Lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lib.js","sourceRoot":"","sources":["../../src/Lib.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Lib.js","sourceRoot":"","sources":["../../src/Lib.ts"],"names":[],"mappings":"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"}
|
package/dist/esnext/index.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export declare function init(pid: string, options?: LibOptions): Lib;
|
|
|
15
15
|
*
|
|
16
16
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
17
17
|
*/
|
|
18
|
-
export declare function track(event: TrackEventOptions): void
|
|
18
|
+
export declare function track(event: TrackEventOptions): Promise<void>;
|
|
19
19
|
/**
|
|
20
20
|
* With this function you are able to automatically track pageviews across your application.
|
|
21
21
|
*
|
package/dist/esnext/index.js
CHANGED
|
@@ -20,10 +20,10 @@ export function init(pid, options) {
|
|
|
20
20
|
*
|
|
21
21
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
22
22
|
*/
|
|
23
|
-
export function track(event) {
|
|
23
|
+
export async function track(event) {
|
|
24
24
|
if (!LIB_INSTANCE)
|
|
25
25
|
return;
|
|
26
|
-
LIB_INSTANCE.track(event);
|
|
26
|
+
await LIB_INSTANCE.track(event);
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* With this function you are able to automatically track pageviews across your application.
|
package/dist/esnext/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EAOH,cAAc,GAGf,MAAM,OAAO,CAAA;AAEd,MAAM,CAAC,IAAI,YAAY,GAAe,IAAI,CAAA;AAE1C;;;;;;GAMG;AACH,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,OAAoB;IACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAC,KAAwB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EAOH,cAAc,GAGf,MAAM,OAAO,CAAA;AAEd,MAAM,CAAC,IAAI,YAAY,GAAe,IAAI,CAAA;AAE1C;;;;;;GAMG;AACH,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,OAAoB;IACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,KAAwB;IAClD,IAAI,CAAC,YAAY;QAAE,OAAM;IAEzB,MAAM,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACjC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,OAA0B;IACnD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,cAAc,CAAC,CAAA;YACvB,OAAM;QACR,CAAC;QAED,8GAA8G;QAC9G,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YAC1E,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;gBACnC,aAAa;gBACb,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;YAC/C,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,OAAsB;IAChD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,OAAO,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,OAA2B;IACpD,IAAI,CAAC,YAAY;QAAE,OAAM;IAEzB,YAAY,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,IAAa,EAAE,MAAgB;IACvE,IAAI,CAAC,YAAY;QAAE,OAAM;IAEzB,YAAY,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;AAC9E,CAAC;AAOD,MAAM,UAAU,QAAQ,CAAC,OAAyB;IAChD,IAAI,CAAC,YAAY;QAAE,OAAM;IAEzB,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;AAC3E,CAAC"}
|
package/dist/esnext/utils.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export declare const getReferrer: () => string | undefined;
|
|
|
11
11
|
export declare const getUTMSource: () => string | undefined;
|
|
12
12
|
export declare const getUTMMedium: () => string | undefined;
|
|
13
13
|
export declare const getUTMCampaign: () => string | undefined;
|
|
14
|
+
export declare const getUTMTerm: () => string | undefined;
|
|
15
|
+
export declare const getUTMContent: () => string | undefined;
|
|
14
16
|
/**
|
|
15
17
|
* Function used to track the current page (path) of the application.
|
|
16
18
|
* Will work in cases where the path looks like:
|
package/dist/esnext/utils.js
CHANGED
|
@@ -5,6 +5,8 @@ const findInSearch = (exp) => {
|
|
|
5
5
|
const utmSourceRegex = /[?&](ref|source|utm_source)=([^?&]+)/;
|
|
6
6
|
const utmCampaignRegex = /[?&](utm_campaign)=([^?&]+)/;
|
|
7
7
|
const utmMediumRegex = /[?&](utm_medium)=([^?&]+)/;
|
|
8
|
+
const utmTermRegex = /[?&](utm_term)=([^?&]+)/;
|
|
9
|
+
const utmContentRegex = /[?&](utm_content)=([^?&]+)/;
|
|
8
10
|
export const isInBrowser = () => {
|
|
9
11
|
return typeof window !== 'undefined';
|
|
10
12
|
};
|
|
@@ -31,6 +33,8 @@ export const getReferrer = () => {
|
|
|
31
33
|
export const getUTMSource = () => findInSearch(utmSourceRegex);
|
|
32
34
|
export const getUTMMedium = () => findInSearch(utmMediumRegex);
|
|
33
35
|
export const getUTMCampaign = () => findInSearch(utmCampaignRegex);
|
|
36
|
+
export const getUTMTerm = () => findInSearch(utmTermRegex);
|
|
37
|
+
export const getUTMContent = () => findInSearch(utmContentRegex);
|
|
34
38
|
/**
|
|
35
39
|
* Function used to track the current page (path) of the application.
|
|
36
40
|
* Will work in cases where the path looks like:
|
package/dist/esnext/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAKA,MAAM,YAAY,GAAG,CAAC,GAAW,EAAsB,EAAE;IACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAA;AACrC,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,sCAAsC,CAAA;AAC7D,MAAM,gBAAgB,GAAG,6BAA6B,CAAA;AACtD,MAAM,cAAc,GAAG,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/swetrix.cjs.js
CHANGED
|
@@ -28,6 +28,44 @@ var __assign = function() {
|
|
|
28
28
|
return __assign.apply(this, arguments);
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
+
function __awaiter(thisArg, _arguments, P, generator) {
|
|
32
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
33
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
34
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
35
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
36
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
37
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function __generator(thisArg, body) {
|
|
42
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
43
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
44
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
45
|
+
function step(op) {
|
|
46
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
47
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
48
|
+
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;
|
|
49
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
50
|
+
switch (op[0]) {
|
|
51
|
+
case 0: case 1: t = op; break;
|
|
52
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
53
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
54
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
55
|
+
default:
|
|
56
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
57
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
58
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
59
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
60
|
+
if (t[2]) _.ops.pop();
|
|
61
|
+
_.trys.pop(); continue;
|
|
62
|
+
}
|
|
63
|
+
op = body.call(thisArg, _);
|
|
64
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
65
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
31
69
|
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
32
70
|
var e = new Error(message);
|
|
33
71
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
@@ -40,6 +78,8 @@ var findInSearch = function (exp) {
|
|
|
40
78
|
var utmSourceRegex = /[?&](ref|source|utm_source)=([^?&]+)/;
|
|
41
79
|
var utmCampaignRegex = /[?&](utm_campaign)=([^?&]+)/;
|
|
42
80
|
var utmMediumRegex = /[?&](utm_medium)=([^?&]+)/;
|
|
81
|
+
var utmTermRegex = /[?&](utm_term)=([^?&]+)/;
|
|
82
|
+
var utmContentRegex = /[?&](utm_content)=([^?&]+)/;
|
|
43
83
|
var isInBrowser = function () {
|
|
44
84
|
return typeof window !== 'undefined';
|
|
45
85
|
};
|
|
@@ -66,6 +106,8 @@ var getReferrer = function () {
|
|
|
66
106
|
var getUTMSource = function () { return findInSearch(utmSourceRegex); };
|
|
67
107
|
var getUTMMedium = function () { return findInSearch(utmMediumRegex); };
|
|
68
108
|
var getUTMCampaign = function () { return findInSearch(utmCampaignRegex); };
|
|
109
|
+
var getUTMTerm = function () { return findInSearch(utmTermRegex); };
|
|
110
|
+
var getUTMContent = function () { return findInSearch(utmContentRegex); };
|
|
69
111
|
/**
|
|
70
112
|
* Function used to track the current page (path) of the application.
|
|
71
113
|
* Will work in cases where the path looks like:
|
|
@@ -170,11 +212,22 @@ var Lib = /** @class */ (function () {
|
|
|
170
212
|
this.sendRequest('error', errorPayload);
|
|
171
213
|
};
|
|
172
214
|
Lib.prototype.track = function (event) {
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
215
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
216
|
+
var data;
|
|
217
|
+
return __generator(this, function (_a) {
|
|
218
|
+
switch (_a.label) {
|
|
219
|
+
case 0:
|
|
220
|
+
if (!this.canTrack()) {
|
|
221
|
+
return [2 /*return*/];
|
|
222
|
+
}
|
|
223
|
+
data = __assign(__assign({}, event), { pid: this.projectID, pg: this.activePage, lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent() });
|
|
224
|
+
return [4 /*yield*/, this.sendRequest('custom', data)];
|
|
225
|
+
case 1:
|
|
226
|
+
_a.sent();
|
|
227
|
+
return [2 /*return*/];
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
});
|
|
178
231
|
};
|
|
179
232
|
Lib.prototype.trackPageViews = function (options) {
|
|
180
233
|
if (!this.canTrack()) {
|
|
@@ -301,7 +354,7 @@ var Lib = /** @class */ (function () {
|
|
|
301
354
|
perf: perf,
|
|
302
355
|
unique: unique,
|
|
303
356
|
};
|
|
304
|
-
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), prev: prev }, payload);
|
|
357
|
+
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent(), prev: prev }, payload);
|
|
305
358
|
if (evokeCallback && ((_a = this.pageViewsOptions) === null || _a === void 0 ? void 0 : _a.callback)) {
|
|
306
359
|
var callbackResult = this.pageViewsOptions.callback(pvPayload);
|
|
307
360
|
if (callbackResult === false) {
|
|
@@ -326,12 +379,26 @@ var Lib = /** @class */ (function () {
|
|
|
326
379
|
return true;
|
|
327
380
|
};
|
|
328
381
|
Lib.prototype.sendRequest = function (path, body) {
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
382
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
383
|
+
var host;
|
|
384
|
+
var _a;
|
|
385
|
+
return __generator(this, function (_b) {
|
|
386
|
+
switch (_b.label) {
|
|
387
|
+
case 0:
|
|
388
|
+
host = ((_a = this.options) === null || _a === void 0 ? void 0 : _a.apiURL) || DEFAULT_API_HOST;
|
|
389
|
+
return [4 /*yield*/, fetch("".concat(host, "/").concat(path), {
|
|
390
|
+
method: 'POST',
|
|
391
|
+
headers: {
|
|
392
|
+
'Content-Type': 'application/json',
|
|
393
|
+
},
|
|
394
|
+
body: JSON.stringify(body),
|
|
395
|
+
})];
|
|
396
|
+
case 1:
|
|
397
|
+
_b.sent();
|
|
398
|
+
return [2 /*return*/];
|
|
399
|
+
}
|
|
400
|
+
});
|
|
401
|
+
});
|
|
335
402
|
};
|
|
336
403
|
return Lib;
|
|
337
404
|
}());
|
|
@@ -358,9 +425,19 @@ function init(pid, options) {
|
|
|
358
425
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
359
426
|
*/
|
|
360
427
|
function track(event) {
|
|
361
|
-
|
|
362
|
-
return
|
|
363
|
-
|
|
428
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
429
|
+
return __generator(this, function (_a) {
|
|
430
|
+
switch (_a.label) {
|
|
431
|
+
case 0:
|
|
432
|
+
if (!exports.LIB_INSTANCE)
|
|
433
|
+
return [2 /*return*/];
|
|
434
|
+
return [4 /*yield*/, exports.LIB_INSTANCE.track(event)];
|
|
435
|
+
case 1:
|
|
436
|
+
_a.sent();
|
|
437
|
+
return [2 /*return*/];
|
|
438
|
+
}
|
|
439
|
+
});
|
|
440
|
+
});
|
|
364
441
|
}
|
|
365
442
|
/**
|
|
366
443
|
* With this function you are able to automatically track pageviews across your application.
|
package/dist/swetrix.es5.js
CHANGED
|
@@ -24,6 +24,44 @@ var __assign = function() {
|
|
|
24
24
|
return __assign.apply(this, arguments);
|
|
25
25
|
};
|
|
26
26
|
|
|
27
|
+
function __awaiter(thisArg, _arguments, P, generator) {
|
|
28
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
29
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
30
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
31
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
32
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
33
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function __generator(thisArg, body) {
|
|
38
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
39
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
40
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
41
|
+
function step(op) {
|
|
42
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
43
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
44
|
+
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;
|
|
45
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
46
|
+
switch (op[0]) {
|
|
47
|
+
case 0: case 1: t = op; break;
|
|
48
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
49
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
50
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
51
|
+
default:
|
|
52
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
53
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
54
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
55
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
56
|
+
if (t[2]) _.ops.pop();
|
|
57
|
+
_.trys.pop(); continue;
|
|
58
|
+
}
|
|
59
|
+
op = body.call(thisArg, _);
|
|
60
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
61
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
27
65
|
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
28
66
|
var e = new Error(message);
|
|
29
67
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
@@ -36,6 +74,8 @@ var findInSearch = function (exp) {
|
|
|
36
74
|
var utmSourceRegex = /[?&](ref|source|utm_source)=([^?&]+)/;
|
|
37
75
|
var utmCampaignRegex = /[?&](utm_campaign)=([^?&]+)/;
|
|
38
76
|
var utmMediumRegex = /[?&](utm_medium)=([^?&]+)/;
|
|
77
|
+
var utmTermRegex = /[?&](utm_term)=([^?&]+)/;
|
|
78
|
+
var utmContentRegex = /[?&](utm_content)=([^?&]+)/;
|
|
39
79
|
var isInBrowser = function () {
|
|
40
80
|
return typeof window !== 'undefined';
|
|
41
81
|
};
|
|
@@ -62,6 +102,8 @@ var getReferrer = function () {
|
|
|
62
102
|
var getUTMSource = function () { return findInSearch(utmSourceRegex); };
|
|
63
103
|
var getUTMMedium = function () { return findInSearch(utmMediumRegex); };
|
|
64
104
|
var getUTMCampaign = function () { return findInSearch(utmCampaignRegex); };
|
|
105
|
+
var getUTMTerm = function () { return findInSearch(utmTermRegex); };
|
|
106
|
+
var getUTMContent = function () { return findInSearch(utmContentRegex); };
|
|
65
107
|
/**
|
|
66
108
|
* Function used to track the current page (path) of the application.
|
|
67
109
|
* Will work in cases where the path looks like:
|
|
@@ -166,11 +208,22 @@ var Lib = /** @class */ (function () {
|
|
|
166
208
|
this.sendRequest('error', errorPayload);
|
|
167
209
|
};
|
|
168
210
|
Lib.prototype.track = function (event) {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
211
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
212
|
+
var data;
|
|
213
|
+
return __generator(this, function (_a) {
|
|
214
|
+
switch (_a.label) {
|
|
215
|
+
case 0:
|
|
216
|
+
if (!this.canTrack()) {
|
|
217
|
+
return [2 /*return*/];
|
|
218
|
+
}
|
|
219
|
+
data = __assign(__assign({}, event), { pid: this.projectID, pg: this.activePage, lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent() });
|
|
220
|
+
return [4 /*yield*/, this.sendRequest('custom', data)];
|
|
221
|
+
case 1:
|
|
222
|
+
_a.sent();
|
|
223
|
+
return [2 /*return*/];
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
});
|
|
174
227
|
};
|
|
175
228
|
Lib.prototype.trackPageViews = function (options) {
|
|
176
229
|
if (!this.canTrack()) {
|
|
@@ -297,7 +350,7 @@ var Lib = /** @class */ (function () {
|
|
|
297
350
|
perf: perf,
|
|
298
351
|
unique: unique,
|
|
299
352
|
};
|
|
300
|
-
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), prev: prev }, payload);
|
|
353
|
+
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent(), prev: prev }, payload);
|
|
301
354
|
if (evokeCallback && ((_a = this.pageViewsOptions) === null || _a === void 0 ? void 0 : _a.callback)) {
|
|
302
355
|
var callbackResult = this.pageViewsOptions.callback(pvPayload);
|
|
303
356
|
if (callbackResult === false) {
|
|
@@ -322,12 +375,26 @@ var Lib = /** @class */ (function () {
|
|
|
322
375
|
return true;
|
|
323
376
|
};
|
|
324
377
|
Lib.prototype.sendRequest = function (path, body) {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
378
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
379
|
+
var host;
|
|
380
|
+
var _a;
|
|
381
|
+
return __generator(this, function (_b) {
|
|
382
|
+
switch (_b.label) {
|
|
383
|
+
case 0:
|
|
384
|
+
host = ((_a = this.options) === null || _a === void 0 ? void 0 : _a.apiURL) || DEFAULT_API_HOST;
|
|
385
|
+
return [4 /*yield*/, fetch("".concat(host, "/").concat(path), {
|
|
386
|
+
method: 'POST',
|
|
387
|
+
headers: {
|
|
388
|
+
'Content-Type': 'application/json',
|
|
389
|
+
},
|
|
390
|
+
body: JSON.stringify(body),
|
|
391
|
+
})];
|
|
392
|
+
case 1:
|
|
393
|
+
_b.sent();
|
|
394
|
+
return [2 /*return*/];
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
});
|
|
331
398
|
};
|
|
332
399
|
return Lib;
|
|
333
400
|
}());
|
|
@@ -354,9 +421,19 @@ function init(pid, options) {
|
|
|
354
421
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
355
422
|
*/
|
|
356
423
|
function track(event) {
|
|
357
|
-
|
|
358
|
-
return
|
|
359
|
-
|
|
424
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
425
|
+
return __generator(this, function (_a) {
|
|
426
|
+
switch (_a.label) {
|
|
427
|
+
case 0:
|
|
428
|
+
if (!LIB_INSTANCE)
|
|
429
|
+
return [2 /*return*/];
|
|
430
|
+
return [4 /*yield*/, LIB_INSTANCE.track(event)];
|
|
431
|
+
case 1:
|
|
432
|
+
_a.sent();
|
|
433
|
+
return [2 /*return*/];
|
|
434
|
+
}
|
|
435
|
+
});
|
|
436
|
+
});
|
|
360
437
|
}
|
|
361
438
|
/**
|
|
362
439
|
* With this function you are able to automatically track pageviews across your application.
|
package/dist/swetrix.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).swetrix={})}(this,function(
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).swetrix={})}(this,function(r){"use strict";var i=function(){return(i=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function t(t,a,s,c){return new(s=s||Promise)(function(n,e){function r(t){try{i(c.next(t))}catch(t){e(t)}}function o(t){try{i(c.throw(t))}catch(t){e(t)}}function i(t){var e;t.done?n(t.value):((e=t.value)instanceof s?e:new s(function(t){t(e)})).then(r,o)}i((c=c.apply(t,a||[])).next())})}function o(r,o){var i,a,s,c={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},u={next:t(0),throw:t(1),return:t(2)};return"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function t(n){return function(t){var e=[n,t];if(i)throw new TypeError("Generator is already executing.");for(;c=u&&e[u=0]?0:c;)try{if(i=1,a&&(s=2&e[0]?a.return:e[0]?a.throw||((s=a.return)&&s.call(a),0):a.next)&&!(s=s.call(a,e[1])).done)return s;switch(a=0,(e=s?[2&e[0],s.value]:e)[0]){case 0:case 1:s=e;break;case 4:return c.label++,{value:e[1],done:!1};case 5:c.label++,a=e[1],e=[0];continue;case 7:e=c.ops.pop(),c.trys.pop();continue;default:if(!(s=0<(s=c.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){c=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3]))c.label=e[1];else if(6===e[0]&&c.label<s[1])c.label=s[1],s=e;else{if(!(s&&c.label<s[2])){s[2]&&c.ops.pop(),c.trys.pop();continue}c.label=s[2],c.ops.push(e)}}e=o.call(r,c)}catch(t){e=[6,t],a=0}finally{i=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}}}function e(t){return(t=location.search.match(t))&&t[2]||void 0}function a(){return void 0!==navigator.languages?navigator.languages[0]:navigator.language}function s(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){}}function c(){return document.referrer||void 0}function u(){return e(n)}function l(){return e(g)}function h(){return e(v)}function p(){return e(m)}function d(){return e(b)}function f(t){var e,n=location.pathname||"";return t.hash&&(n+=-1<(e=location.hash.indexOf("?"))?location.hash.substring(0,e):location.hash),t.search&&(e=location.hash.indexOf("?"),n+=location.search||(-1<e?location.hash.substring(e):"")),n}var n=/[?&](ref|source|utm_source)=([^?&]+)/,v=/[?&](utm_campaign)=([^?&]+)/,g=/[?&](utm_medium)=([^?&]+)/,m=/[?&](utm_term)=([^?&]+)/,b=/[?&](utm_content)=([^?&]+)/,w={stop:function(){}},y=(E.prototype.captureError=function(t){var e;"number"==typeof(null==(e=this.errorsOptions)?void 0:e.sampleRate)&&this.errorsOptions.sampleRate>Math.random()||this.submitError({filename:t.filename,lineno:t.lineno,colno:t.colno,name:(null==(e=t.error)?void 0:e.name)||"Error",message:(null==(e=t.error)?void 0:e.message)||t.message},!0)},E.prototype.trackErrors=function(t){var e=this;return this.errorListenerExists||!this.canTrack()?w:(this.errorsOptions=t,window.addEventListener("error",this.captureError),this.errorListenerExists=!0,{stop:function(){window.removeEventListener("error",e.captureError)}})},E.prototype.submitError=function(t,e){var n={pid:this.projectID},r=i({pg:this.activePage||f({hash:null==(r=this.pageViewsOptions)?void 0:r.hash,search:null==(r=this.pageViewsOptions)?void 0:r.search}),lc:a(),tz:s()},t);if(e&&null!=(t=this.errorsOptions)&&t.callback){e=this.errorsOptions.callback(r);if(!1===e)return;e&&"object"==typeof e&&Object.assign(r,e)}Object.assign(r,n),this.sendRequest("error",r)},E.prototype.track=function(n){return t(this,void 0,void 0,function(){var e;return o(this,function(t){switch(t.label){case 0:return this.canTrack()?(e=i(i({},n),{pid:this.projectID,pg:this.activePage,lc:a(),tz:s(),ref:c(),so:u(),me:l(),ca:h(),te:p(),co:d()}),[4,this.sendRequest("custom",e)]):[2];case 1:return t.sent(),[2]}})})},E.prototype.trackPageViews=function(t){var e,n,r;return this.canTrack()?(this.pageData||(null!=(this.pageViewsOptions=t)&&t.unique||(e=setInterval(this.trackPathChange,2e3)),setTimeout(this.heartbeat,3e3),n=setInterval(this.heartbeat,28e3),r=f({hash:null==t?void 0:t.hash,search:null==t?void 0:t.search}),this.pageData={path:r,actions:{stop:function(){clearInterval(e),clearInterval(n)}}},this.trackPage(r,null==t?void 0:t.unique)),this.pageData.actions):w},E.prototype.getPerformanceStats=function(){var t;return this.canTrack()&&!this.perfStatsCollected&&null!=(t=window.performance)&&t.getEntriesByType&&(t=window.performance.getEntriesByType("navigation")[0])?(this.perfStatsCollected=!0,{dns:t.domainLookupEnd-t.domainLookupStart,tls:t.secureConnectionStart?t.requestStart-t.secureConnectionStart:0,conn:t.secureConnectionStart?t.secureConnectionStart-t.connectStart:t.connectEnd-t.connectStart,response:t.responseEnd-t.responseStart,render:t.domComplete-t.domContentLoadedEventEnd,dom_load:t.domContentLoadedEventEnd-t.responseEnd,page_load:t.loadEventStart,ttfb:t.responseStart-t.requestStart}):{}},E.prototype.heartbeat=function(){var t;(null!=(t=this.pageViewsOptions)&&t.heartbeatOnBackground||"hidden"!==document.visibilityState)&&(t={pid:this.projectID},this.sendRequest("hb",t))},E.prototype.trackPathChange=function(){var t;this.pageData&&(t=f({hash:null==(t=this.pageViewsOptions)?void 0:t.hash,search:null==(t=this.pageViewsOptions)?void 0:t.search}),this.pageData.path!==t)&&this.trackPage(t,!1)},E.prototype.getPreviousPage=function(){if(this.activePage)return this.activePage;if("function"==typeof URL){var t=c();if(!t)return null;var e=location.host;try{var n=new URL(t),r=n.host,o=n.pathname;return e!==r?null:o}catch(t){}}return null},E.prototype.trackPage=function(t,e){var n;void 0===e&&(e=!1),this.pageData&&(this.pageData.path=t,n=this.getPerformanceStats(),this.activePage=t,this.submitPageView({pg:t},e,n,!0))},E.prototype.submitPageView=function(t,e,n,r){var o=this.getPreviousPage(),n={pid:this.projectID,perf:n,unique:e},e=i({lc:a(),tz:s(),ref:c(),so:u(),me:l(),ca:h(),te:p(),co:d(),prev:o},t);if(r&&null!=(o=this.pageViewsOptions)&&o.callback){t=this.pageViewsOptions.callback(e);if(!1===t)return;t&&"object"==typeof t&&Object.assign(e,t)}Object.assign(e,n),this.sendRequest("",e)},E.prototype.canTrack=function(){var t;return!(null!=(t=this.options)&&t.disabled||"undefined"==typeof window||null!=(t=this.options)&&t.respectDNT&&"1"===(null==(t=window.navigator)?void 0:t.doNotTrack)||(null==(t=this.options)||!t.devMode)&&("localhost"===(null===location||void 0===location?void 0:location.hostname)||"127.0.0.1"===(null===location||void 0===location?void 0:location.hostname)||""===(null===location||void 0===location?void 0:location.hostname))||null!==navigator&&void 0!==navigator&&navigator.webdriver)},E.prototype.sendRequest=function(n,r){return t(this,void 0,void 0,function(){var e;return o(this,function(t){switch(t.label){case 0:return e=(null==(e=this.options)?void 0:e.apiURL)||"https://api.swetrix.com/log",[4,fetch("".concat(e,"/").concat(n),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)})];case 1:return t.sent(),[2]}})})},E);function E(t,e){this.projectID=t,this.options=e,this.pageData=null,this.pageViewsOptions=null,this.errorsOptions=null,this.perfStatsCollected=!1,this.activePage=null,this.errorListenerExists=!1,this.trackPathChange=this.trackPathChange.bind(this),this.heartbeat=this.heartbeat.bind(this),this.captureError=this.captureError.bind(this)}r.LIB_INSTANCE=null,r.init=function(t,e){return r.LIB_INSTANCE||(r.LIB_INSTANCE=new y(t,e)),r.LIB_INSTANCE},r.pageview=function(t){r.LIB_INSTANCE&&r.LIB_INSTANCE.submitPageView(t.payload,Boolean(t.unique),{})},r.track=function(e){return t(this,void 0,void 0,function(){return o(this,function(t){switch(t.label){case 0:return r.LIB_INSTANCE?[4,r.LIB_INSTANCE.track(e)]:[2];case 1:return t.sent(),[2]}})})},r.trackError=function(t){r.LIB_INSTANCE&&r.LIB_INSTANCE.submitError(t,!1)},r.trackErrors=function(t){return r.LIB_INSTANCE?r.LIB_INSTANCE.trackErrors(t):w},r.trackPageview=function(t,e,n){r.LIB_INSTANCE&&r.LIB_INSTANCE.submitPageView({pg:t,prev:e||null},Boolean(n),{})},r.trackViews=function(e){return new Promise(function(t){r.LIB_INSTANCE?"undefined"==typeof document||"complete"===document.readyState?t(r.LIB_INSTANCE.trackPageViews(e)):window.addEventListener("load",function(){t(r.LIB_INSTANCE.trackPageViews(e))}):t(w)})},Object.defineProperty(r,"__esModule",{value:!0})});
|
package/dist/swetrix.orig.js
CHANGED
|
@@ -30,6 +30,44 @@
|
|
|
30
30
|
return __assign.apply(this, arguments);
|
|
31
31
|
};
|
|
32
32
|
|
|
33
|
+
function __awaiter(thisArg, _arguments, P, generator) {
|
|
34
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
35
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
36
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
37
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
38
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
39
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function __generator(thisArg, body) {
|
|
44
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
45
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
46
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
47
|
+
function step(op) {
|
|
48
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
49
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
50
|
+
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;
|
|
51
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
52
|
+
switch (op[0]) {
|
|
53
|
+
case 0: case 1: t = op; break;
|
|
54
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
55
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
56
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
57
|
+
default:
|
|
58
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
59
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
60
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
61
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
62
|
+
if (t[2]) _.ops.pop();
|
|
63
|
+
_.trys.pop(); continue;
|
|
64
|
+
}
|
|
65
|
+
op = body.call(thisArg, _);
|
|
66
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
67
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
33
71
|
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
34
72
|
var e = new Error(message);
|
|
35
73
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
@@ -42,6 +80,8 @@
|
|
|
42
80
|
var utmSourceRegex = /[?&](ref|source|utm_source)=([^?&]+)/;
|
|
43
81
|
var utmCampaignRegex = /[?&](utm_campaign)=([^?&]+)/;
|
|
44
82
|
var utmMediumRegex = /[?&](utm_medium)=([^?&]+)/;
|
|
83
|
+
var utmTermRegex = /[?&](utm_term)=([^?&]+)/;
|
|
84
|
+
var utmContentRegex = /[?&](utm_content)=([^?&]+)/;
|
|
45
85
|
var isInBrowser = function () {
|
|
46
86
|
return typeof window !== 'undefined';
|
|
47
87
|
};
|
|
@@ -68,6 +108,8 @@
|
|
|
68
108
|
var getUTMSource = function () { return findInSearch(utmSourceRegex); };
|
|
69
109
|
var getUTMMedium = function () { return findInSearch(utmMediumRegex); };
|
|
70
110
|
var getUTMCampaign = function () { return findInSearch(utmCampaignRegex); };
|
|
111
|
+
var getUTMTerm = function () { return findInSearch(utmTermRegex); };
|
|
112
|
+
var getUTMContent = function () { return findInSearch(utmContentRegex); };
|
|
71
113
|
/**
|
|
72
114
|
* Function used to track the current page (path) of the application.
|
|
73
115
|
* Will work in cases where the path looks like:
|
|
@@ -172,11 +214,22 @@
|
|
|
172
214
|
this.sendRequest('error', errorPayload);
|
|
173
215
|
};
|
|
174
216
|
Lib.prototype.track = function (event) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
217
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
218
|
+
var data;
|
|
219
|
+
return __generator(this, function (_a) {
|
|
220
|
+
switch (_a.label) {
|
|
221
|
+
case 0:
|
|
222
|
+
if (!this.canTrack()) {
|
|
223
|
+
return [2 /*return*/];
|
|
224
|
+
}
|
|
225
|
+
data = __assign(__assign({}, event), { pid: this.projectID, pg: this.activePage, lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent() });
|
|
226
|
+
return [4 /*yield*/, this.sendRequest('custom', data)];
|
|
227
|
+
case 1:
|
|
228
|
+
_a.sent();
|
|
229
|
+
return [2 /*return*/];
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
});
|
|
180
233
|
};
|
|
181
234
|
Lib.prototype.trackPageViews = function (options) {
|
|
182
235
|
if (!this.canTrack()) {
|
|
@@ -303,7 +356,7 @@
|
|
|
303
356
|
perf: perf,
|
|
304
357
|
unique: unique,
|
|
305
358
|
};
|
|
306
|
-
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), prev: prev }, payload);
|
|
359
|
+
var pvPayload = __assign({ lc: getLocale(), tz: getTimezone(), ref: getReferrer(), so: getUTMSource(), me: getUTMMedium(), ca: getUTMCampaign(), te: getUTMTerm(), co: getUTMContent(), prev: prev }, payload);
|
|
307
360
|
if (evokeCallback && ((_a = this.pageViewsOptions) === null || _a === void 0 ? void 0 : _a.callback)) {
|
|
308
361
|
var callbackResult = this.pageViewsOptions.callback(pvPayload);
|
|
309
362
|
if (callbackResult === false) {
|
|
@@ -328,12 +381,26 @@
|
|
|
328
381
|
return true;
|
|
329
382
|
};
|
|
330
383
|
Lib.prototype.sendRequest = function (path, body) {
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
384
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
385
|
+
var host;
|
|
386
|
+
var _a;
|
|
387
|
+
return __generator(this, function (_b) {
|
|
388
|
+
switch (_b.label) {
|
|
389
|
+
case 0:
|
|
390
|
+
host = ((_a = this.options) === null || _a === void 0 ? void 0 : _a.apiURL) || DEFAULT_API_HOST;
|
|
391
|
+
return [4 /*yield*/, fetch("".concat(host, "/").concat(path), {
|
|
392
|
+
method: 'POST',
|
|
393
|
+
headers: {
|
|
394
|
+
'Content-Type': 'application/json',
|
|
395
|
+
},
|
|
396
|
+
body: JSON.stringify(body),
|
|
397
|
+
})];
|
|
398
|
+
case 1:
|
|
399
|
+
_b.sent();
|
|
400
|
+
return [2 /*return*/];
|
|
401
|
+
}
|
|
402
|
+
});
|
|
403
|
+
});
|
|
337
404
|
};
|
|
338
405
|
return Lib;
|
|
339
406
|
}());
|
|
@@ -360,9 +427,19 @@
|
|
|
360
427
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
361
428
|
*/
|
|
362
429
|
function track(event) {
|
|
363
|
-
|
|
364
|
-
return
|
|
365
|
-
|
|
430
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
431
|
+
return __generator(this, function (_a) {
|
|
432
|
+
switch (_a.label) {
|
|
433
|
+
case 0:
|
|
434
|
+
if (!exports.LIB_INSTANCE)
|
|
435
|
+
return [2 /*return*/];
|
|
436
|
+
return [4 /*yield*/, exports.LIB_INSTANCE.track(event)];
|
|
437
|
+
case 1:
|
|
438
|
+
_a.sent();
|
|
439
|
+
return [2 /*return*/];
|
|
440
|
+
}
|
|
441
|
+
});
|
|
442
|
+
});
|
|
366
443
|
}
|
|
367
444
|
/**
|
|
368
445
|
* With this function you are able to automatically track pageviews across your application.
|
package/package.json
CHANGED
package/src/Lib.ts
CHANGED
|
@@ -8,6 +8,8 @@ import {
|
|
|
8
8
|
getUTMCampaign,
|
|
9
9
|
getUTMMedium,
|
|
10
10
|
getUTMSource,
|
|
11
|
+
getUTMTerm,
|
|
12
|
+
getUTMContent,
|
|
11
13
|
getPath,
|
|
12
14
|
} from './utils'
|
|
13
15
|
|
|
@@ -261,7 +263,7 @@ export class Lib {
|
|
|
261
263
|
this.sendRequest('error', errorPayload)
|
|
262
264
|
}
|
|
263
265
|
|
|
264
|
-
track(event: TrackEventOptions): void {
|
|
266
|
+
async track(event: TrackEventOptions): Promise<void> {
|
|
265
267
|
if (!this.canTrack()) {
|
|
266
268
|
return
|
|
267
269
|
}
|
|
@@ -276,8 +278,10 @@ export class Lib {
|
|
|
276
278
|
so: getUTMSource(),
|
|
277
279
|
me: getUTMMedium(),
|
|
278
280
|
ca: getUTMCampaign(),
|
|
281
|
+
te: getUTMTerm(),
|
|
282
|
+
co: getUTMContent(),
|
|
279
283
|
}
|
|
280
|
-
this.sendRequest('custom', data)
|
|
284
|
+
await this.sendRequest('custom', data)
|
|
281
285
|
}
|
|
282
286
|
|
|
283
287
|
trackPageViews(options?: PageViewsOptions): PageActions {
|
|
@@ -441,6 +445,8 @@ export class Lib {
|
|
|
441
445
|
so: getUTMSource(),
|
|
442
446
|
me: getUTMMedium(),
|
|
443
447
|
ca: getUTMCampaign(),
|
|
448
|
+
te: getUTMTerm(),
|
|
449
|
+
co: getUTMContent(),
|
|
444
450
|
prev,
|
|
445
451
|
...payload,
|
|
446
452
|
}
|
|
@@ -476,11 +482,14 @@ export class Lib {
|
|
|
476
482
|
return true
|
|
477
483
|
}
|
|
478
484
|
|
|
479
|
-
private sendRequest(path: string, body: object): void {
|
|
485
|
+
private async sendRequest(path: string, body: object): Promise<void> {
|
|
480
486
|
const host = this.options?.apiURL || DEFAULT_API_HOST
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
487
|
+
await fetch(`${host}/${path}`, {
|
|
488
|
+
method: 'POST',
|
|
489
|
+
headers: {
|
|
490
|
+
'Content-Type': 'application/json',
|
|
491
|
+
},
|
|
492
|
+
body: JSON.stringify(body),
|
|
493
|
+
})
|
|
485
494
|
}
|
|
486
495
|
}
|
package/src/index.ts
CHANGED
|
@@ -35,10 +35,10 @@ export function init(pid: string, options?: LibOptions): Lib {
|
|
|
35
35
|
*
|
|
36
36
|
* @param {TrackEventOptions} event The options related to the custom event.
|
|
37
37
|
*/
|
|
38
|
-
export function track(event: TrackEventOptions): void {
|
|
38
|
+
export async function track(event: TrackEventOptions): Promise<void> {
|
|
39
39
|
if (!LIB_INSTANCE) return
|
|
40
40
|
|
|
41
|
-
LIB_INSTANCE.track(event)
|
|
41
|
+
await LIB_INSTANCE.track(event)
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
/**
|
package/src/utils.ts
CHANGED
|
@@ -11,6 +11,8 @@ const findInSearch = (exp: RegExp): string | undefined => {
|
|
|
11
11
|
const utmSourceRegex = /[?&](ref|source|utm_source)=([^?&]+)/
|
|
12
12
|
const utmCampaignRegex = /[?&](utm_campaign)=([^?&]+)/
|
|
13
13
|
const utmMediumRegex = /[?&](utm_medium)=([^?&]+)/
|
|
14
|
+
const utmTermRegex = /[?&](utm_term)=([^?&]+)/
|
|
15
|
+
const utmContentRegex = /[?&](utm_content)=([^?&]+)/
|
|
14
16
|
|
|
15
17
|
export const isInBrowser = () => {
|
|
16
18
|
return typeof window !== 'undefined'
|
|
@@ -46,6 +48,10 @@ export const getUTMMedium = () => findInSearch(utmMediumRegex)
|
|
|
46
48
|
|
|
47
49
|
export const getUTMCampaign = () => findInSearch(utmCampaignRegex)
|
|
48
50
|
|
|
51
|
+
export const getUTMTerm = () => findInSearch(utmTermRegex)
|
|
52
|
+
|
|
53
|
+
export const getUTMContent = () => findInSearch(utmContentRegex)
|
|
54
|
+
|
|
49
55
|
/**
|
|
50
56
|
* Function used to track the current page (path) of the application.
|
|
51
57
|
* Will work in cases where the path looks like:
|