@xenia-martech/sdk-js 1.2.0-dev.2 → 1.2.0-dev.3
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/README.md +6 -1
- package/dist/{actions-BcdlokGO.d.cts → actions-Bhji05Pe.d.cts} +15 -2
- package/dist/{actions-BcdlokGO.d.ts → actions-Bhji05Pe.d.ts} +15 -2
- package/dist/{api-CktVQ6Gl.d.ts → api-BqSvWgBZ.d.cts} +4 -2
- package/dist/{api-BEPW0Uan.d.cts → api-ByoECRhR.d.ts} +4 -2
- package/dist/{chunk-DWFVDNU5.js → chunk-INM2SPH4.js} +4 -4
- package/dist/chunk-INM2SPH4.js.map +1 -0
- package/dist/{chunk-7NGJC7CF.js → chunk-TGG5Y4QD.js} +17 -6
- package/dist/chunk-TGG5Y4QD.js.map +1 -0
- package/dist/{chunk-3PYPPIUM.cjs → chunk-TRRMMPBH.cjs} +13 -13
- package/dist/chunk-TRRMMPBH.cjs.map +1 -0
- package/dist/{chunk-IBNIRT7J.cjs → chunk-YZG6JR4E.cjs} +17 -6
- package/dist/chunk-YZG6JR4E.cjs.map +1 -0
- package/dist/client/index.cjs +16 -5
- package/dist/client/index.cjs.map +1 -1
- package/dist/client/index.d.cts +2 -2
- package/dist/client/index.d.ts +2 -2
- package/dist/client/index.js +16 -5
- package/dist/client/index.js.map +1 -1
- package/dist/client/react/index.cjs +19 -8
- package/dist/client/react/index.cjs.map +1 -1
- package/dist/client/react/index.d.cts +2 -2
- package/dist/client/react/index.d.ts +2 -2
- package/dist/client/react/index.js +19 -8
- package/dist/client/react/index.js.map +1 -1
- package/dist/cms/contentful.cjs +2 -1
- package/dist/cms/contentful.cjs.map +1 -1
- package/dist/cms/contentful.d.cts +1 -1
- package/dist/cms/contentful.d.ts +1 -1
- package/dist/cms/contentful.js +2 -1
- package/dist/cms/contentful.js.map +1 -1
- package/dist/{cookie-names-CLqtmGBM.d.ts → cookie-names-Bxd-VNyJ.d.ts} +1 -1
- package/dist/{cookie-names-BACctagz.d.cts → cookie-names-RXVfGYPE.d.cts} +1 -1
- package/dist/index.cjs +21 -21
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +1 -1
- package/dist/next/index.cjs +9 -9
- package/dist/next/index.d.cts +3 -3
- package/dist/next/index.d.ts +3 -3
- package/dist/next/index.js +2 -2
- package/dist/{personalize-content-Clc1oMYY.d.cts → personalize-content-Bf6YZdkZ.d.cts} +12 -1
- package/dist/{personalize-content-Clc1oMYY.d.ts → personalize-content-Bf6YZdkZ.d.ts} +12 -1
- package/dist/server/index.cjs +19 -19
- package/dist/server/index.d.cts +5 -5
- package/dist/server/index.d.ts +5 -5
- package/dist/server/index.js +3 -3
- package/dist/xenia-sdk.iife.js +3 -3
- package/dist/xenia-sdk.iife.js.map +1 -1
- package/dist/{xenia-server-BWhWD0La.d.ts → xenia-server-CcjQenru.d.ts} +2 -2
- package/dist/{xenia-server-o_wDOcei.d.cts → xenia-server-MlI3Khya.d.cts} +2 -2
- package/package.json +1 -1
- package/dist/chunk-3PYPPIUM.cjs.map +0 -1
- package/dist/chunk-7NGJC7CF.js.map +0 -1
- package/dist/chunk-DWFVDNU5.js.map +0 -1
- package/dist/chunk-IBNIRT7J.cjs.map +0 -1
package/dist/client/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { I as InteractionType, X as XeniaConfig, a as XeniaEvent, M as MessageCta, b as MessageTemplateFn, c as MessageComponentRenderer, W as WidgetFormSubmit, d as WidgetSubmitResponse, e as XeniaAction, f as MessagePlacement, C as ConsentState } from '../actions-
|
|
2
|
-
export { A as AnalyticsContext, g as AnalyticsEventName, h as AnalyticsIdentity, i as AnalyticsIngestResponse, j as AppliedSwap, k as ClientEvent, l as CmsAdapter, m as ContentSwap, n as IdentifyRequest, o as IdentifyResponse, p as Identity, J as JsonValue, q as MessageMountContext, r as MessageRenderContext, P as PagePersonalizeOptions, s as PageRef, t as PersonalizationSwap, R as ResolveBatchItem, u as ResolveBatchResult, v as ResolveOptions, w as ResolveResult, T as TrackOptions, x as WebhookResponse, y as WidgetPrize, z as WidgetSegment, B as WidgetType, D as XeniaClient, E as XeniaClientOptions, F as XeniaMarker, G as createXeniaClient, H as extractContentSwaps, K as parseActions, L as pendingTargets, N as personalizeContent, O as personalizePage, Q as spliceSlots } from '../actions-
|
|
1
|
+
import { I as InteractionType, X as XeniaConfig, a as XeniaEvent, M as MessageCta, b as MessageTemplateFn, c as MessageComponentRenderer, W as WidgetFormSubmit, d as WidgetSubmitResponse, e as XeniaAction, f as MessagePlacement, C as ConsentState } from '../actions-Bhji05Pe.cjs';
|
|
2
|
+
export { A as AnalyticsContext, g as AnalyticsEventName, h as AnalyticsIdentity, i as AnalyticsIngestResponse, j as AppliedSwap, k as ClientEvent, l as CmsAdapter, m as ContentSwap, n as IdentifyRequest, o as IdentifyResponse, p as Identity, J as JsonValue, q as MessageMountContext, r as MessageRenderContext, P as PagePersonalizeOptions, s as PageRef, t as PersonalizationSwap, R as ResolveBatchItem, u as ResolveBatchResult, v as ResolveOptions, w as ResolveResult, T as TrackOptions, x as WebhookResponse, y as WidgetPrize, z as WidgetSegment, B as WidgetType, D as XeniaClient, E as XeniaClientOptions, F as XeniaMarker, G as createXeniaClient, H as extractContentSwaps, K as parseActions, L as pendingTargets, N as personalizeContent, O as personalizePage, Q as spliceSlots } from '../actions-Bhji05Pe.cjs';
|
|
3
3
|
|
|
4
4
|
interface Parsed {
|
|
5
5
|
eventId: string;
|
package/dist/client/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { I as InteractionType, X as XeniaConfig, a as XeniaEvent, M as MessageCta, b as MessageTemplateFn, c as MessageComponentRenderer, W as WidgetFormSubmit, d as WidgetSubmitResponse, e as XeniaAction, f as MessagePlacement, C as ConsentState } from '../actions-
|
|
2
|
-
export { A as AnalyticsContext, g as AnalyticsEventName, h as AnalyticsIdentity, i as AnalyticsIngestResponse, j as AppliedSwap, k as ClientEvent, l as CmsAdapter, m as ContentSwap, n as IdentifyRequest, o as IdentifyResponse, p as Identity, J as JsonValue, q as MessageMountContext, r as MessageRenderContext, P as PagePersonalizeOptions, s as PageRef, t as PersonalizationSwap, R as ResolveBatchItem, u as ResolveBatchResult, v as ResolveOptions, w as ResolveResult, T as TrackOptions, x as WebhookResponse, y as WidgetPrize, z as WidgetSegment, B as WidgetType, D as XeniaClient, E as XeniaClientOptions, F as XeniaMarker, G as createXeniaClient, H as extractContentSwaps, K as parseActions, L as pendingTargets, N as personalizeContent, O as personalizePage, Q as spliceSlots } from '../actions-
|
|
1
|
+
import { I as InteractionType, X as XeniaConfig, a as XeniaEvent, M as MessageCta, b as MessageTemplateFn, c as MessageComponentRenderer, W as WidgetFormSubmit, d as WidgetSubmitResponse, e as XeniaAction, f as MessagePlacement, C as ConsentState } from '../actions-Bhji05Pe.js';
|
|
2
|
+
export { A as AnalyticsContext, g as AnalyticsEventName, h as AnalyticsIdentity, i as AnalyticsIngestResponse, j as AppliedSwap, k as ClientEvent, l as CmsAdapter, m as ContentSwap, n as IdentifyRequest, o as IdentifyResponse, p as Identity, J as JsonValue, q as MessageMountContext, r as MessageRenderContext, P as PagePersonalizeOptions, s as PageRef, t as PersonalizationSwap, R as ResolveBatchItem, u as ResolveBatchResult, v as ResolveOptions, w as ResolveResult, T as TrackOptions, x as WebhookResponse, y as WidgetPrize, z as WidgetSegment, B as WidgetType, D as XeniaClient, E as XeniaClientOptions, F as XeniaMarker, G as createXeniaClient, H as extractContentSwaps, K as parseActions, L as pendingTargets, N as personalizeContent, O as personalizePage, Q as spliceSlots } from '../actions-Bhji05Pe.js';
|
|
3
3
|
|
|
4
4
|
interface Parsed {
|
|
5
5
|
eventId: string;
|
package/dist/client/index.js
CHANGED
|
@@ -546,7 +546,7 @@ var XeniaApi = class {
|
|
|
546
546
|
* ({@link personalizeContent}) calls this once per round with the runtime
|
|
547
547
|
* targets it found; callers rarely need it directly.
|
|
548
548
|
*/
|
|
549
|
-
async resolveEntries(entryIds, opts
|
|
549
|
+
async resolveEntries(entryIds, opts) {
|
|
550
550
|
const { data } = await this.http.request({
|
|
551
551
|
method: "POST",
|
|
552
552
|
path: "/api/personalization/resolve-entries",
|
|
@@ -554,7 +554,8 @@ var XeniaApi = class {
|
|
|
554
554
|
body: compact({
|
|
555
555
|
entryIds,
|
|
556
556
|
data: opts.data,
|
|
557
|
-
locale: opts.locale
|
|
557
|
+
locale: opts.locale,
|
|
558
|
+
contentKey: opts.contentKey
|
|
558
559
|
})
|
|
559
560
|
});
|
|
560
561
|
return data;
|
|
@@ -678,7 +679,7 @@ var DEFAULT_TIMEOUT_MS = 300;
|
|
|
678
679
|
var DEFAULT_MAX_ROUNDS = 3;
|
|
679
680
|
var copyOf = (v) => v && typeof v === "object" && typeof structuredClone === "function" ? structuredClone(v) : v;
|
|
680
681
|
async function personalizeContent(payload, options) {
|
|
681
|
-
const
|
|
682
|
+
const cms = scopedAdapter(options.cms, options.contentKey);
|
|
682
683
|
const maxRounds = options.maxRounds ?? DEFAULT_MAX_ROUNDS;
|
|
683
684
|
const deadline = Date.now() + (options.timeoutMs ?? DEFAULT_TIMEOUT_MS);
|
|
684
685
|
const applied = [];
|
|
@@ -877,7 +878,8 @@ function withDeadline(promise, deadline) {
|
|
|
877
878
|
})
|
|
878
879
|
]).finally(() => clearTimeout(timer));
|
|
879
880
|
}
|
|
880
|
-
function pendingTargets(payload,
|
|
881
|
+
function pendingTargets(payload, adapter, contentKey) {
|
|
882
|
+
const cms = scopedAdapter(adapter, contentKey);
|
|
881
883
|
try {
|
|
882
884
|
let content = typeof structuredClone === "function" ? structuredClone(payload) : payload;
|
|
883
885
|
content = cms.prepare ? cms.prepare(content) : content;
|
|
@@ -888,6 +890,15 @@ function pendingTargets(payload, cms) {
|
|
|
888
890
|
return [];
|
|
889
891
|
}
|
|
890
892
|
}
|
|
893
|
+
function scopedAdapter(cms, contentKey) {
|
|
894
|
+
return {
|
|
895
|
+
...cms,
|
|
896
|
+
marker(entry) {
|
|
897
|
+
const m = cms.marker(entry);
|
|
898
|
+
return m && contentKey && m.keys?.includes(contentKey) ? m : null;
|
|
899
|
+
}
|
|
900
|
+
};
|
|
901
|
+
}
|
|
891
902
|
async function personalizePage(ref, options) {
|
|
892
903
|
let page;
|
|
893
904
|
try {
|
|
@@ -2399,7 +2410,7 @@ var XeniaClient = class {
|
|
|
2399
2410
|
return personalizePage(ref, { ...opts, resolve: this.entryResolver(opts) });
|
|
2400
2411
|
}
|
|
2401
2412
|
entryResolver(opts) {
|
|
2402
|
-
const resolveOpts = this.withVisitor({ data: opts.data, locale: opts.locale });
|
|
2413
|
+
const resolveOpts = { ...this.withVisitor({ data: opts.data, locale: opts.locale }), contentKey: opts.contentKey };
|
|
2403
2414
|
return async (ids) => (await this.api.resolveEntries(ids, resolveOpts)).decisions ?? [];
|
|
2404
2415
|
}
|
|
2405
2416
|
/** The SDK-owned visitor anchor: the `identify()`/`config.visitorId` id, else the device id. */
|