@schibsted/sps-sdk 3.2.1 → 3.3.0-CBT-18711.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.
- package/dist/cjs/actions/dismiss.d.ts +1 -2
- package/dist/cjs/actions/dismiss.js +4 -15
- package/dist/cjs/actions/dismiss.js.map +1 -1
- package/dist/cjs/apiClient.d.ts +4 -0
- package/dist/cjs/apiClient.js.map +1 -1
- package/dist/cjs/sps/placement.d.ts +0 -14
- package/dist/cjs/sps.d.ts +1 -7
- package/dist/cjs/sps.js +3 -3
- package/dist/cjs/sps.js.map +1 -1
- package/dist/cjs/tracking/create-tracking-params.d.ts +1 -1
- package/dist/esm/actions/dismiss.d.ts +1 -2
- package/dist/esm/actions/dismiss.js +4 -15
- package/dist/esm/actions/dismiss.js.map +1 -1
- package/dist/esm/apiClient.d.ts +4 -0
- package/dist/esm/apiClient.js.map +1 -1
- package/dist/esm/sps/placement.d.ts +0 -14
- package/dist/esm/sps.d.ts +1 -7
- package/dist/esm/sps.js +3 -3
- package/dist/esm/sps.js.map +1 -1
- package/dist/esm/tracking/create-tracking-params.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { PlacementType } from "../sps/placement.js";
|
|
2
2
|
import type { Environment } from "../sps/endpoint.js";
|
|
3
|
-
import type { DismissTimeOptions } from "../sps.js";
|
|
4
3
|
export declare const isDismissed: (placementType: PlacementType, iframeId: string) => boolean;
|
|
5
|
-
export declare const addDismiss: (placementType: PlacementType, iframeId: string,
|
|
4
|
+
export declare const addDismiss: (placementType: PlacementType, iframeId: string, hideDuration: number) => void;
|
|
6
5
|
export declare const getDismissScript: (publication: string, environment: Environment, placementType: string) => string;
|
|
@@ -27,7 +27,7 @@ const isDismissed = (placementType, iframeId) => {
|
|
|
27
27
|
};
|
|
28
28
|
exports.isDismissed = isDismissed;
|
|
29
29
|
const dismissListenerKeys = new Set();
|
|
30
|
-
const addDismiss = (placementType, iframeId,
|
|
30
|
+
const addDismiss = (placementType, iframeId, hideDuration) => {
|
|
31
31
|
const key = `${placementType}:${iframeId}`;
|
|
32
32
|
if (dismissListenerKeys.has(key)) {
|
|
33
33
|
return;
|
|
@@ -40,7 +40,7 @@ const addDismiss = (placementType, iframeId, dismissTime) => {
|
|
|
40
40
|
if (event.data.type === `${DISMISS_KEY}:${placementType}`) {
|
|
41
41
|
console.log("[SPS sdk] - Dismiss issued by user", event);
|
|
42
42
|
const data = {
|
|
43
|
-
ttl: calculateTtl(
|
|
43
|
+
ttl: calculateTtl(hideDuration),
|
|
44
44
|
status: "dismissed",
|
|
45
45
|
};
|
|
46
46
|
localStorage.setItem(`sps-dismissed-${placementType}-${iframeId}`, JSON.stringify(data));
|
|
@@ -49,20 +49,9 @@ const addDismiss = (placementType, iframeId, dismissTime) => {
|
|
|
49
49
|
});
|
|
50
50
|
};
|
|
51
51
|
exports.addDismiss = addDismiss;
|
|
52
|
-
const calculateTtl = (
|
|
52
|
+
const calculateTtl = (hideDuration) => {
|
|
53
53
|
const now = Date.now();
|
|
54
|
-
|
|
55
|
-
"1day": 24,
|
|
56
|
-
"2days": 48,
|
|
57
|
-
"3days": 72,
|
|
58
|
-
"4days": 96,
|
|
59
|
-
"5days": 120,
|
|
60
|
-
"6days": 144,
|
|
61
|
-
"1week": 7 * 24,
|
|
62
|
-
"2week": 14 * 24,
|
|
63
|
-
"1month": 30 * 24,
|
|
64
|
-
};
|
|
65
|
-
return now + (timeMap[dismissTime ?? 24] || 24) * 60 * 60 * 1000;
|
|
54
|
+
return now + hideDuration;
|
|
66
55
|
};
|
|
67
56
|
const getDismissScript = (publication, environment, placementType) => `
|
|
68
57
|
document.addEventListener("click", function (event) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/apiClient.d.ts
CHANGED
|
@@ -44,6 +44,10 @@ export type SPSPosterResponse<T extends PlacementType> = {
|
|
|
44
44
|
* A string describing why a fallback or non-standard response was returned, if applicable.
|
|
45
45
|
*/
|
|
46
46
|
failReason?: string;
|
|
47
|
+
/**
|
|
48
|
+
* A number in milliseconds representating the time a given placement should be hidden before appearing for the user again.
|
|
49
|
+
*/
|
|
50
|
+
hideDuration?: number;
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
49
53
|
* Returned by the SPS API when there is no content to display for the given placement.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":";;;AAAA,qDAK4B;AAC5B,qCAA8C;
|
|
1
|
+
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":";;;AAAA,qDAK4B;AAC5B,qCAA8C;AAwE9C;;;;;;;;;;;;GAYG;AACI,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAW,EACX,MAAS,EACT,cAAqC,EACrC,6BAA6B,GAAG,KAAK,EACe,EAAE;IACtD,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,IAAA,oCAAqB,GAAE,CAAC;QACnD,MAAM,WAAW,GAAG,IAAA,yCAA0B,EAAC;YAC7C,GAAG,kBAAkB;YACrB,GAAG,MAAM;SACV,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,IAAA,qBAAe,EAAC,GAAG,EAAE,WAAW,CAAC,EAAE;YACpE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,WAAW,EAAE,SAAS;SACvB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,IAAI,cAAc,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClC,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO;wBACL,cAAc,EAAE,cAAc;wBAC9B,UAAU,EAAE,gEAAgE;qBAC7E,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CACb,mCAAmC,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,CACxF,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAgD,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;QAEhG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,cAAc,IAAI,6BAA6B,EAAE,CAAC;gBACpD,OAAO;oBACL,cAAc,EAAE,cAAc;oBAC9B,UAAU,EAAE,8DAA8D;iBAC3E,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,cAAc,EAAE,cAAsC;SACvD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;gBACL,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aACnE,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AA3DW,QAAA,WAAW,eA2DtB;AAEF;;;;;;;;;;GAUG;AACI,MAAM,aAAa,GAAG,KAAK,EAChC,GAAW,EACX,MAAS,EACT,YAAqB,EACe,EAAE;IACtC,MAAM,WAAW,GAAG,IAAA,yCAA0B,EAAC;QAC7C,GAAG,MAAM;KACV,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,IAAA,qBAAe,EAAC,GAAG,EAAE,WAAW,CAAC,EAAE;QACtE,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,YAAY,IAAI,EAAE;SACjC;QACD,WAAW,EAAE,SAAS;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,qCAAqC,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAC9F,CAAC;IACJ,CAAC;IAED,OAAO,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC;AAvBW,QAAA,aAAa,iBAuBxB"}
|
|
@@ -18,8 +18,6 @@ export type PlacementTypeWithOptionalProps = Exclude<keyof PlacementContentMap,
|
|
|
18
18
|
*/
|
|
19
19
|
export type PlacementContentMap = {
|
|
20
20
|
kyststripe: Kyststripe;
|
|
21
|
-
kystbenefit: Record<string, string>;
|
|
22
|
-
benefit: Benefit;
|
|
23
21
|
coreheader: Record<string, string>;
|
|
24
22
|
bottombar: string;
|
|
25
23
|
foldup: string;
|
|
@@ -48,15 +46,3 @@ export type Kyststripe = {
|
|
|
48
46
|
buttonTxtColor: string;
|
|
49
47
|
buttonId: string;
|
|
50
48
|
};
|
|
51
|
-
export type Benefit = {
|
|
52
|
-
disclaimerText: string;
|
|
53
|
-
disclaimerTextColor: string;
|
|
54
|
-
backgroundColor: string;
|
|
55
|
-
buttonText: string;
|
|
56
|
-
buttonColor: string;
|
|
57
|
-
textButtonColor: string;
|
|
58
|
-
headline: string;
|
|
59
|
-
headlineColor: string;
|
|
60
|
-
kicker: string;
|
|
61
|
-
URL: string;
|
|
62
|
-
};
|
package/dist/cjs/sps.d.ts
CHANGED
|
@@ -83,10 +83,6 @@ export type SpsRequestOptionsWithFallback<T extends PlacementType> = SpsRequestO
|
|
|
83
83
|
fallbackPoster: SPSPosterResponse<T>;
|
|
84
84
|
showFallbackPosterOnNoContent: true;
|
|
85
85
|
};
|
|
86
|
-
/**
|
|
87
|
-
* Duration strings controlling how long a dismissed placement stays hidden.
|
|
88
|
-
*/
|
|
89
|
-
export type DismissTimeOptions = "1day" | "2days" | "3days" | "4days" | "5days" | "6days" | "1week" | "2week" | "1month";
|
|
90
86
|
/**
|
|
91
87
|
* Options for the dismiss functionality, enabling a placement to be hidden when
|
|
92
88
|
* an element with `data-dismiss-on-click` is clicked inside the placement.
|
|
@@ -94,8 +90,6 @@ export type DismissTimeOptions = "1day" | "2days" | "3days" | "4days" | "5days"
|
|
|
94
90
|
interface DismissOptions {
|
|
95
91
|
/** The HTML `id` attribute of the iframe element containing the placement. */
|
|
96
92
|
elementId: string;
|
|
97
|
-
/** How long the placement should remain suppressed after being dismissed. */
|
|
98
|
-
dismissTime: DismissTimeOptions;
|
|
99
93
|
}
|
|
100
94
|
/**
|
|
101
95
|
* Mapping of placement types to their required parameters.
|
|
@@ -194,7 +188,7 @@ export declare class SPS {
|
|
|
194
188
|
*
|
|
195
189
|
* @param placementType - The SPS placement to request (e.g. `"salesposter"`, `"bottombar"`).
|
|
196
190
|
* @param props - Request options including decisioning params and tracking context.
|
|
197
|
-
* @param
|
|
191
|
+
* @param dismissOptions - Optional dismiss configuration for hiding the placement on user interaction.
|
|
198
192
|
* @returns The enriched poster response, or `null` when no content is available.
|
|
199
193
|
*/
|
|
200
194
|
getPoster: GetPoster;
|
package/dist/cjs/sps.js
CHANGED
|
@@ -51,7 +51,7 @@ class SPS {
|
|
|
51
51
|
*
|
|
52
52
|
* @param placementType - The SPS placement to request (e.g. `"salesposter"`, `"bottombar"`).
|
|
53
53
|
* @param props - Request options including decisioning params and tracking context.
|
|
54
|
-
* @param
|
|
54
|
+
* @param dismissOptions - Optional dismiss configuration for hiding the placement on user interaction.
|
|
55
55
|
* @returns The enriched poster response, or `null` when no content is available.
|
|
56
56
|
*/
|
|
57
57
|
getPoster = async (placementType, props = {}, dismissOptions) => {
|
|
@@ -110,7 +110,7 @@ class SPS {
|
|
|
110
110
|
});
|
|
111
111
|
}
|
|
112
112
|
if (dismissOptions) {
|
|
113
|
-
(0, dismiss_1.addDismiss)(placementType, dismissOptions.elementId,
|
|
113
|
+
(0, dismiss_1.addDismiss)(placementType, dismissOptions.elementId, posterResponse.hideDuration || 86400); // Default 1 day.
|
|
114
114
|
}
|
|
115
115
|
return {
|
|
116
116
|
...posterResponse,
|
|
@@ -221,7 +221,7 @@ class SPS {
|
|
|
221
221
|
});
|
|
222
222
|
}
|
|
223
223
|
if (dismissOptions) {
|
|
224
|
-
(0, dismiss_1.addDismiss)(placementType, dismissOptions.elementId,
|
|
224
|
+
(0, dismiss_1.addDismiss)(placementType, dismissOptions.elementId, poster.posterResponse.hideDuration || 86400);
|
|
225
225
|
}
|
|
226
226
|
return {
|
|
227
227
|
...poster.posterResponse,
|
package/dist/cjs/sps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":";;;AAAA,wBAUW;AACX,8EAK2C;AAC3C,uFAG6C;AAE7C,2CAAiF;AAMjF,+CAA4D;
|
|
1
|
+
{"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { type PulseTracker } from "../utils/pulse.js";
|
|
|
2
2
|
import { type UtmTags } from "../utils/utm.js";
|
|
3
3
|
import { type PulseOrigin } from "./tracking-to-pulse-origin.js";
|
|
4
4
|
import { type PulseObject } from "./poster-data-to-pulse-object.js";
|
|
5
|
-
export type ContentType = "article" | "podcast" | "video" | "other";
|
|
5
|
+
export type ContentType = "article" | "podcast" | "video" | "page" | "other";
|
|
6
6
|
export type DeviceType = "mobile" | "tablet" | "desktop";
|
|
7
7
|
/**
|
|
8
8
|
* Input options for {@link createTrackingParams}.
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { PlacementType } from "../sps/placement.js";
|
|
2
2
|
import type { Environment } from "../sps/endpoint.js";
|
|
3
|
-
import type { DismissTimeOptions } from "../sps.js";
|
|
4
3
|
export declare const isDismissed: (placementType: PlacementType, iframeId: string) => boolean;
|
|
5
|
-
export declare const addDismiss: (placementType: PlacementType, iframeId: string,
|
|
4
|
+
export declare const addDismiss: (placementType: PlacementType, iframeId: string, hideDuration: number) => void;
|
|
6
5
|
export declare const getDismissScript: (publication: string, environment: Environment, placementType: string) => string;
|
|
@@ -23,7 +23,7 @@ export const isDismissed = (placementType, iframeId) => {
|
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
25
|
const dismissListenerKeys = new Set();
|
|
26
|
-
export const addDismiss = (placementType, iframeId,
|
|
26
|
+
export const addDismiss = (placementType, iframeId, hideDuration) => {
|
|
27
27
|
const key = `${placementType}:${iframeId}`;
|
|
28
28
|
if (dismissListenerKeys.has(key)) {
|
|
29
29
|
return;
|
|
@@ -36,7 +36,7 @@ export const addDismiss = (placementType, iframeId, dismissTime) => {
|
|
|
36
36
|
if (event.data.type === `${DISMISS_KEY}:${placementType}`) {
|
|
37
37
|
console.log("[SPS sdk] - Dismiss issued by user", event);
|
|
38
38
|
const data = {
|
|
39
|
-
ttl: calculateTtl(
|
|
39
|
+
ttl: calculateTtl(hideDuration),
|
|
40
40
|
status: "dismissed",
|
|
41
41
|
};
|
|
42
42
|
localStorage.setItem(`sps-dismissed-${placementType}-${iframeId}`, JSON.stringify(data));
|
|
@@ -44,20 +44,9 @@ export const addDismiss = (placementType, iframeId, dismissTime) => {
|
|
|
44
44
|
}
|
|
45
45
|
});
|
|
46
46
|
};
|
|
47
|
-
const calculateTtl = (
|
|
47
|
+
const calculateTtl = (hideDuration) => {
|
|
48
48
|
const now = Date.now();
|
|
49
|
-
|
|
50
|
-
"1day": 24,
|
|
51
|
-
"2days": 48,
|
|
52
|
-
"3days": 72,
|
|
53
|
-
"4days": 96,
|
|
54
|
-
"5days": 120,
|
|
55
|
-
"6days": 144,
|
|
56
|
-
"1week": 7 * 24,
|
|
57
|
-
"2week": 14 * 24,
|
|
58
|
-
"1month": 30 * 24,
|
|
59
|
-
};
|
|
60
|
-
return now + (timeMap[dismissTime ?? 24] || 24) * 60 * 60 * 1000;
|
|
49
|
+
return now + hideDuration;
|
|
61
50
|
};
|
|
62
51
|
export const getDismissScript = (publication, environment, placementType) => `
|
|
63
52
|
document.addEventListener("click", function (event) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dismiss.js","sourceRoot":"","sources":["../../../src/actions/dismiss.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/apiClient.d.ts
CHANGED
|
@@ -44,6 +44,10 @@ export type SPSPosterResponse<T extends PlacementType> = {
|
|
|
44
44
|
* A string describing why a fallback or non-standard response was returned, if applicable.
|
|
45
45
|
*/
|
|
46
46
|
failReason?: string;
|
|
47
|
+
/**
|
|
48
|
+
* A number in milliseconds representating the time a given placement should be hidden before appearing for the user again.
|
|
49
|
+
*/
|
|
50
|
+
hideDuration?: number;
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
49
53
|
* Returned by the SPS API when there is no content to display for the given placement.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,GAGtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"apiClient.js","sourceRoot":"","sources":["../../src/apiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,GAGtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAwE9C;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAW,EACX,MAAS,EACT,cAAqC,EACrC,6BAA6B,GAAG,KAAK,EACe,EAAE;IACtD,IAAI,CAAC;QACH,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,0BAA0B,CAAC;YAC7C,GAAG,kBAAkB;YACrB,GAAG,MAAM;SACV,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE;YACpE,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,WAAW,EAAE,SAAS;SACvB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,IAAI,cAAc,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClC,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO;wBACL,cAAc,EAAE,cAAc;wBAC9B,UAAU,EAAE,gEAAgE;qBAC7E,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CACb,mCAAmC,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,UAAU,EAAE,CACxF,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAgD,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC;QAEhG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,cAAc,IAAI,6BAA6B,EAAE,CAAC;gBACpD,OAAO;oBACL,cAAc,EAAE,cAAc;oBAC9B,UAAU,EAAE,8DAA8D;iBAC3E,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,cAAc,EAAE,cAAsC;SACvD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;gBACL,cAAc,EAAE,cAAc;gBAC9B,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aACnE,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,GAAW,EACX,MAAS,EACT,YAAqB,EACe,EAAE;IACtC,MAAM,WAAW,GAAG,0BAA0B,CAAC;QAC7C,GAAG,MAAM;KACV,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE;QACtE,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,YAAY,IAAI,EAAE;SACjC;QACD,WAAW,EAAE,SAAS;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,qCAAqC,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAC9F,CAAC;IACJ,CAAC;IAED,OAAO,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC,CAAC"}
|
|
@@ -18,8 +18,6 @@ export type PlacementTypeWithOptionalProps = Exclude<keyof PlacementContentMap,
|
|
|
18
18
|
*/
|
|
19
19
|
export type PlacementContentMap = {
|
|
20
20
|
kyststripe: Kyststripe;
|
|
21
|
-
kystbenefit: Record<string, string>;
|
|
22
|
-
benefit: Benefit;
|
|
23
21
|
coreheader: Record<string, string>;
|
|
24
22
|
bottombar: string;
|
|
25
23
|
foldup: string;
|
|
@@ -48,15 +46,3 @@ export type Kyststripe = {
|
|
|
48
46
|
buttonTxtColor: string;
|
|
49
47
|
buttonId: string;
|
|
50
48
|
};
|
|
51
|
-
export type Benefit = {
|
|
52
|
-
disclaimerText: string;
|
|
53
|
-
disclaimerTextColor: string;
|
|
54
|
-
backgroundColor: string;
|
|
55
|
-
buttonText: string;
|
|
56
|
-
buttonColor: string;
|
|
57
|
-
textButtonColor: string;
|
|
58
|
-
headline: string;
|
|
59
|
-
headlineColor: string;
|
|
60
|
-
kicker: string;
|
|
61
|
-
URL: string;
|
|
62
|
-
};
|
package/dist/esm/sps.d.ts
CHANGED
|
@@ -83,10 +83,6 @@ export type SpsRequestOptionsWithFallback<T extends PlacementType> = SpsRequestO
|
|
|
83
83
|
fallbackPoster: SPSPosterResponse<T>;
|
|
84
84
|
showFallbackPosterOnNoContent: true;
|
|
85
85
|
};
|
|
86
|
-
/**
|
|
87
|
-
* Duration strings controlling how long a dismissed placement stays hidden.
|
|
88
|
-
*/
|
|
89
|
-
export type DismissTimeOptions = "1day" | "2days" | "3days" | "4days" | "5days" | "6days" | "1week" | "2week" | "1month";
|
|
90
86
|
/**
|
|
91
87
|
* Options for the dismiss functionality, enabling a placement to be hidden when
|
|
92
88
|
* an element with `data-dismiss-on-click` is clicked inside the placement.
|
|
@@ -94,8 +90,6 @@ export type DismissTimeOptions = "1day" | "2days" | "3days" | "4days" | "5days"
|
|
|
94
90
|
interface DismissOptions {
|
|
95
91
|
/** The HTML `id` attribute of the iframe element containing the placement. */
|
|
96
92
|
elementId: string;
|
|
97
|
-
/** How long the placement should remain suppressed after being dismissed. */
|
|
98
|
-
dismissTime: DismissTimeOptions;
|
|
99
93
|
}
|
|
100
94
|
/**
|
|
101
95
|
* Mapping of placement types to their required parameters.
|
|
@@ -194,7 +188,7 @@ export declare class SPS {
|
|
|
194
188
|
*
|
|
195
189
|
* @param placementType - The SPS placement to request (e.g. `"salesposter"`, `"bottombar"`).
|
|
196
190
|
* @param props - Request options including decisioning params and tracking context.
|
|
197
|
-
* @param
|
|
191
|
+
* @param dismissOptions - Optional dismiss configuration for hiding the placement on user interaction.
|
|
198
192
|
* @returns The enriched poster response, or `null` when no content is available.
|
|
199
193
|
*/
|
|
200
194
|
getPoster: GetPoster;
|
package/dist/esm/sps.js
CHANGED
|
@@ -49,7 +49,7 @@ export class SPS {
|
|
|
49
49
|
*
|
|
50
50
|
* @param placementType - The SPS placement to request (e.g. `"salesposter"`, `"bottombar"`).
|
|
51
51
|
* @param props - Request options including decisioning params and tracking context.
|
|
52
|
-
* @param
|
|
52
|
+
* @param dismissOptions - Optional dismiss configuration for hiding the placement on user interaction.
|
|
53
53
|
* @returns The enriched poster response, or `null` when no content is available.
|
|
54
54
|
*/
|
|
55
55
|
getPoster = async (placementType, props = {}, dismissOptions) => {
|
|
@@ -108,7 +108,7 @@ export class SPS {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
if (dismissOptions) {
|
|
111
|
-
addDismiss(placementType, dismissOptions.elementId,
|
|
111
|
+
addDismiss(placementType, dismissOptions.elementId, posterResponse.hideDuration || 86400); // Default 1 day.
|
|
112
112
|
}
|
|
113
113
|
return {
|
|
114
114
|
...posterResponse,
|
|
@@ -219,7 +219,7 @@ export class SPS {
|
|
|
219
219
|
});
|
|
220
220
|
}
|
|
221
221
|
if (dismissOptions) {
|
|
222
|
-
addDismiss(placementType, dismissOptions.elementId,
|
|
222
|
+
addDismiss(placementType, dismissOptions.elementId, poster.posterResponse.hideDuration || 86400);
|
|
223
223
|
}
|
|
224
224
|
return {
|
|
225
225
|
...poster.posterResponse,
|
package/dist/esm/sps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAMX,SAAS,GAEV,MAAM,GAAG,CAAC;AACX,OAAO,EACL,oBAAoB,GAIrB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAA0B,MAAM,aAAa,CAAC;AAMjF,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { type PulseTracker } from "../utils/pulse.js";
|
|
|
2
2
|
import { type UtmTags } from "../utils/utm.js";
|
|
3
3
|
import { type PulseOrigin } from "./tracking-to-pulse-origin.js";
|
|
4
4
|
import { type PulseObject } from "./poster-data-to-pulse-object.js";
|
|
5
|
-
export type ContentType = "article" | "podcast" | "video" | "other";
|
|
5
|
+
export type ContentType = "article" | "podcast" | "video" | "page" | "other";
|
|
6
6
|
export type DeviceType = "mobile" | "tablet" | "desktop";
|
|
7
7
|
/**
|
|
8
8
|
* Input options for {@link createTrackingParams}.
|