@payloadcms/richtext-lexical 3.61.0-canary.5 → 3.61.0-internal.dd40839

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 (167) hide show
  1. package/dist/cell/rscEntry.d.ts +2 -10
  2. package/dist/cell/rscEntry.d.ts.map +1 -1
  3. package/dist/cell/rscEntry.js +1 -2
  4. package/dist/cell/rscEntry.js.map +1 -1
  5. package/dist/exports/client/Field-5VLZM7KJ.js +2 -0
  6. package/dist/exports/client/Field-5VLZM7KJ.js.map +7 -0
  7. package/dist/exports/client/RelationshipComponent-UCIWIEVD.js +2 -0
  8. package/dist/exports/client/RelationshipComponent-UCIWIEVD.js.map +7 -0
  9. package/dist/exports/client/bundled.css +1 -1
  10. package/dist/exports/client/chunk-52JG5GGJ.js +2 -0
  11. package/dist/exports/client/chunk-52JG5GGJ.js.map +7 -0
  12. package/dist/exports/client/chunk-U4AOQOHA.js +12 -0
  13. package/dist/exports/client/chunk-U4AOQOHA.js.map +7 -0
  14. package/dist/exports/client/component-5YLBQB5B.js +2 -0
  15. package/dist/exports/client/component-5YLBQB5B.js.map +7 -0
  16. package/dist/exports/client/componentInline-QEXUNJU4.js +2 -0
  17. package/dist/exports/client/index.js +22 -22
  18. package/dist/exports/client/index.js.map +3 -3
  19. package/dist/exports/react/index.d.ts +1 -1
  20. package/dist/exports/react/index.d.ts.map +1 -1
  21. package/dist/exports/react/index.js.map +1 -1
  22. package/dist/features/blocks/client/component/BlockContent.js +1 -1
  23. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  24. package/dist/features/blocks/client/component/index.d.ts +1 -0
  25. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  26. package/dist/features/blocks/client/component/index.js +23 -20
  27. package/dist/features/blocks/client/component/index.js.map +1 -1
  28. package/dist/features/blocks/client/componentInline/index.d.ts +2 -1
  29. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  30. package/dist/features/blocks/client/componentInline/index.js +6 -6
  31. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  32. package/dist/features/blocks/client/nodes/BlocksNode.d.ts +1 -1
  33. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  34. package/dist/features/blocks/client/nodes/BlocksNode.js +2 -1
  35. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  36. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts +1 -1
  37. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  38. package/dist/features/blocks/client/nodes/InlineBlocksNode.js +2 -1
  39. package/dist/features/blocks/client/nodes/InlineBlocksNode.js.map +1 -1
  40. package/dist/features/blocks/server/nodes/BlocksNode.d.ts +1 -0
  41. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  42. package/dist/features/blocks/server/nodes/BlocksNode.js +6 -0
  43. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  44. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts +1 -1
  45. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  46. package/dist/features/blocks/server/nodes/InlineBlocksNode.js +3 -2
  47. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  48. package/dist/features/converters/lexicalToJSX/Component/index.d.ts +2 -14
  49. package/dist/features/converters/lexicalToJSX/Component/index.d.ts.map +1 -1
  50. package/dist/features/converters/lexicalToJSX/Component/index.js +4 -2
  51. package/dist/features/converters/lexicalToJSX/Component/index.js.map +1 -1
  52. package/dist/features/converters/lexicalToJSX/converter/index.d.ts +16 -1
  53. package/dist/features/converters/lexicalToJSX/converter/index.d.ts.map +1 -1
  54. package/dist/features/converters/lexicalToJSX/converter/index.js +76 -4
  55. package/dist/features/converters/lexicalToJSX/converter/index.js.map +1 -1
  56. package/dist/features/converters/lexicalToJSX/converter/types.d.ts +14 -10
  57. package/dist/features/converters/lexicalToJSX/converter/types.d.ts.map +1 -1
  58. package/dist/features/converters/lexicalToJSX/converter/types.js.map +1 -1
  59. package/dist/features/debug/jsxConverter/client/plugin/index.js +1 -1
  60. package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
  61. package/dist/features/relationship/client/components/RelationshipComponent.d.ts +1 -1
  62. package/dist/features/relationship/client/components/RelationshipComponent.d.ts.map +1 -1
  63. package/dist/features/relationship/client/components/RelationshipComponent.js +2 -2
  64. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  65. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts +1 -0
  66. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  67. package/dist/features/relationship/server/nodes/RelationshipNode.js +6 -0
  68. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  69. package/dist/features/typesServer.d.ts +2 -2
  70. package/dist/features/typesServer.d.ts.map +1 -1
  71. package/dist/features/typesServer.js.map +1 -1
  72. package/dist/features/upload/client/component/index.d.ts +1 -0
  73. package/dist/features/upload/client/component/index.d.ts.map +1 -1
  74. package/dist/features/upload/client/component/index.js +2 -2
  75. package/dist/features/upload/client/component/index.js.map +1 -1
  76. package/dist/features/upload/client/nodes/UploadNode.d.ts +2 -2
  77. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  78. package/dist/features/upload/client/nodes/UploadNode.js +2 -1
  79. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  80. package/dist/features/upload/server/nodes/UploadNode.d.ts +2 -1
  81. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  82. package/dist/features/upload/server/nodes/UploadNode.js +6 -0
  83. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  84. package/dist/field/Field.d.ts.map +1 -1
  85. package/dist/field/Field.js +50 -38
  86. package/dist/field/Field.js.map +1 -1
  87. package/dist/field/RichTextViewProvider.d.ts +84 -0
  88. package/dist/field/RichTextViewProvider.d.ts.map +1 -0
  89. package/dist/field/RichTextViewProvider.js +92 -0
  90. package/dist/field/RichTextViewProvider.js.map +1 -0
  91. package/dist/field/ViewSelector.d.ts +4 -0
  92. package/dist/field/ViewSelector.d.ts.map +1 -0
  93. package/dist/field/ViewSelector.js +89 -0
  94. package/dist/field/ViewSelector.js.map +1 -0
  95. package/dist/field/bundled.css +1 -1
  96. package/dist/field/index.d.ts.map +1 -1
  97. package/dist/field/index.js +63 -41
  98. package/dist/field/index.js.map +1 -1
  99. package/dist/field/rscEntry.d.ts +2 -3
  100. package/dist/field/rscEntry.d.ts.map +1 -1
  101. package/dist/field/rscEntry.js +15 -1
  102. package/dist/field/rscEntry.js.map +1 -1
  103. package/dist/index.d.ts +1 -1
  104. package/dist/index.d.ts.map +1 -1
  105. package/dist/index.js +9 -24
  106. package/dist/index.js.map +1 -1
  107. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  108. package/dist/lexical/LexicalEditor.js +2 -1
  109. package/dist/lexical/LexicalEditor.js.map +1 -1
  110. package/dist/lexical/LexicalProvider.d.ts.map +1 -1
  111. package/dist/lexical/LexicalProvider.js +12 -3
  112. package/dist/lexical/LexicalProvider.js.map +1 -1
  113. package/dist/lexical/config/client/loader.d.ts.map +1 -1
  114. package/dist/lexical/config/client/loader.js +2 -4
  115. package/dist/lexical/config/client/loader.js.map +1 -1
  116. package/dist/lexical/nodes/index.d.ts +12 -2
  117. package/dist/lexical/nodes/index.d.ts.map +1 -1
  118. package/dist/lexical/nodes/index.js +195 -2
  119. package/dist/lexical/nodes/index.js.map +1 -1
  120. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts +2 -0
  121. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts.map +1 -0
  122. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js +48 -0
  123. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -0
  124. package/dist/lexical/plugins/handles/utils/setHandlePosition.d.ts.map +1 -1
  125. package/dist/lexical/plugins/handles/utils/setHandlePosition.js +1 -1
  126. package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
  127. package/dist/lexical/theme/EditorTheme.d.ts.map +1 -1
  128. package/dist/lexical/theme/EditorTheme.js +3 -39
  129. package/dist/lexical/theme/EditorTheme.js.map +1 -1
  130. package/dist/lexical/ui/ContentEditable.d.ts.map +1 -1
  131. package/dist/lexical/ui/ContentEditable.js +16 -9
  132. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  133. package/dist/types.d.ts +138 -4
  134. package/dist/types.d.ts.map +1 -1
  135. package/dist/types.js.map +1 -1
  136. package/dist/utilities/editorConfigFactory.js +1 -1
  137. package/dist/utilities/editorConfigFactory.js.map +1 -1
  138. package/dist/utilities/generateImportMap.d.ts +2 -0
  139. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  140. package/dist/utilities/generateImportMap.js +6 -13
  141. package/dist/utilities/generateImportMap.js.map +1 -1
  142. package/dist/{getDefaultSanitizedEditorConfig.d.ts → utilities/getDefaultSanitizedEditorConfig.d.ts} +1 -1
  143. package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts.map +1 -0
  144. package/dist/{getDefaultSanitizedEditorConfig.js → utilities/getDefaultSanitizedEditorConfig.js} +2 -2
  145. package/dist/utilities/getDefaultSanitizedEditorConfig.js.map +1 -0
  146. package/dist/utilities/initLexicalFeatures.d.ts.map +1 -1
  147. package/dist/utilities/initLexicalFeatures.js +12 -13
  148. package/dist/utilities/initLexicalFeatures.js.map +1 -1
  149. package/dist/validate/hasText.d.ts +6 -1
  150. package/dist/validate/hasText.d.ts.map +1 -1
  151. package/dist/validate/hasText.js +10 -4
  152. package/dist/validate/hasText.js.map +1 -1
  153. package/package.json +6 -6
  154. package/dist/exports/client/Field-YYMTSGSP.js +0 -2
  155. package/dist/exports/client/Field-YYMTSGSP.js.map +0 -7
  156. package/dist/exports/client/RelationshipComponent-JXQOFHXF.js +0 -2
  157. package/dist/exports/client/RelationshipComponent-JXQOFHXF.js.map +0 -7
  158. package/dist/exports/client/chunk-AFXLIYGL.js +0 -12
  159. package/dist/exports/client/chunk-AFXLIYGL.js.map +0 -7
  160. package/dist/exports/client/chunk-RPFDD27K.js +0 -2
  161. package/dist/exports/client/chunk-RPFDD27K.js.map +0 -7
  162. package/dist/exports/client/component-WT25HAJA.js +0 -2
  163. package/dist/exports/client/component-WT25HAJA.js.map +0 -7
  164. package/dist/exports/client/componentInline-BVC77WQC.js +0 -2
  165. package/dist/getDefaultSanitizedEditorConfig.d.ts.map +0 -1
  166. package/dist/getDefaultSanitizedEditorConfig.js.map +0 -1
  167. /package/dist/exports/client/{componentInline-BVC77WQC.js.map → componentInline-QEXUNJU4.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/field/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA8C,MAAM,OAAO,CAAA;AAIlE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAU5D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqE7D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/field/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA8C,MAAM,OAAO,CAAA;AAIlE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AAU5D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAmE7D,CAAA"}
@@ -11,45 +11,53 @@ const RichTextEditor = /*#__PURE__*/lazy(() => import('./Field.js').then(module
11
11
  default: module.RichText
12
12
  })));
