@schibsted/sps-sdk 5.3.0 → 5.4.0-CBT-20903.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/cjs/actions/dismiss.d.ts +1 -1
  2. package/dist/cjs/actions/dismiss.js +2 -2
  3. package/dist/cjs/actions/dismiss.js.map +1 -1
  4. package/dist/cjs/actions/iframe.d.ts +6 -0
  5. package/dist/cjs/actions/iframe.js +48 -0
  6. package/dist/cjs/actions/iframe.js.map +1 -0
  7. package/dist/cjs/apiClient.js +2 -2
  8. package/dist/cjs/apiClient.js.map +1 -1
  9. package/dist/cjs/index.d.ts +1 -0
  10. package/dist/cjs/index.js.map +1 -1
  11. package/dist/cjs/public-scripts-content.d.ts +1 -1
  12. package/dist/cjs/public-scripts-content.js +1 -1
  13. package/dist/cjs/public-scripts-content.js.map +1 -1
  14. package/dist/cjs/sps.d.ts +65 -19
  15. package/dist/cjs/sps.js +91 -11
  16. package/dist/cjs/sps.js.map +1 -1
  17. package/dist/cjs/utils/login-url.d.ts +40 -0
  18. package/dist/cjs/utils/login-url.js +29 -0
  19. package/dist/cjs/utils/login-url.js.map +1 -0
  20. package/dist/cjs/utils/placementCookies.d.ts +1 -1
  21. package/dist/cjs/utils/placementCookies.js +13 -2
  22. package/dist/cjs/utils/placementCookies.js.map +1 -1
  23. package/dist/esm/actions/dismiss.d.ts +1 -1
  24. package/dist/esm/actions/dismiss.js +2 -2
  25. package/dist/esm/actions/dismiss.js.map +1 -1
  26. package/dist/esm/actions/iframe.d.ts +6 -0
  27. package/dist/esm/actions/iframe.js +44 -0
  28. package/dist/esm/actions/iframe.js.map +1 -0
  29. package/dist/esm/apiClient.js +2 -2
  30. package/dist/esm/apiClient.js.map +1 -1
  31. package/dist/esm/index.d.ts +1 -0
  32. package/dist/esm/index.js.map +1 -1
  33. package/dist/esm/public-scripts-content.d.ts +1 -1
  34. package/dist/esm/public-scripts-content.js +1 -1
  35. package/dist/esm/public-scripts-content.js.map +1 -1
  36. package/dist/esm/sps.d.ts +65 -19
  37. package/dist/esm/sps.js +89 -10
  38. package/dist/esm/sps.js.map +1 -1
  39. package/dist/esm/utils/login-url.d.ts +40 -0
  40. package/dist/esm/utils/login-url.js +25 -0
  41. package/dist/esm/utils/login-url.js.map +1 -0
  42. package/dist/esm/utils/placementCookies.d.ts +1 -1
  43. package/dist/esm/utils/placementCookies.js +13 -2
  44. package/dist/esm/utils/placementCookies.js.map +1 -1
  45. package/dist/public-scripts/sps-pulse-helpers.min.js +1 -1
  46. package/package.json +2 -1
package/dist/cjs/sps.js CHANGED
@@ -1,12 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SPS = void 0;
3
+ exports.renderArticlePagePlacements = exports.renderFrontpagePlacements = exports.SPS = void 0;
4
4
  const _1 = require("./index.js");
5
5
  const create_tracking_params_1 = require("./tracking/create-tracking-params.js");
6
6
  const rewrite_salesposter_variables_1 = require("./sps/rewrite-salesposter-variables.js");
7
+ const publication_1 = require("./sps/publication.js");
7
8
  const apiClient_1 = require("./apiClient.js");
8
9
  const dismiss_1 = require("./actions/dismiss.js");
9
10
  const consent_1 = require("./actions/consent.js");
11
+ const iframe_1 = require("./actions/iframe.js");
12
+ const login_url_1 = require("./utils/login-url.js");
13
+ /**
14
+ * The domain SPS is requested from for each publication, used by {@link renderFrontpagePlacements}
15
+ * and {@link renderArticlePagePlacements}. Publications not listed use the default domain.
16
+ */
17
+ const publicationDomains = {
18
+ [publication_1.SpsPublication.AB]: "aftonbladet.se",
19
+ [publication_1.SpsPublication.AP]: "aftenposten.no",
20
+ [publication_1.SpsPublication.BT]: "bt.no",
21
+ [publication_1.SpsPublication.E24]: "e24.no",
22
+ [publication_1.SpsPublication.SA]: "aftenbladet.no",
23
+ [publication_1.SpsPublication.SVD]: "svd.se",
24
+ [publication_1.SpsPublication.VG]: "vg.no",
25
+ };
10
26
  /**
11
27
  * Main entry point for the SPS SDK. Provides methods to fetch posters and decisions
12
28
  * from the SPS API for a given publication and environment.
@@ -18,16 +34,16 @@ class SPS {
18
34
  endpoint;
19
35
  /** The active environment this instance targets. */
20
36
  environment;
21
- /** The domain dismiss cookies set by this instance are scoped to, if configured. */
22
- cookieDomain;
37
+ /** Account SDK v6 instance resolver, for example `getAccountSdk` from `@schibsted/account-sdk-browser`. */
38
+ getAccountSdk;
23
39
  /**
24
40
  * Creates a new SPS SDK instance.
25
41
  * @param options - Configuration options including publication, domain and environment.
26
42
  */
