@payloadcms/richtext-lexical 4.0.0-internal.697830c → 4.0.0-internal.7e57eed

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 (268) hide show
  1. package/dist/exports/client/Field-IZKDIUJY.js +2 -0
  2. package/dist/exports/client/Field-IZKDIUJY.js.map +7 -0
  3. package/dist/exports/client/bundled.css +1 -1
  4. package/dist/exports/client/chunk-43E5QYAA.js +2 -0
  5. package/dist/exports/client/chunk-43E5QYAA.js.map +7 -0
  6. package/dist/exports/client/chunk-SSMQFWCQ.js +2 -0
  7. package/dist/exports/client/chunk-SSMQFWCQ.js.map +7 -0
  8. package/dist/exports/client/component-D5QLYS7W.js +2 -0
  9. package/dist/exports/client/component-D5QLYS7W.js.map +7 -0
  10. package/dist/exports/client/index.d.ts +1 -1
  11. package/dist/exports/client/index.d.ts.map +1 -1
  12. package/dist/exports/client/index.js +21 -21
  13. package/dist/exports/client/index.js.map +4 -4
  14. package/dist/features/align/client/toolbarAlignGroup.d.ts.map +1 -1
  15. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.d.ts.map +1 -1
  16. package/dist/features/blocks/client/getBlockImageComponent.d.ts +1 -1
  17. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts.map +1 -1
  18. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  19. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  20. package/dist/features/blocks/server/graphQLPopulationPromise.d.ts.map +1 -1
  21. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts.map +1 -1
  22. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  23. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  24. package/dist/features/blocks/server/schema.d.ts.map +1 -1
  25. package/dist/features/blocks/server/validate.d.ts.map +1 -1
  26. package/dist/features/converters/htmlToLexical/index.d.ts.map +1 -1
  27. package/dist/features/converters/lexicalToHtml/shared/cssColors.d.ts.map +1 -1
  28. package/dist/features/converters/lexicalToMarkdown/index.d.ts.map +1 -1
  29. package/dist/features/converters/markdownToLexical/index.d.ts.map +1 -1
  30. package/dist/features/debug/testRecorder/client/plugin/index.css +0 -1
  31. package/dist/features/format/shared/toolbarFormatGroup.d.ts.map +1 -1
  32. package/dist/features/heading/server/schema.d.ts.map +1 -1
  33. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts +1 -1
  34. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
  35. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +1 -1
  36. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  37. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts +1 -1
  38. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
  39. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +1 -1
  40. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  41. package/dist/features/indent/client/toolbarIndentGroup.d.ts.map +1 -1
  42. package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
  43. package/dist/features/link/client/plugins/floatingLinkEditor/index.css +0 -1
  44. package/dist/features/link/markdownTransformer.d.ts.map +1 -1
  45. package/dist/features/link/nodes/AutoLinkNode.d.ts +1 -1
  46. package/dist/features/link/nodes/AutoLinkNode.d.ts.map +1 -1
  47. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  48. package/dist/features/link/nodes/LinkNode.d.ts +1 -1
  49. package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
  50. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  51. package/dist/features/link/server/baseFields.d.ts.map +1 -1
  52. package/dist/features/link/server/graphQLPopulationPromise.d.ts.map +1 -1
  53. package/dist/features/link/server/schema.d.ts.map +1 -1
  54. package/dist/features/link/server/validate.d.ts.map +1 -1
  55. package/dist/features/relationship/client/drawer/index.d.ts.map +1 -1
  56. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
  57. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts.map +1 -1
  58. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts.map +1 -1
  59. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  60. package/dist/features/relationship/server/schema.d.ts.map +1 -1
  61. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts.map +1 -1
  62. package/dist/features/shared/toolbar/addDropdownGroup.d.ts.map +1 -1
  63. package/dist/features/shared/toolbar/featureButtonsGroup.d.ts.map +1 -1
  64. package/dist/features/shared/toolbar/textDropdownGroup.d.ts.map +1 -1
  65. package/dist/features/table/client/index.d.ts.map +1 -0
  66. package/dist/features/table/client/index.js.map +1 -0
  67. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.d.ts.map +1 -0
  68. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js.map +1 -0
  69. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.d.ts.map +1 -0
  70. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js.map +1 -0
  71. package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +1 -0
  72. package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -0
  73. package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +1 -0
  74. package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.js.map +1 -0
  75. package/dist/features/table/client/plugins/TablePlugin/index.d.ts.map +1 -0
  76. package/dist/features/table/client/plugins/TablePlugin/index.js.map +1 -0
  77. package/dist/features/table/client/utils/debounce.d.ts.map +1 -0
  78. package/dist/features/table/client/utils/debounce.js.map +1 -0
  79. package/dist/features/table/client/utils/useDebounce.d.ts.map +1 -0
  80. package/dist/features/table/client/utils/useDebounce.js.map +1 -0
  81. package/dist/features/table/markdownTransformer.d.ts.map +1 -0
  82. package/dist/features/table/markdownTransformer.js.map +1 -0
  83. package/dist/features/table/server/index.d.ts +3 -0
  84. package/dist/features/table/server/index.d.ts.map +1 -0
  85. package/dist/features/{experimental_table → table}/server/index.js +2 -2
  86. package/dist/features/table/server/index.js.map +1 -0
  87. package/dist/features/table/server/schema.d.ts.map +1 -0
  88. package/dist/features/table/server/schema.js.map +1 -0
  89. package/dist/features/toolbars/fixed/client/Toolbar/index.css +2 -4
  90. package/dist/features/toolbars/inline/client/Toolbar/index.css +0 -1
  91. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  92. package/dist/features/toolbars/shared/ToolbarDropdown/index.css +0 -2
  93. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  94. package/dist/features/upload/client/component/index.js +2 -1
  95. package/dist/features/upload/client/component/index.js.map +1 -1
  96. package/dist/features/upload/client/drawer/index.d.ts.map +1 -1
  97. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  98. package/dist/features/upload/server/graphQLPopulationPromise.d.ts.map +1 -1
  99. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  100. package/dist/features/upload/server/schema.d.ts.map +1 -1
  101. package/dist/features/upload/server/validate.d.ts.map +1 -1
  102. package/dist/field/Field.d.ts.map +1 -1
  103. package/dist/field/Field.js +18 -15
  104. package/dist/field/Field.js.map +1 -1
  105. package/dist/field/bundled.css +1 -1
  106. package/dist/index.d.ts +2 -2
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +2 -2
  109. package/dist/index.js.map +1 -1
  110. package/dist/lexical/LexicalEditor.css +18 -18
  111. package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
  112. package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
  113. package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
  114. package/dist/lexical/plugins/InsertParagraphAtEnd/index.css +0 -1
  115. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts.map +1 -1
  116. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js +21 -0
  117. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -1
  118. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +0 -1
  119. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
  120. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +1 -20
  121. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  122. package/dist/lexical/plugins/SlashMenu/index.css +0 -1
  123. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
  124. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +1 -0
  125. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.d.ts.map +1 -1
  126. package/dist/lexical/ui/ContentEditable.css +19 -14
  127. package/dist/lexical/utils/markdown/createBlockNode.d.ts +1 -1
  128. package/dist/lexical/utils/markdown/createBlockNode.d.ts.map +1 -1
  129. package/dist/lexical/utils/nodeFormat.d.ts.map +1 -1
  130. package/dist/lexical/utils/point.d.ts.map +1 -1
  131. package/dist/lexical/utils/rect.d.ts.map +1 -1
  132. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts +2 -0
  133. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts.map +1 -0
  134. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js +2 -0
  135. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js.map +1 -0
  136. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts +2 -0
  137. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts.map +1 -0
  138. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js +2 -0
  139. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js.map +1 -0
  140. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts +2 -0
  141. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts.map +1 -0
  142. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js +2 -0
  143. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js.map +1 -0
  144. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts +2 -0
  145. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts.map +1 -0
  146. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js +2 -0
  147. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js.map +1 -0
  148. package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts +2 -0
  149. package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts.map +1 -0
  150. package/dist/lexical-proxy/@lexical-react/ReactExtension.js +2 -0
  151. package/dist/lexical-proxy/@lexical-react/ReactExtension.js.map +1 -0
  152. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts +2 -0
  153. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts.map +1 -0
  154. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js +2 -0
  155. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js.map +1 -0
  156. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts +2 -0
  157. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts.map +1 -0
  158. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js +2 -0
  159. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js.map +1 -0
  160. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts +2 -0
  161. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts.map +1 -0
  162. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js +2 -0
  163. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js.map +1 -0
  164. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts +2 -0
  165. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts.map +1 -0
  166. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js +2 -0
  167. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js.map +1 -0
  168. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts +2 -0
  169. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts.map +1 -0
  170. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js +2 -0
  171. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js.map +1 -0
  172. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts +2 -0
  173. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts.map +1 -0
  174. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js +2 -0
  175. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js.map +1 -0
  176. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts +2 -0
  177. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts.map +1 -0
  178. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js +2 -0
  179. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js.map +1 -0
  180. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts +2 -0
  181. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts.map +1 -0
  182. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js +2 -0
  183. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js.map +1 -0
  184. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts +2 -0
  185. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts.map +1 -0
  186. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js +2 -0
  187. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js.map +1 -0
  188. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts +2 -0
  189. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts.map +1 -0
  190. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js +2 -0
  191. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js.map +1 -0
  192. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts.map +1 -1
  193. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.d.ts.map +1 -1
  194. package/dist/types/jsonSchemaHelpers.d.ts.map +1 -1
  195. package/dist/types/nodeTypes.d.ts +1 -1
  196. package/dist/types/nodeTypes.d.ts.map +1 -1
  197. package/dist/types/nodeTypes.js.map +1 -1
  198. package/dist/utilities/editorConfigFactory.d.ts.map +1 -1
  199. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts +1 -1
  200. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts.map +1 -1
  201. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.d.ts.map +1 -1
  202. package/dist/utilities/fieldsDrawer/useLexicalDrawer.d.ts.map +1 -1
  203. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.d.ts.map +1 -1
  204. package/dist/utilities/generateImportMap.d.ts +1 -1
  205. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  206. package/dist/utilities/generateSchemaMap.d.ts +1 -1
  207. package/dist/utilities/generateSchemaMap.d.ts.map +1 -1
  208. package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts.map +1 -1
  209. package/dist/utilities/recurseNodeTree.d.ts.map +1 -1
  210. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts.map +1 -1
  211. package/dist/utilities/useLexicalFeature.d.ts.map +1 -1
  212. package/dist/validate/index.d.ts.map +1 -1
  213. package/package.json +95 -22
  214. package/dist/exports/client/Field-XH5C4HFU.js +0 -2
  215. package/dist/exports/client/Field-XH5C4HFU.js.map +0 -7
  216. package/dist/exports/client/chunk-UD4DQ4AK.js +0 -2
  217. package/dist/exports/client/chunk-UD4DQ4AK.js.map +0 -7
  218. package/dist/exports/client/chunk-X3D4LZS7.js +0 -2
  219. package/dist/exports/client/chunk-X3D4LZS7.js.map +0 -7
  220. package/dist/exports/client/component-PHZQBOJE.js +0 -2
  221. package/dist/exports/client/component-PHZQBOJE.js.map +0 -7
  222. package/dist/features/experimental_table/client/index.d.ts.map +0 -1
  223. package/dist/features/experimental_table/client/index.js.map +0 -1
  224. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.d.ts.map +0 -1
  225. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +0 -1
  226. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.d.ts.map +0 -1
  227. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +0 -1
  228. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +0 -1
  229. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +0 -1
  230. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +0 -1
  231. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.js.map +0 -1
  232. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts.map +0 -1
  233. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +0 -1
  234. package/dist/features/experimental_table/client/utils/debounce.d.ts.map +0 -1
  235. package/dist/features/experimental_table/client/utils/debounce.js.map +0 -1
  236. package/dist/features/experimental_table/client/utils/useDebounce.d.ts.map +0 -1
  237. package/dist/features/experimental_table/client/utils/useDebounce.js.map +0 -1
  238. package/dist/features/experimental_table/markdownTransformer.d.ts.map +0 -1
  239. package/dist/features/experimental_table/markdownTransformer.js.map +0 -1
  240. package/dist/features/experimental_table/server/index.d.ts +0 -3
  241. package/dist/features/experimental_table/server/index.d.ts.map +0 -1
  242. package/dist/features/experimental_table/server/index.js.map +0 -1
  243. package/dist/features/experimental_table/server/schema.d.ts.map +0 -1
  244. package/dist/features/experimental_table/server/schema.js.map +0 -1
  245. /package/dist/features/{experimental_table → table}/client/index.d.ts +0 -0
  246. /package/dist/features/{experimental_table → table}/client/index.js +0 -0
  247. /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.css +0 -0
  248. /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.d.ts +0 -0
  249. /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.js +0 -0
  250. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.css +0 -0
  251. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.d.ts +0 -0
  252. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.js +0 -0
  253. /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.d.ts +0 -0
  254. /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.js +0 -0
  255. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.css +0 -0
  256. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.d.ts +0 -0
  257. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.js +0 -0
  258. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.css +0 -0
  259. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.d.ts +0 -0
  260. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.js +0 -0
  261. /package/dist/features/{experimental_table → table}/client/utils/debounce.d.ts +0 -0
  262. /package/dist/features/{experimental_table → table}/client/utils/debounce.js +0 -0
  263. /package/dist/features/{experimental_table → table}/client/utils/useDebounce.d.ts +0 -0
  264. /package/dist/features/{experimental_table → table}/client/utils/useDebounce.js +0 -0
  265. /package/dist/features/{experimental_table → table}/markdownTransformer.d.ts +0 -0
  266. /package/dist/features/{experimental_table → table}/markdownTransformer.js +0 -0
  267. /package/dist/features/{experimental_table → table}/server/schema.d.ts +0 -0
  268. /package/dist/features/{experimental_table → table}/server/schema.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useLexicalComposerContext","useLexicalEditable","getTranslation","Button","formatDrawerSlug","Pill","Thumbnail","useConfig","useEditDepth","usePayloadAPI","useTranslation","$getNodeByKey","$getSelection","$isNodeSelection","$isRangeSelection","formatAdminURL","isImage","React","useCallback","useEffect","useId","useReducer","useRef","useState","useEditorConfigContext","FieldsDrawer","useLexicalDocumentDrawer","useLexicalDrawer","INSERT_UPLOAD_WITH_DRAWER_COMMAND","initialParams","depth","UploadComponent","props","className","baseClass","data","fields","relationTo","value","format","nodeKey","Error","config","routes","api","serverURL","getEntityConfig","uploadRef","uuid","editDepth","editor","editorConfig","fieldProps","schemaPath","isEditable","i18n","t","isSelected","setIsSelected","cacheBust","dispatchCacheBust","state","relatedCollection","collectionSlug","componentID","extraFieldsDrawerSlug","slug","toggleDrawer","closeDocumentDrawer","DocumentDrawer","DocumentDrawerToggler","id","setParams","apiRoute","path","thumbnailSRC","thumbnailURL","url","registerUpdateListener","editorState","read","selection","has","nodes","getNodes","some","node","getKey","outerEl","current","closest","classList","toggle","removeUpload","update","remove","updateUpload","_data","hasExtraFields","resolvedFeatureMap","get","sanitizedClientFeatureProps","collections","onExtraFieldsDrawerSubmit","_","uploadNode","newData","getData","setData","aspectRatio","width","height","_jsxs","undefined","filename","ref","_jsx","fileSrc","mimeType","size","pillStyle","labels","singular","buttonStyle","disabled","el","icon","onClick","round","tooltip","dispatchCommand","replace","e","preventDefault","onSave","drawerSlug","drawerTitle","label","featureKey","handleDrawerSubmit","schemaPathSuffix"],"sources":["../../../../../src/features/upload/client/component/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Data, FormState, JsonObject } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n formatDrawerSlug,\n Pill,\n Thumbnail,\n useConfig,\n useEditDepth,\n usePayloadAPI,\n useTranslation,\n} from '@payloadcms/ui'\nimport {\n $getNodeByKey,\n $getSelection,\n $isNodeSelection,\n $isRangeSelection,\n type ElementFormatType,\n} from 'lexical'\nimport { formatAdminURL, isImage } from 'payload/shared'\nimport React, { useCallback, useEffect, useId, useReducer, useRef, useState } from 'react'\n\nimport type { BaseClientFeatureProps } from '../../../typesClient.js'\nimport type { UploadData } from '../../server/schema.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\nimport type { UploadNode } from '../nodes/UploadNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'\nimport { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'\nimport { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'\nimport { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'\nimport './index.css'\n\nconst initialParams = {\n depth: 0,\n}\n\nexport type ElementProps = {\n className: string\n data: UploadData\n format?: ElementFormatType\n nodeKey: string\n}\n\nexport const UploadComponent: React.FC<ElementProps> = (props) => {\n const {\n className: baseClass,\n data: { fields, relationTo, value },\n format,\n nodeKey,\n } = props\n\n if (typeof value === 'object') {\n throw new Error(\n 'Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.',\n )\n }\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const uploadRef = useRef<HTMLDivElement | null>(null)\n const { uuid } = useEditorConfigContext()\n const editDepth = useEditDepth()\n const [editor] = useLexicalComposerContext()\n\n const {\n editorConfig,\n fieldProps: { schemaPath },\n } = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n const { i18n, t } = useTranslation()\n const [isSelected, setIsSelected] = useState(false)\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0)\n const [relatedCollection] = useState<ClientCollectionConfig>(() =>\n getEntityConfig({ collectionSlug: relationTo }),\n )\n\n const componentID = useId()\n\n const extraFieldsDrawerSlug = formatDrawerSlug({\n slug: `lexical-upload-drawer-` + uuid + componentID, // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID\n depth: editDepth,\n })\n\n // Need to use hook to initialize useEffect that restores cursor position\n const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true)\n\n const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({\n id: value,\n collectionSlug: relatedCollection.slug,\n })\n\n // Get the referenced document\n const [{ data }, { setParams }] = usePayloadAPI(\n formatAdminURL({ apiRoute: api, path: `/${relatedCollection.slug}/${value}`, serverURL }),\n { initialParams },\n )\n\n const thumbnailSRC = data?.thumbnailURL || data?.url\n\n useEffect(() => {\n return editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n const selection = $getSelection()\n\n if ($isNodeSelection(selection)) {\n setIsSelected(selection.has(nodeKey))\n } else if ($isRangeSelection(selection)) {\n const nodes = selection.getNodes()\n setIsSelected(nodes.some((node) => node.getKey() === nodeKey))\n } else {\n setIsSelected(false)\n }\n })\n })\n }, [editor, nodeKey])\n\n useEffect(() => {\n const outerEl = uploadRef.current?.closest(`.${baseClass}`)\n\n if (outerEl) {\n outerEl.classList.toggle(`${baseClass}--selected`, isSelected)\n }\n }, [isSelected, baseClass])\n\n const removeUpload = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n const updateUpload = useCallback(\n (_data: Data) => {\n setParams({\n ...initialParams,\n cacheBust, // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed\n })\n\n dispatchCacheBust()\n closeDocumentDrawer()\n },\n [setParams, cacheBust, closeDocumentDrawer],\n )\n\n const hasExtraFields = (\n editorConfig?.resolvedFeatureMap?.get('upload')\n ?.sanitizedClientFeatureProps as BaseClientFeatureProps<UploadFeaturePropsClient>\n ).collections?.[relatedCollection.slug]?.hasExtraFields\n\n const onExtraFieldsDrawerSubmit = useCallback(\n (_: FormState, data: JsonObject) => {\n // Update lexical node (with key nodeKey) with new data\n editor.update(() => {\n const uploadNode: null | UploadNode = $getNodeByKey(nodeKey)\n if (uploadNode) {\n const newData: UploadData = {\n ...uploadNode.getData(),\n fields: data,\n }\n uploadNode.setData(newData)\n }\n })\n },\n [editor, nodeKey],\n )\n\n const aspectRatio =\n thumbnailSRC && data?.width && data?.height\n ? data.width > data.height\n ? 'landscape'\n : 'portrait'\n : 'landscape'\n\n return (\n <div\n className={`${baseClass}__contents ${baseClass}__contents--${aspectRatio}`}\n data-align={format || undefined}\n data-filename={data?.filename}\n ref={uploadRef}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__media`}>\n <Thumbnail\n collectionSlug={relationTo}\n fileSrc={isImage(data?.mimeType) ? thumbnailSRC : null}\n height={data?.height}\n size=\"none\"\n width={data?.width}\n />\n\n {isEditable && (\n <div className={`${baseClass}__floater`} data-theme=\"dark\">\n <Pill className={`${baseClass}__collectionLabel`} pillStyle=\"dark\" size=\"small\">\n {getTranslation(relatedCollection.labels.singular, i18n)}\n </Pill>\n\n <DocumentDrawerToggler className={`${baseClass}__doc-drawer-toggler`}>\n <span className={`${baseClass}__filename`}>\n {data?.filename || t('general:untitled')}\n </span>\n </DocumentDrawerToggler>\n\n {hasExtraFields ? (\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__upload-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"write\"\n onClick={toggleDrawer}\n round\n size=\"medium\"\n tooltip={t('fields:editRelationship')}\n />\n ) : null}\n\n <div className={`${baseClass}__divider`} />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__swap-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"swap\"\n onClick={() => {\n editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {\n replace: { nodeKey },\n })\n }}\n round\n size=\"medium\"\n tooltip={t('fields:swapUpload')}\n />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__removeButton`}\n disabled={!isEditable}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeUpload()\n }}\n round\n size=\"medium\"\n tooltip={t('fields:removeUpload')}\n />\n </div>\n )}\n </div>\n </div>\n\n {value ? <DocumentDrawer onSave={updateUpload} /> : null}\n {hasExtraFields ? (\n <FieldsDrawer\n data={fields}\n drawerSlug={extraFieldsDrawerSlug}\n drawerTitle={t('general:editLabel', {\n label: getTranslation(relatedCollection.labels.singular, i18n),\n })}\n featureKey=\"upload\"\n handleDrawerSubmit={onExtraFieldsDrawerSubmit}\n schemaPath={schemaPath}\n schemaPathSuffix={relatedCollection.slug}\n />\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useLexicalComposerContext","useLexicalEditable","getTranslation","Button","formatDrawerSlug","Pill","Thumbnail","useConfig","useEditDepth","usePayloadAPI","useTranslation","$getNodeByKey","$getSelection","$isNodeSelection","$isRangeSelection","formatAdminURL","isImage","React","useCallback","useEffect","useId","useReducer","useRef","useState","useEditorConfigContext","FieldsDrawer","useLexicalDocumentDrawer","useLexicalDrawer","INSERT_UPLOAD_WITH_DRAWER_COMMAND","$isUploadNode","initialParams","depth","UploadComponent","props","className","baseClass","data","fields","relationTo","value","format","nodeKey","Error","config","routes","api","serverURL","getEntityConfig","uploadRef","uuid","editDepth","editor","editorConfig","fieldProps","schemaPath","isEditable","i18n","t","isSelected","setIsSelected","cacheBust","dispatchCacheBust","state","relatedCollection","collectionSlug","componentID","extraFieldsDrawerSlug","slug","toggleDrawer","closeDocumentDrawer","DocumentDrawer","DocumentDrawerToggler","id","setParams","apiRoute","path","thumbnailSRC","thumbnailURL","url","registerUpdateListener","editorState","read","selection","has","nodes","getNodes","some","node","getKey","outerEl","current","closest","classList","toggle","removeUpload","update","remove","updateUpload","_data","hasExtraFields","resolvedFeatureMap","get","sanitizedClientFeatureProps","collections","onExtraFieldsDrawerSubmit","_","uploadNode","newData","getData","setData","aspectRatio","width","height","_jsxs","undefined","filename","ref","_jsx","fileSrc","mimeType","size","pillStyle","labels","singular","buttonStyle","disabled","el","icon","onClick","round","tooltip","dispatchCommand","replace","e","preventDefault","onSave","drawerSlug","drawerTitle","label","featureKey","handleDrawerSubmit","schemaPathSuffix"],"sources":["../../../../../src/features/upload/client/component/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Data, FormState, JsonObject } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n formatDrawerSlug,\n Pill,\n Thumbnail,\n useConfig,\n useEditDepth,\n usePayloadAPI,\n useTranslation,\n} from '@payloadcms/ui'\nimport {\n $getNodeByKey,\n $getSelection,\n $isNodeSelection,\n $isRangeSelection,\n type ElementFormatType,\n} from 'lexical'\nimport { formatAdminURL, isImage } from 'payload/shared'\nimport React, { useCallback, useEffect, useId, useReducer, useRef, useState } from 'react'\n\nimport type { BaseClientFeatureProps } from '../../../typesClient.js'\nimport type { UploadData } from '../../server/schema.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'\nimport { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'\nimport { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'\nimport { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'\nimport { $isUploadNode } from '../nodes/UploadNode.js'\nimport './index.css'\n\nconst initialParams = {\n depth: 0,\n}\n\nexport type ElementProps = {\n className: string\n data: UploadData\n format?: ElementFormatType\n nodeKey: string\n}\n\nexport const UploadComponent: React.FC<ElementProps> = (props) => {\n const {\n className: baseClass,\n data: { fields, relationTo, value },\n format,\n nodeKey,\n } = props\n\n if (typeof value === 'object') {\n throw new Error(\n 'Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.',\n )\n }\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const uploadRef = useRef<HTMLDivElement | null>(null)\n const { uuid } = useEditorConfigContext()\n const editDepth = useEditDepth()\n const [editor] = useLexicalComposerContext()\n\n const {\n editorConfig,\n fieldProps: { schemaPath },\n } = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n const { i18n, t } = useTranslation()\n const [isSelected, setIsSelected] = useState(false)\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0)\n const [relatedCollection] = useState<ClientCollectionConfig>(() =>\n getEntityConfig({ collectionSlug: relationTo }),\n )\n\n const componentID = useId()\n\n const extraFieldsDrawerSlug = formatDrawerSlug({\n slug: `lexical-upload-drawer-` + uuid + componentID, // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID\n depth: editDepth,\n })\n\n // Need to use hook to initialize useEffect that restores cursor position\n const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true)\n\n const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({\n id: value,\n collectionSlug: relatedCollection.slug,\n })\n\n // Get the referenced document\n const [{ data }, { setParams }] = usePayloadAPI(\n formatAdminURL({ apiRoute: api, path: `/${relatedCollection.slug}/${value}`, serverURL }),\n { initialParams },\n )\n\n const thumbnailSRC = data?.thumbnailURL || data?.url\n\n useEffect(() => {\n return editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n const selection = $getSelection()\n\n if ($isNodeSelection(selection)) {\n setIsSelected(selection.has(nodeKey))\n } else if ($isRangeSelection(selection)) {\n const nodes = selection.getNodes()\n setIsSelected(nodes.some((node) => node.getKey() === nodeKey))\n } else {\n setIsSelected(false)\n }\n })\n })\n }, [editor, nodeKey])\n\n useEffect(() => {\n const outerEl = uploadRef.current?.closest(`.${baseClass}`)\n\n if (outerEl) {\n outerEl.classList.toggle(`${baseClass}--selected`, isSelected)\n }\n }, [isSelected, baseClass])\n\n const removeUpload = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n const updateUpload = useCallback(\n (_data: Data) => {\n setParams({\n ...initialParams,\n cacheBust, // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed\n })\n\n dispatchCacheBust()\n closeDocumentDrawer()\n },\n [setParams, cacheBust, closeDocumentDrawer],\n )\n\n const hasExtraFields = (\n editorConfig?.resolvedFeatureMap?.get('upload')\n ?.sanitizedClientFeatureProps as BaseClientFeatureProps<UploadFeaturePropsClient>\n ).collections?.[relatedCollection.slug]?.hasExtraFields\n\n const onExtraFieldsDrawerSubmit = useCallback(\n (_: FormState, data: JsonObject) => {\n // Update lexical node (with key nodeKey) with new data\n editor.update(() => {\n const uploadNode = $getNodeByKey(nodeKey)\n if ($isUploadNode(uploadNode)) {\n const newData: UploadData = {\n ...uploadNode.getData(),\n fields: data,\n }\n uploadNode.setData(newData)\n }\n })\n },\n [editor, nodeKey],\n )\n\n const aspectRatio =\n thumbnailSRC && data?.width && data?.height\n ? data.width > data.height\n ? 'landscape'\n : 'portrait'\n : 'landscape'\n\n return (\n <div\n className={`${baseClass}__contents ${baseClass}__contents--${aspectRatio}`}\n data-align={format || undefined}\n data-filename={data?.filename}\n ref={uploadRef}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__media`}>\n <Thumbnail\n collectionSlug={relationTo}\n fileSrc={isImage(data?.mimeType) ? thumbnailSRC : null}\n height={data?.height}\n size=\"none\"\n width={data?.width}\n />\n\n {isEditable && (\n <div className={`${baseClass}__floater`} data-theme=\"dark\">\n <Pill className={`${baseClass}__collectionLabel`} pillStyle=\"dark\" size=\"small\">\n {getTranslation(relatedCollection.labels.singular, i18n)}\n </Pill>\n\n <DocumentDrawerToggler className={`${baseClass}__doc-drawer-toggler`}>\n <span className={`${baseClass}__filename`}>\n {data?.filename || t('general:untitled')}\n </span>\n </DocumentDrawerToggler>\n\n {hasExtraFields ? (\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__upload-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"write\"\n onClick={toggleDrawer}\n round\n size=\"medium\"\n tooltip={t('fields:editRelationship')}\n />\n ) : null}\n\n <div className={`${baseClass}__divider`} />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__swap-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"swap\"\n onClick={() => {\n editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {\n replace: { nodeKey },\n })\n }}\n round\n size=\"medium\"\n tooltip={t('fields:swapUpload')}\n />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__removeButton`}\n disabled={!isEditable}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeUpload()\n }}\n round\n size=\"medium\"\n tooltip={t('fields:removeUpload')}\n />\n </div>\n )}\n </div>\n </div>\n\n {value ? <DocumentDrawer onSave={updateUpload} /> : null}\n {hasExtraFields ? (\n <FieldsDrawer\n data={fields}\n drawerSlug={extraFieldsDrawerSlug}\n drawerTitle={t('general:editLabel', {\n label: getTranslation(relatedCollection.labels.singular, i18n),\n })}\n featureKey=\"upload\"\n handleDrawerSubmit={onExtraFieldsDrawerSubmit}\n schemaPath={schemaPath}\n schemaPathSuffix={relatedCollection.slug}\n />\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/drawer/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAA2C,MAAM,OAAO,CAAA;AA4C/D,KAAK,KAAK,GAAG;IACX,sBAAsB,EAAE,oBAAoB,EAAE,CAAA;CAC/C,CAAA;AA6DD,eAAO,MAAM,YAAY,GAAI,4BAA4B,KAAK,KAAG,KAAK,CAAC,SAMtE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/drawer/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAA2C,MAAM,OAAO,CAAA;AA4C/D,KAAK,KAAK,GAAG;IACX,sBAAsB,EAAE,oBAAoB,EAAE,CAAA;CAC/C,CAAA;AA6DD,eAAO,MAAM,YAAY,+BAAgC,KAAK,KAAG,KAAK,CAAC,SAMtE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAMhC,OAAO,KAAK,EAAuB,oBAAoB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAOnE,qBAAa,UAAW,SAAQ,gBAAgB;WAC9B,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB;WAI/C,OAAO,IAAI,MAAM;WAIjB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;WAS/C,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,UAAU;IAuBnE,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO;IAcpE,UAAU,IAAI,oBAAoB;CAG5C;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,UAAU,CAMb;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,UAAU,CAEtF"}
1
+ {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAMhC,OAAO,KAAK,EAAuB,oBAAoB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAOnE,qBAAa,UAAW,SAAQ,gBAAgB;IAC9C,OAAgB,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,CAE9D;IAED,OAAgB,OAAO,IAAI,MAAM,CAEhC;IAED,OAAgB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAO9D;IAED,OAAgB,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,UAAU,CAqB3E;IAEQ,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAY5E;IAEQ,UAAU,IAAI,oBAAoB,CAE1C;CACF;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,UAAU,CAMb;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,UAAU,CAEtF"}
@@ -1 +1 @@
1
- {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAKvD,eAAO,MAAM,0BAA0B,GACrC,QAAQ,kBAAkB,KACzB,iBAAiB,CAAC,oBAAoB,CAwExC,CAAA"}
1
+ {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAKvD,eAAO,MAAM,0BAA0B,WAC7B,kBAAkB,KACzB,iBAAiB,CAAC,oBAAoB,CAwExC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/server/nodes/UploadNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,OAAO,EACR,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAA;AAKhF,OAAO,KAAK,EAAuB,oBAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAIzF,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD,MAAM,EAAE,UAAU,CAAA;gBAEN,EACV,IAAI,EACJ,MAAM,EACN,GAAG,GACJ,EAAE;QACD,IAAI,EAAE,UAAU,CAAA;QAChB,MAAM,CAAC,EAAE,iBAAiB,CAAA;QAC1B,GAAG,CAAC,EAAE,OAAO,CAAA;KACd;WAKe,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB;WAQ/C,OAAO,IAAI,MAAM;WAIjB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;WAS/C,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,gBAAgB;IAuBlF,MAAM,CAAC,QAAQ,IAAI,KAAK;IAIf,SAAS,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW;IAM7C,QAAQ,IAAI,GAAG,CAAC,OAAO;IAIvB,SAAS,IAAI,eAAe;IAc5B,UAAU,IAAI,oBAAoB;IAS3C,OAAO,IAAI,UAAU;IAIrB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAKtB,SAAS,IAAI,KAAK;CAG5B;AAED,wBAAgB,uBAAuB,CAAC,EACtC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,gBAAgB,CAKnB;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,gBAAgB,CAE1B"}
1
+ {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/server/nodes/UploadNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,OAAO,EACR,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAA;AAKhF,OAAO,KAAK,EAAuB,oBAAoB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAIzF,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD,MAAM,EAAE,UAAU,CAAA;IAElB,YAAY,EACV,IAAI,EACJ,MAAM,EACN,GAAG,GACJ,EAAE;QACD,IAAI,EAAE,UAAU,CAAA;QAChB,MAAM,CAAC,EAAE,iBAAiB,CAAA;QAC1B,GAAG,CAAC,EAAE,OAAO,CAAA;KACd,EAGA;IAED,OAAgB,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,CAM9D;IAED,OAAgB,OAAO,IAAI,MAAM,CAEhC;IAED,OAAgB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAO9D;IAED,OAAgB,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,gBAAgB,CAqBjF;IAED,MAAM,CAAC,QAAQ,IAAI,KAAK,CAEvB;IAEQ,SAAS,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,CAIrD;IAEQ,QAAQ,IAAI,GAAG,CAAC,OAAO,CAE/B;IAEQ,SAAS,IAAI,eAAe,CAYpC;IAEQ,UAAU,IAAI,oBAAoB,CAO1C;IAED,OAAO,IAAI,UAAU,CAEpB;IAED,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAG9B;IAEQ,SAAS,IAAI,KAAK,CAE1B;CACF;AAED,wBAAgB,uBAAuB,CAAC,EACtC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,gBAAgB,CAKnB;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,gBAAgB,CAE1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAKhB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAKpD,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;KAC/D,eAAe,IAAI,oBAAoB,GAAG;QACzC,MAAM,EAAE,OAAO,CAAA;QACf,6DAA6D;QAC7D,EAAE,EAAE,MAAM,CAAA;QACV,UAAU,EAAE,eAAe,CAAA;QAC3B,6DAA6D;QAC7D,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;KAC1F;CACF,CAAC,oBAAoB,CAAC,CAAA;AAEvB,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;IACzE,OAAO,CAAC,EAAE;QACR,2BAA2B;QAC3B,MAAM,EAAE,MAAM,CAAA;QACd,sCAAsC;QACtC,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;AAEvB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;KACvE,eAAe,IAAI,oBAAoB,GAAG;QACzC,MAAM,EAAE,OAAO,CAAA;QACf,EAAE,EAAE,MAAM,CAAA;QACV,UAAU,EAAE,eAAe,CAAA;QAC3B,KAAK,EAAE,uBAAuB,CAAC,eAAe,CAAC,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAA;KACzF;CACF,CAAC,oBAAoB,CAAC,CAAA;AAEvB,MAAM,MAAM,oBAAoB,CAC9B,MAAM,SAAS,oBAAoB,GAAG,oBAAoB,EAC1D,OAAO,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,IAChC;KACD,KAAK,IAAI,MAAM,GAAG;QACjB,UAAU,EAAE,KAAK,CAAA;QACjB,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;KACtE;CACF,CAAC,MAAM,CAAC,GAAG;IACV,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,oBAAoB,CAAA;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAiCD,eAAO,MAAM,0BAA0B,GACpC,OAAO,SAAS,GAAG,kBAAkB,KAAG,YA0GxC,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,EACV,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAKhB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAKpD,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;KAC/D,eAAe,IAAI,oBAAoB,GAAG;QACzC,MAAM,EAAE,OAAO,CAAA;QACf,6DAA6D;QAC7D,EAAE,EAAE,MAAM,CAAA;QACV,UAAU,EAAE,eAAe,CAAA;QAC3B,6DAA6D;QAC7D,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;KAC1F;CACF,CAAC,oBAAoB,CAAC,CAAA;AAEvB,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;IACzE,OAAO,CAAC,EAAE;QACR,2BAA2B;QAC3B,MAAM,EAAE,MAAM,CAAA;QACd,sCAAsC;QACtC,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;AAEvB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI;KACvE,eAAe,IAAI,oBAAoB,GAAG;QACzC,MAAM,EAAE,OAAO,CAAA;QACf,EAAE,EAAE,MAAM,CAAA;QACV,UAAU,EAAE,eAAe,CAAA;QAC3B,KAAK,EAAE,uBAAuB,CAAC,eAAe,CAAC,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAA;KACzF;CACF,CAAC,oBAAoB,CAAC,CAAA;AAEvB,MAAM,MAAM,oBAAoB,CAC9B,MAAM,SAAS,oBAAoB,GAAG,oBAAoB,EAC1D,OAAO,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,IAChC;KACD,KAAK,IAAI,MAAM,GAAG;QACjB,UAAU,EAAE,KAAK,CAAA;QACjB,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;KACtE;CACF,CAAC,MAAM,CAAC,GAAG;IACV,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,oBAAoB,CAAA;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAiCD,eAAO,MAAM,0BAA0B,UAC7B,SAAS,GAAG,kBAAkB,KAAG,YA0GxC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/validate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAEvD,eAAO,MAAM,gBAAgB,GAC3B,OAAO,kBAAkB,KACxB,cAAc,CAAC,oBAAoB,CAqErC,CAAA"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/validate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAEvD,eAAO,MAAM,gBAAgB,UACpB,kBAAkB,KACxB,cAAc,CAAC,oBAAoB,CAqErC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/field/Field.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAGxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AAE7E,OAAO,kCAAkC,CAAA;AACzC,OAAO,eAAe,CAAA;AACtB,OAAO,aAAa,CAAA;AAEpB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AASlE,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAC/B;IACE,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAAA;CACnD,GAAG,yBAAyB,CAuM9B,CAAA;AAWD,eAAO,MAAM,QAAQ,EAAE,OAAO,iBAAqC,CAAA"}
1
+ {"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/field/Field.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAGxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AAE7E,OAAO,kCAAkC,CAAA;AACzC,OAAO,eAAe,CAAA;AACtB,OAAO,aAAa,CAAA;AAEpB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AASlE,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAC/B;IACE,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAAA;CACnD,GAAG,yBAAyB,CAyM9B,CAAA;AAWD,eAAO,MAAM,QAAQ,EAAE,OAAO,iBAAqC,CAAA"}
@@ -161,21 +161,24 @@ const RichTextComponent = props => {
161
161
  }), /*#__PURE__*/_jsxs(ErrorBoundary, {
162
162
  fallbackRender: fallbackRender,
163
163
  onReset: () => {},
164
- children: [BeforeInput, /*#__PURE__*/_jsx(BulkUploadProvider, {
165
- modalSlugPrefix: `lexical-${path}`,
166
- children: /*#__PURE__*/_jsx(LexicalProvider, {
167
- composerKey: pathWithEditDepth,
168
- editorConfig: editorConfig,
169
- fieldProps: props,
170
- isSmallWidthViewport: isSmallWidthViewport,
171
- onChange: handleChange,
172
- readOnly: disabled,
173
- rtl: rtl,
174
- value: value_0
175
- }, JSON.stringify({
176
- path,
177
- rerenderProviderKey
178
- }))
164
+ children: [BeforeInput, /*#__PURE__*/_jsx("div", {
165
+ className: `${baseClass}__editor-content`,
166
+ children: /*#__PURE__*/_jsx(BulkUploadProvider, {
167
+ modalSlugPrefix: `lexical-${path}`,
168
+ children: /*#__PURE__*/_jsx(LexicalProvider, {
169
+ composerKey: pathWithEditDepth,
170
+ editorConfig: editorConfig,
171
+ fieldProps: props,
172
+ isSmallWidthViewport: isSmallWidthViewport,
173
+ onChange: handleChange,
174
+ readOnly: disabled,
175
+ rtl: rtl,
176
+ value: value_0
177
+ }, JSON.stringify({
178
+ path,
179
+ rerenderProviderKey
180
+ }))
181
+ })
179
182
  }), AfterInput]
180
183
  }), /*#__PURE__*/_jsx(RenderCustomComponent, {
181
184
  CustomComponent: Description,
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","names":["BulkUploadProvider","FieldDescription","FieldError","FieldLabel","isFieldRTL","RenderCustomComponent","useConfig","useEditDepth","useEffectEvent","useField","useLocale","mergeFieldStyles","dequal","React","useCallback","useEffect","useMemo","useState","ErrorBoundary","LexicalProvider","useRunDeprioritized","useRichTextView","ViewSelector","baseClass","RichTextComponent","props","editorConfig","field","admin","className","description","readOnly","readOnlyFromAdmin","label","localized","required","path","pathFromProps","readOnlyFromTopLevelProps","schemaPath","validate","readOnlyFromProps","locale","config","localization","localizationConfig","rtl","fieldLocalized","undefined","editDepth","isControlledByParent","memoizedValidate","value","validationOptions","customComponents","AfterInput","BeforeInput","Description","Error","Error1","Label","disabled","disabledFromField","initialValue","setValue","showError","potentiallyStalePath","isSmallWidthViewport","setIsSmallWidthViewport","rerenderProviderKey","setRerenderProviderKey","prevInitialValueRef","useRef","prevValueRef","updateViewPortWidth","isNextSmallWidthViewport","window","matchMedia","matches","addEventListener","removeEventListener","classes","hideGutter","filter","Boolean","join","pathWithEditDepth","runDeprioritized","handleChange","editorState","updateFieldValue","newState","toJSON","current","styles","handleInitialValueChange","JSON","parse","stringify","Date","Object","is","_jsxs","view","style","_jsx","CustomComponent","Fallback","fallbackRender","onReset","modalSlugPrefix","composerKey","fieldProps","onChange","error","role","color","message","String","RichText"],"sources":["../../src/field/Field.tsx"],"sourcesContent":["'use client'\nimport type { EditorState, SerializedEditorState } from 'lexical'\nimport type { FallbackProps } from 'react-error-boundary'\n\nimport {\n BulkUploadProvider,\n FieldDescription,\n FieldError,\n FieldLabel,\n isFieldRTL,\n RenderCustomComponent,\n useConfig,\n useEditDepth,\n useEffectEvent,\n useField,\n useLocale,\n} from '@payloadcms/ui'\nimport { mergeFieldStyles } from '@payloadcms/ui/shared'\nimport { dequal } from 'dequal/lite'\nimport { type Validate } from 'payload'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\n\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\n\nimport '../lexical/theme/EditorTheme.css'\nimport './bundled.css'\nimport './index.css'\n\nimport type { LexicalRichTextFieldProps } from '../types/index.js'\n\nimport { LexicalProvider } from '../lexical/LexicalProvider.js'\nimport { useRunDeprioritized } from '../utilities/useRunDeprioritized.js'\nimport { useRichTextView } from './RichTextViewProvider.js'\nimport { ViewSelector } from './ViewSelector.js'\n\nconst baseClass = 'rich-text-lexical'\n\nconst RichTextComponent: React.FC<\n {\n readonly editorConfig: SanitizedClientEditorConfig // With rendered features n stuff\n } & LexicalRichTextFieldProps\n> = (props) => {\n const {\n editorConfig,\n field,\n field: {\n admin: { className, description, readOnly: readOnlyFromAdmin } = {},\n label,\n localized,\n required,\n },\n path: pathFromProps,\n readOnly: readOnlyFromTopLevelProps,\n schemaPath,\n validate, // Users can pass in client side validation if they WANT to, but it's not required anymore\n } = props\n\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const locale = useLocale()\n const {\n config: { localization: localizationConfig },\n } = useConfig()\n\n const rtl = isFieldRTL({\n fieldLocalized: localized,\n locale,\n localizationConfig: localizationConfig || undefined,\n })\n\n const editDepth = useEditDepth()\n const { isControlledByParent } = useRichTextView()\n\n const memoizedValidate = useCallback<Validate>(\n (value, validationOptions) => {\n if (typeof validate === 'function') {\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n return validate(value, { ...validationOptions, required })\n }\n return true\n },\n // Important: do not add props to the dependencies array.\n // This would cause an infinite loop and endless re-rendering.\n // Removing props from the dependencies array fixed this issue: https://github.com/payloadcms/payload/issues/3709\n [validate, required],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled: disabledFromField,\n initialValue,\n path,\n setValue,\n showError,\n value,\n } = useField<SerializedEditorState>({\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || disabledFromField\n\n const [isSmallWidthViewport, setIsSmallWidthViewport] = useState<boolean>(false)\n const [rerenderProviderKey, setRerenderProviderKey] = useState<Date>()\n\n const prevInitialValueRef = React.useRef<SerializedEditorState | undefined>(initialValue)\n const prevValueRef = React.useRef<SerializedEditorState | undefined>(value)\n\n useEffect(() => {\n const updateViewPortWidth = () => {\n const isNextSmallWidthViewport = window.matchMedia('(max-width: 768px)').matches\n\n if (isNextSmallWidthViewport !== isSmallWidthViewport) {\n setIsSmallWidthViewport(isNextSmallWidthViewport)\n }\n }\n updateViewPortWidth()\n window.addEventListener('resize', updateViewPortWidth)\n\n return () => {\n window.removeEventListener('resize', updateViewPortWidth)\n }\n }, [isSmallWidthViewport])\n\n const classes = [\n 'field-type',\n baseClass,\n className,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n editorConfig?.admin?.hideGutter !== true && !isSmallWidthViewport\n ? `${baseClass}--show-gutter`\n : null,\n ]\n .filter(Boolean)\n .join(' ')\n\n const pathWithEditDepth = `${path}.${editDepth}`\n\n const runDeprioritized = useRunDeprioritized() // defaults to 500 ms timeout\n\n const handleChange = useCallback(\n (editorState: EditorState) => {\n // Capture `editorState` in the closure so we can safely run later.\n const updateFieldValue = () => {\n const newState = editorState.toJSON()\n prevValueRef.current = newState\n setValue(newState)\n }\n\n // Queue the update for the browser’s idle time (or Safari shim)\n // and let the hook handle debouncing/cancellation.\n void runDeprioritized(updateFieldValue)\n },\n [setValue, runDeprioritized], // `runDeprioritized` is stable (useCallback inside hook)\n )\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const handleInitialValueChange = useEffectEvent(\n (initialValue: SerializedEditorState | undefined) => {\n // Object deep equality check here, as re-mounting the editor if\n // the new value is the same as the old one is not necessary.\n // In postgres, the order of keys in JSON objects is not guaranteed to be preserved,\n // so we need to do a deep equality check here that does not care about key order => we use dequal.\n // If we used JSON.stringify, the editor would re-mount every time you save the document, as the order of keys changes => change detected => re-mount.\n if (\n prevValueRef.current !== value &&\n !dequal(\n prevValueRef.current != null\n ? JSON.parse(JSON.stringify(prevValueRef.current))\n : prevValueRef.current,\n value,\n )\n ) {\n prevInitialValueRef.current = initialValue\n prevValueRef.current = value\n setRerenderProviderKey(new Date())\n }\n },\n )\n\n useEffect(() => {\n // Needs to trigger for object reference changes - otherwise,\n // reacting to the same initial value change twice will cause\n // the second change to be ignored, even though the value has changed.\n // That's because initialValue is not kept up-to-date\n if (!Object.is(initialValue, prevInitialValueRef.current)) {\n handleInitialValueChange(initialValue)\n }\n }, [initialValue])\n\n return (\n <div\n className={classes}\n data-field-path={path}\n data-field-schemapath={schemaPath}\n data-lexical-view={editorConfig?.view}\n key={pathWithEditDepth}\n style={styles}\n >\n <div className={`${baseClass}__label-row`}>\n {Label || (\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n )}\n {!isControlledByParent && <ViewSelector />}\n </div>\n <div className={`${baseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n <ErrorBoundary fallbackRender={fallbackRender} onReset={() => {}}>\n {BeforeInput}\n {/* Lexical may be in a drawer. We need to define another BulkUploadProvider to ensure that the bulk upload drawer\n is rendered in the correct depth (not displayed *behind* the current drawer).\n The `lexical-` prefix prevents drawer-slug collisions with non-lexical `BulkUploadProvider`s up the tree. */}\n <BulkUploadProvider modalSlugPrefix={`lexical-${path}`}>\n <LexicalProvider\n composerKey={pathWithEditDepth}\n editorConfig={editorConfig}\n fieldProps={props}\n isSmallWidthViewport={isSmallWidthViewport}\n key={JSON.stringify({ path, rerenderProviderKey })} // makes sure lexical is completely re-rendered when initialValue changes, bypassing the lexical-internal value memoization. That way, external changes to the form will update the editor. More infos in PR description (https://github.com/payloadcms/payload/pull/5010)\n onChange={handleChange}\n readOnly={disabled}\n rtl={rtl}\n value={value}\n />\n </BulkUploadProvider>\n {AfterInput}\n </ErrorBoundary>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n </div>\n )\n}\n\nfunction fallbackRender({ error }: FallbackProps) {\n return (\n <div className=\"errorBoundary\" role=\"alert\">\n <p>Something went wrong:</p>\n <pre style={{ color: 'red' }}>{error instanceof Error ? error.message : String(error)}</pre>\n </div>\n )\n}\n\nexport const RichText: typeof RichTextComponent = RichTextComponent\n"],"mappings":"AAAA;;;AAIA,SACEA,kBAAkB,EAClBC,gBAAgB,EAChBC,UAAU,EACVC,UAAU,EACVC,UAAU,EACVC,qBAAqB,EACrBC,SAAS,EACTC,YAAY,EACZC,cAAc,EACdC,QAAQ,EACRC,SAAS,QACJ;AACP,SAASC,gBAAgB,QAAQ;AACjC,SAASC,MAAM,QAAQ;AAEvB,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ;AACjE,SAASC,aAAa,QAAQ;AAI9B,OAAO;AACP,OAAO;AACP,OAAO;AAIP,SAASC,eAAe,QAAQ;AAChC,SAASC,mBAAmB,QAAQ;AACpC,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ;AAE7B,MAAMC,SAAA,GAAY;AAElB,MAAMC,iBAAA,GAIDC,KAAA;EACH,MAAM;IACJC,YAAY;IACZC,KAAK;IACLA,KAAA,EAAO;MACLC,KAAA,EAAO;QAAEC,SAAS;QAAEC,WAAW;QAAEC,QAAA,EAAUC;MAAiB,CAAE,GAAG,CAAC,CAAC;MACnEC,KAAK;MACLC,SAAS;MACTC;IAAQ,CACT;IACDC,IAAA,EAAMC,aAAa;IACnBN,QAAA,EAAUO,yBAAyB;IACnCC,UAAU;IACVC;EAAQ,CACT,GAAGf,KAAA;EAEJ,MAAMgB,iBAAA,GAAoBH,yBAAA,IAA6BN,iBAAA;EAEvD,MAAMU,MAAA,GAAShC,SAAA;EACf,MAAM;IACJiC,MAAA,EAAQ;MAAEC,YAAA,EAAcC;IAAkB;EAAE,CAC7C,GAAGvC,SAAA;EAEJ,MAAMwC,GAAA,GAAM1C,UAAA,CAAW;IACrB2C,cAAA,EAAgBb,SAAA;IAChBQ,MAAA;IACAG,kBAAA,EAAoBA,kBAAA,IAAsBG;EAC5C;EAEA,MAAMC,SAAA,GAAY1C,YAAA;EAClB,MAAM;IAAE2C;EAAoB,CAAE,GAAG7B,eAAA;EAEjC,MAAM8B,gBAAA,GAAmBrC,WAAA,CACvB,CAACsC,KAAA,EAAOC,iBAAA;IACN,IAAI,OAAOb,QAAA,KAAa,YAAY;MAClC;MACA,OAAOA,QAAA,CAASY,KAAA,EAAO;QAAE,GAAGC,iBAAiB;QAAElB;MAAS;IAC1D;IACA,OAAO;EACT;EACA;EACA;EACA;EACA,CAACK,QAAA,EAAUL,QAAA,CAAS;EAGtB,MAAM;IACJmB,gBAAA,EAAkB;MAAEC,UAAU;MAAEC,WAAW;MAAEC,WAAW;MAAEC,KAAA,EAAAC,MAAK;MAAEC;IAAK,CAAE,GAAG,CAAC,CAAC;IAC7EC,QAAA,EAAUC,iBAAiB;IAC3BC,YAAY;IACZ3B,IAAI;IACJ4B,QAAQ;IACRC,SAAS;IACTb,KAAK,EAALA;EAAK,CACN,GAAG3C,QAAA,CAAgC;IAClCyD,oBAAA,EAAsB7B,aAAA;IACtBG,QAAA,EAAUW;EACZ;EAEA,MAAMU,QAAA,GAAWpB,iBAAA,IAAqBqB,iBAAA;EAEtC,MAAM,CAACK,oBAAA,EAAsBC,uBAAA,CAAwB,GAAGnD,QAAA,CAAkB;EAC1E,MAAM,CAACoD,mBAAA,EAAqBC,sBAAA,CAAuB,GAAGrD,QAAA;EAEtD,MAAMsD,mBAAA,GAAsB1D,KAAA,CAAM2D,MAAM,CAAoCT,YAAA;EAC5E,MAAMU,YAAA,GAAe5D,KAAA,CAAM2D,MAAM,CAAoCpB,OAAA;EAErErC,SAAA,CAAU;IACR,MAAM2D,mBAAA,GAAsBA,CAAA;MAC1B,MAAMC,wBAAA,GAA2BC,MAAA,CAAOC,UAAU,CAAC,sBAAsBC,OAAO;MAEhF,IAAIH,wBAAA,KAA6BR,oBAAA,EAAsB;QACrDC,uBAAA,CAAwBO,wBAAA;MAC1B;IACF;IACAD,mBAAA;IACAE,MAAA,CAAOG,gBAAgB,CAAC,UAAUL,mBAAA;IAElC,OAAO;MACLE,MAAA,CAAOI,mBAAmB,CAAC,UAAUN,mBAAA;IACvC;EACF,GAAG,CAACP,oBAAA,CAAqB;EAEzB,MAAMc,OAAA,GAAU,CACd,cACA1D,SAAA,EACAM,SAAA,EACAoC,SAAA,IAAa,SACbJ,QAAA,IAAY,GAAGtC,SAAA,aAAsB,EACrCG,YAAA,EAAcE,KAAA,EAAOsD,UAAA,KAAe,QAAQ,CAACf,oBAAA,GACzC,GAAG5C,SAAA,eAAwB,GAC3B,KACL,CACE4D,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,MAAMC,iBAAA,GAAoB,GAAGlD,IAAA,IAAQa,SAAA,EAAW;EAEhD,MAAMsC,gBAAA,GAAmBnE,mBAAA,GAAsB;AAAA;EAE/C,MAAMoE,YAAA,GAAe1E,WAAA,CAClB2E,WAAA;IACC;IACA,MAAMC,gBAAA,GAAmBA,CAAA;MACvB,MAAMC,QAAA,GAAWF,WAAA,CAAYG,MAAM;MACnCnB,YAAA,CAAaoB,OAAO,GAAGF,QAAA;MACvB3B,QAAA,CAAS2B,QAAA;IACX;IAEA;IACA;IACA,KAAKJ,gBAAA,CAAiBG,gBAAA;EACxB,GACA,CAAC1B,QAAA,EAAUuB,gBAAA,CAAiB;EAG9B,MAAMO,MAAA,GAAS9E,OAAA,CAAQ,MAAML,gBAAA,CAAiBgB,KAAA,GAAQ,CAACA,KAAA,CAAM;EAE7D,MAAMoE,wBAAA,GAA2BvF,cAAA,CAC9BuD,cAAA;IACC;IACA;IACA;IACA;IACA;IACA,IACEU,YAAA,CAAaoB,OAAO,KAAKzC,OAAA,IACzB,CAACxC,MAAA,CACC6D,YAAA,CAAaoB,OAAO,IAAI,OACpBG,IAAA,CAAKC,KAAK,CAACD,IAAA,CAAKE,SAAS,CAACzB,YAAA,CAAaoB,OAAO,KAC9CpB,YAAA,CAAaoB,OAAO,EACxBzC,OAAA,GAEF;MACAmB,mBAAA,CAAoBsB,OAAO,GAAG9B,cAAA;MAC9BU,YAAA,CAAaoB,OAAO,GAAGzC,OAAA;MACvBkB,sBAAA,CAAuB,IAAI6B,IAAA;IAC7B;EACF;EAGFpF,SAAA,CAAU;IACR;IACA;IACA;IACA;IACA,IAAI,CAACqF,MAAA,CAAOC,EAAE,CAACtC,YAAA,EAAcQ,mBAAA,CAAoBsB,OAAO,GAAG;MACzDE,wBAAA,CAAyBhC,YAAA;IAC3B;EACF,GAAG,CAACA,YAAA,CAAa;EAEjB,oBACEuC,KAAA,CAAC;IACCzE,SAAA,EAAWoD,OAAA;IACX,mBAAiB7C,IAAA;IACjB,yBAAuBG,UAAA;IACvB,qBAAmBb,YAAA,EAAc6E,IAAA;IAEjCC,KAAA,EAAOV,MAAA;4BAEPQ,KAAA,CAAC;MAAIzE,SAAA,EAAW,GAAGN,SAAA,aAAsB;iBACtCqC,KAAA,iBACC6C,IAAA,CAACtG,UAAA;QAAW8B,KAAA,EAAOA,KAAA;QAAOC,SAAA,EAAWA,SAAA;QAAWE,IAAA,EAAMA,IAAA;QAAMD,QAAA,EAAUA;UAEvE,CAACe,oBAAA,iBAAwBuD,IAAA,CAACnF,YAAA;qBAE7BgF,KAAA,CAAC;MAAIzE,SAAA,EAAW,GAAGN,SAAA,QAAiB;8BAClCkF,IAAA,CAACpG,qBAAA;QACCqG,eAAA,EAAiB/C,MAAA;QACjBgD,QAAA,eAAUF,IAAA,CAACvG,UAAA;UAAWkC,IAAA,EAAMA,IAAA;UAAM6B,SAAA,EAAWA;;uBAE/CqC,KAAA,CAACpF,aAAA;QAAc0F,cAAA,EAAgBA,cAAA;QAAgBC,OAAA,EAASA,CAAA,MAAO;mBAC5DrD,WAAA,E,aAIDiD,IAAA,CAACzG,kBAAA;UAAmB8G,eAAA,EAAiB,WAAW1E,IAAA,EAAM;oBACpD,aAAAqE,IAAA,CAACtF,eAAA;YACC4F,WAAA,EAAazB,iBAAA;YACb5D,YAAA,EAAcA,YAAA;YACdsF,UAAA,EAAYvF,KAAA;YACZ0C,oBAAA,EAAsBA,oBAAA;YAEtB8C,QAAA,EAAUzB,YAAA;YACVzD,QAAA,EAAU8B,QAAA;YACVf,GAAA,EAAKA,GAAA;YACLM,KAAA,EAAOA;aAJF4C,IAAA,CAAKE,SAAS,CAAC;YAAE9D,IAAA;YAAMiC;UAAoB;YAOnDd,UAAA;uBAEHkD,IAAA,CAACpG,qBAAA;QACCqG,eAAA,EAAiBjD,WAAA;QACjBkD,QAAA,eAAUF,IAAA,CAACxG,gBAAA;UAAiB6B,WAAA,EAAaA,WAAA;UAAaM,IAAA,EAAMA;;;;KApC3DkD,iBAAA;AAyCX;AAEA,SAASsB,eAAe;EAAEM;AAAK,CAAiB;EAC9C,oBACEZ,KAAA,CAAC;IAAIzE,SAAA,EAAU;IAAgBsF,IAAA,EAAK;4BAClCV,IAAA,CAAC;gBAAE;qBACHA,IAAA,CAAC;MAAID,KAAA,EAAO;QAAEY,KAAA,EAAO;MAAM;gBAAIF,KAAA,YAAiBxD,KAAA,GAAQwD,KAAA,CAAMG,OAAO,GAAGC,MAAA,CAAOJ,KAAA;;;AAGrF;AAEA,OAAO,MAAMK,QAAA,GAAqC/F,iBAAA","ignoreList":[]}
1
+ {"version":3,"file":"Field.js","names":["BulkUploadProvider","FieldDescription","FieldError","FieldLabel","isFieldRTL","RenderCustomComponent","useConfig","useEditDepth","useEffectEvent","useField","useLocale","mergeFieldStyles","dequal","React","useCallback","useEffect","useMemo","useState","ErrorBoundary","LexicalProvider","useRunDeprioritized","useRichTextView","ViewSelector","baseClass","RichTextComponent","props","editorConfig","field","admin","className","description","readOnly","readOnlyFromAdmin","label","localized","required","path","pathFromProps","readOnlyFromTopLevelProps","schemaPath","validate","readOnlyFromProps","locale","config","localization","localizationConfig","rtl","fieldLocalized","undefined","editDepth","isControlledByParent","memoizedValidate","value","validationOptions","customComponents","AfterInput","BeforeInput","Description","Error","Error1","Label","disabled","disabledFromField","initialValue","setValue","showError","potentiallyStalePath","isSmallWidthViewport","setIsSmallWidthViewport","rerenderProviderKey","setRerenderProviderKey","prevInitialValueRef","useRef","prevValueRef","updateViewPortWidth","isNextSmallWidthViewport","window","matchMedia","matches","addEventListener","removeEventListener","classes","hideGutter","filter","Boolean","join","pathWithEditDepth","runDeprioritized","handleChange","editorState","updateFieldValue","newState","toJSON","current","styles","handleInitialValueChange","JSON","parse","stringify","Date","Object","is","_jsxs","view","style","_jsx","CustomComponent","Fallback","fallbackRender","onReset","modalSlugPrefix","composerKey","fieldProps","onChange","error","role","color","message","String","RichText"],"sources":["../../src/field/Field.tsx"],"sourcesContent":["'use client'\nimport type { EditorState, SerializedEditorState } from 'lexical'\nimport type { FallbackProps } from 'react-error-boundary'\n\nimport {\n BulkUploadProvider,\n FieldDescription,\n FieldError,\n FieldLabel,\n isFieldRTL,\n RenderCustomComponent,\n useConfig,\n useEditDepth,\n useEffectEvent,\n useField,\n useLocale,\n} from '@payloadcms/ui'\nimport { mergeFieldStyles } from '@payloadcms/ui/shared'\nimport { dequal } from 'dequal/lite'\nimport { type Validate } from 'payload'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { ErrorBoundary } from 'react-error-boundary'\n\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\n\nimport '../lexical/theme/EditorTheme.css'\nimport './bundled.css'\nimport './index.css'\n\nimport type { LexicalRichTextFieldProps } from '../types/index.js'\n\nimport { LexicalProvider } from '../lexical/LexicalProvider.js'\nimport { useRunDeprioritized } from '../utilities/useRunDeprioritized.js'\nimport { useRichTextView } from './RichTextViewProvider.js'\nimport { ViewSelector } from './ViewSelector.js'\n\nconst baseClass = 'rich-text-lexical'\n\nconst RichTextComponent: React.FC<\n {\n readonly editorConfig: SanitizedClientEditorConfig // With rendered features n stuff\n } & LexicalRichTextFieldProps\n> = (props) => {\n const {\n editorConfig,\n field,\n field: {\n admin: { className, description, readOnly: readOnlyFromAdmin } = {},\n label,\n localized,\n required,\n },\n path: pathFromProps,\n readOnly: readOnlyFromTopLevelProps,\n schemaPath,\n validate, // Users can pass in client side validation if they WANT to, but it's not required anymore\n } = props\n\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const locale = useLocale()\n const {\n config: { localization: localizationConfig },\n } = useConfig()\n\n const rtl = isFieldRTL({\n fieldLocalized: localized,\n locale,\n localizationConfig: localizationConfig || undefined,\n })\n\n const editDepth = useEditDepth()\n const { isControlledByParent } = useRichTextView()\n\n const memoizedValidate = useCallback<Validate>(\n (value, validationOptions) => {\n if (typeof validate === 'function') {\n // @ts-expect-error - vestiges of when tsconfig was not strict. Feel free to improve\n return validate(value, { ...validationOptions, required })\n }\n return true\n },\n // Important: do not add props to the dependencies array.\n // This would cause an infinite loop and endless re-rendering.\n // Removing props from the dependencies array fixed this issue: https://github.com/payloadcms/payload/issues/3709\n [validate, required],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled: disabledFromField,\n initialValue,\n path,\n setValue,\n showError,\n value,\n } = useField<SerializedEditorState>({\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || disabledFromField\n\n const [isSmallWidthViewport, setIsSmallWidthViewport] = useState<boolean>(false)\n const [rerenderProviderKey, setRerenderProviderKey] = useState<Date>()\n\n const prevInitialValueRef = React.useRef<SerializedEditorState | undefined>(initialValue)\n const prevValueRef = React.useRef<SerializedEditorState | undefined>(value)\n\n useEffect(() => {\n const updateViewPortWidth = () => {\n const isNextSmallWidthViewport = window.matchMedia('(max-width: 768px)').matches\n\n if (isNextSmallWidthViewport !== isSmallWidthViewport) {\n setIsSmallWidthViewport(isNextSmallWidthViewport)\n }\n }\n updateViewPortWidth()\n window.addEventListener('resize', updateViewPortWidth)\n\n return () => {\n window.removeEventListener('resize', updateViewPortWidth)\n }\n }, [isSmallWidthViewport])\n\n const classes = [\n 'field-type',\n baseClass,\n className,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n editorConfig?.admin?.hideGutter !== true && !isSmallWidthViewport\n ? `${baseClass}--show-gutter`\n : null,\n ]\n .filter(Boolean)\n .join(' ')\n\n const pathWithEditDepth = `${path}.${editDepth}`\n\n const runDeprioritized = useRunDeprioritized() // defaults to 500 ms timeout\n\n const handleChange = useCallback(\n (editorState: EditorState) => {\n // Capture `editorState` in the closure so we can safely run later.\n const updateFieldValue = () => {\n const newState = editorState.toJSON()\n prevValueRef.current = newState\n setValue(newState)\n }\n\n // Queue the update for the browser’s idle time (or Safari shim)\n // and let the hook handle debouncing/cancellation.\n void runDeprioritized(updateFieldValue)\n },\n [setValue, runDeprioritized], // `runDeprioritized` is stable (useCallback inside hook)\n )\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const handleInitialValueChange = useEffectEvent(\n (initialValue: SerializedEditorState | undefined) => {\n // Object deep equality check here, as re-mounting the editor if\n // the new value is the same as the old one is not necessary.\n // In postgres, the order of keys in JSON objects is not guaranteed to be preserved,\n // so we need to do a deep equality check here that does not care about key order => we use dequal.\n // If we used JSON.stringify, the editor would re-mount every time you save the document, as the order of keys changes => change detected => re-mount.\n if (\n prevValueRef.current !== value &&\n !dequal(\n prevValueRef.current != null\n ? JSON.parse(JSON.stringify(prevValueRef.current))\n : prevValueRef.current,\n value,\n )\n ) {\n prevInitialValueRef.current = initialValue\n prevValueRef.current = value\n setRerenderProviderKey(new Date())\n }\n },\n )\n\n useEffect(() => {\n // Needs to trigger for object reference changes - otherwise,\n // reacting to the same initial value change twice will cause\n // the second change to be ignored, even though the value has changed.\n // That's because initialValue is not kept up-to-date\n if (!Object.is(initialValue, prevInitialValueRef.current)) {\n handleInitialValueChange(initialValue)\n }\n }, [initialValue])\n\n return (\n <div\n className={classes}\n data-field-path={path}\n data-field-schemapath={schemaPath}\n data-lexical-view={editorConfig?.view}\n key={pathWithEditDepth}\n style={styles}\n >\n <div className={`${baseClass}__label-row`}>\n {Label || (\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n )}\n {!isControlledByParent && <ViewSelector />}\n </div>\n <div className={`${baseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n <ErrorBoundary fallbackRender={fallbackRender} onReset={() => {}}>\n {BeforeInput}\n <div className={`${baseClass}__editor-content`}>\n {/* Lexical may be in a drawer. We need to define another BulkUploadProvider to ensure that the bulk upload drawer\n is rendered in the correct depth (not displayed *behind* the current drawer).\n The `lexical-` prefix prevents drawer-slug collisions with non-lexical `BulkUploadProvider`s up the tree. */}\n <BulkUploadProvider modalSlugPrefix={`lexical-${path}`}>\n <LexicalProvider\n composerKey={pathWithEditDepth}\n editorConfig={editorConfig}\n fieldProps={props}\n isSmallWidthViewport={isSmallWidthViewport}\n key={JSON.stringify({ path, rerenderProviderKey })} // makes sure lexical is completely re-rendered when initialValue changes, bypassing the lexical-internal value memoization. That way, external changes to the form will update the editor. More infos in PR description (https://github.com/payloadcms/payload/pull/5010)\n onChange={handleChange}\n readOnly={disabled}\n rtl={rtl}\n value={value}\n />\n </BulkUploadProvider>\n </div>\n {AfterInput}\n </ErrorBoundary>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n </div>\n )\n}\n\nfunction fallbackRender({ error }: FallbackProps) {\n return (\n <div className=\"errorBoundary\" role=\"alert\">\n <p>Something went wrong:</p>\n <pre style={{ color: 'red' }}>{error instanceof Error ? error.message : String(error)}</pre>\n </div>\n )\n}\n\nexport const RichText: typeof RichTextComponent = RichTextComponent\n"],"mappings":"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","ignoreList":[]}