@remkoj/optimizely-cms-react 5.0.0 → 5.0.2
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/components/cms-editable/index.js +9 -2
- package/dist/components/cms-editable/index.js.map +1 -1
- package/dist/components/rich-text/components.d.ts +10 -0
- package/dist/components/rich-text/components.js +19 -0
- package/dist/components/rich-text/components.js.map +1 -1
- package/dist/components/rich-text/index.d.ts +3 -4
- package/dist/components/rich-text/index.js +15 -9
- package/dist/components/rich-text/index.js.map +1 -1
- package/dist/components/rich-text/types.d.ts +9 -6
- package/dist/components/type-utils.d.ts +20 -11
- package/dist/components.d.ts +1 -1
- package/dist/context/client.d.ts +1 -0
- package/dist/context/client.js +12 -0
- package/dist/context/client.js.map +1 -1
- package/dist/context/rsc.d.ts +4 -0
- package/dist/context/rsc.js +10 -0
- package/dist/context/rsc.js.map +1 -1
- package/dist/context/types.d.ts +2 -0
- package/package.json +7 -7
|
@@ -9,10 +9,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
9
9
|
* @returns
|
|
10
10
|
*/
|
|
11
11
|
export const CmsEditable = ({ ctx, forwardCtx, as, cmsId, cmsFieldName, children, key, forceBlockId, currentContent, editType, ...props }) => {
|
|
12
|
-
const { inEditMode, isDebugOrDevelopment, isDebug, editableContent } = ctx || {
|
|
12
|
+
const { inEditMode, isDebugOrDevelopment, isDebug, editableContent, editableContentIsExperience, } = ctx || {
|
|
13
13
|
inEditMode: false,
|
|
14
14
|
isDebug: true,
|
|
15
15
|
isDebugOrDevelopment: true,
|
|
16
|
+
editableContentIsExperience: false,
|
|
16
17
|
};
|
|
17
18
|
const DefaultElement = as || 'div';
|
|
18
19
|
if (isDebugOrDevelopment && inEditMode && !cmsFieldName && !cmsId) {
|
|
@@ -26,6 +27,12 @@ export const CmsEditable = ({ ctx, forwardCtx, as, cmsId, cmsFieldName, children
|
|
|
26
27
|
? editableContent?.key == currentContent.key
|
|
27
28
|
: true
|
|
28
29
|
: false;
|
|
30
|
+
// If we're rendering for an experience, we don't need to inject property names, as the
|
|
31
|
+
// experience editor only deals with property ids - injecting property names will cause
|
|
32
|
+
// it to outline incorrect items.
|
|
33
|
+
const dataEpiPropertyName = editableContentIsExperience
|
|
34
|
+
? undefined
|
|
35
|
+
: (cmsFieldName ?? undefined);
|
|
29
36
|
const itemProps = addEditProps
|
|
30
37
|
? {
|
|
31
38
|
...props,
|
|
@@ -34,7 +41,7 @@ export const CmsEditable = ({ ctx, forwardCtx, as, cmsId, cmsFieldName, children
|
|
|
34
41
|
// We assume GUIDs are represented as 32 char long strings
|
|
35
42
|
'data-epi-content-id': cmsId && cmsId.length == 32 ? cmsId : undefined,
|
|
36
43
|
// We pass through the property name if provided
|
|
37
|
-
'data-epi-property-name':
|
|
44
|
+
'data-epi-property-name': dataEpiPropertyName,
|
|
38
45
|
// Configure the rendition of the property editor
|
|
39
46
|
'data-epi-property-edittype': editType ?? undefined,
|
|
40
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/cms-editable/index.tsx"],"names":[],"mappings":";AAyEA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,WAAW,GAA6B,CAAyB,EAC5E,GAAG,EACH,UAAU,EACV,EAAE,EACF,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,GAAG,EACH,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,GAAG,KAAK,EAC+B,EAAE,EAAE;IAC3C,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/cms-editable/index.tsx"],"names":[],"mappings":";AAyEA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,WAAW,GAA6B,CAAyB,EAC5E,GAAG,EACH,UAAU,EACV,EAAE,EACF,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,GAAG,EACH,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,GAAG,KAAK,EAC+B,EAAE,EAAE;IAC3C,MAAM,EACJ,UAAU,EACV,oBAAoB,EACpB,OAAO,EACP,eAAe,EACf,2BAA2B,GAC5B,GAAG,GAAG,IAAI;QACT,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,IAAI;QACb,oBAAoB,EAAE,IAAI;QAC1B,2BAA2B,EAAE,KAAK;KACnC,CAAA;IACD,MAAM,cAAc,GAAG,EAAE,IAAI,KAAK,CAAA;IAElC,IAAI,oBAAoB,IAAI,UAAU,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,EAAE,CAAC;QAClE,OAAO,CAAC,IAAI,CACV,4FAA4F,CAC7F,CAAA;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC,cAAc;YACd,CAAC,CAAC,eAAe,EAAE,GAAG,IAAI,cAAc,CAAC,GAAG;YAC5C,CAAC,CAAC,IAAI;QACR,CAAC,CAAC,KAAK,CAAA;IAET,uFAAuF;IACvF,uFAAuF;IACvF,iCAAiC;IACjC,MAAM,mBAAmB,GAAG,2BAA2B;QACrD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,YAAY,IAAI,SAAS,CAAC,CAAA;IAE/B,MAAM,SAAS,GAAwB,YAAY;QACjD,CAAC,CAAC;YACE,GAAG,KAAK;YACR,oFAAoF;YACpF,mBAAmB,EACjB,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACnE,0DAA0D;YAC1D,qBAAqB,EAAE,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACtE,gDAAgD;YAChD,wBAAwB,EAAE,mBAAmB;YAC7C,iDAAiD;YACjD,4BAA4B,EAAE,QAAQ,IAAI,SAAS;SACpD;QACH,CAAC,CAAC;YACE,GAAG,KAAK;SACT,CAAA;IAEL,IAAI,UAAU,KAAK,IAAI;QAAE,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA;IAC/C,IAAI,OAAO,UAAU,IAAI,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QACxD,SAAS,CAAC,UAAU,CAAC,GAAG,GAAG,CAAA;IAE7B,OAAO,KAAC,cAAc,OAAK,SAAS,YAAG,QAAQ,GAAkB,CAAA;AACnE,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -23,6 +23,16 @@ export declare function createHtmlComponent<E extends keyof JSX.IntrinsicElement
|
|
|
23
23
|
export declare const DefaultTextNode: FunctionComponent<PropsWithOptionalContext<{
|
|
24
24
|
node: TextNode;
|
|
25
25
|
}>>;
|
|
26
|
+
/**
|
|
27
|
+
* Default component for Rich Text elements that should not be part of the HTML fragment
|
|
28
|
+
* and should not be rendered if they are.
|
|
29
|
+
*
|
|
30
|
+
* @param param0 The component parameters
|
|
31
|
+
* @returns The children, if any
|
|
32
|
+
*/
|
|
33
|
+
export declare const DefaultNoRenderNode: FunctionComponent<PropsWithOptionalContext<PropsWithChildren<{
|
|
34
|
+
node: TypedNode;
|
|
35
|
+
}>>>;
|
|
26
36
|
/**
|
|
27
37
|
* A default component dictionary that allows to serialize the structured HTML
|
|
28
38
|
* into React, using the component library shared across the react SDK.
|
|
@@ -60,6 +60,19 @@ export const DefaultTextNode = ({ ctx, node }) => {
|
|
|
60
60
|
console.warn('🟠 [Rich Text] Text node with unsupported additional properties:', unsupportedProps.join(', '));
|
|
61
61
|
return decodeHTML(node.text);
|
|
62
62
|
};
|
|
63
|
+
/**
|
|
64
|
+
* Default component for Rich Text elements that should not be part of the HTML fragment
|
|
65
|
+
* and should not be rendered if they are.
|
|
66
|
+
*
|
|
67
|
+
* @param param0 The component parameters
|
|
68
|
+
* @returns The children, if any
|
|
69
|
+
*/
|
|
70
|
+
export const DefaultNoRenderNode = ({ children, ctx, node }) => {
|
|
71
|
+
if (ctx?.isDebugOrDevelopment) {
|
|
72
|
+
console.warn(`🟠 [Rich Text] Not rendering ${node.type} to prevent React/JSX errors`);
|
|
73
|
+
}
|
|
74
|
+
return children;
|
|
75
|
+
};
|
|
63
76
|
/**
|
|
64
77
|
* A default component dictionary that allows to serialize the structured HTML
|
|
65
78
|
* into React, using the component library shared across the react SDK.
|
|
@@ -73,6 +86,12 @@ export const DefaultComponents = [
|
|
|
73
86
|
}),
|
|
74
87
|
},
|
|
75
88
|
{ type: 'RichText/text', component: DefaultTextNode },
|
|
89
|
+
// Catch elements that should not be in the content
|
|
90
|
+
{ type: 'RichText/html', component: DefaultNoRenderNode },
|
|
91
|
+
{ type: 'RichText/head', component: DefaultNoRenderNode },
|
|
92
|
+
{ type: 'RichText/meta', component: DefaultNoRenderNode },
|
|
93
|
+
{ type: 'RichText/title', component: DefaultNoRenderNode },
|
|
94
|
+
{ type: 'RichText/body', component: DefaultNoRenderNode },
|
|
76
95
|
// Aliased tags
|
|
77
96
|
{ type: 'RichText/paragraph', component: createHtmlComponent('p') },
|
|
78
97
|
{ type: 'RichText/heading-one', component: createHtmlComponent('h1') },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/components/rich-text/components.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/components/rich-text/components.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type {
|
|
3
|
-
import { type PropsWithContext } from '../../context/types.js';
|
|
1
|
+
import type { RichTextImplProps } from './types.js';
|
|
2
|
+
import type { ElementWithChildrenType } from '../type-utils.js';
|
|
4
3
|
export * from './types.js';
|
|
5
|
-
export declare const RichText:
|
|
4
|
+
export declare const RichText: <ET extends ElementWithChildrenType>({ factory, text, className, as: Wrapper, debug, noWrapper, cmsFieldName, cmsId, ctx, children, ...props }: RichTextImplProps<ET>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -4,27 +4,33 @@ import { DefaultComponentFactory } from '../../factory/default.js';
|
|
|
4
4
|
import { DefaultComponents, DefaultTextNode, createHtmlComponent, } from './components.js';
|
|
5
5
|
import { CmsEditable } from '../cms-editable/index.js';
|
|
6
6
|
export * from './types.js';
|
|
7
|
-
export const RichText = ({ factory, text = '{ "type": "richText" }', className = 'rich-text', as: Wrapper = 'div', debug = false, noWrapper = false, cmsFieldName = null, cmsId = null, ctx, ...props }) => {
|
|
7
|
+
export const RichText = ({ factory, text = '{ "type": "richText" }', className = 'rich-text', as: Wrapper = 'div', debug = false, noWrapper = false, cmsFieldName = null, cmsId = null, ctx, children, ...props }) => {
|
|
8
8
|
const id = Utils.getRandomId('rich-text');
|
|
9
9
|
const richTextFactory = ctx.factory ?? factory ?? new DefaultComponentFactory(DefaultComponents);
|
|
10
|
+
const isDebug = ctx.isDebug || debug;
|
|
10
11
|
try {
|
|
11
12
|
const data = Utils.processNodeInput(text);
|
|
12
|
-
const textContent =
|
|
13
|
+
const textContent = data?.children?.map((child, idx) => {
|
|
13
14
|
const elementId = id + '::' + idx;
|
|
14
15
|
return (_jsx(RichTextElement, { factory: richTextFactory, node: child, idPrefix: elementId + '::', ctx: ctx }, elementId));
|
|
15
|
-
});
|
|
16
|
-
if (
|
|
16
|
+
}) || children;
|
|
17
|
+
if (cmsId || cmsFieldName)
|
|
18
|
+
return (_jsx(CmsEditable, { as: (Wrapper ?? 'div'), className: className, cmsId: cmsId || undefined, cmsFieldName: cmsFieldName || undefined, ctx: ctx, ...props, children: textContent }));
|
|
19
|
+
if (noWrapper || !Wrapper)
|
|
17
20
|
return _jsx(_Fragment, { children: textContent });
|
|
18
|
-
return (
|
|
21
|
+
return (
|
|
22
|
+
//@ts-expect-error
|
|
23
|
+
_jsx(Wrapper, { className: className, ...props, children: textContent }));
|
|
19
24
|
}
|
|
20
25
|
catch {
|
|
21
|
-
if (
|
|
26
|
+
if (isDebug)
|
|
22
27
|
console.warn('🟠 [Rich Text] Invalid rich text received: ', text);
|
|
23
|
-
return Object.getOwnPropertyNames(props).length > 0 ? (_jsx("div", { className: className, ...props })) :
|
|
28
|
+
return Object.getOwnPropertyNames(props).length > 0 ? (_jsx("div", { className: className, ...props, children: children })) : (_jsx(_Fragment, { children: children }));
|
|
24
29
|
}
|
|
25
30
|
};
|
|
26
31
|
//#region Supportive React components
|
|
27
32
|
const RichTextElement = ({ factory, node, idPrefix, debug, ctx }) => {
|
|
33
|
+
const isDebug = ctx.isDebug || debug;
|
|
28
34
|
// Render text
|
|
29
35
|
if (Utils.isText(node)) {
|
|
30
36
|
if (node.text.length == 0)
|
|
@@ -34,7 +40,7 @@ const RichTextElement = ({ factory, node, idPrefix, debug, ctx }) => {
|
|
|
34
40
|
}
|
|
35
41
|
// Ignore incorrect data
|
|
36
42
|
if (!Utils.isTypedNode(node)) {
|
|
37
|
-
if (
|
|
43
|
+
if (isDebug)
|
|
38
44
|
console.warn('🟠 [Rich Text] Invalid rich text element data received:', node);
|
|
39
45
|
return null;
|
|
40
46
|
}
|
|
@@ -48,7 +54,7 @@ const RichTextElement = ({ factory, node, idPrefix, debug, ctx }) => {
|
|
|
48
54
|
// Resolve component (and add to factory if not yet present)
|
|
49
55
|
let Component = factory?.resolve(`RichText/${node.type}`);
|
|
50
56
|
if (!Component) {
|
|
51
|
-
if (
|
|
57
|
+
if (isDebug)
|
|
52
58
|
console.warn(`🟠 [Rich Text] No renderer for node type, using and registering HtmlComponent for "${node.type}": RichText/${node.type}`);
|
|
53
59
|
Component = createHtmlComponent(node.type);
|
|
54
60
|
factory?.register(`RichText/${node.type}`, Component);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/rich-text/index.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/rich-text/index.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAGtD,cAAc,YAAY,CAAA;AAE1B,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAqC,EAC3D,OAAO,EACP,IAAI,GAAG,wBAAwB,EAC/B,SAAS,GAAG,WAAW,EACvB,EAAE,EAAE,OAAO,GAAG,KAAW,EACzB,KAAK,GAAG,KAAK,EACb,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,IAAI,EACnB,KAAK,GAAG,IAAI,EACZ,GAAG,EACH,QAAQ,EACR,GAAG,KAAK,EACc,EAAE,EAAE;IAC1B,MAAM,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;IACzC,MAAM,eAAe,GACnB,GAAG,CAAC,OAAO,IAAI,OAAO,IAAI,IAAI,uBAAuB,CAAC,iBAAiB,CAAC,CAAA;IAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,KAAK,CAAA;IAEpC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,WAAW,GACf,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,GAAG,GAAG,CAAA;YACjC,OAAO,CACL,KAAC,eAAe,IAEd,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,SAAS,GAAG,IAAI,EAC1B,GAAG,EAAE,GAAG,IAJH,SAAS,CAKd,CACH,CAAA;QACH,CAAC,CAAC,IAAI,QAAQ,CAAA;QAEhB,IAAI,KAAK,IAAI,YAAY;YACvB,OAAO,CACL,KAAC,WAAW,IACV,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,CAA6C,EAClE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,IAAI,SAAS,EACzB,YAAY,EAAE,YAAY,IAAI,SAAS,EACvC,GAAG,EAAE,GAAG,KACJ,KAAK,YAER,WAAW,GACA,CACf,CAAA;QAEH,IAAI,SAAS,IAAI,CAAC,OAAO;YAAE,OAAO,4BAAG,WAAW,GAAI,CAAA;QAEpD,OAAO;QACL,kBAAkB;QAClB,KAAC,OAAO,IAAC,SAAS,EAAE,SAAS,KAAM,KAAK,YACrC,WAAW,GACJ,CACX,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,IAAI,CAAC,CAAA;QACnE,OAAO,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACpD,cAAK,SAAS,EAAE,SAAS,KAAM,KAAK,YACjC,QAAQ,GACL,CACP,CAAC,CAAC,CAAC,CACF,4BAAG,QAAQ,GAAI,CAChB,CAAA;IACH,CAAC;AACH,CAAC,CAAA;AAED,qCAAqC;AACrC,MAAM,eAAe,GAEjB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE;IAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,KAAK,CAAA;IAEpC,cAAc;IACd,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACtC,MAAM,aAAa,GAAG,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,IAAI,eAAe,CAAA;QAC1E,OAAO,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,GAAI,CAAA;IAChD,CAAC;IAED,wBAAwB;IACxB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CACV,yDAAyD,EACzD,IAAI,CACL,CAAA;QACH,OAAO,IAAI,CAAA;IACb,CAAC;IAED,mBAAmB;IACnB,MAAM,SAAS,GACb,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACvC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,QAAQ,GAAG,GAAG,CAAA;YAChC,OAAO,CACL,KAAC,eAAe,IAEd,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,SAAS,GAAG,IAAI,EAC1B,GAAG,EAAE,GAAG,IAJH,SAAS,CAKd,CACH,CAAA;QACH,CAAC,CAAC;QACJ,CAAC,CAAC,SAAS,CAAA;IAEf,4DAA4D;IAC5D,IAAI,SAAS,GAAG,OAAO,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,OAAO;YACT,OAAO,CAAC,IAAI,CACV,sFAAsF,IAAI,CAAC,IAAI,eAAe,IAAI,CAAC,IAAI,EAAE,CAC1H,CAAA;QACH,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAmC,CAAC,CAAA;QACzE,OAAO,EAAE,QAAQ,CAAC,YAAY,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAA;IACvD,CAAC;IAED,mBAAmB;IACnB,OAAO,CACL,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,YAC5B,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,GAChD,CACb,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { FunctionComponent } from "react";
|
|
2
2
|
import type { ComponentFactory } from "../../factory/types.js";
|
|
3
|
-
import type { PropsWithOptionalContext } from "../../context/types.js";
|
|
4
|
-
import type {
|
|
5
|
-
export type RichTextProps = {
|
|
3
|
+
import type { PropsWithOptionalContext, PropsWithContext } from "../../context/types.js";
|
|
4
|
+
import type { ElementProps, ElementWithChildrenType } from "../type-utils.js";
|
|
5
|
+
export type RichTextProps<ET extends ElementWithChildrenType> = {
|
|
6
6
|
/**
|
|
7
7
|
* The component factory used for this rich text content
|
|
8
8
|
*
|
|
@@ -22,9 +22,11 @@ export type RichTextProps = {
|
|
|
22
22
|
* Set the component type of the wrapper to use, defaults to a 'div'
|
|
23
23
|
* element when not defined
|
|
24
24
|
*/
|
|
25
|
-
as?:
|
|
25
|
+
as?: ET | null;
|
|
26
26
|
/**
|
|
27
27
|
* Control the debugging output
|
|
28
|
+
*
|
|
29
|
+
* @deprecated The debug value from the context will be used
|
|
28
30
|
*/
|
|
29
31
|
debug?: boolean;
|
|
30
32
|
/**
|
|
@@ -41,7 +43,8 @@ export type RichTextProps = {
|
|
|
41
43
|
*/
|
|
42
44
|
cmsId?: string | null;
|
|
43
45
|
};
|
|
44
|
-
export type RichTextComponent =
|
|
46
|
+
export type RichTextComponent = <ET extends ElementWithChildrenType>(props: PropsWithOptionalContext<RichTextProps<ET>>) => ReturnType<FunctionComponent>;
|
|
47
|
+
export type RichTextImplProps<ET extends ElementWithChildrenType> = PropsWithContext<RichTextProps<ET> & Omit<ElementProps<ET>, keyof RichTextProps<ET>>>;
|
|
45
48
|
export type RichTextElementProps = Readonly<{
|
|
46
49
|
debug?: boolean;
|
|
47
50
|
factory?: ComponentFactory;
|
|
@@ -1,4 +1,23 @@
|
|
|
1
|
-
import { GenericContext } from "../rsc.js";
|
|
1
|
+
import type { GenericContext } from "../rsc.js";
|
|
2
|
+
import type { PropsWithChildren } from "react";
|
|
3
|
+
/**
|
|
4
|
+
* Define an element as a React Component, React ExoticComponent or string name
|
|
5
|
+
* representing a HTML Element (e.g. "div", "a", etc...), this value can be used
|
|
6
|
+
* as first argument of React.createElement()
|
|
7
|
+
*/
|
|
8
|
+
export type ElementType = (React.ComponentType<any>) | (React.ExoticComponent<any>) | (keyof JSX.IntrinsicElements);
|
|
9
|
+
/**
|
|
10
|
+
* Define an element as a React Component, React ExoticComponent or string name
|
|
11
|
+
* representing a HTML Element (e.g. "div", "a", etc...), this value can be used
|
|
12
|
+
* as first argument of React.createElement()
|
|
13
|
+
*
|
|
14
|
+
* The type must support children
|
|
15
|
+
*/
|
|
16
|
+
export type ElementWithChildrenType = React.ComponentType<PropsWithChildren> | React.ExoticComponent<PropsWithChildren> | keyof Omit<JSX.IntrinsicElements, 'meta' | 'img' | 'video' | 'audio'>;
|
|
17
|
+
/**
|
|
18
|
+
* The properties type of an ElementType
|
|
19
|
+
*/
|
|
20
|
+
export type ElementProps<T extends ElementType> = T extends keyof JSX.IntrinsicElements ? React.HTMLProps<JSX.IntrinsicElements[T]> : React.ComponentProps<T>;
|
|
2
21
|
/**
|
|
3
22
|
* Tests if K is a property of T - if so: it is the type of
|
|
4
23
|
* T[K]; if not: it is equal to never
|
|
@@ -13,10 +32,6 @@ export type TypeIfPropExists<T extends ElementType, K, U> = K extends keyof Elem
|
|
|
13
32
|
* Defines the type to be T or an array of T
|
|
14
33
|
*/
|
|
15
34
|
export type MayBeArray<T> = T | T[];
|
|
16
|
-
/**
|
|
17
|
-
* The properties type of an ElementType
|
|
18
|
-
*/
|
|
19
|
-
export type ElementProps<T extends ElementType> = T extends keyof JSX.IntrinsicElements ? React.HTMLProps<JSX.IntrinsicElements[T]> : React.ComponentProps<T>;
|
|
20
35
|
/**
|
|
21
36
|
* The union of property names of an Element that may receive child elements
|
|
22
37
|
*/
|
|
@@ -26,12 +41,6 @@ export type ElementChildrenProps<T extends ElementType> = keyof {
|
|
|
26
41
|
export type GenericContextProps<T extends ElementType> = keyof {
|
|
27
42
|
[P in keyof ElementProps<T> as GenericContext extends ElementProps<T>[P] ? P : never]: ElementProps<T>[P];
|
|
28
43
|
};
|
|
29
|
-
/**
|
|
30
|
-
* Define an element as a React Component, React ExoticComponent or string name
|
|
31
|
-
* representing a HTML Element (e.g. "div", "a", etc...), this value can be used
|
|
32
|
-
* as first argument of React.createElement()
|
|
33
|
-
*/
|
|
34
|
-
export type ElementType = (React.ComponentType<any>) | (React.ExoticComponent<any>) | (keyof JSX.IntrinsicElements);
|
|
35
44
|
/**
|
|
36
45
|
* Reserved Element properties that may not be passed to CmsContentArea wrappers, as these are auto-injected
|
|
37
46
|
*/
|
package/dist/components.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* deprecated, use either `@remkoj/optimizely-cms-react` or
|
|
7
7
|
* `@remkoj/optimizely-cms-react/rsc`, dependingn on your context
|
|
8
8
|
*/
|
|
9
|
-
export declare const RichText: import("react").ComponentType<import("./rsc.js").PropsWithOptionalContext<Omit<import("./
|
|
9
|
+
export declare const RichText: import("react").ComponentType<import("./rsc.js").PropsWithOptionalContext<Omit<import("./components/rich-text/types.js").RichTextImplProps<import("./components/type-utils.js").ElementWithChildrenType>, "ctx">>>;
|
|
10
10
|
/**
|
|
11
11
|
* @deprecated The `@remkoj/optimizely-cms-react/components` export has been deprecated
|
|
12
12
|
*/
|
package/dist/context/client.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare const enum OptimizelyCmsMode {
|
|
|
10
10
|
export interface ClientContext extends GenericContext {
|
|
11
11
|
setLocale: Dispatch<SetStateAction<string | undefined>>;
|
|
12
12
|
setMode: Dispatch<SetStateAction<OptimizelyCmsMode>>;
|
|
13
|
+
setEditableContentIsExperience: Dispatch<SetStateAction<boolean>>;
|
|
13
14
|
}
|
|
14
15
|
export declare class ClientContextInstance implements GenericContext {
|
|
15
16
|
readonly client?: IOptiGraphClient | undefined;
|
package/dist/context/client.js
CHANGED
|
@@ -30,12 +30,16 @@ const _clientContext = createContext({
|
|
|
30
30
|
isDebug: false,
|
|
31
31
|
isDebugOrDevelopment: false,
|
|
32
32
|
isDevelopment: false,
|
|
33
|
+
editableContentIsExperience: false,
|
|
33
34
|
setLocale: () => {
|
|
34
35
|
throw new Error('Not implemented');
|
|
35
36
|
},
|
|
36
37
|
setMode: () => {
|
|
37
38
|
throw new Error('Not implemented');
|
|
38
39
|
},
|
|
40
|
+
setEditableContentIsExperience: () => {
|
|
41
|
+
throw new Error('Not implemented');
|
|
42
|
+
},
|
|
39
43
|
});
|
|
40
44
|
_clientContext.displayName = 'Optimizely CMS Provider';
|
|
41
45
|
export const OptimizelyCms = ({ factory, client, clientToken, children, isDebug, isDevelopment, initialMode = OptimizelyCmsMode.default, initialComponents = [], }) => {
|
|
@@ -43,6 +47,7 @@ export const OptimizelyCms = ({ factory, client, clientToken, children, isDebug,
|
|
|
43
47
|
//#region React State
|
|
44
48
|
const [locale, setLocale] = useState();
|
|
45
49
|
const [mode, setMode] = useState(initialMode);
|
|
50
|
+
const [editableContentIsExperience, setEditableContentIsExperience] = useState(false);
|
|
46
51
|
//#endregion
|
|
47
52
|
//#region Memoized Optimizely Graph Client
|
|
48
53
|
const graphClient = useMemo(() => {
|
|
@@ -78,8 +83,15 @@ export const OptimizelyCms = ({ factory, client, clientToken, children, isDebug,
|
|
|
78
83
|
inEditMode: mode == OptimizelyCmsMode.edit,
|
|
79
84
|
inPreviewMode: mode == OptimizelyCmsMode.preview,
|
|
80
85
|
locale,
|
|
86
|
+
get editableContentIsExperience() {
|
|
87
|
+
return editableContentIsExperience;
|
|
88
|
+
},
|
|
89
|
+
set editableContentIsExperience(newValue) {
|
|
90
|
+
setEditableContentIsExperience(newValue);
|
|
91
|
+
},
|
|
81
92
|
setLocale,
|
|
82
93
|
setMode,
|
|
94
|
+
setEditableContentIsExperience,
|
|
83
95
|
};
|
|
84
96
|
return _jsx(CtxProvider, { value: ctxValue, children: children });
|
|
85
97
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/context/client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AACZ,OAAO,EACL,aAAa,EACb,UAAU,EACV,QAAQ,EACR,OAAO,GAKR,MAAM,OAAO,CAAA;AACd,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GAGb,MAAM,iCAAiC,CAAA;AAExC,OAAO,EACL,UAAU,EAGV,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAEpD,MAAM,CAAN,IAAkB,iBAIjB;AAJD,WAAkB,iBAAiB;IACjC,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,wCAAmB,CAAA;AACrB,CAAC,EAJiB,iBAAiB,KAAjB,iBAAiB,QAIlC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/context/client.tsx"],"names":[],"mappings":"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"}
|
package/dist/context/rsc.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export declare class ServerContext implements GenericContext {
|
|
|
16
16
|
private _client;
|
|
17
17
|
private _factory;
|
|
18
18
|
private _editable;
|
|
19
|
+
private _editableIsExperience;
|
|
19
20
|
get client(): IOptiGraphClient | undefined;
|
|
20
21
|
get factory(): ComponentFactory;
|
|
21
22
|
get locale(): string | undefined;
|
|
@@ -25,12 +26,15 @@ export declare class ServerContext implements GenericContext {
|
|
|
25
26
|
get isDebug(): boolean;
|
|
26
27
|
get isDebugOrDevelopment(): boolean;
|
|
27
28
|
get editableContent(): GenericContext['editableContent'];
|
|
29
|
+
get editableContentIsExperience(): boolean;
|
|
30
|
+
set editableContentIsExperience(newValue: boolean);
|
|
28
31
|
constructor({ factory, client, locale, mode, editableContent, }: ServerContextArgs);
|
|
29
32
|
setMode(mode: 'edit' | 'preview' | 'public'): ServerContext;
|
|
30
33
|
setLocale(locale: string): ServerContext;
|
|
31
34
|
setOptimizelyGraphClient(client: IOptiGraphClient | ((currentClient: IOptiGraphClient | undefined) => IOptiGraphClient | undefined)): void;
|
|
32
35
|
setComponentFactory(factory: ComponentFactory | ((currentClient: ComponentFactory | undefined) => ComponentFactory)): void;
|
|
33
36
|
setEditableContentId(link: GenericContext['editableContent']): void;
|
|
37
|
+
setEditableContentIsExperience(isExperience: boolean): void;
|
|
34
38
|
toJSON(key?: string): TransferrableContext;
|
|
35
39
|
}
|
|
36
40
|
/**
|
package/dist/context/rsc.js
CHANGED
|
@@ -32,7 +32,14 @@ export class ServerContext {
|
|
|
32
32
|
get editableContent() {
|
|
33
33
|
return this._editable;
|
|
34
34
|
}
|
|
35
|
+
get editableContentIsExperience() {
|
|
36
|
+
return this._editableIsExperience;
|
|
37
|
+
}
|
|
38
|
+
set editableContentIsExperience(newValue) {
|
|
39
|
+
this._editableIsExperience = newValue;
|
|
40
|
+
}
|
|
35
41
|
constructor({ factory, client, locale, mode, editableContent, }) {
|
|
42
|
+
this._editableIsExperience = false;
|
|
36
43
|
this._factory = Array.isArray(factory)
|
|
37
44
|
? new DefaultComponentFactory(factory)
|
|
38
45
|
: factory || new DefaultComponentFactory();
|
|
@@ -76,6 +83,9 @@ export class ServerContext {
|
|
|
76
83
|
console.log(`🦺 [ServerContext] Assigning editable content id: ${JSON.stringify(link)}`);
|
|
77
84
|
this._editable = link;
|
|
78
85
|
}
|
|
86
|
+
setEditableContentIsExperience(isExperience) {
|
|
87
|
+
this._editableIsExperience = isExperience;
|
|
88
|
+
}
|
|
79
89
|
toJSON(key) {
|
|
80
90
|
if (this.isDebugOrDevelopment) {
|
|
81
91
|
console.warn('🦺 [ServerContext] Converting Context to JSON, this is typically a side effect of the context being passed between Server & Client components');
|
package/dist/context/rsc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc.js","sourceRoot":"","sources":["../../src/context/rsc.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AACpB,OAAO,EACL,YAAY,EACZ,iBAAiB,GAGlB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,EAGL,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAE5D,cAAc,YAAY,CAAA;AAU1B,MAAM,OAAO,aAAa;
|
|
1
|
+
{"version":3,"file":"rsc.js","sourceRoot":"","sources":["../../src/context/rsc.tsx"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AACpB,OAAO,EACL,YAAY,EACZ,iBAAiB,GAGlB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,EAGL,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAE5D,cAAc,YAAY,CAAA;AAU1B,MAAM,OAAO,aAAa;IAQxB,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,IAAI,MAAM,CAAA;IAC7B,CAAC;IACD,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,KAAK,IAAI,SAAS,CAAA;IAChC,CAAC;IACD,IAAI,aAAa;QACf,OAAO,aAAa,EAAE,CAAA;IACxB,CAAC;IACD,IAAI,OAAO;QACT,OAAO,OAAO,EAAE,CAAA;IAClB,CAAC;IACD,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,CAAA;IAC3C,CAAC;IACD,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAA;IACnC,CAAC;IACD,IAAI,2BAA2B,CAAC,QAAiB;QAC/C,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAA;IACvC,CAAC;IAED,YAAmB,EACjB,OAAO,EACP,MAAM,EACN,MAAM,EACN,IAAI,EACJ,eAAe,GACG;QA3CZ,0BAAqB,GAAY,KAAK,CAAA;QA4C5C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACpC,CAAC,CAAC,IAAI,uBAAuB,CAAC,OAAO,CAAC;YACtC,CAAC,CAAC,OAAO,IAAI,IAAI,uBAAuB,EAAE,CAAA;QAC5C,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,YAAY,EAAE,CAAA;QACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,QAAQ,CAAA;QAC7B,IAAI,CAAC,SAAS,GAAG,eAAe,CAAA;IAClC,CAAC;IAEM,OAAO,CAAC,IAAmC;QAChD,IAAI,IAAI,CAAC,OAAO;YACd,OAAO,CAAC,GAAG,CACT,yCAAyC,IAAI,CAAC,KAAK,OAAO,IAAI,EAAE,CACjE,CAAA;QACH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,SAAS,CAAC,MAAc;QAC7B,IAAI,IAAI,CAAC,OAAO;YACd,OAAO,CAAC,GAAG,CACT,2CAA2C,IAAI,CAAC,OAAO,OAAO,MAAM,EAAE,CACvE,CAAA;QACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IACM,wBAAwB,CAC7B,MAIsC;QAEtC,IAAI,IAAI,CAAC,OAAO;YACd,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAA;QACzE,IAAI,CAAC,OAAO;YACV,OAAO,MAAM,IAAI,UAAU;gBACzB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;gBACtB,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC;oBACzB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,SAAS,CAAA;IACnB,CAAC;IACM,mBAAmB,CACxB,OAEuE;QAEvE,IAAI,IAAI,CAAC,OAAO;YACd,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;QACnE,MAAM,UAAU,GACd,OAAO,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;QACjE,IAAI,CAAC,UAAU;YACb,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;QAClE,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;IAC5B,CAAC;IACM,oBAAoB,CAAC,IAAuC;QACjE,IAAI,IAAI,CAAC,OAAO;YACd,OAAO,CAAC,GAAG,CACT,qDAAqD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAC5E,CAAA;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACvB,CAAC;IACM,8BAA8B,CAAC,YAAqB;QACzD,IAAI,CAAC,qBAAqB,GAAG,YAAY,CAAA;IAC3C,CAAC;IAEM,MAAM,CAAC,GAAY;QACxB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CACV,+IAA+I,CAChJ,CAAA;YACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;YAC/C,CAAC;QACH,CAAC;QAED,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;CACF;AAED,+FAA+F;AAC/F;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,KAAK,CACX,sJAAsJ,CACvJ,CAAA;IACH,OAAO,wBAAwB,EAAE,CAAA;AACnC,CAAC,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAA0B;IAE1B,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAA;IAC5C,2BAA2B;IAC3B,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAEjD,iCAAiC;IACjC,IAAI,UAAU,CAAC,MAAM;QAAE,SAAS,CAAC,wBAAwB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAE5E,gBAAgB;IAChB,IAAI,UAAU,CAAC,MAAM;QAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAE7D,cAAc;IACd,IAAI,UAAU,CAAC,UAAU;QAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;SAC/C,IAAI,UAAU,CAAC,aAAa;QAAE,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;SAC1D,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,aAAa;QAC1D,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE7B,0BAA0B;IAC1B,SAAS,CAAC,oBAAoB,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;IAC1D,OAAO,SAAS,CAAA;AAClB,CAAC;AAOD,MAAM,gBAAgB,GAAqB,CACzC,OAAU,EACV,EAAE;IACF,IAAI,OAAO,EAAE,IAAI,aAAa,EAAE;QAC9B,OAAO,CAAC,IAAI,CACV,sGAAsG,CACvG,CAAA;IACH,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,sEAAsE;AACtE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,gBAAgB,CAAqB,CAAA;AAEnE,MAAM,wBAAwB,GAAG,KAAK,CAAC,GAAG,EAAE;IAC1C,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;IACjC,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;IACtE,OAAO,GAAG,CAAA;AACZ,CAAC,CAAC,CAAA;AACF,YAAY"}
|
package/dist/context/types.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export interface GenericContext {
|
|
|
11
11
|
readonly isDebug: boolean;
|
|
12
12
|
readonly isDebugOrDevelopment: boolean;
|
|
13
13
|
readonly editableContent?: ContentLink | null;
|
|
14
|
+
editableContentIsExperience?: boolean;
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
17
|
* The context information that can cross the React Server/Client boundary
|
|
@@ -24,6 +25,7 @@ export interface TransferrableContext {
|
|
|
24
25
|
readonly isDebug: boolean;
|
|
25
26
|
readonly isDebugOrDevelopment: boolean;
|
|
26
27
|
readonly editableContent?: ContentLink | null;
|
|
28
|
+
readonly editableContentIsExperience?: boolean;
|
|
27
29
|
}
|
|
28
30
|
export type BaseContext = TransferrableContext | GenericContext;
|
|
29
31
|
export type PropsWithContext<P = {}> = P & {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remkoj/optimizely-cms-react",
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
|
-
"version": "5.0.
|
|
4
|
+
"version": "5.0.2",
|
|
5
5
|
"repository": "https://github.com/remkoj/optimizely-dxp-clients.git",
|
|
6
6
|
"author": "Remko Jantzen <693172+remkoj@users.noreply.github.com>",
|
|
7
7
|
"homepage": "https://github.com/remkoj/optimizely-dxp-clients/tree/main/packages/optimizely-cms-react",
|
|
@@ -27,13 +27,13 @@
|
|
|
27
27
|
}
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@remkoj/optimizely-graph-client": "5.0.
|
|
30
|
+
"@remkoj/optimizely-graph-client": "5.0.2",
|
|
31
31
|
"@types/crypto-js": "^4.2.2",
|
|
32
|
-
"@types/node": "^22.
|
|
33
|
-
"@types/react": "^18.3.
|
|
34
|
-
"@types/react-dom": "18.3.
|
|
32
|
+
"@types/node": "^22.15.17",
|
|
33
|
+
"@types/react": "^18.3.21",
|
|
34
|
+
"@types/react-dom": "18.3.7",
|
|
35
35
|
"entities": "^6.0.0",
|
|
36
|
-
"graphql": "^16.
|
|
36
|
+
"graphql": "^16.11.0",
|
|
37
37
|
"graphql-request": "^6.1.0",
|
|
38
38
|
"prop-types": "^15.8.1",
|
|
39
39
|
"react": "^18.3.1",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"crypto-js": "^4.2.0"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"@remkoj/optimizely-graph-client": "^5
|
|
49
|
+
"@remkoj/optimizely-graph-client": "^5",
|
|
50
50
|
"entities": "^6",
|
|
51
51
|
"graphql": "^16",
|
|
52
52
|
"graphql-request": "^6",
|