13
13
  export const RichTextField = props => {
14
- const $ = _c(16);
14
+ const $ = _c(28);
15
15
  const {
16
16
  admin: t0,
17
17
  clientFeatures,
18
- featureClientImportMap,
18
+ featureClientImportMap: t1,
19
19
  featureClientSchemaMap,
20
20
  field,
21
- lexicalEditorConfig: t1,
22
- schemaPath
21
+ lexicalEditorConfig: t2,
22
+ schemaPath,
23
+ views
23
24
  } = props;
24
- let t2;
25
+ let t3;
25
26
  if ($[0] !== t0) {
26
- t2 = t0 === undefined ? {} : t0;
27
+ t3 = t0 === undefined ? {} : t0;
27
28
  $[0] = t0;
28
- $[1] = t2;
29
+ $[1] = t3;
29
30
  } else {
30
- t2 = $[1];
31
+ t3 = $[1];
31
32
  }
32
- const admin = t2;
33
- const lexicalEditorConfig = t1 === undefined ? defaultEditorLexicalConfig : t1;
33
+ const admin = t3;
34
+ let t4;
35
+ if ($[2] !== t1) {
36
+ t4 = t1 === undefined ? {} : t1;
37
+ $[2] = t1;
38
+ $[3] = t4;
39
+ } else {
40
+ t4 = $[3];
41
+ }
42
+ const featureClientImportMap = t4;
43
+ const lexicalEditorConfig = t2 === undefined ? defaultEditorLexicalConfig : t2;
34
44
  const {
35
45
  config
36
46
  } = useConfig();
37
47
  const [finalSanitizedEditorConfig, setFinalSanitizedEditorConfig] = useState(null);
38
- let t3;
39
- let t4;
40
- if ($[2] !== admin || $[3] !== clientFeatures || $[4] !== config || $[5] !== featureClientImportMap || $[6] !== featureClientSchemaMap || $[7] !== field || $[8] !== finalSanitizedEditorConfig || $[9] !== lexicalEditorConfig || $[10] !== schemaPath) {
41
- t3 = () => {
48
+ let t5;
49
+ if ($[4] !== admin || $[5] !== clientFeatures || $[6] !== config || $[7] !== featureClientImportMap || $[8] !== featureClientSchemaMap || $[9] !== field || $[10] !== finalSanitizedEditorConfig || $[11] !== lexicalEditorConfig || $[12] !== schemaPath) {
50
+ t5 = () => {
42
51
  if (finalSanitizedEditorConfig) {
43
52
  return;
44
53
  }
45
54
  const featureProvidersLocal = [];
46
- for (const [_featureKey, clientFeature] of Object.entries(clientFeatures)) {
55
+ for (const clientFeature of Object.values(clientFeatures)) {
47
56
  if (!clientFeature.clientFeatureProvider) {
48
57
  continue;
49
58
  }
50
59
  featureProvidersLocal.push(clientFeature.clientFeatureProvider(clientFeature.clientFeatureProps));
51
60
  }
52
- const finalLexicalEditorConfig = lexicalEditorConfig ? lexicalEditorConfig : defaultEditorLexicalConfig;
53
61
  const resolvedClientFeatures = loadClientFeatures({
54
62
  config,
55
63
  featureClientImportMap,
@@ -58,31 +66,45 @@ export const RichTextField = props => {
58
66
  schemaPath: schemaPath ?? field.name,
59
67
  unSanitizedEditorConfig: {
60
68
  features: featureProvidersLocal,
61
- lexical: finalLexicalEditorConfig
69
+ lexical: lexicalEditorConfig
62
70
  }
63
71
  });
64
- setFinalSanitizedEditorConfig(sanitizeClientEditorConfig(resolvedClientFeatures, finalLexicalEditorConfig, admin));
72
+ setFinalSanitizedEditorConfig(sanitizeClientEditorConfig(resolvedClientFeatures, lexicalEditorConfig, admin));
65
73
  };
66
- t4 = [lexicalEditorConfig, admin, finalSanitizedEditorConfig, clientFeatures, featureClientImportMap, featureClientSchemaMap, field, config, schemaPath];
67
- $[2] = admin;
68
- $[3] = clientFeatures;
69
- $[4] = config;
70
- $[5] = featureClientImportMap;
71
- $[6] = featureClientSchemaMap;
72
- $[7] = field;
73
- $[8] = finalSanitizedEditorConfig;
74
- $[9] = lexicalEditorConfig;
75
- $[10] = schemaPath;
76
- $[11] = t3;
77
- $[12] = t4;
74
+ $[4] = admin;
75
+ $[5] = clientFeatures;
76
+ $[6] = config;
77
+ $[7] = featureClientImportMap;
78
+ $[8] = featureClientSchemaMap;
79
+ $[9] = field;
80
+ $[10] = finalSanitizedEditorConfig;
81
+ $[11] = lexicalEditorConfig;
82
+ $[12] = schemaPath;
83
+ $[13] = t5;
78
84
  } else {
79
- t3 = $[11];
80
- t4 = $[12];
85
+ t5 = $[13];
81
86
  }
82
- useEffect(t3, t4);
83
- let t5;
84
- if ($[13] !== finalSanitizedEditorConfig || $[14] !== props) {
85
- t5 = _jsx(Suspense, {
87
+ let t6;
88
+ if ($[14] !== admin || $[15] !== clientFeatures || $[16] !== config || $[17] !== featureClientImportMap || $[18] !== featureClientSchemaMap || $[19] !== field || $[20] !== finalSanitizedEditorConfig || $[21] !== lexicalEditorConfig || $[22] !== schemaPath || $[23] !== views) {
89
+ t6 = [admin, clientFeatures, config, featureClientImportMap, featureClientSchemaMap, field, finalSanitizedEditorConfig, lexicalEditorConfig, schemaPath, views];
90
+ $[14] = admin;
91
+ $[15] = clientFeatures;
92
+ $[16] = config;
93
+ $[17] = featureClientImportMap;
94
+ $[18] = featureClientSchemaMap;
95
+ $[19] = field;
96
+ $[20] = finalSanitizedEditorConfig;
97
+ $[21] = lexicalEditorConfig;
98
+ $[22] = schemaPath;
99
+ $[23] = views;
100
+ $[24] = t6;
101
+ } else {
102
+ t6 = $[24];
103
+ }
104
+ useEffect(t5, t6);
105
+ let t7;
106
+ if ($[25] !== finalSanitizedEditorConfig || $[26] !== props) {
107
+ t7 = _jsx(Suspense, {
86
108
  fallback: _jsx(ShimmerEffect, {
87
109
  height: "35vh"
88
110
  }),
@@ -91,12 +113,12 @@ export const RichTextField = props => {
91
113
  editorConfig: finalSanitizedEditorConfig
92
114
  })
93
115
  });
94
- $[13] = finalSanitizedEditorConfig;
95
- $[14] = props;
96
- $[15] = t5;
116
+ $[25] = finalSanitizedEditorConfig;
117
+ $[26] = props;
118
+ $[27] = t7;
97
119
  } else {
98
- t5 = $[15];
120
+ t7 = $[27];
99
121
  }
100
- return t5;
122
+ return t7;
101
123
  };
102
124
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","ShimmerEffect","useConfig","React","lazy","Suspense","useEffect","useState","defaultEditorLexicalConfig","loadClientFeatures","sanitizeClientEditorConfig","RichTextEditor","then","module","default","RichText","RichTextField","props","$","admin","t0","clientFeatures","featureClientImportMap","featureClientSchemaMap","field","lexicalEditorConfig","t1","schemaPath","t2","undefined","config","finalSanitizedEditorConfig","setFinalSanitizedEditorConfig","t3","t4","featureProvidersLocal","_featureKey","clientFeature","Object","entries","clientFeatureProvider","push","clientFeatureProps","finalLexicalEditorConfig","resolvedClientFeatures","name","unSanitizedEditorConfig","features","lexical","t5","_jsx","fallback","height","editorConfig"],"sources":["../../src/field/index.tsx"],"sourcesContent":["'use client'\n\nimport type { RichTextFieldClient } from 'payload'\n\nimport { ShimmerEffect, useConfig } from '@payloadcms/ui'\nimport React, { lazy, Suspense, useEffect, useState } from 'react'\n\nimport type { FeatureProviderClient } from '../features/typesClient.js'\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\nimport type { LexicalRichTextFieldProps } from '../types.js'\n\nimport { defaultEditorLexicalConfig } from '../lexical/config/client/default.js'\nimport { loadClientFeatures } from '../lexical/config/client/loader.js'\nimport { sanitizeClientEditorConfig } from '../lexical/config/client/sanitize.js'\n\nconst RichTextEditor = lazy(() =>\n import('./Field.js').then((module) => ({ default: module.RichText })),\n)\n\nexport const RichTextField: React.FC<LexicalRichTextFieldProps> = (props) => {\n const {\n admin = {},\n clientFeatures,\n featureClientImportMap,\n featureClientSchemaMap,\n field,\n lexicalEditorConfig = defaultEditorLexicalConfig,\n schemaPath,\n } = props\n\n const { config } = useConfig()\n\n const [finalSanitizedEditorConfig, setFinalSanitizedEditorConfig] =\n useState<null | SanitizedClientEditorConfig>(null)\n\n useEffect(() => {\n if (finalSanitizedEditorConfig) {\n return\n }\n\n const featureProvidersLocal: FeatureProviderClient<any, any>[] = []\n for (const [_featureKey, clientFeature] of Object.entries(clientFeatures)) {\n if (!clientFeature.clientFeatureProvider) {\n continue\n }\n featureProvidersLocal.push(\n clientFeature.clientFeatureProvider(clientFeature.clientFeatureProps),\n ) // Execute the clientFeatureProvider function here, as the server cannot execute functions imported from use client files\n }\n\n const finalLexicalEditorConfig = lexicalEditorConfig\n ? lexicalEditorConfig\n : defaultEditorLexicalConfig\n\n const resolvedClientFeatures = loadClientFeatures({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field: field as RichTextFieldClient,\n schemaPath: schemaPath ?? field.name,\n unSanitizedEditorConfig: {\n features: featureProvidersLocal,\n lexical: finalLexicalEditorConfig,\n },\n })\n\n setFinalSanitizedEditorConfig(\n sanitizeClientEditorConfig(resolvedClientFeatures, finalLexicalEditorConfig, admin),\n )\n }, [\n lexicalEditorConfig,\n admin,\n finalSanitizedEditorConfig,\n clientFeatures,\n featureClientImportMap,\n featureClientSchemaMap,\n field,\n config,\n schemaPath,\n ]) // TODO: Optimize this and use useMemo for this in the future. This might break sub-richtext-blocks from the blocks feature. Need to investigate\n\n return (\n <Suspense fallback={<ShimmerEffect height=\"35vh\" />}>\n {finalSanitizedEditorConfig && (\n <RichTextEditor {...props} editorConfig={finalSanitizedEditorConfig} />\n )}\n </Suspense>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","ShimmerEffect","useConfig","React","lazy","Suspense","useEffect","useState","defaultEditorLexicalConfig","loadClientFeatures","sanitizeClientEditorConfig","RichTextEditor","then","module","default","RichText","RichTextField","props","$","admin","t0","clientFeatures","featureClientImportMap","t1","featureClientSchemaMap","field","lexicalEditorConfig","t2","schemaPath","views","t3","undefined","t4","config","finalSanitizedEditorConfig","setFinalSanitizedEditorConfig","t5","featureProvidersLocal","clientFeature","Object","values","clientFeatureProvider","push","clientFeatureProps","resolvedClientFeatures","name","unSanitizedEditorConfig","features","lexical","t6","t7","_jsx","fallback","height","editorConfig"],"sources":["../../src/field/index.tsx"],"sourcesContent":["'use client'\n\nimport type { RichTextFieldClient } from 'payload'\n\nimport { ShimmerEffect, useConfig } from '@payloadcms/ui'\nimport React, { lazy, Suspense, useEffect, useState } from 'react'\n\nimport type { FeatureProviderClient } from '../features/typesClient.js'\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\nimport type { LexicalRichTextFieldProps } from '../types.js'\n\nimport { defaultEditorLexicalConfig } from '../lexical/config/client/default.js'\nimport { loadClientFeatures } from '../lexical/config/client/loader.js'\nimport { sanitizeClientEditorConfig } from '../lexical/config/client/sanitize.js'\n\nconst RichTextEditor = lazy(() =>\n import('./Field.js').then((module) => ({ default: module.RichText })),\n)\n\nexport const RichTextField: React.FC<LexicalRichTextFieldProps> = (props) => {\n const {\n admin = {},\n clientFeatures,\n featureClientImportMap = {},\n featureClientSchemaMap,\n field,\n lexicalEditorConfig = defaultEditorLexicalConfig,\n schemaPath,\n views,\n } = props\n\n const { config } = useConfig()\n\n const [finalSanitizedEditorConfig, setFinalSanitizedEditorConfig] =\n useState<null | SanitizedClientEditorConfig>(null)\n\n useEffect(() => {\n if (finalSanitizedEditorConfig) {\n return\n }\n\n const featureProvidersLocal: FeatureProviderClient<any, any>[] = []\n for (const clientFeature of Object.values(clientFeatures)) {\n if (!clientFeature.clientFeatureProvider) {\n continue\n }\n featureProvidersLocal.push(\n clientFeature.clientFeatureProvider(clientFeature.clientFeatureProps),\n ) // Execute the clientFeatureProvider function here, as the server cannot execute functions imported from use client files\n }\n\n const resolvedClientFeatures = loadClientFeatures({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field: field as RichTextFieldClient,\n schemaPath: schemaPath ?? field.name,\n unSanitizedEditorConfig: {\n features: featureProvidersLocal,\n lexical: lexicalEditorConfig,\n },\n })\n\n setFinalSanitizedEditorConfig(\n sanitizeClientEditorConfig(resolvedClientFeatures, lexicalEditorConfig, admin),\n )\n }, [\n admin,\n clientFeatures,\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field,\n finalSanitizedEditorConfig,\n lexicalEditorConfig,\n schemaPath,\n views,\n ]) // TODO: Optimize this and use useMemo for this in the future. This might break sub-richtext-blocks from the blocks feature. Need to investigate\n\n return (\n <Suspense fallback={<ShimmerEffect height=\"35vh\" />}>\n {finalSanitizedEditorConfig && (\n <RichTextEditor {...props} editorConfig={finalSanitizedEditorConfig} />\n )}\n </Suspense>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,8 @@
1
1
  import type { ClientComponentProps, FieldPaths, ServerComponentProps } from 'payload';
2
2
  import React from 'react';
3
3
  import type { SanitizedServerEditorConfig } from '../lexical/config/types.js';
4
- import type { LexicalFieldAdminProps } from '../types.js';
4
+ import type { LexicalEditorProps } from '../types.js';
5
5
  export declare const RscEntryLexicalField: React.FC<{
6
- admin: LexicalFieldAdminProps;
7
6
  sanitizedEditorConfig: SanitizedServerEditorConfig;
8
- } & ClientComponentProps & Pick<FieldPaths, 'path'> & ServerComponentProps>;
7
+ } & ClientComponentProps & Pick<FieldPaths, 'path'> & Pick<LexicalEditorProps, 'admin' | 'views'> & ServerComponentProps>;
9
8
  //# sourceMappingURL=rscEntry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rscEntry.d.ts","sourceRoot":"","sources":["../../src/field/rscEntry.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EAGV,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,aAAa,CAAA;AAOpB,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CACzC;IACE,KAAK,EAAE,sBAAsB,CAAA;IAC7B,qBAAqB,EAAE,2BAA2B,CAAA;CACnD,GAAG,oBAAoB,GACtB,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GACxB,oBAAoB,CA2FvB,CAAA"}
1
+ {"version":3,"file":"rscEntry.d.ts","sourceRoot":"","sources":["../../src/field/rscEntry.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EAGV,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAKhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,aAAa,CAAA;AAOpB,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CACzC;IACE,qBAAqB,EAAE,2BAA2B,CAAA;CACnD,GAAG,oBAAoB,GACtB,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GACxB,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC,GAC3C,oBAAoB,CAyGvB,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getTranslation } from '@payloadcms/translations';
3
3
  import { renderField } from '@payloadcms/ui/forms/renderField';
4
+ import { getFromImportMap } from 'payload/shared';
4
5
  import React from 'react';
5
6
  // eslint-disable-next-line payload/no-imports-from-exports-dir
6
7
  import { RichTextField } from '../exports/client/index.js';
@@ -68,7 +69,6 @@ export const RscEntryLexicalField = async args => {
68
69
  }
69
70
  const props = {
70
71
  clientFeatures,
71
- featureClientImportMap,
72
72
  featureClientSchemaMap,
73
73
  field: args.clientField,
74
74
  forceRender: args.forceRender,
@@ -80,9 +80,23 @@ export const RscEntryLexicalField = async args => {
80
80
  renderedBlocks: args.renderedBlocks,
81
81
  schemaPath
82
82
  };
83
+ if (args?.views) {
84
+ const viewMap = getFromImportMap({
85
+ importMap: args.payload.importMap,
86
+ PayloadComponent: args.views,
87
+ schemaPath: 'lexical-viewMap',
88
+ silent: true
89
+ });
90
+ if (viewMap) {
91
+ props.views = viewMap;
92
+ }
93
+ }
83
94
  if (Object.keys(admin).length) {
84
95
  props.admin = admin;
85
96
  }
97
+ if (Object.keys(featureClientImportMap).length) {
98
+ props.featureClientImportMap = featureClientImportMap;
99
+ }
86
100
  for (const key in props) {
87
101
  if (props[key] === undefined) {
88
102
  delete props[key];
@@ -1 +1 @@
1
- {"version":3,"file":"rscEntry.js","names":["getTranslation","renderField","React","RichTextField","buildInitialState","initLexicalFeatures","RscEntryLexicalField","args","field","path","clientField","name","schemaPath","disabled","readOnly","admin","Error","clientFeatures","featureClientImportMap","featureClientSchemaMap","clientFieldSchemaMap","fieldSchemaMap","i18n","payload","sanitizedEditorConfig","initialLexicalFormState","siblingData","root","children","length","context","id","collectionSlug","documentData","data","lexicalFieldSchemaPath","operation","permissions","preferences","renderFieldFn","req","nodeData","placeholderFromArgs","placeholder","undefined","hideGutter","hideInsertParagraphAtEnd","hideAddBlockButton","hideDraggableBlockElement","props","forceRender","lexicalEditorConfig","lexical","renderedBlocks","Object","keys","key","_jsx"],"sources":["../../src/field/rscEntry.tsx"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\nimport type {\n ClientComponentProps,\n FieldPaths,\n RichTextFieldClient,\n RichTextField as RichTextFieldType,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { renderField } from '@payloadcms/ui/forms/renderField'\nimport React from 'react'\n\nimport type { SanitizedServerEditorConfig } from '../lexical/config/types.js'\nimport type {\n LexicalFieldAdminClientProps,\n LexicalFieldAdminProps,\n LexicalRichTextFieldProps,\n} from '../types.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { RichTextField } from '../exports/client/index.js'\nimport { buildInitialState } from '../utilities/buildInitialState.js'\nimport { initLexicalFeatures } from '../utilities/initLexicalFeatures.js'\n\nexport const RscEntryLexicalField: React.FC<\n {\n admin: LexicalFieldAdminProps\n sanitizedEditorConfig: SanitizedServerEditorConfig\n } & ClientComponentProps &\n Pick<FieldPaths, 'path'> &\n ServerComponentProps\n> = async (args) => {\n const field: RichTextFieldType = args.field as RichTextFieldType\n const path = args.path ?? (args.clientField as RichTextFieldClient).name\n const schemaPath = args.schemaPath ?? path\n\n const disabled = args?.readOnly || field?.admin?.readOnly\n\n if (!(args?.clientField as RichTextFieldClient)?.name) {\n throw new Error('Initialized lexical RSC field without a field name')\n }\n\n const { clientFeatures, featureClientImportMap, featureClientSchemaMap } = initLexicalFeatures({\n clientFieldSchemaMap: args.clientFieldSchemaMap,\n fieldSchemaMap: args.fieldSchemaMap,\n i18n: args.i18n,\n path,\n payload: args.payload,\n sanitizedEditorConfig: args.sanitizedEditorConfig,\n schemaPath,\n })\n\n let initialLexicalFormState = {}\n if (args.siblingData?.[field.name]?.root?.children?.length) {\n initialLexicalFormState = await buildInitialState({\n context: {\n id: args.id,\n clientFieldSchemaMap: args.clientFieldSchemaMap,\n collectionSlug: args.collectionSlug,\n disabled,\n documentData: args.data,\n field,\n fieldSchemaMap: args.fieldSchemaMap,\n lexicalFieldSchemaPath: schemaPath,\n operation: args.operation,\n permissions: args.permissions,\n preferences: args.preferences,\n renderFieldFn: renderField,\n req: args.req,\n },\n nodeData: args.siblingData?.[field.name]?.root?.children as SerializedLexicalNode[],\n })\n }\n\n const placeholderFromArgs = args.admin?.placeholder\n const placeholder = placeholderFromArgs\n ? getTranslation(placeholderFromArgs, args.i18n)\n : undefined\n\n const admin: LexicalFieldAdminClientProps = {}\n if (placeholder) {\n admin.placeholder = placeholder\n }\n if (args.admin?.hideGutter) {\n admin.hideGutter = true\n }\n if (args.admin?.hideInsertParagraphAtEnd) {\n admin.hideInsertParagraphAtEnd = true\n }\n if (args.admin?.hideAddBlockButton) {\n admin.hideAddBlockButton = true\n }\n if (args.admin?.hideDraggableBlockElement) {\n admin.hideDraggableBlockElement = true\n }\n\n const props: LexicalRichTextFieldProps = {\n clientFeatures,\n featureClientImportMap,\n featureClientSchemaMap, // TODO: Does client need this? Why cant this just live in the server\n field: args.clientField as RichTextFieldClient,\n forceRender: args.forceRender,\n initialLexicalFormState,\n lexicalEditorConfig: args.sanitizedEditorConfig.lexical,\n path,\n permissions: args.permissions,\n readOnly: args.readOnly,\n renderedBlocks: args.renderedBlocks,\n schemaPath,\n }\n if (Object.keys(admin).length) {\n props.admin = admin\n }\n\n for (const key in props) {\n if (props[key as keyof LexicalRichTextFieldProps] === undefined) {\n delete props[key as keyof LexicalRichTextFieldProps]\n }\n }\n\n return <RichTextField {...props} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"rscEntry.js","names":["getTranslation","renderField","getFromImportMap","React","RichTextField","buildInitialState","initLexicalFeatures","RscEntryLexicalField","args","field","path","clientField","name","schemaPath","disabled","readOnly","admin","Error","clientFeatures","featureClientImportMap","featureClientSchemaMap","clientFieldSchemaMap","fieldSchemaMap","i18n","payload","sanitizedEditorConfig","initialLexicalFormState","siblingData","root","children","length","context","id","collectionSlug","documentData","data","lexicalFieldSchemaPath","operation","permissions","preferences","renderFieldFn","req","nodeData","placeholderFromArgs","placeholder","undefined","hideGutter","hideInsertParagraphAtEnd","hideAddBlockButton","hideDraggableBlockElement","props","forceRender","lexicalEditorConfig","lexical","renderedBlocks","views","viewMap","importMap","PayloadComponent","silent","Object","keys","key","_jsx"],"sources":["../../src/field/rscEntry.tsx"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\nimport type {\n ClientComponentProps,\n FieldPaths,\n RichTextFieldClient,\n RichTextField as RichTextFieldType,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { renderField } from '@payloadcms/ui/forms/renderField'\nimport { getFromImportMap } from 'payload/shared'\nimport React from 'react'\n\nimport type { SanitizedServerEditorConfig } from '../lexical/config/types.js'\nimport type {\n LexicalEditorProps,\n LexicalEditorViewMap,\n LexicalFieldAdminClientProps,\n LexicalRichTextFieldProps,\n} from '../types.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir\nimport { RichTextField } from '../exports/client/index.js'\nimport { buildInitialState } from '../utilities/buildInitialState.js'\nimport { initLexicalFeatures } from '../utilities/initLexicalFeatures.js'\n\nexport const RscEntryLexicalField: React.FC<\n {\n sanitizedEditorConfig: SanitizedServerEditorConfig\n } & ClientComponentProps &\n Pick<FieldPaths, 'path'> &\n Pick<LexicalEditorProps, 'admin' | 'views'> &\n ServerComponentProps\n> = async (args) => {\n const field: RichTextFieldType = args.field as RichTextFieldType\n const path = args.path ?? (args.clientField as RichTextFieldClient).name\n const schemaPath = args.schemaPath ?? path\n\n const disabled = args?.readOnly || field?.admin?.readOnly\n\n if (!(args?.clientField as RichTextFieldClient)?.name) {\n throw new Error('Initialized lexical RSC field without a field name')\n }\n\n const { clientFeatures, featureClientImportMap, featureClientSchemaMap } = initLexicalFeatures({\n clientFieldSchemaMap: args.clientFieldSchemaMap,\n fieldSchemaMap: args.fieldSchemaMap,\n i18n: args.i18n,\n path,\n payload: args.payload,\n sanitizedEditorConfig: args.sanitizedEditorConfig,\n schemaPath,\n })\n\n let initialLexicalFormState = {}\n if (args.siblingData?.[field.name]?.root?.children?.length) {\n initialLexicalFormState = await buildInitialState({\n context: {\n id: args.id,\n clientFieldSchemaMap: args.clientFieldSchemaMap,\n collectionSlug: args.collectionSlug,\n disabled,\n documentData: args.data,\n field,\n fieldSchemaMap: args.fieldSchemaMap,\n lexicalFieldSchemaPath: schemaPath,\n operation: args.operation,\n permissions: args.permissions,\n preferences: args.preferences,\n renderFieldFn: renderField,\n req: args.req,\n },\n nodeData: args.siblingData?.[field.name]?.root?.children as SerializedLexicalNode[],\n })\n }\n\n const placeholderFromArgs = args.admin?.placeholder\n const placeholder = placeholderFromArgs\n ? getTranslation(placeholderFromArgs, args.i18n)\n : undefined\n\n const admin: LexicalFieldAdminClientProps = {}\n if (placeholder) {\n admin.placeholder = placeholder\n }\n if (args.admin?.hideGutter) {\n admin.hideGutter = true\n }\n if (args.admin?.hideInsertParagraphAtEnd) {\n admin.hideInsertParagraphAtEnd = true\n }\n if (args.admin?.hideAddBlockButton) {\n admin.hideAddBlockButton = true\n }\n if (args.admin?.hideDraggableBlockElement) {\n admin.hideDraggableBlockElement = true\n }\n\n const props: LexicalRichTextFieldProps = {\n clientFeatures,\n featureClientSchemaMap, // TODO: Does client need this? Why cant this just live in the server\n field: args.clientField as RichTextFieldClient,\n forceRender: args.forceRender,\n initialLexicalFormState,\n lexicalEditorConfig: args.sanitizedEditorConfig.lexical,\n path,\n permissions: args.permissions,\n readOnly: args.readOnly,\n renderedBlocks: args.renderedBlocks,\n schemaPath,\n }\n if (args?.views) {\n const viewMap = getFromImportMap<LexicalEditorViewMap>({\n importMap: args.payload.importMap,\n PayloadComponent: args.views,\n schemaPath: 'lexical-viewMap',\n silent: true,\n })\n if (viewMap) {\n props.views = viewMap\n }\n }\n\n if (Object.keys(admin).length) {\n props.admin = admin\n }\n if (Object.keys(featureClientImportMap).length) {\n props.featureClientImportMap = featureClientImportMap\n }\n\n for (const key in props) {\n if (props[key as keyof LexicalRichTextFieldProps] === undefined) {\n delete props[key as keyof LexicalRichTextFieldProps]\n }\n }\n\n return <RichTextField {...props} />\n}\n"],"mappings":"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","ignoreList":[]}
package/dist/index.d.ts CHANGED
@@ -71,7 +71,7 @@ export type * from './nodeTypes.js';
71
71
  export { $convertFromMarkdownString } from './packages/@lexical/markdown/index.js';
72
72
  export { defaultRichTextValue } from './populateGraphQL/defaultValue.js';
73
73
  export { populate } from './populateGraphQL/populate.js';
74
- export type { LexicalEditorProps, LexicalFieldAdminProps, LexicalRichTextAdapter } from './types.js';
74
+ export type { LexicalEditorProps, LexicalEditorViewMap, LexicalFieldAdminProps, LexicalRichTextAdapter, } from './types.js';
75
75
  export { buildDefaultEditorState, buildEditorState } from './utilities/buildEditorState.js';
76
76
  export { createServerFeature } from './utilities/createServerFeature.js';
77
77
  export { editorConfigFactory } from './utilities/editorConfigFactory.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAclG,eAAO,MAAM,oBAAoB,WAAW,CAAA;AAE5C,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG,8BAA8B,CA+zBvF;AAED,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAE1F,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,KAAK,WAAW,EAChB,eAAe,GAChB,MAAM,8CAA8C,CAAA;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAA;AAEnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,0DAA0D,CAAA;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,kFAAkF,CAAA;AAEzH,OAAO,EAAE,sBAAsB,EAAE,MAAM,kFAAkF,CAAA;AAEzH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4EAA4E,CAAA;AAC7G,OAAO,EAAE,iBAAiB,EAAE,MAAM,6EAA6E,CAAA;AAC/G,OAAO,EAAE,qBAAqB,EAAE,MAAM,+EAA+E,CAAA;AAErH,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,mEAAmE,CAAA;AAC1E,YAAY,EAAE,aAAa,EAAE,MAAM,mEAAmE,CAAA;AACtG,OAAO,EACL,yBAAyB,EACzB,WAAW,GACZ,MAAM,+DAA+D,CAAA;AACtE,OAAO,EACL,oBAAoB,EACpB,KAAK,yBAAyB,GAC/B,MAAM,yDAAyD,CAAA;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAA;AAC3F,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAA;AAC3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAA;AAE3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AACrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAA;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAA;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAA;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAA;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAA;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAA;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAA;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAA;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAA;AAChF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAA;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACjE,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,GACb,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAE1F,YAAY,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,KAAK,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAE1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAA;AACrF,YAAY,EACV,SAAS,EACT,kBAAkB,GACnB,MAAM,yDAAyD,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,GAC9B,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EACL,KAAK,gBAAgB,EACrB,sBAAsB,GACvB,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAEzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAA;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAA;AACjF,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAClF,YAAY,EACV,sBAAsB,EACtB,aAAa,EACb,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC7B,eAAe,EACf,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,GAChB,MAAM,2BAA2B,CAAA;AAElC,YAAY,EACV,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,6BAA6B,EAC7B,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,aAAa,EACb,wBAAwB,GACzB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACjE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAA;AAE3E,OAAO,EAAE,KAAK,UAAU,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAA;AAChG,YAAY,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAA;AAE9F,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAA;AAE/F,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,qCAAqC,CAAA;AAC5C,YAAY,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2BAA2B,CAAA;AAClC,YAAY,EAAE,YAAY,EAAE,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAA;AAE1F,YAAY,EACV,cAAc,EACd,aAAa,GACd,MAAM,iEAAiE,CAAA;AACxE,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEjE,mBAAmB,gBAAgB,CAAA;AAEnC,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAA;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAExD,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAExE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AACxE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAE3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,mDAAmD,CAAA;AAElG,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA"}
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { afterChangeTraverseFields, afterReadTraverseFields, beforeChangeTraverseFields, beforeValidateTraverseFields, checkDependencies, deepMergeSimple, withNullableJSONSchemaType } from 'payload';
2
- import { getDefaultSanitizedEditorConfig } from './getDefaultSanitizedEditorConfig.js';
3
2
  import { i18n } from './i18n.js';
4
3
  import { defaultEditorFeatures } from './lexical/config/server/default.js';
5
4
  import { populateLexicalPopulationPromises } from './populateGraphQL/populateLexicalPopulationPromises.js';
6
5
  import { featuresInputToEditorConfig } from './utilities/editorConfigFactory.js';
7
6
  import { getGenerateImportMap } from './utilities/generateImportMap.js';
8
7
  import { getGenerateSchemaMap } from './utilities/generateSchemaMap.js';
8
+ import { getDefaultSanitizedEditorConfig } from './utilities/getDefaultSanitizedEditorConfig.js';
9
9
  import { recurseNodeTree } from './utilities/recurseNodeTree.js';
10
10
  import { richTextValidateHOC } from './validate/index.js';
11
11
  let checkedDependencies = false;
@@ -50,41 +50,26 @@ export function lexicalEditor(args) {
50
50
  resolvedFeatureMap = result.resolvedFeatureMap;
51
51
  }
52
52
  const featureI18n = finalSanitizedEditorConfig.features.i18n;
53
- for (const lang in i18n) {
54
- if (!featureI18n[lang]) {
55
- featureI18n[lang] = {
56
- lexical: {}
57
- };
58
- }
59
- // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve
60
- featureI18n[lang].lexical.general = i18n[lang];
53
+ for (const _lang in i18n) {
54
+ const lang = _lang;
55
+ const lexicalI18nForLang = (featureI18n[lang] ??= {}).lexical ??= {};
56
+ lexicalI18nForLang.general = i18n[lang] ?? {};
61
57
  }
62
58
  config.i18n.translations = deepMergeSimple(config.i18n.translations, featureI18n);
63
59
  return {
64
- CellComponent: {
65
- path: '@payloadcms/richtext-lexical/rsc#RscEntryLexicalCell',
66
- serverProps: {
67
- admin: args?.admin,
68
- sanitizedEditorConfig: finalSanitizedEditorConfig
69
- }
70
- },
71
- DiffComponent: {
72
- path: '@payloadcms/richtext-lexical/rsc#LexicalDiffComponent',
73
- serverProps: {
74
- admin: args?.admin,
75
- sanitizedEditorConfig: finalSanitizedEditorConfig
76
- }
77
- },
60
+ CellComponent: '@payloadcms/richtext-lexical/rsc#RscEntryLexicalCell',
61
+ DiffComponent: '@payloadcms/richtext-lexical/rsc#LexicalDiffComponent',
78
62
  editorConfig: finalSanitizedEditorConfig,
79
63
  features,
80
64
  FieldComponent: {
81
65
  path: '@payloadcms/richtext-lexical/rsc#RscEntryLexicalField',
82
66
  serverProps: {
83
67
  admin: args?.admin,
84
- sanitizedEditorConfig: finalSanitizedEditorConfig
68
+ views: args?.views
85
69
  }
86
70
  },
87
71
  generateImportMap: getGenerateImportMap({
72
+ lexicalEditorArgs: args,
88
73
  resolvedFeatureMap
89
74
  }),
90
75
  generateSchemaMap: getGenerateSchemaMap({