@schibsted/sps-sdk 5.2.0-CBT-20903.3 → 5.2.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.
@@ -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) => void;
30
+ export declare const addDismiss: (placementType: PlacementType, iframeId: string, options: AddDismissOptions, domain?: string) => void;
31
31
  export declare const getDismissScript: (placementType: PlacementTypeWithStringContent) => string;
@@ -33,7 +33,7 @@ const isDismissed = (placementType, options) => {
33
33
  return cookieName in (0, placementCookies_1.parseCookies)(document.cookie);
34
34
  };
35
35
  exports.isDismissed = isDismissed;
36
- const addDismiss = (placementType, iframeId, options) => {
36
+ const addDismiss = (placementType, iframeId, options, domain) => {
37
37
  const key = `${placementType}:${iframeId}`;
38
38
  const alreadyRegistered = dismissListenerKeys.has(key);
39
39
  dismissListenerKeys.set(key, options);
@@ -47,7 +47,7 @@ const addDismiss = (placementType, iframeId, options) => {
47
47
  if (event.data.type === `${DISMISS_KEY}:${placementType}`) {
48
48
  console.log("[SPS sdk] - Dismiss issued by user", event);
49
49
  const currentOptions = dismissListenerKeys.get(key);
50
- (0, placementCookies_1.setDismissCookie)(placementType, currentOptions.hideDuration, currentOptions.elementId);
50
+ (0, placementCookies_1.setDismissCookie)(placementType, currentOptions.hideDuration, currentOptions.elementId, domain);
51
51
  document.getElementById(iframeId)?.remove();
52
52
  }
53
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":";;;AACA,gEAAiG;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;AAEK,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;AAPW,QAAA,kBAAkB,sBAO7B;AAcK,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,IAAA,uCAAoB,EAAC,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC3E,OAAO,UAAU,IAAI,IAAA,+BAAY,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC,CAAC;AAVW,QAAA,WAAW,eAUtB;AAkBK,MAAM,UAAU,GAAG,CACxB,aAA4B,EAC5B,QAAgB,EAChB,OAA0B,EACpB,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,IAAA,mCAAgB,EAAC,aAAa,EAAE,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;YACvF,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAzBW,QAAA,UAAU,cAyBrB;AAEK,MAAM,gBAAgB,GAAG,CAAC,aAA6C,EAAU,EAAE,CACxF;;;;;;;;;qBASmB,WAAW,IAAI,aAAa;;;;;;GAM9C,CAAC;AAhBS,QAAA,gBAAgB,oBAgBzB"}
1
+ {"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"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"}
@@ -119,10 +119,10 @@ export type ApiDecision = {
119
119
  * @param endpoint - The SPS API base endpoint URL.
120
120
  * @param params - Optional query params forwarded to the SPS API for the whole request.
121
121
  * @param cookies - Optional cookie string forwarded as the `Cookie` request header.
122
- * @param placementTypes - Optional placement types to include in the result.
122
+ * @param excludedPlacementTypes - Optional placement types to exclude from the result.
123
123
  * @returns An object with a `placements` array, or `null` on error.
124
124
  */
125
- export declare const fetchPlacementsByContext: (publication: string, context: "frontpage" | "article", endpoint: string, params?: SpsParams, cookies?: string, placementTypes?: PlacementType[], timeoutMs?: number) => Promise<{
125
+ export declare const fetchPlacementsByContext: (publication: string, context: "frontpage" | "article", endpoint: string, params?: SpsParams, cookies?: string, excludedPlacementTypes?: PlacementType[], timeoutMs?: number) => Promise<{
126
126
  placements: SPSPosterResponseWithPlacementType[];
127
127
  } | null>;
128
128
  /**
@@ -133,9 +133,9 @@ export declare const fetchPlacementsByContext: (publication: string, context: "f
133
133
  * @param endpoint - The SPS API base endpoint URL.
134
134
  * @param params - Optional query params forwarded to the SPS API for the whole request.
135
135
  * @param cookies - Optional cookie string forwarded as the `Cookie` request header.
136
- * @param placementTypes - Optional placement types to include in the result.
136
+ * @param excludedPlacementTypes - Optional placement types to exclude from the result.
137
137
  * @returns An object with a `placements` array, or `{ placements: [] }` on error.
138
138
  */
139
- export declare const fetchDecisionsByContext: (publication: string, context: "frontpage" | "article", endpoint: string, params?: SpsParams, cookies?: string, placementTypes?: PlacementType[]) => Promise<{
139
+ export declare const fetchDecisionsByContext: (publication: string, context: "frontpage" | "article", endpoint: string, params?: SpsParams, cookies?: string, excludedPlacementTypes?: PlacementType[]) => Promise<{
140
140
  placements: ApiDecision[];
141
141
  }>;
@@ -109,14 +109,14 @@ exports.fetchDecision = fetchDecision;
109
109
  * @param endpoint - The SPS API base endpoint URL.
110
110
  * @param params - Optional query params forwarded to the SPS API for the whole request.
111
111
  * @param cookies - Optional cookie string forwarded as the `Cookie` request header.
112
- * @param placementTypes - Optional placement types to include in the result.
112
+ * @param excludedPlacementTypes - Optional placement types to exclude from the result.
113
113
  * @returns An object with a `placements` array, or `null` on error.
114
114
  */
115
- const fetchPlacementsByContext = async (publication, context, endpoint, params, cookies, placementTypes, timeoutMs) => {
115
+ const fetchPlacementsByContext = async (publication, context, endpoint, params, cookies, excludedPlacementTypes, timeoutMs) => {
116
116
  try {
117
117
  const url = new URL(`${endpoint}/${publication}/placements/${context}`);
118
- placementTypes?.forEach((placementType) => {
119
- url.searchParams.append("placementTypes[]", placementType);
118
+ excludedPlacementTypes?.forEach((placementType) => {
119
+ url.searchParams.append("excludedPlacementTypes[]", placementType);
120
120
  });
121
121
  if (params) {
122
122
  (0, queryBuilder_1.convertParamsToQueryParams)(params).forEach((value, key) => {
@@ -149,14 +149,14 @@ exports.fetchPlacementsByContext = fetchPlacementsByContext;
149
149
  * @param endpoint - The SPS API base endpoint URL.
150
150
  * @param params - Optional query params forwarded to the SPS API for the whole request.
151
151
  * @param cookies - Optional cookie string forwarded as the `Cookie` request header.
152
- * @param placementTypes - Optional placement types to include in the result.
152
+ * @param excludedPlacementTypes - Optional placement types to exclude from the result.
153
153
  * @returns An object with a `placements` array, or `{ placements: [] }` on error.
154
154
  */
155
- const fetchDecisionsByContext = async (publication, context, endpoint, params, cookies, placementTypes) => {
155
+ const fetchDecisionsByContext = async (publication, context, endpoint, params, cookies, excludedPlacementTypes) => {
156
156
  try {
157
157
  const url = new URL(`${endpoint}/${publication}/placements/${context}/decision`);
158
- placementTypes?.forEach((placementType) => {
159
- url.searchParams.append("placementTypes[]", placementType);
158
+ excludedPlacementTypes?.forEach((placementType) => {
159
+ url.searchParams.append("excludedPlacementTypes[]", placementType);
160
160
  });
161
161
  if (params) {
162
162
  (0, queryBuilder_1.convertParamsToQueryParams)(params).forEach((value, key) => {
@@ -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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"}
package/dist/cjs/sps.d.ts CHANGED
@@ -2,7 +2,7 @@ import { type Environment, type SpsParams, type GetPosterByDecisionParams, type
2
2
  import { type ContentType, type TrackingData, type TrackingParamsProps } from "./tracking/create-tracking-params.js";
3
3
  import { SpsPublication } from "./sps/publication.js";
4
4
  import { type SPSPosterResponse } from "./apiClient.js";
5
- import type { PlacementType, PlacementTypeWithOptionalFallback, PlacementTypeWithRequiredFallback, PlacementTypeWithStringContent } from "./sps/placement.js";
5
+ import type { PlacementType, PlacementTypeWithOptionalFallback, PlacementTypeWithRequiredFallback } from "./sps/placement.js";
6
6
  /**
7
7
  * The full poster response enriched with segment names, tracking data, and Pulse event objects.
8
8
  * Returned by {@link SPS.getPoster} and {@link SPS.getPosterByDecision}.
@@ -40,6 +40,11 @@ export type SpsOptions = {
40
40
  * @defaultValue `"production"`
41
41
  */
42
42
  environment?: Environment;
43
+ /**
44
+ * Domain to scope dismiss cookies to. When not set, dismiss cookies are scoped
45
+ * to the current host.
46
+ */
47
+ cookieDomain?: string;
43
48
  };
44
49
  /**
45
50
  * Options for {@link SPS.getPoster} and {@link SPS.getPosterByDecision}.
@@ -89,32 +94,25 @@ export type SpsRequestOptions<T extends PlacementType> = {
89
94
  timeoutMs?: number;
90
95
  };
91
96
  /**
92
- * Options for {@link SPS.renderFrontpagePlacements} and {@link SPS.renderArticlePagePlacements}.
97
+ * Options for {@link SPS.getFrontpagePlacements} and {@link SPS.getArticlePagePlacements}.
93
98
  * @typeParam T - The placement type
94
99
  * @typeParam P - The params shape sent to SPS for this request
95
100
  */
96
101
  export type SpsContextPlacementsOptions<T extends PlacementType, P extends SpsParams = SpsParams> = Omit<SpsRequestOptions<T>, "fallbackPoster" | "showFallbackPosterOnNoContent"> & {
97
102
  /** Query params forwarded to the SPS API for the whole request. */
98
103
  params?: P;
104
+ /** Placement types to exclude from the priority-ordered result. */
105
+ excludedPlacementTypes?: PlacementType[];
99
106
  /**
100
107
  * Per-type fallback posters to return when the SPS context API call fails entirely
101
108
  * (network error or non-OK response). Each entry is enriched the same way as a real poster.
102
109
  */
103
110
  fallbackPosters?: FallbackPostersMap;
104
111
  };
105
- /**
106
- * Options for {@link renderFrontpagePlacements} and {@link renderArticlePagePlacements}.
107
- * The SDK sets `context` in `params` and fires TPaaS Pulse events.
108
- * @typeParam P - The params shape sent to SPS for this request
109
- */
110
- export type RenderPlacementsOptions<P extends SpsParams = SpsParams> = Pick<SpsOptions, "publication" | "environment"> & Omit<SpsContextPlacementsOptions<PlacementType, P>, "params" | "pulseEvents" | "tracking" | "generateLoginUrl"> & {
111
- /** Query params forwarded to the SPS API for the whole request. `context` is set by the SDK. */
112
- params?: Omit<P, "context">;
113
- };
114
112
  /**
115
113
  * Maps placement types to their fallback poster content.
116
- * Used by {@link SPS.renderFrontpagePlacements} and {@link SPS.renderArticlePagePlacements}
117
- * to render pre-configured posters when the SPS API call fails entirely.
114
+ * Used by {@link SPS.getFrontpagePlacements} and {@link SPS.getArticlePagePlacements}
115
+ * to return pre-configured posters when the SPS API call fails entirely.
118
116
  */
119
117
  export type FallbackPostersMap = {
120
118
  [T in PlacementType]?: SPSPosterResponse<T>;
@@ -128,8 +126,8 @@ export type SpsContextDecisionsOptions<P extends SpsParams = SpsParams> = {
128
126
  params?: P;
129
127
  /** Pass `req.headers.cookie` when calling server-side. */
130
128
  cookies?: string;
131
- /** Placement types to include in the priority-ordered result. */
132
- placementTypes?: PlacementType[];
129
+ /** Placement types to exclude from the priority-ordered result. */
130
+ excludedPlacementTypes?: PlacementType[];
133
131
  };
134
132
  /**
135
133
  * Variant of {@link SpsRequestOptions} that requires a `fallbackPoster` and forces
@@ -140,14 +138,6 @@ export type SpsRequestOptionsWithFallback<T extends PlacementType> = SpsRequestO
140
138
  fallbackPoster: SPSPosterResponse<T>;
141
139
  showFallbackPosterOnNoContent: true;
142
140
  };
143
- /**
144
- * A placement type and the host element its poster is rendered in.
145
- * Used by {@link SPS.renderFrontpagePlacements} and {@link SPS.renderArticlePagePlacements}.
146
- */
147
- export type PlacementElement = {
148
- placementType: PlacementTypeWithStringContent;
149
- element: HTMLElement;
150
- };
151
141
  /**
152
142
  * Options for the dismiss functionality, enabling a placement to be hidden when
153
143
  * an element with `data-dismiss-on-click` is clicked inside the placement.
@@ -246,11 +236,13 @@ export declare class SPS {
246
236
  endpoint: string;
247
237
  /** The active environment this instance targets. */
248
238
  environment: Environment;
239
+ /** The domain dismiss cookies set by this instance are scoped to, if configured. */
240
+ cookieDomain?: string;
249
241
  /**
250
242
  * Creates a new SPS SDK instance.
251
243
  * @param options - Configuration options including publication, domain and environment.
252
244
  */
253
- constructor({ publication, domain, environment }: SpsOptions);
245
+ constructor({ publication, domain, environment, cookieDomain, }: SpsOptions);
254
246
  private validateClientEnvironment;
255
247
  private validateServerEnvironment;
256
248
  /**
@@ -303,28 +295,6 @@ export declare class SPS {
303
295
  */
304
296
  getPosterByDecision: GetPosterByDecision;
305
297
  private enrichPosterResponse;
306
- /**
307
- * Fetches priority-ordered placements for the frontpage context and renders each one
308
- * in an iframe inside its element. Must be called from a browser environment.
309
- * Also exported as {@link renderFrontpagePlacements}, which needs no SDK instance.
310
- *
311
- * @param placements - The placement types to fetch, each with the element to render it in.
312
- * @param options - The publication and environment to request from, and request options including `params`.
313
- * @returns The placement types that were rendered.
314
- */
315
- static renderFrontpagePlacements<P extends FrontpageParams = FrontpageParams>(placements: PlacementElement[], options: RenderPlacementsOptions<P>): Promise<PlacementTypeWithStringContent[]>;
316
- /**
317
- * Fetches priority-ordered placements for the article page context and renders each one
318
- * in an iframe inside its element. Must be called from a browser environment.
319
- * Also exported as {@link renderArticlePagePlacements}, which needs no SDK instance.
320
- *
321
- * @param placements - The placement types to fetch, each with the element to render it in.
322
- * @param options - The publication and environment to request from, and request options including `params`.
323
- * @returns The placement types that were rendered.
324
- */
325
- static renderArticlePagePlacements<P extends ArticlePageParams = ArticlePageParams>(placements: PlacementElement[], options: RenderPlacementsOptions<P>): Promise<PlacementTypeWithStringContent[]>;
326
- private static renderContextPlacements;
327
- private renderPlacements;
328
298
  /**
329
299
  * Fetches priority-ordered placements (full content) for the frontpage context.
330
300
  * Must be called from a browser environment.
@@ -332,11 +302,12 @@ export declare class SPS {
332
302
  * Applies the same post-processing as {@link SPS.getPoster}: rewrites login/redirect
333
303
  * placeholder variables and appends tracking search params to links.
334
304
  *
335
- * @param placementTypes - The placement types to request.
336
- * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
305
+ * @param options - Optional request options including tracking context, URL rewrite callbacks, `params`, and `excludedPlacementTypes`.
337
306
  * @returns Array of enriched placements for the frontpage context, fallback posters (if configured) on API failure, or `[]` otherwise.
338
307
  */
339
- private getFrontpagePlacements;
308
+ getFrontpagePlacements<P extends FrontpageParams = FrontpageParams>(options?: SpsContextPlacementsOptions<PlacementType, P>): Promise<(Poster<PlacementType> & {
309
+ type: PlacementType;
310
+ })[]>;
340
311
  /**
341
312
  * Fetches priority-ordered placements (full content) for the article page context.
342
313
  * Must be called from a browser environment.
@@ -344,11 +315,12 @@ export declare class SPS {
344
315
  * Applies the same post-processing as {@link SPS.getPoster}: rewrites login/redirect
345
316
  * placeholder variables and appends tracking search params to links.
346
317
  *
347
- * @param placementTypes - The placement types to request.
348
- * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
318
+ * @param options - Optional request options including tracking context, URL rewrite callbacks, `params`, and `excludedPlacementTypes`.
349
319
  * @returns Array of enriched placements for the article page context, fallback posters (if configured) on API failure, or `[]` otherwise.
350
320
  */
351
- private getArticlePagePlacements;
321
+ getArticlePagePlacements<P extends ArticlePageParams = ArticlePageParams>(options?: SpsContextPlacementsOptions<PlacementType, P>): Promise<(Poster<PlacementType> & {
322
+ type: PlacementType;
323
+ })[]>;
352
324
  private enrichContextPlacements;
353
325
  private enrichFallbackPosters;
354
326
  /**
@@ -357,7 +329,7 @@ export declare class SPS {
357
329
  *
358
330
  * Returns values compatible with {@link SPS.getPosterByDecision}.
359
331
  *
360
- * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`placementTypes`.
332
+ * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`excludedPlacementTypes`.
361
333
  * @returns Array of decisions for the frontpage context, or `[]` on error.
362
334
  */
363
335
  getFrontpageDecisions<P extends FrontpageParams = FrontpageParams>(options?: SpsContextDecisionsOptions<P>): Promise<Decision<PlacementType>[]>;
@@ -367,11 +339,9 @@ export declare class SPS {
367
339
  *
368
340
  * Returns values compatible with {@link SPS.getPosterByDecision}.
369
341
  *
370
- * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`placementTypes`.
342
+ * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`excludedPlacementTypes`.
371
343
  * @returns Array of decisions for the article page context, or `[]` on error.
372
344
  */
373
345
  getArticlePageDecisions<P extends ArticlePageParams = ArticlePageParams>(options?: SpsContextDecisionsOptions<P>): Promise<Decision<PlacementType>[]>;
374
346
  }
375
- export declare const renderFrontpagePlacements: typeof SPS.renderFrontpagePlacements;
376
- export declare const renderArticlePagePlacements: typeof SPS.renderArticlePagePlacements;
377
347
  export {};
package/dist/cjs/sps.js CHANGED
@@ -1,27 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.renderArticlePagePlacements = exports.renderFrontpagePlacements = exports.SPS = void 0;
3
+ 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");
8
7
  const apiClient_1 = require("./apiClient.js");
9
8
  const dismiss_1 = require("./actions/dismiss.js");
10
9
  const consent_1 = require("./actions/consent.js");
11
- const iframe_1 = require("./actions/iframe.js");
12
- /**
13
- * The domain SPS is requested from for each publication, used by {@link renderFrontpagePlacements}
14
- * and {@link renderArticlePagePlacements}. Publications not listed use the default domain.
15
- */
16
- const publicationDomains = {
17
- [publication_1.SpsPublication.AB]: "aftonbladet.se",
18
- [publication_1.SpsPublication.AP]: "aftenposten.no",
19
- [publication_1.SpsPublication.BT]: "bt.no",
20
- [publication_1.SpsPublication.E24]: "e24.no",
21
- [publication_1.SpsPublication.SA]: "aftenbladet.no",
22
- [publication_1.SpsPublication.SVD]: "svd.se",
23
- [publication_1.SpsPublication.VG]: "vg.no",
24
- };
25
10
  /**
26
11
  * Main entry point for the SPS SDK. Provides methods to fetch posters and decisions
27
12
  * from the SPS API for a given publication and environment.
@@ -33,13 +18,16 @@ class SPS {
33
18
  endpoint;
34
19
  /** The active environment this instance targets. */
35
20
  environment;
21
+ /** The domain dismiss cookies set by this instance are scoped to, if configured. */
22
+ cookieDomain;
36
23
  /**
37
24
  * Creates a new SPS SDK instance.
38
25
  * @param options - Configuration options including publication, domain and environment.
39
26
  */
40
- constructor({ publication, domain = "schibsted.tech", environment = "production" }) {
27
+ constructor({ publication, domain = "schibsted.tech", environment = "production", cookieDomain, }) {
41
28
  this.environment = environment;
42
29
  this.publication = publication;
30
+ this.cookieDomain = cookieDomain;
43
31
  this.endpoint = (0, _1.getEndpoint)(environment, domain);
44
32
  }
45
33
  async validateClientEnvironment() {
@@ -199,7 +187,7 @@ class SPS {
199
187
  (0, dismiss_1.addDismiss)(placementType, iframeId, {
200
188
  hideDuration: posterResponse.hideDuration ?? 86400000, // 24 hours in ms,
201
189
  elementId: dismissOptions?.elementId,
202
- });
190
+ }, this.cookieDomain);
203
191
  }
204
192
  (0, consent_1.addConsentForwarding)(iframeId);
205
193
  return {
@@ -212,60 +200,6 @@ class SPS {
212
200
  pulseObject,
213
201
  };
214
202
  }
215
- /**
216
- * Fetches priority-ordered placements for the frontpage context and renders each one
217
- * in an iframe inside its element. Must be called from a browser environment.
218
- * Also exported as {@link renderFrontpagePlacements}, which needs no SDK instance.
219
- *
220
- * @param placements - The placement types to fetch, each with the element to render it in.
221
- * @param options - The publication and environment to request from, and request options including `params`.
222
- * @returns The placement types that were rendered.
223
- */
224
- static async renderFrontpagePlacements(placements, options) {
225
- return SPS.renderContextPlacements("frontpage", placements, options);
226
- }
227
- /**
228
- * Fetches priority-ordered placements for the article page context and renders each one
229
- * in an iframe inside its element. Must be called from a browser environment.
230
- * Also exported as {@link renderArticlePagePlacements}, which needs no SDK instance.
231
- *
232
- * @param placements - The placement types to fetch, each with the element to render it in.
233
- * @param options - The publication and environment to request from, and request options including `params`.
234
- * @returns The placement types that were rendered.
235
- */
236
- static async renderArticlePagePlacements(placements, options) {
237
- return SPS.renderContextPlacements("article", placements, options);
238
- }
239
- static async renderContextPlacements(context, placements, { publication, environment, params, ...options }) {
240
- const sps = new SPS({
241
- publication,
242
- domain: publicationDomains[publication],
243
- environment,
244
- });
245
- const contextOptions = {
246
- ...options,
247
- params: { ...params, context },
248
- pulseEvents: { tpaas: true },
249
- };
250
- return sps.renderPlacements(placements, (placementTypes) => context === "frontpage"
251
- ? sps.getFrontpagePlacements(placementTypes, contextOptions)
252
- : sps.getArticlePagePlacements(placementTypes, contextOptions));
253
- }
254
- async renderPlacements(placements, fetchPosters) {
255
- const placementTypes = placements.map((p) => p.placementType);
256
- if (new Set(placementTypes).size !== placementTypes.length) {
257
- throw new Error("[SPS sdk] Each placement type can only be rendered in one element");
258
- }
259
- const posters = await fetchPosters(placementTypes);
260
- placements.forEach(({ element }) => element.replaceChildren());
261
- return Promise.all(posters.flatMap((poster) => {
262
- const placement = placements.find((p) => p.placementType === poster.type);
263
- if (!placement) {
264
- return [];
265
- }
266
- return (0, iframe_1.renderPosterInIframe)(placement.element, poster.iframeId, poster.content).then(() => placement.placementType);
267
- }));
268
- }
269
203
  /**
270
204
  * Fetches priority-ordered placements (full content) for the frontpage context.
271
205
  * Must be called from a browser environment.
@@ -273,15 +207,14 @@ class SPS {
273
207
  * Applies the same post-processing as {@link SPS.getPoster}: rewrites login/redirect
274
208
  * placeholder variables and appends tracking search params to links.
275
209
  *
276
- * @param placementTypes - The placement types to request.
277
- * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
210
+ * @param options - Optional request options including tracking context, URL rewrite callbacks, `params`, and `excludedPlacementTypes`.
278
211
  * @returns Array of enriched placements for the frontpage context, fallback posters (if configured) on API failure, or `[]` otherwise.
279
212
  */
280
- async getFrontpagePlacements(placementTypes, options) {
213
+ async getFrontpagePlacements(options = {}) {
281
214
  await this.validateClientEnvironment();
282
- const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "frontpage", this.endpoint, options.params, undefined, placementTypes, options.timeoutMs);
215
+ const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "frontpage", this.endpoint, options.params, undefined, options.excludedPlacementTypes, options.timeoutMs);
283
216
  if (!result) {
284
- return options.fallbackPosters ? this.enrichFallbackPosters(placementTypes, options) : [];
217
+ return options.fallbackPosters ? this.enrichFallbackPosters(options) : [];
285
218
  }
286
219
  return this.enrichContextPlacements(result.placements, options);
287
220
  }
@@ -292,15 +225,14 @@ class SPS {
292
225
  * Applies the same post-processing as {@link SPS.getPoster}: rewrites login/redirect
293
226
  * placeholder variables and appends tracking search params to links.
294
227
  *
295
- * @param placementTypes - The placement types to request.
296
- * @param options - Request options including tracking context, URL rewrite callbacks, and `params`.
228
+ * @param options - Optional request options including tracking context, URL rewrite callbacks, `params`, and `excludedPlacementTypes`.
297
229
  * @returns Array of enriched placements for the article page context, fallback posters (if configured) on API failure, or `[]` otherwise.
298
230
  */
299
- async getArticlePagePlacements(placementTypes, options) {
231
+ async getArticlePagePlacements(options = {}) {
300
232
  await this.validateClientEnvironment();
301
- const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "article", this.endpoint, options.params, undefined, placementTypes, options.timeoutMs);
233
+ const result = await (0, apiClient_1.fetchPlacementsByContext)(this.publication, "article", this.endpoint, options.params, undefined, options.excludedPlacementTypes, options.timeoutMs);
302
234
  if (!result) {
303
- return options.fallbackPosters ? this.enrichFallbackPosters(placementTypes, options) : [];
235
+ return options.fallbackPosters ? this.enrichFallbackPosters(options) : [];
304
236
  }
305
237
  return this.enrichContextPlacements(result.placements, options);
306
238
  }
@@ -316,9 +248,9 @@ class SPS {
316
248
  return { ...enriched, type: placement.placementType };
317
249
  }));
318
250
  }
319
- async enrichFallbackPosters(placementTypes, options) {
251
+ async enrichFallbackPosters(options) {
320
252
  return Promise.all(Object.entries(options.fallbackPosters ?? {})
321
- .filter(([placementType]) => placementTypes.includes(placementType))
253
+ .filter(([placementType]) => !options.excludedPlacementTypes?.includes(placementType))
322
254
  .filter(([, poster]) => poster !== undefined)
323
255
  .map(async ([placementType, poster]) => {
324
256
  const enriched = await this.enrichPosterResponse(poster, placementType, options, undefined, {
@@ -338,11 +270,11 @@ class SPS {
338
270
  *
339
271
  * Returns values compatible with {@link SPS.getPosterByDecision}.
340
272
  *
341
- * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`placementTypes`.
273
+ * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`excludedPlacementTypes`.
342
274
  * @returns Array of decisions for the frontpage context, or `[]` on error.
343
275
  */
344
276
  async getFrontpageDecisions(options = {}) {
345
- const { placements } = await (0, apiClient_1.fetchDecisionsByContext)(this.publication, "frontpage", this.endpoint, options.params, options.cookies, options.placementTypes);
277
+ const { placements } = await (0, apiClient_1.fetchDecisionsByContext)(this.publication, "frontpage", this.endpoint, options.params, options.cookies, options.excludedPlacementTypes);
346
278
  return placements.map((d) => ({
347
279
  placementType: d.placementType,
348
280
  contentKey: d.contentKey,
@@ -355,11 +287,11 @@ class SPS {
355
287
  *
356
288
  * Returns values compatible with {@link SPS.getPosterByDecision}.
357
289
  *
358
- * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`placementTypes`.
290
+ * @param options - Optional. Pass `cookies: req.headers.cookie` when calling server-side, and/or `params`/`excludedPlacementTypes`.
359
291
  * @returns Array of decisions for the article page context, or `[]` on error.
360
292
  */
361
293
  async getArticlePageDecisions(options = {}) {
362
- const { placements } = await (0, apiClient_1.fetchDecisionsByContext)(this.publication, "article", this.endpoint, options.params, options.cookies, options.placementTypes);
294
+ const { placements } = await (0, apiClient_1.fetchDecisionsByContext)(this.publication, "article", this.endpoint, options.params, options.cookies, options.excludedPlacementTypes);
363
295
  return placements.map((d) => ({
364
296
  placementType: d.placementType,
365
297
  contentKey: d.contentKey,
@@ -368,6 +300,4 @@ class SPS {
368
300
  }
369
301
  }
370
302
  exports.SPS = SPS;
371
- exports.renderFrontpagePlacements = SPS.renderFrontpagePlacements;
372
- exports.renderArticlePagePlacements = SPS.renderArticlePagePlacements;
373
303
  //# 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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"}
@@ -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) => void;
7
+ export declare const setDismissCookie: (type: string, pauseDuration: number, elementId: string | undefined, domain?: string) => void;
@@ -22,23 +22,12 @@ const decodeDismissCount = (value) => {
22
22
  };
23
23
  };
24
24
  exports.decodeDismissCount = decodeDismissCount;
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) => {
25
+ const setDismissCookie = (type, pauseDuration, elementId, domain) => {
36
26
  if (typeof document === "undefined") {
37
27
  return;
38
28
  }
39
29
  const maxAge = Math.floor(pauseDuration / 1000);
40
- const rootDomain = getRootDomain();
41
- const domainAttribute = rootDomain ? `; Domain=${rootDomain}` : "";
30
+ const domainAttribute = domain ? `; Domain=${domain}` : "";
42
31
  document.cookie = `${(0, exports.getDismissCookieName)(type, elementId)}=1; Max-Age=${maxAge}; Path=/; SameSite=Lax${domainAttribute}`;
43
32
  };
44
33
  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;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"}
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"}
@@ -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) => void;
30
+ export declare const addDismiss: (placementType: PlacementType, iframeId: string, options: AddDismissOptions, domain?: string) => 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) => {
31
+ export const addDismiss = (placementType, iframeId, options, domain) => {
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) => {
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);
45
+ setDismissCookie(placementType, currentOptions.hideDuration, currentOptions.elementId, domain);
46
46
  document.getElementById(iframeId)?.remove();
47
47
  }
48
48
  });