@remkoj/optimizely-one-nextjs 4.0.0-rc1 → 4.1.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/api/content-recs.js.map +1 -1
- package/dist/api/experimentation-api.js +4 -6
- package/dist/api/experimentation-api.js.map +1 -1
- package/dist/api/graph-info-service.js +3 -3
- package/dist/api/graph-info-service.js.map +1 -1
- package/dist/api/profile-api-service.js +10 -9
- package/dist/api/profile-api-service.js.map +1 -1
- package/dist/client-types.d.ts +13 -0
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +2 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/optimizely-one-gadget/_notice.d.ts +7 -0
- package/dist/components/optimizely-one-gadget/_notice.js +9 -0
- package/dist/components/optimizely-one-gadget/_notice.js.map +1 -0
- package/dist/components/optimizely-one-gadget/_types.d.ts +24 -0
- package/dist/components/optimizely-one-gadget/_types.js +2 -0
- package/dist/components/optimizely-one-gadget/_types.js.map +1 -0
- package/dist/components/optimizely-one-gadget/audiences-panel.js +7 -6
- package/dist/components/optimizely-one-gadget/audiences-panel.js.map +1 -1
- package/dist/components/optimizely-one-gadget/gadget.d.ts +13 -0
- package/dist/components/optimizely-one-gadget/gadget.js +119 -0
- package/dist/components/optimizely-one-gadget/gadget.js.map +1 -0
- package/dist/components/optimizely-one-gadget/goals-panel.js +6 -5
- package/dist/components/optimizely-one-gadget/goals-panel.js.map +1 -1
- package/dist/components/optimizely-one-gadget/graph-panel.js +4 -3
- package/dist/components/optimizely-one-gadget/graph-panel.js.map +1 -1
- package/dist/components/optimizely-one-gadget/ids-panel.js +8 -3
- package/dist/components/optimizely-one-gadget/ids-panel.js.map +1 -1
- package/dist/components/optimizely-one-gadget/index.d.ts +3 -32
- package/dist/components/optimizely-one-gadget/index.js +15 -66
- package/dist/components/optimizely-one-gadget/index.js.map +1 -1
- package/dist/components/optimizely-one-gadget/interests-panel.js +6 -5
- package/dist/components/optimizely-one-gadget/interests-panel.js.map +1 -1
- package/dist/components/optimizely-one-gadget/profile-panel.js +4 -3
- package/dist/components/optimizely-one-gadget/profile-panel.js.map +1 -1
- package/dist/components/rsc.d.ts +2 -0
- package/dist/components/rsc.js +3 -0
- package/dist/components/rsc.js.map +1 -0
- package/dist/config.d.ts +22 -0
- package/dist/config.js +29 -0
- package/dist/config.js.map +1 -0
- package/dist/env-vars.js.map +1 -1
- package/dist/products/content-recs/api.js +8 -7
- package/dist/products/content-recs/api.js.map +1 -1
- package/dist/products/data-platform/api.js +14 -16
- package/dist/products/data-platform/api.js.map +1 -1
- package/dist/products/data-platform/helpers.d.ts +2 -1
- package/dist/products/data-platform/helpers.js +3 -5
- package/dist/products/data-platform/helpers.js.map +1 -1
- package/dist/products/data-platform/snippet.d.ts +1 -1
- package/dist/products/data-platform/snippet.js +2 -0
- package/dist/products/data-platform/snippet.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.js +1 -0
- package/dist/server.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utils/session.d.ts +2 -2
- package/dist/utils/session.js +4 -7
- package/dist/utils/session.js.map +1 -1
- package/package.json +9 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-recs.js","sourceRoot":"","sources":["../../src/api/content-recs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"content-recs.js","sourceRoot":"","sources":["../../src/api/content-recs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACnD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;IACpC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpD,IAAI,CAAC,IAAI;YACL,OAAO,CAAC,EAAC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAC,EAAC,GAAG,CAAC,CAAA;QAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,iDAAkD,IAAK,sBAAsB,CAAC,CAAA;QAC1G,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC1B,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,UAAU;gBAChC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QACF,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;QACvE,IAAI,CAAC,eAAe,CAAC,EAAE;YACnB,OAAO,CAAC,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,UAAU,EAAE,EAAC,EAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QACpH,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAA;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAC,CAAC,CAAC,CAAA;QAC1E,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YACrC,OAAO;gBACH;oBACI,GAAG,QAAQ;oBACX,SAAS,EAAE,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;iBAClD;gBACD,GAAG;aACN,CAAA;QACL,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,8CAA8C,EAAE,EAAC,EAAC,GAAG,CAAC,CAAA;QAClG,CAAC;IACL,CAAC;CACJ,CAAA;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import EnvVars from '../env-vars';
|
|
1
|
+
import getConfig from '../config';
|
|
3
2
|
export const ExperimentationApiService = {
|
|
4
3
|
for: { path: '/exp', verb: 'get' },
|
|
5
4
|
handler: async (query) => {
|
|
6
|
-
const configuredProjectId =
|
|
5
|
+
const { WebExperimentationProject: configuredProjectId, HelperEnabled: helperEnabled, OptimizelyDebug: debug } = getConfig();
|
|
7
6
|
const queryProjectId = query.get('pid') ?? undefined;
|
|
8
|
-
const helperEnabled = EnvTools.readValueAsBoolean(EnvVars.HelperEnabled, false);
|
|
9
7
|
const projectId = helperEnabled ? queryProjectId ?? configuredProjectId : configuredProjectId;
|
|
10
8
|
// Make sure we have a Project ID
|
|
11
9
|
if (!projectId) {
|
|
12
|
-
if (
|
|
10
|
+
if (debug)
|
|
13
11
|
console.log("🔴 No Optimizely Web Experimentation Project ID identified");
|
|
14
12
|
return [{ error: { message: "Project not found", status: 404 } }, 404];
|
|
15
13
|
}
|
|
@@ -20,7 +18,7 @@ export const ExperimentationApiService = {
|
|
|
20
18
|
}
|
|
21
19
|
});
|
|
22
20
|
if (!snippetResponse.ok) {
|
|
23
|
-
if (
|
|
21
|
+
if (debug)
|
|
24
22
|
console.log("🔴 Non OK response from the Optimizely Web Experimentation CDN");
|
|
25
23
|
return [{ error: { message: snippetResponse.statusText, status: snippetResponse.status } }, snippetResponse.status];
|
|
26
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experimentation-api.js","sourceRoot":"","sources":["../../src/api/experimentation-api.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"experimentation-api.js","sourceRoot":"","sources":["../../src/api/experimentation-api.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,WAAW,CAAA;AAEjC,MAAM,CAAC,MAAM,yBAAyB,GAAqB;IACvD,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;IAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,CAAA;QAC5H,MAAM,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,SAAS,CAAA;QACpD,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,cAAc,IAAI,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAA;QAE7F,iCAAiC;QACjC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAA;YAC7E,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,EAAE,EAAC,EAAE,GAAG,CAAC,CAAA;QACzE,CAAC;QAGD,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,iCAAkC,SAAU,KAAK,EAAE;YACnF,0CAA0C;YAC1C,IAAI,EAAE;gBACF,UAAU,EAAE,GAAG,CAAC,kCAAkC;aACrD;SACJ,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACtB,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAA;YACjF,OAAO,CAAC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAC,EAAC,EAAE,eAAe,CAAC,MAAM,CAAE,CAAA;QACrH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAA;QAEzC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAA;IAC3E,CAAC;CACJ,CAAA;AAED,eAAe,yBAAyB,CAAA"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import * as EnvTools from '../utils/env';
|
|
2
|
-
import EnvVars from '../env-vars';
|
|
3
1
|
import * as Responses from './responses';
|
|
4
2
|
import createAdminApi from '@remkoj/optimizely-graph-client/admin';
|
|
3
|
+
import getConfig from '../config';
|
|
5
4
|
export const GraphInfoApiService = {
|
|
6
5
|
for: { path: '/graph', verb: 'get' },
|
|
7
6
|
handler: async (query, cookies) => {
|
|
7
|
+
const config = getConfig();
|
|
8
8
|
// Check if the toolkit is enabled
|
|
9
|
-
if (!
|
|
9
|
+
if (!config.HelperEnabled)
|
|
10
10
|
return Responses.NotFound;
|
|
11
11
|
const adminApi = createAdminApi();
|
|
12
12
|
const hooks = await adminApi.webhooks.listWebhookHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-info-service.js","sourceRoot":"","sources":["../../src/api/graph-info-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"graph-info-service.js","sourceRoot":"","sources":["../../src/api/graph-info-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAA;AACxC,OAAO,cAAc,MAAM,uCAAuC,CAAA;AAClE,OAAO,SAAS,MAAM,WAAW,CAAA;AAGjC,MAAM,CAAC,MAAM,mBAAmB,GAAsC;IAClE,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;IACpC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;QAC1B,kCAAkC;QAClC,IAAI,CAAC,MAAM,CAAC,aAAa;YACrB,OAAO,SAAS,CAAC,QAAQ,CAAA;QAE7B,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAA;QAEjC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAA;QAC1D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAA;QACzE,MAAM,OAAO,GAAW,EAAE,CAAA;QAC1B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;YAClC,OAAO,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC9B,CAAC,CAAA;QACN,CAAC;QAED,OAAO,CAAC;gBACJ,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACpB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;oBACzC,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAA;oBAC5E,OAAO;wBACH,GAAG,EAAE,UAAU;wBACf,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,UAAU;wBAC9C,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;qBAC9B,CAAA;gBACL,CAAC,CAAC;gBACF,OAAO;aACV,EAAE,GAAG,CAAC,CAAA;IACX,CAAC;CACJ,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import * as EnvTools from '../utils/env';
|
|
2
|
-
import EnvVars from '../env-vars';
|
|
3
1
|
import * as Responses from './responses';
|
|
4
2
|
import Session from '../utils/session';
|
|
3
|
+
import getConfig, { checkProductStatus } from '../config';
|
|
5
4
|
import { DataPlatform, ContentRecs, WebExperimentation } from '../products';
|
|
6
5
|
const NO_ID = 'n/a';
|
|
7
6
|
export const ProfileApiService = {
|
|
8
7
|
for: { path: '/', verb: 'get' },
|
|
9
8
|
handler: async (query, cookies) => {
|
|
9
|
+
const config = getConfig();
|
|
10
|
+
const products = checkProductStatus(config);
|
|
10
11
|
// Check if the toolkit is enabled
|
|
11
|
-
if (!
|
|
12
|
+
if (!config.HelperEnabled)
|
|
12
13
|
return Responses.NotFound;
|
|
13
14
|
// Start timer
|
|
14
15
|
let start = Date.now();
|
|
@@ -23,20 +24,20 @@ export const ProfileApiService = {
|
|
|
23
24
|
const webExId = WebExperimentation.Tools.getVisitorID(cookies);
|
|
24
25
|
const frontendId = Session.getVisitorId(cookies);
|
|
25
26
|
// Read parameters & set values
|
|
26
|
-
const pageSize =
|
|
27
|
+
const pageSize = config.OdpAudienceBatchSize;
|
|
27
28
|
const pageNumber = Math.max(stringToInt(query.get('page'), 0), 0);
|
|
28
29
|
let audiencesPageCount = 0;
|
|
29
30
|
let audiencesCount = 0;
|
|
30
31
|
// Determine audiences if needed
|
|
31
32
|
let audiences = [];
|
|
32
|
-
const odp = new DataPlatform.Client();
|
|
33
|
-
if (fetchODPAudiences && odpId) {
|
|
33
|
+
const odp = products.dataPlatform ? new DataPlatform.Client() : undefined;
|
|
34
|
+
if (odp && fetchODPAudiences && odpId) {
|
|
34
35
|
const allAudiences = await odp.getAllAudiences();
|
|
35
36
|
audiencesCount = allAudiences.length;
|
|
36
37
|
// Split the list into manageable groups
|
|
37
38
|
const chunks = [];
|
|
38
39
|
allAudiences.forEach((item, idx) => {
|
|
39
|
-
const chunkId = Math.floor(idx /
|
|
40
|
+
const chunkId = Math.floor(idx / config.OdpAudienceBatchSize);
|
|
40
41
|
chunks[chunkId] = chunks[chunkId] || [];
|
|
41
42
|
chunks[chunkId].push(item.id);
|
|
42
43
|
});
|
|
@@ -47,7 +48,7 @@ export const ProfileApiService = {
|
|
|
47
48
|
audiences = allAudiences.filter(a => userAudienceIds.includes(a.id));
|
|
48
49
|
}
|
|
49
50
|
// Fetch the profile if needed
|
|
50
|
-
const profile = fetchProfileCard && odpId ? await odp.getProfileInfo(odpId) : undefined;
|
|
51
|
+
const profile = odp && fetchProfileCard && odpId ? await odp.getProfileInfo(odpId) : undefined;
|
|
51
52
|
// Determine topics if needed
|
|
52
53
|
let topics = [];
|
|
53
54
|
if (fetchContentTopics && crId) {
|
|
@@ -64,7 +65,7 @@ export const ProfileApiService = {
|
|
|
64
65
|
rts: {
|
|
65
66
|
pageSize,
|
|
66
67
|
pageNumber,
|
|
67
|
-
audiences
|
|
68
|
+
audiences,
|
|
68
69
|
audiencesPageCount,
|
|
69
70
|
audiencesCount,
|
|
70
71
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-api-service.js","sourceRoot":"","sources":["../../src/api/profile-api-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"profile-api-service.js","sourceRoot":"","sources":["../../src/api/profile-api-service.ts"],"names":[],"mappings":"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"}
|
package/dist/client-types.d.ts
CHANGED
|
@@ -130,5 +130,18 @@ export type OptlyWebGet = {
|
|
|
130
130
|
accountId: string;
|
|
131
131
|
revision: string;
|
|
132
132
|
};
|
|
133
|
+
visitor_id: {
|
|
134
|
+
[strategy: string]: string;
|
|
135
|
+
};
|
|
136
|
+
visitor: {
|
|
137
|
+
visitorId: string;
|
|
138
|
+
source_type: string;
|
|
139
|
+
referrer: string | null;
|
|
140
|
+
first_session: boolean;
|
|
141
|
+
device_type: string;
|
|
142
|
+
device: string;
|
|
143
|
+
browser: string;
|
|
144
|
+
browserVersion: string;
|
|
145
|
+
};
|
|
133
146
|
};
|
|
134
147
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { OptimizelyOneGadget } from './optimizely-one-gadget';
|
|
1
|
+
export { OptimizelyOneGadget } from './optimizely-one-gadget/gadget';
|
|
2
2
|
export { OptimizelyOneProvider, useOptimizelyOne } from './context';
|
|
3
3
|
export { PageActivator } from './page-activator';
|
|
4
4
|
export { useIsInTestMode } from './use-test-mode';
|
package/dist/components/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
|
+
export { OptimizelyOneGadget } from './optimizely-one-gadget/gadget';
|
|
2
3
|
export { OptimizelyOneProvider, useOptimizelyOne } from './context';
|
|
3
4
|
export { PageActivator } from './page-activator';
|
|
4
5
|
export { useIsInTestMode } from './use-test-mode';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ArrowPathIcon } from '@heroicons/react/20/solid';
|
|
3
|
+
export const Notice = ({ prefix, message, isLoading = false, children }) => {
|
|
4
|
+
const PrefixComponent = prefix && _jsx("span", { className: 'oo-notice-prefix', children: prefix });
|
|
5
|
+
const Spinner = isLoading && _jsx(ArrowPathIcon, { className: 'oo-notice-spinner' });
|
|
6
|
+
return _jsxs("p", { className: 'oo-notice', children: [Spinner, PrefixComponent, message, children] });
|
|
7
|
+
};
|
|
8
|
+
export default Notice;
|
|
9
|
+
//# sourceMappingURL=_notice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_notice.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/_notice.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAEzD,MAAM,CAAC,MAAM,MAAM,GAIb,CAAC,EACH,MAAM,EACN,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,QAAQ,EACX,EAAE,EAAE;IAED,MAAM,eAAe,GAAG,MAAM,IAAI,eAAM,SAAS,EAAC,kBAAkB,YAAG,MAAM,GAAS,CAAA;IACtF,MAAM,OAAO,GAAG,SAAS,IAAI,KAAC,aAAa,IAAC,SAAS,EAAC,mBAAmB,GAAG,CAAA;IAC5E,OAAO,aAAG,SAAS,EAAC,WAAW,aACzB,OAAO,EACP,eAAe,EACf,OAAO,EACP,QAAQ,IACV,CAAA;AACR,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type OptimizelyOneGadgetProps = {
|
|
2
|
+
/**
|
|
3
|
+
* The API Route at which the companion API has been installed in your
|
|
4
|
+
* Next.JS Application.
|
|
5
|
+
*
|
|
6
|
+
* If not set, defaults to "/api/me"
|
|
7
|
+
*/
|
|
8
|
+
servicePrefix?: string;
|
|
9
|
+
/**
|
|
10
|
+
* The interval, in milliseconds, between refreshes of the content in the
|
|
11
|
+
* debug panels.
|
|
12
|
+
*
|
|
13
|
+
* If not set, defaults to 0 (no auto refresh)
|
|
14
|
+
*/
|
|
15
|
+
refreshInterval?: number;
|
|
16
|
+
/**
|
|
17
|
+
* If set, bypasses the enabled/disabled detection allowing the application
|
|
18
|
+
* to take control of the visibility of the gadget.
|
|
19
|
+
*/
|
|
20
|
+
show?: boolean;
|
|
21
|
+
showDataPlatform?: boolean;
|
|
22
|
+
showContentRecs?: boolean;
|
|
23
|
+
showWebEx?: boolean;
|
|
24
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_types.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/_types.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect } from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { UserGroupIcon } from '@heroicons/react/20/solid';
|
|
4
4
|
import useSWRInfinite from 'swr/infinite';
|
|
5
|
+
import Notice from './_notice';
|
|
5
6
|
const buildGetKey = (servicePrefix, pageSize) => {
|
|
6
7
|
const serviceURL = `${servicePrefix}?scope=audiences&limit=${pageSize}`;
|
|
7
8
|
const getKey = (pageIndex, previousPageData) => {
|
|
@@ -43,11 +44,11 @@ export const AudiencesPanel = ({ servicePrefix = '/api/me', refreshInterval = 0
|
|
|
43
44
|
}, [size, profiles]);
|
|
44
45
|
// Handle error
|
|
45
46
|
if (error)
|
|
46
|
-
return _jsx(
|
|
47
|
+
return _jsx(Notice, { message: 'There was an error loading your profile information' });
|
|
47
48
|
// Show list
|
|
48
|
-
return _jsxs(_Fragment, { children: [hasMore &&
|
|
49
|
-
return _jsxs("li", { className: 'oo-
|
|
50
|
-
})).flat() }), _jsx("p", { className: 'oo-
|
|
49
|
+
return _jsxs(_Fragment, { children: [hasMore && _jsx(Notice, { prefix: 'Please note:', message: _jsxs(_Fragment, { children: ["Showing results for the first ", size * pageSize, " audiences of ", audienceCount, ", ", _jsx("span", { onClick: () => setSize(size + 1), className: "oo-link", children: "load more" })] }) }), _jsx("ul", { className: 'oo-list', children: (profiles || []).map(profile => (profile?.rts.audiences ?? []).map(a => {
|
|
50
|
+
return _jsxs("li", { className: 'oo-list-item', children: [_jsx(UserGroupIcon, { className: 'oo-list-item-icon' }), a.name] }, "audience-" + a.id);
|
|
51
|
+
})).flat() }), _jsx("p", { className: 'oo-small', children: "Powered by: Optimizely Data Platform" }), hasMore && _jsx("p", { onClick: () => setSize(size + 1), className: 'oo-btn', children: "Load more" }), isLoading && _jsx(Notice, { isLoading: true, message: 'Loading the audiences...' }), (isValidating && !isLoading) && _jsx(Notice, { isLoading: true, message: 'Refreshing audiences' }), _jsx(Notice, { prefix: 'Please note:', message: 'Interest based audiences are updated once per hour' })] });
|
|
51
52
|
};
|
|
52
53
|
export default AudiencesPanel;
|
|
53
54
|
//# sourceMappingURL=audiences-panel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audiences-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/audiences-panel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAA0B,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"audiences-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/audiences-panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { OptimizelyOneGadgetProps } from './_types';
|
|
2
|
+
import { type FunctionComponent } from 'react';
|
|
3
|
+
import '../../styles.css';
|
|
4
|
+
/**
|
|
5
|
+
* Add an Optimizely One Demo helper to the page, which can be triggered by
|
|
6
|
+
* the "test cookie" feature of the Optimizely Web Experimentation browser
|
|
7
|
+
* extension.
|
|
8
|
+
*
|
|
9
|
+
* @param param0 The component properties
|
|
10
|
+
* @returns The component JSX
|
|
11
|
+
*/
|
|
12
|
+
export declare const OptimizelyOneGadget: FunctionComponent<OptimizelyOneGadgetProps>;
|
|
13
|
+
export default OptimizelyOneGadget;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { Fragment, useLayoutEffect, useCallback } from 'react';
|
|
4
|
+
import useCookie from '../use-cookie';
|
|
5
|
+
import { Popover, PopoverButton, PopoverPanel, Tab, TabGroup, TabList, TabPanels, TabPanel } from '@headlessui/react';
|
|
6
|
+
import { ChevronUpIcon, UserGroupIcon, TagIcon, RocketLaunchIcon, IdentificationIcon, Square3Stack3DIcon, TrophyIcon, FingerPrintIcon } from '@heroicons/react/20/solid';
|
|
7
|
+
import OptiLogo from './logo';
|
|
8
|
+
import { useIsInTestMode } from '../use-test-mode';
|
|
9
|
+
import { useSearchParams, usePathname } from 'next/navigation';
|
|
10
|
+
// Import the Panel CSS
|
|
11
|
+
import '../../styles.css';
|
|
12
|
+
// Prepare panel imports
|
|
13
|
+
import dynamic from 'next/dynamic';
|
|
14
|
+
const Panels = [
|
|
15
|
+
{
|
|
16
|
+
id: 'Profile',
|
|
17
|
+
Tab: () => _jsxs(Tab, { as: "div", className: "oo-gadget-tab-label", children: [_jsx(IdentificationIcon, { className: 'oo-gadget-tab-label-icon' }), "Profile"] }),
|
|
18
|
+
Panel: dynamic(() => import('./profile-panel'), { ssr: false }),
|
|
19
|
+
products: ['odp']
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: 'Interests',
|
|
23
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(TagIcon, { className: 'oo-gadget-tab-label-icon' }), "Interests"] }),
|
|
24
|
+
Panel: dynamic(() => import('./interests-panel'), { ssr: false }),
|
|
25
|
+
products: ['crecs']
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
id: 'Goals',
|
|
29
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(TrophyIcon, { className: 'oo-gadget-tab-label-icon' }), "Goals"] }),
|
|
30
|
+
Panel: dynamic(() => import('./goals-panel'), { ssr: false }),
|
|
31
|
+
products: ['crecs']
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
id: 'Audiences',
|
|
35
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(UserGroupIcon, { className: 'oo-gadget-tab-label-icon' }), "Audiences"] }),
|
|
36
|
+
Panel: dynamic(() => import('./audiences-panel'), { ssr: false }),
|
|
37
|
+
products: ['odp']
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
id: 'Experiments',
|
|
41
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(RocketLaunchIcon, { className: 'oo-gadget-tab-label-icon' }), "Experiments"] }),
|
|
42
|
+
Panel: dynamic(() => import('./exp-panel'), { ssr: false }),
|
|
43
|
+
products: ['webex']
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: 'Identifiers',
|
|
47
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(FingerPrintIcon, { className: 'oo-gadget-tab-label-icon' }), "Identifiers"] }),
|
|
48
|
+
Panel: dynamic(() => import('./ids-panel'), { ssr: false }),
|
|
49
|
+
products: []
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
id: 'Graph',
|
|
53
|
+
Tab: () => _jsxs(Tab, { as: "div", className: 'oo-gadget-tab-label', children: [_jsx(Square3Stack3DIcon, { className: 'oo-gadget-tab-label-icon' }), "Graph"] }),
|
|
54
|
+
Panel: dynamic(() => import('./graph-panel'), { ssr: false }),
|
|
55
|
+
products: []
|
|
56
|
+
},
|
|
57
|
+
];
|
|
58
|
+
/**
|
|
59
|
+
* Add an Optimizely One Demo helper to the page, which can be triggered by
|
|
60
|
+
* the "test cookie" feature of the Optimizely Web Experimentation browser
|
|
61
|
+
* extension.
|
|
62
|
+
*
|
|
63
|
+
* @param param0 The component properties
|
|
64
|
+
* @returns The component JSX
|
|
65
|
+
*/
|
|
66
|
+
export const OptimizelyOneGadget = ({ servicePrefix = "/api/me", refreshInterval = 0, show = undefined, showContentRecs = true, showDataPlatform = true, showWebEx = true }) => {
|
|
67
|
+
const inTestMode = useIsInTestMode();
|
|
68
|
+
const searchParams = useSearchParams();
|
|
69
|
+
const pathname = usePathname();
|
|
70
|
+
const wxProjectIdParam = searchParams.get('pid');
|
|
71
|
+
const [projectIdCookie, setProjectIdCookie, removeProjectIdCookie] = useCookie('wx.projectid');
|
|
72
|
+
const enabledProducts = [];
|
|
73
|
+
if (showContentRecs)
|
|
74
|
+
enabledProducts.push('crecs');
|
|
75
|
+
if (showDataPlatform)
|
|
76
|
+
enabledProducts.push('odp');
|
|
77
|
+
if (showWebEx)
|
|
78
|
+
enabledProducts.push('webex');
|
|
79
|
+
const removeQueryParam = useCallback((paramName) => {
|
|
80
|
+
const newParams = new URLSearchParams(searchParams.toString());
|
|
81
|
+
if (newParams.has(paramName))
|
|
82
|
+
newParams.delete(paramName);
|
|
83
|
+
const newSearch = newParams.toString();
|
|
84
|
+
const newPath = pathname + (newSearch.length > 0 ? '?' + newParams.toString() : '');
|
|
85
|
+
try {
|
|
86
|
+
window.location.href = newPath;
|
|
87
|
+
}
|
|
88
|
+
catch (e) {
|
|
89
|
+
console.log("🛑 Refreshing the page to apply the new Web Experimenation project failed, please refresh manually.");
|
|
90
|
+
}
|
|
91
|
+
}, [pathname, searchParams]);
|
|
92
|
+
useLayoutEffect(() => {
|
|
93
|
+
if (wxProjectIdParam != null && wxProjectIdParam != projectIdCookie) {
|
|
94
|
+
if (wxProjectIdParam == "")
|
|
95
|
+
removeProjectIdCookie();
|
|
96
|
+
else
|
|
97
|
+
setProjectIdCookie(wxProjectIdParam);
|
|
98
|
+
removeQueryParam('pid');
|
|
99
|
+
}
|
|
100
|
+
}, [wxProjectIdParam, projectIdCookie, removeQueryParam, removeProjectIdCookie, setProjectIdCookie]);
|
|
101
|
+
const forceHidden = show != undefined && show == false;
|
|
102
|
+
const forceShown = show != undefined && show == true;
|
|
103
|
+
if (forceHidden || (!forceShown && !inTestMode))
|
|
104
|
+
return _jsx(_Fragment, {});
|
|
105
|
+
console.groupCollapsed(`🔎 [Optimizely One Gadget] Initializing Optimizely Demo Gadget`);
|
|
106
|
+
console.log(`Optimizely One Demo API: ${servicePrefix}`);
|
|
107
|
+
console.log(`Refresh interval: ${refreshInterval == 0 ? 'DISABLED' : refreshInterval + 'ms'}`);
|
|
108
|
+
console.log(`Enabled products: ${enabledProducts.join(', ')}`);
|
|
109
|
+
console.groupEnd();
|
|
110
|
+
return _jsxs(Popover, { className: "oo-gadget", children: [_jsxs(PopoverButton, { className: 'oo-gadget-button', children: [_jsx(OptiLogo, { className: 'oo-gadget-button-logo' }), _jsx(ChevronUpIcon, { className: "oo-gadget-button-icon" })] }), _jsxs(PopoverPanel, { className: "oo-gadget-panel", children: [_jsxs("div", { className: "oo-gadget-panel-heading", children: [_jsx(IdentificationIcon, { className: 'oo-gadget-panel-heading-icon' }), "My Profile"] }), _jsxs(TabGroup, { as: Fragment, children: [_jsx(TabList, { className: "oo-gadget-tab-list", children: Panels.filter(pnl => pnl.products.length == 0 || pnl.products.every(pk => enabledProducts.includes(pk))).map(({ id: pnlId, Tab: GadgetTab }) => {
|
|
111
|
+
const pnlTabKey = 'Tab-' + pnlId;
|
|
112
|
+
return _jsx(GadgetTab, {}, pnlTabKey);
|
|
113
|
+
}) }), _jsx(TabPanels, { className: "oo-gadget-tab-container", children: Panels.filter(pnl => pnl.products.length == 0 || pnl.products.every(pk => enabledProducts.includes(pk))).map(({ id: pnlId, Panel: GadgetPanel }) => {
|
|
114
|
+
const pnlKey = 'Panel-' + pnlId;
|
|
115
|
+
return _jsx(TabPanel, { as: "div", className: "oo-gadget-tab-panel", children: _jsx(GadgetPanel, { servicePrefix: servicePrefix, refreshInterval: refreshInterval }) }, pnlKey);
|
|
116
|
+
}) })] })] })] });
|
|
117
|
+
};
|
|
118
|
+
export default OptimizelyOneGadget;
|
|
119
|
+
//# sourceMappingURL=gadget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gadget.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/gadget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { TrophyIcon
|
|
2
|
+
import { TrophyIcon } from '@heroicons/react/20/solid';
|
|
3
3
|
import useSWR from 'swr';
|
|
4
|
+
import Notice from './_notice';
|
|
4
5
|
export const GoalsPanel = ({ servicePrefix = '/api/me', refreshInterval = 2000 }) => {
|
|
5
6
|
const serviceUrl = `${servicePrefix}/cgoals`;
|
|
6
7
|
const { data, isLoading, isValidating, error } = useSWR(serviceUrl, {
|
|
@@ -13,11 +14,11 @@ export const GoalsPanel = ({ servicePrefix = '/api/me', refreshInterval = 2000 }
|
|
|
13
14
|
refreshInterval
|
|
14
15
|
});
|
|
15
16
|
if (error)
|
|
16
|
-
return _jsx(
|
|
17
|
-
const goals = (data?.goals ?? []).map(t => _jsxs("li", { className: 'oo-
|
|
17
|
+
return _jsx(Notice, { children: "There was an error loading your next best goals" });
|
|
18
|
+
const goals = (data?.goals ?? []).map(t => _jsxs("li", { className: 'oo-list-item', children: [_jsx(TrophyIcon, { className: 'oo-list-item-icon' }), t.goal, " (", `${t.score * 100}%`, ")"] }, "goal-" + t.goal));
|
|
18
19
|
if (goals.length == 0)
|
|
19
|
-
goals.push(_jsx("li", { className: 'oo-
|
|
20
|
-
return _jsxs(_Fragment, { children: [_jsx("ul", { className: 'oo-
|
|
20
|
+
goals.push(_jsx("li", { className: 'oo-list-item', children: _jsx(Notice, { children: "No goals inferred from behaviour" }) }, "no-topics"));
|
|
21
|
+
return _jsxs(_Fragment, { children: [_jsx("ul", { className: 'oo-list', children: goals }), _jsx("p", { className: 'oo-small', children: "Powered by: Optimizely Content Recommendations" }), (isValidating && !isLoading) && _jsx(Notice, { isLoading: true, children: " Refreshing goals" }), isLoading && _jsx(Notice, { isLoading: true, children: " Loading goals" })] });
|
|
21
22
|
};
|
|
22
23
|
export default GoalsPanel;
|
|
23
24
|
//# sourceMappingURL=goals-panel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goals-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/goals-panel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"goals-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/goals-panel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAiB,MAAM,2BAA2B,CAAA;AACrE,OAAO,MAAM,MAAM,KAAK,CAAA;AAExB,OAAO,MAAM,MAAM,WAAW,CAAA;AAO9B,MAAM,CAAC,MAAM,UAAU,GAAwC,CAAC,EAAE,aAAa,GAAG,SAAS,EAAE,eAAe,GAAG,IAAI,EAAE,EAAE,EAAE;IAErH,MAAM,UAAU,GAAG,GAAI,aAAc,SAAS,CAAA;IAC9C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,MAAM,CAAc,UAAU,EAAE;QAC7E,iBAAiB,EAAE,IAAI;QACvB,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACtC,IAAI,CAAC,CAAC,CAAC,EAAE;gBACL,MAAM,IAAI,KAAK,CAAC,GAAI,CAAC,CAAC,MAAO,KAAM,CAAC,CAAC,UAAW,EAAE,CAAC,CAAA;YACvD,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC,CAAC;QACF,eAAe;KAClB,CAAC,CAAA;IAEF,IAAI,KAAK;QACL,OAAO,KAAC,MAAM,kEAAyD,CAAA;IAE3E,MAAM,KAAK,GAAmB,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,cAAI,SAAS,EAAC,cAAc,aACnF,KAAC,UAAU,IAAC,SAAS,EAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,IAAI,QAAM,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,UADY,OAAO,GAAC,CAAC,CAAC,IAAI,CAEtG,CAAC,CAAA;IACN,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,aAAI,SAAS,EAAC,cAAc,YAAiB,KAAC,MAAM,mDAA0C,IAA7D,WAAW,CAAuD,CAAC,CAAA;IAEnH,OAAO,8BACH,aAAI,SAAS,EAAC,SAAS,YAAG,KAAK,GAAO,EACtC,YAAG,SAAS,EAAC,UAAU,+DAAmD,EACxE,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,KAAC,MAAM,IAAC,SAAS,wCAA2B,EAC5E,SAAS,IAAI,KAAC,MAAM,IAAC,SAAS,qCAAwB,IACzD,CAAA;AACP,CAAC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import useSWR from 'swr';
|
|
3
3
|
import Link from 'next/link';
|
|
4
|
+
import Notice from './_notice';
|
|
4
5
|
export const GraphPanel = ({ servicePrefix = '/api/me', refreshInterval = 30000 }) => {
|
|
5
6
|
const id = `${servicePrefix}/graph`;
|
|
6
7
|
const { data, isLoading, error } = useSWR(id, {
|
|
@@ -13,10 +14,10 @@ export const GraphPanel = ({ servicePrefix = '/api/me', refreshInterval = 30000
|
|
|
13
14
|
})
|
|
14
15
|
});
|
|
15
16
|
if (isLoading)
|
|
16
|
-
return _jsx(
|
|
17
|
+
return _jsx(Notice, { isLoading: true, message: 'Loading Optimizely Graph information...' });
|
|
17
18
|
if (error)
|
|
18
|
-
return _jsx(
|
|
19
|
-
return _jsxs(_Fragment, { children: [_jsxs("dl", { className: 'oo-
|
|
19
|
+
return _jsx(Notice, { message: 'There was an error loading Optimizely Graph information' });
|
|
20
|
+
return _jsxs(_Fragment, { children: [_jsxs("dl", { className: 'oo-definitions', children: [_jsx("dt", { className: 'oo-definitions-term', children: "Publishing changes to:" }), _jsx("dd", { className: 'oo-definitions-data', children: _jsx("ul", { className: 'oo-list', children: (data?.hooks || []).map(hook => _jsxs("li", { className: 'oo-list-item', children: [hook.method && _jsxs("span", { className: 'oo-text-amber-800', children: ["(", hook.method?.toLowerCase() ?? '', ") "] }), hook.url, hook.hasQueryParams && _jsx(_Fragment, { children: "?..." })] }, `webhook-${hook.url}`)) }) }), _jsx("dt", { className: 'oo-definitions-term', children: "Exposing content from:" }), _jsx("dd", { className: 'oo-definitions-data', children: _jsx("ul", { className: 'oo-list', children: (data?.sources || []).map(source => _jsxs("li", { className: 'oo-list-item', children: [updateLabel(source.label), ", available languages: ", source.languages.join(", ")] }, `source-${source.label}`)) }) })] }), _jsx("p", { className: 'oo-pt-4 oo-text-[14px]', children: _jsx(Link, { className: 'oo-link', href: "https://cg.optimizely.com/app/portal/", target: '_new', children: "Login to Optimizely Graph" }) })] });
|
|
20
21
|
};
|
|
21
22
|
function updateLabel(label) {
|
|
22
23
|
if (label == "default")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/graph-panel.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,MAAM,KAAK,CAAA;AAExB,OAAO,IAAI,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"graph-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/graph-panel.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,MAAM,KAAK,CAAA;AAExB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,MAAM,MAAM,WAAW,CAAA;AAO9B,MAAM,CAAC,MAAM,UAAU,GAAwC,CAAC,EAAE,aAAa,GAAG,SAAS,EAAE,eAAe,GAAG,KAAK,EAAC,EAAE,EAAE;IAErH,MAAM,EAAE,GAAG,GAAI,aAAc,QAAQ,CAAA;IACrC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,CAAc,EAAE,EAAE;QACvD,iBAAiB,EAAE,IAAI;QACvB,eAAe;QACf,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAClC,IAAI,CAAC,CAAC,CAAC,EAAE;gBACL,MAAM,IAAI,KAAK,CAAC,GAAI,CAAC,CAAC,MAAO,KAAM,CAAC,CAAC,UAAU,EAAE,CAAC,CAAA;YACtD,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC,CAAC;KACL,CAAC,CAAA;IAEF,IAAI,SAAS;QACT,OAAO,KAAC,MAAM,IAAC,SAAS,QAAC,OAAO,EAAC,yCAAyC,GAAG,CAAA;IAEjF,IAAI,KAAK;QACL,OAAO,KAAC,MAAM,IAAC,OAAO,EAAC,yDAAyD,GAAG,CAAA;IAEvF,OAAO,8BACH,cAAI,SAAS,EAAC,gBAAgB,aAC1B,aAAI,SAAS,EAAC,qBAAqB,uCAA4B,EAC/D,aAAI,SAAS,EAAC,qBAAqB,YAC/B,aAAI,SAAS,EAAC,SAAS,YACjB,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,cAAI,SAAS,EAAC,cAAc,aAAiC,IAAI,CAAC,MAAM,IAAI,gBAAM,SAAS,EAAC,mBAAmB,kBAAI,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAW,EAAG,IAAI,CAAC,GAAG,EAAI,IAAI,CAAC,cAAc,IAAI,qCAAS,KAA3K,WAAY,IAAI,CAAC,GAAI,EAAE,CAA0J,CAAC,GACrP,GACJ,EACL,aAAI,SAAS,EAAC,qBAAqB,uCAA4B,EAC/D,aAAI,SAAS,EAAC,qBAAqB,YAC/B,aAAI,SAAS,EAAC,SAAS,YACjB,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,cAAI,SAAS,EAAC,cAAc,aAAmC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA2B,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAA5G,UAAW,MAAM,CAAC,KAAK,EAAE,CAAyF,CAAC,GAC1L,GACJ,IACJ,EACL,YAAG,SAAS,EAAC,wBAAwB,YAAC,KAAC,IAAI,IAAC,SAAS,EAAC,SAAS,EAAC,IAAI,EAAC,uCAAuC,EAAC,MAAM,EAAC,MAAM,0CAAiC,GAAI,IAChK,CAAA;AACP,CAAC,CAAA;AAED,SAAS,WAAW,CAAC,KAAa;IAE9B,IAAI,KAAK,IAAI,SAAS;QAClB,OAAO,gBAAgB,CAAA;IAC3B,OAAO,KAAK,CAAA;AAChB,CAAC;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
1
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
3
|
import { usePathname } from 'next/navigation';
|
|
3
4
|
import useSWR from 'swr';
|
|
5
|
+
import { useOptimizelyOne } from '../context';
|
|
6
|
+
import Notice from './_notice';
|
|
4
7
|
export const IdsPanel = ({ servicePrefix = '/api/me', refreshInterval = 2000 }) => {
|
|
5
8
|
const currentPath = usePathname();
|
|
9
|
+
const opti = useOptimizelyOne();
|
|
10
|
+
const webEx = opti.getService('webex')?.getBrowserApi();
|
|
6
11
|
const ids = `${servicePrefix}?scope=ids`;
|
|
7
12
|
const { data: profile, isLoading, error } = useSWR(ids, {
|
|
8
13
|
revalidateOnMount: true,
|
|
@@ -14,10 +19,10 @@ export const IdsPanel = ({ servicePrefix = '/api/me', refreshInterval = 2000 })
|
|
|
14
19
|
})
|
|
15
20
|
});
|
|
16
21
|
if (isLoading)
|
|
17
|
-
return _jsx(
|
|
22
|
+
return _jsx(Notice, { message: 'Loading your profile information...' });
|
|
18
23
|
if (error)
|
|
19
|
-
return _jsx(
|
|
20
|
-
return _jsx(_Fragment, { children: _jsxs("dl", { className: 'oo-
|
|
24
|
+
return _jsx(Notice, { message: 'There was an error loading your profile information' });
|
|
25
|
+
return _jsx(_Fragment, { children: _jsxs("dl", { className: 'oo-definitions', children: [_jsx("dt", { className: 'oo-definitions-term', children: "Frontend (Feature Experimentation):" }), _jsx("dd", { className: 'oo-definitions-data', children: profile?.ids.frontend ?? 'n/a' }), _jsx("dt", { className: 'oo-definitions-term', children: "Web Experimentation:" }), _jsx("dd", { className: 'oo-definitions-data', children: webEx && webEx.get ? webEx.get('visitor').visitorId : 'n/a' }), _jsx("dt", { className: 'oo-definitions-term', children: "Content Intelligence:" }), _jsx("dd", { className: 'oo-definitions-data', children: profile?.ids.contentIntelligence ?? 'n/a' }), _jsx("dt", { className: 'oo-definitions-term', children: "Data Platform:" }), _jsx("dd", { className: 'oo-definitions-data', children: profile?.ids.dataPlatform ?? 'n/a' }), _jsx("dt", { className: 'oo-definitions-term', children: "Current path:" }), _jsx("dd", { className: 'oo-definitions-data', children: currentPath })] }) });
|
|
21
26
|
};
|
|
22
27
|
export default IdsPanel;
|
|
23
28
|
//# sourceMappingURL=ids-panel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/ids-panel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ids-panel.js","sourceRoot":"","sources":["../../../src/components/optimizely-one-gadget/ids-panel.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,MAAM,MAAM,KAAK,CAAA;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,OAAO,MAAM,MAAM,WAAW,CAAA;AAO9B,MAAM,CAAC,MAAM,QAAQ,GAAsC,CAAC,EAAE,aAAa,GAAG,SAAS,EAAE,eAAe,GAAG,IAAI,EAAC,EAAE,EAAE;IAEhH,MAAM,WAAW,GAAG,WAAW,EAAE,CAAA;IACjC,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IAEvD,MAAM,GAAG,GAAG,GAAI,aAAc,YAAY,CAAA;IAC1C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,CAAa,GAAG,EAAE;QAChE,iBAAiB,EAAE,IAAI;QACvB,eAAe;QACf,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAC/B,IAAI,CAAC,CAAC,CAAC,EAAE;gBACL,MAAM,IAAI,KAAK,CAAC,GAAI,CAAC,CAAC,MAAO,KAAM,CAAC,CAAC,UAAU,EAAE,CAAC,CAAA;YACtD,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC,CAAC;KACL,CAAC,CAAA;IAEF,IAAI,SAAS;QACT,OAAO,KAAC,MAAM,IAAC,OAAO,EAAC,qCAAqC,GAAG,CAAA;IAEnE,IAAI,KAAK;QACL,OAAO,KAAC,MAAM,IAAC,OAAO,EAAC,qDAAqD,GAAG,CAAA;IAEnF,OAAO,4BACH,cAAI,SAAS,EAAC,gBAAgB,aAC1B,aAAI,SAAS,EAAC,qBAAqB,oDAAyC,EAC5E,aAAI,SAAS,EAAC,qBAAqB,YAAG,OAAO,EAAE,GAAG,CAAC,QAAQ,IAAI,KAAK,GAAO,EAC3E,aAAI,SAAS,EAAC,qBAAqB,qCAA0B,EAC7D,aAAI,SAAS,EAAC,qBAAqB,YAAG,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,GAAO,EACxG,aAAI,SAAS,EAAC,qBAAqB,sCAA2B,EAC9D,aAAI,SAAS,EAAC,qBAAqB,YAAG,OAAO,EAAE,GAAG,CAAC,mBAAmB,IAAI,KAAK,GAAO,EACtF,aAAI,SAAS,EAAC,qBAAqB,+BAAoB,EACvD,aAAI,SAAS,EAAC,qBAAqB,YAAG,OAAO,EAAE,GAAG,CAAC,YAAY,IAAI,KAAK,GAAO,EAC/E,aAAI,SAAS,EAAC,qBAAqB,8BAAmB,EACtD,aAAI,SAAS,EAAC,qBAAqB,YAAG,WAAW,GAAO,IACvD,GACN,CAAA;AACP,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
|