@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.
- package/dist/cjs/actions/dismiss.d.ts +1 -1
- package/dist/cjs/actions/dismiss.js +2 -2
- package/dist/cjs/actions/dismiss.js.map +1 -1
- package/dist/cjs/apiClient.d.ts +4 -4
- package/dist/cjs/apiClient.js +8 -8
- package/dist/cjs/apiClient.js.map +1 -1
- package/dist/cjs/sps.d.ts +26 -56
- package/dist/cjs/sps.js +20 -90
- package/dist/cjs/sps.js.map +1 -1
- package/dist/cjs/utils/placementCookies.d.ts +1 -1
- package/dist/cjs/utils/placementCookies.js +2 -13
- package/dist/cjs/utils/placementCookies.js.map +1 -1
- package/dist/esm/actions/dismiss.d.ts +1 -1
- package/dist/esm/actions/dismiss.js +2 -2
- package/dist/esm/actions/dismiss.js.map +1 -1
- package/dist/esm/apiClient.d.ts +4 -4
- package/dist/esm/apiClient.js +8 -8
- package/dist/esm/apiClient.js.map +1 -1
- package/dist/esm/sps.d.ts +26 -56
- package/dist/esm/sps.js +19 -88
- package/dist/esm/sps.js.map +1 -1
- package/dist/esm/utils/placementCookies.d.ts +1 -1
- package/dist/esm/utils/placementCookies.js +2 -13
- package/dist/esm/utils/placementCookies.js.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/actions/iframe.d.ts +0 -6
- package/dist/cjs/actions/iframe.js +0 -48
- package/dist/cjs/actions/iframe.js.map +0 -1
- package/dist/esm/actions/iframe.d.ts +0 -6
- package/dist/esm/actions/iframe.js +0 -44
- package/dist/esm/actions/iframe.js.map +0 -1
|
@@ -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,
|
|
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
|
@@ -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
|
|
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,
|
|
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
|
|
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,
|
|
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
|
}>;
|
package/dist/cjs/apiClient.js
CHANGED
|
@@ -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
|
|
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,
|
|
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
|
-
|
|
119
|
-
url.searchParams.append("
|
|
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
|
|
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,
|
|
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
|
-
|
|
159
|
-
url.searchParams.append("
|
|
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":";;;AAAA,qDAK4B;AAC5B,qCAA8C;AA4E9C;;;;;;;;;;;;GAYG;AACI,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAW,EACX,MAAS,EACT,cAAqC,EACrC,6BAA6B,GAAG,KAAK,EACrC,SAAkB,EACkC,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,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEpF,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,IAAA,qBAAe,EAAC,GAAG,EAAE,WAAW,CAAC,EAAE;YACpE,WAAW,EAAE,SAAS;YACtB,MAAM;SACP,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,IAAK,KAAsB,EAAE,IAAI,KAAK,cAAc,EAAE,CAAC;YACrD,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;YAC5C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,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;AAlEW,QAAA,WAAW,eAkEtB;AAEF;;;;;;;;;;;GAWG;AACI,MAAM,aAAa,GAAG,KAAK,EAChC,GAAW,EACX,MAAS,EACT,YAAqB,EACrB,MAAe,EACqB,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,YAAY,EAAE,YAAY,IAAI,EAAE;YAChC,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;SAClC;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;AAxBW,QAAA,aAAa,iBAwBxB;AAoBF;;;;;;;;;;GAUG;AACI,MAAM,wBAAwB,GAAG,KAAK,EAC3C,WAAmB,EACnB,OAAgC,EAChC,QAAgB,EAChB,MAAkB,EAClB,OAAgB,EAChB,sBAAwC,EACxC,SAAkB,EACoD,EAAE;IACxE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,QAAQ,IAAI,WAAW,eAAe,OAAO,EAAE,CAAC,CAAC;QACxE,sBAAsB,EAAE,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YAChD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,EAAE,CAAC;YACX,IAAA,yCAA0B,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACxD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YAC3C,WAAW,EAAE,SAAS;YACtB,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;YAChD,MAAM;SACP,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CACX,wCAAwC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACjF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AApCW,QAAA,wBAAwB,4BAoCnC;AAEF;;;;;;;;;;GAUG;AACI,MAAM,uBAAuB,GAAG,KAAK,EAC1C,WAAmB,EACnB,OAAgC,EAChC,QAAgB,EAChB,MAAkB,EAClB,OAAgB,EAChB,sBAAwC,EACA,EAAE;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,QAAQ,IAAI,WAAW,eAAe,OAAO,WAAW,CAAC,CAAC;QACjF,sBAAsB,EAAE,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YAChD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,EAAE,CAAC;YACX,IAAA,yCAA0B,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACxD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YAC3C,WAAW,EAAE,SAAS;YACtB,OAAO,EAAE,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;SACjD,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CACX,uCAAuC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAChF,CAAC;YACF,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QAC5B,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC,CAAC;AAjCW,QAAA,uBAAuB,2BAiClC"}
|
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
|
|
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.
|
|
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.
|
|
117
|
-
* to
|
|
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
|
|
132
|
-
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
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`/`
|
|
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`/`
|
|
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.
|
|
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
|
|
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(
|
|
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,
|
|
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(
|
|
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
|
|
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(
|
|
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,
|
|
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(
|
|
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(
|
|
251
|
+
async enrichFallbackPosters(options) {
|
|
320
252
|
return Promise.all(Object.entries(options.fallbackPosters ?? {})
|
|
321
|
-
.filter(([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`/`
|
|
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.
|
|
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`/`
|
|
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.
|
|
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
|
package/dist/cjs/sps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sps.js","sourceRoot":"","sources":["../../src/sps.ts"],"names":[],"mappings":";;;AAAA,wBASW;AACX,8EAK2C;AAC3C,uFAG6C;AAC7C,mDAAmD;AACnD,2CAQqB;AAOrB,+CAAgF;AAChF,+CAAyD;AACzD,6CAAwD;AAkTxD;;;GAGG;AACH,MAAM,kBAAkB,GAA4C;IAClE,CAAC,4BAAc,CAAC,EAAE,CAAC,EAAE,gBAAgB;IACrC,CAAC,4BAAc,CAAC,EAAE,CAAC,EAAE,gBAAgB;IACrC,CAAC,4BAAc,CAAC,EAAE,CAAC,EAAE,OAAO;IAC5B,CAAC,4BAAc,CAAC,GAAG,CAAC,EAAE,QAAQ;IAC9B,CAAC,4BAAc,CAAC,EAAE,CAAC,EAAE,gBAAgB;IACrC,CAAC,4BAAc,CAAC,GAAG,CAAC,EAAE,QAAQ;IAC9B,CAAC,4BAAc,CAAC,EAAE,CAAC,EAAE,OAAO;CAC7B,CAAC;AAEF;;;GAGG;AACH,MAAa,GAAG;IACd,2DAA2D;IAC3D,WAAW,CAAS;IACpB,8CAA8C;IAC9C,QAAQ,CAAS;IACjB,oDAAoD;IACpD,WAAW,CAAc;IAEzB;;;OAGG;IACH,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,gBAAgB,EAAE,WAAW,GAAG,YAAY,EAAc;QAC5F,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,IAAA,cAAW,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,yBAAyB;QACrC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,yBAAyB;QACrC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,SAAS,GAAc,KAAK,EACjC,aAAgB,EAChB,QAA0D,EAAE,EAC5D,cAA+B,EACX,EAAE;QACtB,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEvC,IAAI,IAAA,qBAAW,EAAC,aAAa,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACzE,OAAO,IAAW,CAAC;QACrB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAW,EAC9B,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,IAAI,aAAa,EAAE,EACvD,KAAK,CAAC,MAAM,IAAI,EAAE,EAClB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,6BAA6B,IAAI,KAAK,EAC5C,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAW,CAAC;QACrB,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,cAAsC,CAAC;QAErE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC9C,cAAc,EACd,aAAa,EACb,KAAK,EACL,cAAc,EACd;YACE,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,WAAqB;YAChD,UAAU,EAAE,KAAK,CAAC,MAAM,EAAE,UAAoB;YAC9C,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,OAA4B;YACnD,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,IAAgB;YACpC,UAAU,EAAE,MAAM,EAAE,UAAU;YAC9B,YAAY,EAAE,cAAc,CAAC,YAAY,IAAI,EAAE;SAChD,CACF,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACI,WAAW,GAAgB,KAAK,EACrC,aAAgB,EAChB,QAAmC,EAAE,EACrC,YAAqB,EACrB,MAAe,EACO,EAAE;QACxB,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,gBAAgB,GAA8B,MAAM,IAAA,yBAAa,EACrE,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,IAAI,aAAa,WAAW,EAChE,KAAK,CAAC,MAAM,IAAI,EAAE,EAClB,YAAY,EACZ,MAAM,CACP,CAAC;YAEF,OAAO;gBACL,GAAG,gBAAgB;gBACnB,aAAa;gBACb,WAAW,EAAG,KAAK,CAAC,MAAM,EAAE,WAAsB,IAAK,KAAK,CAAC,MAAM,EAAE,UAAqB;aAC3F,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,UAAU,EAAE,iBAAiB;gBAC7B,aAAa;gBACb,WAAW,EAAG,KAAK,CAAC,MAAM,EAAE,WAAsB,IAAK,KAAK,CAAC,MAAM,EAAE,UAAqB;aAC3F,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF;;;;;;;;;;;;;;OAcG;IACI,mBAAmB,GAAwB,KAAK,EACrD,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAe,EACrE,QAA8B,EAAE,EAChC,cAA+B,EAC/B,EAAE;QACF,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEjC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAW,CAAC;QACrB,CAAC;QAED,IAAI,IAAA,qBAAW,EAAC,aAAa,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACzE,OAAO,IAAW,CAAC;QACrB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAW,EAC9B,GAAG,IAAI,CAAC,QAAQ,WAAW,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAC3D,EAAE,EACF,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,6BAA6B,IAAI,KAAK,EAC5C,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAW,CAAC;QACrB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC9C,MAAM,CAAC,cAAc,EACrB,aAAa,EACb,KAAK,EACL,cAAc,EACd;YACE,WAAW;YACX,UAAU,EAAE,MAAM,EAAE,UAAU;YAC9B,YAAY;SACb,CACF,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAChC,cAAoC,EACpC,aAAgB,EAChB,OAA6B,EAC7B,cAA0C,EAC1C,UAOC;QAED,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,GACvE,MAAM,IAAA,6CAAoB,EACxB;YACE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE;YAC5C,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,WAAW,IAAI,SAAS;YACvD,GAAG,OAAO,CAAC,QAAQ;YACnB,MAAM;YACN,QAAQ;SACT,EACD;YACE,aAAa;YACb,QAAQ,EAAE,cAAc,CAAC,QAAQ;YACjC,WAAW,EAAE,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,WAAW;YAC5D,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,WAAW,EAAE,cAAc,CAAC,WAAW,IAAI,SAAS;SACrD,CACF,CAAC;QAEJ,IAAI,OAA+B,CAAC;QACpC,IAAI,OAAO,cAAc,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/C,OAAO,GAAG,IAAA,2DAA2B,EACnC,cAAmE,EACnE;gBACE,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,gBAAgB,EAAE,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE;gBAClE,WAAW,EACT,CAAC,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC,cAAc,CAAC,CAAC;oBACrD,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBACxD,YAAY;gBACZ,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;gBACtD,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,aAAa,EAAE,aAA+C;gBAC9D,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,SAAS,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE;gBACrC,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,UAAU,EAAE,cAAc,CAAC,UAAU;aACtC,CACwB,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAA,0DAA0B,EAAC,cAAc,CAAC,OAAsB,EAAE;gBAC1E,YAAY;gBACZ,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,IAAI,IAAI;aACvD,CAA2B,CAAC;QAC/B,CAAC;QAED,MAAM,QAAQ,GAAG,cAAc,EAAE,SAAS,IAAI,IAAA,4BAAkB,EAAC,aAAa,CAAC,CAAC;QAChF,qEAAqE;QACrE,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;YAChC,IAAA,oBAAU,EAAC,aAAa,EAAE,QAAQ,EAAE;gBAClC,YAAY,EAAE,cAAc,CAAC,YAAY,IAAI,QAAQ,EAAE,kBAAkB;gBACzE,SAAS,EAAE,cAAc,EAAE,SAAS;aACrC,CAAC,CAAC;QACL,CAAC;QAED,IAAA,8BAAoB,EAAC,QAAQ,CAAC,CAAC;QAE/B,OAAO;YACL,GAAG,cAAc;YACjB,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,EAAE;YAC3C,QAAQ;YACR,OAAO;YACP,YAAY;YACZ,WAAW;YACX,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACI,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAC3C,UAA8B,EAC9B,OAAmC;QAEnC,OAAO,GAAG,CAAC,uBAAuB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;OAQG;IACI,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAC7C,UAA8B,EAC9B,OAAmC;QAEnC,OAAO,GAAG,CAAC,uBAAuB,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAC1C,OAA0C,EAC1C,UAA8B,EAC9B,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,EAA2B;QAEzE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC;YAClB,WAAW;YACX,MAAM,EAAE,kBAAkB,CAAC,WAAW,CAAC;YACvC,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,cAAc,GAAG;YACrB,GAAG,OAAO;YACV,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE;YAC9B,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SAC7B,CAAC;QACF,OAAO,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,EAAE,CACzD,OAAO,KAAK,WAAW;YACrB,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC,cAAc,EAAE,cAAc,CAAC;YAC5D,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,cAAc,EAAE,cAAc,CAAC,CACjE,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,UAA8B,EAC9B,YAEiE;QAEjE,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAC9D,IAAI,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,CAAC;QACnD,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;QAE/D,OAAO,OAAO,CAAC,GAAG,CAChB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,OAAO,IAAA,6BAAoB,EACzB,SAAS,CAAC,OAAO,EACjB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,OAAiB,CACzB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACxC,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,sBAAsB,CAClC,cAA+B,EAC/B,OAAsD;QAEtD,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAwB,EAC3C,IAAI,CAAC,WAAW,EAChB,WAAW,EACX,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,MAAM,EACd,SAAS,EACT,cAAc,EACd,OAAO,CAAC,SAAS,CAClB,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,wBAAwB,CACpC,cAA+B,EAC/B,OAAsD;QAEtD,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAA,oCAAwB,EAC3C,IAAI,CAAC,WAAW,EAChB,SAAS,EACT,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,MAAM,EACd,SAAS,EACT,cAAc,EACd,OAAO,CAAC,SAAS,CAClB,CAAC;QACF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,UAAgD,EAChD,OAAmD;QAEnD,OAAO,OAAO,CAAC,GAAG,CAChB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC9C,SAAS,EACT,SAAS,CAAC,aAAa,EACvB,OAAO,EACP,SAAS,EACT;gBACE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAqB;gBAClD,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,UAAoB;gBAChD,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAA4B;gBACrD,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,IAAgB;gBACtC,YAAY,EAAE,SAAS,CAAC,YAAY;aACrC,CACF,CAAC;YAEF,OAAO,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,aAAa,EAAE,CAAC;QACxD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,cAA+B,EAC/B,OAAmD;QAEnD,OAAO,OAAO,CAAC,GAAG,CAEd,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAI7C;aACE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;aACnE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC;aAC5C,GAAG,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE;YACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC9C,MAAM,EACN,aAAa,EACb,OAAO,EACP,SAAS,EACT;gBACE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAqB;gBAClD,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,UAAoB;gBAChD,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAA4B;gBACrD,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,IAAgB;gBACtC,UAAU,EAAE,0CAA0C;gBACtD,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;aACxC,CACF,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAC9C,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,qBAAqB,CAChC,UAAyC,EAAE;QAE3C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,mCAAuB,EAClD,IAAI,CAAC,WAAW,EAChB,WAAW,EACX,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC;YACzC,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,YAAY,EAAE,CAAC,CAAC,YAAY;SAC7B,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,uBAAuB,CAClC,UAAyC,EAAE;QAE3C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,mCAAuB,EAClD,IAAI,CAAC,WAAW,EAChB,SAAS,EACT,IAAI,CAAC,QAAQ,EACb,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,cAAc,CACvB,CAAC;QACF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAc,EAAE,EAAE,CAAC,CAAC;YACzC,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,YAAY,EAAE,CAAC,CAAC,YAAY;SAC7B,CAAC,CAAC,CAAC;IACN,CAAC;CACF;AAlhBD,kBAkhBC;AAEY,QAAA,yBAAyB,GAAG,GAAG,CAAC,yBAAyB,CAAC;AAC1D,QAAA,2BAA2B,GAAG,GAAG,CAAC,2BAA2B,CAAC"}
|
|
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
|
|
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;
|
|
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
|
});
|