@remkoj/optimizely-cms-react 2.1.0 → 3.0.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.
Files changed (147) hide show
  1. package/README.md +36 -2
  2. package/dist/components/client.d.ts +42 -0
  3. package/dist/components/client.js +52 -0
  4. package/dist/components/client.js.map +1 -0
  5. package/dist/components/cms-content/client.d.ts +11 -0
  6. package/dist/components/cms-content/client.js +72 -0
  7. package/dist/components/cms-content/client.js.map +1 -0
  8. package/dist/components/cms-content/get-content-type.d.ts +13 -0
  9. package/dist/components/cms-content/get-content-type.js +70 -0
  10. package/dist/components/cms-content/get-content-type.js.map +1 -0
  11. package/dist/components/cms-content/get-content.d.ts +4 -0
  12. package/dist/components/cms-content/get-content.js +91 -0
  13. package/dist/components/cms-content/get-content.js.map +1 -0
  14. package/dist/components/cms-content/resolve-component.d.ts +18 -0
  15. package/dist/components/cms-content/resolve-component.js +53 -0
  16. package/dist/components/cms-content/resolve-component.js.map +1 -0
  17. package/dist/components/cms-content/resolve-content-type.d.ts +15 -0
  18. package/dist/components/cms-content/resolve-content-type.js +29 -0
  19. package/dist/components/cms-content/resolve-content-type.js.map +1 -0
  20. package/dist/components/cms-content/rsc.d.ts +11 -0
  21. package/dist/components/cms-content/rsc.js +50 -0
  22. package/dist/components/cms-content/rsc.js.map +1 -0
  23. package/dist/components/cms-content/types.d.ts +54 -0
  24. package/dist/components/cms-content/types.js +2 -0
  25. package/dist/components/cms-content/types.js.map +1 -0
  26. package/dist/components/cms-content/utils.d.ts +3 -0
  27. package/dist/components/cms-content/utils.js +6 -0
  28. package/dist/components/cms-content/utils.js.map +1 -0
  29. package/dist/components/cms-content-area/index.d.ts +17 -0
  30. package/dist/{server/components/cms-content-area.js → components/cms-content-area/index.js} +27 -36
  31. package/dist/components/cms-content-area/index.js.map +1 -0
  32. package/dist/{server/components → components/cms-content-area}/types.d.ts +7 -94
  33. package/dist/components/cms-content-area/types.js.map +1 -0
  34. package/dist/{server/components/cms-editable.d.ts → components/cms-editable/index.d.ts} +5 -3
  35. package/dist/components/cms-editable/index.js +15 -0
  36. package/dist/components/cms-editable/index.js.map +1 -0
  37. package/dist/components/{cms-styles.js → cms-styles/index.js} +1 -1
  38. package/dist/components/cms-styles/index.js.map +1 -0
  39. package/dist/components/rich-text/components.d.ts +14 -0
  40. package/dist/components/rich-text/components.js +63 -0
  41. package/dist/components/rich-text/components.js.map +1 -0
  42. package/dist/components/rich-text/index.d.ts +4 -0
  43. package/dist/components/rich-text/index.js +47 -0
  44. package/dist/components/rich-text/index.js.map +1 -0
  45. package/dist/components/{rich-text.d.ts → rich-text/types.d.ts} +13 -18
  46. package/dist/components/rich-text/types.js +2 -0
  47. package/dist/components/rich-text/types.js.map +1 -0
  48. package/dist/components/rich-text/utils.d.ts +5 -0
  49. package/dist/components/rich-text/utils.js +24 -0
  50. package/dist/components/rich-text/utils.js.map +1 -0
  51. package/dist/components/rsc.d.ts +47 -0
  52. package/dist/components/rsc.js +55 -0
  53. package/dist/components/rsc.js.map +1 -0
  54. package/dist/{server → components}/type-utils.js.map +1 -1
  55. package/dist/{server/components → components}/visual-builder/functions.d.ts +7 -2
  56. package/dist/{server/components → components}/visual-builder/functions.js +8 -3
  57. package/dist/components/visual-builder/functions.js.map +1 -0
  58. package/dist/{server/components/visual-builder/Composition.d.ts → components/visual-builder/index.d.ts} +4 -3
  59. package/dist/{server/components/visual-builder/Composition.js → components/visual-builder/index.js} +9 -18
  60. package/dist/components/visual-builder/index.js.map +1 -0
  61. package/dist/{server/components → components}/visual-builder/types.d.ts +6 -1
  62. package/dist/components/visual-builder/types.js.map +1 -0
  63. package/dist/components.d.ts +27 -0
  64. package/dist/components.js +20 -0
  65. package/dist/components.js.map +1 -0
  66. package/dist/context/client.d.ts +70 -0
  67. package/dist/context/client.js +78 -0
  68. package/dist/context/client.js.map +1 -0
  69. package/dist/context/rsc.d.ts +33 -0
  70. package/dist/context/rsc.js +75 -0
  71. package/dist/context/rsc.js.map +1 -0
  72. package/dist/context/types.d.ts +15 -0
  73. package/dist/context/types.js +2 -0
  74. package/dist/{server/components → context}/types.js.map +1 -1
  75. package/dist/{server/components → data}/queries.js +121 -121
  76. package/dist/data/queries.js.map +1 -0
  77. package/dist/{factory.d.ts → factory/default.d.ts} +0 -18
  78. package/dist/{factory.js → factory/default.js} +1 -33
  79. package/dist/factory/default.js.map +1 -0
  80. package/dist/factory/index.d.ts +12 -0
  81. package/dist/factory/index.js +16 -0
  82. package/dist/factory/index.js.map +1 -0
  83. package/dist/factory/types.d.ts +51 -0
  84. package/dist/factory/types.js +2 -0
  85. package/dist/factory/types.js.map +1 -0
  86. package/dist/factory/undef.d.ts +9 -0
  87. package/dist/factory/undef.js +19 -0
  88. package/dist/factory/undef.js.map +1 -0
  89. package/dist/index.d.ts +4 -2
  90. package/dist/index.js +4 -2
  91. package/dist/index.js.map +1 -1
  92. package/dist/{server/is-debug.d.ts → rsc-utilities.d.ts} +0 -1
  93. package/dist/{server/is-debug.js → rsc-utilities.js} +1 -2
  94. package/dist/{server/is-debug.js.map → rsc-utilities.js.map} +1 -1
  95. package/dist/rsc.d.ts +11 -0
  96. package/dist/rsc.js +14 -0
  97. package/dist/rsc.js.map +1 -0
  98. package/dist/types.d.ts +10 -56
  99. package/package.json +12 -24
  100. package/dist/browser/context.d.ts +0 -6
  101. package/dist/browser/context.js +0 -15
  102. package/dist/browser/context.js.map +0 -1
  103. package/dist/browser/index.d.ts +0 -1
  104. package/dist/browser/index.js +0 -2
  105. package/dist/browser/index.js.map +0 -1
  106. package/dist/components/cms-styles.js.map +0 -1
  107. package/dist/components/index.d.ts +0 -2
  108. package/dist/components/index.js +0 -3
  109. package/dist/components/index.js.map +0 -1
  110. package/dist/components/rich-text.js +0 -138
  111. package/dist/components/rich-text.js.map +0 -1
  112. package/dist/factory.js.map +0 -1
  113. package/dist/server/components/cms-content-area.d.ts +0 -13
  114. package/dist/server/components/cms-content-area.js.map +0 -1
  115. package/dist/server/components/cms-content.d.ts +0 -11
  116. package/dist/server/components/cms-content.js +0 -154
  117. package/dist/server/components/cms-content.js.map +0 -1
  118. package/dist/server/components/cms-editable.js +0 -18
  119. package/dist/server/components/cms-editable.js.map +0 -1
  120. package/dist/server/components/get-content-type.d.ts +0 -12
  121. package/dist/server/components/get-content-type.js +0 -51
  122. package/dist/server/components/get-content-type.js.map +0 -1
  123. package/dist/server/components/index.d.ts +0 -4
  124. package/dist/server/components/index.js +0 -5
  125. package/dist/server/components/index.js.map +0 -1
  126. package/dist/server/components/queries.js.map +0 -1
  127. package/dist/server/components/visual-builder/Composition.js.map +0 -1
  128. package/dist/server/components/visual-builder/functions.js.map +0 -1
  129. package/dist/server/components/visual-builder/index.d.ts +0 -4
  130. package/dist/server/components/visual-builder/index.js +0 -4
  131. package/dist/server/components/visual-builder/index.js.map +0 -1
  132. package/dist/server/components/visual-builder/types.js.map +0 -1
  133. package/dist/server/context.d.ts +0 -22
  134. package/dist/server/context.js +0 -81
  135. package/dist/server/context.js.map +0 -1
  136. package/dist/server/factory.d.ts +0 -10
  137. package/dist/server/factory.js +0 -18
  138. package/dist/server/factory.js.map +0 -1
  139. package/dist/server/index.d.ts +0 -6
  140. package/dist/server/index.js +0 -6
  141. package/dist/server/index.js.map +0 -1
  142. /package/dist/{server/components → components/cms-content-area}/types.js +0 -0
  143. /package/dist/components/{cms-styles.d.ts → cms-styles/index.d.ts} +0 -0
  144. /package/dist/{server → components}/type-utils.d.ts +0 -0
  145. /package/dist/{server → components}/type-utils.js +0 -0
  146. /package/dist/{server/components → components}/visual-builder/types.js +0 -0
  147. /package/dist/{server/components → data}/queries.d.ts +0 -0
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": "2.1.0",
4
+ "version": "3.0.0",
5
5
  "packageManager": "yarn@4.1.1",
