@guardian/ophan-tracker-js 5.1.1 → 5.1.3
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/click-path-capture.js +13 -0
- package/NPM-dist/click-path-capture.js.map +1 -1
- package/NPM-dist/core.js +16 -8
- package/NPM-dist/core.js.map +1 -1
- package/NPM-dist/help-centre.js +31 -7
- package/NPM-dist/help-centre.js.map +1 -1
- package/NPM-dist/tests/click-path-capture.test.js +42 -1
- package/NPM-dist/tests/click-path-capture.test.js.map +1 -1
- package/NPM-dist/tests/core.test.js +9 -2
- package/NPM-dist/tests/core.test.js.map +1 -1
- package/NPM-dist/tests/help-centre.test.js +25 -0
- package/NPM-dist/tests/help-centre.test.js.map +1 -0
- package/NPM-dist/types/click-path-capture.d.ts +1 -0
- package/NPM-dist/types/click-path-capture.d.ts.map +1 -1
- package/NPM-dist/types/core.d.ts +3 -0
- package/NPM-dist/types/core.d.ts.map +1 -1
- package/NPM-dist/types/help-centre.d.ts +4 -1
- package/NPM-dist/types/help-centre.d.ts.map +1 -1
- package/NPM-dist/types/tests/help-centre.test.d.ts +2 -0
- package/NPM-dist/types/tests/help-centre.test.d.ts.map +1 -0
- package/package.json +5 -1
- package/readme.md +36 -12
- package/src/help-centre.ts +40 -8
|
@@ -24,6 +24,18 @@ export const getContainingComponent = (el) => {
|
|
|
24
24
|
return null;
|
|
25
25
|
return (el.getAttribute('data-component') || getContainingComponent(el.parentNode));
|
|
26
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* Retrieves the value of the `data-fronts-test-uuid` attribute from the closest ancestor.
|
|
29
|
+
*
|
|
30
|
+
* @param {Element} el - The element to start searching from.
|
|
31
|
+
* @returns {string|null} The Fronts test UUID or null if not found.
|
|
32
|
+
*/
|
|
33
|
+
export const getContainingFrontsTestUUID = (el) => {
|
|
34
|
+
if (!el || el.nodeName?.toLowerCase() === 'body')
|
|
35
|
+
return null;
|
|
36
|
+
return (el.getAttribute('data-fronts-test-uuid') ||
|
|
37
|
+
getContainingFrontsTestUUID(el.parentNode));
|
|
38
|
+
};
|
|
27
39
|
/**
|
|
28
40
|
* Collects all `data-link-name` attribute values from the ancestor elements.
|
|
29
41
|
*
|
|
@@ -54,6 +66,7 @@ export const trackClickComponentEvent = (element) => {
|
|
|
54
66
|
from: [location.protocol, '//', location.host, location.pathname].join(''),
|
|
55
67
|
to: element.href || undefined,
|
|
56
68
|
referringComponent: getContainingComponent(element),
|
|
69
|
+
frontsTestUUID: getContainingFrontsTestUUID(element),
|
|
57
70
|
referringDataLinkNames: getDataLinkNames(element),
|
|
58
71
|
refPlatform: ophan.servingPlatform(),
|
|
59
72
|
refViewId: ophan.viewId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"click-path-capture.js","sourceRoot":"","sources":["../src/click-path-capture.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"click-path-capture.js","sourceRoot":"","sources":["../src/click-path-capture.js"],"names":[],"mappings":"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"}
|
package/NPM-dist/core.js
CHANGED
|
@@ -8,16 +8,22 @@ let doc = null;
|
|
|
8
8
|
let canStoreEventsInLocalStorage = false;
|
|
9
9
|
let platform = null;
|
|
10
10
|
const MaximumComponentNameLength = 50;
|
|
11
|
-
|
|
11
|
+
const configure = function (servingPlatform) {
|
|
12
|
+
// In most cases, configuration will take place as part of the init function – the help centre entry point needs
|
|
13
|
+
// to be able to configure without calling init (because it must only send pageviews explicitly)
|
|
12
14
|
platform = servingPlatform;
|
|
13
|
-
if (typeof window
|
|
14
|
-
|
|
15
|
-
canStoreEventsInLocalStorage =
|
|
16
|
-
window.localStorage != null &&
|
|
17
|
-
typeof JSON !== 'undefined' &&
|
|
18
|
-
JSON !== null;
|
|
15
|
+
if (typeof window === 'undefined') {
|
|
16
|
+
return;
|
|
19
17
|
}
|
|
20
|
-
|
|
18
|
+
doc = window.document;
|
|
19
|
+
canStoreEventsInLocalStorage =
|
|
20
|
+
window.localStorage != null &&
|
|
21
|
+
typeof JSON !== 'undefined' &&
|
|
22
|
+
JSON !== null;
|
|
23
|
+
};
|
|
24
|
+
init = function (servingPlatform, httpStatus) {
|
|
25
|
+
configure(servingPlatform);
|
|
26
|
+
if (typeof window === 'undefined') {
|
|
21
27
|
return;
|
|
22
28
|
}
|
|
23
29
|
if (visibility.state() !== 'prerender') {
|
|
@@ -230,6 +236,7 @@ const appendContentType = (event, localPlatform, localGuardian) => {
|
|
|
230
236
|
};
|
|
231
237
|
export default {
|
|
232
238
|
init: init,
|
|
239
|
+
configure: configure,
|
|
233
240
|
storeDataToSendOnNextEvent: storeDataToSendOnNextEvent,
|
|
234
241
|
onLoadCapture: onLoadCapture,
|
|
235
242
|
servingPlatform: function () {
|
|
@@ -251,5 +258,6 @@ export const _testExports = {
|
|
|
251
258
|
onLoadCapture,
|
|
252
259
|
processCaptures,
|
|
253
260
|
appendContentType,
|
|
261
|
+
configure,
|
|
254
262
|
};
|
|
255
263
|
//# sourceMappingURL=core.js.map
|
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,
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.js"],"names":[],"mappings":"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"}
|
package/NPM-dist/help-centre.js
CHANGED
|
@@ -1,17 +1,41 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* IIFE entry for `<script src>` consumers with no module loader or bundler
|
|
3
|
+
* (e.g. the Salesforce-hosted Help Centre). Loading the script exposes an
|
|
4
|
+
* explicit page-view method at `window.guardian.ophan` without sending anything.
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
7
|
-
|
|
6
|
+
import core from './core.js';
|
|
7
|
+
import transmit from './transmit.js';
|
|
8
|
+
let hasSentPageview = false;
|
|
9
|
+
export const sendInitialPageview = (url = typeof window !== 'undefined' ? location.href : '', referrer = typeof window !== 'undefined' &&
|
|
10
|
+
typeof document !== 'undefined'
|
|
11
|
+
? document.referrer
|
|
12
|
+
: '') => {
|
|
13
|
+
if (typeof window === 'undefined' || typeof document === 'undefined') {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
if (!hasSentPageview) {
|
|
18
|
+
core.configure('help-centre');
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
transmit.bumpViewId();
|
|
22
|
+
}
|
|
23
|
+
core.sendInitialEvent(null, url, referrer);
|
|
24
|
+
hasSentPageview = true;
|
|
25
|
+
}
|
|
26
|
+
catch (error) {
|
|
27
|
+
console.log(error);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
const helpCentreTracker = {
|
|
31
|
+
sendInitialPageview,
|
|
32
|
+
};
|
|
8
33
|
if (typeof window !== 'undefined') {
|
|
9
34
|
const windowWithGuardian = window;
|
|
10
35
|
// Don't clobber an existing tracker (e.g. script included twice).
|
|
11
36
|
if (!windowWithGuardian.guardian?.ophan) {
|
|
12
37
|
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
13
|
-
windowWithGuardian.guardian.ophan =
|
|
14
|
-
init(HELP_CENTRE_PLATFORM);
|
|
38
|
+
windowWithGuardian.guardian.ophan = helpCentreTracker;
|
|
15
39
|
}
|
|
16
40
|
}
|
|
17
41
|
//# sourceMappingURL=help-centre.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-centre.js","sourceRoot":"","sources":["../src/help-centre.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"help-centre.js","sourceRoot":"","sources":["../src/help-centre.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAClC,MAAc,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAChE,WAAmB,OAAO,MAAM,KAAK,WAAW;IAChD,OAAO,QAAQ,KAAK,WAAW;IAC9B,CAAC,CAAC,QAAQ,CAAC,QAAQ;IACnB,CAAC,CAAC,EAAE,EACE,EAAE;IACT,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACtE,OAAO;IACR,CAAC;IAED,IAAI,CAAC;QACJ,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACP,QAAQ,CAAC,UAAU,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC3C,eAAe,GAAG,IAAI,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;AACF,CAAC,CAAC;AAMF,MAAM,iBAAiB,GAAsB;IAC5C,mBAAmB;CACnB,CAAC;AAEF,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,iBAAiB,CAAC;IACvD,CAAC;AACF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import clickPathCapture, { getContainingComponent, validAncestorAnchorElement, trackClickComponentEvent, } from '../click-path-capture.js';
|
|
1
|
+
import clickPathCapture, { getContainingComponent, getContainingFrontsTestUUID, validAncestorAnchorElement, trackClickComponentEvent, } from '../click-path-capture.js';
|
|
2
2
|
import ophan from '../core.js';
|
|
3
3
|
import transmit from '../transmit.js';
|
|
4
4
|
const { getDataLinkNames } = clickPathCapture;
|
|
@@ -51,6 +51,25 @@ describe('click-path-capture.js', () => {
|
|
|
51
51
|
expect(getContainingComponent(element)).toBe('nested-component');
|
|
52
52
|
});
|
|
53
53
|
});
|
|
54
|
+
describe('getContainingFrontsTestUUID', () => {
|
|
55
|
+
test('should find the closest ancestor with a data-fronts-test-uuid attribute', () => {
|
|
56
|
+
document.body.innerHTML = `
|
|
57
|
+
<div data-fronts-test-uuid="outer-test-uuid">
|
|
58
|
+
<div data-fronts-test-uuid="inner-test-uuid">
|
|
59
|
+
<a href="#" id="frontsTestLink">
|
|
60
|
+
<span id="frontsTestElement"></span>
|
|
61
|
+
</a>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
`;
|
|
65
|
+
const element = document.getElementById('frontsTestElement');
|
|
66
|
+
expect(getContainingFrontsTestUUID(element)).toBe('inner-test-uuid');
|
|
67
|
+
});
|
|
68
|
+
test('should return null if no data-fronts-test-uuid ancestor is found', () => {
|
|
69
|
+
const element = document.createElement('div');
|
|
70
|
+
expect(getContainingFrontsTestUUID(element)).toBeNull();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
54
73
|
describe('getDataLinkNames', () => {
|
|
55
74
|
test('should collect data-link-name attributes from ancestors', () => {
|
|
56
75
|
const element = document.getElementById('testElement1');
|
|
@@ -214,6 +233,7 @@ describe('click-path-capture.js', () => {
|
|
|
214
233
|
from: 'http://localhost/',
|
|
215
234
|
to: 'http://localhost/next-page',
|
|
216
235
|
referringComponent: 'navigation',
|
|
236
|
+
frontsTestUUID: null,
|
|
217
237
|
referringDataLinkNames: ['nav-link'],
|
|
218
238
|
refPlatform: 'web',
|
|
219
239
|
refViewId: 'test-view-id',
|
|
@@ -237,11 +257,32 @@ describe('click-path-capture.js', () => {
|
|
|
237
257
|
from: 'http://localhost/',
|
|
238
258
|
to: undefined, // span elements don't have href
|
|
239
259
|
referringComponent: 'content',
|
|
260
|
+
frontsTestUUID: null,
|
|
240
261
|
referringDataLinkNames: ['inner-span', 'outer-anchor'],
|
|
241
262
|
refPlatform: 'web',
|
|
242
263
|
refViewId: 'test-view-id',
|
|
243
264
|
});
|
|
244
265
|
});
|
|
266
|
+
test('should store the Fronts test UUID for the referred page view', () => {
|
|
267
|
+
document.body.innerHTML = `
|
|
268
|
+
<div data-component="container" data-fronts-test-uuid="1e2c761c-25ef-4b1a-987d-f5b6e8f9116f">
|
|
269
|
+
<a id="frontsTestAnchor" href="/tested-article" data-link-name="article-link">
|
|
270
|
+
Tested article
|
|
271
|
+
</a>
|
|
272
|
+
</div>
|
|
273
|
+
`;
|
|
274
|
+
const anchor = document.getElementById('frontsTestAnchor');
|
|
275
|
+
trackClickComponentEvent(anchor);
|
|
276
|
+
expect(ophanStoreDataToSendOnNextEventSpy).toHaveBeenCalledWith({
|
|
277
|
+
from: 'http://localhost/',
|
|
278
|
+
to: 'http://localhost/tested-article',
|
|
279
|
+
referringComponent: 'container',
|
|
280
|
+
frontsTestUUID: '1e2c761c-25ef-4b1a-987d-f5b6e8f9116f',
|
|
281
|
+
referringDataLinkNames: ['article-link'],
|
|
282
|
+
refPlatform: 'web',
|
|
283
|
+
refViewId: 'test-view-id',
|
|
284
|
+
});
|
|
285
|
+
});
|
|
245
286
|
test('should not send data if no data-link-names are present', () => {
|
|
246
287
|
document.body.innerHTML = `
|
|
247
288
|
<div data-component="empty-component">
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"click-path-capture.test.js","sourceRoot":"","sources":["../../src/tests/click-path-capture.test.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"click-path-capture.test.js","sourceRoot":"","sources":["../../src/tests/click-path-capture.test.js"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _testExports } from '../core.js';
|
|
1
|
+
import core, { _testExports } from '../core.js';
|
|
2
2
|
import transmit from '../transmit';
|
|
3
3
|
const mockSendMore = jest.fn();
|
|
4
4
|
const mockSendInitial = jest.fn();
|
|
@@ -6,7 +6,14 @@ const mockBumpViewId = jest.fn();
|
|
|
6
6
|
transmit.sendMore = mockSendMore;
|
|
7
7
|
transmit.sendInitial = mockSendInitial;
|
|
8
8
|
transmit.bumpViewId = mockBumpViewId;
|
|
9
|
-
const { getQueryParameterValue, appendComponentDataToEvent, trimComponentNamesToUrlSafeLength, onLoadCapture, onLoadCaptures, processCaptures, appendContentType, } = _testExports;
|
|
9
|
+
const { getQueryParameterValue, appendComponentDataToEvent, trimComponentNamesToUrlSafeLength, onLoadCapture, onLoadCaptures, processCaptures, appendContentType, configure } = _testExports;
|
|
10
|
+
describe('configure', () => {
|
|
11
|
+
it('sets the serving platform without sending a page view', () => {
|
|
12
|
+
configure('help-centre');
|
|
13
|
+
expect(core.servingPlatform()).toBe('help-centre');
|
|
14
|
+
expect(transmit.sendInitial).not.toHaveBeenCalled();
|
|
15
|
+
});
|
|
16
|
+
});
|
|
10
17
|
describe('appendComponentDataToEvent', () => {
|
|
11
18
|
beforeEach(() => {
|
|
12
19
|
jest.clearAllMocks();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.test.js","sourceRoot":"","sources":["../../src/tests/core.test.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"core.test.js","sourceRoot":"","sources":["../../src/tests/core.test.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import core from '../core.js';
|
|
2
|
+
import { sendInitialPageview } from '../help-centre.js';
|
|
3
|
+
import transmit from '../transmit.js';
|
|
4
|
+
describe('Help Centre tracker', () => {
|
|
5
|
+
it('only configures and sends page views when explicitly called', () => {
|
|
6
|
+
core.configure = jest.fn();
|
|
7
|
+
core.init = jest.fn();
|
|
8
|
+
core.sendInitialEvent = jest.fn();
|
|
9
|
+
transmit.bumpViewId = jest.fn();
|
|
10
|
+
expect(window.guardian.ophan).toEqual({ sendInitialPageview });
|
|
11
|
+
expect(core.configure).not.toHaveBeenCalled();
|
|
12
|
+
expect(core.init).not.toHaveBeenCalled();
|
|
13
|
+
expect(core.sendInitialEvent).not.toHaveBeenCalled();
|
|
14
|
+
sendInitialPageview('https://www.theguardian.com/help', 'https://example.com');
|
|
15
|
+
expect(core.configure).toHaveBeenCalledWith('help-centre');
|
|
16
|
+
expect(transmit.bumpViewId).not.toHaveBeenCalled();
|
|
17
|
+
expect(core.sendInitialEvent).toHaveBeenCalledWith(null, 'https://www.theguardian.com/help', 'https://example.com');
|
|
18
|
+
sendInitialPageview('https://www.theguardian.com/help/another');
|
|
19
|
+
expect(core.configure).toHaveBeenCalledTimes(1);
|
|
20
|
+
expect(core.init).not.toHaveBeenCalled();
|
|
21
|
+
expect(transmit.bumpViewId).toHaveBeenCalledTimes(1);
|
|
22
|
+
expect(core.sendInitialEvent).toHaveBeenLastCalledWith(null, 'https://www.theguardian.com/help/another', '');
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=help-centre.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-centre.test.js","sourceRoot":"","sources":["../../src/tests/help-centre.test.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACtE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAClC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAEhC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAErD,mBAAmB,CAAC,kCAAkC,EAAE,qBAAqB,CAAC,CAAC;QAE/E,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC3D,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CACjD,IAAI,EACJ,kCAAkC,EAClC,qBAAqB,CACrB,CAAC;QAEF,mBAAmB,CAAC,0CAA0C,CAAC,CAAC;QAEhE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,wBAAwB,CACrD,IAAI,EACJ,0CAA0C,EAC1C,EAAE,CACF,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export function validAncestorAnchorElement(el: Element): Element | null;
|
|
2
2
|
export function getContainingComponent(el: Element): string | null;
|
|
3
|
+
export function getContainingFrontsTestUUID(el: Element): string | null;
|
|
3
4
|
export function trackClickComponentEvent(element: Element): void;
|
|
4
5
|
declare namespace _default {
|
|
5
6
|
export { getDataLinkNames };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"click-path-capture.d.ts","sourceRoot":"","sources":["../../src/click-path-capture.js"],"names":[],"mappings":"AASO,+CAHI,OAAO,GACL,OAAO,GAAC,IAAI,CAOxB;AAQM,2CAHI,OAAO,GACL,MAAM,GAAC,IAAI,CAOvB;AAyBM,kDAFI,OAAO,
|
|
1
|
+
{"version":3,"file":"click-path-capture.d.ts","sourceRoot":"","sources":["../../src/click-path-capture.js"],"names":[],"mappings":"AASO,+CAHI,OAAO,GACL,OAAO,GAAC,IAAI,CAOxB;AAQM,2CAHI,OAAO,GACL,MAAM,GAAC,IAAI,CAOvB;AAQM,gDAHI,OAAO,GACL,MAAM,GAAC,IAAI,CAQvB;AAyBM,kDAFI,OAAO,QA2BjB;;;;;;AAhDD;;;;;;GAMG;AACH,sCAJW,OAAO,kBACP,MAAM,EAAE,GACN,MAAM,EAAE,CAUpB"}
|
package/NPM-dist/types/core.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
declare namespace _default {
|
|
2
2
|
export { init };
|
|
3
|
+
export { configure };
|
|
3
4
|
export { storeDataToSendOnNextEvent };
|
|
4
5
|
export { onLoadCapture };
|
|
5
6
|
export function servingPlatform(): any;
|
|
@@ -15,8 +16,10 @@ export namespace _testExports {
|
|
|
15
16
|
export { onLoadCapture };
|
|
16
17
|
export { processCaptures };
|
|
17
18
|
export { appendContentType };
|
|
19
|
+
export { configure };
|
|
18
20
|
}
|
|
19
21
|
declare let init: any;
|
|
22
|
+
declare function configure(servingPlatform: any): void;
|
|
20
23
|
declare let storeDataToSendOnNextEvent: any;
|
|
21
24
|
/**
|
|
22
25
|
* Registers a data capture function to be called when the document is fully loaded.
|
|
@@ -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":";;;;;IAuSkB,uCAEhB;;;;;;;;;;;;;;;AAzSE,sBAAI;AAqBR,uDAcC;AAjCA,4CAA0B;AAyJ3B;;;;;;;GAOG;AACH,4CAHW,MAAM,OAAO,MAAM,EAAE,OAAO,CAAC,QAUvC;AAzKA,kCAAgB;AA0OjB;;;;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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-centre.d.ts","sourceRoot":"","sources":["../../src/help-centre.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"help-centre.d.ts","sourceRoot":"","sources":["../../src/help-centre.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,mBAAmB,SAC1B,MAAM,aACD,MAAM,KAId,IAgBF,CAAC;AAEF,MAAM,WAAW,iBAAiB;IACjC,mBAAmB,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-centre.test.d.ts","sourceRoot":"","sources":["../../../src/tests/help-centre.test.js"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@guardian/ophan-tracker-js",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.3",
|
|
4
4
|
"repository": {
|
|
5
5
|
"url": "git+https://github.com/guardian/ophan.git",
|
|
6
6
|
"directory": "tracker-js"
|
|
@@ -33,9 +33,11 @@
|
|
|
33
33
|
"@rollup/plugin-terser": "0.4.3",
|
|
34
34
|
"@rollup/plugin-typescript": "^11.1.6",
|
|
35
35
|
"@types/jest": "^29.5.12",
|
|
36
|
+
"@types/node": "^22.20.1",
|
|
36
37
|
"babel-jest": "^29.7.0",
|
|
37
38
|
"jest": "^29.7.0",
|
|
38
39
|
"jest-environment-jsdom": "^29.7.0",
|
|
40
|
+
"puppeteer": "^24.43.0",
|
|
39
41
|
"rollup": "3.29.5",
|
|
40
42
|
"rollup-jest": "^3.1.0",
|
|
41
43
|
"ts-jest": "^29.1.4",
|
|
@@ -43,9 +45,11 @@
|
|
|
43
45
|
},
|
|
44
46
|
"scripts": {
|
|
45
47
|
"build-for-cdn": "rm -rf CDN-dist && NODE_ENV=production npx rollup -c",
|
|
48
|
+
"build-for-browser-test": "rm -rf browser-test-dist && npm run build-for-npm && BROWSER_TEST=true rollup -c && tsc --project tsconfig.browser-tests.json",
|
|
46
49
|
"build-for-npm": "rm -rf NPM-dist && tsc",
|
|
47
50
|
"pretest": "tsc",
|
|
48
51
|
"test": "jest",
|
|
52
|
+
"test:browser": "npm run build-for-browser-test && node --test --test-concurrency=1 browser-test-dist/tests/browser-tests/*.behaviour.test.js",
|
|
49
53
|
"test:types": "tsc --noEmit --pretty false --project tsconfig.type-tests.json",
|
|
50
54
|
"format": "npx prettier --write .",
|
|
51
55
|
"changeset:publish:canary": "changeset publish --tag canary"
|
package/readme.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Using Ophan
|
|
1
|
+
# Using Ophan tracker-js
|
|
2
2
|
|
|
3
3
|
Browser JavaScript client for Ophan.
|
|
4
4
|
|
|
@@ -10,7 +10,7 @@ $ npm install @guardian/ophan-tracker-js
|
|
|
10
10
|
|
|
11
11
|
## Usage
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
tracker-js is available as both an NPM package and a CDN distribution.
|
|
14
14
|
|
|
15
15
|
### NPM Package
|
|
16
16
|
|
|
@@ -52,17 +52,14 @@ The AMD (`ophan/*.js`) and SystemJS (`*.js`) CDN builds both require a module
|
|
|
52
52
|
loader on the page. For consumers that have **no module loader and no bundler**
|
|
53
53
|
— e.g. the Salesforce-hosted Help Centre — there is a self-executing IIFE build:
|
|
54
54
|
|
|
55
|
-
- `help-centre.iife.js` -
|
|
56
|
-
|
|
55
|
+
- `help-centre.iife.js` - Exposes explicit Help Centre page-view tracking at
|
|
56
|
+
`window.guardian.ophan` without sending anything when the script loads.
|
|
57
57
|
|
|
58
58
|
```html
|
|
59
|
-
<!-- Sends the first page view on load; no page-side boot code needed. -->
|
|
60
59
|
<script src="https://j.ophan.co.uk/help-centre.iife.js"></script>
|
|
61
60
|
<script>
|
|
62
|
-
//
|
|
63
|
-
window.guardian.ophan.
|
|
64
|
-
// Component/interaction events:
|
|
65
|
-
window.guardian.ophan.record({ componentEvent: { /* … */ } });
|
|
61
|
+
// Call only when the Help Centre considers this to be a page view.
|
|
62
|
+
window.guardian.ophan.sendInitialPageview();
|
|
66
63
|
</script>
|
|
67
64
|
```
|
|
68
65
|
|
|
@@ -159,7 +156,7 @@ _Please [consult with the Ophan team](Ophan.Dev@guardian.co.uk) if you wish to d
|
|
|
159
156
|
|
|
160
157
|
The backend of tracker exposes two endpoints, `img/1` which takes in page view events, and `img/2` which takes in all other events. For events sent to the `img/2` endpoint, a page view event MUST also be created via the `img/1`. Further down the Ophan and Datatech pipeline, events with the same page view ID are tied together for ease of querying and data analysis. Therefore, a page view event must be present.
|
|
161
158
|
|
|
162
|
-
# Developing Ophan
|
|
159
|
+
# Developing Ophan tracker-js
|
|
163
160
|
|
|
164
161
|
The library is implemented using both Javascript and TypeScript, with the source code located in the `src` directory and its subdirectories. The project is set up to include both TypeScript (.ts) and JavaScript (.js) files, allowing for a mix of both languages in the library's implementation.
|
|
165
162
|
|
|
@@ -179,6 +176,33 @@ The TypeScript compiler is configured to generate compiled JavaScript files and
|
|
|
179
176
|
.../ophan/tracker-js $ npm run test:types
|
|
180
177
|
```
|
|
181
178
|
|
|
179
|
+
## Browser behaviour tests
|
|
180
|
+
|
|
181
|
+
The browser behaviour tests build the NPM package from the current source, load
|
|
182
|
+
the Guardian front in headless Chrome and inject it as a self-contained script.
|
|
183
|
+
This build from the current checkout is called the candidate, to distinguish it
|
|
184
|
+
from the tracker-js version already deployed on the live page. The code under
|
|
185
|
+
test comes from `NPM-dist`, the same build NPM consumers install; Rollup packages
|
|
186
|
+
it into one script so Puppeteer can inject it. Requests are redirected to a
|
|
187
|
+
non-routable test origin and inspected in the browser, so the tests do not send
|
|
188
|
+
analytics to Ophan.
|
|
189
|
+
|
|
190
|
+
These tests validate the candidate's browser behaviour and outbound requests
|
|
191
|
+
before release. [`OphTrack`](../oph-track/README.md) instead checks the deployed
|
|
192
|
+
production tracker and verifies that pageviews pass through the complete Ophan
|
|
193
|
+
ingestion pipeline into Elasticsearch.
|
|
194
|
+
|
|
195
|
+
```shell
|
|
196
|
+
npm run test:browser
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
Set `GUARDIAN_FRONT_URL` to test a different Guardian page. The default is
|
|
200
|
+
`https://www.theguardian.com/uk`.
|
|
201
|
+
|
|
202
|
+
The tests suppress Ophan requests and disable the consent manager, but the
|
|
203
|
+
production page can still contact other third parties. CI runs them for
|
|
204
|
+
tracker-js pull requests; they can also be started manually from GitHub Actions.
|
|
205
|
+
|
|
182
206
|
#### Proxy tracker-js:
|
|
183
207
|
|
|
184
208
|
1. Install dependencies
|
|
@@ -209,7 +233,7 @@ The TypeScript compiler is configured to generate compiled JavaScript files and
|
|
|
209
233
|
|
|
210
234
|
### Two formats for release
|
|
211
235
|
|
|
212
|
-
When you make a change to
|
|
236
|
+
When you make a change to tracker-js, you must release on _both_ these systems:
|
|
213
237
|
|
|
214
238
|
#### NPM
|
|
215
239
|
|
|
@@ -227,7 +251,7 @@ We use `changesets` for automated publishing of the NPM package:
|
|
|
227
251
|
|
|
228
252
|
#### S3 Bucket
|
|
229
253
|
|
|
230
|
-
- [https://j.ophan.co.uk/](https://j.ophan.co.uk/jobs.js) - CDN/S3, [deployed through RiffRaff](https://riffraff.gutools.co.uk/deployment/history?projectName=ophan%3A%3Aophan-tracker-js&page=1) and used by some Guardian sites like https://jobs.theguardian.com/. An advantage of this approach is that sites using it immediately get
|
|
254
|
+
- [https://j.ophan.co.uk/](https://j.ophan.co.uk/jobs.js) - CDN/S3, [deployed through RiffRaff](https://riffraff.gutools.co.uk/deployment/history?projectName=ophan%3A%3Aophan-tracker-js&page=1) and used by some Guardian sites like https://jobs.theguardian.com/. An advantage of this approach is that sites using it immediately get tracker-js updates, without developer intervention.
|
|
231
255
|
|
|
232
256
|
#### Rollup
|
|
233
257
|
|
package/src/help-centre.ts
CHANGED
|
@@ -1,23 +1,55 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* IIFE entry for `<script src>` consumers with no module loader or bundler
|
|
3
|
+
* (e.g. the Salesforce-hosted Help Centre). Loading the script exposes an
|
|
4
|
+
* explicit page-view method at `window.guardian.ophan` without sending anything.
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
6
|
+
import core from './core.js';
|
|
7
|
+
import transmit from './transmit.js';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
let hasSentPageview = false;
|
|
10
|
+
|
|
11
|
+
export const sendInitialPageview = (
|
|
12
|
+
url: string = typeof window !== 'undefined' ? location.href : '',
|
|
13
|
+
referrer: string = typeof window !== 'undefined' &&
|
|
14
|
+
typeof document !== 'undefined'
|
|
15
|
+
? document.referrer
|
|
16
|
+
: '',
|
|
17
|
+
): void => {
|
|
18
|
+
if (typeof window === 'undefined' || typeof document === 'undefined') {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
try {
|
|
23
|
+
if (!hasSentPageview) {
|
|
24
|
+
core.configure('help-centre');
|
|
25
|
+
} else {
|
|
26
|
+
transmit.bumpViewId();
|
|
27
|
+
}
|
|
28
|
+
core.sendInitialEvent(null, url, referrer);
|
|
29
|
+
hasSentPageview = true;
|
|
30
|
+
} catch (error) {
|
|
31
|
+
console.log(error);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export interface HelpCentreTracker {
|
|
36
|
+
sendInitialPageview: (url?: string, referrer?: string) => void;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const helpCentreTracker: HelpCentreTracker = {
|
|
40
|
+
sendInitialPageview,
|
|
41
|
+
};
|
|
9
42
|
|
|
10
43
|
if (typeof window !== 'undefined') {
|
|
11
44
|
const windowWithGuardian = window as typeof window & {
|
|
12
45
|
guardian?: {
|
|
13
|
-
ophan?:
|
|
46
|
+
ophan?: HelpCentreTracker;
|
|
14
47
|
};
|
|
15
48
|
};
|
|
16
49
|
|
|
17
50
|
// Don't clobber an existing tracker (e.g. script included twice).
|
|
18
51
|
if (!windowWithGuardian.guardian?.ophan) {
|
|
19
52
|
windowWithGuardian.guardian = windowWithGuardian.guardian ?? {};
|
|
20
|
-
windowWithGuardian.guardian.ophan =
|
|
21
|
-
init(HELP_CENTRE_PLATFORM);
|
|
53
|
+
windowWithGuardian.guardian.ophan = helpCentreTracker;
|
|
22
54
|
}
|
|
23
55
|
}
|