27
- constructor({ publication, domain = "schibsted.tech", environment = "production", cookieDomain, }) {
43
+ constructor({ publication, domain = "schibsted.tech", environment = "production", getAccountSdk, }) {
44
+ this.getAccountSdk = getAccountSdk;
28
45
  this.environment = environment;
29
46
  this.publication = publication;
30
- this.cookieDomain = cookieDomain;
31
47
  this.endpoint = (0, _1.getEndpoint)(environment, domain);
32
48
  }
33
49
  async validateClientEnvironment() {
@@ -161,10 +177,17 @@ class SPS {
161
177
  });
162
178
  let content;
163
179
  if (typeof posterResponse.content === "string") {
180
+ const redirectUrl = (await options.generateRedirectUrl?.(posterResponse)) ??
181
+ `${window.location.origin}${window.location.pathname}`;
182
+ const loginUrl = await (0, login_url_1.resolveLoginUrl)({
183
+ campaign: posterResponse.campaign,
184
+ trackingData,
185
+ getAccountSdk: this.getAccountSdk,
186
+ generateLegacyLoginUrl: () => options.generateLoginUrl?.(posterResponse),
187
+ });
164
188
  content = (0, rewrite_salesposter_variables_1.rewritePlaceholderVariables)(posterResponse, {
165
- loginUrl: (await options.generateLoginUrl?.(posterResponse)) ?? "",
166
- redirectUrl: (await options.generateRedirectUrl?.(posterResponse)) ??
167
- `${window.location.origin}${window.location.pathname}`,
189
+ loginUrl,
190
+ redirectUrl,
168
191
  searchParams,
169
192
  appendSearchParams: options.appendSearchParams ?? true,
170
193
  publication: this.publication,
@@ -187,7 +210,7 @@ class SPS {
187
210
  (0, dismiss_1.addDismiss)(placementType, iframeId, {
188
211
  hideDuration: posterResponse.hideDuration ?? 86400000, // 24 hours in ms,
189
212
  elementId: dismissOptions?.elementId,
190
- }, this.cookieDomain);
213
+ });
191
214
  }
192
215
  (0, consent_1.addConsentForwarding)(iframeId);
193
216
  return {
@@ -200,6 +223,61 @@ class SPS {
200
223
  pulseObject,
201
224
  };
202
225
  }
226
+ /**
227
+ * Fetches priority-ordered placements for the frontpage context and renders each one
228
+ * in an iframe inside its element. Must be called from a browser environment.
229
+ * Also exported as {@link renderFrontpagePlacements}, which needs no SDK instance.
230
+ *
231
+ * @param placements - The placement types to fetch, each with the element to render it in.
232
+ * @param options - The publication and environment to request from, and request options including `params`.
233
+ * @returns The placement types that were rendered.
234
+ */
235
+ static async renderFrontpagePlacements(placements, options) {
236
+ return SPS.renderContextPlacements("frontpage", placements, options);
237
+ }
238
+ /**
239
+ * Fetches priority-ordered placements for the article page context and renders each one
240
+ * in an iframe inside its element. Must be called from a browser environment.
241
+ * Also exported as {@link renderArticlePagePlacements}, which needs no SDK instance.
242
+ *
243
+ * @param placements - The placement types to fetch, each with the element to render it in.
244
+ * @param options - The publication and environment to request from, and request options including `params`.
245
+ * @returns The placement types that were rendered.
246
+ */
247
+ static async renderArticlePagePlacements(placements, options) {
248
+ return SPS.renderContextPlacements("article", placements, options);
249
+ }
250
+ static async renderContextPlacements(context, placements, { publication, environment, getAccountSdk, params, ...options }) {
251
+ const sps = new SPS({
252
+ publication,
253
+ domain: publicationDomains[publication],
254
+ environment,
255
+ getAccountSdk,
256
+ });
257
+ const contextOptions = {
258
+ ...options,
259
+ params: { ...params, context },
260
+ pulseEvents: { tpaas: true },
261
+ };
262
+ return sps.renderPlacements(placements, (placementTypes) => context === "frontpage"
263
+ ? sps.getFrontpagePlacements(placementTypes, contextOptions)
264
+ : sps.getArticlePagePlacements(placementTypes, contextOptions));
265
+ }
266
+ async renderPlacements(placements, fetchPosters) {
267
+ const placementTypes = placements.map((p) => p.placementType);
268
+ if (new Set(placementTypes).size !== placementTypes.length) {
269
+ throw new Error("[SPS sdk] Each placement type can only be rendered in one element");
270
+ }
271
+ const posters = await fetchPosters(placementTypes);
272
+ placements.forEach(({ element }) => element.replaceChildren());
273
+ return Promise.all(posters.flatMap((poster) => {
274
+ const placement = placements.find((p) => p.placementType === poster.type);
275
+ if (!placement) {
276
+ return [];
277
+ }
278
+ return (0, iframe_1.renderPosterInIframe)(placement.element, poster.iframeId, poster.content).then(() => placement.placementType);
279
+ }));
280
+ }
203
281
  /**
204
282
  * Fetches priority-ordered placements (full content) for the frontpage context.
205
283
  * Must be called from a browser environment.
@@ -211,7 +289,7 @@ class SPS {
211
289
  * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
212
290
  * @returns Array of enriched placements for the frontpage context, fallback posters (if configured) on API failure, or `[]` otherwise.
213
291
  */
214
- async getFrontpagePlacements(placementTypes, options = {}) {
292
+ async getFrontpagePlacements(placementTypes, options) {
215
293
  await this.validateClientEnvironment();
216
294
  const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "frontpage", this.endpoint, placementTypes, options.params, undefined, options.timeoutMs);
217
295
  if (!result) {
@@ -230,7 +308,7 @@ class SPS {
230
308
  * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
231
309
  * @returns Array of enriched placements for the article page context, fallback posters (if configured) on API failure, or `[]` otherwise.
232
310
  */
233
- async getArticlePagePlacements(placementTypes, options = {}) {
311
+ async getArticlePagePlacements(placementTypes, options) {
234
312
  await this.validateClientEnvironment();
235
313
  const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "article", this.endpoint, placementTypes, options.params, undefined, options.timeoutMs);
236
314
  if (!result) {
@@ -304,4 +382,6 @@ class SPS {
304
382
  }
305
383
  }
306
384
  exports.SPS = SPS;
385
+ exports.renderFrontpagePlacements = SPS.renderFrontpagePlacements;
386
+ exports.renderArticlePagePlacements = SPS.renderArticlePagePlacements;
307
387
  //# sourceMappingURL=sps.js.map
@@ -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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"}
@@ -0,0 +1,40 @@
1
+ /** Options the SDK passes to `account.loginUrl()`. A subset of the Account SDK's `LoginOptions`. */
2
+ export type AccountLoginUrlOptions = {
3
+ /** Campaign of the poster, for Pulse tracking. */
4
+ originCampaign?: string;
5
+ /** Cross-domain id shared with the poster's tracking. */
6
+ xDomainId?: string;
7
+ /** Pulse environment id for cross-domain tracking. */
8
+ xEnvironmentId?: string;
9
+ };
10
+ /**
11
+ * The part of the Schibsted Account SDK v6 `Account` the SPS SDK uses.
12
+ * Not compatible with v5 `Identity`, whose `loginUrl()` requires a `state`.
13
+ */
14
+ export type AccountLike = {
15
+ loginUrl(options: AccountLoginUrlOptions): string;
16
+ };
17
+ /** Resolves the Account SDK instance, for example `getAccountSdk` from `@schibsted/account-sdk-browser`. */
18
+ export type GetAccountSdk = () => Promise<AccountLike>;
19
+ type ResolveLoginUrlOptions = {
20
+ /** The campaign of the posterResponse */
21
+ campaign: string;
22
+ /** The poster's tracking data. Empty values are not sent to Account. */
23
+ trackingData: {
24
+ x_domain_id?: string;
25
+ x_env_id?: string;
26
+ };
27
+ /** Generates the login URL with the Account SDK. Takes precedence over `generateLegacyLoginUrl`. */
28
+ getAccountSdk?: GetAccountSdk;
29
+ /** The deprecated `generateLoginUrl` callback, used only when there is no `getAccountSdk`. */
30
+ generateLegacyLoginUrl?: () => Promise<string> | string | undefined;
31
+ };
32
+ /**
33
+ * Resolves the value for the `{{loginUrl}}` placeholder: a URL generated with `getAccountSdk` if
34
+ * given, otherwise the result of `generateLegacyLoginUrl`, otherwise an empty string.
35
+ *
36
+ * Resolves to an empty string, and warns, when the account cannot be resolved or the URL cannot
37
+ * be built, so a poster still renders.
38
+ */
39
+ export declare const resolveLoginUrl: ({ campaign, trackingData, getAccountSdk, generateLegacyLoginUrl, }: ResolveLoginUrlOptions) => Promise<string>;
40
+ export {};
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveLoginUrl = void 0;
4
+ /**
5
+ * Resolves the value for the `{{loginUrl}}` placeholder: a URL generated with `getAccountSdk` if
6
+ * given, otherwise the result of `generateLegacyLoginUrl`, otherwise an empty string.
7
+ *
8
+ * Resolves to an empty string, and warns, when the account cannot be resolved or the URL cannot
9
+ * be built, so a poster still renders.
10
+ */
11
+ const resolveLoginUrl = async ({ campaign, trackingData, getAccountSdk, generateLegacyLoginUrl, }) => {
12
+ if (!getAccountSdk) {
13
+ return (await generateLegacyLoginUrl?.()) ?? "";
14
+ }
15
+ try {
16
+ const account = await getAccountSdk();
17
+ return account.loginUrl({
18
+ originCampaign: campaign,
19
+ xDomainId: trackingData.x_domain_id,
20
+ xEnvironmentId: trackingData.x_env_id || undefined,
21
+ });
22
+ }
23
+ catch (error) {
24
+ console.warn("[SPS sdk] Could not generate a login URL with getAccountSdk", error);
25
+ return "";
26
+ }
27
+ };
28
+ exports.resolveLoginUrl = resolveLoginUrl;
29
+ //# sourceMappingURL=login-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-url.js","sourceRoot":"","sources":["../../../src/utils/login-url.ts"],"names":[],"mappings":";;;AAgCA;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,sBAAsB,GACC,EAAmB,EAAE;IAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,MAAM,sBAAsB,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,aAAa,EAAE,CAAC;QACtC,OAAO,OAAO,CAAC,QAAQ,CAAC;YACtB,cAAc,EAAE,QAAQ;YACxB,SAAS,EAAE,YAAY,CAAC,WAAW;YACnC,cAAc,EAAE,YAAY,CAAC,QAAQ,IAAI,SAAS;SACnD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,CAAC,CAAC;QACnF,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC;AArBW,QAAA,eAAe,mBAqB1B"}
@@ -4,4 +4,4 @@ export declare const decodeDismissCount: (value: string) => {
4
4
  count: number;
5
5
  scheduleEndDate: number | null;
6
6
  };
7
- export declare const setDismissCookie: (type: string, pauseDuration: number, elementId: string | undefined, domain?: string) => void;
7
+ export declare const setDismissCookie: (type: string, pauseDuration: number, elementId: string | undefined) => void;
@@ -22,12 +22,23 @@ const decodeDismissCount = (value) => {
22
22
  };
23
23
  };
24
24
  exports.decodeDismissCount = decodeDismissCount;
25
- const setDismissCookie = (type, pauseDuration, elementId, domain) => {
25
+ /**
26
+ * The root domain of the current page, assuming a two-label domain.
27
+ */
28
+ const getRootDomain = () => {
29
+ const { hostname } = window.location;
30
+ if (["localhost", "127.0.0.1"].includes(hostname)) {
31
+ return undefined;
32
+ }
33
+ return hostname.split(".").slice(-2).join(".");
34
+ };
35
+ const setDismissCookie = (type, pauseDuration, elementId) => {
26
36
  if (typeof document === "undefined") {
27
37
  return;
28
38
  }
29
39
  const maxAge = Math.floor(pauseDuration / 1000);
30
- const domainAttribute = domain ? `; Domain=${domain}` : "";
40
+ const rootDomain = getRootDomain();
41
+ const domainAttribute = rootDomain ? `; Domain=${rootDomain}` : "";
31
42
  document.cookie = `${(0, exports.getDismissCookieName)(type, elementId)}=1; Max-Age=${maxAge}; Path=/; SameSite=Lax${domainAttribute}`;
32
43
  };
33
44
  exports.setDismissCookie = setDismissCookie;
@@ -1 +1 @@
1
- {"version":3,"file":"placementCookies.js","sourceRoot":"","sources":["../../../src/utils/placementCookies.ts"],"names":[],"mappings":";;;AAAA,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAEjC,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,SAAkB,EAAU,EAAE,CAC/E,SAAS,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,EAAE,CAAC;AADtE,QAAA,oBAAoB,wBACkD;AAE5E,MAAM,YAAY,GAAG,CAAC,YAAoB,EAA0B,EAAE;IAC3E,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CACvB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnC,MAAM,CAAC,GAAG,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,kBAAkB,GAAG,CAChC,KAAa,EACsC,EAAE;IACrD,MAAM,CAAC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC7B,eAAe,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;KAChE,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,kBAAkB,sBAQ7B;AAEK,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,aAAqB,EACrB,SAA6B,EAC7B,MAAe,EACT,EAAE;IACR,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAChD,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,eAAe,MAAM,yBAAyB,eAAe,EAAE,CAAC;AAC5H,CAAC,CAAC;AAZW,QAAA,gBAAgB,oBAY3B"}
1
+ {"version":3,"file":"placementCookies.js","sourceRoot":"","sources":["../../../src/utils/placementCookies.ts"],"names":[],"mappings":";;;AAAA,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAEjC,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,SAAkB,EAAU,EAAE,CAC/E,SAAS,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,IAAI,EAAE,CAAC;AADtE,QAAA,oBAAoB,wBACkD;AAE5E,MAAM,YAAY,GAAG,CAAC,YAAoB,EAA0B,EAAE;IAC3E,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CACvB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnC,MAAM,CAAC,GAAG,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB;AAEK,MAAM,kBAAkB,GAAG,CAChC,KAAa,EACsC,EAAE;IACrD,MAAM,CAAC,QAAQ,GAAG,GAAG,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnD,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC7B,eAAe,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;KAChE,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,kBAAkB,sBAQ7B;AAEF;;GAEG;AACH,MAAM,aAAa,GAAG,GAAuB,EAAE;IAC7C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC;IACrC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjD,CAAC,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAC9B,IAAY,EACZ,aAAqB,EACrB,SAA6B,EACvB,EAAE;IACR,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAA,4BAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,eAAe,MAAM,yBAAyB,eAAe,EAAE,CAAC;AAC5H,CAAC,CAAC;AAZW,QAAA,gBAAgB,oBAY3B"}
@@ -27,5 +27,5 @@ export interface AddDismissOptions {
27
27
  */
28
28
  elementId?: string;
29
29
  }
30
- export declare const addDismiss: (placementType: PlacementType, iframeId: string, options: AddDismissOptions, domain?: string) => void;
30
+ export declare const addDismiss: (placementType: PlacementType, iframeId: string, options: AddDismissOptions) => void;
31
31
  export declare const getDismissScript: (placementType: PlacementTypeWithStringContent) => string;
@@ -28,7 +28,7 @@ export const isDismissed = (placementType, options) => {
28
28
  const cookieName = getDismissCookieName(placementType, options?.elementId);
29
29
  return cookieName in parseCookies(document.cookie);
30
30
  };
31
- export const addDismiss = (placementType, iframeId, options, domain) => {
31
+ export const addDismiss = (placementType, iframeId, options) => {
32
32
  const key = `${placementType}:${iframeId}`;
33
33
  const alreadyRegistered = dismissListenerKeys.has(key);
34
34
  dismissListenerKeys.set(key, options);
@@ -42,7 +42,7 @@ export const addDismiss = (placementType, iframeId, options, domain) => {
42
42
  if (event.data.type === `${DISMISS_KEY}:${placementType}`) {
43
43
  console.log("[SPS sdk] - Dismiss issued by user", event);
44
44
  const currentOptions = dismissListenerKeys.get(key);
45
- setDismissCookie(placementType, currentOptions.hideDuration, currentOptions.elementId, domain);
45
+ setDismissCookie(placementType, currentOptions.hideDuration, currentOptions.elementId);
46
46
  document.getElementById(iframeId)?.remove();
47
47
  }
48
48
  });
@@ -1 +1 @@
1
- {"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEjG,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAExC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA6B,CAAC;AAEjE,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAyB,CAAC;AAE5D,MAAM,YAAY,GAAG,CAAC,MAAc,EAAU,EAAE;IAC9C,MAAM,KAAK,GAAG,4BAA4B,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC5D,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,aAA4B,EAAU,EAAE;IACzE,IAAI,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QACtB,kBAAkB,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAcF,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,aAA4B,EAC5B,OAA4B,EACnB,EAAE;IACX,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,oBAAoB,CAAC,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC3E,OAAO,UAAU,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC,CAAC;AAkBF,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,aAA4B,EAC5B,QAAgB,EAChB,OAA0B,EAC1B,MAAe,EACT,EAAE;IACR,MAAM,GAAG,GAAG,GAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;IAC3C,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvD,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEtC,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,KAAK;QAChD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,WAAW,IAAI,aAAa,EAAE,EAAE,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;YACrD,gBAAgB,CACd,aAAa,EACb,cAAc,CAAC,YAAY,EAC3B,cAAc,CAAC,SAAS,EACxB,MAAM,CACP,CAAC;YACF,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,aAA6C,EAAU,EAAE,CACxF;;;;;;;;;qBASmB,WAAW,IAAI,aAAa;;;;;;GAM9C,CAAC"}
1
+ {"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Renders poster content in an iframe that replaces the children of `element`.
3
+ * The iframe grows to the height of its content, and links navigate the top window.
4
+ * Resolves once the iframe has loaded and its first height is applied.
5
+ */
6
+ export declare const renderPosterInIframe: (element: HTMLElement, iframeId: string, content: string) => Promise<void>;
@@ -0,0 +1,44 @@
1
+ const resetDocumentSpacing = (doc) => {
2
+ [doc.documentElement, doc.body].forEach((el) => {
3
+ el.style.margin = "0";
4
+ el.style.padding = "0";
5
+ el.style.overflow = "hidden";
6
+ });
7
+ };
8
+ const navigateTopOnLinkClick = (doc) => {
9
+ doc.addEventListener("click", (event) => {
10
+ const anchor = event.target?.closest("a");
11
+ if (!anchor?.href) {
12
+ return;
13
+ }
14
+ event.preventDefault();
15
+ // Delay navigation so click tracking inside the poster has time to fire
16
+ setTimeout(() => window.top?.location.assign(anchor.href), 100);
17
+ });
18
+ };
19
+ /**
20
+ * Renders poster content in an iframe that replaces the children of `element`.
21
+ * The iframe grows to the height of its content, and links navigate the top window.
22
+ * Resolves once the iframe has loaded and its first height is applied.
23
+ */
24
+ export const renderPosterInIframe = (element, iframeId, content) => new Promise((resolve) => {
25
+ const iframe = document.createElement("iframe");
26
+ iframe.id = iframeId;
27
+ iframe.style.border = "0";
28
+ iframe.style.display = "block";
29
+ iframe.style.width = "100%";
30
+ iframe.addEventListener("load", () => {
31
+ const doc = iframe.contentDocument;
32
+ resetDocumentSpacing(doc);
33
+ navigateTopOnLinkClick(doc);
34
+ const updateHeight = () => {
35
+ iframe.style.height = `${doc.body.scrollHeight}px`;
36
+ };
37
+ updateHeight();
38
+ new ResizeObserver(updateHeight).observe(doc.body);
39
+ resolve();
40
+ }, { once: true });
41
+ iframe.srcdoc = content;
42
+ element.replaceChildren(iframe);
43
+ });
44
+ //# sourceMappingURL=iframe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iframe.js","sourceRoot":"","sources":["../../../src/actions/iframe.ts"],"names":[],"mappings":"AAAA,MAAM,oBAAoB,GAAG,CAAC,GAAa,EAAQ,EAAE;IACnD,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC7C,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;QACtB,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACvB,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,GAAa,EAAQ,EAAE;IACrD,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QACtC,MAAM,MAAM,GAAI,KAAK,CAAC,MAAyB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,wEAAwE;QACxE,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAAoB,EACpB,QAAgB,EAChB,OAAe,EACA,EAAE,CACjB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;IACtB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC;IACrB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;IAC1B,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC/B,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,gBAAgB,CACrB,MAAM,EACN,GAAG,EAAE;QACH,MAAM,GAAG,GAAG,MAAM,CAAC,eAAgB,CAAC;QACpC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC1B,sBAAsB,CAAC,GAAG,CAAC,CAAC;QAE5B,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC;QACrD,CAAC,CAAC;QACF,YAAY,EAAE,CAAC;QACf,IAAI,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,EAAE,CAAC;IACZ,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACF,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;IACxB,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
@@ -110,7 +110,7 @@ export const fetchDecision = async (url, params, userJwtToken, cookie) => {
110
110
  export const fetchPlacementsByContext = async (publication, context, endpoint, placementTypes, params, cookies, timeoutMs) => {
111
111
  try {
112
112
  const url = new URL(`${endpoint}/${publication}/placements/${context}`);
113
- placementTypes?.forEach((placementType) => {
113
+ placementTypes.forEach((placementType) => {
114
114
  url.searchParams.append("placementTypes[]", placementType);
115
115
  });
116
116
  if (params) {
@@ -149,7 +149,7 @@ export const fetchPlacementsByContext = async (publication, context, endpoint, p
149
149
  export const fetchDecisionsByContext = async (publication, context, endpoint, placementTypes, params, cookies) => {
150
150
  try {
151
151
  const url = new URL(`${endpoint}/${publication}/placements/${context}/decision`);
152
- placementTypes?.forEach((placementType) => {
152
+ placementTypes.forEach((placementType) => {
153
153
  url.searchParams.append("placementTypes[]", placementType);
154
154
  });
155
155
  if (params) {
@@ -1 +1 @@
1
- {"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":"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"}
@@ -14,5 +14,6 @@ export * from "./utils/source.js";
14
14
  export * from "./utils/url.js";
15
15
  export * from "./utils/utm.js";
16
16
  export * from "./utils/xDomainId.js";
17
+ export type { AccountLike, AccountLoginUrlOptions, GetAccountSdk } from "./utils/login-url.js";
17
18
  export * from "./utils/pulseProxy.js";
18
19
  export default SPS;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAE5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AAErD,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAE5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AAErD,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAElC,cAAc,oBAAoB,CAAC;AAEnC,eAAe,GAAG,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export declare const PUBLIC_SCRIPTS_CONTENT: {
2
- readonly "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var F=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ne=Object.prototype.hasOwnProperty;var se=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of oe(t))!ne.call(e,o)&&o!==r&&F(e,o,{get:()=>t[o],enumerable:!(n=re(t,o))||n.enumerable});return e};var ae=e=>se(F({},\"__esModule\",{value:!0}),e);var de={};var y=\"pulse-tracker-proxy\",ie=`${y}:request`,fe=`${y}:ack`,D=`${y}:invoke`,G=`${y}:return`,L=`${y}:return-error`,q=[\"trackAnonymousViewUIElement\",\"trackEngagementAd\",\"trackEngagementAffiliate\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementSchoolUIElement\",\"trackEngagementSportsUIElement\",\"trackEngagementTeaser\",\"trackEngagementTvModule\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAd\",\"trackImpressionAdSlot\",\"trackImpressionAffiliate\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionSchoolUIElement\",\"trackImpressionSportsUIElement\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLoadAd\",\"trackRequestAd\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSchoolPage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSchoolPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function V(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(y)}function O(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),!V(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===L&&(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 Y=\"2.0.0-rc.19\";function j(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:Y}}}function R(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var v=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=j(n),a=R(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 O({type:D,payload:t},{target:this.target});if(!V(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===L)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===G)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 ce=Object.fromEntries(q.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=j(r),a=[R(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function pe(){return class extends v{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ce)}}}var le=pe();var me=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),ue=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",K=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(ue(n))return\"Login\";if(me(n))return\"Purchase\"}catch{return}};var B=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 A=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 z(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:m,pulseEvents:l}=t,g=400,d=\"\",h=0;function k(P){var b,x,E,U,$;try{let T=P.target,f=(b=T==null?void 0:T.closest)==null?void 0:b.call(T,\"a\");if(!f)return;let S=f.textContent||f.getAttribute(\"href\")||`${p} button`,N=`a|${S}`,W=Date.now();if(N===d&&W-h<g)return;d=N,h=W;let C=K(f),H=C===\"Purchase\"?B(f):[];l.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:m,offerCodes:H,offerType:A(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:S},page:{},target:{info:{url:(x=f.getAttribute(\"href\"))!=null?x:\"\"}}}).catch(w),l.legacy&&e.trackLegacyClickUIElement({object:{id:u(S),elementType:\"Button\",name:S,containerName:\"Page\",custom:{...s==null?void 0:s.offerData,offerCodes:H}},...s?{origin:s.pulseOrigin}:{},target:{url:($=(U=(E=f.getAttribute(\"href\"))==null?void 0:E.split(\"?\"))==null?void 0:U[0])!=null?$:\"\"},...C?{intent:C}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}}).catch(w)}catch{}}return document.addEventListener(\"click\",k,!0),()=>document.removeEventListener(\"click\",k,!0)}function X(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,offerCodes:m,legacy:l,contentName:g,pulseEvents:d}=t;d.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:g,objectId:n,objectSdrn:r,offerCodes:m!=null?m:[],offerType:A(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},target:{info:{}}}).catch(w),d.legacy&&e.trackLegacyViewUIElement({object:{id:u(g),elementType:i,name:g,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom,offerCodes:m}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}}).catch(w)}async function Q(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${_(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:{}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var M=e=>e===\"campaignpage\"||e===\"staticpage\";var I={name:\"@schibsted/sps-sdk\",version:\"5.2.0\",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.19\",\"@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\"},peerDependencies:{\"@schibsted/pulse-sdk\":\">=8.0.0-rc.19\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var J=!1,Z=!1,ee=\"script[data-sps-pulse-config='true']\",w=e=>console.error(`[SPS-Pulse-Helpers] Failed to send Pulse event. Events are dropped if the host page runs an older @schibsted/pulse-sdk. SPS SDK ${I.version} requires @schibsted/pulse-sdk ${I.peerDependencies[\"@schibsted/pulse-sdk\"]}.`,e),u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),_=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 te(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),J)return;J=!0;let e=null;try{let t=document.querySelector(ee);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${ee}`);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=M(r)?_(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:I.version});z(i,e,a,p);let s=k=>{Z||(Z=!0,X(i,e,a,p,k))};if(M(r)){await Q(i,e,a),s(\"Above\");return}let m=window.frameElement,l=window.parent.IntersectionObserver;if(!m||!l){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",d=!0,h=new l(k=>{var E;let P=k[0],b=(E=P==null?void 0:P.intersectionRatio)!=null?E:0,x=(P==null?void 0:P.isIntersecting)&&b>=1/3;d&&(d=!1,g=x?\"Above\":\"Below\"),x&&(h.disconnect(),s(g))},{root:null,threshold:[0,1/3]});h.observe(m)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}te();return ae(de);})();\n";
2
+ readonly "sps-pulse-helpers": "\"use strict\";var SpsPulseHelpersBundle=(()=>{var F=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ne=Object.prototype.hasOwnProperty;var se=(e,t,r,n)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of oe(t))!ne.call(e,o)&&o!==r&&F(e,o,{get:()=>t[o],enumerable:!(n=re(t,o))||n.enumerable});return e};var ae=e=>se(F({},\"__esModule\",{value:!0}),e);var de={};var y=\"pulse-tracker-proxy\",ie=`${y}:request`,fe=`${y}:ack`,D=`${y}:invoke`,G=`${y}:return`,L=`${y}:return-error`,q=[\"trackAnonymousViewUIElement\",\"trackEngagementAd\",\"trackEngagementAffiliate\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementSchoolUIElement\",\"trackEngagementSportsUIElement\",\"trackEngagementTeaser\",\"trackEngagementTvModule\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAd\",\"trackImpressionAdSlot\",\"trackImpressionAffiliate\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionSchoolUIElement\",\"trackImpressionSportsUIElement\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLoadAd\",\"trackRequestAd\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSchoolPage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSchoolPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function V(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(y)}function O(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),!V(s.data)){n(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===L&&(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 Y=\"2.0.0-rc.19\";function j(e){let t=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...t,proxyVersion:Y}}}function R(e,t,r){let n=\"provider\"in e&&typeof e.provider==\"object\"?e.provider:{};return{...e,provider:{...n,component:t,componentVersion:r}}}var v=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=j(n),a=R(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 O({type:D,payload:t},{target:this.target});if(!V(r))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",r),new Error(\"Invalid response from proxy\");if(r.type===L)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",r.error),new Error(r.error);if(r.type===G)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 ce=Object.fromEntries(q.map(e=>[e,function(...t){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",t);let[r,...n]=t,o=j(r),a=[R(o,this.component,this.componentVersion),...n];return this.invoke({method:e,args:a})}]));function pe(){return class extends v{constructor(e,t,r,n){super(e,t,r,n),n(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,ce)}}}var le=pe();var me=e=>e===\"payment.schibsted.com\"||e.startsWith(\"bestilling.\")||e===\"pay.pre.schibsted.digital\"||e.startsWith(\"test-bestilling.\"),ue=e=>e===\"login.schibsted.com\"||e===\"identity-pre.schibsted.com\",K=e=>{var t;try{let n=new URL((t=e.getAttribute(\"href\"))!=null?t:\"\").hostname;if(ue(n))return\"Login\";if(me(n))return\"Purchase\"}catch{return}};var B=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 A=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 z(e,t,r,n){let{campaign:o,articleType:c,abTestGroup:a,placementType:p,experiment:i,legacy:s,contentName:m,pulseEvents:l}=t,g=400,d=\"\",h=0;function k(P){var b,x,E,U,$;try{let T=P.target,f=(b=T==null?void 0:T.closest)==null?void 0:b.call(T,\"a\");if(!f)return;let S=f.textContent||f.getAttribute(\"href\")||`${p} button`,N=`a|${S}`,W=Date.now();if(N===d&&W-h<g)return;d=N,h=W;let C=K(f),H=C===\"Purchase\"?B(f):[];l.tpaas&&e.trackEngagementOffer({placement:{containerName:\"page\",offerPlacement:p},object:{objectId:n,objectSdrn:r,campaign:o,name:m,offerCodes:H,offerType:A(c)},...i?{experiments:[{experimentSdrn:`${r}:experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a||\"\"}]}:{},engagement:{action:\"Click\",elementName:S},page:{},target:{info:{url:(x=f.getAttribute(\"href\"))!=null?x:\"\"}}}).catch(w),l.legacy&&e.trackLegacyClickUIElement({object:{id:u(S),elementType:\"Button\",name:S,containerName:\"Page\",custom:{...s==null?void 0:s.offerData,offerCodes:H}},...s?{origin:s.pulseOrigin}:{},target:{url:($=(U=(E=f.getAttribute(\"href\"))==null?void 0:E.split(\"?\"))==null?void 0:U[0])!=null?$:\"\"},...C?{intent:C}:{},...i?{experiments:[{id:`experiment:${u(i)}`,name:i,platform:\"SPS\",variant:a}]}:{}}).catch(w)}catch{}}return document.addEventListener(\"click\",k,!0),()=>document.removeEventListener(\"click\",k,!0)}function X(e,t,r,n,o){let{campaign:c,articleType:a,abTestGroup:p,placementType:i,experiment:s,offerCodes:m,legacy:l,contentName:g,pulseEvents:d}=t;d.tpaas&&e.trackImpressionOffer({placement:{foldPosition:o,containerName:\"page\",offerPlacement:i},object:{campaign:c,name:g,objectId:n,objectSdrn:r,offerCodes:m!=null?m:[],offerType:A(a)},...s?{experiments:[{experimentSdrn:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p||\"\"}]}:{},page:{},target:{info:{}}}).catch(w),d.legacy&&e.trackLegacyViewUIElement({object:{id:u(g),elementType:i,name:g,placement:{},custom:{...l==null?void 0:l.offerData,...l==null?void 0:l.custom,offerCodes:m}},...s?{experiments:[{id:`${r}:experiment:${u(s)}`,name:s,platform:\"SPS\",variant:p}]}:{},...l?{origin:l.pulseOrigin}:{}}).catch(w)}async function Q(e,t,r){let{placementType:n,legacy:o,pulseEvents:c}=t,a=window.location.pathname,i=`landingpage-${n===\"campaignpage\"?\"CAMPAIGN\":\"STATIC\"}-${_(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:{}},{leaveTracking:{objectElement:\"body\",pageElement:\"body\",objectResizable:!1}})}var M=e=>e===\"campaignpage\"||e===\"staticpage\";var I={name:\"@schibsted/sps-sdk\",version:\"5.3.0\",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/account-sdk-browser\":\"^6.0.0\",\"@schibsted/pulse-tracker-proxy\":\"^2.0.0-rc.19\",\"@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\"},peerDependencies:{\"@schibsted/pulse-sdk\":\">=8.0.0-rc.19\"},dependencies:{\"@schibsted/consent-url-utils\":\"^2.0.0\"}};var J=!1,Z=!1,ee=\"script[data-sps-pulse-config='true']\",w=e=>console.error(`[SPS-Pulse-Helpers] Failed to send Pulse event. Events are dropped if the host page runs an older @schibsted/pulse-sdk. SPS SDK ${I.version} requires @schibsted/pulse-sdk ${I.peerDependencies[\"@schibsted/pulse-sdk\"]}.`,e),u=e=>e.toLowerCase().replace(/ /g,\"-\").replace(/[^-a-z:0-9]/g,\"\"),_=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 te(){if(console.log(\"[SPS-Pulse-Helpers] boot initiated\"),J)return;J=!0;let e=null;try{let t=document.querySelector(ee);if(!t){console.warn(`[SPS-Pulse-Helpers] Config script tag not found with selector ${ee}`);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=M(r)?_(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:I.version});z(i,e,a,p);let s=k=>{Z||(Z=!0,X(i,e,a,p,k))};if(M(r)){await Q(i,e,a),s(\"Above\");return}let m=window.frameElement,l=window.parent.IntersectionObserver;if(!m||!l){console.warn(\"[SPS-Pulse-Helpers] No iframe or IntersectionObserver available. Pulse View event will not be fired.\");return}let g=\"Unknown\",d=!0,h=new l(k=>{var E;let P=k[0],b=(E=P==null?void 0:P.intersectionRatio)!=null?E:0,x=(P==null?void 0:P.isIntersecting)&&b>=1/3;d&&(d=!1,g=x?\"Above\":\"Below\"),x&&(h.disconnect(),s(g))},{root:null,threshold:[0,1/3]});h.observe(m)}catch(t){console.warn(\"[SPS-Pulse-Helpers] boot failed\",t)}}te();return ae(de);})();\n";
3
3
  readonly "pulse-tracker-proxy": "\"use strict\";var PulseTrackerProxyBundle=(()=>{var y=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var v=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 v(r))!M.call(e,a)&&a!==t&&y(e,a,{get:()=>r[a],enumerable:!(o=R(r,a))||o.enumerable});return e};var U=e=>O(y({},\"__esModule\",{value:!0}),e);var G={};var k=\"pulse-tracker-proxy\",x=`${k}:request`,H=`${k}:ack`,T=`${k}:invoke`,h=`${k}:return`,l=`${k}:return-error`,f=[\"trackAnonymousViewUIElement\",\"trackEngagementAd\",\"trackEngagementAffiliate\",\"trackEngagementAudio\",\"trackEngagementForm\",\"trackEngagementHealthUIElement\",\"trackEngagementOffer\",\"trackEngagementSchoolUIElement\",\"trackEngagementSportsUIElement\",\"trackEngagementTeaser\",\"trackEngagementTvModule\",\"trackEngagementUIElement\",\"trackEngagementVideo\",\"trackEngagementVideoAd\",\"trackEngagementWidget\",\"trackCompletedHealthAction\",\"trackImpressionAd\",\"trackImpressionAdSlot\",\"trackImpressionAffiliate\",\"trackImpressionForm\",\"trackImpressionHealthUIElement\",\"trackImpressionOffer\",\"trackImpressionPlayer\",\"trackImpressionSchoolUIElement\",\"trackImpressionSportsUIElement\",\"trackImpressionTeaser\",\"trackImpressionUIElement\",\"trackImpressionWidget\",\"trackLoadAd\",\"trackRequestAd\",\"trackLeaveArticle\",\"trackLeaveAudioPage\",\"trackLeaveError\",\"trackLeaveFrontpage\",\"trackLeaveLandingpage\",\"trackLeaveListing\",\"trackLeaveLockedArticle\",\"trackLeaveLockedAudioPage\",\"trackLeaveLockedPage\",\"trackLeaveLockedVideoPage\",\"trackLeavePage\",\"trackLeaveSchoolPage\",\"trackLeaveSportsPage\",\"trackLeaveVideoPage\",\"trackLeaveWeather\",\"trackViewArticle\",\"trackViewAudioPage\",\"trackViewError\",\"trackViewFrontpage\",\"trackViewHealthPage\",\"trackViewLandingpage\",\"trackViewListing\",\"trackViewLockedArticle\",\"trackViewLockedAudioPage\",\"trackViewLockedPage\",\"trackViewLockedVideoPage\",\"trackViewPage\",\"trackViewSchoolPage\",\"trackViewSportsPage\",\"trackViewTitle\",\"trackViewVideoPage\",\"trackViewWeather\",\"trackLegacyViewArticle\",\"trackLegacyViewLoginPoster\",\"trackLegacyViewSalesPoster\",\"trackLegacyViewListing\",\"trackLegacyViewFrontpage\",\"trackLegacyViewPage\",\"trackLegacyViewUIElement\",\"trackLegacyClickUIElement\"];function m(e){return e!==null&&typeof e==\"object\"&&\"type\"in e&&typeof e.type==\"string\"&&e.type.startsWith(k)}function g(e,{target:r,timeout:t,debug:o=()=>{}}){return new Promise((a,i)=>{let c=new MessageChannel,n=t?setTimeout(()=>{c.port1.close(),i(new Error(`Message of type ${e.type} timed out`))},t):void 0,p=s=>{if(o(\"[Pulse Tracker Proxy] Received the response on the MessageChannel\",s),!m(s.data)){o(\"[Pulse Tracker Proxy] Response was not a valid Proxy Message\",s.data);return}s.data.type===l&&(o(\"[Pulse Tracker Proxy] Received an return error response\",s.data.error),clearTimeout(n),c.port1.close(),i(new Error(s.data.error))),o(\"[Pulse Tracker Proxy] Received a valid response\",s.data),clearTimeout(n),c.port1.close(),a(s.data)};c.port1.onmessage=p,o(\"[Pulse Tracker Proxy] Sending message to target window\",e),r.postMessage(e,\"*\",[c.port2])})}var V=\"2.0.0-rc.19\";function u(e){let r=\"tracker\"in e&&typeof e.tracker==\"object\"?e.tracker:{};return{...e,tracker:{...r,proxyVersion:V}}}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 d=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,i=u(o),c=w(i,this.component,this.componentVersion),n=[t,c,...a];return this.invoke({method:\"track\",args:n})}async invoke(r){this.debug(\"[Pulse Tracker Proxy] Invoking remote function\",r);let t=await g({type:T,payload:r},{target:this.target});if(!m(t))throw this.debug(\"[Pulse Tracker Proxy] Invalid response from proxy\",t),new Error(\"Invalid response from proxy\");if(t.type===l)throw this.debug(\"[Pulse Tracker Proxy] Error response from proxy\",t.error),new Error(t.error);if(t.type===h)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 C=Object.fromEntries(f.map(e=>[e,function(...r){this.debug(\"[Pulse Tracker Proxy] Calling `track`\",r);let[t,...o]=r,a=u(t),c=[w(a,this.component,this.componentVersion),...o];return this.invoke({method:e,args:c})}]));function W(){return class extends d{constructor(e,r,t,o){super(e,r,t,o),o(\"[Pulse TPaaS Proxy] Initialized\"),Object.assign(this,C)}}}var A=W();function L({component:e,componentVersion:r,window:t=globalThis.window,target:o=t.parent,timeout:a=5e3,retries:i=3,retryTimeout:c=1e3,debug:n=()=>{}}){if(n(\"[Pulse Tracker Proxy] Trying to establish connection...\",{target:o,timeout:a,retries:i}),!o)return Promise.reject(new Error(\"Target window not provided. Possibly window.parent is not available.\"));let p,s=!1,I=new Promise((P,E)=>{p=setTimeout(()=>{s=!0,n(\"[Pulse Tracker Proxy] Ack timeout. Sorry, target seems to not support the proxy.\"),E(new Error(`Pulse tracker proxy not found within ${a} ms`))},a)}),_=(async()=>{for(let P=0;P<i;P++){if(s)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 g({type:x},{target:o,timeout:c})}catch(E){n(`[Pulse Tracker Proxy] Ack Request failed: ${E}`);continue}return clearTimeout(p),n(`[Pulse Tracker Proxy] Ack Request successful (attempt: ${P+1})`),!e||!r?(n(\"[Pulse Tracker Proxy] `component` or `componentVersion` is not set - cannot create pulse tracker.\"),Promise.reject(new Error(\"`component` or `componentVersion` is not set - cannot create pulse tracker.\"))):new A(o,e,r,n)}throw clearTimeout(p),n(\"[Pulse Tracker Proxy] Retries exhausted. Target did not respond. Failing.\"),new Error(\"Failed to establish connection with pulse tracker proxy\")})();return Promise.race([I,_])}var S;window.getPulseTrackerProxy=(S=window.getPulseTrackerProxy)!=null?S:L;return U(G);})();\n";
4
4
  };