6
6
  "repository": "https://github.com/remkoj/optimizely-dxp-clients.git",
7
7
  "author": "Remko Jantzen <693172+remkoj@users.noreply.github.com>",
@@ -14,37 +14,25 @@
14
14
  ],
15
15
  "exports": {
16
16
  ".": "./dist/index.js",
17
- "./components": "./dist/components/index.js",
18
- "./browser": "./dist/browser/index.js",
19
- "./rsc": "./dist/server/index.js",
20
- "./rsc/cms-content": "./dist/server/components/cms-content.js",
21
- "./rsc/cms-content-area": "./dist/server/components/cms-content-area.js"
17
+ "./components": "./dist/components.js",
18
+ "./rsc": "./dist/rsc.js"
22
19
  },
23
20
  "typesVersions": {
24
21
  "*": {
25
- "browser": [
26
- "dist/browser/index.d.ts"
27
- ],
28
22
  "components": [
29
- "dist/components/index.d.ts"
23
+ "dist/components.d.ts"
30
24
  ],
31
25
  "rsc": [
32
- "dist/server/index.d.ts"
33
- ],
34
- "rsc/cms-content": [
35
- "dist/server/components/cms-content.d.ts"
36
- ],
37
- "rsc/cms-content-area": [
38
- "dist/server/components/cms-content-area.d.ts"
26
+ "dist/rsc.d.ts"
39
27
  ]
40
28
  }
41
29
  },
