@pageactions/page-actions-js 0.10.0 → 0.12.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/README.md
CHANGED
|
@@ -26,7 +26,7 @@ The only parameter of constructor is a **siteId**. This is later used in Page Ac
|
|
|
26
26
|
|
|
27
27
|
After creating new object it's mandatory to set a **collector URL** and **account ID**.
|
|
28
28
|
|
|
29
|
-
Collector URL is a place where all your actions are sent. You can see your collector URL when you add new site in Page Actions Dashboard.
|
|
29
|
+
Collector URL is a place where all your actions are sent. You can see your collector URL when you add new site in Page Actions Dashboard. If you don't want your actions to be stored (for example from local or test environment), set collector URL to *https://app.page-actions.com/test-collector*.
|
|
30
30
|
|
|
31
31
|
Account ID is your unique UUID identifier that you can get from your Account settings or get during new site onboarding.
|
|
32
32
|
|
|
@@ -44,7 +44,7 @@ It has no parameters and triggers sending an event to the collector service.
|
|
|
44
44
|
pageActions.pageView();
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
-
### Report action
|
|
47
|
+
### Report an action
|
|
48
48
|
|
|
49
49
|
The most basic way of reporting an action is by calling action() function with action type name.
|
|
50
50
|
|
|
@@ -52,6 +52,18 @@ The most basic way of reporting an action is by calling action() function with a
|
|
|
52
52
|
pageActions.action("button_click");
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
+
#### First only
|
|
56
|
+
|
|
57
|
+
Sometimes we only want to know that user started interacting with a form and don't want to now how many times such action occurred. In that situation a `firstOnly` option can be used.
|
|
58
|
+
|
|
59
|
+
If you want to register only the first occurence of the action just set `firstOnly` to `true`.
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
pageActions.action("input_focus", { firstOnly: true });
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
It is the same as reporting an action with `firstAction()` function.
|
|
66
|
+
|
|
55
67
|
#### Conversion action
|
|
56
68
|
|
|
57
69
|
You can mark an action as a convertion when it represents a business goal. For example, submitting a form or create a new user action.
|
|
@@ -7,6 +7,8 @@ export interface ActionOptions {
|
|
|
7
7
|
flush?: boolean;
|
|
8
8
|
/** Whether registered action is a conversion action. It represents business goal on a page */
|
|
9
9
|
conversion?: boolean;
|
|
10
|
+
/** If set to true then only first action with given type will be collected. The next actions with this type will be ignored. */
|
|
11
|
+
firstOnly?: boolean;
|
|
10
12
|
}
|
|
11
13
|
/** Entry point class to report actions to the Page Actions collector */
|
|
12
14
|
export declare class PageActions {
|
|
@@ -19,6 +21,8 @@ export declare class PageActions {
|
|
|
19
21
|
private _verbose;
|
|
20
22
|
private _accountId;
|
|
21
23
|
private _groupName;
|
|
24
|
+
private _pageUrl;
|
|
25
|
+
private _referrer;
|
|
22
26
|
private _debounceTimeMs;
|
|
23
27
|
private interactionStream;
|
|
24
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageActions.d.ts","sourceRoot":"","sources":["../../src/service/PageActions.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,WAAW,EAEjB,MAAM,6BAA6B,CAAC;AAIrC,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8FAA8F;IAC9F,UAAU,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PageActions.d.ts","sourceRoot":"","sources":["../../src/service/PageActions.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,WAAW,EAEjB,MAAM,6BAA6B,CAAC;AAIrC,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8FAA8F;IAC9F,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gIAAgI;IAChI,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wEAAwE;AACxE,qBAAa,WAAW;IACf,YAAY,EAAE,WAAW,EAAE,CAAM;IACjC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAa;IAClD,OAAO,CAAC,mBAAmB,CAAkB;IAEtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAEzB,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,QAAQ,CAAiC;IACjD,OAAO,CAAC,SAAS,CAAiC;IAElD,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,iBAAiB,CAAoD;IAE7E;;;OAGG;gBACS,MAAM,EAAE,MAAM;IAS1B;;;;OAIG;IACI,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAK1C;;;;OAIG;IACI,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW;IAK3C;;;;OAIG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAOrC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAOjC,QAAQ,IAAI,WAAW;IAc9B;;;;;OAKG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,WAAW;IAkBrE;;;;;OAKG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,WAAW;IAiB1E;;;OAGG;IACI,KAAK,IAAI,WAAW;IAKpB,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO;IAI5D,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,sBAAsB;YAgBhB,eAAe;YAKf,sBAAsB;CAYrC"}
|
|
@@ -17,6 +17,8 @@ export class PageActions {
|
|
|
17
17
|
this._verbose = false;
|
|
18
18
|
this._accountId = undefined;
|
|
19
19
|
this._groupName = "default";
|
|
20
|
+
this._pageUrl = undefined;
|
|
21
|
+
this._referrer = undefined;
|
|
20
22
|
this._debounceTimeMs = 2000;
|
|
21
23
|
this.interactionStream = new Subject();
|
|
22
24
|
if (!siteId) {
|
|
@@ -71,7 +73,11 @@ export class PageActions {
|
|
|
71
73
|
throw new Error(COLLECTOR_MISSING_MESSAGE);
|
|
72
74
|
if (!this._accountId)
|
|
73
75
|
throw new Error(ACCOUNT_ID_MISSING_MESSAGE);
|
|
76
|
+
if (this.interactions.length > 0)
|
|
77
|
+
throw new Error(PAGEVIEW_REPEATED_MESSAGE);
|
|
74
78
|
this.determineBrowser();
|
|
79
|
+
this._pageUrl = document.location.href;
|
|
80
|
+
this._referrer = document.referrer;
|
|
75
81
|
const interaction = this.createInteraction(PAGE_VIEW, {});
|
|
76
82
|
this.pageViewId = interaction.id;
|
|
77
83
|
this.appendInteraction(interaction);
|
|
@@ -96,12 +102,18 @@ export class PageActions {
|
|
|
96
102
|
throw new Error("PageActions.action() " + REQUIRE_TYPE_MESSAGE);
|
|
97
103
|
if (options?.terminal)
|
|
98
104
|
this.terminatedRecording = true;
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
this.
|
|
105
|
+
if (options.firstOnly && this.containsInteraction(type)) {
|
|
106
|
+
if (this._verbose)
|
|
107
|
+
console.log(`Action of type ${type} already registered`);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
const interaction = this.createInteraction(type, options);
|
|
111
|
+
this.appendInteraction(interaction);
|
|
112
|
+
if (this._verbose)
|
|
113
|
+
console.log("Registered interaction", interaction);
|
|
114
|
+
if (options?.flush)
|
|
115
|
+
this.flush();
|
|
116
|
+
}
|
|
105
117
|
return this;
|
|
106
118
|
}
|
|
107
119
|
/**
|
|
@@ -194,8 +206,8 @@ export class PageActions {
|
|
|
194
206
|
interactions: this.interactions,
|
|
195
207
|
viewStartedAt: new Date(),
|
|
196
208
|
browser: this.browser,
|
|
197
|
-
referrer:
|
|
198
|
-
pageUrl:
|
|
209
|
+
referrer: this._referrer,
|
|
210
|
+
pageUrl: this._pageUrl,
|
|
199
211
|
userAgent: navigator.userAgent,
|
|
200
212
|
};
|
|
201
213
|
}
|
|
@@ -213,8 +225,9 @@ export class PageActions {
|
|
|
213
225
|
headers,
|
|
214
226
|
body: JSON.stringify(request),
|
|
215
227
|
priority: "low",
|
|
228
|
+
keepalive: true,
|
|
216
229
|
};
|
|
217
|
-
return fetch(`${this._collectorUrl}/
|
|
230
|
+
return fetch(`${this._collectorUrl}/interactions`, options);
|
|
218
231
|
}
|
|
219
232
|
}
|
|
220
233
|
const CONSTRUCTOR_NO_SITEID_MESSAGE = "PageActions() constructor require non-empty siteId argument";
|
|
@@ -226,4 +239,5 @@ const GROUP_AFTER_PAGEVIEW_MESSAGE = "Group name cannot be changed after page vi
|
|
|
226
239
|
const ACCOUNT_ID_AFTER_PAGEVIEW_MESSAGE = "Account id cannot be changed after page view action";
|
|
227
240
|
const REQUIRE_GROUP_MESSAGE = "Group name cannot be empty";
|
|
228
241
|
const REQUIRE_ACCOUNT_ID_MESSAGE = "Account id cannot be empty";
|
|
242
|
+
const PAGEVIEW_REPEATED_MESSAGE = "Function pageView() can be called at most once with given PageActions object";
|
|
229
243
|
//# sourceMappingURL=PageActions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageActions.js","sourceRoot":"","sources":["../../src/service/PageActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EACL,SAAS,GAIV,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"PageActions.js","sourceRoot":"","sources":["../../src/service/PageActions.ts"],"names":[],"mappings":"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"}
|