@sitecore-cloudsdk/events 0.3.1-rc.1 → 0.4.0-rc.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/README.md +31 -59
- package/dist/cjs/package.json +3 -3
- package/dist/cjs/src/browser.d.ts +4 -3
- package/dist/cjs/src/browser.js +8 -5
- package/dist/cjs/src/lib/consts.d.ts +7 -6
- package/dist/cjs/src/lib/consts.js +9 -8
- package/dist/cjs/src/lib/eventStorage/addToEventQueue.js +23 -10
- package/dist/cjs/src/lib/eventStorage/clearEventQueue.js +1 -1
- package/dist/cjs/src/lib/eventStorage/eventStorage.js +3 -3
- package/dist/cjs/src/lib/eventStorage/processEventQueue.js +1 -1
- package/dist/cjs/src/lib/events/base-event.js +3 -3
- package/dist/cjs/src/lib/events/custom-event/custom-event.d.ts +1 -1
- package/dist/cjs/src/lib/events/custom-event/event.d.ts +1 -1
- package/dist/cjs/src/lib/events/custom-event/event.js +24 -12
- package/dist/cjs/src/lib/events/custom-event/eventServer.d.ts +2 -2
- package/dist/cjs/src/lib/events/custom-event/eventServer.js +16 -7
- package/dist/cjs/src/lib/events/custom-event/form.d.ts +3 -3
- package/dist/cjs/src/lib/events/custom-event/form.js +43 -21
- package/dist/cjs/src/lib/events/identity/identity-event.d.ts +1 -1
- package/dist/cjs/src/lib/events/identity/identity.d.ts +1 -1
- package/dist/cjs/src/lib/events/identity/identity.js +24 -12
- package/dist/cjs/src/lib/events/identity/identityServer.d.ts +2 -2
- package/dist/cjs/src/lib/events/identity/identityServer.js +17 -6
- package/dist/cjs/src/lib/events/page-view/page-view-event.d.ts +1 -1
- package/dist/cjs/src/lib/events/page-view/page-view-server.d.ts +2 -2
- package/dist/cjs/src/lib/events/page-view/page-view-server.js +17 -6
- package/dist/cjs/src/lib/events/page-view/page-view.d.ts +1 -1
- package/dist/cjs/src/lib/events/page-view/page-view.js +26 -13
- package/dist/cjs/src/lib/events/send-event/sendEvent.d.ts +1 -1
- package/dist/cjs/src/lib/events/send-event/sendEvent.js +7 -7
- package/dist/cjs/src/lib/getBrowserId/getBrowserId.d.ts +8 -0
- package/dist/cjs/src/lib/getBrowserId/getBrowserId.js +16 -0
- package/dist/cjs/src/lib/getGuestId/getGuestId.d.ts +6 -3
- package/dist/cjs/src/lib/getGuestId/getGuestId.js +19 -8
- package/dist/cjs/src/lib/init/browser/initializer.d.ts +13 -0
- package/dist/cjs/src/lib/init/browser/initializer.js +48 -0
- package/dist/cjs/src/lib/init/server/initializer.d.ts +11 -0
- package/dist/cjs/src/lib/init/server/initializer.js +26 -0
- package/dist/cjs/src/lib/initializer/browser/initializer.d.ts +11 -22
- package/dist/cjs/src/lib/initializer/browser/initializer.js +20 -31
- package/dist/cjs/src/lib/initializer/server/initializer.d.ts +11 -8
- package/dist/cjs/src/lib/initializer/server/initializer.js +17 -17
- package/dist/cjs/src/server.d.ts +3 -2
- package/dist/cjs/src/server.js +6 -3
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/package.json +3 -3
- package/dist/esm/src/browser.d.ts +4 -3
- package/dist/esm/src/browser.js +4 -3
- package/dist/esm/src/lib/consts.d.ts +7 -6
- package/dist/esm/src/lib/consts.js +8 -7
- package/dist/esm/src/lib/eventStorage/addToEventQueue.js +24 -11
- package/dist/esm/src/lib/eventStorage/clearEventQueue.js +1 -1
- package/dist/esm/src/lib/eventStorage/eventStorage.js +1 -1
- package/dist/esm/src/lib/eventStorage/processEventQueue.js +1 -1
- package/dist/esm/src/lib/events/base-event.js +1 -1
- package/dist/esm/src/lib/events/custom-event/custom-event.d.ts +1 -1
- package/dist/esm/src/lib/events/custom-event/event.d.ts +1 -1
- package/dist/esm/src/lib/events/custom-event/event.js +25 -13
- package/dist/esm/src/lib/events/custom-event/eventServer.d.ts +2 -2
- package/dist/esm/src/lib/events/custom-event/eventServer.js +17 -8
- package/dist/esm/src/lib/events/custom-event/form.d.ts +3 -3
- package/dist/esm/src/lib/events/custom-event/form.js +44 -22
- package/dist/esm/src/lib/events/identity/identity-event.d.ts +1 -1
- package/dist/esm/src/lib/events/identity/identity.d.ts +1 -1
- package/dist/esm/src/lib/events/identity/identity.js +25 -13
- package/dist/esm/src/lib/events/identity/identityServer.d.ts +2 -2
- package/dist/esm/src/lib/events/identity/identityServer.js +17 -6
- package/dist/esm/src/lib/events/page-view/page-view-event.d.ts +1 -1
- package/dist/esm/src/lib/events/page-view/page-view-server.d.ts +2 -2
- package/dist/esm/src/lib/events/page-view/page-view-server.js +18 -7
- package/dist/esm/src/lib/events/page-view/page-view.d.ts +1 -1
- package/dist/esm/src/lib/events/page-view/page-view.js +27 -14
- package/dist/esm/src/lib/events/send-event/sendEvent.d.ts +1 -1
- package/dist/esm/src/lib/events/send-event/sendEvent.js +3 -3
- package/dist/esm/src/lib/getBrowserId/getBrowserId.d.ts +8 -0
- package/dist/esm/src/lib/getBrowserId/getBrowserId.js +12 -0
- package/dist/esm/src/lib/getGuestId/getGuestId.d.ts +6 -3
- package/dist/esm/src/lib/getGuestId/getGuestId.js +20 -9
- package/dist/esm/src/lib/init/browser/initializer.d.ts +13 -0
- package/dist/esm/src/lib/init/browser/initializer.js +43 -0
- package/dist/esm/src/lib/init/server/initializer.d.ts +11 -0
- package/dist/esm/src/lib/init/server/initializer.js +22 -0
- package/dist/esm/src/lib/initializer/browser/initializer.d.ts +11 -22
- package/dist/esm/src/lib/initializer/browser/initializer.js +18 -29
- package/dist/esm/src/lib/initializer/server/initializer.d.ts +11 -8
- package/dist/esm/src/lib/initializer/server/initializer.js +15 -16
- package/dist/esm/src/server.d.ts +3 -2
- package/dist/esm/src/server.js +3 -2
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -2,12 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
This package provides browser- and server-side functions to capture events in your app and send them to Sitecore. Events are for collecting behavioral data about your users as they interact with your app.
|
|
4
4
|
|
|
5
|
-
## Prerequisites
|
|
6
|
-
|
|
7
|
-
To use the Sitecore Cloud SDK, you need an XM Cloud project. This project has to be created from the [XM Cloud foundation template](https://github.com/sitecorelabs/xmcloud-foundation-head) and deployed on XM Cloud.
|
|
8
|
-
|
|
9
|
-
The foundation template contains an XM Cloud JSS Next.js app. You use the Sitecore Cloud SDK in this app. To be able to use the Sitecore Cloud SDK, you need JSS version 21.6.0 or newer.
|
|
10
|
-
|
|
11
5
|
## Installation
|
|
12
6
|
|
|
13
7
|
```bash
|
|
@@ -16,82 +10,60 @@ npm install @sitecore-cloudsdk/events
|
|
|
16
10
|
|
|
17
11
|
## Usage
|
|
18
12
|
|
|
19
|
-
1. Initialize the package using the `
|
|
13
|
+
1. Initialize the package using the `CloudSDK` function, available in the `core` package.
|
|
20
14
|
2. Send events using the following functions:
|
|
21
|
-
- `pageView
|
|
22
|
-
- `identity
|
|
23
|
-
- `form
|
|
24
|
-
- `event
|
|
15
|
+
- `pageView` - send a VIEW event.
|
|
16
|
+
- `identity` - send an IDENTITY event.
|
|
17
|
+
- `form` - send a FORM event (browser-side only).
|
|
18
|
+
- `event` - send SC_SEARCH events, other standard events, or a custom event.
|
|
25
19
|
|
|
26
20
|
## Code examples
|
|
27
21
|
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
**NOTE**
|
|
31
|
-
|
|
32
|
-
These code examples illustrate how the Sitecore Cloud SDK works in a standalone Next.js app. In production, you implement Sitecore Cloud SDK functionality differently, in a JSS Next.js app. See code examples for that environment in the official documentation.
|
|
33
|
-
|
|
34
|
-
---
|
|
35
|
-
|
|
36
22
|
Capture and send a VIEW event from the browser side:
|
|
37
23
|
|
|
38
|
-
```
|
|
24
|
+
```tsx
|
|
39
25
|
'use client';
|
|
26
|
+
|
|
40
27
|
import { useEffect } from 'react';
|
|
41
|
-
import {
|
|
28
|
+
import { CloudSDK } from '@sitecore-cloudsdk/core/browser';
|
|
29
|
+
import { pageView } from '@sitecore-cloudsdk/events/browser';
|
|
42
30
|
|
|
43
31
|
export default function Home() {
|
|
44
32
|
useEffect(() => {
|
|
45
|
-
|
|
33
|
+
CloudSDK({
|
|
34
|
+
/* Initialization settings. See `core` package code examples. */
|
|
35
|
+
})
|
|
36
|
+
.addEvents()
|
|
37
|
+
.initialize();
|
|
38
|
+
|
|
39
|
+
// Send VIEW event:
|
|
40
|
+
pageView();
|
|
46
41
|
}, []);
|
|
47
42
|
|
|
48
|
-
|
|
49
|
-
await init({
|
|
50
|
-
sitecoreEdgeContextId: process.env.NEXT_PUBLIC_SITECORE_EDGE_CONTEXT_ID || '',
|
|
51
|
-
siteName: process.env.NEXT_PUBLIC_SITENAME || '',
|
|
52
|
-
enableBrowserCookie: true,
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
console.log(`Initialized "@sitecore-cloudsdk/events/browser".`);
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
const sendPageViewEvent = async () => {
|
|
59
|
-
await pageView();
|
|
60
|
-
|
|
61
|
-
console.log('Sent VIEW event.');
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
return (
|
|
65
|
-
<div>
|
|
66
|
-
<button onClick={sendPageViewEvent}>send VIEW event</button>
|
|
67
|
-
</div>
|
|
68
|
-
);
|
|
43
|
+
return <></>;
|
|
69
44
|
}
|
|
70
45
|
```
|
|
71
46
|
|
|
72
47
|
Capture and send a VIEW event from the server side:
|
|
73
48
|
|
|
74
49
|
```ts
|
|
75
|
-
import { NextResponse } from 'next/server';
|
|
76
|
-
import
|
|
77
|
-
import {
|
|
78
|
-
|
|
79
|
-
export async function middleware(req: NextRequest) {
|
|
80
|
-
const res = NextResponse.next();
|
|
81
|
-
|
|
82
|
-
await init(req, res, {
|
|
83
|
-
sitecoreEdgeContextId: process.env.NEXT_PUBLIC_SITECORE_EDGE_CONTEXT_ID || '',
|
|
84
|
-
siteName: process.env.NEXT_PUBLIC_SITENAME || '',
|
|
85
|
-
enableServerCookie: true,
|
|
86
|
-
});
|
|
50
|
+
import type { NextRequest, NextResponse } from 'next/server';
|
|
51
|
+
import { CloudSDK } from '@sitecore-cloudsdk/core/server';
|
|
52
|
+
import { pageView } from '@sitecore-cloudsdk/events/server';
|
|
87
53
|
|
|
88
|
-
|
|
54
|
+
export async function middleware(request: NextRequest) {
|
|
55
|
+
const response = NextResponse.next();
|
|
89
56
|
|
|
90
|
-
|
|
57
|
+
await CloudSDK(request, response, {
|
|
58
|
+
/* Initialization settings. See `core` package code examples. */
|
|
59
|
+
})
|
|
60
|
+
.addEvents()
|
|
61
|
+
.initialize();
|
|
91
62
|
|
|
92
|
-
|
|
63
|
+
// Send VIEW event:
|
|
64
|
+
await pageView(request);
|
|
93
65
|
|
|
94
|
-
return
|
|
66
|
+
return response;
|
|
95
67
|
}
|
|
96
68
|
```
|
|
97
69
|
|
package/dist/cjs/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sitecore-cloudsdk/events",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0-rc.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"homepage": "https://doc.sitecore.com/xmc/en/developers/sdk/latest/cloud-sdk/index.html",
|
|
6
6
|
"exports": {
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@sitecore-cloudsdk/core": "^0.
|
|
20
|
-
"@sitecore-cloudsdk/utils": "^0.
|
|
19
|
+
"@sitecore-cloudsdk/core": "^0.4.0-rc.0",
|
|
20
|
+
"@sitecore-cloudsdk/utils": "^0.4.0-rc.0"
|
|
21
21
|
},
|
|
22
22
|
"scripts": {
|
|
23
23
|
"build": "npm run build:cjs && npm run build:es",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
1
|
+
import './lib/initializer/browser/initializer';
|
|
2
|
+
export { getBrowserId } from './lib/getBrowserId/getBrowserId';
|
|
3
|
+
export { init } from './lib/init/browser/initializer';
|
|
3
4
|
export type { PageViewData, EventData, IdentityData } from './lib/events';
|
|
4
5
|
export { addToEventQueue } from './lib/eventStorage/addToEventQueue';
|
|
5
6
|
export { processEventQueue } from './lib/eventStorage/processEventQueue';
|
|
@@ -9,4 +10,4 @@ export { event } from './lib/events/custom-event/event';
|
|
|
9
10
|
export { identity } from './lib/events/identity/identity';
|
|
10
11
|
export { pageView } from './lib/events/page-view/page-view';
|
|
11
12
|
export { getGuestId } from './lib/getGuestId/getGuestId';
|
|
12
|
-
export {
|
|
13
|
+
export { PACKAGE_VERSION, EVENTS_NAMESPACE, PACKAGE_NAME, PACKAGE_INITIALIZER_METHOD_NAME } from './lib/consts';
|
package/dist/cjs/src/browser.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EVENTS_NAMESPACE = exports.
|
|
3
|
+
exports.PACKAGE_INITIALIZER_METHOD_NAME = exports.PACKAGE_NAME = exports.EVENTS_NAMESPACE = exports.PACKAGE_VERSION = exports.getGuestId = exports.pageView = exports.identity = exports.event = exports.form = exports.clearEventQueue = exports.processEventQueue = exports.addToEventQueue = exports.init = exports.getBrowserId = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
require("./lib/initializer/browser/initializer");
|
|
6
|
+
var getBrowserId_1 = require("./lib/getBrowserId/getBrowserId");
|
|
7
|
+
Object.defineProperty(exports, "getBrowserId", { enumerable: true, get: function () { return getBrowserId_1.getBrowserId; } });
|
|
8
|
+
var initializer_1 = require("./lib/init/browser/initializer");
|
|
8
9
|
Object.defineProperty(exports, "init", { enumerable: true, get: function () { return initializer_1.init; } });
|
|
9
10
|
var addToEventQueue_1 = require("./lib/eventStorage/addToEventQueue");
|
|
10
11
|
Object.defineProperty(exports, "addToEventQueue", { enumerable: true, get: function () { return addToEventQueue_1.addToEventQueue; } });
|
|
@@ -23,5 +24,7 @@ Object.defineProperty(exports, "pageView", { enumerable: true, get: function ()
|
|
|
23
24
|
var getGuestId_1 = require("./lib/getGuestId/getGuestId");
|
|
24
25
|
Object.defineProperty(exports, "getGuestId", { enumerable: true, get: function () { return getGuestId_1.getGuestId; } });
|
|
25
26
|
var consts_1 = require("./lib/consts");
|
|
26
|
-
Object.defineProperty(exports, "
|
|
27
|
+
Object.defineProperty(exports, "PACKAGE_VERSION", { enumerable: true, get: function () { return consts_1.PACKAGE_VERSION; } });
|
|
27
28
|
Object.defineProperty(exports, "EVENTS_NAMESPACE", { enumerable: true, get: function () { return consts_1.EVENTS_NAMESPACE; } });
|
|
29
|
+
Object.defineProperty(exports, "PACKAGE_NAME", { enumerable: true, get: function () { return consts_1.PACKAGE_NAME; } });
|
|
30
|
+
Object.defineProperty(exports, "PACKAGE_INITIALIZER_METHOD_NAME", { enumerable: true, get: function () { return consts_1.PACKAGE_INITIALIZER_METHOD_NAME; } });
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export declare const
|
|
1
|
+
export declare const EVENTS_NAMESPACE = "sitecore-cloudsdk:events";
|
|
2
|
+
export declare const PACKAGE_VERSION: string;
|
|
3
|
+
export declare const PACKAGE_NAME: string;
|
|
4
|
+
export declare const PACKAGE_INITIALIZER_METHOD_NAME = "addEvents";
|
|
5
5
|
/**
|
|
6
6
|
* Returns the name & version of the library in a String.
|
|
7
7
|
*/
|
|
8
8
|
export declare const X_CLIENT_SOFTWARE_ID: string;
|
|
9
9
|
export declare enum ErrorMessages {
|
|
10
|
-
IE_0001 = "[IE-0001]
|
|
10
|
+
IE_0001 = "[IE-0001] You are trying to run a browser-side function on the server side. On the server side, run the server-side equivalent of the function, available in \"server\" modules.",
|
|
11
11
|
IE_0004 = "[IE-0004] You must first initialize the \"events/browser\" module. Run the \"init\" function.",
|
|
12
12
|
IE_0005 = "[IE-0005] You must first initialize the \"events/server\" module. Run the \"init\" function.",
|
|
13
|
+
IE_0014 = "[IE-0014] You must first initialize the Cloud SDK and the \"events\" package. First, import \"CloudSDK\" from \"@sitecore-cloudsdk/core/browser\" and import \"@sitecore-cloudsdk/events/browser\". Then, run \"CloudSDK().addEvents().initialize()\".",
|
|
14
|
+
IE_0015 = "[IE-0015] You must first initialize the Cloud SDK and the \"events\" package. First, import \"CloudSDK\" from \"@sitecore-cloudsdk/core/server\" and import \"@sitecore-cloudsdk/events/server\". Then, run \"await CloudSDK().addEvents().initialize()\".",
|
|
13
15
|
IV_0002 = "[IV-0002] Incorrect value for \"dob\". Format the value according to ISO 8601.",
|
|
14
16
|
IV_0003 = "[IV-0003] Incorrect value for \"email\". Set the value to a valid email address.",
|
|
15
17
|
IV_0004 = "[IV-0004] Incorrect value for \"expiryDate\". Format the value according to ISO 8601.",
|
|
16
18
|
IV_0005 = "[IV-0005] \"extensionData\" supports maximum 50 attributes. Reduce the number of attributes.",
|
|
17
19
|
MV_0003 = "[MV-0003] \"identifiers\" is required."
|
|
18
20
|
}
|
|
19
|
-
export declare const EVENTS_NAMESPACE = "sitecore-cloudsdk:events";
|
|
@@ -3,25 +3,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.ErrorMessages = exports.X_CLIENT_SOFTWARE_ID = exports.PACKAGE_INITIALIZER_METHOD_NAME = exports.PACKAGE_NAME = exports.PACKAGE_VERSION = exports.EVENTS_NAMESPACE = void 0;
|
|
7
7
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
8
8
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
9
9
|
const consts_1 = require("./events/consts");
|
|
10
10
|
const package_json_1 = __importDefault(require("../../package.json"));
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
exports.
|
|
11
|
+
exports.EVENTS_NAMESPACE = 'sitecore-cloudsdk:events';
|
|
12
|
+
exports.PACKAGE_VERSION = package_json_1.default.version;
|
|
13
|
+
exports.PACKAGE_NAME = package_json_1.default.name;
|
|
14
|
+
exports.PACKAGE_INITIALIZER_METHOD_NAME = 'addEvents';
|
|
15
15
|
/**
|
|
16
16
|
* Returns the name & version of the library in a String.
|
|
17
17
|
*/
|
|
18
|
-
exports.X_CLIENT_SOFTWARE_ID = `${
|
|
18
|
+
exports.X_CLIENT_SOFTWARE_ID = `${exports.PACKAGE_NAME} ${exports.PACKAGE_VERSION}`;
|
|
19
19
|
/* eslint-disable max-len */
|
|
20
20
|
var ErrorMessages;
|
|
21
21
|
(function (ErrorMessages) {
|
|
22
|
-
ErrorMessages["IE_0001"] = "[IE-0001]
|
|
22
|
+
ErrorMessages["IE_0001"] = "[IE-0001] You are trying to run a browser-side function on the server side. On the server side, run the server-side equivalent of the function, available in \"server\" modules.";
|
|
23
23
|
ErrorMessages["IE_0004"] = "[IE-0004] You must first initialize the \"events/browser\" module. Run the \"init\" function.";
|
|
24
24
|
ErrorMessages["IE_0005"] = "[IE-0005] You must first initialize the \"events/server\" module. Run the \"init\" function.";
|
|
25
|
+
ErrorMessages["IE_0014"] = "[IE-0014] You must first initialize the Cloud SDK and the \"events\" package. First, import \"CloudSDK\" from \"@sitecore-cloudsdk/core/browser\" and import \"@sitecore-cloudsdk/events/browser\". Then, run \"CloudSDK().addEvents().initialize()\".";
|
|
26
|
+
ErrorMessages["IE_0015"] = "[IE-0015] You must first initialize the Cloud SDK and the \"events\" package. First, import \"CloudSDK\" from \"@sitecore-cloudsdk/core/server\" and import \"@sitecore-cloudsdk/events/server\". Then, run \"await CloudSDK().addEvents().initialize()\".";
|
|
25
27
|
ErrorMessages["IV_0002"] = "[IV-0002] Incorrect value for \"dob\". Format the value according to ISO 8601.";
|
|
26
28
|
ErrorMessages["IV_0003"] = "[IV-0003] Incorrect value for \"email\". Set the value to a valid email address.";
|
|
27
29
|
ErrorMessages["IV_0004"] = "[IV-0004] Incorrect value for \"expiryDate\". Format the value according to ISO 8601.";
|
|
@@ -29,4 +31,3 @@ var ErrorMessages;
|
|
|
29
31
|
ErrorMessages["MV_0003"] = "[MV-0003] \"identifiers\" is required.";
|
|
30
32
|
})(ErrorMessages || (exports.ErrorMessages = ErrorMessages = {}));
|
|
31
33
|
/* eslint-enable max-len */
|
|
32
|
-
exports.EVENTS_NAMESPACE = 'sitecore-cloudsdk:events';
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.addToEventQueue = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
const
|
|
5
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
6
|
+
const utils_1 = require("@sitecore-cloudsdk/utils");
|
|
6
7
|
const consts_1 = require("../consts");
|
|
7
|
-
const initializer_1 = require("../
|
|
8
|
+
const initializer_1 = require("../init/browser/initializer");
|
|
8
9
|
const eventStorage_1 = require("./eventStorage");
|
|
9
10
|
/**
|
|
10
11
|
* A function that adds event to the queue
|
|
@@ -13,13 +14,25 @@ const eventStorage_1 = require("./eventStorage");
|
|
|
13
14
|
*/
|
|
14
15
|
async function addToEventQueue(eventData) {
|
|
15
16
|
await (0, initializer_1.awaitInit)();
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
17
|
+
if ((0, internal_1.getEnabledPackageBrowser)(consts_1.PACKAGE_NAME)?.initState) {
|
|
18
|
+
const settings = (0, internal_1.getCloudSDKSettingsBrowser)();
|
|
19
|
+
const id = (0, utils_1.getCookieValueClientSide)(settings.cookieSettings.name.browserId);
|
|
20
|
+
const queueEventPayload = {
|
|
21
|
+
eventData,
|
|
22
|
+
id,
|
|
23
|
+
settings: settings
|
|
24
|
+
};
|
|
25
|
+
eventStorage_1.eventQueue.enqueueEvent(queueEventPayload);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
const settings = (0, internal_1.handleGetSettingsError)(internal_1.getSettings, consts_1.ErrorMessages.IE_0014);
|
|
29
|
+
const id = (0, internal_1.getBrowserId)();
|
|
30
|
+
const queueEventPayload = {
|
|
31
|
+
eventData,
|
|
32
|
+
id,
|
|
33
|
+
settings
|
|
34
|
+
};
|
|
35
|
+
eventStorage_1.eventQueue.enqueueEvent(queueEventPayload);
|
|
36
|
+
}
|
|
24
37
|
}
|
|
25
38
|
exports.addToEventQueue = addToEventQueue;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.clearEventQueue = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
const initializer_1 = require("../
|
|
5
|
+
const initializer_1 = require("../init/browser/initializer");
|
|
6
6
|
const eventStorage_1 = require("./eventStorage");
|
|
7
7
|
/**
|
|
8
8
|
* Deletes the queue from session.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.eventQueue = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
const
|
|
5
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
6
6
|
const events_1 = require("../events");
|
|
7
7
|
const sendEvent_1 = require("../events/send-event/sendEvent");
|
|
8
8
|
class EventQueue {
|
|
@@ -31,8 +31,8 @@ class EventQueue {
|
|
|
31
31
|
*/
|
|
32
32
|
enqueueEvent(queueEventPayload) {
|
|
33
33
|
const sessionStorage = this.getSessionStorage();
|
|
34
|
-
queueEventPayload.eventData.page = queueEventPayload.eventData.page ?? (0,
|
|
35
|
-
queueEventPayload.eventData.language = queueEventPayload.eventData.language ?? (0,
|
|
34
|
+
queueEventPayload.eventData.page = queueEventPayload.eventData.page ?? (0, internal_1.pageName)();
|
|
35
|
+
queueEventPayload.eventData.language = queueEventPayload.eventData.language ?? (0, internal_1.language)();
|
|
36
36
|
new events_1.CustomEvent({
|
|
37
37
|
sendEvent: sendEvent_1.sendEvent,
|
|
38
38
|
...queueEventPayload
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.processEventQueue = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
const initializer_1 = require("../
|
|
5
|
+
const initializer_1 = require("../init/browser/initializer");
|
|
6
6
|
const eventStorage_1 = require("./eventStorage");
|
|
7
7
|
/**
|
|
8
8
|
* A function that sends all queue events to SitecoreCloud API.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseEvent = void 0;
|
|
4
4
|
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
5
|
-
const
|
|
5
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
6
6
|
class BaseEvent {
|
|
7
7
|
/**
|
|
8
8
|
* The base event class that has all the shared functions between Events
|
|
@@ -14,8 +14,8 @@ class BaseEvent {
|
|
|
14
14
|
constructor(baseEventData, id) {
|
|
15
15
|
this.baseEventData = baseEventData;
|
|
16
16
|
this.browserId = id;
|
|
17
|
-
this.language = this.baseEventData.language ?? (0,
|
|
18
|
-
this.page = this.baseEventData.page ?? (0,
|
|
17
|
+
this.language = this.baseEventData.language ?? (0, internal_1.language)();
|
|
18
|
+
this.page = this.baseEventData.page ?? (0, internal_1.pageName)();
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
21
|
* A function that returns the properties for sending events to Sitecore EP
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BasicTypes, NestedObject } from '@sitecore-cloudsdk/utils';
|
|
2
|
-
import type { EPResponse, Settings } from '@sitecore-cloudsdk/core';
|
|
2
|
+
import type { EPResponse, Settings } from '@sitecore-cloudsdk/core/internal';
|
|
3
3
|
import type { EventAttributesInput, ExtensionData } from '../common-interfaces';
|
|
4
4
|
import { BaseEvent } from '../base-event';
|
|
5
5
|
import type { SendEvent } from '../send-event/sendEvent';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.event = void 0;
|
|
5
|
-
const
|
|
6
|
-
const
|
|
4
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
5
|
+
const utils_1 = require("@sitecore-cloudsdk/utils");
|
|
7
6
|
const consts_1 = require("../../consts");
|
|
8
|
-
const initializer_1 = require("../../
|
|
7
|
+
const initializer_1 = require("../../init/browser/initializer");
|
|
9
8
|
const sendEvent_1 = require("../send-event/sendEvent");
|
|
9
|
+
const custom_event_1 = require("./custom-event");
|
|
10
10
|
/**
|
|
11
11
|
* A function that sends an event to SitecoreCloud API with the specified type
|
|
12
12
|
*
|
|
@@ -15,13 +15,25 @@ const sendEvent_1 = require("../send-event/sendEvent");
|
|
|
15
15
|
*/
|
|
16
16
|
async function event(eventData) {
|
|
17
17
|
await (0, initializer_1.awaitInit)();
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
if ((0, internal_1.getEnabledPackageBrowser)(consts_1.PACKAGE_NAME)?.initState) {
|
|
19
|
+
const settings = (0, internal_1.getCloudSDKSettingsBrowser)();
|
|
20
|
+
const id = (0, utils_1.getCookieValueClientSide)(settings.cookieSettings.name.browserId);
|
|
21
|
+
return new custom_event_1.CustomEvent({
|
|
22
|
+
eventData,
|
|
23
|
+
id,
|
|
24
|
+
sendEvent: sendEvent_1.sendEvent,
|
|
25
|
+
settings: settings
|
|
26
|
+
}).send();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
const settings = (0, internal_1.handleGetSettingsError)(internal_1.getSettings, consts_1.ErrorMessages.IE_0014);
|
|
30
|
+
const id = (0, internal_1.getBrowserId)();
|
|
31
|
+
return new custom_event_1.CustomEvent({
|
|
32
|
+
eventData,
|
|
33
|
+
id,
|
|
34
|
+
sendEvent: sendEvent_1.sendEvent,
|
|
35
|
+
settings
|
|
36
|
+
}).send();
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
39
|
exports.event = event;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { EPResponse } from '@sitecore-cloudsdk/core';
|
|
2
|
-
import type { EventData } from './custom-event';
|
|
1
|
+
import type { EPResponse } from '@sitecore-cloudsdk/core/internal';
|
|
3
2
|
import type { Request } from '@sitecore-cloudsdk/utils';
|
|
3
|
+
import type { EventData } from './custom-event';
|
|
4
4
|
/**
|
|
5
5
|
* A function that sends an event to SitecoreCloud API with the specified type
|
|
6
6
|
*
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.eventServer = void 0;
|
|
5
|
-
const
|
|
6
|
-
const custom_event_1 = require("./custom-event");
|
|
4
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
7
5
|
const consts_1 = require("../../consts");
|
|
8
6
|
const sendEvent_1 = require("../send-event/sendEvent");
|
|
7
|
+
const custom_event_1 = require("./custom-event");
|
|
9
8
|
/**
|
|
10
9
|
* A function that sends an event to SitecoreCloud API with the specified type
|
|
11
10
|
*
|
|
@@ -14,13 +13,23 @@ const sendEvent_1 = require("../send-event/sendEvent");
|
|
|
14
13
|
* @returns The response object that Sitecore EP returns
|
|
15
14
|
*/
|
|
16
15
|
function eventServer(request, eventData) {
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
let settings;
|
|
17
|
+
let browserId;
|
|
18
|
+
if (internal_1.builderInstanceServer) {
|
|
19
|
+
if (!(0, internal_1.getEnabledPackageServer)(consts_1.PACKAGE_NAME))
|
|
20
|
+
throw new Error(consts_1.ErrorMessages.IE_0015);
|
|
21
|
+
settings = (0, internal_1.getCloudSDKSettingsServer)();
|
|
22
|
+
browserId = (0, internal_1.getCookieValueFromRequest)(request, settings.cookieSettings.name.browserId);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
settings = (0, internal_1.handleGetSettingsError)(internal_1.getSettingsServer, consts_1.ErrorMessages.IE_0015);
|
|
26
|
+
browserId = (0, internal_1.getCookieValueFromRequest)(request, settings.cookieSettings.cookieNames.browserId);
|
|
27
|
+
}
|
|
19
28
|
return new custom_event_1.CustomEvent({
|
|
20
29
|
eventData,
|
|
21
|
-
id,
|
|
30
|
+
id: browserId,
|
|
22
31
|
sendEvent: sendEvent_1.sendEvent,
|
|
23
|
-
settings
|
|
32
|
+
settings: settings
|
|
24
33
|
}).send();
|
|
25
34
|
}
|
|
26
35
|
exports.eventServer = eventServer;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { EPResponse } from '@sitecore-cloudsdk/core';
|
|
1
|
+
import type { EPResponse } from '@sitecore-cloudsdk/core/internal';
|
|
2
2
|
/**
|
|
3
3
|
* A function that sends a form event to SitecoreCloud API
|
|
4
4
|
*
|
|
5
5
|
* @param formId - The required form ID string
|
|
6
6
|
* @param interactionType - The required interaction type string. Possible values: "VIEWED", "SUBMITTED"
|
|
7
|
-
*
|
|
7
|
+
* @param componentInstanceId - The required component instance ID string
|
|
8
8
|
* @returns The response object that Sitecore EP returns or null
|
|
9
9
|
*/
|
|
10
|
-
export declare function form(formId: string, interactionType: 'VIEWED' | 'SUBMITTED'): Promise<EPResponse | null>;
|
|
10
|
+
export declare function form(formId: string, interactionType: 'VIEWED' | 'SUBMITTED', componentInstanceId: string): Promise<EPResponse | null>;
|
|
@@ -1,37 +1,59 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// © Sitecore Corporation A/S. All rights reserved. Sitecore® is a registered trademark of Sitecore Corporation A/S.
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.form = void 0;
|
|
5
|
-
const
|
|
6
|
-
const
|
|
4
|
+
const internal_1 = require("@sitecore-cloudsdk/core/internal");
|
|
5
|
+
const utils_1 = require("@sitecore-cloudsdk/utils");
|
|
7
6
|
const consts_1 = require("../../consts");
|
|
8
|
-
const initializer_1 = require("../../
|
|
7
|
+
const initializer_1 = require("../../init/browser/initializer");
|
|
9
8
|
const sendEvent_1 = require("../send-event/sendEvent");
|
|
9
|
+
const custom_event_1 = require("./custom-event");
|
|
10
10
|
/**
|
|
11
11
|
* A function that sends a form event to SitecoreCloud API
|
|
12
12
|
*
|
|
13
13
|
* @param formId - The required form ID string
|
|
14
14
|
* @param interactionType - The required interaction type string. Possible values: "VIEWED", "SUBMITTED"
|
|
15
|
-
*
|
|
15
|
+
* @param componentInstanceId - The required component instance ID string
|
|
16
16
|
* @returns The response object that Sitecore EP returns or null
|
|
17
17
|
*/
|
|
18
|
-
async function form(formId, interactionType) {
|
|
18
|
+
async function form(formId, interactionType, componentInstanceId) {
|
|
19
19
|
await (0, initializer_1.awaitInit)();
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
if ((0, internal_1.getEnabledPackageBrowser)(consts_1.PACKAGE_NAME)?.initState) {
|
|
21
|
+
const settings = (0, internal_1.getCloudSDKSettingsBrowser)();
|
|
22
|
+
const id = (0, utils_1.getCookieValueClientSide)(settings.cookieSettings.name.browserId);
|
|
23
|
+
const formEvent = new custom_event_1.CustomEvent({
|
|
24
|
+
eventData: {
|
|
25
|
+
extensionData: {
|
|
26
|
+
componentInstanceId,
|
|
27
|
+
formId,
|
|
28
|
+
interactionType: interactionType.toUpperCase()
|
|
29
|
+
},
|
|
30
|
+
type: 'FORM'
|
|
31
|
+
},
|
|
32
|
+
id,
|
|
33
|
+
sendEvent: sendEvent_1.sendEvent,
|
|
34
|
+
settings: settings
|
|
35
|
+
});
|
|
36
|
+
formEvent.page = undefined;
|
|
37
|
+
return formEvent.send();
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
const settings = (0, internal_1.handleGetSettingsError)(internal_1.getSettings, consts_1.ErrorMessages.IE_0014);
|
|
41
|
+
const id = (0, internal_1.getBrowserId)();
|
|
42
|
+
const formEvent = new custom_event_1.CustomEvent({
|
|
43
|
+
eventData: {
|
|
44
|
+
extensionData: {
|
|
45
|
+
componentInstanceId,
|
|
46
|
+
formId,
|
|
47
|
+
interactionType: interactionType.toUpperCase()
|
|
48
|
+
},
|
|
49
|
+
type: 'FORM'
|
|
27
50
|
},
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return formEvent.send();
|
|
51
|
+
id,
|
|
52
|
+
sendEvent: sendEvent_1.sendEvent,
|
|
53
|
+
settings
|
|
54
|
+
});
|
|
55
|
+
formEvent.page = undefined;
|
|
56
|
+
return formEvent.send();
|
|
57
|
+
}
|
|
36
58
|
}
|
|
37
59
|
exports.form = form;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EPResponse, Infer, Settings } from '@sitecore-cloudsdk/core';
|
|
1
|
+
import type { EPResponse, Infer, Settings } from '@sitecore-cloudsdk/core/internal';
|
|
2
2
|
import type { EventAttributesInput, ExtensionData } from '../common-interfaces';
|
|
3
3
|
import { BaseEvent } from '../base-event';
|
|
4
4
|
import type { FlattenedObject } from '@sitecore-cloudsdk/utils';
|