42
30
  "devDependencies": {
43
- "@remkoj/optimizely-graph-client": "2.1.0",
31
+ "@remkoj/optimizely-graph-client": "3.0.0",
44
32
  "@types/crypto-js": "^4.2.2",
45
- "@types/node": "^22.7.4",
46
- "@types/react": "^18.3.11",
47
- "@types/react-dom": "18.3.0",
33
+ "@types/node": "^22.8.4",
34
+ "@types/react": "^18.3.12",
35
+ "@types/react-dom": "18.3.1",
48
36
  "entities": "^5.0.0",
49
37
  "graphql": "^16.9.0",
50
38
  "graphql-request": "^6.1.0",
@@ -52,14 +40,14 @@
52
40
  "react": "^18.3.1",
53
41
  "react-dom": "^18.3.1",
54
42
  "scheduler": "^0.23.2",
55
- "typescript": "^5.6.2"
43
+ "typescript": "^5.6.3"
56
44
  },
57
45
  "dependencies": {
58
46
  "@graphql-typed-document-node/core": "^3.2.0",
59
47
  "crypto-js": "^4.2.0"
60
48
  },
61
49
  "peerDependencies": {
62
- "@remkoj/optimizely-graph-client": "2.1.0",
50
+ "@remkoj/optimizely-graph-client": "*",
63
51
  "entities": "*",
64
52
  "graphql": "^16.8.1",
65
53
  "graphql-request": "^6.1.0",
@@ -68,7 +56,7 @@
68
56
  },
69
57
  "scripts": {
70
58
  "clean": "tsc --build --clean",
71
- "prepare": "yarn tsc --build",
59
+ "prepare": "yarn tsc --build --force",
72
60
  "watch": "tsc --watch",
73
61
  "recompile": "tsc --build --clean && tsc --build --force"
74
62
  }
