@guardian/ophan-tracker-js 5.0.0 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/NPM-dist/core.js +0 -8
- package/NPM-dist/core.js.map +1 -1
- package/NPM-dist/help-centre.js +17 -0
- package/NPM-dist/help-centre.js.map +1 -0
- package/NPM-dist/index.js +11 -1
- package/NPM-dist/index.js.map +1 -1
- package/NPM-dist/tests/index.test.js +2 -1
- package/NPM-dist/tests/index.test.js.map +1 -1
- package/NPM-dist/types/core.d.ts.map +1 -1
- package/NPM-dist/types/help-centre.d.ts +2 -0
- package/NPM-dist/types/help-centre.d.ts.map +1 -0
- package/NPM-dist/types/index.d.ts +1 -1
- package/NPM-dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/readme.md +20 -0
- package/src/help-centre.ts +23 -0
- package/src/index.ts +16 -2
package/NPM-dist/core.js
CHANGED
|
@@ -16,14 +16,6 @@ init = function (servingPlatform, httpStatus) {
|
|
|
16
16
|
window.localStorage != null &&
|
|
17
17
|
typeof JSON !== 'undefined' &&
|
|
18
18
|
JSON !== null;
|
|
19
|
-
if (window.addEventListener) {
|
|
20
|
-
window.addEventListener('pageshow', function (event) {
|
|
21
|
-
if (event.persisted) {
|
|
22
|
-
transmit.bumpViewId();
|
|
23
|
-
sendInitialEvent(httpStatus, window.location.href, window.document.referrer, 'bfcache');
|
|
24
|
-
}
|
|
25
|
-
}, false);
|
|
26
|
-
}
|
|
27
19
|
}
|
|
28
20
|
else {
|
|
29
21
|
return;
|
package/NPM-dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.js"],"names":[],"mappings":"AAAA,IAAI,IAAI,EACP,gBAAgB,EAChB,0BAA0B,EAC1B,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC;AAE7B,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAEzC,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AAEtD,MAAM,OAAO,GAAG,EAAE,CAAC;AAEnB,sDAAsD;AACtD,IAAI,GAAG,GAAG,IAAI,CAAC;AACf,IAAI,4BAA4B,GAAG,KAAK,CAAC;AAEzC,IAAI,QAAQ,GAAG,IAAI,CAAC;AAEpB,MAAM,0BAA0B,GAAG,EAAE,CAAC;AAEtC,IAAI,GAAG,UAAU,eAAe,EAAE,UAAU;IAC3C,QAAQ,GAAG,eAAe,CAAC;IAE3B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;QACtB,4BAA4B;YAC3B,MAAM,CAAC,YAAY,IAAI,IAAI;gBAC3B,OAAO,IAAI,KAAK,WAAW;gBAC3B,IAAI,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Self-initialising IIFE entry for `<script src>` consumers with no module
|
|
3
|
+
* loader or bundler (e.g. the Salesforce-hosted Help Centre). On load it exposes
|
|
4
|
+
* the tracker at `window.guardian.ophan` and sends the first page view.
|
|
5
|
+
*/
|
|
6
|
+
import ophan, { init } from './index.js';
|
|
7
|
+
const HELP_CENTRE_PLATFORM = 'help-centre';
|
|
8
|
+
if (typeof window !== 'undefined') {
|
|
9
|
+
const windowWithGuardian = window;
|
|
10
|
+
// Don't clobber an existing tracker (e.g. script included twice).
|
|
11
|
+
if (!windowWithGuardian.guardian?.ophan) {
|
|
12
|
+
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
13
|
+
windowWithGuardian.guardian.ophan = ophan;
|
|
14
|
+
init(HELP_CENTRE_PLATFORM);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=help-centre.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-centre.js","sourceRoot":"","sources":["../src/help-centre.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,EAAE,IAAI,EAAiB,MAAM,YAAY,CAAC;AAExD,MAAM,oBAAoB,GAAa,aAAa,CAAC;AAErD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACnC,MAAM,kBAAkB,GAAG,MAI1B,CAAC;IAEF,kEAAkE;IAClE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;QACzC,kBAAkB,CAAC,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,IAAI,EAAE,CAAC;QAChE,kBAAkB,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1C,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC5B,CAAC;AACF,CAAC"}
|
package/NPM-dist/index.js
CHANGED
|
@@ -43,7 +43,7 @@ export const init = (platform = 'ng') => {
|
|
|
43
43
|
if (!isBrowser()) {
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
|
-
const resolvedPlatform = platform === 'manage-my-account' || platform === 'support' ? platform : 'ng';
|
|
46
|
+
const resolvedPlatform = platform === 'manage-my-account' || platform === 'support' || platform === 'help-centre' ? platform : 'ng';
|
|
47
47
|
if (initialized) {
|
|
48
48
|
console.warn(`Ophan tracker already initialized with platform: ${currentPlatform}`);
|
|
49
49
|
return;
|
|
@@ -57,6 +57,10 @@ export const init = (platform = 'ng') => {
|
|
|
57
57
|
if (window.addEventListener) {
|
|
58
58
|
attention.init(visibility);
|
|
59
59
|
}
|
|
60
|
+
const windowWithGuardian = window;
|
|
61
|
+
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
62
|
+
windowWithGuardian.guardian.ophan =
|
|
63
|
+
windowWithGuardian.guardian.ophan ?? ophanTracker;
|
|
60
64
|
}
|
|
61
65
|
else if (resolvedPlatform === 'manage-my-account') {
|
|
62
66
|
core.init('manage-my-account');
|
|
@@ -70,6 +74,12 @@ export const init = (platform = 'ng') => {
|
|
|
70
74
|
attention.init(visibility);
|
|
71
75
|
}
|
|
72
76
|
}
|
|
77
|
+
else if (resolvedPlatform === 'help-centre') {
|
|
78
|
+
core.init('help-centre');
|
|
79
|
+
if (window.addEventListener) {
|
|
80
|
+
attention.init(visibility);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
73
83
|
};
|
|
74
84
|
/**
|
|
75
85
|
* Send a new page-view event to Ophan.
|
package/NPM-dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AACzC,OAAO,eAAe,MAAM,sBAAsB,CAAC;AACnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,yBAAyB,CAAC;AACjC,OAAO,WAAW,CAAC;AACnB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,eAAe,CAAC;AAGvB,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AAUvD,MAAM,SAAS,GAAG,GAAY,EAAE,CAC/B,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,CAAC;AAElE,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,IAAI,eAAe,GAAoB,IAAI,CAAC;AAE5C,MAAM,mBAAmB,GAAG,CAAC,UAAkB,EAAQ,EAAE;IACxD,OAAO,CAAC,IAAI,CACX,iBAAiB,UAAU,0CAA0C,CACrE,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAW,EAAE;IACrD,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QAClB,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,WAAqB,IAAI,EAAQ,EAAE;IACvD,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QAClB,OAAO;IACR,CAAC;IAED,MAAM,gBAAgB,GACrB,QAAQ,KAAK,mBAAmB,IAAI,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import attention from '../attention.js';
|
|
2
2
|
import core from '../core.js';
|
|
3
3
|
import heatmap from '../heatmap.js';
|
|
4
|
-
import { init } from '../index.js';
|
|
4
|
+
import ophan, { init } from '../index.js';
|
|
5
5
|
import privatebrowsing from '../privatebrowsing.js';
|
|
6
6
|
describe('init', () => {
|
|
7
7
|
it('falls back to ng for an unrecognised runtime platform', () => {
|
|
@@ -13,6 +13,7 @@ describe('init', () => {
|
|
|
13
13
|
expect(core.init).toHaveBeenCalledWith('next-gen');
|
|
14
14
|
expect(privatebrowsing.init).toHaveBeenCalledTimes(1);
|
|
15
15
|
expect(heatmap.init).toHaveBeenCalledTimes(1);
|
|
16
|
+
expect(window.guardian.ophan).toBe(ophan);
|
|
16
17
|
});
|
|
17
18
|
});
|
|
18
19
|
//# sourceMappingURL=index.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/tests/index.test.js"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/tests/index.test.js"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,eAAe,MAAM,uBAAuB,CAAC;AAEpD,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;IACrB,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAChE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACtB,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACzB,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAE3B,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/core.js"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/core.js"],"names":[],"mappings":";;;;IA4RkB,uCAEhB;;;;;;;;;;;;;;AA9RE,sBAAI;AAEP,4CAA0B;AA+I3B;;;;;;;GAOG;AACH,4CAHW,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,QAUvC;AA/JA,kCAAgB;AAgOjB;;;;GAIG;AACH,mDAFW,MAAM,QAgBhB;AAjCD;;;;;GAKG;AACH,mEAHW,MAAM,EAAE,GACN,MAAM,EAAE,CAQpB;AA5KD;;;;;;GAMG;AACH,mDAHW,MAAM,GACJ,MAAM,GAAG,SAAS,CAa9B;AA0ED,oCAA0B;AAmB1B;;;GAGG;AACH,yCAiBC;AAgFD;;;;;GAKG;AACH,0CAJW,OAAO,MAAM,EAAE,OAAO,CAAC,iBACvB,MAAM,iBACN,OAAO,MAAM,EAAE,OAAO,CAAC,QAWjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-centre.d.ts","sourceRoot":"","sources":["../../src/help-centre.ts"],"names":[],"mappings":""}
|
|
@@ -9,7 +9,7 @@ import { EventPayload } from './types/event.js';
|
|
|
9
9
|
* The platform controls the historical Ophan serving-platform value and any
|
|
10
10
|
* platform-specific browser integrations started by `init()`.
|
|
11
11
|
*/
|
|
12
|
-
export type Platform = 'ng' | 'manage-my-account' | 'support';
|
|
12
|
+
export type Platform = 'ng' | 'manage-my-account' | 'support' | 'help-centre';
|
|
13
13
|
/**
|
|
14
14
|
* Initialise the Ophan tracker for a specific platform.
|
|
15
15
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,yBAAyB,CAAC;AACjC,OAAO,WAAW,CAAC;AACnB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,mBAAmB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,yBAAyB,CAAC;AACjC,OAAO,WAAW,CAAC;AACnB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,mBAAmB,GAAG,SAAS,GAAG,aAAa,CAAC;AA2B9E;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,IAAI,cAAc,QAAQ,KAAU,IAmDhD,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,gBAAgB,SACvB,MAAM,aACD,MAAM,KAId,IAWF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,MAAM,UAAW,YAAY,aAAa,MAAM,IAAI,KAAG,IAanE,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,uBAAuB,SAC7B,MAAM,MACR,WAAW,uBACM,MAAM,oBACT,OAAO,KACvB,IAMF,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,eAAe,UAAW,MAAM,KAAG,IAE/C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,wBAAwB,YAAa,OAAO,KAAG,IAM3D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,UAAU,QAAO,IAM7B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,QAAO,MAAyB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,aAAa,QAAO,MAAyB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,gBAAgB,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5D,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC7D,uBAAuB,EAAE,CACxB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,WAAW,EACf,mBAAmB,EAAE,MAAM,EAC3B,eAAe,CAAC,EAAE,OAAO,KACrB,IAAI,CAAC;IACV,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,wBAAwB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,QAAA,MAAM,YAAY,EAAE,YAgBnB,CAAC;AAEF,eAAe,YAAY,CAAC;AAG5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -46,6 +46,26 @@ The CDN version provides individual entry points for specific use cases, availab
|
|
|
46
46
|
- `smart-news.js` - SmartNews platform tracking
|
|
47
47
|
- `witness.js` - GuardianWitness tracking
|
|
48
48
|
|
|
49
|
+
#### Plain `<script src>` (IIFE) build
|
|
50
|
+
|
|
51
|
+
The AMD (`ophan/*.js`) and SystemJS (`*.js`) CDN builds both require a module
|
|
52
|
+
loader on the page. For consumers that have **no module loader and no bundler**
|
|
53
|
+
— e.g. the Salesforce-hosted Help Centre — there is a self-executing IIFE build:
|
|
54
|
+
|
|
55
|
+
- `help-centre.iife.js` - Self-initialises platform) and exposes the full
|
|
56
|
+
tracker API at `window.guardian.ophan`.
|
|
57
|
+
|
|
58
|
+
```html
|
|
59
|
+
<!-- Sends the first page view on load; no page-side boot code needed. -->
|
|
60
|
+
<script src="https://j.ophan.co.uk/help-centre.iife.js"></script>
|
|
61
|
+
<script>
|
|
62
|
+
// Single-page-app route change: sends a fresh page view.
|
|
63
|
+
window.guardian.ophan.sendInitialEvent();
|
|
64
|
+
// Component/interaction events:
|
|
65
|
+
window.guardian.ophan.record({ componentEvent: { /* … */ } });
|
|
66
|
+
</script>
|
|
67
|
+
```
|
|
68
|
+
|
|
49
69
|
You can see example usage of the library on theguardian.com [here](https://github.com/guardian/dotcom-rendering/blob/main/dotcom-rendering/src/client/ophan/ophan.ts)
|
|
50
70
|
|
|
51
71
|
1. **Import and initialise the library:**
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Self-initialising IIFE entry for `<script src>` consumers with no module
|
|
3
|
+
* loader or bundler (e.g. the Salesforce-hosted Help Centre). On load it exposes
|
|
4
|
+
* the tracker at `window.guardian.ophan` and sends the first page view.
|
|
5
|
+
*/
|
|
6
|
+
import ophan, { init, type Platform } from './index.js';
|
|
7
|
+
|
|
8
|
+
const HELP_CENTRE_PLATFORM: Platform = 'help-centre';
|
|
9
|
+
|
|
10
|
+
if (typeof window !== 'undefined') {
|
|
11
|
+
const windowWithGuardian = window as typeof window & {
|
|
12
|
+
guardian?: {
|
|
13
|
+
ophan?: typeof ophan;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
// Don't clobber an existing tracker (e.g. script included twice).
|
|
18
|
+
if (!windowWithGuardian.guardian?.ophan) {
|
|
19
|
+
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
20
|
+
windowWithGuardian.guardian.ophan = ophan;
|
|
21
|
+
init(HELP_CENTRE_PLATFORM);
|
|
22
|
+
}
|
|
23
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -19,7 +19,7 @@ import clickPathCapture from './click-path-capture.js';
|
|
|
19
19
|
* The platform controls the historical Ophan serving-platform value and any
|
|
20
20
|
* platform-specific browser integrations started by `init()`.
|
|
21
21
|
*/
|
|
22
|
-
export type Platform = 'ng' | 'manage-my-account' | 'support';
|
|
22
|
+
export type Platform = 'ng' | 'manage-my-account' | 'support' | 'help-centre';
|
|
23
23
|
|
|
24
24
|
const isBrowser = (): boolean =>
|
|
25
25
|
typeof window !== 'undefined' && typeof document !== 'undefined';
|
|
@@ -66,7 +66,7 @@ export const init = (platform: Platform = 'ng'): void => {
|
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
const resolvedPlatform: Platform =
|
|
69
|
-
platform === 'manage-my-account' || platform === 'support' ? platform : 'ng';
|
|
69
|
+
platform === 'manage-my-account' || platform === 'support' || platform === 'help-centre' ? platform : 'ng';
|
|
70
70
|
|
|
71
71
|
if (initialized) {
|
|
72
72
|
console.warn(
|
|
@@ -86,6 +86,15 @@ export const init = (platform: Platform = 'ng'): void => {
|
|
|
86
86
|
if ((window as any).addEventListener) {
|
|
87
87
|
attention.init(visibility);
|
|
88
88
|
}
|
|
89
|
+
|
|
90
|
+
const windowWithGuardian = window as typeof window & {
|
|
91
|
+
guardian?: {
|
|
92
|
+
ophan?: OphanTracker;
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
96
|
+
windowWithGuardian.guardian.ophan =
|
|
97
|
+
windowWithGuardian.guardian.ophan ?? ophanTracker;
|
|
89
98
|
} else if (resolvedPlatform === 'manage-my-account') {
|
|
90
99
|
core.init('manage-my-account');
|
|
91
100
|
if ((window as any).addEventListener) {
|
|
@@ -96,6 +105,11 @@ export const init = (platform: Platform = 'ng'): void => {
|
|
|
96
105
|
if ((window as any).addEventListener) {
|
|
97
106
|
attention.init(visibility);
|
|
98
107
|
}
|
|
108
|
+
} else if (resolvedPlatform === 'help-centre') {
|
|
109
|
+
core.init('help-centre');
|
|
110
|
+
if ((window as any).addEventListener) {
|
|
111
|
+
attention.init(visibility);
|
|
112
|
+
}
|
|
99
113
|
}
|
|
100
114
|
};
|
|
101
115
|
|