@guardian/ophan-tracker-js 5.0.0 → 5.1.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.
@@ -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;
@@ -70,6 +70,12 @@ export const init = (platform = 'ng') => {
70
70
  attention.init(visibility);
71
71
  }
72
72
  }
73
+ else if (resolvedPlatform === 'help-centre') {
74
+ core.init('help-centre');
75
+ if (window.addEventListener) {
76
+ attention.init(visibility);
77
+ }
78
+ }
73
79
  };
74
80
  /**
75
81
  * Send a new page-view event to Ophan.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=help-centre.d.ts.map
@@ -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;AA2B9D;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,IAAI,cAAc,QAAQ,KAAU,IAqChD,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"}
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,IA0ChD,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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@guardian/ophan-tracker-js",
3
- "version": "5.0.0",
3
+ "version": "5.1.0",
4
4
  "repository": {
5
5
  "url": "git+https://github.com/guardian/ophan.git",
6
6
  "directory": "tracker-js"
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(
@@ -96,6 +96,11 @@ export const init = (platform: Platform = 'ng'): void => {
96
96
  if ((window as any).addEventListener) {
97
97
  attention.init(visibility);
98
98
  }
99
+ } else if (resolvedPlatform === 'help-centre') {
100
+ core.init('help-centre');
101
+ if ((window as any).addEventListener) {
102
+ attention.init(visibility);
103
+ }
99
104
  }
100
105
  };
101
106