@@ -1,6 +0,0 @@
1
- import { Services, type OptimizelyGraphConfig, type IOptiGraphClient } from '@remkoj/optimizely-graph-client';
2
- import { type FunctionComponent, type PropsWithChildren } from 'react';
3
- export declare const OptimizelyRouterProvider: FunctionComponent<PropsWithChildren<{
4
- clientOrConfig: IOptiGraphClient | OptimizelyGraphConfig;
5
- }>>;
6
- export declare const useOptimizelyRouter: () => Services.RouteResolver;
@@ -1,15 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Services } from '@remkoj/optimizely-graph-client';
3
- import { createContext, useContext } from 'react';
4
- const RouteResolverContext = createContext(undefined);
5
- export const OptimizelyRouterProvider = ({ clientOrConfig, children }) => {
6
- const router = new Services.RouteResolver(clientOrConfig);
7
- return _jsx(RouteResolverContext.Provider, { value: router, children: children });
8
- };
9
- export const useOptimizelyRouter = () => {
10
- const router = useContext(RouteResolverContext);
11
- if (router == undefined)
12
- throw new Error("useOptimizelyRouter can only be used within components that are contained within an OptimizelyRouterProvider");
13
- return router;
14
- };
15
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/browser/context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAqD,MAAM,iCAAiC,CAAA;AAC7G,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkD,MAAM,OAAO,CAAA;AAEjG,MAAM,oBAAoB,GAAG,aAAa,CAAqC,SAAS,CAAC,CAAA;AAEzF,MAAM,CAAC,MAAM,wBAAwB,GAAwG,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;IAE1K,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IACzD,OAAO,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAG,MAAM,YAAK,QAAQ,GAAkC,CAAA;AACvG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAkC,GAAG,EAAE;IACnE,MAAM,MAAM,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAA;IAC/C,IAAI,MAAM,IAAI,SAAS;QACnB,MAAM,IAAI,KAAK,CAAC,8GAA8G,CAAC,CAAA;IACnI,OAAO,MAAM,CAAA;AACjB,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export * from './context.js';
@@ -1,2 +0,0 @@
1
- export * from './context.js';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.tsx"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cms-styles.js","sourceRoot":"","sources":["../../src/components/cms-styles.tsx"],"names":[],"mappings":"AA0CA;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAIzB,IAAmB,EAAE,WAAc,EAAE,YAAiB;IAGpD,MAAM,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAA;IACtE,OAAO,CAAC,EAAE,IAAI,YAAY,CAAO,CAAA;AACrC,CAAC;AAED,MAAM,UAAU,eAAe,CAA6B,IAAmB;IAG3E,IAAI,CAAC,IAAI;QACL,OAAO,EAAQ,CAAA;IACnB,MAAM,SAAS,GAAiB,EAAE,CAAA;IAClC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC5B,IAAI,GAAG,CAAC,KAAK;YACT,SAAS,CAAC,GAAG,CAAC,GAAe,CAAC,GAAG,GAAG,CAAC,KAAqB,CAAA;IAClE,CAAC,CAAC,CAAA;IACF,OAAO,SAAe,CAAA;AAC1B,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './rich-text.js';
2
- export * from './cms-styles.js';
@@ -1,3 +0,0 @@
1
- export * from './rich-text.js';
2
- export * from './cms-styles.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA"}
@@ -1,138 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { DefaultComponentFactory } from "../factory.js";
3
- import { decodeHTML } from 'entities';
4
- //#endregion
5
- //#region Utils & Supports
6
- export const Utils = {
7
- isText(toTest) {
8
- return (typeof toTest == 'object' &&
9
- toTest != null &&
10
- (typeof toTest.text) == 'string' &&
11
- toTest.text.length >= 0);
12
- },
13
- isTypedNode(toTest) {
14
- return (typeof toTest == 'object' &&
15
- toTest != null &&
16
- (typeof toTest.type) == 'string' &&
17
- toTest.type.length > 0);
18
- },
19
- processNodeInput(input) {
20
- if (!input)
21
- return undefined;
22
- const textObject = typeof input == "string" ? JSON.parse(input) : input;
23
- if (textObject?.type != "richText" && textObject?.type != "string")
24
- throw new Error('Structured rich text requires a "richText" root node');
25
- return textObject;
26
- },
27
- getRandomId(scope = "richText") {
28
- return `${scope}::${Math.round(Math.random() * 100000)}`;
29
- }
30
- };
31
- //#endregion
32
- export const RichText = ({ factory, text, className = 'rich-text', as: Wrapper = "div", ...props }) => {
33
- const debug = process.env.NODE_ENV != 'production';
34
- const id = Utils.getRandomId("rich-text");
35
- const richTextFactory = factory ?? new DefaultComponentFactory(DefaultComponents);
36
- try {
37
- const data = Utils.processNodeInput(text);
38
- return _jsx(Wrapper, { className: className, ...props, children: (data?.children || []).map((child, idx) => {
39
- const elementId = id + '::' + idx;
40
- return _jsx(RichTextElement, { factory: richTextFactory, node: child, idPrefix: elementId + '::' }, elementId);
41
- }) });
42
- }
43
- catch {
44
- if (debug)
45
- console.warn('🟠 [Rich Text] Invalid rich text received: ', text);
46
- return Object.getOwnPropertyNames(props).length > 0 ? _jsx("div", { className: className, ...props }) : null;
47
- }
48
- };
49
- //#region Supportive React components
50
- const RichTextElement = ({ factory, node, idPrefix }) => {
51
- const debug = process.env.NODE_ENV != 'production';
52
- if (Utils.isText(node)) {
53
- if (node.text.length == 0)
54
- return null;
55
- const TextComponent = factory?.resolve(`RichText/text`) ?? DefaultTextNode;
56
- return _jsx(TextComponent, { node: node });
57
- }
58
- if (!Utils.isTypedNode(node)) {
59
- if (debug)
60
- console.warn('🟠 [Rich Text] Invalid rich text element data received:', node);
61
- return null;
62
- }
63
- const childData = node.children?.map((child, idx) => {
64
- const elementId = idPrefix + idx;
65
- return _jsx(RichTextElement, { factory: factory, node: child, idPrefix: elementId + '::' }, elementId);
66
- });
67
- if (!factory?.has(`RichText/${node.type}`)) {
68
- console.warn('🟠 [Rich Text] No renderer for node type, falling back to "div":', `RichText/${node.type}`);
69
- const DivComponent = createHtmlComponent("div", false, { "data-type": node.type });
70
- return _jsx(DivComponent, { node: node, children: childData });
71
- }
72
- const Component = factory?.resolve(`RichText/${node.type}`) ?? 'div';
73
- return _jsx(Component, { node: node, children: childData });
74
- };
75
- //#endregion
76
- //#region HTML Components
77
- export function createHtmlComponent(element, ignoreChildren = false, defaultProps) {
78
- const HtmlElement = element;
79
- const reservedProps = ['url', 'class', 'children', 'type'];
80
- const component = ({ children, node, ...props }) => {
81
- const nodeProps = {};
82
- const renderProps = Object.getOwnPropertyNames(node);
83
- renderProps.filter(x => !reservedProps.includes(x)).forEach(x => nodeProps[x] = node[x]);
84
- if (renderProps.includes('class'))
85
- nodeProps['className'] = node['class'];
86
- if (renderProps.includes('url')) {
87
- switch (node.type) {
88
- case 'link':
89
- nodeProps['href'] = node['url'];
90
- break;
91
- case 'image':
92
- nodeProps['src'] = node['url'];
93
- break;
94
- default:
95
- nodeProps['data-url'] = node['url'];
96
- break;
97
- }
98
- }
99
- return ignoreChildren ? _jsx(HtmlElement, { ...defaultProps, ...nodeProps, ...props }) : _jsx(HtmlElement, { ...defaultProps, ...nodeProps, ...props, children: children });
100
- };
101
- return component;
102
- }
103
- const DefaultTextNode = ({ node }) => {
104
- if (node.bold)
105
- return _jsx("strong", { children: decodeHTML(node.text) });
106
- if (node.italic)
107
- return _jsx("em", { children: decodeHTML(node.text) });
108
- const unsupportedProps = Object.getOwnPropertyNames(node).filter(x => x != 'text');
109
- if (unsupportedProps.length > 0 && process.env.NODE_ENV != 'production')
110
- console.warn('🟠 [Rich Text] Text node with unsupported additional properties:', unsupportedProps.join(', '));
111
- return decodeHTML(node.text);
112
- };
113
- /**
114
- * A default component dictionary that allows to serialize the structured HTML
115
- * into React, using the component library shared across the react SDK.
116
- */
117
- export const DefaultComponents = [
118
- { type: 'RichText/richText', component: createHtmlComponent("div", false, { className: "cms:rich-text" }) },
119
- { type: 'RichText/paragraph', component: createHtmlComponent("p") },
120
- { type: 'RichText/span', component: createHtmlComponent("span") },
121
- { type: 'RichText/div', component: createHtmlComponent("div") },
122
- { type: 'RichText/heading-one', component: createHtmlComponent("h1") },
123
- { type: 'RichText/heading-two', component: createHtmlComponent("h2") },
124
- { type: 'RichText/heading-three', component: createHtmlComponent("h3") },
125
- { type: 'RichText/heading-four', component: createHtmlComponent("h4") },
126
- { type: 'RichText/heading-five', component: createHtmlComponent("h5") },
127
- { type: 'RichText/heading-six', component: createHtmlComponent("h6") },
128
- { type: 'RichText/link', component: createHtmlComponent("a") },
129
- { type: 'RichText/image', component: createHtmlComponent("img", true) },
130
- { type: 'RichText/text', component: DefaultTextNode },
131
- { type: 'RichText/br', component: createHtmlComponent("br", true) },
132
- { type: 'RichText/bulleted-list', component: createHtmlComponent("ul") },
133
- { type: 'RichText/numbered-list', component: createHtmlComponent("ol") },
134
- { type: 'RichText/list-item', component: createHtmlComponent("li") }
135
- ];
136
- //#endregion
137
- export default RichText;
138
- //# sourceMappingURL=rich-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rich-text.js","sourceRoot":"","sources":["../../src/components/rich-text.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import 'server-only';
2
- import type { ElementType } from '../type-utils.js';
3
- import type { CmsContentAreaProps, ContentAreaItemDefinition } from './types.js';
4
- export type { CmsContentAreaClassMapper, CmsContentAreaProps, ContentAreaItemDefinition } from './types.js';
5
- /**
6
- * React server component to render a content area
7
- *
8
- * @param param0 The content area information for rendering
9
- * @returns
10
- */
11
- export declare const CmsContentArea: <T extends ElementType = "div", I extends ElementType = "div">({ items, classMapper, className, fieldName, as: elementType, itemsProperty, itemWrapper, locale: _locale, client: _client, factory: _factory, inEditMode: _inEditMode, ...additionalProps }: CmsContentAreaProps<T, I>) => Promise<JSX.Element>;
12
- export declare function processContentAreaItems(items?: (ContentAreaItemDefinition | null)[] | null, locale?: string): Promise<JSX.Element[]>;
13
- export default CmsContentArea;
@@ -1 +0,0 @@
1
- {"version":3,"file":"cms-content-area.js","sourceRoot":"","sources":["../../../src/server/components/cms-content-area.tsx"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import 'server-only';
2
- import type { CmsContentProps } from './types.js';
3
- export type { CmsContentProps } from './types.js';
4
- /**
5
- * React Server Side component for the CmsContent
6
- *
7
- * @param param0
8
- * @returns
9
- */
10
- export declare const CmsContent: <LocalesType = string>({ contentType, contentTypePrefix, contentLink: rawContentLink, children, fragmentData, layoutProps, noDataLoad }: CmsContentProps<LocalesType>) => Promise<JSX.Element>;
11
- export default CmsContent;
@@ -1,154 +0,0 @@
1
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import 'server-only';
3
- import getContentType from './get-content-type.js';
4
- import getServerContext from '../context.js';
5
- import createClient, { AuthMode, normalizeContentLink, contentLinkToString, isInlineContentLink, OptiCmsSchema } from '@remkoj/optimizely-graph-client';
6
- import { print } from 'graphql';
7
- import * as Utils from "../../utilities.js";
8
- import * as Queries from './queries.js';
9
- /**
10
- * React Server Side component for the CmsContent
11
- *
12
- * @param param0
13
- * @returns
14
- */
15
- export const CmsContent = async ({ contentType, contentTypePrefix, contentLink: rawContentLink, children, fragmentData, layoutProps, noDataLoad }) => {
16
- let myContentType = contentType ? [...contentType] : undefined;
17
- const context = getServerContext();
18
- const contentLink = normalizeContentLink(rawContentLink);
19
- if (!contentLink) {
20
- if (context.isDebugOrDevelopment)
21
- console.warn(`🟠 [CmsContent] Invalid content link provided, not rendering anything`, rawContentLink);
22
- return _jsx(_Fragment, {});
23
- }
24
- if (context.isDebugOrDevelopment && !context.client)
25
- console.warn(`🟠 [CmsContent] No Content Graph client provided with ${contentLinkToString(contentLink)}, this will cause problems with edit mode!`);
26
- // Parse & prepare props
27
- const isInline = isInlineContentLink(contentLink);
28
- const outputEditorWarning = context.forceEditorWarnings;
29
- const factory = context.factory;
30
- if (!factory) {
31
- console.error(`🔴 [CmsContent] No content type factory registered in the context`);
32
- throw new Error("Empty factory on the context");
33
- }
34
- const client = context.client ?? createClient();
35
- if (context.isDebug && context.inEditMode)
36
- console.log(`👔 [CmsContent] Edit mode active for content with id: ${contentLinkToString(contentLink)}`);
37
- if (context.isDebug && context.inEditMode && client.currentAuthMode == AuthMode.Public)
38
- console.warn(`🟠 [CmsContent] Edit mode active without an authenticated client, this will cause problems`);
39
- // DEBUG Tracing
40
- if (context.isDebug)
41
- console.log("⚪ [CmsContent] Rendering CMS Content for:", JSON.stringify(myContentType), contentLinkToString(contentLink), context.inEditMode ? "edit-mode" : "published");
42
- // Ensure we have a content type to work with
43
- if (!myContentType) {
44
- if (isInline) {
45
- console.error(`🔴 [CmsContent] No content type provided for content ${contentLinkToString(contentLink)}, content types cannot be resolved for inline content`);
46
- throw new Error("Unable to render Inline CMS Content without Content Type information");
47
- }
48
- if (context.isDebugOrDevelopment)
49
- console.warn(`🟠 [CmsContent] No content type provided for content ${contentLinkToString(contentLink)}, this causes an additional GraphQL query to resolve the myContentType`);
50
- myContentType = await getContentType(contentLink, client);
51
- }
52
- // Optimizely Graph stores the type in Most Significant first order, we need least significant first, also we're stripping out the common "Content" item from it
53
- if (Array.isArray(myContentType))
54
- myContentType = contentTypePrefix ?
55
- Utils.normalizeAndPrefixContentType(myContentType.reverse(), contentTypePrefix) :
56
- Utils.normalizeContentType(myContentType.reverse(), true);
57
- // Resolve component
58
- const Component = factory.resolve(myContentType ?? "");
59
- if (!Component) {
60
- if (context.isDebugOrDevelopment) {
61
- console.warn(`🟠 [CmsContent] Component of type "${myContentType?.join('/') ?? ""}" not resolved by factory`);
62
- }
63
- if (context.isDebug || context.inEditMode || outputEditorWarning) {
64
- const errorMsg = _jsxs("div", { className: 'opti-error', children: ["Component of type \"", myContentType?.join('/') ?? "", "\" not resolved by factory"] });
65
- return children ? _jsxs(_Fragment, { children: [errorMsg, children] }) : errorMsg;
66
- }
67
- return _jsx(_Fragment, { children: children ? children : undefined });
68
- }
69
- if (context.isDebug)
70
- console.log("⚪ [CmsContent] Rendering item using component:", Component?.displayName ?? Component);
71
- // Render with previously loaded data
72
- const fragmentProps = fragmentData ? Object.getOwnPropertyNames(fragmentData).filter(x => !Queries.CmsContentFragments.IContentDataProps.includes(x)) : [];
73
- if (fragmentProps.length > 0) {
74
- if (context.isDebug)
75
- console.log("⚪ [CmsContent] Rendering CMS Component using fragment information", fragmentProps);
76
- if (Utils.validatesFragment(Component) && !Component.validateFragment(fragmentData)) {
77
- console.error("🔴 [CmsContent] Invalid fragment data received for ", Component.displayName ?? myContentType?.join("/") ?? "[Undetermined component]");
78
- return _jsx(_Fragment, {});
79
- }
80
- return _jsx(Component, { contentLink: contentLink, data: fragmentData || {}, inEditMode: context.inEditMode, layoutProps: layoutProps, children: children });
81
- }
82
- if (isInline) {
83
- console.error(`🔴 [CmsContent] No data for content ${contentLinkToString(contentLink)}, data cannot be resolved for inline content`);
84
- throw new Error(`Unable to render Inline CMS Content without data. (Content Type: ${Component?.displayName ?? myContentType?.join('/') ?? "Unknown"}; Content Link: ${contentLinkToString(contentLink)}; Data keys: ${Object.getOwnPropertyNames(fragmentData ?? {}).join(", ")})`);
85
- }
86
- if (noDataLoad) {
87
- if (context.isDebug)
88
- console.log(`⚪ [CmsContent] Component of type "${myContentType?.join('/') ?? Component.displayName ?? '?'}" was prohibited to load data`);
89
- return _jsx(Component, { contentLink: contentLink, data: fragmentData || {}, inEditMode: context.inEditMode, layoutProps: layoutProps, children: children });
90
- }
91
- // Render using included query
92
- if (Utils.isCmsComponentWithDataQuery(Component)) {
93
- const gqlQuery = Component.getDataQuery();
94
- const gqlVariables = Utils.contentLinkToRequestVariables(contentLink);
95
- if (context.isDebug)
96
- console.log("⚪ [CmsContent] Component data fetching variables:", gqlVariables);
97
- const gqlResponse = await client.request(gqlQuery, gqlVariables);
98
- if (context.isDebug)
99
- console.log("⚪ [CmsContent] Component request the following data:", gqlResponse);
100
- return _jsx(Component, { contentLink: contentLink, data: gqlResponse, inEditMode: context.inEditMode, layoutProps: layoutProps, children: children });
101
- }
102
- // Render using included fragment
103
- if (Utils.isCmsComponentWithFragment(Component)) {
104
- const fetchedData = await getComponentDataFromFragment(Component, context, contentLink);
105
- return _jsx(Component, { contentLink: contentLink, data: fetchedData, inEditMode: context.inEditMode, layoutProps: layoutProps, children: children });
106
- }
107
- // Assume there's no server side prepared data needed for the component
108
- if (context.isDebug)
109
- console.log(`⚪ [CmsContent] Component of type "${myContentType?.join('/') ?? Component.displayName ?? '?'}" did not request pre-loading of data`);
110
- return _jsx(Component, { contentLink: contentLink, data: fragmentData || {}, inEditMode: context.inEditMode, layoutProps: layoutProps, children: children });
111
- };
112
- async function getComponentDataFromFragment(Component, context, contentLink) {
113
- const { client, isDebug } = context;
114
- if (!client) {
115
- if (isDebug)
116
- console.warn(`🟠 [CmsContent] Cannot fetch component data with fragment, due to missing GraphQL Client`);
117
- return;
118
- }
119
- const [name, fragment] = Component.getDataFragment();
120
- if (context.isDebug)
121
- console.log(`⚪ [CmsContent] Component data fetching using fragment: ${name}`);
122
- const fragmentQuery = client.currentOptiCmsSchema == OptiCmsSchema.CMS12 ?
123
- `query getContentFragmentById($key: String!, $version: Int, $locale: [Locales!]) { contentById: Content(where: { ContentLink: { GuidValue: { eq: $key }, WorkId: { eq: $version } } }, locale: $locale) { total, items { _type: __typename, _metadata: ContentLink { key: GuidValue, version: WorkId }, _locale: Language { name: Name } ...${name} }}}\n ${print(fragment)}` :
124
- `query getContentFragmentById($key: String!, $version: String, $locale: [Locales!]) {contentById: _Content(where: {_metadata: {key: { eq: $key }, version: { eq: $version }}} locale: $locale) { total, items { _type: __typename, _metadata { key, version, locale } ...${name} }}}\n ${print(fragment)}`;
125
- const fragmentVariables = Utils.contentLinkToRequestVariables(contentLink);
126
- if (client.currentOptiCmsSchema == OptiCmsSchema.CMS12) {
127
- try {
128
- const versionNr = fragmentVariables.version ? Number.parseInt(fragmentVariables.version) : 0;
129
- if (versionNr > 0)
130
- fragmentVariables.version = versionNr;
131
- else
132
- fragmentVariables.version = undefined;
133
- }
134
- catch {
135
- fragmentVariables.version = undefined;
136
- }
137
- }
138
- if (context.isDebug)
139
- console.log(`⚪ [CmsContent] Component data fetching using variables: ${JSON.stringify(fragmentVariables)}`);
140
- const fragmentResponse = await client.request(fragmentQuery, fragmentVariables);
141
- const totalItems = fragmentResponse.contentById.total || 0;
142
- if (totalItems < 1)
143
- throw new Error(`CmsContent expected to load exactly one content item of type ${name}, received ${totalItems} from Optimizely Graph. Content Item: ${JSON.stringify(fragmentVariables)}`);
144
- if (totalItems > 1 && context.isDebug)
145
- console.warn(`🟠 [CmsContent] Resolved ${totalItems} content items, expected only 1. Picked the first one`);
146
- if (client.currentOptiCmsSchema == OptiCmsSchema.CMS12) {
147
- fragmentResponse.contentById.items[0]._metadata.locale = fragmentResponse.contentById.items[0]._metadata.locale ?? fragmentResponse.contentById.items[0]._locale?.name;
148
- if (fragmentResponse.contentById.items[0]._locale)
149
- delete fragmentResponse.contentById.items[0]._locale;
150
- }
151
- return fragmentResponse.contentById.items[0];
152
- }
153
- export default CmsContent;
154
- //# sourceMappingURL=cms-content.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cms-content.js","sourceRoot":"","sources":["../../../src/server/components/cms-content.tsx"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import 'server-only';
3
- import { getServerContext } from '@remkoj/optimizely-cms-react/rsc';
4
- /**
5
- * Server side wrapper to create HTML elements that include the needed
6
- * data-epi- properties to render the edit mode markers
7
- *
8
- * @param param0 The HTML element with the simple properties
9
- * @returns
10
- */
11
- //@ts-expect-error TypeScript just doesn't understand....
12
- export const CmsEditable = ({ as: DefaultElement, cmsId, cmsFieldName, children, key, ...props }) => {
13
- const HtmlElement = DefaultElement ?? 'div';
14
- const { inEditMode } = getServerContext();
15
- return _jsx(HtmlElement, { ...props, "data-epi-block-id": inEditMode ? cmsId ?? undefined : undefined, "data-epi-property-name": inEditMode ? cmsFieldName ?? undefined : undefined, children: children });
16
- };
17
- export default CmsEditable;
18
- //# sourceMappingURL=cms-editable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cms-editable.js","sourceRoot":"","sources":["../../../src/server/components/cms-editable.tsx"],"names":[],"mappings":";AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAenE;;;;;;GAMG;AACH,yDAAyD;AACzD,MAAM,CAAC,MAAM,WAAW,GAAG,CAA2C,EAAE,EAAE,EAAG,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,EAAwB,EAAE,EAAE;IAEjK,MAAM,WAAW,GAAG,cAAc,IAAI,KAAW,CAAA;IACjD,MAAM,EAAE,UAAU,EAAE,GAAG,gBAAgB,EAAE,CAAA;IACzC,OAAO,KAAC,WAAW,OAAK,KAAK,uBAAsB,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,4BAA4B,UAAU,CAAC,CAAC,CAAC,YAAY,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,YAAK,QAAQ,GAAgB,CAAA;AAC7M,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -1,12 +0,0 @@
1
- import type { IOptiGraphClient } from "@remkoj/optimizely-graph-client";
2
- import type { ContentType, ContentLinkWithLocale } from "../../types.js";
3
- /**
4
- * Resolve the ContentType of an Optimizely CMS Component, identified by its content link
5
- *
6
- * @param link The ContentLink of the content item
7
- * @param gqlClient The GraphQL client to use
8
- * @returns The ContentType, or undefined if it cannot be resolved
9
- */
10
- export declare function getContentType(link: ContentLinkWithLocale, gqlClient: IOptiGraphClient): Promise<ContentType | undefined>;
11
- export default getContentType;
12
- export declare const getContentTypeQuery: string;
@@ -1,51 +0,0 @@
1
- import { gql } from 'graphql-request';
2
- import * as Utils from "../../utilities.js";
3
- import { isContentLink } from "@remkoj/optimizely-graph-client/utils";
4
- const DEBUG = false;
5
- /**
6
- * Resolve the ContentType of an Optimizely CMS Component, identified by its content link
7
- *
8
- * @param link The ContentLink of the content item
9
- * @param gqlClient The GraphQL client to use
10
- * @returns The ContentType, or undefined if it cannot be resolved
11
- */
12
- export async function getContentType(link, gqlClient) {
13
- if (!isContentLink(link))
14
- throw new Error("Cannot dynamically determine the content type of an inline block");
15
- const gqlQueryVars = Utils.contentLinkToRequestVariables(link);
16
- const gqlResponse = await gqlClient.request(getContentTypeQuery, gqlQueryVars);
17
- if (gqlResponse.Content?.total != 1) {
18
- if (DEBUG)
19
- console.error(`getContentType: Expected exactly one type, received ${gqlResponse.Content?.total ?? 0} types for`, gqlQueryVars);
20
- return undefined;
21
- }
22
- const items = gqlResponse.Content?.items;
23
- if (!items || items.length == 0)
24
- throw new Error("The content item could not be found!");
25
- const contentType = Utils.normalizeContentType(items[0]?._metadata?.types);
26
- if (!contentType)
27
- throw new Error("The item did not contain type information");
28
- return contentType;
29
- }
30
- export default getContentType;
31
- export const getContentTypeQuery = gql `query getContentType($key: String!, $version: String, $locale: [Locales])
32
- {
33
- _Content(
34
- where: {
35
- _metadata: {
36
- key: { eq: $key }
37
- version: { eq: $version }
38
- }
39
- },
40
- locale: $locale
41
- limit: 1
42
- ) {
43
- items {
44
- _metadata {
45
- types
46
- }
47
- },
48
- total
49
- }
50
- }`;
51
- //# sourceMappingURL=get-content-type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-content-type.js","sourceRoot":"","sources":["../../../src/server/components/get-content-type.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AAErE,MAAM,KAAK,GAAG,KAAK,CAAA;AAEnB;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAA2B,EAAE,SAA2B;IAEzF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACvF,MAAM,YAAY,GAAG,KAAK,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAA;IAC9D,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,OAAO,CAAyB,mBAAmB,EAAE,YAAY,CAAC,CAAA;IACtG,IAAI,WAAW,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAClC,IAAI,KAAK;YACL,OAAO,CAAC,KAAK,CAAC,uDAAwD,WAAW,CAAC,OAAO,EAAE,KAAK,IAAI,CAAE,YAAY,EAAE,YAAY,CAAC,CAAA;QACrI,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,CAAA;IACxC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;IAE3D,MAAM,WAAW,GAAG,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;IAC1E,IAAI,CAAC,WAAW;QACZ,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAEhE,OAAO,WAAW,CAAA;AACtB,CAAC;AAED,eAAe,cAAc,CAAA;AAa7B,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;EAmBpC,CAAA"}
@@ -1,4 +0,0 @@
1
- export * from './cms-content.js';
2
- export * from './cms-content-area.js';
3
- export * from './cms-editable.js';
4
- export * from './visual-builder/index.js';
@@ -1,5 +0,0 @@
1
- export * from './cms-content.js';
2
- export * from './cms-content-area.js';
3
- export * from './cms-editable.js';
4
- export * from './visual-builder/index.js';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,2BAA2B,CAAA"}