@schibsted/sps-sdk 4.12.0-CBT-20237.1 → 4.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/cjs/public-script-versions.d.ts +4 -0
  2. package/dist/cjs/public-script-versions.js +9 -0
  3. package/dist/cjs/public-script-versions.js.map +1 -0
  4. package/dist/cjs/sps/endpoint.d.ts +1 -0
  5. package/dist/cjs/sps/endpoint.js +16 -1
  6. package/dist/cjs/sps/endpoint.js.map +1 -1
  7. package/dist/cjs/sps/rewrite-salesposter-variables.d.ts +6 -1
  8. package/dist/cjs/sps/rewrite-salesposter-variables.js +2 -1
  9. package/dist/cjs/sps/rewrite-salesposter-variables.js.map +1 -1
  10. package/dist/cjs/sps.js +1 -0
  11. package/dist/cjs/sps.js.map +1 -1
  12. package/dist/cjs/utils/pulseProxy.d.ts +5 -0
  13. package/dist/cjs/utils/pulseProxy.js +7 -5
  14. package/dist/cjs/utils/pulseProxy.js.map +1 -1
  15. package/dist/esm/public-script-versions.d.ts +4 -0
  16. package/dist/esm/public-script-versions.js +6 -0
  17. package/dist/esm/public-script-versions.js.map +1 -0
  18. package/dist/esm/sps/endpoint.d.ts +1 -0
  19. package/dist/esm/sps/endpoint.js +14 -0
  20. package/dist/esm/sps/endpoint.js.map +1 -1
  21. package/dist/esm/sps/rewrite-salesposter-variables.d.ts +6 -1
  22. package/dist/esm/sps/rewrite-salesposter-variables.js +2 -1
  23. package/dist/esm/sps/rewrite-salesposter-variables.js.map +1 -1
  24. package/dist/esm/sps.js +1 -0
  25. package/dist/esm/sps.js.map +1 -1
  26. package/dist/esm/utils/pulseProxy.d.ts +5 -0
  27. package/dist/esm/utils/pulseProxy.js +7 -5
  28. package/dist/esm/utils/pulseProxy.js.map +1 -1
  29. package/dist/public-scripts/sps-pulse-helpers.v2.2.0.min.js +1 -0
  30. package/package.json +5 -3
  31. package/dist/cjs/public-scripts-content.d.ts +0 -4
  32. package/dist/cjs/public-scripts-content.js +0 -9
  33. package/dist/cjs/public-scripts-content.js.map +0 -1
  34. package/dist/esm/public-scripts-content.d.ts +0 -4
  35. package/dist/esm/public-scripts-content.js +0 -6
  36. package/dist/esm/public-scripts-content.js.map +0 -1
  37. package/dist/public-scripts/sps-pulse-helpers.min.js +0 -1
  38. /package/dist/public-scripts/{pulse-tracker-proxy.min.js → pulse-tracker-proxy.v1.2.0.min.js} +0 -0
