@technoapple/ga4 1.0.2 → 1.0.4
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 +48 -1
- package/build/main/dataLayer.d.ts +1 -1
- package/build/main/dataLayer.js +62 -7
- package/build/main/ga4/ga4.d.ts +3 -2
- package/build/main/ga4/ga4.js +5 -2
- package/build/main/index.d.ts +6 -3
- package/build/main/index.js +6 -4
- package/build/main/types/global.d.ts +0 -3
- package/build/main/util.d.ts +2 -0
- package/build/main/util.js +15 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -5
- package/src/dataLayer.ts +75 -8
- package/src/ga4/ga4.ts +7 -2
- package/src/index.ts +5 -2
- package/src/types/global.ts +1 -4
- package/src/util.ts +18 -0
- package/test/dataLayer.spec.ts +39 -3
- package/test/ga4.spec.ts +20 -4
package/README.md
CHANGED
|
@@ -1 +1,48 @@
|
|
|
1
|
-
# GA4
|
|
1
|
+
# GA4
|
|
2
|
+
GA4 TypeScript Library to provide functions to support sending GA4 events.
|
|
3
|
+
|
|
4
|
+
# Features
|
|
5
|
+
- provide functions to send GA4 events.
|
|
6
|
+
- helper functions to get value via `window.dataLayer`.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Get Started
|
|
10
|
+
```sh
|
|
11
|
+
npm i @technoapple/ga4
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Basic Usage
|
|
15
|
+
|
|
16
|
+
sending GA4 events.
|
|
17
|
+
```js
|
|
18
|
+
import { ga4 } from '@technoapple/ga4';
|
|
19
|
+
// init
|
|
20
|
+
ga4.init({
|
|
21
|
+
targetId: 'g-123'
|
|
22
|
+
} as ga4Option);
|
|
23
|
+
|
|
24
|
+
// sending event
|
|
25
|
+
ga4.send('test_event', {
|
|
26
|
+
'event_key_1': 1
|
|
27
|
+
});
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
sending GA4 events by gtag.
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
ga4.gtag('event', 'test', {
|
|
34
|
+
'test': 1
|
|
35
|
+
});
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
get value from `dataLayer`.
|
|
39
|
+
|
|
40
|
+
```js
|
|
41
|
+
import { dataLayerHelper } from '@technoapple/ga4';
|
|
42
|
+
window.dataLayer.push({
|
|
43
|
+
'test': 11
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
const value = dataLayerHelper.get('test');
|
|
47
|
+
console.info(value); // 11
|
|
48
|
+
```
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
* @param getLast boolean, false (default) find the first item, true search the last value for the same key
|
|
5
5
|
* @returns return the value if find, otherwise return empty string;
|
|
6
6
|
*/
|
|
7
|
-
declare function get(key: string, getLast?: boolean):
|
|
7
|
+
declare function get(key: string, getLast?: boolean): any;
|
|
8
8
|
export { get };
|
package/build/main/dataLayer.js
CHANGED
|
@@ -1,6 +1,47 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.get = void 0;
|
|
4
|
+
function isObject(target) {
|
|
5
|
+
if (!target) {
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
return Object.prototype.toString.call(target) === '[object Object]';
|
|
9
|
+
}
|
|
10
|
+
function isArguments(target) {
|
|
11
|
+
if (!target) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
return Object.prototype.toString.call(target) === '[object Arguments]';
|
|
15
|
+
}
|
|
16
|
+
function getDataValue(key, currentData) {
|
|
17
|
+
if (isObject(currentData)) {
|
|
18
|
+
const data = currentData[key];
|
|
19
|
+
if (data) {
|
|
20
|
+
return data;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
else if (isArguments(currentData) || Array.isArray(currentData)) {
|
|
25
|
+
const arr = Object.values(currentData);
|
|
26
|
+
const data = arr.find(c => c === key);
|
|
27
|
+
if (data) {
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
const dataObj = arr.find(c => isObject(c));
|
|
31
|
+
if (dataObj) {
|
|
32
|
+
const data = dataObj[key];
|
|
33
|
+
if (data) {
|
|
34
|
+
return data;
|
|
35
|
+
}
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// not support.
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
4
45
|
/**
|
|
5
46
|
* get value from dataLayer
|
|
6
47
|
* @param key key to search from dataLayer
|
|
@@ -8,13 +49,27 @@ exports.get = void 0;
|
|
|
8
49
|
* @returns return the value if find, otherwise return empty string;
|
|
9
50
|
*/
|
|
10
51
|
function get(key, getLast) {
|
|
11
|
-
if (window.dataLayer) {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
52
|
+
if (!window.dataLayer || !Array.isArray(window.dataLayer)) {
|
|
53
|
+
return '';
|
|
54
|
+
}
|
|
55
|
+
if (!getLast) {
|
|
56
|
+
for (let index = 0; index < window.dataLayer.length; index++) {
|
|
57
|
+
const data = getDataValue(key, window.dataLayer[index]);
|
|
58
|
+
if (!data) {
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
return data;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
for (let index = window.dataLayer.length; index > 0; index--) {
|
|
66
|
+
const data = getDataValue(key, window.dataLayer[index]);
|
|
67
|
+
if (!data) {
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
return data;
|
|
71
|
+
}
|
|
16
72
|
}
|
|
17
|
-
return '';
|
|
18
73
|
}
|
|
19
74
|
exports.get = get;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YUxheWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFMYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxTQUFTLFFBQVEsQ0FBQyxNQUFVO0lBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDVCxPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLGlCQUFpQixDQUFDO0FBQ3hFLENBQUM7QUFFRCxTQUFTLFdBQVcsQ0FBQyxNQUFhO0lBQzlCLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDVCxPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLG9CQUFvQixDQUFDO0FBQzNFLENBQUM7QUFFRCxTQUFTLFlBQVksQ0FBQyxHQUFVLEVBQUUsV0FBNEI7SUFDMUQsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDdkIsTUFBTSxJQUFJLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxFQUFFO1lBQ04sT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELE9BQU8sSUFBSSxDQUFDO0tBQ2Y7U0FDSSxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQzdELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkMsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUN0QyxJQUFJLElBQUksRUFBRTtZQUNOLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0MsSUFBSSxPQUFPLEVBQUU7WUFDVCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDMUIsSUFBSSxJQUFJLEVBQUU7Z0JBQ04sT0FBTyxJQUFJLENBQUM7YUFDZjtZQUNELE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLElBQUksQ0FBQztLQUNmO1NBQ0k7UUFDRCxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUM7S0FDZjtBQUNMLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMsR0FBRyxDQUFDLEdBQVUsRUFBRSxPQUFnQjtJQUVyQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQ3ZELE9BQU8sRUFBRSxDQUFDO0tBQ2I7SUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFO1FBRVYsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQzFELE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1AsU0FBUzthQUNaO1lBRUQsT0FBTyxJQUFJLENBQUM7U0FDZjtLQUNKO1NBQ0k7UUFDRCxLQUFLLElBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDMUQsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDeEQsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDUCxTQUFTO2FBQ1o7WUFFRCxPQUFPLElBQUksQ0FBQztTQUNmO0tBQ0o7QUFDTCxDQUFDO0FBRU8sa0JBQUcifQ==
|
package/build/main/ga4/ga4.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { ga4Option } from "./ga4option";
|
|
2
|
-
import { KeyValueParams } from "../types/gtag";
|
|
2
|
+
import { KeyValueParams, gtag } from "../types/gtag";
|
|
3
3
|
declare class ga4 {
|
|
4
4
|
private static instance;
|
|
5
5
|
private constructor();
|
|
6
6
|
init(option: ga4Option): void;
|
|
7
7
|
static getInstance(): ga4;
|
|
8
|
-
|
|
8
|
+
send(eventName: string, eventParameters: KeyValueParams): boolean;
|
|
9
|
+
get gtag(): gtag;
|
|
9
10
|
}
|
|
10
11
|
export { ga4 };
|
package/build/main/ga4/ga4.js
CHANGED
|
@@ -19,10 +19,13 @@ class ga4 {
|
|
|
19
19
|
}
|
|
20
20
|
return ga4.instance;
|
|
21
21
|
}
|
|
22
|
-
|
|
22
|
+
send(eventName, eventParameters) {
|
|
23
23
|
window.gtag('event', eventName, eventParameters);
|
|
24
24
|
return true;
|
|
25
25
|
}
|
|
26
|
+
get gtag() {
|
|
27
|
+
return window.gtag;
|
|
28
|
+
}
|
|
26
29
|
}
|
|
27
30
|
exports.ga4 = ga4;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2E0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2dhNC9nYTQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBS0EsTUFBTSxHQUFHO0lBRUcsTUFBTSxDQUFDLFFBQVEsQ0FBTTtJQUU3QjtJQUNBLENBQUM7SUFFTSxJQUFJLENBQUMsTUFBZ0I7UUFDeEIsTUFBTSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxLQUFJLEtBQXNCLENBQUEsQ0FBQztRQUM5RCxNQUFNLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUk7WUFDekIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFBO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVc7UUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUU7WUFDZixHQUFHLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7U0FDNUI7UUFDRCxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDeEIsQ0FBQztJQUVNLElBQUksQ0FBQyxTQUFnQixFQUFFLGVBQStCO1FBRXpELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUVqRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7Q0FDSjtBQUVPLGtCQUFHIn0=
|
package/build/main/index.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { get } from './dataLayer';
|
|
2
|
+
declare const dataLayerHelper: {
|
|
3
|
+
get: typeof get;
|
|
4
|
+
};
|
|
5
|
+
declare const ga4: import("./ga4/ga4").ga4;
|
|
6
|
+
export { ga4, dataLayerHelper };
|
package/build/main/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.dataLayerHelper = exports.ga4 = void 0;
|
|
4
4
|
const index_1 = require("./ga4/index");
|
|
5
|
-
Object.defineProperty(exports, "ga", { enumerable: true, get: function () { return index_1.ga; } });
|
|
6
5
|
const dataLayer_1 = require("./dataLayer");
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
const dataLayerHelper = { get: dataLayer_1.get };
|
|
7
|
+
exports.dataLayerHelper = dataLayerHelper;
|
|
8
|
+
const ga4 = index_1.ga;
|
|
9
|
+
exports.ga4 = ga4;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBQStCO0FBQy9CLDJDQUFnQztBQUVoQyxNQUFNLGVBQWUsR0FBRyxFQUFFLEdBQUcsRUFBSCxlQUFHLEVBQUUsQ0FBQztBQUduQiwwQ0FBZTtBQUY1QixNQUFNLEdBQUcsR0FBRyxVQUFFLENBQUM7QUFFUCxrQkFBRyJ9
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { DataLayerObject } from "./dataLayer";
|
|
2
2
|
import { gtag } from "./gtag";
|
|
3
3
|
declare global {
|
|
4
|
-
interface Array<T> {
|
|
5
|
-
findLast(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): T | undefined;
|
|
6
|
-
}
|
|
7
4
|
interface Window {
|
|
8
5
|
dataLayer: Array<DataLayerObject>;
|
|
9
6
|
gtag: gtag;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findLast = void 0;
|
|
4
|
+
function findLast(list, predicate) {
|
|
5
|
+
for (let index = list.length - 1; index >= 0; index--) {
|
|
6
|
+
let currentValue = list[index];
|
|
7
|
+
let predicateResult = predicate(currentValue, index, list);
|
|
8
|
+
if (predicateResult) {
|
|
9
|
+
return currentValue;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
exports.findLast = findLast;
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLFNBQVMsUUFBUSxDQUNiLElBQWMsRUFDWixTQUF5RDtJQUczRCxLQUFLLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDbkQsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLElBQUksZUFBZSxHQUFHLFNBQVMsQ0FBQyxZQUFZLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNELElBQUksZUFBZSxFQUFFO1lBQ25CLE9BQU8sWUFBWSxDQUFDO1NBQ3JCO0tBQ0o7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNyQixDQUFDO0FBRU8sNEJBQVEifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/datalayer.ts","../src/ga4/ga4option.ts","../src/types/datalayer.ts","../src/types/gtag.ts","../src/ga4/ga4.ts","../src/ga4/index.ts","../src/index.ts","../src/types/global.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"6a6b471e7e43e15ef6f8fe617a22ce4ecb0e34efa6c3dfcfe7cebd392bcca9d2","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"fcd3ecc9f764f06f4d5c467677f4f117f6abf49dee6716283aa204ff1162498b","affectsGlobalScope":true},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true},{"version":"5114a95689b63f96b957e00216bc04baf9e1a1782aa4d8ee7e5e9acbf768e301","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"183e3fd92a9bf5a0b3f05cf642c49c1da2e487b21ec119aaf58b50699ff4b1ef","signature":"2dfb686889561fe1a686902c9892915da543c19941077707c0d063be62aa1de3"},{"version":"7443e1a6295df9ee39c9a5767b35ce1d541b2df5f73342a35f9b03702ef3696c","signature":"18702c5a5b1261e42757524b7d389aec3f1908f2f54fd0b04cba5ed0b6d5f6c1"},{"version":"4505cd6a0299cff3e39ddf9230f2fa71f51876c1499d6410437092678f4e84e6","signature":"c27bbc52e3f861f48cb5967ae5291c81017e22ac4c98a5ce309bfccd1bc9552f"},{"version":"16999cd3ff740d294f6e24055da2fb2b44feaacf936dbf5b91ca7ed7d10b529d","signature":"c327ab63d0f885684f6073fbda0336cb514d8dbbea80e210136e73353586bb21"},{"version":"e12b95f63352133aac9d06dc42344f77c70a977e48a193a81dec7779cc3a4230","signature":"133247274d360493f8b1c07d4b033b6d0cc7816fa9692c1c37c66bc2af46c6b2"},{"version":"a1552f2ab1a7225f25e54b15af03a040ec5d07e67a5c3d5bd56d9ec13062d5af","signature":"ad2e67574fad659d6ac13584f527547d8eb99610c877c79a7bead55983f01b5e"},{"version":"78c15e741f3e77887f439c8d9ef4d1fbd02cad5308f0ac267e24bdedb4c45f2f","signature":"9c3bbd98613e5b80f2e69a132063243c3d917a57ab334afcb4a2c73d0fa1f672"},{"version":"08ab8124ff4e5837879385cfbb56a8ae1f8316f09586ca123740f867d7b8bf24","signature":"9e86fcc527bf70d1bde309fafc794cd4a0e663d334a3e2da89e96773cd92720b","affectsGlobalScope":true},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"f749812878fecfa53cfc13b36e5d35086fb6377983a9df44175da83ccc23af1f","affectsGlobalScope":true},"7d2e3fea24c712c99c03ad8f556abedbfe105f87f1be10b95dbd409d24bc05a3",{"version":"211e3f15fbced4ab4be19f49ffa990b9ff20d749d33b65ff753be691e7616239","affectsGlobalScope":true},"374ca798f244e464346f14301dc2a8b4b111af1a83b49fffef5906c338a1f922","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","e596c9bb2f29a2699fdd4ae89139612652245192f67f45617c5a4b20832aaae9","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","1cdcfc1f624d6c08aa12c73935f6e13f095919cd99edf95752951796eb225729","216717f17c095cde1dc19375e1ab3af0a4a485355860c077a4f9d6ea59fab5b5","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"00dee7cdca8b8420c47ea4a31a34b8e8294013ebc4f463fd941e867e7bf05029","affectsGlobalScope":true},"80473bd0dd90ca1e166514c2dfead9d5803f9c51418864ca35abbeec6e6847e1","1c84b46267610a34028edfd0d035509341751262bac1062857f3c8df7aff7153","3bd1b21f21d18995315d232c5c7e868651e109396f3ca48fa8ab15f57a20d911","a3d541d303ee505053f5dcbf9fafb65cac3d5631037501cd616195863a6c5740","8d3c583a07e0c37e876908c2d5da575019f689df8d9fa4c081d99119d53dba22","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e630e5528e899219ae319e83bef54bf3bcb91b01d76861ecf881e8e614b167f0","affectsGlobalScope":true},"bcebb922784739bdb34c18ee51095d25a92b560c78ccd2eaacd6bd00f7443d83","7ee6ed878c4528215c82b664fe0cfe80e8b4da6c0d4cc80869367868774db8b1","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"0715e4cd28ad471b2a93f3e552ff51a3ae423417a01a10aa1d3bc7c6b95059d6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","4f3fdeba4e28e21aa719c081b8dc8f91d47e12e773389b9d35679c08151c9d37","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","f69ff39996a61a0dd10f4bce73272b52e8024a4d58b13ab32bf4712909d0a2b7",{"version":"3c4ba1dd9b12ffa284b565063108f2f031d150ea15b8fafbdc17f5d2a07251f3","affectsGlobalScope":true},"e10177274a35a9d07c825615340b2fcde2f610f53f3fb40269fd196b4288dda6","1422cd9e705adcc09088fda85a900c2b70e3ad36ea85846f68bd1a884cdf4e2b","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"a73ae8c0e62103bb9e21bb6538700881bf135b9a8b125b857ec68edfa0da4ed3","affectsGlobalScope":true},{"version":"e1c1b2fbe236bf7ee3e342eeae7e20efb8988a0ac7da1cbbfa2c1f66b76c3423","affectsGlobalScope":true},"868831cab82b65dfe1d68180e898af1f2101e89ba9b754d1db6fb8cc2fac1921","0fe8985a28f82c450a04a6edf1279d7181c0893f37da7d2a27f8efd4fd5edb03","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"52120bb7e4583612225bdf08e7c12559548170f11e660d33a33623bae9bbdbba","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a6dd3dba8e665ac43d279e0fdf5219edda0eed69b5e9a5061f46cd6a65c4f7a1"],"root":[[45,52]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./main","rootDir":"../src","strict":true,"target":9},"fileIdsList":[[53,99],[56,99],[57,62,90,99],[58,69,70,77,87,98,99],[58,59,69,77,99],[60,99],[61,62,70,78,99],[62,87,95,99],[63,65,69,77,99],[64,99],[65,66,99],[69,99],[67,69,99],[69,70,71,87,98,99],[69,70,71,84,87,90,99],[99,103],[99],[65,72,77,87,98,99],[69,70,72,73,77,87,95,98,99],[72,74,87,95,98,99],[53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105],[69,75,99],[76,98,99],[65,69,77,87,99],[78,99],[79,99],[56,80,99],[81,97,99,103],[82,99],[83,99],[69,84,85,99],[84,86,99,101],[57,69,87,88,89,90,99],[57,87,89,99],[87,88,99],[90,99],[91,99],[69,93,94,99],[93,94,99],[62,77,87,95,99],[96,99],[77,97,99],[57,72,83,98,99],[62,99],[87,99,100],[99,101],[99,102],[57,62,69,71,80,87,98,99,101,103],[87,99,104],[46,47,48,99],[49,99],[45,50,99],[47,48,99],[46,48],[49],[45,50],[47,48]],"referencedMap":[[53,1],[54,1],[56,2],[57,3],[58,4],[59,5],[60,6],[61,7],[62,8],[63,9],[64,10],[65,11],[66,11],[68,12],[67,13],[69,12],[70,14],[71,15],[55,16],[105,17],[72,18],[73,19],[74,20],[106,21],[75,22],[76,23],[77,24],[78,25],[79,26],[80,27],[81,28],[82,29],[83,30],[84,31],[85,31],[86,32],[87,33],[89,34],[88,35],[90,36],[91,37],[92,17],[93,38],[94,39],[95,40],[96,41],[97,42],[98,43],[99,44],[100,45],[101,46],[102,47],[103,48],[104,49],[43,17],[44,17],[8,17],[10,17],[9,17],[2,17],[11,17],[12,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[3,17],[4,17],[22,17],[19,17],[20,17],[21,17],[23,17],[24,17],[25,17],[5,17],[26,17],[27,17],[28,17],[29,17],[6,17],[33,17],[30,17],[31,17],[32,17],[34,17],[7,17],[35,17],[40,17],[41,17],[36,17],[37,17],[38,17],[39,17],[1,17],[42,17],[45,17],[49,50],[46,17],[50,51],[51,52],[47,17],[52,53],[48,17]],"exportedModulesMap":[[53,1],[54,1],[56,2],[57,3],[58,4],[59,5],[60,6],[61,7],[62,8],[63,9],[64,10],[65,11],[66,11],[68,12],[67,13],[69,12],[70,14],[71,15],[55,16],[105,17],[72,18],[73,19],[74,20],[106,21],[75,22],[76,23],[77,24],[78,25],[79,26],[80,27],[81,28],[82,29],[83,30],[84,31],[85,31],[86,32],[87,33],[89,34],[88,35],[90,36],[91,37],[92,17],[93,38],[94,39],[95,40],[96,41],[97,42],[98,43],[99,44],[100,45],[101,46],[102,47],[103,48],[104,49],[43,17],[44,17],[8,17],[10,17],[9,17],[2,17],[11,17],[12,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[3,17],[4,17],[22,17],[19,17],[20,17],[21,17],[23,17],[24,17],[25,17],[5,17],[26,17],[27,17],[28,17],[29,17],[6,17],[33,17],[30,17],[31,17],[32,17],[34,17],[7,17],[35,17],[40,17],[41,17],[36,17],[37,17],[38,17],[39,17],[1,17],[42,17],[49,54],[50,55],[51,56],[52,57]],"semanticDiagnosticsPerFile":[53,54,56,57,58,59,60,61,62,63,64,65,66,68,67,69,70,71,55,105,72,73,74,106,75,76,77,78,79,80,81,82,83,84,85,86,87,89,88,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,43,44,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,45,49,46,50,51,47,52,48]},"version":"5.0.4"}
|
|
1
|
+
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/types/datalayer.ts","../src/datalayer.ts","../src/ga4/ga4option.ts","../src/types/gtag.ts","../src/types/global.ts","../src/ga4/ga4.ts","../src/ga4/index.ts","../src/index.ts","../src/util.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"6a6b471e7e43e15ef6f8fe617a22ce4ecb0e34efa6c3dfcfe7cebd392bcca9d2","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"fcd3ecc9f764f06f4d5c467677f4f117f6abf49dee6716283aa204ff1162498b","affectsGlobalScope":true},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true},{"version":"5114a95689b63f96b957e00216bc04baf9e1a1782aa4d8ee7e5e9acbf768e301","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"4505cd6a0299cff3e39ddf9230f2fa71f51876c1499d6410437092678f4e84e6","signature":"c27bbc52e3f861f48cb5967ae5291c81017e22ac4c98a5ce309bfccd1bc9552f"},{"version":"eb2942624701841575b56359147e7ea33e6ca581e09d4c721faa9a7c93835818","signature":"bbd1a681210a08104676bd8e6f7f150691e47ff8eda7c4ffe05918a1d5817ce2"},{"version":"7443e1a6295df9ee39c9a5767b35ce1d541b2df5f73342a35f9b03702ef3696c","signature":"18702c5a5b1261e42757524b7d389aec3f1908f2f54fd0b04cba5ed0b6d5f6c1"},{"version":"16999cd3ff740d294f6e24055da2fb2b44feaacf936dbf5b91ca7ed7d10b529d","signature":"c327ab63d0f885684f6073fbda0336cb514d8dbbea80e210136e73353586bb21"},{"version":"ef2b57bf4bcc97f7f2c402b171e3883d278fd68ff1c1f5c5afa32d314bd079e5","signature":"83bb03806cdc796898d2c59cabc02d847b77256fc60f2a816cdea1733e403931","affectsGlobalScope":true},{"version":"ee17c63b9fc3a5d026a438bab500eba0eef32d36f36dbe739e1d60dd4c664be7","signature":"d068f287ab997e5fe33244d347378f7eb137731353f1c791722c60a5af73ef58"},{"version":"a1552f2ab1a7225f25e54b15af03a040ec5d07e67a5c3d5bd56d9ec13062d5af","signature":"ad2e67574fad659d6ac13584f527547d8eb99610c877c79a7bead55983f01b5e"},{"version":"89c30775f6ceed8dcdd43a4ce3e2274a7ae7277a2eeb8ea630602233d39090b2","signature":"b4fd030c4dedf1e2a2ed45ca09a731a4b266d931b9758406046cbc117934f42c"},{"version":"7dc733f749f435afdb7f0cc5ed617d54e692694948a06e058ab23616dc55f308","signature":"b94a542f623be983f86a1ac91139ed9fbb46728bcf70282eca6b5073b567328e"},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"f749812878fecfa53cfc13b36e5d35086fb6377983a9df44175da83ccc23af1f","affectsGlobalScope":true},"7d2e3fea24c712c99c03ad8f556abedbfe105f87f1be10b95dbd409d24bc05a3",{"version":"211e3f15fbced4ab4be19f49ffa990b9ff20d749d33b65ff753be691e7616239","affectsGlobalScope":true},"374ca798f244e464346f14301dc2a8b4b111af1a83b49fffef5906c338a1f922","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","e596c9bb2f29a2699fdd4ae89139612652245192f67f45617c5a4b20832aaae9","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","1cdcfc1f624d6c08aa12c73935f6e13f095919cd99edf95752951796eb225729","216717f17c095cde1dc19375e1ab3af0a4a485355860c077a4f9d6ea59fab5b5","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"00dee7cdca8b8420c47ea4a31a34b8e8294013ebc4f463fd941e867e7bf05029","affectsGlobalScope":true},"80473bd0dd90ca1e166514c2dfead9d5803f9c51418864ca35abbeec6e6847e1","1c84b46267610a34028edfd0d035509341751262bac1062857f3c8df7aff7153","3bd1b21f21d18995315d232c5c7e868651e109396f3ca48fa8ab15f57a20d911","a3d541d303ee505053f5dcbf9fafb65cac3d5631037501cd616195863a6c5740","8d3c583a07e0c37e876908c2d5da575019f689df8d9fa4c081d99119d53dba22","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e630e5528e899219ae319e83bef54bf3bcb91b01d76861ecf881e8e614b167f0","affectsGlobalScope":true},"bcebb922784739bdb34c18ee51095d25a92b560c78ccd2eaacd6bd00f7443d83","7ee6ed878c4528215c82b664fe0cfe80e8b4da6c0d4cc80869367868774db8b1","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"0715e4cd28ad471b2a93f3e552ff51a3ae423417a01a10aa1d3bc7c6b95059d6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","4f3fdeba4e28e21aa719c081b8dc8f91d47e12e773389b9d35679c08151c9d37","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","f69ff39996a61a0dd10f4bce73272b52e8024a4d58b13ab32bf4712909d0a2b7",{"version":"3c4ba1dd9b12ffa284b565063108f2f031d150ea15b8fafbdc17f5d2a07251f3","affectsGlobalScope":true},"e10177274a35a9d07c825615340b2fcde2f610f53f3fb40269fd196b4288dda6","1422cd9e705adcc09088fda85a900c2b70e3ad36ea85846f68bd1a884cdf4e2b","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"a73ae8c0e62103bb9e21bb6538700881bf135b9a8b125b857ec68edfa0da4ed3","affectsGlobalScope":true},{"version":"e1c1b2fbe236bf7ee3e342eeae7e20efb8988a0ac7da1cbbfa2c1f66b76c3423","affectsGlobalScope":true},"868831cab82b65dfe1d68180e898af1f2101e89ba9b754d1db6fb8cc2fac1921","0fe8985a28f82c450a04a6edf1279d7181c0893f37da7d2a27f8efd4fd5edb03","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"52120bb7e4583612225bdf08e7c12559548170f11e660d33a33623bae9bbdbba","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a6dd3dba8e665ac43d279e0fdf5219edda0eed69b5e9a5061f46cd6a65c4f7a1"],"root":[[45,53]],"options":{"declaration":true,"esModuleInterop":true,"inlineSourceMap":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./main","rootDir":"../src","strict":true,"target":9},"fileIdsList":[[54,100],[57,100],[58,63,91,100],[59,70,71,78,88,99,100],[59,60,70,78,100],[61,100],[62,63,71,79,100],[63,88,96,100],[64,66,70,78,100],[65,100],[66,67,100],[70,100],[68,70,100],[70,71,72,88,99,100],[70,71,72,85,88,91,100],[100,104],[100],[66,73,78,88,99,100],[70,71,73,74,78,88,96,99,100],[73,75,88,96,99,100],[54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106],[70,76,100],[77,99,100],[66,70,78,88,100],[79,100],[80,100],[57,81,100],[82,98,100,104],[83,100],[84,100],[70,85,86,100],[85,87,100,102],[58,70,88,89,90,91,100],[58,88,90,100],[88,89,100],[91,100],[92,100],[70,94,95,100],[94,95,100],[63,78,88,96,100],[97,100],[78,98,100],[58,73,84,99,100],[63,100],[88,100,101],[100,102],[100,103],[58,63,70,72,81,88,99,100,102,104],[88,100,105],[45,100],[45,47,48,49,100],[50,100],[46,51,100],[45,48,100],[47,48],[50],[46,50],[45,48]],"referencedMap":[[54,1],[55,1],[57,2],[58,3],[59,4],[60,5],[61,6],[62,7],[63,8],[64,9],[65,10],[66,11],[67,11],[69,12],[68,13],[70,12],[71,14],[72,15],[56,16],[106,17],[73,18],[74,19],[75,20],[107,21],[76,22],[77,23],[78,24],[79,25],[80,26],[81,27],[82,28],[83,29],[84,30],[85,31],[86,31],[87,32],[88,33],[90,34],[89,35],[91,36],[92,37],[93,17],[94,38],[95,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[43,17],[44,17],[8,17],[10,17],[9,17],[2,17],[11,17],[12,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[3,17],[4,17],[22,17],[19,17],[20,17],[21,17],[23,17],[24,17],[25,17],[5,17],[26,17],[27,17],[28,17],[29,17],[6,17],[33,17],[30,17],[31,17],[32,17],[34,17],[7,17],[35,17],[40,17],[41,17],[36,17],[37,17],[38,17],[39,17],[1,17],[42,17],[46,50],[50,51],[47,17],[51,52],[52,53],[45,17],[49,54],[48,17],[53,17]],"exportedModulesMap":[[54,1],[55,1],[57,2],[58,3],[59,4],[60,5],[61,6],[62,7],[63,8],[64,9],[65,10],[66,11],[67,11],[69,12],[68,13],[70,12],[71,14],[72,15],[56,16],[106,17],[73,18],[74,19],[75,20],[107,21],[76,22],[77,23],[78,24],[79,25],[80,26],[81,27],[82,28],[83,29],[84,30],[85,31],[86,31],[87,32],[88,33],[90,34],[89,35],[91,36],[92,37],[93,17],[94,38],[95,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[43,17],[44,17],[8,17],[10,17],[9,17],[2,17],[11,17],[12,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[3,17],[4,17],[22,17],[19,17],[20,17],[21,17],[23,17],[24,17],[25,17],[5,17],[26,17],[27,17],[28,17],[29,17],[6,17],[33,17],[30,17],[31,17],[32,17],[34,17],[7,17],[35,17],[40,17],[41,17],[36,17],[37,17],[38,17],[39,17],[1,17],[42,17],[50,55],[51,56],[52,57],[49,58]],"semanticDiagnosticsPerFile":[54,55,57,58,59,60,61,62,63,64,65,66,67,69,68,70,71,72,56,106,73,74,75,107,76,77,78,79,80,81,82,83,84,85,86,87,88,90,89,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,43,44,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,46,50,47,51,52,45,49,48,53]},"version":"5.0.4"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@technoapple/ga4",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "TypeScript Node.js library to support GA4 analytics.",
|
|
5
5
|
"main": "build/main/index.js",
|
|
6
6
|
"typings": "build/main/index.d.ts",
|
|
@@ -23,15 +23,19 @@
|
|
|
23
23
|
"Google Analytic",
|
|
24
24
|
"gtag",
|
|
25
25
|
"dataLayer",
|
|
26
|
-
"analytics"
|
|
26
|
+
"analytics",
|
|
27
|
+
"Google Analytics 4",
|
|
28
|
+
"GA",
|
|
29
|
+
"GTM",
|
|
30
|
+
"Google Tag Manager"
|
|
27
31
|
],
|
|
28
|
-
"repository": "https://github.com/
|
|
32
|
+
"repository": "https://github.com/technoapple/ga4.git",
|
|
29
33
|
"author": "keke78ui9",
|
|
30
34
|
"license": "ISC",
|
|
31
35
|
"bugs": {
|
|
32
|
-
"url": "https://github.com/
|
|
36
|
+
"url": "https://github.com/technoapple/ga4/issues"
|
|
33
37
|
},
|
|
34
|
-
"homepage": "https://github.com/
|
|
38
|
+
"homepage": "https://github.com/technoapple/ga4#readme",
|
|
35
39
|
"devDependencies": {
|
|
36
40
|
"@babel/core": "^7.21.4",
|
|
37
41
|
"@babel/preset-env": "^7.21.4",
|
package/src/dataLayer.ts
CHANGED
|
@@ -1,19 +1,86 @@
|
|
|
1
|
+
import { DataLayerObject } from './types/dataLayer';
|
|
2
|
+
|
|
3
|
+
function isObject(target:any): boolean {
|
|
4
|
+
if (!target) {
|
|
5
|
+
return false;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
return Object.prototype.toString.call(target) === '[object Object]';
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
function isArguments(target:object): boolean {
|
|
12
|
+
if (!target) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return Object.prototype.toString.call(target) === '[object Arguments]';
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function getDataValue(key:string, currentData: DataLayerObject) {
|
|
20
|
+
if (isObject(currentData)) {
|
|
21
|
+
const data = currentData[key];
|
|
22
|
+
if (data) {
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
else if (isArguments(currentData) || Array.isArray(currentData)) {
|
|
28
|
+
const arr = Object.values(currentData);
|
|
29
|
+
const data = arr.find(c => c === key);
|
|
30
|
+
if (data) {
|
|
31
|
+
return data;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const dataObj = arr.find(c => isObject(c));
|
|
35
|
+
if (dataObj) {
|
|
36
|
+
const data = dataObj[key];
|
|
37
|
+
if (data) {
|
|
38
|
+
return data;
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
// not support.
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
1
51
|
/**
|
|
2
52
|
* get value from dataLayer
|
|
3
53
|
* @param key key to search from dataLayer
|
|
4
54
|
* @param getLast boolean, false (default) find the first item, true search the last value for the same key
|
|
5
55
|
* @returns return the value if find, otherwise return empty string;
|
|
6
56
|
*/
|
|
7
|
-
function get(key:string, getLast?:boolean):
|
|
8
|
-
|
|
9
|
-
if (window.dataLayer) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
57
|
+
function get(key:string, getLast?:boolean): any {
|
|
58
|
+
|
|
59
|
+
if (!window.dataLayer || !Array.isArray(window.dataLayer)) {
|
|
60
|
+
return '';
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (!getLast) {
|
|
64
|
+
|
|
65
|
+
for (let index = 0; index < window.dataLayer.length; index++) {
|
|
66
|
+
const data = getDataValue(key, window.dataLayer[index]);
|
|
67
|
+
if (!data) {
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return data;
|
|
72
|
+
}
|
|
14
73
|
}
|
|
74
|
+
else {
|
|
75
|
+
for (let index = window.dataLayer.length; index > 0; index--) {
|
|
76
|
+
const data = getDataValue(key, window.dataLayer[index]);
|
|
77
|
+
if (!data) {
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
15
80
|
|
|
16
|
-
|
|
81
|
+
return data;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
17
84
|
}
|
|
18
85
|
|
|
19
86
|
export {get};
|
package/src/ga4/ga4.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ga4Option } from "./ga4option";
|
|
2
2
|
import { DataLayerObject } from "../types/dataLayer";
|
|
3
|
-
import { KeyValueParams } from "../types/gtag";
|
|
3
|
+
import { KeyValueParams, gtag } from "../types/gtag";
|
|
4
|
+
import {} from '../types/global';
|
|
4
5
|
|
|
5
6
|
class ga4 {
|
|
6
7
|
|
|
@@ -25,12 +26,16 @@ class ga4 {
|
|
|
25
26
|
return ga4.instance;
|
|
26
27
|
}
|
|
27
28
|
|
|
28
|
-
public
|
|
29
|
+
public send(eventName:string, eventParameters: KeyValueParams ): boolean {
|
|
29
30
|
|
|
30
31
|
window.gtag('event', eventName, eventParameters);
|
|
31
32
|
|
|
32
33
|
return true;
|
|
33
34
|
}
|
|
35
|
+
|
|
36
|
+
get gtag() : gtag {
|
|
37
|
+
return window.gtag;
|
|
38
|
+
}
|
|
34
39
|
}
|
|
35
40
|
|
|
36
41
|
export {ga4};
|
package/src/index.ts
CHANGED
package/src/types/global.ts
CHANGED
|
@@ -3,11 +3,8 @@ import { gtag } from "./gtag";
|
|
|
3
3
|
|
|
4
4
|
declare global {
|
|
5
5
|
|
|
6
|
-
interface Array<T> {
|
|
7
|
-
findLast(predicate: (value:T, index:number, array:T[]) => unknown, thisArg?:any ): T | undefined
|
|
8
|
-
}
|
|
9
6
|
|
|
10
|
-
|
|
7
|
+
interface Window {
|
|
11
8
|
dataLayer: Array<DataLayerObject>;
|
|
12
9
|
gtag:gtag;
|
|
13
10
|
}
|
package/src/util.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
function findLast<T>(
|
|
2
|
+
list: Array<T>
|
|
3
|
+
, predicate: (value: T, index: number, obj: T[]) => unknown)
|
|
4
|
+
: T | undefined {
|
|
5
|
+
|
|
6
|
+
for (let index = list.length - 1; index >= 0; index--) {
|
|
7
|
+
let currentValue = list[index];
|
|
8
|
+
let predicateResult = predicate(currentValue, index, list);
|
|
9
|
+
if (predicateResult) {
|
|
10
|
+
return currentValue;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export {findLast};
|
|
18
|
+
|
package/test/dataLayer.spec.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import {} from '../src/types/global';
|
|
2
|
-
import {
|
|
2
|
+
import {dataLayerHelper} from '../src/index';
|
|
3
|
+
import {findLast} from '../src/util';
|
|
3
4
|
|
|
4
5
|
describe('test dataLayer get function', () => {
|
|
5
|
-
|
|
6
|
+
beforeEach(() => {
|
|
7
|
+
window.dataLayer = [];
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
test('by default dataLayer get should return the 1st item', () => {
|
|
6
11
|
|
|
7
12
|
window.dataLayer = window.dataLayer || [];
|
|
8
13
|
|
|
@@ -13,8 +18,39 @@ describe('test dataLayer get function', () => {
|
|
|
13
18
|
'test': 11
|
|
14
19
|
});
|
|
15
20
|
|
|
16
|
-
const result = get('test');
|
|
21
|
+
const result = dataLayerHelper.get('test');
|
|
17
22
|
expect(result).toBe(1);
|
|
18
23
|
|
|
19
24
|
});
|
|
25
|
+
|
|
26
|
+
test('If dataLayer array has object use the key should get the value', () => {
|
|
27
|
+
|
|
28
|
+
const data = [
|
|
29
|
+
{event: 'test'},
|
|
30
|
+
['js'],
|
|
31
|
+
['config', 'g-123'],
|
|
32
|
+
['event', 'conversion', {'allow': true}]
|
|
33
|
+
];
|
|
34
|
+
window.dataLayer = data;
|
|
35
|
+
|
|
36
|
+
const result = dataLayerHelper.get('allow');
|
|
37
|
+
expect(result).toBe(true);
|
|
38
|
+
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
test('if get last is true should return the last item', () => {
|
|
42
|
+
|
|
43
|
+
window.dataLayer = window.dataLayer || [];
|
|
44
|
+
|
|
45
|
+
window.dataLayer.push({
|
|
46
|
+
'test': 1
|
|
47
|
+
});
|
|
48
|
+
window.dataLayer.push({
|
|
49
|
+
'test': 11
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
const result = dataLayerHelper.get('test', true);
|
|
53
|
+
expect(result).toBe(11);
|
|
54
|
+
|
|
55
|
+
});
|
|
20
56
|
});
|
package/test/ga4.spec.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {} from '../src/types/global';
|
|
2
|
-
import {
|
|
2
|
+
import { ga4 } from '../src/index';
|
|
3
3
|
import { ga4Option } from '../src/ga4/ga4option';
|
|
4
4
|
|
|
5
5
|
describe('test ga4', () => {
|
|
@@ -7,13 +7,29 @@ describe('test ga4', () => {
|
|
|
7
7
|
|
|
8
8
|
window.gtag = jest.fn();
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
ga4.init({
|
|
11
11
|
targetId: 'g-123'
|
|
12
12
|
} as ga4Option);
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
ga4.send('test', {
|
|
15
15
|
'test': 1
|
|
16
|
-
});
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
expect(window.gtag).toBeCalledTimes(3);
|
|
19
|
+
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
test('init ga4 able to use gtag at ga4', () => {
|
|
23
|
+
|
|
24
|
+
window.gtag = jest.fn();
|
|
25
|
+
|
|
26
|
+
ga4.init({
|
|
27
|
+
targetId: 'g-123'
|
|
28
|
+
} as ga4Option);
|
|
29
|
+
|
|
30
|
+
ga4.gtag('event', 'test', {
|
|
31
|
+
'test': 1
|
|
32
|
+
});
|
|
17
33
|
|
|
18
34
|
expect(window.gtag).toBeCalledTimes(3);
|
|
19
35
|
|