@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.
@@ -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
- init = function (servingPlatform, httpStatus) {
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 !== 'undefined') {
14
- doc = window.document;
15
- canStoreEventsInLocalStorage =
16
- window.localStorage != null &&
17
- typeof JSON !== 'undefined' &&
18
- JSON !== null;
15
+ if (typeof window === 'undefined') {
16
+ return;
19
17
  }
20
- else {
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
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.js"],"names":[],"mappings":"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"}
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,MAAM,SAAS,GAAG,UAAU,eAAe;IAC1C,gHAAgH;IAChH,gGAAgG;IAChG,QAAQ,GAAG,eAAe,CAAC;IAE3B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO;IACR,CAAC;IAED,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IACtB,4BAA4B;QAC3B,MAAM,CAAC,YAAY,IAAI,IAAI;YAC3B,OAAO,IAAI,KAAK,WAAW;YAC3B,IAAI,KAAK,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,IAAI,GAAG,UAAU,eAAe,EAAE,UAAU;IAC3C,SAAS,CAAC,eAAe,CAAC,CAAC;IAE3B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO;IACR,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,WAAW,EAAE,CAAC;QACxC,OAAO,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACP,IAAI,UAAU,CAAC,WAAW,IAAI,GAAG,EAAE,CAAC;YACnC,OAAO,GAAG,CAAC,gBAAgB,CAC1B,UAAU,CAAC,WAAW,EACtB;gBACC,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,SAAS,EAAE,CAAC;oBACtC,OAAO,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBACrC,CAAC;YACF,CAAC,EACD,KAAK,CACL,CAAC;QACH,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,CAAC,SAAS,EAAE,EAAE;IAC5C,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;QACjC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,EAAE;IAChC,OAAO,QAAQ,IAAI,sBAAsB,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;AACjE,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAC9B,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;QAC3E,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxB,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF,gBAAgB,GAAG,UAClB,UAAU,EACV,GAAG,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EACxD,QAAQ,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EACxE,QAAQ,GAAG,QAAQ;IAEnB,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,qBAAqB;IACrB,MAAM,KAAK,GAAG;QACb,CAAC,EAAE,OAAO;QACV,QAAQ,EAAE,QAAQ;QAClB,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC;QAC1B,eAAe,EAAE,UAAU,CAAC,KAAK,EAAE;QACnC,eAAe,EACd,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,IAAI;YACnD,CAAC,CAAC,QAAQ,CAAC,eAAe;YAC1B,CAAC,CAAC,KAAK,CAAC;QACV,UAAU,EAAE,UAAU;QACtB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,iBAAiB,EAAE;KAClC,CAAC;IACF,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;QAC5B,gEAAgE;QAChE,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IACD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC3B,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IACD,iBAAiB,CAChB,KAAK,EACL,QAAQ,EACR,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CACtD,CAAC;IACF,iCAAiC,CAAC,KAAK,CAAC,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,gBAAgB;QAC5D,4CAA4C;QAC5C,4DAA4D;QAC5D,OAAO,QAAQ,CAAC,QAAQ,CAAC;YACxB,eAAe,EAAE,gBAAgB;SACjC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B;;;;;;;GAOG;AACH,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,EAAE;IACrC,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC3E,MAAM,GAAG,GAAG,EAAE,GAAG,WAAW,EAAE,EAAE,CAAC;QACjC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;SAAM,CAAC;QACP,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;AACF,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,eAAe,GAAG,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,EAAE,CAAC;IAEf,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC;QAE9B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC7B,0BAA0B,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACnC,MAAM,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,iCAAiC,GAAG,CAAC,KAAK,EAAE,EAAE;IACnD,IAAI,4BAA4B,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CACnC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAC3C,CAAC;QACF,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;gBACrC,IAAI,iBAAiB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3C,KAAK,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACrC,CAAC;YACF,CAAC;QACF,CAAC;QACD,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;AACF,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,iCAAiC,GAAG,CAAC,cAAc,EAAE,EAAE;IAC5D,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CAC3C,aAAa,CAAC,MAAM,GAAG,0BAA0B;QAChD,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACpE,CAAC,CAAC,aAAa,CAChB,CAAC;AACH,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,EAAE;IAC5C,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO;IAC5C,MAAM,iBAAiB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK;SAC1C,IAAI,CAAC,iBAAiB,CAAC;SACvB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEjD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,qBAAqB,GAC1B,iCAAiC,CAAC,cAAc,CAAC,CAAC;QACnD,WAAW;QACX,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACxD,KAAK,CAAC,kBAAkB,GAAG,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAClD,CAAC;AACF,CAAC,CAAC;AAEF,0BAA0B,GAAG,UAAU,OAAO;IAC7C,IAAI,YAAY,EAAE,GAAG,EAAE,KAAK,CAAC;IAC7B,IAAI,4BAA4B,EAAE,CAAC;QAClC,YAAY;YACX,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/D,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;gBAAE,SAAS;YAC1C,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACrB,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CACjC,cAAc,EACd,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAC5B,CAAC;IACH,CAAC;AACF,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE;IACjE,MAAM,WAAW,GAChB,aAAa,KAAK,UAAU,IAAI,aAAa,KAAK,OAAO;QACxD,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW;QAC1C,CAAC,CAAC,aAAa,EAAE,IAAI,EAAE,YAAY,CAAC;IAEtC,IAAI,WAAW,EAAE,CAAC;QACjB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC;AACF,CAAC,CAAC;AAEF,eAAe;IACd,IAAI,EAAE,IAAI;IACV,SAAS,EAAE,SAAS;IACpB,0BAA0B,EAAE,0BAA0B;IACtD,aAAa,EAAE,aAAa;IAC5B,eAAe,EAAE;QAChB,OAAO,QAAQ,CAAC;IACjB,CAAC;IACD,IAAI,MAAM;QACT,OAAO,QAAQ,CAAC,MAAM,CAAC;IACxB,CAAC;IACD,gBAAgB,EAAE,gBAAgB;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC3B,0BAA0B;IAC1B,iCAAiC;IACjC,sBAAsB;IACtB,cAAc;IACd,aAAa;IACb,eAAe;IACf,iBAAiB;IACjB,SAAS;CACT,CAAC"}
@@ -1,17 +1,41 @@
1
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.
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 ophan, { init } from './index.js';
7
- const HELP_CENTRE_PLATFORM = 'help-centre';
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 = 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,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"}
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":"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"}
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,QA0BjB;;;;;;AA/CD;;;;;;GAMG;AACH,sCAJW,OAAO,kBACP,MAAM,EAAE,GACN,MAAM,EAAE,CAUpB"}
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"}
@@ -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":";;;;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"}
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,2 +1,5 @@
1
- export {};
1
+ export declare const sendInitialPageview: (url?: string, referrer?: string) => void;
2
+ export interface HelpCentreTracker {
3
+ sendInitialPageview: (url?: string, referrer?: string) => void;
4
+ }
2
5
  //# sourceMappingURL=help-centre.d.ts.map
@@ -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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=help-centre.test.d.ts.map
@@ -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.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 Tracker JS
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
- Tracker JS is available as both an NPM package and a CDN distribution.
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` - Self-initialises platform) and exposes the full
56
- tracker API at `window.guardian.ophan`.
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
- // 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: { /* … */ } });
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 Tracker JS
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 Tracker JS, you must release on _both_ these systems:
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 Tracker JS updates, without developer intervention.
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
 
@@ -1,23 +1,55 @@
1
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.
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 ophan, { init, type Platform } from './index.js';
6
+ import core from './core.js';
7
+ import transmit from './transmit.js';
7
8
 
8
- const HELP_CENTRE_PLATFORM: Platform = 'help-centre';
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?: typeof 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 = ophan;
21
- init(HELP_CENTRE_PLATFORM);
53
+ windowWithGuardian.guardian.ophan = helpCentreTracker;
22
54
  }
23
55
  }