@@ -0,0 +1,4 @@
1
+ export declare const PUBLIC_SCRIPT_VERSIONS: {
2
+ readonly "sps-pulse-helpers": "2.2.0";
3
+ readonly "pulse-tracker-proxy": "1.2.0";
4
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUBLIC_SCRIPT_VERSIONS = void 0;
4
+ // Generated from public-script-versions.json — do not edit manually
5
+ exports.PUBLIC_SCRIPT_VERSIONS = {
6
+ "sps-pulse-helpers": "2.2.0",
7
+ "pulse-tracker-proxy": "1.2.0"
8
+ };
9
+ //# sourceMappingURL=public-script-versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-script-versions.js","sourceRoot":"","sources":["../../src/public-script-versions.ts"],"names":[],"mappings":";;;AAAA,oEAAoE;AACvD,QAAA,sBAAsB,GAAG;IACpC,mBAAmB,EAAE,OAAO;IAC5B,qBAAqB,EAAE,OAAO;CACtB,CAAC"}
@@ -4,3 +4,4 @@
4
4
  */
5
5
  export type Environment = "production" | "staging" | "production-test" | "staging-test" | "pre-staging" | "development" | "test" | "proxy";
6
6
  export declare const getEndpoint: (env: Environment, domain?: string) => string;
7
+ export declare const getCdnUrl: (env: Environment) => string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getEndpoint = void 0;
3
+ exports.getCdnUrl = exports.getEndpoint = void 0;
4
4
  const getEndpoint = (env, domain = "schibsted.tech") => {
5
5
  switch (env) {
6
6
  case "production":
@@ -24,4 +24,19 @@ const getEndpoint = (env, domain = "schibsted.tech") => {
24
24
  }
25
25
  };
26
26
  exports.getEndpoint = getEndpoint;
27
+ const getCdnUrl = (env) => {
28
+ switch (env) {
29
+ case "staging":
30
+ case "pre-staging":
31
+ case "test":
32
+ case "proxy":
33
+ case "staging-test":
34
+ return "https://cdn.pre.ma.schibsted.digital";
35
+ case "development":
36
+ return "http://localhost:9000";
37
+ default:
38
+ return "https://cdn.ma.schibsted.digital";
39
+ }
40
+ };
41
+ exports.getCdnUrl = getCdnUrl;
27
42
  //# sourceMappingURL=endpoint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/sps/endpoint.ts"],"names":[],"mappings":";;;AAcO,MAAM,WAAW,GAAG,CAAC,GAAgB,EAAE,MAAM,GAAG,gBAAgB,EAAU,EAAE;IACjF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,YAAY;YACf,OAAO,cAAc,MAAM,KAAK,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,mBAAmB,MAAM,KAAK,CAAC;QACxC,KAAK,iBAAiB;YACpB,OAAO,4CAA4C,CAAC;QACtD,KAAK,cAAc;YACjB,OAAO,6CAA6C,CAAC;QACvD,KAAK,aAAa;YAChB,OAAO,0CAA0C,CAAC;QACpD,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM;YACT,OAAO,0BAA0B,CAAC;QACpC,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC;QAC3C;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC;AArBW,QAAA,WAAW,eAqBtB"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/sps/endpoint.ts"],"names":[],"mappings":";;;AAcO,MAAM,WAAW,GAAG,CAAC,GAAgB,EAAE,MAAM,GAAG,gBAAgB,EAAU,EAAE;IACjF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,YAAY;YACf,OAAO,cAAc,MAAM,KAAK,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,mBAAmB,MAAM,KAAK,CAAC;QACxC,KAAK,iBAAiB;YACpB,OAAO,4CAA4C,CAAC;QACtD,KAAK,cAAc;YACjB,OAAO,6CAA6C,CAAC;QACvD,KAAK,aAAa;YAChB,OAAO,0CAA0C,CAAC;QACpD,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM;YACT,OAAO,0BAA0B,CAAC;QACpC,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC;QAC3C;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC;AArBW,QAAA,WAAW,eAqBtB;AAEK,MAAM,SAAS,GAAG,CAAC,GAAgB,EAAU,EAAE;IACpD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,SAAS,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,cAAc;YACjB,OAAO,sCAAsC,CAAC;QAChD,KAAK,aAAa;YAChB,OAAO,uBAAuB,CAAC;QACjC;YACE,OAAO,kCAAkC,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,SAAS,aAapB"}
@@ -1,4 +1,5 @@
1
1
  import type { JsonContent } from "../sps.js";
2
+ import type { Environment } from "./endpoint.js";
2
3
  import type { SPSPosterResponse } from "../apiClient.js";
3
4
  import type { OfferTrackingData } from "../tracking/create-tracking-params.js";
4
5
  import type { PulseOrigin } from "../tracking/tracking-to-pulse-origin.js";
@@ -24,6 +25,10 @@ export interface RewritePlaceholderVariablesOptions<T extends PlacementTypeWithS
24
25
  * Publication name
25
26
  */
26
27
  publication: string;
28
+ /**
29
+ * Environment for loading pulse proxy scripts
30
+ */
31
+ environment: Environment;
27
32
  /**
28
33
  * Placement type for the salesposter
29
34
  */
@@ -51,7 +56,7 @@ export interface RewritePlaceholderVariablesOptions<T extends PlacementTypeWithS
51
56
  * Enriches the salesposter html links with the correct parameters
52
57
  * @returns StructuredResponse with the updated html
53
58
  */
54
- export declare const rewritePlaceholderVariables: <T extends PlacementTypeWithStringContent>(posterResponse: SPSPosterResponse<T>, { redirectUrl, loginUrl, searchParams, appendSearchParams, publication, placementType, pulseEvents, pulseData, articleType, }: RewritePlaceholderVariablesOptions<T>) => string;
59
+ export declare const rewritePlaceholderVariables: <T extends PlacementTypeWithStringContent>(posterResponse: SPSPosterResponse<T>, { redirectUrl, loginUrl, searchParams, appendSearchParams, publication, environment, placementType, pulseEvents, pulseData, articleType, }: RewritePlaceholderVariablesOptions<T>) => string;
55
60
  export declare const rewriteJsonPosterVariables: (content: JsonContent, { searchParams, appendSearchParams, }: {
56
61
  searchParams: URLSearchParams;
57
62
  appendSearchParams?: boolean;
@@ -10,7 +10,7 @@ const consent_1 = require("../actions/consent.js");
10
10
  * Enriches the salesposter html links with the correct parameters
11
11
  * @returns StructuredResponse with the updated html
12
12
  */
13
- const rewritePlaceholderVariables = (posterResponse, { redirectUrl, loginUrl, searchParams, appendSearchParams = true, publication, placementType, pulseEvents, pulseData, articleType, }) => {
13
+ const rewritePlaceholderVariables = (posterResponse, { redirectUrl, loginUrl, searchParams, appendSearchParams = true, publication, environment, placementType, pulseEvents, pulseData, articleType, }) => {
14
14
  const { content, campaign, contentName, experiment } = posterResponse;
15
15
  const htmlContent = new DOMParser().parseFromString(content, "text/html");
16
16
  const vevJSON = htmlContent.querySelector("script[type='text/vev']");
@@ -44,6 +44,7 @@ const rewritePlaceholderVariables = (posterResponse, { redirectUrl, loginUrl, se
44
44
  (0, pulseProxy_1.injectPulseProxyScripts)(htmlContent.head, {
45
45
  publication,
46
46
  placementType,
47
+ environment,
47
48
  articleType,
48
49
  campaign,
49
50
  contentName,
@@ -1 +1 @@
1
- {"version":3,"file":"rewrite-salesposter-variables.js","sourceRoot":"","sources":["../../../src/sps/rewrite-salesposter-variables.ts"],"names":[],"mappings":";;;AAsLA,oDAwBC;AA9MD,sCAAkD;AAElD,oDAA8D;AAC9D,gDAAsD;AACtD,gDAA8D;AAgD9D;;;GAGG;AACI,MAAM,2BAA2B,GAAG,CACzC,cAAoC,EACpC,EACE,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,kBAAkB,GAAG,IAAI,EACzB,WAAW,EACX,aAAa,EACb,WAAW,EACX,SAAS,EACT,WAAW,GAC2B,EAChC,EAAE;IACV,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,cAAc,CAAC;IACtE,MAAM,WAAW,GAAG,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IACrE,MAAM,KAAK,GAAG,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAEhD,0LAA0L;IAC1L,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GACR,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC;YAClC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,EAAE;YACzC,QAAQ,KAAK,GAAG,CAAC,EAAE,CAAC;QAEtB,MAAM,mBAAmB,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzE,mBAAmB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAA,wBAAkB,EAAC,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAE3E,MAAM,SAAS,GAAG;YAChB,wBAAwB,EAAE,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACzB,CAAC;QAEF,IAAI,WAAW,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEpD,IAAI,kBAAkB,EAAE,CAAC;YACvB,WAAW,GAAG,uBAAuB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACvC,qCAAqC;QACrC,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC,CAAC,CAAC;IACH,IAAI,WAAW,EAAE,CAAC;QAChB,IAAA,oCAAuB,EAAC,WAAW,CAAC,IAAI,EAAE;YACxC,WAAW;YACX,aAAa;YACb,WAAW;YACX,QAAQ;YACR,WAAW;YACX,UAAU;YACV,WAAW;YACX,MAAM,EAAE,SAAS;SAClB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,WAAW,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;IAChF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,GAAG,IAAA,0BAAgB,EAAC,aAAa,CAAC,CAAC;QACrD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1D,aAAa,CAAC,WAAW,GAAG,IAAA,kCAAwB,GAAE,CAAC;IACvD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAE5C,sEAAsE;IACtE,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;AACjE,CAAC,CAAC;AA5EW,QAAA,2BAA2B,+BA4EtC;AAEF,MAAM,uBAAuB,GAAG,CAAC,IAAY,EAAE,YAA6B,EAAU,EAAE;IACtF,wEAAwE;IACxE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,mEAAmE;QACnE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,0BAA0B,GAAG,CACxC,OAAoB,EACpB,EACE,YAAY,EACZ,kBAAkB,GAAG,IAAI,GACuC,EACrD,EAAE;IACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1B,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;gBACtC,MAAM,CAAC,CAAC,CAAC,GAAG,uBAAuB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QACzC,MAAM,CAAC,CAAC,CAAC,GAAG,uBAAuB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA3BW,QAAA,0BAA0B,8BA2BrC;AAEF;;;GAGG;AACH,SAAgB,oBAAoB,CAClC,eAAuC,EACvC,YAA6B;IAE7B,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACvD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;YAE3B,2BAA2B;YAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC;YAEjD,wBAAwB;YACxB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAErD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,SAAkC,EAAU,EAAE;IACrF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CACrC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,EAAE,WAAW,CAAC,EACpF,MAAM,CAAC,KAAK,CAAC,CACd,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"rewrite-salesposter-variables.js","sourceRoot":"","sources":["../../../src/sps/rewrite-salesposter-variables.ts"],"names":[],"mappings":"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"}
package/dist/cjs/sps.js CHANGED
@@ -165,6 +165,7 @@ class SPS {
165
165
  searchParams,
166
166
  appendSearchParams: options.appendSearchParams ?? true,
167
167
  publication: this.publication,
168
+ environment: this.environment,
168
169
  placementType: placementType,
169
170
  pulseEvents: options.pulseEvents,
170
171
  pulseData: { pulseOrigin, offerData },
@@ -1 +1 @@
1
- {"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
+ import { type Environment } from "../sps/endpoint.js";
1
2
  import type { PlacementType } from "../sps/placement.js";
2
3
  import type { OfferTrackingData } from "../tracking/create-tracking-params.js";
3
4
  import type { PulseOrigin } from "../tracking/tracking-to-pulse-origin.js";
4
5
  export interface PulseConfig {
6
+ /**
7
+ * Environment for loading pulse proxy scripts, set by the environment argument when initializing the SPS instance
8
+ */
9
+ environment: Environment;
5
10
  /**
6
11
  * Campaign name for the salesposter
7
12
  */
@@ -1,19 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.renderPulseProxyScripts = exports.injectPulseProxyScripts = void 0;
4
- const public_scripts_content_1 = require("../public-scripts-content.js");
4
+ const public_script_versions_1 = require("../public-script-versions.js");
5
+ const endpoint_1 = require("../sps/endpoint.js");
5
6
  const buildPulseProxyScriptTags = (config) => {
7
+ const { environment } = config;
8
+ const HELPERS_SRC = `${(0, endpoint_1.getCdnUrl)(environment)}/public-scripts/sps-pulse-helpers.v${public_script_versions_1.PUBLIC_SCRIPT_VERSIONS["sps-pulse-helpers"]}.min.js`;
9
+ const PROXY_SRC = `${(0, endpoint_1.getCdnUrl)(environment)}/public-scripts/pulse-tracker-proxy.v${public_script_versions_1.PUBLIC_SCRIPT_VERSIONS["pulse-tracker-proxy"]}.min.js`;
6
10
  const safeConfig = JSON.stringify(config)
7
11
  .replace(/&/g, "\\u0026") // prevent entity injection in XML/XHTML
8
12
  .replace(/</g, "\\u003c") // prevent </script> closing tag
9
13
  .replace(/>/g, "\\u003e") // defensive, pair with <
10
14
  .replace(/\u2028/g, "\\u2028") // LINE SEPARATOR — terminates JS strings in old parsers
11
15
  .replace(/\u2029/g, "\\u2029"); // PARAGRAPH SEPARATOR — same issue
12
- const proxyScript = public_scripts_content_1.PUBLIC_SCRIPTS_CONTENT["pulse-tracker-proxy"].replace(/<\/script/gi, "<\\/script");
13
- const helpersScript = public_scripts_content_1.PUBLIC_SCRIPTS_CONTENT["sps-pulse-helpers"].replace(/<\/script/gi, "<\\/script");
14
16
  return (`<script type="application/json" data-sps-pulse-config="true">${safeConfig}</script>` +
15
- `<script>${proxyScript}</script>` +
16
- `<script>${helpersScript}</script>`);
17
+ `<script src="${PROXY_SRC}"></script>` +
18
+ `<script src="${HELPERS_SRC}"></script>`);
17
19
  };
18
20
  const injectPulseProxyScripts = (root, config) => {
19
21
  const fragment = document
@@ -1 +1 @@
1
- {"version":3,"file":"pulseProxy.js","sourceRoot":"","sources":["../../../src/utils/pulseProxy.ts"],"names":[],"mappings":";;;AAAA,sEAAmE;AA8DnE,MAAM,yBAAyB,GAAG,CAAC,MAAmB,EAAU,EAAE;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,wCAAwC;SACjE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,gCAAgC;SACzD,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,yBAAyB;SAClD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,wDAAwD;SACtF,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAmC;IAErE,MAAM,WAAW,GAAG,+CAAsB,CAAC,qBAAqB,CAAC,CAAC,OAAO,CACvE,aAAa,EACb,YAAY,CACb,CAAC;IACF,MAAM,aAAa,GAAG,+CAAsB,CAAC,mBAAmB,CAAC,CAAC,OAAO,CACvE,aAAa,EACb,YAAY,CACb,CAAC;IAEF,OAAO,CACL,gEAAgE,UAAU,WAAW;QACrF,WAAW,WAAW,WAAW;QACjC,WAAW,aAAa,WAAW,CACpC,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,uBAAuB,GAAG,CAAC,IAAiB,EAAE,MAAmB,EAAQ,EAAE;IACtF,MAAM,QAAQ,GAAG,QAAQ;SACtB,WAAW,EAAE;SACb,wBAAwB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AALW,QAAA,uBAAuB,2BAKlC;AAEF;;;;GAIG;AACI,MAAM,uBAAuB,GAAG,CAAC,MAAmB,EAAU,EAAE,CACrE,yBAAyB,CAAC,MAAM,CAAC,CAAC;AADvB,QAAA,uBAAuB,2BACA"}
1
+ {"version":3,"file":"pulseProxy.js","sourceRoot":"","sources":["../../../src/utils/pulseProxy.ts"],"names":[],"mappings":";;;AAAA,sEAAmE;AACnE,8CAA8D;AAkE9D,MAAM,yBAAyB,GAAG,CAAC,MAAmB,EAAU,EAAE;IAChE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAC/B,MAAM,WAAW,GAAG,GAAG,IAAA,oBAAS,EAAC,WAAW,CAAC,sCAAsC,+CAAsB,CAAC,mBAAmB,CAAC,SAAS,CAAC;IACxI,MAAM,SAAS,GAAG,GAAG,IAAA,oBAAS,EAAC,WAAW,CAAC,wCAAwC,+CAAsB,CAAC,qBAAqB,CAAC,SAAS,CAAC;IAE1I,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,wCAAwC;SACjE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,gCAAgC;SACzD,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,yBAAyB;SAClD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,wDAAwD;SACtF,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAmC;IAErE,OAAO,CACL,gEAAgE,UAAU,WAAW;QACrF,gBAAgB,SAAS,aAAa;QACtC,gBAAgB,WAAW,aAAa,CACzC,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,uBAAuB,GAAG,CAAC,IAAiB,EAAE,MAAmB,EAAQ,EAAE;IACtF,MAAM,QAAQ,GAAG,QAAQ;SACtB,WAAW,EAAE;SACb,wBAAwB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AALW,QAAA,uBAAuB,2BAKlC;AAEF;;;;GAIG;AACI,MAAM,uBAAuB,GAAG,CAAC,MAAmB,EAAU,EAAE,CACrE,yBAAyB,CAAC,MAAM,CAAC,CAAC;AADvB,QAAA,uBAAuB,2BACA"}
@@ -0,0 +1,4 @@
1
+ export declare const PUBLIC_SCRIPT_VERSIONS: {
2
+ readonly "sps-pulse-helpers": "2.2.0";
3
+ readonly "pulse-tracker-proxy": "1.2.0";
4
+ };
@@ -0,0 +1,6 @@
1
+ // Generated from public-script-versions.json — do not edit manually
2
+ export const PUBLIC_SCRIPT_VERSIONS = {
3
+ "sps-pulse-helpers": "2.2.0",
4
+ "pulse-tracker-proxy": "1.2.0"
5
+ };
6
+ //# sourceMappingURL=public-script-versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-script-versions.js","sourceRoot":"","sources":["../../src/public-script-versions.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,mBAAmB,EAAE,OAAO;IAC5B,qBAAqB,EAAE,OAAO;CACtB,CAAC"}
@@ -4,3 +4,4 @@
4
4
  */
5
5
  export type Environment = "production" | "staging" | "production-test" | "staging-test" | "pre-staging" | "development" | "test" | "proxy";
6
6
  export declare const getEndpoint: (env: Environment, domain?: string) => string;
7
+ export declare const getCdnUrl: (env: Environment) => string;
@@ -20,4 +20,18 @@ export const getEndpoint = (env, domain = "schibsted.tech") => {
20
20
  throw new Error(`Unknown environment: ${env}`);
21
21
  }
22
22
  };
23
+ export const getCdnUrl = (env) => {
24
+ switch (env) {
25
+ case "staging":
26
+ case "pre-staging":
27
+ case "test":
28
+ case "proxy":
29
+ case "staging-test":
30
+ return "https://cdn.pre.ma.schibsted.digital";
31
+ case "development":
32
+ return "http://localhost:9000";
33
+ default:
34
+ return "https://cdn.ma.schibsted.digital";
35
+ }
36
+ };
23
37
  //# sourceMappingURL=endpoint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/sps/endpoint.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAgB,EAAE,MAAM,GAAG,gBAAgB,EAAU,EAAE;IACjF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,YAAY;YACf,OAAO,cAAc,MAAM,KAAK,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,mBAAmB,MAAM,KAAK,CAAC;QACxC,KAAK,iBAAiB;YACpB,OAAO,4CAA4C,CAAC;QACtD,KAAK,cAAc;YACjB,OAAO,6CAA6C,CAAC;QACvD,KAAK,aAAa;YAChB,OAAO,0CAA0C,CAAC;QACpD,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM;YACT,OAAO,0BAA0B,CAAC;QACpC,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC;QAC3C;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/sps/endpoint.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAgB,EAAE,MAAM,GAAG,gBAAgB,EAAU,EAAE;IACjF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,YAAY;YACf,OAAO,cAAc,MAAM,KAAK,CAAC;QACnC,KAAK,SAAS;YACZ,OAAO,mBAAmB,MAAM,KAAK,CAAC;QACxC,KAAK,iBAAiB;YACpB,OAAO,4CAA4C,CAAC;QACtD,KAAK,cAAc;YACjB,OAAO,6CAA6C,CAAC;QACvD,KAAK,aAAa;YAChB,OAAO,0CAA0C,CAAC;QACpD,KAAK,aAAa;YAChB,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM;YACT,OAAO,0BAA0B,CAAC;QACpC,KAAK,OAAO;YACV,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC;QAC3C;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAgB,EAAU,EAAE;IACpD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,SAAS,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,cAAc;YACjB,OAAO,sCAAsC,CAAC;QAChD,KAAK,aAAa;YAChB,OAAO,uBAAuB,CAAC;QACjC;YACE,OAAO,kCAAkC,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { JsonContent } from "../sps.js";
2
+ import type { Environment } from "./endpoint.js";
2
3
  import type { SPSPosterResponse } from "../apiClient.js";
3
4
  import type { OfferTrackingData } from "../tracking/create-tracking-params.js";
4
5
  import type { PulseOrigin } from "../tracking/tracking-to-pulse-origin.js";
@@ -24,6 +25,10 @@ export interface RewritePlaceholderVariablesOptions<T extends PlacementTypeWithS
24
25
  * Publication name
25
26
  */
26
27
  publication: string;
28
+ /**
29
+ * Environment for loading pulse proxy scripts
30
+ */
31
+ environment: Environment;
27
32
  /**
28
33
  * Placement type for the salesposter
29
34
  */
@@ -51,7 +56,7 @@ export interface RewritePlaceholderVariablesOptions<T extends PlacementTypeWithS
51
56
  * Enriches the salesposter html links with the correct parameters
52
57
  * @returns StructuredResponse with the updated html
53
58
  */
54
- export declare const rewritePlaceholderVariables: <T extends PlacementTypeWithStringContent>(posterResponse: SPSPosterResponse<T>, { redirectUrl, loginUrl, searchParams, appendSearchParams, publication, placementType, pulseEvents, pulseData, articleType, }: RewritePlaceholderVariablesOptions<T>) => string;
59
+ export declare const rewritePlaceholderVariables: <T extends PlacementTypeWithStringContent>(posterResponse: SPSPosterResponse<T>, { redirectUrl, loginUrl, searchParams, appendSearchParams, publication, environment, placementType, pulseEvents, pulseData, articleType, }: RewritePlaceholderVariablesOptions<T>) => string;
55
60
  export declare const rewriteJsonPosterVariables: (content: JsonContent, { searchParams, appendSearchParams, }: {
56
61
  searchParams: URLSearchParams;
57
62
  appendSearchParams?: boolean;
@@ -6,7 +6,7 @@ import { getConsentListenerScript } from "../actions/consent.js";
6
6
  * Enriches the salesposter html links with the correct parameters
7
7
  * @returns StructuredResponse with the updated html
8
8
  */
9
- export const rewritePlaceholderVariables = (posterResponse, { redirectUrl, loginUrl, searchParams, appendSearchParams = true, publication, placementType, pulseEvents, pulseData, articleType, }) => {
9
+ export const rewritePlaceholderVariables = (posterResponse, { redirectUrl, loginUrl, searchParams, appendSearchParams = true, publication, environment, placementType, pulseEvents, pulseData, articleType, }) => {
10
10
  const { content, campaign, contentName, experiment } = posterResponse;
11
11
  const htmlContent = new DOMParser().parseFromString(content, "text/html");
12
12
  const vevJSON = htmlContent.querySelector("script[type='text/vev']");
@@ -40,6 +40,7 @@ export const rewritePlaceholderVariables = (posterResponse, { redirectUrl, login
40
40
  injectPulseProxyScripts(htmlContent.head, {
41
41
  publication,
42
42
  placementType,
43
+ environment,
43
44
  articleType,
44
45
  campaign,
45
46
  contentName,
@@ -1 +1 @@
1
- {"version":3,"file":"rewrite-salesposter-variables.js","sourceRoot":"","sources":["../../../src/sps/rewrite-salesposter-variables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rewrite-salesposter-variables.js","sourceRoot":"","sources":["../../../src/sps/rewrite-salesposter-variables.ts"],"names":[],"mappings":"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"}
package/dist/esm/sps.js CHANGED
@@ -163,6 +163,7 @@ export class SPS {
163
163
  searchParams,
164
164
  appendSearchParams: options.appendSearchParams ?? true,
165
165
  publication: this.publication,
166
+ environment: this.environment,
166
167
  placementType: placementType,
167
168
  pulseEvents: options.pulseEvents,
168
169
  pulseData: { pulseOrigin, offerData },
@@ -1 +1 @@
1
- {"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
+ import { type Environment } from "../sps/endpoint.js";
1
2
  import type { PlacementType } from "../sps/placement.js";
2
3
  import type { OfferTrackingData } from "../tracking/create-tracking-params.js";
3
4
  import type { PulseOrigin } from "../tracking/tracking-to-pulse-origin.js";
4
5
  export interface PulseConfig {
6
+ /**
7
+ * Environment for loading pulse proxy scripts, set by the environment argument when initializing the SPS instance
8
+ */
9
+ environment: Environment;
5
10
  /**
6
11
  * Campaign name for the salesposter
7
12
  */
@@ -1,16 +1,18 @@
1
- import { PUBLIC_SCRIPTS_CONTENT } from "../public-scripts-content.js";
1
+ import { PUBLIC_SCRIPT_VERSIONS } from "../public-script-versions.js";
2
+ import { getCdnUrl } from "../sps/endpoint.js";
2
3
  const buildPulseProxyScriptTags = (config) => {
4
+ const { environment } = config;
5
+ const HELPERS_SRC = `${getCdnUrl(environment)}/public-scripts/sps-pulse-helpers.v${PUBLIC_SCRIPT_VERSIONS["sps-pulse-helpers"]}.min.js`;
6
+ const PROXY_SRC = `${getCdnUrl(environment)}/public-scripts/pulse-tracker-proxy.v${PUBLIC_SCRIPT_VERSIONS["pulse-tracker-proxy"]}.min.js`;
3
7
  const safeConfig = JSON.stringify(config)
4
8
  .replace(/&/g, "\\u0026") // prevent entity injection in XML/XHTML
5
9
  .replace(/</g, "\\u003c") // prevent </script> closing tag
6
10
  .replace(/>/g, "\\u003e") // defensive, pair with <
7
11
  .replace(/\u2028/g, "\\u2028") // LINE SEPARATOR — terminates JS strings in old parsers
8
12
  .replace(/\u2029/g, "\\u2029"); // PARAGRAPH SEPARATOR — same issue
9
- const proxyScript = PUBLIC_SCRIPTS_CONTENT["pulse-tracker-proxy"].replace(/<\/script/gi, "<\\/script");
10
- const helpersScript = PUBLIC_SCRIPTS_CONTENT["sps-pulse-helpers"].replace(/<\/script/gi, "<\\/script");
11
13
  return (`<script type="application/json" data-sps-pulse-config="true">${safeConfig}</script>` +
12
- `<script>${proxyScript}</script>` +
13
- `<script>${helpersScript}</script>`);
14
+ `<script src="${PROXY_SRC}"></script>` +
15
+ `<script src="${HELPERS_SRC}"></script>`);
14
16
  };
15
17
  export const injectPulseProxyScripts = (root, config) => {
16
18
  const fragment = document
@@ -1 +1 @@
1
- {"version":3,"file":"pulseProxy.js","sourceRoot":"","sources":["../../../src/utils/pulseProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AA8DnE,MAAM,yBAAyB,GAAG,CAAC,MAAmB,EAAU,EAAE;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,wCAAwC;SACjE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,gCAAgC;SACzD,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,yBAAyB;SAClD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,wDAAwD;SACtF,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAmC;IAErE,MAAM,WAAW,GAAG,sBAAsB,CAAC,qBAAqB,CAAC,CAAC,OAAO,CACvE,aAAa,EACb,YAAY,CACb,CAAC;IACF,MAAM,aAAa,GAAG,sBAAsB,CAAC,mBAAmB,CAAC,CAAC,OAAO,CACvE,aAAa,EACb,YAAY,CACb,CAAC;IAEF,OAAO,CACL,gEAAgE,UAAU,WAAW;QACrF,WAAW,WAAW,WAAW;QACjC,WAAW,aAAa,WAAW,CACpC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,IAAiB,EAAE,MAAmB,EAAQ,EAAE;IACtF,MAAM,QAAQ,GAAG,QAAQ;SACtB,WAAW,EAAE;SACb,wBAAwB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAmB,EAAU,EAAE,CACrE,yBAAyB,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"pulseProxy.js","sourceRoot":"","sources":["../../../src/utils/pulseProxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAoB,MAAM,iBAAiB,CAAC;AAkE9D,MAAM,yBAAyB,GAAG,CAAC,MAAmB,EAAU,EAAE;IAChE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAC/B,MAAM,WAAW,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,sCAAsC,sBAAsB,CAAC,mBAAmB,CAAC,SAAS,CAAC;IACxI,MAAM,SAAS,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,wCAAwC,sBAAsB,CAAC,qBAAqB,CAAC,SAAS,CAAC;IAE1I,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;SACtC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,wCAAwC;SACjE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,gCAAgC;SACzD,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,yBAAyB;SAClD,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,wDAAwD;SACtF,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,mCAAmC;IAErE,OAAO,CACL,gEAAgE,UAAU,WAAW;QACrF,gBAAgB,SAAS,aAAa;QACtC,gBAAgB,WAAW,aAAa,CACzC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,IAAiB,EAAE,MAAmB,EAAQ,EAAE;IACtF,MAAM,QAAQ,GAAG,QAAQ;SACtB,WAAW,EAAE;SACb,wBAAwB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAmB,EAAU,EAAE,CACrE,yBAAyB,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ "use strict";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var ne=Object.prototype.hasOwnProperty;var se=(e,t,r,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of re(t))!ne.call(e,n)&&n!==r&&N(e,n,{get:()=>t[n],enumerable:!(s=te(t,n))||s.enumerable});return e};var ae=e=>se(N({},"__esModule",{value:!0}),e);var ye={};var y="pulse-tracker-proxy",oe=`${y}:request`,he=`${y}:ack`,j=`${y}:invoke`,W=`${y}:return`,v=`${y}:return-error`,G=["trackAnonymousViewUIElement","trackEngagementAudio","trackEngagementForm","trackEngagementHealthUIElement","trackEngagementOffer","trackEngagementTeaser","trackEngagementUIElement","trackEngagementVideo","trackEngagementVideoAd","trackEngagementWidget","trackCompletedHealthAction","trackImpressionAdSlot","trackImpressionForm","trackImpressionHealthUIElement","trackImpressionOffer","trackImpressionPlayer","trackImpressionTeaser","trackImpressionUIElement","trackImpressionWidget","trackLeaveArticle","trackLeaveAudioPage","trackLeaveError","trackLeaveFrontpage","trackLeaveLandingpage","trackLeaveListing","trackLeaveLockedArticle","trackLeaveLockedAudioPage","trackLeaveLockedVideoPage","trackLeavePage","trackLeaveSportsPage","trackLeaveVideoPage","trackLeaveWeather","trackViewArticle","trackViewAudioPage","trackViewError","trackViewFrontpage","trackViewHealthPage","trackViewLandingpage","trackViewListing","trackViewLockedArticle","trackViewLockedAudioPage","trackViewLockedVideoPage","trackViewPage","trackViewSportsPage","trackViewTitle","trackViewVideoPage","trackViewWeather","trackLegacyViewArticle","trackLegacyViewLoginPoster","trackLegacyViewSalesPoster","trackLegacyViewListing","trackLegacyViewFrontpage","trackLegacyViewPage","trackLegacyViewUIElement","trackLegacyClickUIElement"];function C(e){return e!==null&&typeof e=="object"&&"type"in e&&typeof e.type=="string"&&e.type.startsWith(y)}function _(e,{target:t,timeout:r,debug:s=()=>{}}){return new Promise((n,c)=>{let o=new MessageChannel,p=r?setTimeout(()=>{o.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=a=>{if(s("[Pulse Tracker Proxy] Received the response on the MessageChannel",a),!C(a.data)){s("[Pulse Tracker Proxy] Response was not a valid Proxy Message",a.data);return}a.data.type===v&&(s("[Pulse Tracker Proxy] Received an return error response",a.data.error),clearTimeout(p),o.port1.close(),c(new Error(a.data.error))),s("[Pulse Tracker Proxy] Received a valid response",a.data),clearTimeout(p),o.port1.close(),n(a.data)};o.port1.onmessage=i,s("[Pulse Tracker Proxy] Sending message to target window",e),t.postMessage(e,"*",[o.port2])})}var q="2.0.0-rc.9";function D(e){let t="tracker"in e&&typeof e.tracker=="object"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:q}}}function L(e,t,r){let s="provider"in e&&typeof e.provider=="object"?e.provider:{};return{...e,provider:{...s,component:t,componentVersion:r}}}var R=class{constructor(t,r,s,n){this.target=t,this.component=r,this.componentVersion=s,this.debug=n}track(...t){this.debug("[Pulse Tracker Proxy] Calling `track`",t);let[r,s,...n]=t,c=D(s),o=L(c,this.component,this.componentVersion),p=[r,o,...n];return this.invoke({method:"track",args:p})}async invoke(t){this.debug("[Pulse Tracker Proxy] Invoking remote function",t);let r=await _({type:j,payload:t},{target:this.target});if(!C(r))throw this.debug("[Pulse Tracker Proxy] Invalid response from proxy",r),new Error("Invalid response from proxy");if(r.type===v)throw this.debug("[Pulse Tracker Proxy] Error response from proxy",r.error),new Error(r.error);if(r.type===W)return this.debug("[Pulse Tracker Proxy] Successful response from proxy",r.payload),r.payload;throw this.debug("[Pulse Tracker Proxy] Unhandled response from proxy",r),new Error("Unexpected response from proxy")}};var ie=Object.fromEntries(G.map(e=>[e,function(...t){this.debug("[Pulse Tracker Proxy] Calling `track`",t);let[r,...s]=t,n=D(r),o=[L(n,this.component,this.componentVersion),...s];return this.invoke({method:e,args:o})}]));function ce(){return class extends R{constructor(e,t,r,s){super(e,t,r,s),s("[Pulse TPaaS Proxy] Initialized"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e==="payment.schibsted.com"||e.startsWith("bestilling.")||e==="pay.pre.schibsted.digital"||e.startsWith("test-bestilling."),me=e=>e==="login.schibsted.com"||e==="identity-pre.schibsted.com",H=e=>{var t;try{let s=new URL((t=e.getAttribute("href"))!=null?t:"").hostname;if(me(s))return"Login";if(le(s))return"Purchase"}catch{return}};var B=e=>{var t;try{let r=new URL((t=e.getAttribute("href"))!=null?t:""),n=new URLSearchParams(r.search).get("code");return n?n.split(","):[]}catch{return[]}};var S=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:"";if(t.includes("meter"))return"Meter";if(t.includes("paid")||t.includes("subscription"))return"Paid";if(t.includes("login"))return"Login"};function K(e,t,r,s){let{campaign:n,articleType:c,abTestGroup:o,placementType:p,experiment:i,legacy:a,contentName:l,pulseEvents:m}=t,P=400,T="",h=0;function f(g){var E,k,x,$,F;try{let w=g.target,d=(E=w==null?void 0:w.closest)==null?void 0:E.call(w,"a");if(!d)return;let b=d.textContent||d.getAttribute("href")||`${p} button`,M=`a|${b}`,V=Date.now();if(M===T&&V-h<P)return;T=M,h=V;let O=H(d),ee=O==="Purchase"?B(d):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:"page",offerPlacement:p},object:{objectId:s,objectSdrn:r,campaign:n,name:l,offerCodes:ee,offerType:S(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:"SPS",variant:o||""}]}:{},engagement:{action:"Click",elementName:b},page:{},provider:{stage:"Test"},target:{info:{url:(k=d.getAttribute("href"))!=null?k:""}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:"Button",name:b,containerName:"Page",custom:{...a==null?void 0:a.offerData}},...a?{origin:a.pulseOrigin}:{},target:{url:(F=($=(x=d.getAttribute("href"))==null?void 0:x.split("?"))==null?void 0:$[0])!=null?F:""},...O?{intent:O}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:"SPS",variant:o}]}:{}})}catch{}}return document.addEventListener("click",f,!0),()=>document.removeEventListener("click",f,!0)}function Y(e,t,r,s,n){let{campaign:c,articleType:o,abTestGroup:p,placementType:i,experiment:a,legacy:l,contentName:m,pulseEvents:P}=t;P.tpaas&&e.trackImpressionOffer({placement:{foldPosition:n,containerName:"page",offerPlacement:i},object:{campaign:c,name:m,objectId:s,objectSdrn:r,offerCodes:[],offerType:S(o)},...a?{experiments:[{experimentSdrn:`${r}:experiment:${u(a)}`,name:a,platform:"SPS",variant:p||""}]}:{},page:{},provider:{stage:"Test"},target:{info:{}}}),P.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...a?{experiments:[{id:`${r}:experiment:${u(a)}`,name:a,platform:"SPS",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function z(e,t,r){let{placementType:s,legacy:n,pulseEvents:c}=t,o=window.location.pathname,i=`landingpage-${s==="campaignpage"?"CAMPAIGN":"STATIC"}-${A(o)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,"spt:custom":{...n==null?void 0:n.offerData,...n==null?void 0:n.custom}},origin:n==null?void 0:n.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:"Test"}},{leaveTracking:{objectElement:"body",pageElement:"body",objectResizable:!1}})}var I={"sps-pulse-helpers":"2.2.0","pulse-tracker-proxy":"1.2.0"};var U=e=>e==="campaignpage"||e==="staticpage";var J=!1,Q=!1,X="script[data-sps-pulse-config='true']",u=e=>e.toLowerCase().replace(/ /g,"-").replace(/[^-a-z:0-9]/g,""),A=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:"","").replace(/^\/|\/$/g,""))||""};async function Z(){if(console.log("[SPS-Pulse-Helpers] boot initiated"),J)return;J=!0;let e=null;try{let t=document.querySelector(X);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${X}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn("[SPS-Pulse-Helpers] Failed to parse config from script tag",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!="function"){console.warn("[SPS-Pulse-Helpers] PulseTrackerProxy not available");return}let{placementType:r,publication:s,contentName:n}=e,c=U(r)?A(window.location.pathname):u(n),o=`sdrn:${s}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:"SPS-SDK",componentVersion:I["sps-pulse-helpers"]});K(i,e,o,p);let a=f=>{Q||(Q=!0,Y(i,e,o,p,f))};if(U(r)){await z(i,e,o),a("Above");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn("[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.");return}let P="Unknown",T=!0,h=new m(f=>{var x;let g=f[0],E=(x=g==null?void 0:g.intersectionRatio)!=null?x:0,k=(g==null?void 0:g.isIntersecting)&&E>=1/3;T&&(T=!1,P=k?"Above":"Below"),k&&(h.disconnect(),a(P))},{root:null,threshold:[0,1/3]});h.observe(l)}catch(t){console.warn("[SPS-Pulse-Helpers] boot failed",t)}}Z();return ae(ye);})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schibsted/sps-sdk",
3
- "version": "4.12.0-CBT-20237.1",
3
+ "version": "4.12.0",
4
4
  "description": "SPS SDK for node.js",
5
5
  "packageManager": "pnpm@10.27.0",
6
6
  "engines": {
@@ -31,13 +31,14 @@
31
31
  ],
32
32
  "scripts": {
33
33
  "preinstall": "npx only-allow pnpm",
34
- "build": "npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs",
34
+ "build": "npm run build:clean && node scripts/generate-versions-ts.js && npm run build:esm && npm run build:cjs && npm run build:public-scripts",
35
35
  "build:clean": "rm -rf dist/cjs dist/esm",
36
36
  "build:esm": "tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json",
37
37
  "build:cjs": "tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
38
38
  "build:sps-pulse-helpers": "tsup --config packages/sps-pulse-helpers/tsup.config.ts",
39
39
  "build:pulse-tracker-proxy": "tsup --config packages/pulse-tracker-proxy/tsup.config.ts",
40
- "build:public-scripts": "npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js",
40
+ "build:public-scripts": "npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/version-public-scripts.js",
41
+ "dev:public-scripts": "node scripts/dev-server.js",
41
42
  "test": "node --experimental-vm-modules node_modules/jest/bin/jest.js",
42
43
  "lint": "eslint .",
43
44
  "release:alpha": "npm publish --tag alpha",
@@ -53,6 +54,7 @@
53
54
  "@types/node": "^24.0.3",
54
55
  "conventional-changelog-conventionalcommits": "^9.1.0",
55
56
  "eslint": "^9.29.0",
57
+ "express": "^5.2.1",
56
58
  "jest": "^30.0.0",
57
59
  "jest-environment-jsdom": "^30.0.2",
58
60
  "jest-fixed-jsdom": "^0.0.11",
@@ -1,4 +0,0 @@
1
- export declare const PUBLIC_SCRIPTS_CONTENT: {
2
- readonly "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ne=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of re(t))!oe.call(e,o)&&o!==r&&N(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var se=e=>ne(N({},\"__esModule\",{value:!0}),e);var de={};var k=\"pulse-tracker-proxy\",ae=`${k}:request`,Pe=`${k}:ack`,W=`${k}:invoke`,H=`${k}:return`,v=`${k}:return-error`,F=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function S(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(k)}function I(e,{target:t,timeout:r,debug:n=()=>{}}){return new Promise((o,c)=>{let a=new MessageChannel,p=r?setTimeout(()=>{a.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=s=>{if(n(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",s),!S(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===v&&(n(\"[Pulse Tracker Proxy] Received an return error response\",s.data.error),clearTimeout(p),a.port1.close(),c(new Error(s.data.error))),n(\"[Pulse Tracker Proxy] Received a valid response\",s.data),clearTimeout(p),a.port1.close(),o(s.data)};a.port1.onmessage=i,n(\"[Pulse Tracker Proxy] Sending message to target window\",e),t.postMessage(e,\"*\",[a.port2])})}var G=\"2.0.0-rc.9\";function C(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:G}}}function j(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var L=class{constructor(t,r,n,o){this.target=t,this.component=r,this.componentVersion=n,this.debug=o}track(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,n,...o]=t,c=C(n),a=j(c,this.component,this.componentVersion),p=[r,a,...o];return this.invoke({method:\"track\",args:p})}async invoke(t){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",t);let r=await I({type:W,payload:t},{target:this.target});if(!S(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===v)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===H)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",r.payload),r.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",r),new Error(\"Unexpected response from proxy\")}};var ie=Object.fromEntries(F.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=C(r),a=[j(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function ce(){return class extends L{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),me=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",D=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(me(n))return\"Login\";if(le(n))return\"Purchase\"}catch{return}};var Y=e=>{var t;try{let r=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\"),o=new URLSearchParams(r.search).get(\"code\");return o?o.split(\",\"):[]}catch{return[]}};var V=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:\"\";if(t.includes(\"meter\"))return\"Meter\";if(t.includes(\"paid\")||t.includes(\"subscription\"))return\"Paid\";if(t.includes(\"login\"))return\"Login\"};function q(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:l,pulseEvents:m}=t,g=400,y=\"\",x=0;function f(d){var T,w,h,_,M;try{let E=d.target,P=(T=E==null?void 0:E.closest)==null?void 0:T.call(E,\"a\");if(!P)return;let b=P.textContent||P.getAttribute(\"href\")||`${p} button`,U=`a|${b}`,$=Date.now();if(U===y&&$-x<g)return;y=U,x=$;let A=D(P),ee=A===\"Purchase\"?Y(P):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:l,offerCodes:ee,offerType:V(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:b},page:{},provider:{stage:\"Test\"},target:{info:{url:(w=P.getAttribute(\"href\"))!=null?w:\"\"}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:\"Button\",name:b,containerName:\"Page\",custom:{...s==null?void 0:s.offerData}},...s?{origin:s.pulseOrigin}:{},target:{url:(M=(_=(h=P.getAttribute(\"href\"))==null?void 0:h.split(\"?\"))==null?void 0:_[0])!=null?M:\"\"},...A?{intent:A}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}})}catch{}}return document.addEventListener(\"click\",f,!0),()=>document.removeEventListener(\"click\",f,!0)}function K(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,legacy:l,contentName:m,pulseEvents:g}=t;g.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:m,objectId:n,objectSdrn:r,offerCodes:[],offerType:V(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},provider:{stage:\"Test\"},target:{info:{}}}),g.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function B(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${O(a)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,\"spt:custom\":{...o==null?void 0:o.offerData,...o==null?void 0:o.custom}},origin:o==null?void 0:o.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:\"Test\"}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var R=e=>e===\"campaignpage\"||e===\"staticpage\";var z={name:\"@schibsted/sps-sdk\",version:\"4.11.2\",description:\"SPS SDK for node.js\",packageManager:\"pnpm@10.27.0\",engines:{node:\">=18.0.0\"},repository:{type:\"git\",url:\"https://schibsted.ghe.com/urs-ma/sps-sdk.git\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},author:\"Schibsted Subscription Product & Tech\",license:\"UNLICENSED\",type:\"module\",main:\"dist/cjs/index.js\",module:\"dist/esm/index.js\",exports:{\".\":{types:\"./dist/esm/index.d.ts\",import:\"./dist/esm/index.js\",require:\"./dist/cjs/index.js\"}},files:[\"dist\"],scripts:{preinstall:\"npx only-allow pnpm\",build:\"npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs\",\"build:clean\":\"rm -rf dist/cjs dist/esm\",\"build:esm\":\"tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json\",\"build:cjs\":`tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json`,\"build:sps-pulse-helpers\":\"tsup --config packages/sps-pulse-helpers/tsup.config.ts\",\"build:pulse-tracker-proxy\":\"tsup --config packages/pulse-tracker-proxy/tsup.config.ts\",\"build:public-scripts\":\"npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js\",test:\"node --experimental-vm-modules node_modules/jest/bin/jest.js\",lint:\"eslint .\",\"release:alpha\":\"npm publish --tag alpha\",\"release:beta\":\"npm publish --tag beta\"},devDependencies:{\"@jest/globals\":\"^30.0.0\",\"@schibsted/pulse-tracker-proxy\":\"^2.0.0-rc.9\",\"@semantic-release/changelog\":\"^6.0.3\",\"@semantic-release/git\":\"^10.0.1\",\"@snoam/mono-ma-shared-configs\":\"^1.1.0\",\"@types/jest\":\"30.0.0\",\"@types/node\":\"^24.0.3\",\"conventional-changelog-conventionalcommits\":\"^9.1.0\",eslint:\"^9.29.0\",jest:\"^30.0.0\",\"jest-environment-jsdom\":\"^30.0.2\",\"jest-fixed-jsdom\":\"^0.0.11\",msw:\"^2.13.0\",prettier:\"3.9.4\",\"semantic-release\":\"^25.0.8\",\"ts-jest\":\"^29.4.0\",\"ts-node\":\"^10.9.2\",\"tsc-alias\":\"^1.8.16\",tsup:\"^8.5.1\",typescript:\"^5.9.3\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var X=!1,Q=!1,J=\"script[data-sps-pulse-config='true']\",u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),O=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:\"\",\"\").replace(/^\\/|\\/$/g,\"\"))||\"\"};async function Z(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),X)return;X=!0;let e=null;try{let t=document.querySelector(J);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${J}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn(\"[SPS-Pulse-Helpers] Failed to parse config from script tag\",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!=\"function\"){console.warn(\"[SPS-Pulse-Helpers] PulseTrackerProxy not available\");return}let{placementType:r,publication:n,contentName:o}=e,c=R(r)?O(window.location.pathname):u(o),a=`sdrn:${n}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:\"SPS-SDK\",componentVersion:z.version});q(i,e,a,p);let s=f=>{Q||(Q=!0,K(i,e,a,p,f))};if(R(r)){await B(i,e,a),s(\"Above\");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",y=!0,x=new m(f=>{var h;let d=f[0],T=(h=d==null?void 0:d.intersectionRatio)!=null?h:0,w=(d==null?void 0:d.isIntersecting)&&T>=1/3;y&&(y=!1,g=w?\"Above\":\"Below\"),w&&(x.disconnect(),s(g))},{root:null,threshold:[0,1/3]});x.observe(l)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}Z();return se(de);})();\n";
3
- readonly "pulse-tracker-proxy": "\"use strict\";var PulseTrackerProxyBundle=(()=>{var x=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var O=(e,r,t,o)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let a of I(r))!M.call(e,a)&&a!==t&&x(e,a,{get:()=>r[a],enumerable:!(o=R(r,a))||o.enumerable});return e};var C=e=>O(x({},\"__esModule\",{value:!0}),e);var $={};var l=\"pulse-tracker-proxy\",T=`${l}:request`,G=`${l}:ack`,h=`${l}:invoke`,f=`${l}:return`,u=`${l}:return-error`,V=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function d(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(l)}async function A(e,r,t){return await new Promise((o,a)=>{let s=e.document.createElement(\"script\");s.src=`//sdk.pulse.schibsted.com/versioned/${t}/pulse.min.js`,s.async=!0,s.onload=o,s.onerror=()=>{a(new Error(`Failed to load autotracker script from src: ${s.src}`))},e.document.head.appendChild(s)}),new Promise((o,a)=>{if(!e.pulse){a(new Error(\"Pulse autotracker did not load correctly!\"));return}e.pulse(\"init\",r),e.pulse(s=>{o(s)})})}function m(e,{target:r,timeout:t,debug:o=()=>{}}){return new Promise((a,s)=>{let n=new MessageChannel,i=t?setTimeout(()=>{n.port1.close(),s(new Error(`Message of type ${e.type} timed out`))},t):void 0,p=c=>{if(o(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",c),!d(c.data)){o(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",c.data);return}c.data.type===u&&(o(\"[Pulse Tracker Proxy] Received an return error response\",c.data.error),clearTimeout(i),n.port1.close(),s(new Error(c.data.error))),o(\"[Pulse Tracker Proxy] Received a valid response\",c.data),clearTimeout(i),n.port1.close(),a(c.data)};n.port1.onmessage=p,o(\"[Pulse Tracker Proxy] Sending message to target window\",e),r.postMessage(e,\"*\",[n.port2])})}var L=\"2.0.0-rc.9\";function g(e){let r=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...r,proxyVersion:L}}}function w(e,r,t){let o=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...o,component:r,componentVersion:t}}}var y=class{constructor(r,t,o,a){this.target=r,this.component=t,this.componentVersion=o,this.debug=a}track(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,o,...a]=r,s=g(o),n=w(s,this.component,this.componentVersion),i=[t,n,...a];return this.invoke({method:\"track\",args:i})}async invoke(r){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",r);let t=await m({type:h,payload:r},{target:this.target});if(!d(t))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",t),new Error(\"Invalid response from proxy\");if(t.type===u)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",t.error),new Error(t.error);if(t.type===f)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",t.payload),t.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",t),new Error(\"Unexpected response from proxy\")}};var U=Object.fromEntries(V.map(e=>[e,function(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,...o]=r,a=g(t),n=[w(a,this.component,this.componentVersion),...o];return this.invoke({method:e,args:n})}]));function H(){return class extends y{constructor(e,r,t,o){super(e,r,t,o),o(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,U)}}}var S=H();async function _({provider:e,component:r,componentVersion:t,autotrackerVersion:o=\"4\",window:a=globalThis.window,target:s=a.parent,timeout:n=5e3,retries:i=3,retryTimeout:p=1e3,debug:c=()=>{}}={}){try{return await W({window:a,component:r,componentVersion:t,target:s,timeout:n,retries:i,retryTimeout:p,debug:c})}catch(k){if(c(`[Pulse Tracker Proxy] Failed to establish connection with target window: ${k}`),c(\"[Pulse Tracker Proxy] Checking if `pulseEventHandler` is provided in the current window...\"),a.pulseEventHandler)return c(`[Pulse Tracker Proxy] \\`pulseEventHandler\\` found in the current window. Assuming it is the app webview. Loading autotracker version ${o}...`),e?A(a,e,o):(c(\"[Pulse Tracker Proxy] `provider` is not set - cannot create pulse tracker.\"),Promise.reject(\"`provider` is not set - cannot create pulse tracker.\"));throw c(\"[Pulse Tracker Proxy] No `pulseEventHandler` found. Unable to establish connection with target window. Failing.\"),k}}function W({target:e,component:r,componentVersion:t,timeout:o,retries:a=3,retryTimeout:s,debug:n=()=>{}}={}){if(n(\"[Pulse Tracker Proxy] Trying to establish connection...\",{target:e,timeout:o,retries:a}),!e)return Promise.reject(new Error(\"Target window not provided. Possibly window.parent is not available.\"));let i,p=!1,c=new Promise((P,E)=>{i=setTimeout(()=>{p=!0,n(\"[Pulse Tracker Proxy] Ack timeout. Sorry, target seems to not support the proxy.\"),E(new Error(`Pulse tracker proxy not found within ${o} ms`))},o)}),k=(async()=>{for(let P=0;P<a;P++){if(p)throw n(\"[Pulse Tracker Proxy] Configured timeout has passed before the next attempt\"),new Error(\"Configured timeout has passed before the next attempt.\");try{n(`[Pulse Tracker Proxy] Sending request to target window (attempt: ${P+1})...`),await m({type:T},{target:e,timeout:s})}catch(E){n(`[Pulse Tracker Proxy] Ack Request failed: ${E}`);continue}return clearTimeout(i),n(`[Pulse Tracker Proxy] Ack Request successful (attempt: ${P+1})`),!r||!t?(n(\"[Pulse Tracker Proxy] `component` or `componentVersion` is not set - cannot create pulse tracker.\"),Promise.reject(\"`component` or `componentVersion` is not set - cannot create pulse tracker.\")):new S(e,r,t,n)}throw clearTimeout(i),n(\"[Pulse Tracker Proxy] Retries exhausted. Target did not respond. Failing.\"),new Error(\"Failed to establish connection with pulse tracker proxy\")})();return Promise.race([c,k])}var v;window.getPulseTrackerProxy=(v=window.getPulseTrackerProxy)!=null?v:_;return C($);})();\n";
4
- };
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PUBLIC_SCRIPTS_CONTENT = void 0;
4
- // Generated from dist/public-scripts — do not edit manually
5
- exports.PUBLIC_SCRIPTS_CONTENT = {
6
- "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ne=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of re(t))!oe.call(e,o)&&o!==r&&N(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var se=e=>ne(N({},\"__esModule\",{value:!0}),e);var de={};var k=\"pulse-tracker-proxy\",ae=`${k}:request`,Pe=`${k}:ack`,W=`${k}:invoke`,H=`${k}:return`,v=`${k}:return-error`,F=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function S(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(k)}function I(e,{target:t,timeout:r,debug:n=()=>{}}){return new Promise((o,c)=>{let a=new MessageChannel,p=r?setTimeout(()=>{a.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=s=>{if(n(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",s),!S(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===v&&(n(\"[Pulse Tracker Proxy] Received an return error response\",s.data.error),clearTimeout(p),a.port1.close(),c(new Error(s.data.error))),n(\"[Pulse Tracker Proxy] Received a valid response\",s.data),clearTimeout(p),a.port1.close(),o(s.data)};a.port1.onmessage=i,n(\"[Pulse Tracker Proxy] Sending message to target window\",e),t.postMessage(e,\"*\",[a.port2])})}var G=\"2.0.0-rc.9\";function C(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:G}}}function j(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var L=class{constructor(t,r,n,o){this.target=t,this.component=r,this.componentVersion=n,this.debug=o}track(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,n,...o]=t,c=C(n),a=j(c,this.component,this.componentVersion),p=[r,a,...o];return this.invoke({method:\"track\",args:p})}async invoke(t){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",t);let r=await I({type:W,payload:t},{target:this.target});if(!S(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===v)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===H)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",r.payload),r.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",r),new Error(\"Unexpected response from proxy\")}};var ie=Object.fromEntries(F.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=C(r),a=[j(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function ce(){return class extends L{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),me=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",D=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(me(n))return\"Login\";if(le(n))return\"Purchase\"}catch{return}};var Y=e=>{var t;try{let r=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\"),o=new URLSearchParams(r.search).get(\"code\");return o?o.split(\",\"):[]}catch{return[]}};var V=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:\"\";if(t.includes(\"meter\"))return\"Meter\";if(t.includes(\"paid\")||t.includes(\"subscription\"))return\"Paid\";if(t.includes(\"login\"))return\"Login\"};function q(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:l,pulseEvents:m}=t,g=400,y=\"\",x=0;function f(d){var T,w,h,_,M;try{let E=d.target,P=(T=E==null?void 0:E.closest)==null?void 0:T.call(E,\"a\");if(!P)return;let b=P.textContent||P.getAttribute(\"href\")||`${p} button`,U=`a|${b}`,$=Date.now();if(U===y&&$-x<g)return;y=U,x=$;let A=D(P),ee=A===\"Purchase\"?Y(P):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:l,offerCodes:ee,offerType:V(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:b},page:{},provider:{stage:\"Test\"},target:{info:{url:(w=P.getAttribute(\"href\"))!=null?w:\"\"}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:\"Button\",name:b,containerName:\"Page\",custom:{...s==null?void 0:s.offerData}},...s?{origin:s.pulseOrigin}:{},target:{url:(M=(_=(h=P.getAttribute(\"href\"))==null?void 0:h.split(\"?\"))==null?void 0:_[0])!=null?M:\"\"},...A?{intent:A}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}})}catch{}}return document.addEventListener(\"click\",f,!0),()=>document.removeEventListener(\"click\",f,!0)}function K(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,legacy:l,contentName:m,pulseEvents:g}=t;g.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:m,objectId:n,objectSdrn:r,offerCodes:[],offerType:V(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},provider:{stage:\"Test\"},target:{info:{}}}),g.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function B(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${O(a)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,\"spt:custom\":{...o==null?void 0:o.offerData,...o==null?void 0:o.custom}},origin:o==null?void 0:o.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:\"Test\"}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var R=e=>e===\"campaignpage\"||e===\"staticpage\";var z={name:\"@schibsted/sps-sdk\",version:\"4.11.2\",description:\"SPS SDK for node.js\",packageManager:\"pnpm@10.27.0\",engines:{node:\">=18.0.0\"},repository:{type:\"git\",url:\"https://schibsted.ghe.com/urs-ma/sps-sdk.git\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},author:\"Schibsted Subscription Product & Tech\",license:\"UNLICENSED\",type:\"module\",main:\"dist/cjs/index.js\",module:\"dist/esm/index.js\",exports:{\".\":{types:\"./dist/esm/index.d.ts\",import:\"./dist/esm/index.js\",require:\"./dist/cjs/index.js\"}},files:[\"dist\"],scripts:{preinstall:\"npx only-allow pnpm\",build:\"npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs\",\"build:clean\":\"rm -rf dist/cjs dist/esm\",\"build:esm\":\"tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json\",\"build:cjs\":`tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json`,\"build:sps-pulse-helpers\":\"tsup --config packages/sps-pulse-helpers/tsup.config.ts\",\"build:pulse-tracker-proxy\":\"tsup --config packages/pulse-tracker-proxy/tsup.config.ts\",\"build:public-scripts\":\"npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js\",test:\"node --experimental-vm-modules node_modules/jest/bin/jest.js\",lint:\"eslint .\",\"release:alpha\":\"npm publish --tag alpha\",\"release:beta\":\"npm publish --tag beta\"},devDependencies:{\"@jest/globals\":\"^30.0.0\",\"@schibsted/pulse-tracker-proxy\":\"^2.0.0-rc.9\",\"@semantic-release/changelog\":\"^6.0.3\",\"@semantic-release/git\":\"^10.0.1\",\"@snoam/mono-ma-shared-configs\":\"^1.1.0\",\"@types/jest\":\"30.0.0\",\"@types/node\":\"^24.0.3\",\"conventional-changelog-conventionalcommits\":\"^9.1.0\",eslint:\"^9.29.0\",jest:\"^30.0.0\",\"jest-environment-jsdom\":\"^30.0.2\",\"jest-fixed-jsdom\":\"^0.0.11\",msw:\"^2.13.0\",prettier:\"3.9.4\",\"semantic-release\":\"^25.0.8\",\"ts-jest\":\"^29.4.0\",\"ts-node\":\"^10.9.2\",\"tsc-alias\":\"^1.8.16\",tsup:\"^8.5.1\",typescript:\"^5.9.3\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var X=!1,Q=!1,J=\"script[data-sps-pulse-config='true']\",u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),O=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:\"\",\"\").replace(/^\\/|\\/$/g,\"\"))||\"\"};async function Z(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),X)return;X=!0;let e=null;try{let t=document.querySelector(J);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${J}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn(\"[SPS-Pulse-Helpers] Failed to parse config from script tag\",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!=\"function\"){console.warn(\"[SPS-Pulse-Helpers] PulseTrackerProxy not available\");return}let{placementType:r,publication:n,contentName:o}=e,c=R(r)?O(window.location.pathname):u(o),a=`sdrn:${n}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:\"SPS-SDK\",componentVersion:z.version});q(i,e,a,p);let s=f=>{Q||(Q=!0,K(i,e,a,p,f))};if(R(r)){await B(i,e,a),s(\"Above\");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",y=!0,x=new m(f=>{var h;let d=f[0],T=(h=d==null?void 0:d.intersectionRatio)!=null?h:0,w=(d==null?void 0:d.isIntersecting)&&T>=1/3;y&&(y=!1,g=w?\"Above\":\"Below\"),w&&(x.disconnect(),s(g))},{root:null,threshold:[0,1/3]});x.observe(l)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}Z();return se(de);})();\n",
7
- "pulse-tracker-proxy": "\"use strict\";var PulseTrackerProxyBundle=(()=>{var x=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var O=(e,r,t,o)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let a of I(r))!M.call(e,a)&&a!==t&&x(e,a,{get:()=>r[a],enumerable:!(o=R(r,a))||o.enumerable});return e};var C=e=>O(x({},\"__esModule\",{value:!0}),e);var $={};var l=\"pulse-tracker-proxy\",T=`${l}:request`,G=`${l}:ack`,h=`${l}:invoke`,f=`${l}:return`,u=`${l}:return-error`,V=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function d(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(l)}async function A(e,r,t){return await new Promise((o,a)=>{let s=e.document.createElement(\"script\");s.src=`//sdk.pulse.schibsted.com/versioned/${t}/pulse.min.js`,s.async=!0,s.onload=o,s.onerror=()=>{a(new Error(`Failed to load autotracker script from src: ${s.src}`))},e.document.head.appendChild(s)}),new Promise((o,a)=>{if(!e.pulse){a(new Error(\"Pulse autotracker did not load correctly!\"));return}e.pulse(\"init\",r),e.pulse(s=>{o(s)})})}function m(e,{target:r,timeout:t,debug:o=()=>{}}){return new Promise((a,s)=>{let n=new MessageChannel,i=t?setTimeout(()=>{n.port1.close(),s(new Error(`Message of type ${e.type} timed out`))},t):void 0,p=c=>{if(o(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",c),!d(c.data)){o(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",c.data);return}c.data.type===u&&(o(\"[Pulse Tracker Proxy] Received an return error response\",c.data.error),clearTimeout(i),n.port1.close(),s(new Error(c.data.error))),o(\"[Pulse Tracker Proxy] Received a valid response\",c.data),clearTimeout(i),n.port1.close(),a(c.data)};n.port1.onmessage=p,o(\"[Pulse Tracker Proxy] Sending message to target window\",e),r.postMessage(e,\"*\",[n.port2])})}var L=\"2.0.0-rc.9\";function g(e){let r=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...r,proxyVersion:L}}}function w(e,r,t){let o=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...o,component:r,componentVersion:t}}}var y=class{constructor(r,t,o,a){this.target=r,this.component=t,this.componentVersion=o,this.debug=a}track(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,o,...a]=r,s=g(o),n=w(s,this.component,this.componentVersion),i=[t,n,...a];return this.invoke({method:\"track\",args:i})}async invoke(r){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",r);let t=await m({type:h,payload:r},{target:this.target});if(!d(t))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",t),new Error(\"Invalid response from proxy\");if(t.type===u)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",t.error),new Error(t.error);if(t.type===f)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",t.payload),t.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",t),new Error(\"Unexpected response from proxy\")}};var U=Object.fromEntries(V.map(e=>[e,function(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,...o]=r,a=g(t),n=[w(a,this.component,this.componentVersion),...o];return this.invoke({method:e,args:n})}]));function H(){return class extends y{constructor(e,r,t,o){super(e,r,t,o),o(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,U)}}}var S=H();async function _({provider:e,component:r,componentVersion:t,autotrackerVersion:o=\"4\",window:a=globalThis.window,target:s=a.parent,timeout:n=5e3,retries:i=3,retryTimeout:p=1e3,debug:c=()=>{}}={}){try{return await W({window:a,component:r,componentVersion:t,target:s,timeout:n,retries:i,retryTimeout:p,debug:c})}catch(k){if(c(`[Pulse Tracker Proxy] Failed to establish connection with target window: ${k}`),c(\"[Pulse Tracker Proxy] Checking if `pulseEventHandler` is provided in the current window...\"),a.pulseEventHandler)return c(`[Pulse Tracker Proxy] \\`pulseEventHandler\\` found in the current window. Assuming it is the app webview. Loading autotracker version ${o}...`),e?A(a,e,o):(c(\"[Pulse Tracker Proxy] `provider` is not set - cannot create pulse tracker.\"),Promise.reject(\"`provider` is not set - cannot create pulse tracker.\"));throw c(\"[Pulse Tracker Proxy] No `pulseEventHandler` found. Unable to establish connection with target window. Failing.\"),k}}function W({target:e,component:r,componentVersion:t,timeout:o,retries:a=3,retryTimeout:s,debug:n=()=>{}}={}){if(n(\"[Pulse Tracker Proxy] Trying to establish connection...\",{target:e,timeout:o,retries:a}),!e)return Promise.reject(new Error(\"Target window not provided. Possibly window.parent is not available.\"));let i,p=!1,c=new Promise((P,E)=>{i=setTimeout(()=>{p=!0,n(\"[Pulse Tracker Proxy] Ack timeout. Sorry, target seems to not support the proxy.\"),E(new Error(`Pulse tracker proxy not found within ${o} ms`))},o)}),k=(async()=>{for(let P=0;P<a;P++){if(p)throw n(\"[Pulse Tracker Proxy] Configured timeout has passed before the next attempt\"),new Error(\"Configured timeout has passed before the next attempt.\");try{n(`[Pulse Tracker Proxy] Sending request to target window (attempt: ${P+1})...`),await m({type:T},{target:e,timeout:s})}catch(E){n(`[Pulse Tracker Proxy] Ack Request failed: ${E}`);continue}return clearTimeout(i),n(`[Pulse Tracker Proxy] Ack Request successful (attempt: ${P+1})`),!r||!t?(n(\"[Pulse Tracker Proxy] `component` or `componentVersion` is not set - cannot create pulse tracker.\"),Promise.reject(\"`component` or `componentVersion` is not set - cannot create pulse tracker.\")):new S(e,r,t,n)}throw clearTimeout(i),n(\"[Pulse Tracker Proxy] Retries exhausted. Target did not respond. Failing.\"),new Error(\"Failed to establish connection with pulse tracker proxy\")})();return Promise.race([c,k])}var v;window.getPulseTrackerProxy=(v=window.getPulseTrackerProxy)!=null?v:_;return C($);})();\n"
8
- };
9
- //# sourceMappingURL=public-scripts-content.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-scripts-content.js","sourceRoot":"","sources":["../../src/public-scripts-content.ts"],"names":[],"mappings":";;;AAAA,4DAA4D;AAC/C,QAAA,sBAAsB,GAAG;IACpC,mBAAmB,EAAE,k6WAAk6W;IACv7W,qBAAqB,EAAE,qqOAAqqO;CACprO,CAAC"}
@@ -1,4 +0,0 @@
1
- export declare const PUBLIC_SCRIPTS_CONTENT: {
2
- readonly "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ne=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of re(t))!oe.call(e,o)&&o!==r&&N(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var se=e=>ne(N({},\"__esModule\",{value:!0}),e);var de={};var k=\"pulse-tracker-proxy\",ae=`${k}:request`,Pe=`${k}:ack`,W=`${k}:invoke`,H=`${k}:return`,v=`${k}:return-error`,F=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function S(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(k)}function I(e,{target:t,timeout:r,debug:n=()=>{}}){return new Promise((o,c)=>{let a=new MessageChannel,p=r?setTimeout(()=>{a.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=s=>{if(n(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",s),!S(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===v&&(n(\"[Pulse Tracker Proxy] Received an return error response\",s.data.error),clearTimeout(p),a.port1.close(),c(new Error(s.data.error))),n(\"[Pulse Tracker Proxy] Received a valid response\",s.data),clearTimeout(p),a.port1.close(),o(s.data)};a.port1.onmessage=i,n(\"[Pulse Tracker Proxy] Sending message to target window\",e),t.postMessage(e,\"*\",[a.port2])})}var G=\"2.0.0-rc.9\";function C(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:G}}}function j(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var L=class{constructor(t,r,n,o){this.target=t,this.component=r,this.componentVersion=n,this.debug=o}track(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,n,...o]=t,c=C(n),a=j(c,this.component,this.componentVersion),p=[r,a,...o];return this.invoke({method:\"track\",args:p})}async invoke(t){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",t);let r=await I({type:W,payload:t},{target:this.target});if(!S(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===v)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===H)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",r.payload),r.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",r),new Error(\"Unexpected response from proxy\")}};var ie=Object.fromEntries(F.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=C(r),a=[j(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function ce(){return class extends L{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),me=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",D=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(me(n))return\"Login\";if(le(n))return\"Purchase\"}catch{return}};var Y=e=>{var t;try{let r=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\"),o=new URLSearchParams(r.search).get(\"code\");return o?o.split(\",\"):[]}catch{return[]}};var V=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:\"\";if(t.includes(\"meter\"))return\"Meter\";if(t.includes(\"paid\")||t.includes(\"subscription\"))return\"Paid\";if(t.includes(\"login\"))return\"Login\"};function q(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:l,pulseEvents:m}=t,g=400,y=\"\",x=0;function f(d){var T,w,h,_,M;try{let E=d.target,P=(T=E==null?void 0:E.closest)==null?void 0:T.call(E,\"a\");if(!P)return;let b=P.textContent||P.getAttribute(\"href\")||`${p} button`,U=`a|${b}`,$=Date.now();if(U===y&&$-x<g)return;y=U,x=$;let A=D(P),ee=A===\"Purchase\"?Y(P):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:l,offerCodes:ee,offerType:V(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:b},page:{},provider:{stage:\"Test\"},target:{info:{url:(w=P.getAttribute(\"href\"))!=null?w:\"\"}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:\"Button\",name:b,containerName:\"Page\",custom:{...s==null?void 0:s.offerData}},...s?{origin:s.pulseOrigin}:{},target:{url:(M=(_=(h=P.getAttribute(\"href\"))==null?void 0:h.split(\"?\"))==null?void 0:_[0])!=null?M:\"\"},...A?{intent:A}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}})}catch{}}return document.addEventListener(\"click\",f,!0),()=>document.removeEventListener(\"click\",f,!0)}function K(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,legacy:l,contentName:m,pulseEvents:g}=t;g.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:m,objectId:n,objectSdrn:r,offerCodes:[],offerType:V(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},provider:{stage:\"Test\"},target:{info:{}}}),g.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function B(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${O(a)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,\"spt:custom\":{...o==null?void 0:o.offerData,...o==null?void 0:o.custom}},origin:o==null?void 0:o.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:\"Test\"}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var R=e=>e===\"campaignpage\"||e===\"staticpage\";var z={name:\"@schibsted/sps-sdk\",version:\"4.11.2\",description:\"SPS SDK for node.js\",packageManager:\"pnpm@10.27.0\",engines:{node:\">=18.0.0\"},repository:{type:\"git\",url:\"https://schibsted.ghe.com/urs-ma/sps-sdk.git\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},author:\"Schibsted Subscription Product & Tech\",license:\"UNLICENSED\",type:\"module\",main:\"dist/cjs/index.js\",module:\"dist/esm/index.js\",exports:{\".\":{types:\"./dist/esm/index.d.ts\",import:\"./dist/esm/index.js\",require:\"./dist/cjs/index.js\"}},files:[\"dist\"],scripts:{preinstall:\"npx only-allow pnpm\",build:\"npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs\",\"build:clean\":\"rm -rf dist/cjs dist/esm\",\"build:esm\":\"tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json\",\"build:cjs\":`tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json`,\"build:sps-pulse-helpers\":\"tsup --config packages/sps-pulse-helpers/tsup.config.ts\",\"build:pulse-tracker-proxy\":\"tsup --config packages/pulse-tracker-proxy/tsup.config.ts\",\"build:public-scripts\":\"npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js\",test:\"node --experimental-vm-modules node_modules/jest/bin/jest.js\",lint:\"eslint .\",\"release:alpha\":\"npm publish --tag alpha\",\"release:beta\":\"npm publish --tag beta\"},devDependencies:{\"@jest/globals\":\"^30.0.0\",\"@schibsted/pulse-tracker-proxy\":\"^2.0.0-rc.9\",\"@semantic-release/changelog\":\"^6.0.3\",\"@semantic-release/git\":\"^10.0.1\",\"@snoam/mono-ma-shared-configs\":\"^1.1.0\",\"@types/jest\":\"30.0.0\",\"@types/node\":\"^24.0.3\",\"conventional-changelog-conventionalcommits\":\"^9.1.0\",eslint:\"^9.29.0\",jest:\"^30.0.0\",\"jest-environment-jsdom\":\"^30.0.2\",\"jest-fixed-jsdom\":\"^0.0.11\",msw:\"^2.13.0\",prettier:\"3.9.4\",\"semantic-release\":\"^25.0.8\",\"ts-jest\":\"^29.4.0\",\"ts-node\":\"^10.9.2\",\"tsc-alias\":\"^1.8.16\",tsup:\"^8.5.1\",typescript:\"^5.9.3\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var X=!1,Q=!1,J=\"script[data-sps-pulse-config='true']\",u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),O=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:\"\",\"\").replace(/^\\/|\\/$/g,\"\"))||\"\"};async function Z(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),X)return;X=!0;let e=null;try{let t=document.querySelector(J);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${J}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn(\"[SPS-Pulse-Helpers] Failed to parse config from script tag\",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!=\"function\"){console.warn(\"[SPS-Pulse-Helpers] PulseTrackerProxy not available\");return}let{placementType:r,publication:n,contentName:o}=e,c=R(r)?O(window.location.pathname):u(o),a=`sdrn:${n}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:\"SPS-SDK\",componentVersion:z.version});q(i,e,a,p);let s=f=>{Q||(Q=!0,K(i,e,a,p,f))};if(R(r)){await B(i,e,a),s(\"Above\");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",y=!0,x=new m(f=>{var h;let d=f[0],T=(h=d==null?void 0:d.intersectionRatio)!=null?h:0,w=(d==null?void 0:d.isIntersecting)&&T>=1/3;y&&(y=!1,g=w?\"Above\":\"Below\"),w&&(x.disconnect(),s(g))},{root:null,threshold:[0,1/3]});x.observe(l)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}Z();return se(de);})();\n";
3
- readonly "pulse-tracker-proxy": "\"use strict\";var PulseTrackerProxyBundle=(()=>{var x=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var O=(e,r,t,o)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let a of I(r))!M.call(e,a)&&a!==t&&x(e,a,{get:()=>r[a],enumerable:!(o=R(r,a))||o.enumerable});return e};var C=e=>O(x({},\"__esModule\",{value:!0}),e);var $={};var l=\"pulse-tracker-proxy\",T=`${l}:request`,G=`${l}:ack`,h=`${l}:invoke`,f=`${l}:return`,u=`${l}:return-error`,V=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function d(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(l)}async function A(e,r,t){return await new Promise((o,a)=>{let s=e.document.createElement(\"script\");s.src=`//sdk.pulse.schibsted.com/versioned/${t}/pulse.min.js`,s.async=!0,s.onload=o,s.onerror=()=>{a(new Error(`Failed to load autotracker script from src: ${s.src}`))},e.document.head.appendChild(s)}),new Promise((o,a)=>{if(!e.pulse){a(new Error(\"Pulse autotracker did not load correctly!\"));return}e.pulse(\"init\",r),e.pulse(s=>{o(s)})})}function m(e,{target:r,timeout:t,debug:o=()=>{}}){return new Promise((a,s)=>{let n=new MessageChannel,i=t?setTimeout(()=>{n.port1.close(),s(new Error(`Message of type ${e.type} timed out`))},t):void 0,p=c=>{if(o(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",c),!d(c.data)){o(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",c.data);return}c.data.type===u&&(o(\"[Pulse Tracker Proxy] Received an return error response\",c.data.error),clearTimeout(i),n.port1.close(),s(new Error(c.data.error))),o(\"[Pulse Tracker Proxy] Received a valid response\",c.data),clearTimeout(i),n.port1.close(),a(c.data)};n.port1.onmessage=p,o(\"[Pulse Tracker Proxy] Sending message to target window\",e),r.postMessage(e,\"*\",[n.port2])})}var L=\"2.0.0-rc.9\";function g(e){let r=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...r,proxyVersion:L}}}function w(e,r,t){let o=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...o,component:r,componentVersion:t}}}var y=class{constructor(r,t,o,a){this.target=r,this.component=t,this.componentVersion=o,this.debug=a}track(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,o,...a]=r,s=g(o),n=w(s,this.component,this.componentVersion),i=[t,n,...a];return this.invoke({method:\"track\",args:i})}async invoke(r){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",r);let t=await m({type:h,payload:r},{target:this.target});if(!d(t))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",t),new Error(\"Invalid response from proxy\");if(t.type===u)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",t.error),new Error(t.error);if(t.type===f)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",t.payload),t.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",t),new Error(\"Unexpected response from proxy\")}};var U=Object.fromEntries(V.map(e=>[e,function(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,...o]=r,a=g(t),n=[w(a,this.component,this.componentVersion),...o];return this.invoke({method:e,args:n})}]));function H(){return class extends y{constructor(e,r,t,o){super(e,r,t,o),o(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,U)}}}var S=H();async function _({provider:e,component:r,componentVersion:t,autotrackerVersion:o=\"4\",window:a=globalThis.window,target:s=a.parent,timeout:n=5e3,retries:i=3,retryTimeout:p=1e3,debug:c=()=>{}}={}){try{return await W({window:a,component:r,componentVersion:t,target:s,timeout:n,retries:i,retryTimeout:p,debug:c})}catch(k){if(c(`[Pulse Tracker Proxy] Failed to establish connection with target window: ${k}`),c(\"[Pulse Tracker Proxy] Checking if `pulseEventHandler` is provided in the current window...\"),a.pulseEventHandler)return c(`[Pulse Tracker Proxy] \\`pulseEventHandler\\` found in the current window. Assuming it is the app webview. Loading autotracker version ${o}...`),e?A(a,e,o):(c(\"[Pulse Tracker Proxy] `provider` is not set - cannot create pulse tracker.\"),Promise.reject(\"`provider` is not set - cannot create pulse tracker.\"));throw c(\"[Pulse Tracker Proxy] No `pulseEventHandler` found. Unable to establish connection with target window. Failing.\"),k}}function W({target:e,component:r,componentVersion:t,timeout:o,retries:a=3,retryTimeout:s,debug:n=()=>{}}={}){if(n(\"[Pulse Tracker Proxy] Trying to establish connection...\",{target:e,timeout:o,retries:a}),!e)return Promise.reject(new Error(\"Target window not provided. Possibly window.parent is not available.\"));let i,p=!1,c=new Promise((P,E)=>{i=setTimeout(()=>{p=!0,n(\"[Pulse Tracker Proxy] Ack timeout. Sorry, target seems to not support the proxy.\"),E(new Error(`Pulse tracker proxy not found within ${o} ms`))},o)}),k=(async()=>{for(let P=0;P<a;P++){if(p)throw n(\"[Pulse Tracker Proxy] Configured timeout has passed before the next attempt\"),new Error(\"Configured timeout has passed before the next attempt.\");try{n(`[Pulse Tracker Proxy] Sending request to target window (attempt: ${P+1})...`),await m({type:T},{target:e,timeout:s})}catch(E){n(`[Pulse Tracker Proxy] Ack Request failed: ${E}`);continue}return clearTimeout(i),n(`[Pulse Tracker Proxy] Ack Request successful (attempt: ${P+1})`),!r||!t?(n(\"[Pulse Tracker Proxy] `component` or `componentVersion` is not set - cannot create pulse tracker.\"),Promise.reject(\"`component` or `componentVersion` is not set - cannot create pulse tracker.\")):new S(e,r,t,n)}throw clearTimeout(i),n(\"[Pulse Tracker Proxy] Retries exhausted. Target did not respond. Failing.\"),new Error(\"Failed to establish connection with pulse tracker proxy\")})();return Promise.race([c,k])}var v;window.getPulseTrackerProxy=(v=window.getPulseTrackerProxy)!=null?v:_;return C($);})();\n";
4
- };
@@ -1,6 +0,0 @@
1
- // Generated from dist/public-scripts — do not edit manually
2
- export const PUBLIC_SCRIPTS_CONTENT = {
3
- "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ne=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of re(t))!oe.call(e,o)&&o!==r&&N(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var se=e=>ne(N({},\"__esModule\",{value:!0}),e);var de={};var k=\"pulse-tracker-proxy\",ae=`${k}:request`,Pe=`${k}:ack`,W=`${k}:invoke`,H=`${k}:return`,v=`${k}:return-error`,F=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function S(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(k)}function I(e,{target:t,timeout:r,debug:n=()=>{}}){return new Promise((o,c)=>{let a=new MessageChannel,p=r?setTimeout(()=>{a.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=s=>{if(n(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",s),!S(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===v&&(n(\"[Pulse Tracker Proxy] Received an return error response\",s.data.error),clearTimeout(p),a.port1.close(),c(new Error(s.data.error))),n(\"[Pulse Tracker Proxy] Received a valid response\",s.data),clearTimeout(p),a.port1.close(),o(s.data)};a.port1.onmessage=i,n(\"[Pulse Tracker Proxy] Sending message to target window\",e),t.postMessage(e,\"*\",[a.port2])})}var G=\"2.0.0-rc.9\";function C(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:G}}}function j(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var L=class{constructor(t,r,n,o){this.target=t,this.component=r,this.componentVersion=n,this.debug=o}track(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,n,...o]=t,c=C(n),a=j(c,this.component,this.componentVersion),p=[r,a,...o];return this.invoke({method:\"track\",args:p})}async invoke(t){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",t);let r=await I({type:W,payload:t},{target:this.target});if(!S(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===v)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===H)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",r.payload),r.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",r),new Error(\"Unexpected response from proxy\")}};var ie=Object.fromEntries(F.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=C(r),a=[j(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function ce(){return class extends L{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),me=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",D=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(me(n))return\"Login\";if(le(n))return\"Purchase\"}catch{return}};var Y=e=>{var t;try{let r=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\"),o=new URLSearchParams(r.search).get(\"code\");return o?o.split(\",\"):[]}catch{return[]}};var V=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:\"\";if(t.includes(\"meter\"))return\"Meter\";if(t.includes(\"paid\")||t.includes(\"subscription\"))return\"Paid\";if(t.includes(\"login\"))return\"Login\"};function q(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:l,pulseEvents:m}=t,g=400,y=\"\",x=0;function f(d){var T,w,h,_,M;try{let E=d.target,P=(T=E==null?void 0:E.closest)==null?void 0:T.call(E,\"a\");if(!P)return;let b=P.textContent||P.getAttribute(\"href\")||`${p} button`,U=`a|${b}`,$=Date.now();if(U===y&&$-x<g)return;y=U,x=$;let A=D(P),ee=A===\"Purchase\"?Y(P):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:l,offerCodes:ee,offerType:V(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:b},page:{},provider:{stage:\"Test\"},target:{info:{url:(w=P.getAttribute(\"href\"))!=null?w:\"\"}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:\"Button\",name:b,containerName:\"Page\",custom:{...s==null?void 0:s.offerData}},...s?{origin:s.pulseOrigin}:{},target:{url:(M=(_=(h=P.getAttribute(\"href\"))==null?void 0:h.split(\"?\"))==null?void 0:_[0])!=null?M:\"\"},...A?{intent:A}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}})}catch{}}return document.addEventListener(\"click\",f,!0),()=>document.removeEventListener(\"click\",f,!0)}function K(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,legacy:l,contentName:m,pulseEvents:g}=t;g.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:m,objectId:n,objectSdrn:r,offerCodes:[],offerType:V(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},provider:{stage:\"Test\"},target:{info:{}}}),g.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function B(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${O(a)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,\"spt:custom\":{...o==null?void 0:o.offerData,...o==null?void 0:o.custom}},origin:o==null?void 0:o.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:\"Test\"}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var R=e=>e===\"campaignpage\"||e===\"staticpage\";var z={name:\"@schibsted/sps-sdk\",version:\"4.11.2\",description:\"SPS SDK for node.js\",packageManager:\"pnpm@10.27.0\",engines:{node:\">=18.0.0\"},repository:{type:\"git\",url:\"https://schibsted.ghe.com/urs-ma/sps-sdk.git\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},author:\"Schibsted Subscription Product & Tech\",license:\"UNLICENSED\",type:\"module\",main:\"dist/cjs/index.js\",module:\"dist/esm/index.js\",exports:{\".\":{types:\"./dist/esm/index.d.ts\",import:\"./dist/esm/index.js\",require:\"./dist/cjs/index.js\"}},files:[\"dist\"],scripts:{preinstall:\"npx only-allow pnpm\",build:\"npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs\",\"build:clean\":\"rm -rf dist/cjs dist/esm\",\"build:esm\":\"tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json\",\"build:cjs\":`tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json`,\"build:sps-pulse-helpers\":\"tsup --config packages/sps-pulse-helpers/tsup.config.ts\",\"build:pulse-tracker-proxy\":\"tsup --config packages/pulse-tracker-proxy/tsup.config.ts\",\"build:public-scripts\":\"npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js\",test:\"node --experimental-vm-modules node_modules/jest/bin/jest.js\",lint:\"eslint .\",\"release:alpha\":\"npm publish --tag alpha\",\"release:beta\":\"npm publish --tag beta\"},devDependencies:{\"@jest/globals\":\"^30.0.0\",\"@schibsted/pulse-tracker-proxy\":\"^2.0.0-rc.9\",\"@semantic-release/changelog\":\"^6.0.3\",\"@semantic-release/git\":\"^10.0.1\",\"@snoam/mono-ma-shared-configs\":\"^1.1.0\",\"@types/jest\":\"30.0.0\",\"@types/node\":\"^24.0.3\",\"conventional-changelog-conventionalcommits\":\"^9.1.0\",eslint:\"^9.29.0\",jest:\"^30.0.0\",\"jest-environment-jsdom\":\"^30.0.2\",\"jest-fixed-jsdom\":\"^0.0.11\",msw:\"^2.13.0\",prettier:\"3.9.4\",\"semantic-release\":\"^25.0.8\",\"ts-jest\":\"^29.4.0\",\"ts-node\":\"^10.9.2\",\"tsc-alias\":\"^1.8.16\",tsup:\"^8.5.1\",typescript:\"^5.9.3\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var X=!1,Q=!1,J=\"script[data-sps-pulse-config='true']\",u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),O=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:\"\",\"\").replace(/^\\/|\\/$/g,\"\"))||\"\"};async function Z(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),X)return;X=!0;let e=null;try{let t=document.querySelector(J);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${J}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn(\"[SPS-Pulse-Helpers] Failed to parse config from script tag\",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!=\"function\"){console.warn(\"[SPS-Pulse-Helpers] PulseTrackerProxy not available\");return}let{placementType:r,publication:n,contentName:o}=e,c=R(r)?O(window.location.pathname):u(o),a=`sdrn:${n}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:\"SPS-SDK\",componentVersion:z.version});q(i,e,a,p);let s=f=>{Q||(Q=!0,K(i,e,a,p,f))};if(R(r)){await B(i,e,a),s(\"Above\");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",y=!0,x=new m(f=>{var h;let d=f[0],T=(h=d==null?void 0:d.intersectionRatio)!=null?h:0,w=(d==null?void 0:d.isIntersecting)&&T>=1/3;y&&(y=!1,g=w?\"Above\":\"Below\"),w&&(x.disconnect(),s(g))},{root:null,threshold:[0,1/3]});x.observe(l)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}Z();return se(de);})();\n",
4
- "pulse-tracker-proxy": "\"use strict\";var PulseTrackerProxyBundle=(()=>{var x=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var O=(e,r,t,o)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let a of I(r))!M.call(e,a)&&a!==t&&x(e,a,{get:()=>r[a],enumerable:!(o=R(r,a))||o.enumerable});return e};var C=e=>O(x({},\"__esModule\",{value:!0}),e);var $={};var l=\"pulse-tracker-proxy\",T=`${l}:request`,G=`${l}:ack`,h=`${l}:invoke`,f=`${l}:return`,u=`${l}:return-error`,V=[\"trackAnonymousViewUIElement\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementTeaser\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAdSlot\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function d(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(l)}async function A(e,r,t){return await new Promise((o,a)=>{let s=e.document.createElement(\"script\");s.src=`//sdk.pulse.schibsted.com/versioned/${t}/pulse.min.js`,s.async=!0,s.onload=o,s.onerror=()=>{a(new Error(`Failed to load autotracker script from src: ${s.src}`))},e.document.head.appendChild(s)}),new Promise((o,a)=>{if(!e.pulse){a(new Error(\"Pulse autotracker did not load correctly!\"));return}e.pulse(\"init\",r),e.pulse(s=>{o(s)})})}function m(e,{target:r,timeout:t,debug:o=()=>{}}){return new Promise((a,s)=>{let n=new MessageChannel,i=t?setTimeout(()=>{n.port1.close(),s(new Error(`Message of type ${e.type} timed out`))},t):void 0,p=c=>{if(o(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",c),!d(c.data)){o(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",c.data);return}c.data.type===u&&(o(\"[Pulse Tracker Proxy] Received an return error response\",c.data.error),clearTimeout(i),n.port1.close(),s(new Error(c.data.error))),o(\"[Pulse Tracker Proxy] Received a valid response\",c.data),clearTimeout(i),n.port1.close(),a(c.data)};n.port1.onmessage=p,o(\"[Pulse Tracker Proxy] Sending message to target window\",e),r.postMessage(e,\"*\",[n.port2])})}var L=\"2.0.0-rc.9\";function g(e){let r=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...r,proxyVersion:L}}}function w(e,r,t){let o=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...o,component:r,componentVersion:t}}}var y=class{constructor(r,t,o,a){this.target=r,this.component=t,this.componentVersion=o,this.debug=a}track(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,o,...a]=r,s=g(o),n=w(s,this.component,this.componentVersion),i=[t,n,...a];return this.invoke({method:\"track\",args:i})}async invoke(r){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",r);let t=await m({type:h,payload:r},{target:this.target});if(!d(t))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",t),new Error(\"Invalid response from proxy\");if(t.type===u)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",t.error),new Error(t.error);if(t.type===f)return this.debug(\"[Pulse Tracker Proxy] Successful response from proxy\",t.payload),t.payload;throw this.debug(\"[Pulse Tracker Proxy] Unhandled response from proxy\",t),new Error(\"Unexpected response from proxy\")}};var U=Object.fromEntries(V.map(e=>[e,function(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,...o]=r,a=g(t),n=[w(a,this.component,this.componentVersion),...o];return this.invoke({method:e,args:n})}]));function H(){return class extends y{constructor(e,r,t,o){super(e,r,t,o),o(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,U)}}}var S=H();async function _({provider:e,component:r,componentVersion:t,autotrackerVersion:o=\"4\",window:a=globalThis.window,target:s=a.parent,timeout:n=5e3,retries:i=3,retryTimeout:p=1e3,debug:c=()=>{}}={}){try{return await W({window:a,component:r,componentVersion:t,target:s,timeout:n,retries:i,retryTimeout:p,debug:c})}catch(k){if(c(`[Pulse Tracker Proxy] Failed to establish connection with target window: ${k}`),c(\"[Pulse Tracker Proxy] Checking if `pulseEventHandler` is provided in the current window...\"),a.pulseEventHandler)return c(`[Pulse Tracker Proxy] \\`pulseEventHandler\\` found in the current window. Assuming it is the app webview. Loading autotracker version ${o}...`),e?A(a,e,o):(c(\"[Pulse Tracker Proxy] `provider` is not set - cannot create pulse tracker.\"),Promise.reject(\"`provider` is not set - cannot create pulse tracker.\"));throw c(\"[Pulse Tracker Proxy] No `pulseEventHandler` found. Unable to establish connection with target window. Failing.\"),k}}function W({target:e,component:r,componentVersion:t,timeout:o,retries:a=3,retryTimeout:s,debug:n=()=>{}}={}){if(n(\"[Pulse Tracker Proxy] Trying to establish connection...\",{target:e,timeout:o,retries:a}),!e)return Promise.reject(new Error(\"Target window not provided. Possibly window.parent is not available.\"));let i,p=!1,c=new Promise((P,E)=>{i=setTimeout(()=>{p=!0,n(\"[Pulse Tracker Proxy] Ack timeout. Sorry, target seems to not support the proxy.\"),E(new Error(`Pulse tracker proxy not found within ${o} ms`))},o)}),k=(async()=>{for(let P=0;P<a;P++){if(p)throw n(\"[Pulse Tracker Proxy] Configured timeout has passed before the next attempt\"),new Error(\"Configured timeout has passed before the next attempt.\");try{n(`[Pulse Tracker Proxy] Sending request to target window (attempt: ${P+1})...`),await m({type:T},{target:e,timeout:s})}catch(E){n(`[Pulse Tracker Proxy] Ack Request failed: ${E}`);continue}return clearTimeout(i),n(`[Pulse Tracker Proxy] Ack Request successful (attempt: ${P+1})`),!r||!t?(n(\"[Pulse Tracker Proxy] `component` or `componentVersion` is not set - cannot create pulse tracker.\"),Promise.reject(\"`component` or `componentVersion` is not set - cannot create pulse tracker.\")):new S(e,r,t,n)}throw clearTimeout(i),n(\"[Pulse Tracker Proxy] Retries exhausted. Target did not respond. Failing.\"),new Error(\"Failed to establish connection with pulse tracker proxy\")})();return Promise.race([c,k])}var v;window.getPulseTrackerProxy=(v=window.getPulseTrackerProxy)!=null?v:_;return C($);})();\n"
5
- };
6
- //# sourceMappingURL=public-scripts-content.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-scripts-content.js","sourceRoot":"","sources":["../../src/public-scripts-content.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,mBAAmB,EAAE,k6WAAk6W;IACv7W,qBAAqB,EAAE,qqOAAqqO;CACprO,CAAC"}
@@ -1 +0,0 @@
1
- "use strict";var SpsPulseHelpersBundle=(()=>{var N=Object.defineProperty;var te=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var oe=Object.prototype.hasOwnProperty;var ne=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of re(t))!oe.call(e,o)&&o!==r&&N(e,o,{get:()=>t[o],enumerable:!(n=te(t,o))||n.enumerable});return e};var se=e=>ne(N({},"__esModule",{value:!0}),e);var de={};var k="pulse-tracker-proxy",ae=`${k}:request`,Pe=`${k}:ack`,W=`${k}:invoke`,H=`${k}:return`,v=`${k}:return-error`,F=["trackAnonymousViewUIElement","trackEngagementAudio","trackEngagementForm","trackEngagementHealthUIElement","trackEngagementOffer","trackEngagementTeaser","trackEngagementUIElement","trackEngagementVideo","trackEngagementVideoAd","trackEngagementWidget","trackCompletedHealthAction","trackImpressionAdSlot","trackImpressionForm","trackImpressionHealthUIElement","trackImpressionOffer","trackImpressionPlayer","trackImpressionTeaser","trackImpressionUIElement","trackImpressionWidget","trackLeaveArticle","trackLeaveAudioPage","trackLeaveError","trackLeaveFrontpage","trackLeaveLandingpage","trackLeaveListing","trackLeaveLockedArticle","trackLeaveLockedAudioPage","trackLeaveLockedVideoPage","trackLeavePage","trackLeaveSportsPage","trackLeaveVideoPage","trackLeaveWeather","trackViewArticle","trackViewAudioPage","trackViewError","trackViewFrontpage","trackViewHealthPage","trackViewLandingpage","trackViewListing","trackViewLockedArticle","trackViewLockedAudioPage","trackViewLockedVideoPage","trackViewPage","trackViewSportsPage","trackViewTitle","trackViewVideoPage","trackViewWeather","trackLegacyViewArticle","trackLegacyViewLoginPoster","trackLegacyViewSalesPoster","trackLegacyViewListing","trackLegacyViewFrontpage","trackLegacyViewPage","trackLegacyViewUIElement","trackLegacyClickUIElement"];function S(e){return e!==null&&typeof e=="object"&&"type"in e&&typeof e.type=="string"&&e.type.startsWith(k)}function I(e,{target:t,timeout:r,debug:n=()=>{}}){return new Promise((o,c)=>{let a=new MessageChannel,p=r?setTimeout(()=>{a.port1.close(),c(new Error(`Message of type ${e.type} timed out`))},r):void 0,i=s=>{if(n("[Pulse Tracker Proxy] Received the response on the MessageChannel",s),!S(s.data)){n("[Pulse Tracker Proxy] Response was not a valid Proxy Message",s.data);return}s.data.type===v&&(n("[Pulse Tracker Proxy] Received an return error response",s.data.error),clearTimeout(p),a.port1.close(),c(new Error(s.data.error))),n("[Pulse Tracker Proxy] Received a valid response",s.data),clearTimeout(p),a.port1.close(),o(s.data)};a.port1.onmessage=i,n("[Pulse Tracker Proxy] Sending message to target window",e),t.postMessage(e,"*",[a.port2])})}var G="2.0.0-rc.9";function C(e){let t="tracker"in e&&typeof e.tracker=="object"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:G}}}function j(e,t,r){let n="provider"in e&&typeof e.provider=="object"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var L=class{constructor(t,r,n,o){this.target=t,this.component=r,this.componentVersion=n,this.debug=o}track(...t){this.debug("[Pulse Tracker Proxy] Calling `track`",t);let[r,n,...o]=t,c=C(n),a=j(c,this.component,this.componentVersion),p=[r,a,...o];return this.invoke({method:"track",args:p})}async invoke(t){this.debug("[Pulse Tracker Proxy] Invoking remote function",t);let r=await I({type:W,payload:t},{target:this.target});if(!S(r))throw this.debug("[Pulse Tracker Proxy] Invalid response from proxy",r),new Error("Invalid response from proxy");if(r.type===v)throw this.debug("[Pulse Tracker Proxy] Error response from proxy",r.error),new Error(r.error);if(r.type===H)return this.debug("[Pulse Tracker Proxy] Successful response from proxy",r.payload),r.payload;throw this.debug("[Pulse Tracker Proxy] Unhandled response from proxy",r),new Error("Unexpected response from proxy")}};var ie=Object.fromEntries(F.map(e=>[e,function(...t){this.debug("[Pulse Tracker Proxy] Calling `track`",t);let[r,...n]=t,o=C(r),a=[j(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function ce(){return class extends L{constructor(e,t,r,n){super(e,t,r,n),n("[Pulse TPaaS Proxy] Initialized"),Object.assign(this,ie)}}}var pe=ce();var le=e=>e==="payment.schibsted.com"||e.startsWith("bestilling.")||e==="pay.pre.schibsted.digital"||e.startsWith("test-bestilling."),me=e=>e==="login.schibsted.com"||e==="identity-pre.schibsted.com",D=e=>{var t;try{let n=new URL((t=e.getAttribute("href"))!=null?t:"").hostname;if(me(n))return"Login";if(le(n))return"Purchase"}catch{return}};var Y=e=>{var t;try{let r=new URL((t=e.getAttribute("href"))!=null?t:""),o=new URLSearchParams(r.search).get("code");return o?o.split(","):[]}catch{return[]}};var V=e=>{var r;let t=(r=e==null?void 0:e.toLowerCase())!=null?r:"";if(t.includes("meter"))return"Meter";if(t.includes("paid")||t.includes("subscription"))return"Paid";if(t.includes("login"))return"Login"};function q(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:l,pulseEvents:m}=t,g=400,y="",x=0;function f(d){var T,w,h,_,M;try{let E=d.target,P=(T=E==null?void 0:E.closest)==null?void 0:T.call(E,"a");if(!P)return;let b=P.textContent||P.getAttribute("href")||`${p} button`,U=`a|${b}`,$=Date.now();if(U===y&&$-x<g)return;y=U,x=$;let A=D(P),ee=A==="Purchase"?Y(P):[];m.tpaas&&e.trackEngagementOffer({placement:{containerName:"page",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:l,offerCodes:ee,offerType:V(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:"SPS",variant:a||""}]}:{},engagement:{action:"Click",elementName:b},page:{},provider:{stage:"Test"},target:{info:{url:(w=P.getAttribute("href"))!=null?w:""}}}),m.legacy&&e.trackLegacyClickUIElement({object:{id:u(b),elementType:"Button",name:b,containerName:"Page",custom:{...s==null?void 0:s.offerData}},...s?{origin:s.pulseOrigin}:{},target:{url:(M=(_=(h=P.getAttribute("href"))==null?void 0:h.split("?"))==null?void 0:_[0])!=null?M:""},...A?{intent:A}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:"SPS",variant:a}]}:{}})}catch{}}return document.addEventListener("click",f,!0),()=>document.removeEventListener("click",f,!0)}function K(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,legacy:l,contentName:m,pulseEvents:g}=t;g.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:"page",offerPlacement:i},object:{campaign:c,name:m,objectId:n,objectSdrn:r,offerCodes:[],offerType:V(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:"SPS",variant:p||""}]}:{},page:{},provider:{stage:"Test"},target:{info:{}}}),g.legacy&&e.trackLegacyViewUIElement({object:{id:u(m),elementType:i,name:m,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:"SPS",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}})}async function B(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n==="campaignpage"?"CAMPAIGN":"STATIC"}-${O(a)}`.toLowerCase();c.legacy&&await e.trackLegacyViewPage({object:{pageId:i,name:document.title,"spt:custom":{...o==null?void 0:o.offerData,...o==null?void 0:o.custom}},origin:o==null?void 0:o.pulseOrigin}),c.tpaas&&await e.trackViewLandingpage({object:{objectId:i,objectSdrn:r,title:document.title},page:{},provider:{stage:"Test"}},{leaveTracking:{objectElement:"body",pageElement:"body",objectResizable:!1}})}var R=e=>e==="campaignpage"||e==="staticpage";var z={name:"@schibsted/sps-sdk",version:"4.11.2",description:"SPS SDK for node.js",packageManager:"pnpm@10.27.0",engines:{node:">=18.0.0"},repository:{type:"git",url:"https://schibsted.ghe.com/urs-ma/sps-sdk.git"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},author:"Schibsted Subscription Product & Tech",license:"UNLICENSED",type:"module",main:"dist/cjs/index.js",module:"dist/esm/index.js",exports:{".":{types:"./dist/esm/index.d.ts",import:"./dist/esm/index.js",require:"./dist/cjs/index.js"}},files:["dist"],scripts:{preinstall:"npx only-allow pnpm",build:"npm run build:clean && npm run build:public-scripts && npm run build:esm && npm run build:cjs","build:clean":"rm -rf dist/cjs dist/esm","build:esm":"tsc -p tsconfig.esm.json && tsc-alias -p tsconfig.esm.json","build:cjs":`tsc -p tsconfig.cjs.json && tsc-alias -p tsconfig.cjs.json && echo '{"type":"commonjs"}' > dist/cjs/package.json`,"build:sps-pulse-helpers":"tsup --config packages/sps-pulse-helpers/tsup.config.ts","build:pulse-tracker-proxy":"tsup --config packages/pulse-tracker-proxy/tsup.config.ts","build:public-scripts":"npm run build:sps-pulse-helpers && npm run build:pulse-tracker-proxy && node scripts/generate-public-scripts-content.js",test:"node --experimental-vm-modules node_modules/jest/bin/jest.js",lint:"eslint .","release:alpha":"npm publish --tag alpha","release:beta":"npm publish --tag beta"},devDependencies:{"@jest/globals":"^30.0.0","@schibsted/pulse-tracker-proxy":"^2.0.0-rc.9","@semantic-release/changelog":"^6.0.3","@semantic-release/git":"^10.0.1","@snoam/mono-ma-shared-configs":"^1.1.0","@types/jest":"30.0.0","@types/node":"^24.0.3","conventional-changelog-conventionalcommits":"^9.1.0",eslint:"^9.29.0",jest:"^30.0.0","jest-environment-jsdom":"^30.0.2","jest-fixed-jsdom":"^0.0.11",msw:"^2.13.0",prettier:"3.9.4","semantic-release":"^25.0.8","ts-jest":"^29.4.0","ts-node":"^10.9.2","tsc-alias":"^1.8.16",tsup:"^8.5.1",typescript:"^5.9.3"},dependencies:{"@schibsted/consent-url-utils":"^2.0.0"}};var X=!1,Q=!1,J="script[data-sps-pulse-config='true']",u=e=>e.toLowerCase().replace(/ /g,"-").replace(/[^-a-z:0-9]/g,""),O=e=>{var t,r;return(e==null?void 0:e.replace((r=(t=window.__landingpages)==null?void 0:t.rootUrl)!=null?r:"","").replace(/^\/|\/$/g,""))||""};async function Z(){if(console.log("[SPS-Pulse-Helpers] boot initiated"),X)return;X=!0;let e=null;try{let t=document.querySelector(J);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${J}`);return}e=JSON.parse(t.textContent)}catch(t){console.warn("[SPS-Pulse-Helpers] Failed to parse config from script tag",t);return}try{let t=window.getPulseTrackerProxy;if(!t||typeof t!="function"){console.warn("[SPS-Pulse-Helpers] PulseTrackerProxy not available");return}let{placementType:r,publication:n,contentName:o}=e,c=R(r)?O(window.location.pathname):u(o),a=`sdrn:${n}:element:offer:${r}:${c}`,p=crypto==null?void 0:crypto.randomUUID(),i=await t({component:"SPS-SDK",componentVersion:z.version});q(i,e,a,p);let s=f=>{Q||(Q=!0,K(i,e,a,p,f))};if(R(r)){await B(i,e,a),s("Above");return}let l=window.frameElement,m=window.parent.IntersectionObserver;if(!l||!m){console.warn("[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.");return}let g="Unknown",y=!0,x=new m(f=>{var h;let d=f[0],T=(h=d==null?void 0:d.intersectionRatio)!=null?h:0,w=(d==null?void 0:d.isIntersecting)&&T>=1/3;y&&(y=!1,g=w?"Above":"Below"),w&&(x.disconnect(),s(g))},{root:null,threshold:[0,1/3]});x.observe(l)}catch(t){console.warn("[SPS-Pulse-Helpers] boot failed",t)}}Z();return se(de);})();