@payloadcms/richtext-lexical 3.77.0 → 3.78.0-internal-debug.f663370

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 (1105) hide show
  1. package/dist/cell/rscEntry.js +74 -72
  2. package/dist/cell/rscEntry.js.map +1 -1
  3. package/dist/dependencyChecker.spec.js +8 -7
  4. package/dist/dependencyChecker.spec.js.map +1 -1
  5. package/dist/exports/client/index.d.ts +1 -0
  6. package/dist/exports/client/index.d.ts.map +1 -1
  7. package/dist/exports/client/index.js +86 -65
  8. package/dist/exports/client/index.js.map +1 -7
  9. package/dist/exports/client/internal-client.d.ts +3 -0
  10. package/dist/exports/client/internal-client.d.ts.map +1 -0
  11. package/dist/exports/client/internal-client.js +4 -0
  12. package/dist/exports/client/internal-client.js.map +1 -0
  13. package/dist/exports/cssEntry.js +1 -0
  14. package/dist/exports/cssEntry.js.map +1 -1
  15. package/dist/exports/html/index.js +1 -0
  16. package/dist/exports/html/index.js.map +1 -1
  17. package/dist/exports/html-async/index.js +1 -0
  18. package/dist/exports/html-async/index.js.map +1 -1
  19. package/dist/exports/plaintext/index.js +1 -0
  20. package/dist/exports/plaintext/index.js.map +1 -1
  21. package/dist/exports/react/index.d.ts +3 -1
  22. package/dist/exports/react/index.d.ts.map +1 -1
  23. package/dist/exports/react/index.js +3 -1
  24. package/dist/exports/react/index.js.map +1 -1
  25. package/dist/exports/server/ast/mdx.js +36 -34
  26. package/dist/exports/server/ast/mdx.js.map +1 -1
  27. package/dist/exports/server/migrate.js +1 -0
  28. package/dist/exports/server/migrate.js.map +1 -1
  29. package/dist/exports/server/rsc.js +1 -0
  30. package/dist/exports/server/rsc.js.map +1 -1
  31. package/dist/exports/shared.js +1 -0
  32. package/dist/exports/shared.js.map +1 -1
  33. package/dist/features/align/client/index.js +168 -195
  34. package/dist/features/align/client/index.js.map +1 -1
  35. package/dist/features/align/client/toolbarAlignGroup.js +9 -9
  36. package/dist/features/align/client/toolbarAlignGroup.js.map +1 -1
  37. package/dist/features/align/server/i18n.js +223 -222
  38. package/dist/features/align/server/i18n.js.map +1 -1
  39. package/dist/features/align/server/index.js +6 -5
  40. package/dist/features/align/server/index.js.map +1 -1
  41. package/dist/features/blockquote/client/index.js +65 -60
  42. package/dist/features/blockquote/client/index.js.map +1 -1
  43. package/dist/features/blockquote/markdownTransformer.js +33 -28
  44. package/dist/features/blockquote/markdownTransformer.js.map +1 -1
  45. package/dist/features/blockquote/server/i18n.js +112 -111
  46. package/dist/features/blockquote/server/i18n.js.map +1 -1
  47. package/dist/features/blockquote/server/index.js +47 -48
  48. package/dist/features/blockquote/server/index.js.map +1 -1
  49. package/dist/features/blocks/client/component/BlockContent.d.ts +7 -4
  50. package/dist/features/blocks/client/component/BlockContent.d.ts.map +1 -1
  51. package/dist/features/blocks/client/component/BlockContent.js +97 -68
  52. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  53. package/dist/features/blocks/client/component/components/BlockCollapsible.js +13 -14
  54. package/dist/features/blocks/client/component/components/BlockCollapsible.js.map +1 -1
  55. package/dist/features/blocks/client/component/components/BlockEditButton.js +9 -17
  56. package/dist/features/blocks/client/component/components/BlockEditButton.js.map +1 -1
  57. package/dist/features/blocks/client/component/components/BlockRemoveButton.js +9 -17
  58. package/dist/features/blocks/client/component/components/BlockRemoveButton.js.map +1 -1
  59. package/dist/features/blocks/client/component/index.d.ts +20 -4
  60. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  61. package/dist/features/blocks/client/component/index.js +611 -418
  62. package/dist/features/blocks/client/component/index.js.map +1 -1
  63. package/dist/features/blocks/client/component/index.scss +188 -0
  64. package/dist/features/blocks/client/component/removeEmptyArrayValues.js +8 -11
  65. package/dist/features/blocks/client/component/removeEmptyArrayValues.js.map +1 -1
  66. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js +11 -23
  67. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js.map +1 -1
  68. package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js +9 -17
  69. package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js.map +1 -1
  70. package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js +9 -17
  71. package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js.map +1 -1
  72. package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js +9 -17
  73. package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js.map +1 -1
  74. package/dist/features/blocks/client/componentInline/index.d.ts +8 -14
  75. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  76. package/dist/features/blocks/client/componentInline/index.js +509 -346
  77. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  78. package/dist/features/blocks/client/componentInline/index.scss +100 -0
  79. package/dist/features/blocks/client/getBlockImageComponent.js +17 -12
  80. package/dist/features/blocks/client/getBlockImageComponent.js.map +1 -1
  81. package/dist/features/blocks/client/index.js +141 -146
  82. package/dist/features/blocks/client/index.js.map +1 -1
  83. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +18 -18
  84. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
  85. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +14 -15
  86. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
  87. package/dist/features/blocks/client/markdown/markdownTransformer.js +328 -330
  88. package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
  89. package/dist/features/blocks/client/nodes/BlocksNode.d.ts +4 -2
  90. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  91. package/dist/features/blocks/client/nodes/BlocksNode.js +46 -40
  92. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  93. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts +4 -2
  94. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  95. package/dist/features/blocks/client/nodes/InlineBlocksNode.js +39 -33
  96. package/dist/features/blocks/client/nodes/InlineBlocksNode.js.map +1 -1
  97. package/dist/features/blocks/client/plugin/commands.js +1 -1
  98. package/dist/features/blocks/client/plugin/commands.js.map +1 -1
  99. package/dist/features/blocks/client/plugin/index.js +59 -87
  100. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  101. package/dist/features/blocks/premade/CodeBlock/Component/Block.js +158 -101
  102. package/dist/features/blocks/premade/CodeBlock/Component/Block.js.map +1 -1
  103. package/dist/features/blocks/premade/CodeBlock/Component/Code.js +119 -93
  104. package/dist/features/blocks/premade/CodeBlock/Component/Code.js.map +1 -1
  105. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js +19 -11
  106. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js.map +1 -1
  107. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.scss +6 -0
  108. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js +32 -20
  109. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js.map +1 -1
  110. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.scss +29 -0
  111. package/dist/features/blocks/premade/CodeBlock/Component/defaultLanguages.js +84 -83
  112. package/dist/features/blocks/premade/CodeBlock/Component/defaultLanguages.js.map +1 -1
  113. package/dist/features/blocks/premade/CodeBlock/Component/index.scss +97 -0
  114. package/dist/features/blocks/premade/CodeBlock/converter.js +36 -40
  115. package/dist/features/blocks/premade/CodeBlock/converter.js.map +1 -1
  116. package/dist/features/blocks/premade/CodeBlock/converterClient.js +1 -1
  117. package/dist/features/blocks/premade/CodeBlock/converterClient.js.map +1 -1
  118. package/dist/features/blocks/premade/CodeBlock/index.js +49 -49
  119. package/dist/features/blocks/premade/CodeBlock/index.js.map +1 -1
  120. package/dist/features/blocks/server/graphQLPopulationPromise.js +29 -44
  121. package/dist/features/blocks/server/graphQLPopulationPromise.js.map +1 -1
  122. package/dist/features/blocks/server/i18n.js +334 -333
  123. package/dist/features/blocks/server/i18n.js.map +1 -1
  124. package/dist/features/blocks/server/index.js +238 -218
  125. package/dist/features/blocks/server/index.js.map +1 -1
  126. package/dist/features/blocks/server/markdown/linesFromMatchToContentAndPropsString.js +123 -122
  127. package/dist/features/blocks/server/markdown/linesFromMatchToContentAndPropsString.js.map +1 -1
  128. package/dist/features/blocks/server/markdown/markdownTransformer.js +347 -349
  129. package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
  130. package/dist/features/blocks/server/nodes/BlocksNode.js +86 -90
  131. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  132. package/dist/features/blocks/server/nodes/InlineBlocksNode.js +84 -87
  133. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  134. package/dist/features/blocks/server/validate.js +42 -55
  135. package/dist/features/blocks/server/validate.js.map +1 -1
  136. package/dist/features/converters/htmlToLexical/index.js +21 -24
  137. package/dist/features/converters/htmlToLexical/index.js.map +1 -1
  138. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.js +7 -10
  139. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.js.map +1 -1
  140. package/dist/features/converters/lexicalToHtml/async/converters/heading.js +7 -10
  141. package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
  142. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.js +2 -1
  143. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.js.map +1 -1
  144. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.js +2 -1
  145. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.js.map +1 -1
  146. package/dist/features/converters/lexicalToHtml/async/converters/link.js +28 -37
  147. package/dist/features/converters/lexicalToHtml/async/converters/link.js.map +1 -1
  148. package/dist/features/converters/lexicalToHtml/async/converters/list.js +18 -26
  149. package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
  150. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.js +9 -12
  151. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.js.map +1 -1
  152. package/dist/features/converters/lexicalToHtml/async/converters/tab.js +2 -1
  153. package/dist/features/converters/lexicalToHtml/async/converters/tab.js.map +1 -1
  154. package/dist/features/converters/lexicalToHtml/async/converters/table.js +27 -38
  155. package/dist/features/converters/lexicalToHtml/async/converters/table.js.map +1 -1
  156. package/dist/features/converters/lexicalToHtml/async/converters/text.js +25 -26
  157. package/dist/features/converters/lexicalToHtml/async/converters/text.js.map +1 -1
  158. package/dist/features/converters/lexicalToHtml/async/converters/upload.js +41 -44
  159. package/dist/features/converters/lexicalToHtml/async/converters/upload.js.map +1 -1
  160. package/dist/features/converters/lexicalToHtml/async/defaultConverters.js +12 -11
  161. package/dist/features/converters/lexicalToHtml/async/defaultConverters.js.map +1 -1
  162. package/dist/features/converters/lexicalToHtml/async/field/index.js +56 -56
  163. package/dist/features/converters/lexicalToHtml/async/field/index.js.map +1 -1
  164. package/dist/features/converters/lexicalToHtml/async/index.js +87 -97
  165. package/dist/features/converters/lexicalToHtml/async/index.js.map +1 -1
  166. package/dist/features/converters/lexicalToHtml/async/types.js +4 -1
  167. package/dist/features/converters/lexicalToHtml/async/types.js.map +1 -1
  168. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js +57 -62
  169. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
  170. package/dist/features/converters/lexicalToHtml/shared/types.js +2 -1
  171. package/dist/features/converters/lexicalToHtml/shared/types.js.map +1 -1
  172. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.js +7 -10
  173. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.js.map +1 -1
  174. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js +7 -10
  175. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
  176. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.js +2 -1
  177. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.js.map +1 -1
  178. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.js +2 -1
  179. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.js.map +1 -1
  180. package/dist/features/converters/lexicalToHtml/sync/converters/link.js +27 -35
  181. package/dist/features/converters/lexicalToHtml/sync/converters/link.js.map +1 -1
  182. package/dist/features/converters/lexicalToHtml/sync/converters/list.js +18 -26
  183. package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
  184. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.js +9 -12
  185. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.js.map +1 -1
  186. package/dist/features/converters/lexicalToHtml/sync/converters/tab.js +2 -1
  187. package/dist/features/converters/lexicalToHtml/sync/converters/tab.js.map +1 -1
  188. package/dist/features/converters/lexicalToHtml/sync/converters/table.js +27 -38
  189. package/dist/features/converters/lexicalToHtml/sync/converters/table.js.map +1 -1
  190. package/dist/features/converters/lexicalToHtml/sync/converters/text.js +25 -26
  191. package/dist/features/converters/lexicalToHtml/sync/converters/text.js.map +1 -1
  192. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js +35 -37
  193. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js.map +1 -1
  194. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.js +12 -11
  195. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.js.map +1 -1
  196. package/dist/features/converters/lexicalToHtml/sync/index.js +84 -92
  197. package/dist/features/converters/lexicalToHtml/sync/index.js.map +1 -1
  198. package/dist/features/converters/lexicalToHtml/sync/types.js +4 -1
  199. package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
  200. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js +7 -4
  201. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js.map +1 -1
  202. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js +29 -34
  203. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js.map +1 -1
  204. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js +7 -6
  205. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js.map +1 -1
  206. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js +29 -28
  207. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js.map +1 -1
  208. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js +7 -2
  209. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js.map +1 -1
  210. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js +84 -84
  211. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js.map +1 -1
  212. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js +6 -1
  213. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js.map +1 -1
  214. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js +107 -107
  215. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js.map +1 -1
  216. package/dist/features/converters/lexicalToHtml_deprecated/index.js +4 -4
  217. package/dist/features/converters/lexicalToHtml_deprecated/index.js.map +1 -1
  218. package/dist/features/converters/lexicalToJSX/Component/index.d.ts +6 -20
  219. package/dist/features/converters/lexicalToJSX/Component/index.d.ts.map +1 -1
  220. package/dist/features/converters/lexicalToJSX/Component/index.js +42 -37
  221. package/dist/features/converters/lexicalToJSX/Component/index.js.map +1 -1
  222. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.js +14 -12
  223. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.js.map +1 -1
  224. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js +15 -13
  225. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
  226. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.js +7 -2
  227. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.js.map +1 -1
  228. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.js +7 -2
  229. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.js.map +1 -1
  230. package/dist/features/converters/lexicalToJSX/converter/converters/link.js +49 -47
  231. package/dist/features/converters/lexicalToJSX/converter/converters/link.js.map +1 -1
  232. package/dist/features/converters/lexicalToJSX/converter/converters/list.js +78 -56
  233. package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
  234. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.js +26 -16
  235. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.js.map +1 -1
  236. package/dist/features/converters/lexicalToJSX/converter/converters/tab.js +2 -1
  237. package/dist/features/converters/lexicalToJSX/converter/converters/tab.js.map +1 -1
  238. package/dist/features/converters/lexicalToJSX/converter/converters/table.js +73 -59
  239. package/dist/features/converters/lexicalToJSX/converter/converters/table.js.map +1 -1
  240. package/dist/features/converters/lexicalToJSX/converter/converters/text.js +74 -47
  241. package/dist/features/converters/lexicalToJSX/converter/converters/text.js.map +1 -1
  242. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js +77 -61
  243. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js.map +1 -1
  244. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.js +12 -11
  245. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.js.map +1 -1
  246. package/dist/features/converters/lexicalToJSX/converter/index.d.ts +17 -2
  247. package/dist/features/converters/lexicalToJSX/converter/index.d.ts.map +1 -1
  248. package/dist/features/converters/lexicalToJSX/converter/index.js +253 -125
  249. package/dist/features/converters/lexicalToJSX/converter/index.js.map +1 -1
  250. package/dist/features/converters/lexicalToJSX/converter/types.d.ts +14 -10
  251. package/dist/features/converters/lexicalToJSX/converter/types.d.ts.map +1 -1
  252. package/dist/features/converters/lexicalToJSX/converter/types.js +4 -1
  253. package/dist/features/converters/lexicalToJSX/converter/types.js.map +1 -1
  254. package/dist/features/converters/lexicalToMarkdown/index.js +17 -19
  255. package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
  256. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js +223 -146
  257. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +1 -1
  258. package/dist/features/converters/lexicalToPlaintext/shared/findConverterForNode.js +11 -13
  259. package/dist/features/converters/lexicalToPlaintext/shared/findConverterForNode.js.map +1 -1
  260. package/dist/features/converters/lexicalToPlaintext/shared/types.js +2 -1
  261. package/dist/features/converters/lexicalToPlaintext/shared/types.js.map +1 -1
  262. package/dist/features/converters/lexicalToPlaintext/sync/index.js +83 -82
  263. package/dist/features/converters/lexicalToPlaintext/sync/index.js.map +1 -1
  264. package/dist/features/converters/lexicalToPlaintext/sync/types.js +3 -1
  265. package/dist/features/converters/lexicalToPlaintext/sync/types.js.map +1 -1
  266. package/dist/features/converters/markdownToLexical/index.js +14 -16
  267. package/dist/features/converters/markdownToLexical/index.js.map +1 -1
  268. package/dist/features/converters/utilities/payloadPopulateFn.js +37 -38
  269. package/dist/features/converters/utilities/payloadPopulateFn.js.map +1 -1
  270. package/dist/features/converters/utilities/restPopulateFn.js +24 -30
  271. package/dist/features/converters/utilities/restPopulateFn.js.map +1 -1
  272. package/dist/features/debug/jsxConverter/client/index.js +7 -5
  273. package/dist/features/debug/jsxConverter/client/index.js.map +1 -1
  274. package/dist/features/debug/jsxConverter/client/plugin/index.js +27 -47
  275. package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
  276. package/dist/features/debug/jsxConverter/client/plugin/style.scss +12 -0
  277. package/dist/features/debug/jsxConverter/server/index.js +5 -4
  278. package/dist/features/debug/jsxConverter/server/index.js.map +1 -1
  279. package/dist/features/debug/testRecorder/client/index.js +7 -5
  280. package/dist/features/debug/testRecorder/client/index.js.map +1 -1
  281. package/dist/features/debug/testRecorder/client/plugin/index.js +456 -365
  282. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  283. package/dist/features/debug/testRecorder/client/plugin/index.scss +53 -0
  284. package/dist/features/debug/testRecorder/server/index.js +5 -4
  285. package/dist/features/debug/testRecorder/server/index.js.map +1 -1
  286. package/dist/features/debug/treeView/client/index.js +7 -5
  287. package/dist/features/debug/treeView/client/index.js.map +1 -1
  288. package/dist/features/debug/treeView/client/plugin/index.js +18 -23
  289. package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
  290. package/dist/features/debug/treeView/client/plugin/index.scss +80 -0
  291. package/dist/features/debug/treeView/server/index.js +5 -4
  292. package/dist/features/debug/treeView/server/index.js.map +1 -1
  293. package/dist/features/experimental_table/client/index.js +61 -42
  294. package/dist/features/experimental_table/client/index.js.map +1 -1
  295. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js +752 -517
  296. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  297. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.scss +87 -0
  298. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js +350 -316
  299. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  300. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.scss +11 -0
  301. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js +215 -225
  302. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -1
  303. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js +104 -133
  304. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +1 -1
  305. package/dist/features/experimental_table/client/plugins/TablePlugin/index.scss +233 -0
  306. package/dist/features/experimental_table/client/utils/debounce.js +89 -107
  307. package/dist/features/experimental_table/client/utils/debounce.js.map +1 -1
  308. package/dist/features/experimental_table/client/utils/useDebounce.js +21 -39
  309. package/dist/features/experimental_table/client/utils/useDebounce.js.map +1 -1
  310. package/dist/features/experimental_table/markdownTransformer.js +123 -118
  311. package/dist/features/experimental_table/markdownTransformer.js.map +1 -1
  312. package/dist/features/experimental_table/server/index.js +125 -143
  313. package/dist/features/experimental_table/server/index.js.map +1 -1
  314. package/dist/features/format/bold/feature.client.js +38 -35
  315. package/dist/features/format/bold/feature.client.js.map +1 -1
  316. package/dist/features/format/bold/feature.server.js +18 -14
  317. package/dist/features/format/bold/feature.server.js.map +1 -1
  318. package/dist/features/format/bold/markdownTransformers.js +25 -14
  319. package/dist/features/format/bold/markdownTransformers.js.map +1 -1
  320. package/dist/features/format/inlineCode/feature.client.js +31 -27
  321. package/dist/features/format/inlineCode/feature.client.js.map +1 -1
  322. package/dist/features/format/inlineCode/feature.server.js +8 -5
  323. package/dist/features/format/inlineCode/feature.server.js.map +1 -1
  324. package/dist/features/format/inlineCode/markdownTransformers.js +6 -3
  325. package/dist/features/format/inlineCode/markdownTransformers.js.map +1 -1
  326. package/dist/features/format/italic/feature.client.js +32 -27
  327. package/dist/features/format/italic/feature.client.js.map +1 -1
  328. package/dist/features/format/italic/feature.server.js +9 -5
  329. package/dist/features/format/italic/feature.server.js.map +1 -1
  330. package/dist/features/format/italic/markdownTransformers.js +12 -7
  331. package/dist/features/format/italic/markdownTransformers.js.map +1 -1
  332. package/dist/features/format/shared/toolbarFormatGroup.js +8 -8
  333. package/dist/features/format/shared/toolbarFormatGroup.js.map +1 -1
  334. package/dist/features/format/strikethrough/feature.client.js +31 -27
  335. package/dist/features/format/strikethrough/feature.client.js.map +1 -1
  336. package/dist/features/format/strikethrough/feature.server.js +8 -5
  337. package/dist/features/format/strikethrough/feature.server.js.map +1 -1
  338. package/dist/features/format/strikethrough/markdownTransformers.js +6 -3
  339. package/dist/features/format/strikethrough/markdownTransformers.js.map +1 -1
  340. package/dist/features/format/subscript/feature.client.js +28 -26
  341. package/dist/features/format/subscript/feature.client.js.map +1 -1
  342. package/dist/features/format/subscript/feature.server.js +5 -4
  343. package/dist/features/format/subscript/feature.server.js.map +1 -1
  344. package/dist/features/format/superscript/feature.client.js +28 -26
  345. package/dist/features/format/superscript/feature.client.js.map +1 -1
  346. package/dist/features/format/superscript/feature.server.js +5 -4
  347. package/dist/features/format/superscript/feature.server.js.map +1 -1
  348. package/dist/features/format/underline/feature.client.js +28 -26
  349. package/dist/features/format/underline/feature.client.js.map +1 -1
  350. package/dist/features/format/underline/feature.server.js +5 -4
  351. package/dist/features/format/underline/feature.server.js.map +1 -1
  352. package/dist/features/heading/client/index.js +121 -142
  353. package/dist/features/heading/client/index.js.map +1 -1
  354. package/dist/features/heading/markdownTransformer.js +25 -22
  355. package/dist/features/heading/markdownTransformer.js.map +1 -1
  356. package/dist/features/heading/server/i18n.js +112 -111
  357. package/dist/features/heading/server/i18n.js.map +1 -1
  358. package/dist/features/heading/server/index.js +62 -60
  359. package/dist/features/heading/server/index.js.map +1 -1
  360. package/dist/features/horizontalRule/client/index.js +57 -48
  361. package/dist/features/horizontalRule/client/index.js.map +1 -1
  362. package/dist/features/horizontalRule/client/markdownTransformer.js +18 -15
  363. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  364. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +25 -27
  365. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  366. package/dist/features/horizontalRule/client/plugin/index.js +21 -32
  367. package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
  368. package/dist/features/horizontalRule/client/plugin/index.scss +23 -0
  369. package/dist/features/horizontalRule/server/i18n.js +112 -111
  370. package/dist/features/horizontalRule/server/i18n.js.map +1 -1
  371. package/dist/features/horizontalRule/server/index.js +24 -17
  372. package/dist/features/horizontalRule/server/index.js.map +1 -1
  373. package/dist/features/horizontalRule/server/markdownTransformer.js +18 -15
  374. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  375. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +69 -72
  376. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  377. package/dist/features/indent/client/IndentPlugin.js +78 -78
  378. package/dist/features/indent/client/IndentPlugin.js.map +1 -1
  379. package/dist/features/indent/client/index.js +68 -77
  380. package/dist/features/indent/client/index.js.map +1 -1
  381. package/dist/features/indent/client/toolbarIndentGroup.js +8 -8
  382. package/dist/features/indent/client/toolbarIndentGroup.js.map +1 -1
  383. package/dist/features/indent/server/i18n.js +149 -148
  384. package/dist/features/indent/server/i18n.js.map +1 -1
  385. package/dist/features/indent/server/index.js +18 -11
  386. package/dist/features/indent/server/index.js.map +1 -1
  387. package/dist/features/link/client/index.js +83 -80
  388. package/dist/features/link/client/index.js.map +1 -1
  389. package/dist/features/link/client/plugins/autoLink/index.js +280 -273
  390. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  391. package/dist/features/link/client/plugins/clickableLink/index.js +8 -4
  392. package/dist/features/link/client/plugins/clickableLink/index.js.map +1 -1
  393. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js +1 -1
  394. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js.map +1 -1
  395. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +395 -308
  396. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  397. package/dist/features/link/client/plugins/floatingLinkEditor/index.js +12 -9
  398. package/dist/features/link/client/plugins/floatingLinkEditor/index.js.map +1 -1
  399. package/dist/features/link/client/plugins/floatingLinkEditor/index.scss +95 -0
  400. package/dist/features/link/client/plugins/floatingLinkEditor/types.js +6 -1
  401. package/dist/features/link/client/plugins/floatingLinkEditor/types.js.map +1 -1
  402. package/dist/features/link/client/plugins/link/index.js +53 -68
  403. package/dist/features/link/client/plugins/link/index.js.map +1 -1
  404. package/dist/features/link/markdownTransformer.js +34 -33
  405. package/dist/features/link/markdownTransformer.js.map +1 -1
  406. package/dist/features/link/nodes/AutoLinkNode.js +56 -58
  407. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  408. package/dist/features/link/nodes/LinkNode.js +286 -288
  409. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  410. package/dist/features/link/nodes/types.js +6 -1
  411. package/dist/features/link/nodes/types.js.map +1 -1
  412. package/dist/features/link/server/baseFields.js +115 -140
  413. package/dist/features/link/server/baseFields.js.map +1 -1
  414. package/dist/features/link/server/graphQLPopulationPromise.js +29 -45
  415. package/dist/features/link/server/graphQLPopulationPromise.js.map +1 -1
  416. package/dist/features/link/server/i18n.js +149 -148
  417. package/dist/features/link/server/i18n.js.map +1 -1
  418. package/dist/features/link/server/index.js +156 -143
  419. package/dist/features/link/server/index.js.map +1 -1
  420. package/dist/features/link/server/transformExtraFields.js +15 -15
  421. package/dist/features/link/server/transformExtraFields.js.map +1 -1
  422. package/dist/features/link/server/validate.js +35 -46
  423. package/dist/features/link/server/validate.js.map +1 -1
  424. package/dist/features/lists/checklist/client/index.js +86 -78
  425. package/dist/features/lists/checklist/client/index.js.map +1 -1
  426. package/dist/features/lists/checklist/client/plugin/index.js +8 -4
  427. package/dist/features/lists/checklist/client/plugin/index.js.map +1 -1
  428. package/dist/features/lists/checklist/markdownTransformers.js +11 -7
  429. package/dist/features/lists/checklist/markdownTransformers.js.map +1 -1
  430. package/dist/features/lists/checklist/server/i18n.js +112 -111
  431. package/dist/features/lists/checklist/server/i18n.js.map +1 -1
  432. package/dist/features/lists/checklist/server/index.js +26 -21
  433. package/dist/features/lists/checklist/server/index.js.map +1 -1
  434. package/dist/features/lists/htmlConverter.js +47 -62
  435. package/dist/features/lists/htmlConverter.js.map +1 -1
  436. package/dist/features/lists/orderedList/client/index.js +78 -72
  437. package/dist/features/lists/orderedList/client/index.js.map +1 -1
  438. package/dist/features/lists/orderedList/markdownTransformer.js +11 -7
  439. package/dist/features/lists/orderedList/markdownTransformer.js.map +1 -1
  440. package/dist/features/lists/orderedList/server/i18n.js +112 -111
  441. package/dist/features/lists/orderedList/server/i18n.js.map +1 -1
  442. package/dist/features/lists/orderedList/server/index.js +26 -21
  443. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  444. package/dist/features/lists/plugin/index.js +8 -4
  445. package/dist/features/lists/plugin/index.js.map +1 -1
  446. package/dist/features/lists/shared/markdown.js +49 -48
  447. package/dist/features/lists/shared/markdown.js.map +1 -1
  448. package/dist/features/lists/shared/shouldRegisterListBaseNodes.js +10 -9
  449. package/dist/features/lists/shared/shouldRegisterListBaseNodes.js.map +1 -1
  450. package/dist/features/lists/shared/slashMenuListGroup.js +8 -9
  451. package/dist/features/lists/shared/slashMenuListGroup.js.map +1 -1
  452. package/dist/features/lists/unorderedList/client/index.js +76 -68
  453. package/dist/features/lists/unorderedList/client/index.js.map +1 -1
  454. package/dist/features/lists/unorderedList/markdownTransformer.js +11 -7
  455. package/dist/features/lists/unorderedList/markdownTransformer.js.map +1 -1
  456. package/dist/features/lists/unorderedList/server/i18n.js +112 -111
  457. package/dist/features/lists/unorderedList/server/i18n.js.map +1 -1
  458. package/dist/features/lists/unorderedList/server/index.js +24 -17
  459. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  460. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +17 -18
  461. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js.map +1 -1
  462. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +29 -30
  463. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js.map +1 -1
  464. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +20 -21
  465. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js.map +1 -1
  466. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +19 -21
  467. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js.map +1 -1
  468. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +17 -18
  469. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js.map +1 -1
  470. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +23 -24
  471. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js.map +1 -1
  472. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +21 -20
  473. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js.map +1 -1
  474. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +10 -1
  475. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js.map +1 -1
  476. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js +64 -70
  477. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js.map +1 -1
  478. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js +2 -1
  479. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js.map +1 -1
  480. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js +7 -5
  481. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js.map +1 -1
  482. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js +43 -42
  483. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js.map +1 -1
  484. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +21 -11
  485. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  486. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +65 -66
  487. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  488. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +16 -0
  489. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +19 -19
  490. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js.map +1 -1
  491. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js +26 -20
  492. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js.map +1 -1
  493. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js +30 -28
  494. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js.map +1 -1
  495. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js +27 -26
  496. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js.map +1 -1
  497. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js +21 -22
  498. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js.map +1 -1
  499. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +22 -22
  500. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js.map +1 -1
  501. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js +13 -12
  502. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js.map +1 -1
  503. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js +23 -23
  504. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js.map +1 -1
  505. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +22 -22
  506. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js.map +1 -1
  507. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js +16 -15
  508. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js.map +1 -1
  509. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js +13 -1
  510. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js.map +1 -1
  511. package/dist/features/migrations/slateToLexical/converter/index.js +110 -117
  512. package/dist/features/migrations/slateToLexical/converter/index.js.map +1 -1
  513. package/dist/features/migrations/slateToLexical/converter/types.js +2 -1
  514. package/dist/features/migrations/slateToLexical/converter/types.js.map +1 -1
  515. package/dist/features/migrations/slateToLexical/feature.client.js +7 -5
  516. package/dist/features/migrations/slateToLexical/feature.client.js.map +1 -1
  517. package/dist/features/migrations/slateToLexical/feature.server.js +54 -45
  518. package/dist/features/migrations/slateToLexical/feature.server.js.map +1 -1
  519. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +21 -11
  520. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  521. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +65 -66
  522. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  523. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.scss +16 -0
  524. package/dist/features/paragraph/client/index.js +61 -58
  525. package/dist/features/paragraph/client/index.js.map +1 -1
  526. package/dist/features/paragraph/server/i18n.js +149 -148
  527. package/dist/features/paragraph/server/i18n.js.map +1 -1
  528. package/dist/features/paragraph/server/index.js +7 -6
  529. package/dist/features/paragraph/server/index.js.map +1 -1
  530. package/dist/features/relationship/client/components/RelationshipComponent.js +147 -118
  531. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  532. package/dist/features/relationship/client/components/index.scss +95 -0
  533. package/dist/features/relationship/client/drawer/commands.js +1 -0
  534. package/dist/features/relationship/client/drawer/commands.js.map +1 -1
  535. package/dist/features/relationship/client/drawer/index.js +81 -132
  536. package/dist/features/relationship/client/drawer/index.js.map +1 -1
  537. package/dist/features/relationship/client/index.js +59 -53
  538. package/dist/features/relationship/client/index.js.map +1 -1
  539. package/dist/features/relationship/client/nodes/RelationshipNode.js +64 -60
  540. package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
  541. package/dist/features/relationship/client/plugins/index.js +39 -69
  542. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  543. package/dist/features/relationship/client/utils/useEnabledRelationships.js +48 -58
  544. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  545. package/dist/features/relationship/server/graphQLPopulationPromise.js +26 -34
  546. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  547. package/dist/features/relationship/server/i18n.js +112 -111
  548. package/dist/features/relationship/server/i18n.js.map +1 -1
  549. package/dist/features/relationship/server/index.js +64 -59
  550. package/dist/features/relationship/server/index.js.map +1 -1
  551. package/dist/features/relationship/server/nodes/RelationshipNode.js +92 -95
  552. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  553. package/dist/features/shared/slashMenu/basicGroup.js +8 -9
  554. package/dist/features/shared/slashMenu/basicGroup.js.map +1 -1
  555. package/dist/features/shared/toolbar/addDropdownGroup.js +9 -8
  556. package/dist/features/shared/toolbar/addDropdownGroup.js.map +1 -1
  557. package/dist/features/shared/toolbar/featureButtonsGroup.js +8 -7
  558. package/dist/features/shared/toolbar/featureButtonsGroup.js.map +1 -1
  559. package/dist/features/shared/toolbar/textDropdownGroup.js +9 -8
  560. package/dist/features/shared/toolbar/textDropdownGroup.js.map +1 -1
  561. package/dist/features/textState/defaultColors.js +370 -370
  562. package/dist/features/textState/defaultColors.js.map +1 -1
  563. package/dist/features/textState/feature.client.js +77 -64
  564. package/dist/features/textState/feature.client.js.map +1 -1
  565. package/dist/features/textState/feature.server.js +46 -14
  566. package/dist/features/textState/feature.server.js.map +1 -1
  567. package/dist/features/textState/i18n.js +112 -111
  568. package/dist/features/textState/i18n.js.map +1 -1
  569. package/dist/features/textState/textState.js +64 -62
  570. package/dist/features/textState/textState.js.map +1 -1
  571. package/dist/features/toolbars/fixed/client/Toolbar/index.js +263 -297
  572. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  573. package/dist/features/toolbars/fixed/client/Toolbar/index.scss +113 -0
  574. package/dist/features/toolbars/fixed/client/index.js +7 -5
  575. package/dist/features/toolbars/fixed/client/index.js.map +1 -1
  576. package/dist/features/toolbars/fixed/server/index.js +32 -16
  577. package/dist/features/toolbars/fixed/server/index.js.map +1 -1
  578. package/dist/features/toolbars/inline/client/Toolbar/index.js +343 -366
  579. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  580. package/dist/features/toolbars/inline/client/Toolbar/index.scss +58 -0
  581. package/dist/features/toolbars/inline/client/index.js +7 -5
  582. package/dist/features/toolbars/inline/client/index.js.map +1 -1
  583. package/dist/features/toolbars/inline/server/index.js +5 -4
  584. package/dist/features/toolbars/inline/server/index.js.map +1 -1
  585. package/dist/features/toolbars/shared/ToolbarButton/index.js +103 -145
  586. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  587. package/dist/features/toolbars/shared/ToolbarButton/index.scss +46 -0
  588. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +264 -208
  589. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  590. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +172 -176
  591. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  592. package/dist/features/toolbars/shared/ToolbarDropdown/index.scss +129 -0
  593. package/dist/features/toolbars/types.js +29 -1
  594. package/dist/features/toolbars/types.js.map +1 -1
  595. package/dist/features/typeUtilities.js +3 -2
  596. package/dist/features/typeUtilities.js.map +1 -1
  597. package/dist/features/typesClient.js +61 -1
  598. package/dist/features/typesClient.js.map +1 -1
  599. package/dist/features/typesServer.js +90 -1
  600. package/dist/features/typesServer.js.map +1 -1
  601. package/dist/features/upload/client/component/index.js +242 -189
  602. package/dist/features/upload/client/component/index.js.map +1 -1
  603. package/dist/features/upload/client/component/index.scss +191 -0
  604. package/dist/features/upload/client/component/pending/index.js +19 -10
  605. package/dist/features/upload/client/component/pending/index.js.map +1 -1
  606. package/dist/features/upload/client/drawer/commands.js +1 -1
  607. package/dist/features/upload/client/drawer/commands.js.map +1 -1
  608. package/dist/features/upload/client/drawer/index.js +83 -132
  609. package/dist/features/upload/client/drawer/index.js.map +1 -1
  610. package/dist/features/upload/client/index.js +61 -51
  611. package/dist/features/upload/client/index.js.map +1 -1
  612. package/dist/features/upload/client/nodes/UploadNode.js +67 -61
  613. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  614. package/dist/features/upload/client/plugin/index.js +290 -331
  615. package/dist/features/upload/client/plugin/index.js.map +1 -1
  616. package/dist/features/upload/server/graphQLPopulationPromise.js +48 -63
  617. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  618. package/dist/features/upload/server/i18n.js +112 -111
  619. package/dist/features/upload/server/i18n.js.map +1 -1
  620. package/dist/features/upload/server/index.js +197 -207
  621. package/dist/features/upload/server/index.js.map +1 -1
  622. package/dist/features/upload/server/nodes/UploadNode.js +115 -99
  623. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  624. package/dist/features/upload/server/nodes/conversions.js +41 -40
  625. package/dist/features/upload/server/nodes/conversions.js.map +1 -1
  626. package/dist/features/upload/server/validate.js +48 -62
  627. package/dist/features/upload/server/validate.js.map +1 -1
  628. package/dist/field/Diff/converters/link.js +32 -41
  629. package/dist/field/Diff/converters/link.js.map +1 -1
  630. package/dist/field/Diff/converters/listitem/index.js +75 -55
  631. package/dist/field/Diff/converters/listitem/index.js.map +1 -1
  632. package/dist/field/Diff/converters/listitem/index.scss +47 -0
  633. package/dist/field/Diff/converters/relationship/index.js +85 -63
  634. package/dist/field/Diff/converters/relationship/index.js.map +1 -1
  635. package/dist/field/Diff/converters/relationship/index.scss +73 -0
  636. package/dist/field/Diff/converters/unknown/index.js +64 -41
  637. package/dist/field/Diff/converters/unknown/index.js.map +1 -1
  638. package/dist/field/Diff/converters/unknown/index.scss +40 -0
  639. package/dist/field/Diff/converters/upload/index.js +122 -66
  640. package/dist/field/Diff/converters/upload/index.js.map +1 -1
  641. package/dist/field/Diff/converters/upload/index.scss +115 -0
  642. package/dist/field/Diff/index.js +86 -99
  643. package/dist/field/Diff/index.js.map +1 -1
  644. package/dist/field/Diff/index.scss +102 -0
  645. package/dist/field/Field.d.ts.map +1 -1
  646. package/dist/field/Field.js +246 -167
  647. package/dist/field/Field.js.map +1 -1
  648. package/dist/field/RenderLexical/index.js +123 -119
  649. package/dist/field/RenderLexical/index.js.map +1 -1
  650. package/dist/field/RichTextViewProvider.d.ts +85 -0
  651. package/dist/field/RichTextViewProvider.d.ts.map +1 -0
  652. package/dist/field/RichTextViewProvider.js +114 -0
  653. package/dist/field/RichTextViewProvider.js.map +1 -0
  654. package/dist/field/ViewSelector.d.ts +4 -0
  655. package/dist/field/ViewSelector.d.ts.map +1 -0
  656. package/dist/field/ViewSelector.js +90 -0
  657. package/dist/field/ViewSelector.js.map +1 -0
  658. package/dist/field/ViewSelector.scss +34 -0
  659. package/dist/field/bundled.css +0 -1
  660. package/dist/field/index.d.ts +1 -0
  661. package/dist/field/index.d.ts.map +1 -1
  662. package/dist/field/index.js +89 -97
  663. package/dist/field/index.js.map +1 -1
  664. package/dist/field/index.scss +53 -0
  665. package/dist/field/rscEntry.d.ts +1 -1
  666. package/dist/field/rscEntry.d.ts.map +1 -1
  667. package/dist/field/rscEntry.js +98 -84
  668. package/dist/field/rscEntry.js.map +1 -1
  669. package/dist/i18n.js +223 -222
  670. package/dist/i18n.js.map +1 -1
  671. package/dist/index.d.ts +1 -1
  672. package/dist/index.d.ts.map +1 -1
  673. package/dist/index.js +641 -704
  674. package/dist/index.js.map +1 -1
  675. package/dist/lexical/EditorPlugin.js +21 -17
  676. package/dist/lexical/EditorPlugin.js.map +1 -1
  677. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  678. package/dist/lexical/LexicalEditor.js +280 -171
  679. package/dist/lexical/LexicalEditor.js.map +1 -1
  680. package/dist/lexical/LexicalEditor.scss +54 -0
  681. package/dist/lexical/LexicalProvider.d.ts.map +1 -1
  682. package/dist/lexical/LexicalProvider.js +117 -86
  683. package/dist/lexical/LexicalProvider.js.map +1 -1
  684. package/dist/lexical/config/client/EditorConfigProvider.js +94 -81
  685. package/dist/lexical/config/client/EditorConfigProvider.js.map +1 -1
  686. package/dist/lexical/config/client/default.js +3 -3
  687. package/dist/lexical/config/client/default.js.map +1 -1
  688. package/dist/lexical/config/client/loader.js +30 -38
  689. package/dist/lexical/config/client/loader.js.map +1 -1
  690. package/dist/lexical/config/client/sanitize.d.ts +1 -1
  691. package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
  692. package/dist/lexical/config/client/sanitize.js +190 -188
  693. package/dist/lexical/config/client/sanitize.js.map +1 -1
  694. package/dist/lexical/config/server/default.js +27 -5
  695. package/dist/lexical/config/server/default.js.map +1 -1
  696. package/dist/lexical/config/server/loader.js +105 -106
  697. package/dist/lexical/config/server/loader.js.map +1 -1
  698. package/dist/lexical/config/server/sanitize.js +114 -113
  699. package/dist/lexical/config/server/sanitize.js.map +1 -1
  700. package/dist/lexical/config/types.d.ts +4 -0
  701. package/dist/lexical/config/types.d.ts.map +1 -1
  702. package/dist/lexical/config/types.js +6 -1
  703. package/dist/lexical/config/types.js.map +1 -1
  704. package/dist/lexical/nodes/index.d.ts +12 -2
  705. package/dist/lexical/nodes/index.d.ts.map +1 -1
  706. package/dist/lexical/nodes/index.js +215 -15
  707. package/dist/lexical/nodes/index.js.map +1 -1
  708. package/dist/lexical/plugins/ClipboardPlugin/index.js +66 -70
  709. package/dist/lexical/plugins/ClipboardPlugin/index.js.map +1 -1
  710. package/dist/lexical/plugins/DecoratorPlugin/index.js +208 -225
  711. package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
  712. package/dist/lexical/plugins/DecoratorPlugin/index.scss +13 -0
  713. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js +42 -41
  714. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
  715. package/dist/lexical/plugins/InsertParagraphAtEnd/index.scss +54 -0
  716. package/dist/lexical/plugins/MarkdownShortcut/index.js +11 -23
  717. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  718. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts +2 -0
  719. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts.map +1 -0
  720. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js +31 -0
  721. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -0
  722. package/dist/lexical/plugins/NormalizeSelection/index.js +21 -19
  723. package/dist/lexical/plugins/NormalizeSelection/index.js.map +1 -1
  724. package/dist/lexical/plugins/SelectAllPlugin/index.js +19 -17
  725. package/dist/lexical/plugins/SelectAllPlugin/index.js.map +1 -1
  726. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +399 -420
  727. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  728. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +164 -155
  729. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js.map +1 -1
  730. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +10 -1
  731. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js.map +1 -1
  732. package/dist/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  733. package/dist/lexical/plugins/SlashMenu/index.js +217 -181
  734. package/dist/lexical/plugins/SlashMenu/index.js.map +1 -1
  735. package/dist/lexical/plugins/SlashMenu/index.scss +68 -0
  736. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js +28 -41
  737. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js.map +1 -1
  738. package/dist/lexical/plugins/TextPlugin/index.js +27 -42
  739. package/dist/lexical/plugins/TextPlugin/index.js.map +1 -1
  740. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +145 -130
  741. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  742. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.scss +35 -0
  743. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +10 -10
  744. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js.map +1 -1
  745. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +10 -10
  746. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js.map +1 -1
  747. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +23 -26
  748. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js.map +1 -1
  749. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +325 -317
  750. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  751. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.scss +80 -0
  752. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +86 -98
  753. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js.map +1 -1
  754. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js +16 -22
  755. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js.map +1 -1
  756. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js +29 -19
  757. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js.map +1 -1
  758. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js +11 -14
  759. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js.map +1 -1
  760. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js +122 -133
  761. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js.map +1 -1
  762. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +2 -2
  763. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js.map +1 -1
  764. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js +2 -2
  765. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js.map +1 -1
  766. package/dist/lexical/plugins/handles/utils/setHandlePosition.js +29 -24
  767. package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
  768. package/dist/lexical/theme/EditorTheme.js +72 -65
  769. package/dist/lexical/theme/EditorTheme.js.map +1 -1
  770. package/dist/lexical/theme/EditorTheme.scss +357 -0
  771. package/dist/lexical/ui/ContentEditable.js +22 -35
  772. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  773. package/dist/lexical/ui/ContentEditable.scss +105 -0
  774. package/dist/lexical/ui/icons/AI/index.js +58 -31
  775. package/dist/lexical/ui/icons/AI/index.js.map +1 -1
  776. package/dist/lexical/ui/icons/Add/index.js +31 -16
  777. package/dist/lexical/ui/icons/Add/index.js.map +1 -1
  778. package/dist/lexical/ui/icons/AlignCenter/index.js +45 -25
  779. package/dist/lexical/ui/icons/AlignCenter/index.js.map +1 -1
  780. package/dist/lexical/ui/icons/AlignJustify/index.js +45 -25
  781. package/dist/lexical/ui/icons/AlignJustify/index.js.map +1 -1
  782. package/dist/lexical/ui/icons/AlignLeft/index.js +45 -25
  783. package/dist/lexical/ui/icons/AlignLeft/index.js.map +1 -1
  784. package/dist/lexical/ui/icons/AlignRight/index.js +45 -25
  785. package/dist/lexical/ui/icons/AlignRight/index.js.map +1 -1
  786. package/dist/lexical/ui/icons/Block/index.js +54 -34
  787. package/dist/lexical/ui/icons/Block/index.js.map +1 -1
  788. package/dist/lexical/ui/icons/Blockquote/index.js +24 -16
  789. package/dist/lexical/ui/icons/Blockquote/index.js.map +1 -1
  790. package/dist/lexical/ui/icons/Bold/index.js +24 -16
  791. package/dist/lexical/ui/icons/Bold/index.js.map +1 -1
  792. package/dist/lexical/ui/icons/Checklist/index.js +39 -24
  793. package/dist/lexical/ui/icons/Checklist/index.js.map +1 -1
  794. package/dist/lexical/ui/icons/Code/index.js +34 -19
  795. package/dist/lexical/ui/icons/Code/index.js.map +1 -1
  796. package/dist/lexical/ui/icons/CodeBlock/index.js +22 -14
  797. package/dist/lexical/ui/icons/CodeBlock/index.js.map +1 -1
  798. package/dist/lexical/ui/icons/Collapse/index.js +23 -15
  799. package/dist/lexical/ui/icons/Collapse/index.js.map +1 -1
  800. package/dist/lexical/ui/icons/H1/index.js +24 -16
  801. package/dist/lexical/ui/icons/H1/index.js.map +1 -1
  802. package/dist/lexical/ui/icons/H2/index.js +24 -16
  803. package/dist/lexical/ui/icons/H2/index.js.map +1 -1
  804. package/dist/lexical/ui/icons/H3/index.js +24 -16
  805. package/dist/lexical/ui/icons/H3/index.js.map +1 -1
  806. package/dist/lexical/ui/icons/H4/index.js +24 -16
  807. package/dist/lexical/ui/icons/H4/index.js.map +1 -1
  808. package/dist/lexical/ui/icons/H5/index.js +24 -16
  809. package/dist/lexical/ui/icons/H5/index.js.map +1 -1
  810. package/dist/lexical/ui/icons/H6/index.js +24 -16
  811. package/dist/lexical/ui/icons/H6/index.js.map +1 -1
  812. package/dist/lexical/ui/icons/HorizontalRule/index.js +27 -19
  813. package/dist/lexical/ui/icons/HorizontalRule/index.js.map +1 -1
  814. package/dist/lexical/ui/icons/IndentDecrease/index.js +53 -28
  815. package/dist/lexical/ui/icons/IndentDecrease/index.js.map +1 -1
  816. package/dist/lexical/ui/icons/IndentIncrease/index.js +53 -28
  817. package/dist/lexical/ui/icons/IndentIncrease/index.js.map +1 -1
  818. package/dist/lexical/ui/icons/InlineBlocks/index.js +26 -18
  819. package/dist/lexical/ui/icons/InlineBlocks/index.js.map +1 -1
  820. package/dist/lexical/ui/icons/Italic/index.js +24 -16
  821. package/dist/lexical/ui/icons/Italic/index.js.map +1 -1
  822. package/dist/lexical/ui/icons/Link/index.js +25 -17
  823. package/dist/lexical/ui/icons/Link/index.js.map +1 -1
  824. package/dist/lexical/ui/icons/Meatballs/index.js +39 -19
  825. package/dist/lexical/ui/icons/Meatballs/index.js.map +1 -1
  826. package/dist/lexical/ui/icons/OrderedList/index.js +61 -31
  827. package/dist/lexical/ui/icons/OrderedList/index.js.map +1 -1
  828. package/dist/lexical/ui/icons/Relationship/index.js +58 -31
  829. package/dist/lexical/ui/icons/Relationship/index.js.map +1 -1
  830. package/dist/lexical/ui/icons/Strikethrough/index.js +34 -19
  831. package/dist/lexical/ui/icons/Strikethrough/index.js.map +1 -1
  832. package/dist/lexical/ui/icons/Subscript/index.js +24 -16
  833. package/dist/lexical/ui/icons/Subscript/index.js.map +1 -1
  834. package/dist/lexical/ui/icons/Superscript/index.js +24 -16
  835. package/dist/lexical/ui/icons/Superscript/index.js.map +1 -1
  836. package/dist/lexical/ui/icons/Table/index.js +25 -17
  837. package/dist/lexical/ui/icons/Table/index.js.map +1 -1
  838. package/dist/lexical/ui/icons/Text/index.js +24 -16
  839. package/dist/lexical/ui/icons/Text/index.js.map +1 -1
  840. package/dist/lexical/ui/icons/TextState/index.js +25 -19
  841. package/dist/lexical/ui/icons/TextState/index.js.map +1 -1
  842. package/dist/lexical/ui/icons/Underline/index.js +34 -19
  843. package/dist/lexical/ui/icons/Underline/index.js.map +1 -1
  844. package/dist/lexical/ui/icons/UnorderedList/index.js +81 -46
  845. package/dist/lexical/ui/icons/UnorderedList/index.js.map +1 -1
  846. package/dist/lexical/ui/icons/Upload/index.js +48 -28
  847. package/dist/lexical/ui/icons/Upload/index.js.map +1 -1
  848. package/dist/lexical/utils/canUseDOM.js +1 -1
  849. package/dist/lexical/utils/canUseDOM.js.map +1 -1
  850. package/dist/lexical/utils/environment.js +1 -1
  851. package/dist/lexical/utils/environment.js.map +1 -1
  852. package/dist/lexical/utils/getDOMRangeRect.js +12 -12
  853. package/dist/lexical/utils/getDOMRangeRect.js.map +1 -1
  854. package/dist/lexical/utils/getSelectedNode.js +13 -17
  855. package/dist/lexical/utils/getSelectedNode.js.map +1 -1
  856. package/dist/lexical/utils/guard.js +3 -4
  857. package/dist/lexical/utils/guard.js.map +1 -1
  858. package/dist/lexical/utils/joinClasses.js +2 -2
  859. package/dist/lexical/utils/joinClasses.js.map +1 -1
  860. package/dist/lexical/utils/markdown/createBlockNode.js +10 -9
  861. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  862. package/dist/lexical/utils/nodeFormat.js +59 -58
  863. package/dist/lexical/utils/nodeFormat.js.map +1 -1
  864. package/dist/lexical/utils/point.js +32 -39
  865. package/dist/lexical/utils/point.js.map +1 -1
  866. package/dist/lexical/utils/rect.js +136 -166
  867. package/dist/lexical/utils/rect.js.map +1 -1
  868. package/dist/lexical/utils/setFloatingElemPosition.js +48 -56
  869. package/dist/lexical/utils/setFloatingElemPosition.js.map +1 -1
  870. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js +49 -49
  871. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js.map +1 -1
  872. package/dist/lexical/utils/swipe.js +83 -81
  873. package/dist/lexical/utils/swipe.js.map +1 -1
  874. package/dist/lexical/utils/url.js +53 -53
  875. package/dist/lexical/utils/url.js.map +1 -1
  876. package/dist/lexical/utils/url.spec.js +214 -98
  877. package/dist/lexical/utils/url.spec.js.map +1 -1
  878. package/dist/lexical-proxy/@lexical-headless.js +1 -0
  879. package/dist/lexical-proxy/@lexical-headless.js.map +1 -1
  880. package/dist/lexical-proxy/@lexical-html.js +1 -0
  881. package/dist/lexical-proxy/@lexical-html.js.map +1 -1
  882. package/dist/lexical-proxy/@lexical-link.js +1 -0
  883. package/dist/lexical-proxy/@lexical-link.js.map +1 -1
  884. package/dist/lexical-proxy/@lexical-list.js +1 -0
  885. package/dist/lexical-proxy/@lexical-list.js.map +1 -1
  886. package/dist/lexical-proxy/@lexical-mark.js +1 -0
  887. package/dist/lexical-proxy/@lexical-mark.js.map +1 -1
  888. package/dist/lexical-proxy/@lexical-markdown.js +1 -0
  889. package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
  890. package/dist/lexical-proxy/@lexical-react/LexicalAutoEmbedPlugin.js +1 -0
  891. package/dist/lexical-proxy/@lexical-react/LexicalAutoEmbedPlugin.js.map +1 -1
  892. package/dist/lexical-proxy/@lexical-react/LexicalAutoFocusPlugin.js +1 -0
  893. package/dist/lexical-proxy/@lexical-react/LexicalAutoFocusPlugin.js.map +1 -1
  894. package/dist/lexical-proxy/@lexical-react/LexicalAutoLinkPlugin.js +1 -0
  895. package/dist/lexical-proxy/@lexical-react/LexicalAutoLinkPlugin.js.map +1 -1
  896. package/dist/lexical-proxy/@lexical-react/LexicalBlockWithAlignableContents.js +1 -0
  897. package/dist/lexical-proxy/@lexical-react/LexicalBlockWithAlignableContents.js.map +1 -1
  898. package/dist/lexical-proxy/@lexical-react/LexicalCharacterLimitPlugin.js +1 -0
  899. package/dist/lexical-proxy/@lexical-react/LexicalCharacterLimitPlugin.js.map +1 -1
  900. package/dist/lexical-proxy/@lexical-react/LexicalCheckListPlugin.js +1 -0
  901. package/dist/lexical-proxy/@lexical-react/LexicalCheckListPlugin.js.map +1 -1
  902. package/dist/lexical-proxy/@lexical-react/LexicalClearEditorPlugin.js +1 -0
  903. package/dist/lexical-proxy/@lexical-react/LexicalClearEditorPlugin.js.map +1 -1
  904. package/dist/lexical-proxy/@lexical-react/LexicalClickableLinkPlugin.js +1 -0
  905. package/dist/lexical-proxy/@lexical-react/LexicalClickableLinkPlugin.js.map +1 -1
  906. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationContext.js +1 -0
  907. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationContext.js.map +1 -1
  908. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationPlugin.js +1 -0
  909. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationPlugin.js.map +1 -1
  910. package/dist/lexical-proxy/@lexical-react/LexicalComposer.js +1 -0
  911. package/dist/lexical-proxy/@lexical-react/LexicalComposer.js.map +1 -1
  912. package/dist/lexical-proxy/@lexical-react/LexicalComposerContext.js +1 -0
  913. package/dist/lexical-proxy/@lexical-react/LexicalComposerContext.js.map +1 -1
  914. package/dist/lexical-proxy/@lexical-react/LexicalContentEditable.js +1 -0
  915. package/dist/lexical-proxy/@lexical-react/LexicalContentEditable.js.map +1 -1
  916. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +1 -0
  917. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +1 -1
  918. package/dist/lexical-proxy/@lexical-react/LexicalDecoratorBlockNode.js +1 -0
  919. package/dist/lexical-proxy/@lexical-react/LexicalDecoratorBlockNode.js.map +1 -1
  920. package/dist/lexical-proxy/@lexical-react/LexicalDraggableBlockPlugin.js +1 -0
  921. package/dist/lexical-proxy/@lexical-react/LexicalDraggableBlockPlugin.js.map +1 -1
  922. package/dist/lexical-proxy/@lexical-react/LexicalEditorRefPlugin.js +1 -0
  923. package/dist/lexical-proxy/@lexical-react/LexicalEditorRefPlugin.js.map +1 -1
  924. package/dist/lexical-proxy/@lexical-react/LexicalErrorBoundary.js +1 -0
  925. package/dist/lexical-proxy/@lexical-react/LexicalErrorBoundary.js.map +1 -1
  926. package/dist/lexical-proxy/@lexical-react/LexicalHashtagPlugin.js +1 -0
  927. package/dist/lexical-proxy/@lexical-react/LexicalHashtagPlugin.js.map +1 -1
  928. package/dist/lexical-proxy/@lexical-react/LexicalHistoryPlugin.js +1 -0
  929. package/dist/lexical-proxy/@lexical-react/LexicalHistoryPlugin.js.map +1 -1
  930. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRuleNode.js +1 -0
  931. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRuleNode.js.map +1 -1
  932. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRulePlugin.js +1 -0
  933. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRulePlugin.js.map +1 -1
  934. package/dist/lexical-proxy/@lexical-react/LexicalLinkPlugin.js +1 -0
  935. package/dist/lexical-proxy/@lexical-react/LexicalLinkPlugin.js.map +1 -1
  936. package/dist/lexical-proxy/@lexical-react/LexicalListPlugin.js +1 -0
  937. package/dist/lexical-proxy/@lexical-react/LexicalListPlugin.js.map +1 -1
  938. package/dist/lexical-proxy/@lexical-react/LexicalMarkdownShortcutPlugin.js +1 -0
  939. package/dist/lexical-proxy/@lexical-react/LexicalMarkdownShortcutPlugin.js.map +1 -1
  940. package/dist/lexical-proxy/@lexical-react/LexicalNestedComposer.js +1 -0
  941. package/dist/lexical-proxy/@lexical-react/LexicalNestedComposer.js.map +1 -1
  942. package/dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js +1 -0
  943. package/dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js.map +1 -1
  944. package/dist/lexical-proxy/@lexical-react/LexicalNodeEventPlugin.js +1 -0
  945. package/dist/lexical-proxy/@lexical-react/LexicalNodeEventPlugin.js.map +1 -1
  946. package/dist/lexical-proxy/@lexical-react/LexicalNodeMenuPlugin.js +1 -0
  947. package/dist/lexical-proxy/@lexical-react/LexicalNodeMenuPlugin.js.map +1 -1
  948. package/dist/lexical-proxy/@lexical-react/LexicalOnChangePlugin.js +1 -0
  949. package/dist/lexical-proxy/@lexical-react/LexicalOnChangePlugin.js.map +1 -1
  950. package/dist/lexical-proxy/@lexical-react/LexicalPlainTextPlugin.js +1 -0
  951. package/dist/lexical-proxy/@lexical-react/LexicalPlainTextPlugin.js.map +1 -1
  952. package/dist/lexical-proxy/@lexical-react/LexicalRichTextPlugin.js +1 -0
  953. package/dist/lexical-proxy/@lexical-react/LexicalRichTextPlugin.js.map +1 -1
  954. package/dist/lexical-proxy/@lexical-react/LexicalTabIndentationPlugin.js +1 -0
  955. package/dist/lexical-proxy/@lexical-react/LexicalTabIndentationPlugin.js.map +1 -1
  956. package/dist/lexical-proxy/@lexical-react/LexicalTableOfContentsPlugin.js +1 -0
  957. package/dist/lexical-proxy/@lexical-react/LexicalTableOfContentsPlugin.js.map +1 -1
  958. package/dist/lexical-proxy/@lexical-react/LexicalTablePlugin.js +1 -0
  959. package/dist/lexical-proxy/@lexical-react/LexicalTablePlugin.js.map +1 -1
  960. package/dist/lexical-proxy/@lexical-react/LexicalTreeView.js +1 -0
  961. package/dist/lexical-proxy/@lexical-react/LexicalTreeView.js.map +1 -1
  962. package/dist/lexical-proxy/@lexical-react/LexicalTypeaheadMenuPlugin.js +1 -0
  963. package/dist/lexical-proxy/@lexical-react/LexicalTypeaheadMenuPlugin.js.map +1 -1
  964. package/dist/lexical-proxy/@lexical-react/useLexicalEditable.js +1 -0
  965. package/dist/lexical-proxy/@lexical-react/useLexicalEditable.js.map +1 -1
  966. package/dist/lexical-proxy/@lexical-react/useLexicalIsTextContentEmpty.js +1 -0
  967. package/dist/lexical-proxy/@lexical-react/useLexicalIsTextContentEmpty.js.map +1 -1
  968. package/dist/lexical-proxy/@lexical-react/useLexicalNodeSelection.js +1 -0
  969. package/dist/lexical-proxy/@lexical-react/useLexicalNodeSelection.js.map +1 -1
  970. package/dist/lexical-proxy/@lexical-react/useLexicalSubscription.js +1 -0
  971. package/dist/lexical-proxy/@lexical-react/useLexicalSubscription.js.map +1 -1
  972. package/dist/lexical-proxy/@lexical-react/useLexicalTextEntity.js +1 -0
  973. package/dist/lexical-proxy/@lexical-react/useLexicalTextEntity.js.map +1 -1
  974. package/dist/lexical-proxy/@lexical-rich-text.js +1 -0
  975. package/dist/lexical-proxy/@lexical-rich-text.js.map +1 -1
  976. package/dist/lexical-proxy/@lexical-selection.js +1 -0
  977. package/dist/lexical-proxy/@lexical-selection.js.map +1 -1
  978. package/dist/lexical-proxy/@lexical-utils.js +1 -0
  979. package/dist/lexical-proxy/@lexical-utils.js.map +1 -1
  980. package/dist/lexical-proxy/lexical.js +1 -0
  981. package/dist/lexical-proxy/lexical.js.map +1 -1
  982. package/dist/nodeTypes.js +35 -1
  983. package/dist/nodeTypes.js.map +1 -1
  984. package/dist/packages/@lexical/markdown/MarkdownExport.js +184 -179
  985. package/dist/packages/@lexical/markdown/MarkdownExport.js.map +1 -1
  986. package/dist/packages/@lexical/markdown/MarkdownImport.js +173 -168
  987. package/dist/packages/@lexical/markdown/MarkdownImport.js.map +1 -1
  988. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +258 -268
  989. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +1 -1
  990. package/dist/packages/@lexical/markdown/MarkdownTransformers.js +305 -209
  991. package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +1 -1
  992. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +76 -73
  993. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +1 -1
  994. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +59 -48
  995. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +1 -1
  996. package/dist/packages/@lexical/markdown/importTextTransformers.js +51 -45
  997. package/dist/packages/@lexical/markdown/importTextTransformers.js.map +1 -1
  998. package/dist/packages/@lexical/markdown/index.js +33 -14
  999. package/dist/packages/@lexical/markdown/index.js.map +1 -1
  1000. package/dist/packages/@lexical/markdown/utils.js +217 -185
  1001. package/dist/packages/@lexical/markdown/utils.js.map +1 -1
  1002. package/dist/populateGraphQL/defaultValue.js +29 -24
  1003. package/dist/populateGraphQL/defaultValue.js.map +1 -1
  1004. package/dist/populateGraphQL/populate.js +26 -37
  1005. package/dist/populateGraphQL/populate.js.map +1 -1
  1006. package/dist/populateGraphQL/populateLexicalPopulationPromises.js +34 -50
  1007. package/dist/populateGraphQL/populateLexicalPopulationPromises.js.map +1 -1
  1008. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js +35 -42
  1009. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js.map +1 -1
  1010. package/dist/types.d.ts +329 -2
  1011. package/dist/types.d.ts.map +1 -1
  1012. package/dist/types.js +219 -1
  1013. package/dist/types.js.map +1 -1
  1014. package/dist/utilities/applyBaseFilterToFields.js +81 -84
  1015. package/dist/utilities/applyBaseFilterToFields.js.map +1 -1
  1016. package/dist/utilities/buildEditorState.js +39 -40
  1017. package/dist/utilities/buildEditorState.js.map +1 -1
  1018. package/dist/utilities/buildInitialState.js +51 -52
  1019. package/dist/utilities/buildInitialState.js.map +1 -1
  1020. package/dist/utilities/createClientFeature.js +42 -48
  1021. package/dist/utilities/createClientFeature.js.map +1 -1
  1022. package/dist/utilities/createServerFeature.js +38 -48
  1023. package/dist/utilities/createServerFeature.js.map +1 -1
  1024. package/dist/utilities/editorConfigFactory.js +78 -79
  1025. package/dist/utilities/editorConfigFactory.js.map +1 -1
  1026. package/dist/utilities/fieldsDrawer/Drawer.js +45 -70
  1027. package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
  1028. package/dist/utilities/fieldsDrawer/DrawerContent.js +134 -124
  1029. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  1030. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js +64 -115
  1031. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js.map +1 -1
  1032. package/dist/utilities/fieldsDrawer/useLexicalDrawer.js +76 -121
  1033. package/dist/utilities/fieldsDrawer/useLexicalDrawer.js.map +1 -1
  1034. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js +79 -141
  1035. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js.map +1 -1
  1036. package/dist/utilities/forEachNodeRecursively.js +19 -24
  1037. package/dist/utilities/forEachNodeRecursively.js.map +1 -1
  1038. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  1039. package/dist/utilities/generateImportMap.js +44 -49
  1040. package/dist/utilities/generateImportMap.js.map +1 -1
  1041. package/dist/utilities/generateSchemaMap.js +32 -37
  1042. package/dist/utilities/generateSchemaMap.js.map +1 -1
  1043. package/dist/utilities/getDefaultSanitizedEditorConfig.js +12 -14
  1044. package/dist/utilities/getDefaultSanitizedEditorConfig.js.map +1 -1
  1045. package/dist/utilities/initLexicalFeatures.js +68 -65
  1046. package/dist/utilities/initLexicalFeatures.js.map +1 -1
  1047. package/dist/utilities/jsx/collectTopLevelJSXInLines.js +26 -29
  1048. package/dist/utilities/jsx/collectTopLevelJSXInLines.js.map +1 -1
  1049. package/dist/utilities/jsx/declare.d.js.map +1 -1
  1050. package/dist/utilities/jsx/extractPropsFromJSXPropsString.js +100 -102
  1051. package/dist/utilities/jsx/extractPropsFromJSXPropsString.js.map +1 -1
  1052. package/dist/utilities/jsx/jsx.js +76 -80
  1053. package/dist/utilities/jsx/jsx.js.map +1 -1
  1054. package/dist/utilities/jsx/jsx.spec.js +225 -171
  1055. package/dist/utilities/jsx/jsx.spec.js.map +1 -1
  1056. package/dist/utilities/migrateSlateToLexical/index.js +111 -127
  1057. package/dist/utilities/migrateSlateToLexical/index.js.map +1 -1
  1058. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js +74 -78
  1059. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js.map +1 -1
  1060. package/dist/utilities/recurseNodeTree.js +22 -25
  1061. package/dist/utilities/recurseNodeTree.js.map +1 -1
  1062. package/dist/utilities/upgradeLexicalData/index.js +87 -101
  1063. package/dist/utilities/upgradeLexicalData/index.js.map +1 -1
  1064. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js +78 -80
  1065. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
  1066. package/dist/utilities/useLexicalFeature.js +14 -16
  1067. package/dist/utilities/useLexicalFeature.js.map +1 -1
  1068. package/dist/utilities/useRunDeprioritized.js +41 -37
  1069. package/dist/utilities/useRunDeprioritized.js.map +1 -1
  1070. package/dist/validate/hasText.d.ts +6 -1
  1071. package/dist/validate/hasText.d.ts.map +1 -1
  1072. package/dist/validate/hasText.js +27 -20
  1073. package/dist/validate/hasText.js.map +1 -1
  1074. package/dist/validate/index.js +22 -28
  1075. package/dist/validate/index.js.map +1 -1
  1076. package/dist/validate/validateNodes.js +28 -31
  1077. package/dist/validate/validateNodes.js.map +1 -1
  1078. package/package.json +11 -6
  1079. package/dist/exports/client/Component-DOSSWC76.js +0 -2
  1080. package/dist/exports/client/Component-DOSSWC76.js.map +0 -7
  1081. package/dist/exports/client/Component-MBLHTKDK.js +0 -2
  1082. package/dist/exports/client/Component-MBLHTKDK.js.map +0 -7
  1083. package/dist/exports/client/Field-HJGV32KA.js +0 -2
  1084. package/dist/exports/client/Field-HJGV32KA.js.map +0 -7
  1085. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js +0 -2
  1086. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js.map +0 -7
  1087. package/dist/exports/client/bundled.css +0 -1
  1088. package/dist/exports/client/chunk-2S5Q7QYO.js +0 -2
  1089. package/dist/exports/client/chunk-2S5Q7QYO.js.map +0 -7
  1090. package/dist/exports/client/chunk-BZZVLW4U.js +0 -2
  1091. package/dist/exports/client/chunk-BZZVLW4U.js.map +0 -7
  1092. package/dist/exports/client/chunk-DBWINSQN.js +0 -2
  1093. package/dist/exports/client/chunk-DBWINSQN.js.map +0 -7
  1094. package/dist/exports/client/chunk-EZX4YW7S.js +0 -12
  1095. package/dist/exports/client/chunk-EZX4YW7S.js.map +0 -7
  1096. package/dist/exports/client/chunk-F26IQ5RE.js +0 -2
  1097. package/dist/exports/client/chunk-F26IQ5RE.js.map +0 -7
  1098. package/dist/exports/client/chunk-INBEEENE.js +0 -2
  1099. package/dist/exports/client/chunk-INBEEENE.js.map +0 -7
  1100. package/dist/exports/client/chunk-QJ5EETIB.js +0 -2
  1101. package/dist/exports/client/chunk-QJ5EETIB.js.map +0 -7
  1102. package/dist/exports/client/component-XIHC3W6W.js +0 -2
  1103. package/dist/exports/client/component-XIHC3W6W.js.map +0 -7
  1104. package/dist/exports/client/componentInline-NL25DNZ5.js +0 -2
  1105. package/dist/exports/client/componentInline-NL25DNZ5.js.map +0 -7
@@ -5,93 +5,90 @@ import { combineWhereConstraints } from 'payload/shared';
5
5
  * collection-level filters like multi-tenant filtering.
6
6
  *
7
7
  * Based on the fix from PR #13229 for LinkFeature
8
- */
9
- export function applyBaseFilterToFields(fields, config) {
10
- return fields.map(field => {
11
- // Handle relationship fields
12
- if (field.type === 'relationship') {
13
- const relationshipField = field;
14
- // Store the original filterOptions
15
- const originalFilterOptions = relationshipField.filterOptions;
16
- // Create new filterOptions that includes baseFilter
17
- relationshipField.filterOptions = async args => {
18
- const {
19
- relationTo,
20
- req,
21
- user
22
- } = args;
23
- // Call original filterOptions if it exists
24
- const originalResult = typeof originalFilterOptions === 'function' ? await originalFilterOptions(args) : originalFilterOptions ?? true;
25
- // If original filter returns false, respect that
26
- if (originalResult === false) {
27
- return false;
8
+ */ export function applyBaseFilterToFields(fields, config) {
9
+ return fields.map((field)=>{
10
+ // Handle relationship fields
11
+ if (field.type === 'relationship') {
12
+ const relationshipField = field;
13
+ // Store the original filterOptions
14
+ const originalFilterOptions = relationshipField.filterOptions;
15
+ // Create new filterOptions that includes baseFilter
16
+ relationshipField.filterOptions = async (args)=>{
17
+ const { relationTo, req, user } = args;
18
+ // Call original filterOptions if it exists
19
+ const originalResult = typeof originalFilterOptions === 'function' ? await originalFilterOptions(args) : originalFilterOptions ?? true;
20
+ // If original filter returns false, respect that
21
+ if (originalResult === false) {
22
+ return false;
23
+ }
24
+ // Get the collection's admin config
25
+ const admin = config.collections.find(({ slug })=>slug === relationTo)?.admin;
26
+ // Check if collection is hidden
27
+ const hidden = admin?.hidden;
28
+ if (typeof hidden === 'function' && hidden({
29
+ user
30
+ })) {
31
+ return false;
32
+ }
33
+ // Apply baseFilter (with backwards compatibility for baseListFilter)
34
+ const baseFilter = admin?.baseFilter ?? admin?.baseListFilter;
35
+ const baseFilterResult = await baseFilter?.({
36
+ limit: 0,
37
+ page: 1,
38
+ req,
39
+ sort: 'id'
40
+ });
41
+ // If no baseFilter, return original result
42
+ if (!baseFilterResult) {
43
+ return originalResult;
44
+ }
45
+ // If original result is true, just return the baseFilter
46
+ if (originalResult === true) {
47
+ return baseFilterResult;
48
+ }
49
+ // Combine original and baseFilter results
50
+ return combineWhereConstraints([
51
+ originalResult,
52
+ baseFilterResult
53
+ ], 'and');
54
+ };
55
+ return relationshipField;
28
56
  }
29
- // Get the collection's admin config
30
- const admin = config.collections.find(({
31
- slug
32
- }) => slug === relationTo)?.admin;
33
- // Check if collection is hidden
34
- const hidden = admin?.hidden;
35
- if (typeof hidden === 'function' && hidden({
36
- user
37
- })) {
38
- return false;
57
+ // Recursively process nested fields
58
+ if ('fields' in field && field.fields) {
59
+ return {
60
+ ...field,
61
+ fields: applyBaseFilterToFields(field.fields, config)
62
+ };
39
63
  }
40
- // Apply baseFilter (with backwards compatibility for baseListFilter)
41
- const baseFilter = admin?.baseFilter ?? admin?.baseListFilter;
42
- const baseFilterResult = await baseFilter?.({
43
- limit: 0,
44
- page: 1,
45
- req,
46
- sort: 'id'
47
- });
48
- // If no baseFilter, return original result
49
- if (!baseFilterResult) {
50
- return originalResult;
64
+ // Handle tabs
65
+ if (field.type === 'tabs' && 'tabs' in field) {
66
+ return {
67
+ ...field,
68
+ tabs: field.tabs.map((tab)=>({
69
+ ...tab,
70
+ fields: applyBaseFilterToFields(tab.fields, config)
71
+ }))
72
+ };
51
73
  }
52
- // If original result is true, just return the baseFilter
53
- if (originalResult === true) {
54
- return baseFilterResult;
74
+ // Handle blocks
75
+ if (field.type === 'blocks') {
76
+ const blocks = field.blockReferences ?? field.blocks ?? [];
77
+ return {
78
+ ...field,
79
+ blocks: blocks.map((block)=>{
80
+ if (typeof block === 'string') {
81
+ return block;
82
+ }
83
+ return {
84
+ ...block,
85
+ fields: applyBaseFilterToFields(block.fields, config)
86
+ };
87
+ })
88
+ };
55
89
  }
56
- // Combine original and baseFilter results
57
- return combineWhereConstraints([originalResult, baseFilterResult], 'and');
58
- };
59
- return relationshipField;
60
- }
61
- // Recursively process nested fields
62
- if ('fields' in field && field.fields) {
63
- return {
64
- ...field,
65
- fields: applyBaseFilterToFields(field.fields, config)
66
- };
67
- }
68
- // Handle tabs
69
- if (field.type === 'tabs' && 'tabs' in field) {
70
- return {
71
- ...field,
72
- tabs: field.tabs.map(tab => ({
73
- ...tab,
74
- fields: applyBaseFilterToFields(tab.fields, config)
75
- }))
76
- };
77
- }
78
- // Handle blocks
79
- if (field.type === 'blocks') {
80
- const blocks = field.blockReferences ?? field.blocks ?? [];
81
- return {
82
- ...field,
83
- blocks: blocks.map(block => {
84
- if (typeof block === 'string') {
85
- return block;
86
- }
87
- return {
88
- ...block,
89
- fields: applyBaseFilterToFields(block.fields, config)
90
- };
91
- })
92
- };
93
- }
94
- return field;
95
- });
90
+ return field;
91
+ });
96
92
  }
93
+
97
94
  //# sourceMappingURL=applyBaseFilterToFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"applyBaseFilterToFields.js","names":["combineWhereConstraints","applyBaseFilterToFields","fields","config","map","field","type","relationshipField","originalFilterOptions","filterOptions","args","relationTo","req","user","originalResult","admin","collections","find","slug","hidden","baseFilter","baseListFilter","baseFilterResult","limit","page","sort","tabs","tab","blocks","blockReferences","block"],"sources":["../../src/utilities/applyBaseFilterToFields.ts"],"sourcesContent":["import type { Block, Field, SanitizedConfig, TypedUser } from 'payload'\n\nimport { combineWhereConstraints } from 'payload/shared'\n\n/**\n * Recursively applies baseFilter from collection config to relationship fields\n * within blocks. This ensures that relationship drawers in blocks respect\n * collection-level filters like multi-tenant filtering.\n *\n * Based on the fix from PR #13229 for LinkFeature\n */\nexport function applyBaseFilterToFields(fields: Field[], config: SanitizedConfig): Field[] {\n return fields.map((field) => {\n // Handle relationship fields\n if (field.type === 'relationship') {\n const relationshipField = field\n\n // Store the original filterOptions\n const originalFilterOptions = relationshipField.filterOptions\n\n // Create new filterOptions that includes baseFilter\n relationshipField.filterOptions = async (args) => {\n const { relationTo, req, user } = args\n\n // Call original filterOptions if it exists\n const originalResult =\n typeof originalFilterOptions === 'function'\n ? await originalFilterOptions(args)\n : (originalFilterOptions ?? true)\n\n // If original filter returns false, respect that\n if (originalResult === false) {\n return false\n }\n\n // Get the collection's admin config\n const admin = config.collections.find(({ slug }) => slug === relationTo)?.admin\n\n // Check if collection is hidden\n const hidden = admin?.hidden\n if (typeof hidden === 'function' && hidden({ user } as { user: TypedUser })) {\n return false\n }\n\n // Apply baseFilter (with backwards compatibility for baseListFilter)\n const baseFilter = admin?.baseFilter ?? admin?.baseListFilter\n const baseFilterResult = await baseFilter?.({\n limit: 0,\n page: 1,\n req,\n sort: 'id',\n })\n\n // If no baseFilter, return original result\n if (!baseFilterResult) {\n return originalResult\n }\n\n // If original result is true, just return the baseFilter\n if (originalResult === true) {\n return baseFilterResult\n }\n\n // Combine original and baseFilter results\n return combineWhereConstraints([originalResult, baseFilterResult], 'and')\n }\n\n return relationshipField\n }\n\n // Recursively process nested fields\n if ('fields' in field && field.fields) {\n return {\n ...field,\n fields: applyBaseFilterToFields(field.fields, config),\n }\n }\n\n // Handle tabs\n if (field.type === 'tabs' && 'tabs' in field) {\n return {\n ...field,\n tabs: field.tabs.map((tab) => ({\n ...tab,\n fields: applyBaseFilterToFields(tab.fields, config),\n })),\n }\n }\n\n // Handle blocks\n if (field.type === 'blocks') {\n const blocks = (field.blockReferences ?? field.blocks ?? []) as Block[]\n return {\n ...field,\n blocks: blocks.map((block) => {\n if (typeof block === 'string') {\n return block\n }\n return {\n ...block,\n fields: applyBaseFilterToFields(block.fields, config),\n }\n }),\n }\n }\n\n return field\n })\n}\n"],"mappings":"AAEA,SAASA,uBAAuB,QAAQ;AAExC;;;;;;;AAOA,OAAO,SAASC,wBAAwBC,MAAe,EAAEC,MAAuB;EAC9E,OAAOD,MAAA,CAAOE,GAAG,CAAEC,KAAA;IACjB;IACA,IAAIA,KAAA,CAAMC,IAAI,KAAK,gBAAgB;MACjC,MAAMC,iBAAA,GAAoBF,KAAA;MAE1B;MACA,MAAMG,qBAAA,GAAwBD,iBAAA,CAAkBE,aAAa;MAE7D;MACAF,iBAAA,CAAkBE,aAAa,GAAG,MAAOC,IAAA;QACvC,MAAM;UAAEC,UAAU;UAAEC,GAAG;UAAEC;QAAI,CAAE,GAAGH,IAAA;QAElC;QACA,MAAMI,cAAA,GACJ,OAAON,qBAAA,KAA0B,aAC7B,MAAMA,qBAAA,CAAsBE,IAAA,IAC3BF,qBAAA,IAAyB;QAEhC;QACA,IAAIM,cAAA,KAAmB,OAAO;UAC5B,OAAO;QACT;QAEA;QACA,MAAMC,KAAA,GAAQZ,MAAA,CAAOa,WAAW,CAACC,IAAI,CAAC,CAAC;UAAEC;QAAI,CAAE,KAAKA,IAAA,KAASP,UAAA,GAAaI,KAAA;QAE1E;QACA,MAAMI,MAAA,GAASJ,KAAA,EAAOI,MAAA;QACtB,IAAI,OAAOA,MAAA,KAAW,cAAcA,MAAA,CAAO;UAAEN;QAAK,IAA2B;UAC3E,OAAO;QACT;QAEA;QACA,MAAMO,UAAA,GAAaL,KAAA,EAAOK,UAAA,IAAcL,KAAA,EAAOM,cAAA;QAC/C,MAAMC,gBAAA,GAAmB,MAAMF,UAAA,GAAa;UAC1CG,KAAA,EAAO;UACPC,IAAA,EAAM;UACNZ,GAAA;UACAa,IAAA,EAAM;QACR;QAEA;QACA,IAAI,CAACH,gBAAA,EAAkB;UACrB,OAAOR,cAAA;QACT;QAEA;QACA,IAAIA,cAAA,KAAmB,MAAM;UAC3B,OAAOQ,gBAAA;QACT;QAEA;QACA,OAAOtB,uBAAA,CAAwB,CAACc,cAAA,EAAgBQ,gBAAA,CAAiB,EAAE;MACrE;MAEA,OAAOf,iBAAA;IACT;IAEA;IACA,IAAI,YAAYF,KAAA,IAASA,KAAA,CAAMH,MAAM,EAAE;MACrC,OAAO;QACL,GAAGG,KAAK;QACRH,MAAA,EAAQD,uBAAA,CAAwBI,KAAA,CAAMH,MAAM,EAAEC,MAAA;MAChD;IACF;IAEA;IACA,IAAIE,KAAA,CAAMC,IAAI,KAAK,UAAU,UAAUD,KAAA,EAAO;MAC5C,OAAO;QACL,GAAGA,KAAK;QACRqB,IAAA,EAAMrB,KAAA,CAAMqB,IAAI,CAACtB,GAAG,CAAEuB,GAAA,KAAS;UAC7B,GAAGA,GAAG;UACNzB,MAAA,EAAQD,uBAAA,CAAwB0B,GAAA,CAAIzB,MAAM,EAAEC,MAAA;QAC9C;MACF;IACF;IAEA;IACA,IAAIE,KAAA,CAAMC,IAAI,KAAK,UAAU;MAC3B,MAAMsB,MAAA,GAAUvB,KAAA,CAAMwB,eAAe,IAAIxB,KAAA,CAAMuB,MAAM,IAAI,EAAE;MAC3D,OAAO;QACL,GAAGvB,KAAK;QACRuB,MAAA,EAAQA,MAAA,CAAOxB,GAAG,CAAE0B,KAAA;UAClB,IAAI,OAAOA,KAAA,KAAU,UAAU;YAC7B,OAAOA,KAAA;UACT;UACA,OAAO;YACL,GAAGA,KAAK;YACR5B,MAAA,EAAQD,uBAAA,CAAwB6B,KAAA,CAAM5B,MAAM,EAAEC,MAAA;UAChD;QACF;MACF;IACF;IAEA,OAAOE,KAAA;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/utilities/applyBaseFilterToFields.ts"],"sourcesContent":["import type { Block, Field, SanitizedConfig, TypedUser } from 'payload'\n\nimport { combineWhereConstraints } from 'payload/shared'\n\n/**\n * Recursively applies baseFilter from collection config to relationship fields\n * within blocks. This ensures that relationship drawers in blocks respect\n * collection-level filters like multi-tenant filtering.\n *\n * Based on the fix from PR #13229 for LinkFeature\n */\nexport function applyBaseFilterToFields(fields: Field[], config: SanitizedConfig): Field[] {\n return fields.map((field) => {\n // Handle relationship fields\n if (field.type === 'relationship') {\n const relationshipField = field\n\n // Store the original filterOptions\n const originalFilterOptions = relationshipField.filterOptions\n\n // Create new filterOptions that includes baseFilter\n relationshipField.filterOptions = async (args) => {\n const { relationTo, req, user } = args\n\n // Call original filterOptions if it exists\n const originalResult =\n typeof originalFilterOptions === 'function'\n ? await originalFilterOptions(args)\n : (originalFilterOptions ?? true)\n\n // If original filter returns false, respect that\n if (originalResult === false) {\n return false\n }\n\n // Get the collection's admin config\n const admin = config.collections.find(({ slug }) => slug === relationTo)?.admin\n\n // Check if collection is hidden\n const hidden = admin?.hidden\n if (typeof hidden === 'function' && hidden({ user } as { user: TypedUser })) {\n return false\n }\n\n // Apply baseFilter (with backwards compatibility for baseListFilter)\n const baseFilter = admin?.baseFilter ?? admin?.baseListFilter\n const baseFilterResult = await baseFilter?.({\n limit: 0,\n page: 1,\n req,\n sort: 'id',\n })\n\n // If no baseFilter, return original result\n if (!baseFilterResult) {\n return originalResult\n }\n\n // If original result is true, just return the baseFilter\n if (originalResult === true) {\n return baseFilterResult\n }\n\n // Combine original and baseFilter results\n return combineWhereConstraints([originalResult, baseFilterResult], 'and')\n }\n\n return relationshipField\n }\n\n // Recursively process nested fields\n if ('fields' in field && field.fields) {\n return {\n ...field,\n fields: applyBaseFilterToFields(field.fields, config),\n }\n }\n\n // Handle tabs\n if (field.type === 'tabs' && 'tabs' in field) {\n return {\n ...field,\n tabs: field.tabs.map((tab) => ({\n ...tab,\n fields: applyBaseFilterToFields(tab.fields, config),\n })),\n }\n }\n\n // Handle blocks\n if (field.type === 'blocks') {\n const blocks = (field.blockReferences ?? field.blocks ?? []) as Block[]\n return {\n ...field,\n blocks: blocks.map((block) => {\n if (typeof block === 'string') {\n return block\n }\n return {\n ...block,\n fields: applyBaseFilterToFields(block.fields, config),\n }\n }),\n }\n }\n\n return field\n })\n}\n"],"names":["combineWhereConstraints","applyBaseFilterToFields","fields","config","map","field","type","relationshipField","originalFilterOptions","filterOptions","args","relationTo","req","user","originalResult","admin","collections","find","slug","hidden","baseFilter","baseListFilter","baseFilterResult","limit","page","sort","tabs","tab","blocks","blockReferences","block"],"mappings":"AAEA,SAASA,uBAAuB,QAAQ,iBAAgB;AAExD;;;;;;CAMC,GACD,OAAO,SAASC,wBAAwBC,MAAe,EAAEC,MAAuB;IAC9E,OAAOD,OAAOE,GAAG,CAAC,CAACC;QACjB,6BAA6B;QAC7B,IAAIA,MAAMC,IAAI,KAAK,gBAAgB;YACjC,MAAMC,oBAAoBF;YAE1B,mCAAmC;YACnC,MAAMG,wBAAwBD,kBAAkBE,aAAa;YAE7D,oDAAoD;YACpDF,kBAAkBE,aAAa,GAAG,OAAOC;gBACvC,MAAM,EAAEC,UAAU,EAAEC,GAAG,EAAEC,IAAI,EAAE,GAAGH;gBAElC,2CAA2C;gBAC3C,MAAMI,iBACJ,OAAON,0BAA0B,aAC7B,MAAMA,sBAAsBE,QAC3BF,yBAAyB;gBAEhC,iDAAiD;gBACjD,IAAIM,mBAAmB,OAAO;oBAC5B,OAAO;gBACT;gBAEA,oCAAoC;gBACpC,MAAMC,QAAQZ,OAAOa,WAAW,CAACC,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASP,aAAaI;gBAE1E,gCAAgC;gBAChC,MAAMI,SAASJ,OAAOI;gBACtB,IAAI,OAAOA,WAAW,cAAcA,OAAO;oBAAEN;gBAAK,IAA2B;oBAC3E,OAAO;gBACT;gBAEA,qEAAqE;gBACrE,MAAMO,aAAaL,OAAOK,cAAcL,OAAOM;gBAC/C,MAAMC,mBAAmB,MAAMF,aAAa;oBAC1CG,OAAO;oBACPC,MAAM;oBACNZ;oBACAa,MAAM;gBACR;gBAEA,2CAA2C;gBAC3C,IAAI,CAACH,kBAAkB;oBACrB,OAAOR;gBACT;gBAEA,yDAAyD;gBACzD,IAAIA,mBAAmB,MAAM;oBAC3B,OAAOQ;gBACT;gBAEA,0CAA0C;gBAC1C,OAAOtB,wBAAwB;oBAACc;oBAAgBQ;iBAAiB,EAAE;YACrE;YAEA,OAAOf;QACT;QAEA,oCAAoC;QACpC,IAAI,YAAYF,SAASA,MAAMH,MAAM,EAAE;YACrC,OAAO;gBACL,GAAGG,KAAK;gBACRH,QAAQD,wBAAwBI,MAAMH,MAAM,EAAEC;YAChD;QACF;QAEA,cAAc;QACd,IAAIE,MAAMC,IAAI,KAAK,UAAU,UAAUD,OAAO;YAC5C,OAAO;gBACL,GAAGA,KAAK;gBACRqB,MAAMrB,MAAMqB,IAAI,CAACtB,GAAG,CAAC,CAACuB,MAAS,CAAA;wBAC7B,GAAGA,GAAG;wBACNzB,QAAQD,wBAAwB0B,IAAIzB,MAAM,EAAEC;oBAC9C,CAAA;YACF;QACF;QAEA,gBAAgB;QAChB,IAAIE,MAAMC,IAAI,KAAK,UAAU;YAC3B,MAAMsB,SAAUvB,MAAMwB,eAAe,IAAIxB,MAAMuB,MAAM,IAAI,EAAE;YAC3D,OAAO;gBACL,GAAGvB,KAAK;gBACRuB,QAAQA,OAAOxB,GAAG,CAAC,CAAC0B;oBAClB,IAAI,OAAOA,UAAU,UAAU;wBAC7B,OAAOA;oBACT;oBACA,OAAO;wBACL,GAAGA,KAAK;wBACR5B,QAAQD,wBAAwB6B,MAAM5B,MAAM,EAAEC;oBAChD;gBACF;YACF;QACF;QAEA,OAAOE;IACT;AACF"}
@@ -34,45 +34,44 @@
34
34
  * ],
35
35
  * })
36
36
  * ```
37
- */export function buildEditorState({
38
- nodes,
39
- text
40
- }) {
41
- const editorJSON = {
42
- root: {
43
- type: 'root',
44
- children: [],
45
- direction: 'ltr',
46
- format: '',
47
- indent: 0,
48
- version: 1
37
+ */ export function buildEditorState({ nodes, text }) {
38
+ const editorJSON = {
39
+ root: {
40
+ type: 'root',
41
+ children: [],
42
+ direction: 'ltr',
43
+ format: '',
44
+ indent: 0,
45
+ version: 1
46
+ }
47
+ };
48
+ if (text) {
49
+ editorJSON.root.children.push({
50
+ type: 'paragraph',
51
+ children: [
52
+ {
53
+ type: 'text',
54
+ detail: 0,
55
+ format: 0,
56
+ mode: 'normal',
57
+ style: '',
58
+ text,
59
+ version: 1
60
+ }
61
+ ],
62
+ direction: 'ltr',
63
+ format: '',
64
+ indent: 0,
65
+ textFormat: 0,
66
+ textStyle: '',
67
+ version: 1
68
+ });
49
69
  }
50
- };
51
- if (text) {
52
- editorJSON.root.children.push({
53
- type: 'paragraph',
54
- children: [{
55
- type: 'text',
56
- detail: 0,
57
- format: 0,
58
- mode: 'normal',
59
- style: '',
60
- text,
61
- version: 1
62
- }],
63
- direction: 'ltr',
64
- format: '',
65
- indent: 0,
66
- textFormat: 0,
67
- textStyle: '',
68
- version: 1
69
- });
70
- }
71
- if (nodes?.length) {
72
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
- editorJSON.root.children.push(...nodes);
74
- }
75
- return editorJSON;
70
+ if (nodes?.length) {
71
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
72
+ editorJSON.root.children.push(...nodes);
73
+ }
74
+ return editorJSON;
76
75
  }
77
76
  /**
78
77
  *
@@ -80,6 +79,6 @@
80
79
  *
81
80
  * @experimental this API may change or be removed in a minor release
82
81
  * @internal
83
- */
84
- export const buildDefaultEditorState = buildEditorState;
82
+ */ export const buildDefaultEditorState = buildEditorState;
83
+
85
84
  //# sourceMappingURL=buildEditorState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildEditorState.js","names":["buildEditorState","nodes","text","editorJSON","root","type","children","direction","format","indent","version","push","detail","mode","style","textFormat","textStyle","length","buildDefaultEditorState"],"sources":["../../src/utilities/buildEditorState.ts"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\n\nimport type { DefaultNodeTypes, DefaultTypedEditorState, TypedEditorState } from '../nodeTypes.js'\n\n/**\n * Helper to build lexical editor state JSON from text and/or nodes.\n *\n * @param nodes - The nodes to include in the editor state. If you pass the `text` argument, this will append your nodes after the first paragraph node.\n * @param text - The text content to include in the editor state. This will create a paragraph node with a text node for you and set that as the first node.\n * @returns The constructed editor state JSON.\n *\n * @example\n *\n * just passing text:\n *\n * ```ts\n * const editorState = buildEditorState<DefaultNodeTypes>({ text: 'Hello world' }) // result typed as DefaultTypedEditorState\n * ```\n *\n * @example\n *\n * passing nodes:\n *\n * ```ts\n * const editorState = // result typed as TypedEditorState<DefaultNodeTypes | SerializedBlockNode> (or TypedEditorState<SerializedBlockNode>)\n * buildEditorState<DefaultNodeTypes | SerializedBlockNode>({ // or just buildEditorState<SerializedBlockNode> if you *only* want to allow block nodes\n * nodes: [\n * {\n * type: 'block',\n * fields: {\n * id: 'id',\n * blockName: 'Cool block',\n * blockType: 'myBlock',\n * },\n * format: 'left',\n * version: 1,\n * }\n * ],\n * })\n * ```\n */\nexport function buildEditorState<T extends SerializedLexicalNode>({\n nodes,\n text,\n}: {\n nodes?: TypedEditorState<T>['root']['children']\n text?: string\n}): TypedEditorState<T> {\n const editorJSON: DefaultTypedEditorState = {\n root: {\n type: 'root',\n children: [],\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n },\n }\n\n if (text) {\n editorJSON.root.children.push({\n type: 'paragraph',\n children: [\n {\n type: 'text',\n detail: 0,\n format: 0,\n mode: 'normal',\n style: '',\n text,\n version: 1,\n },\n ],\n direction: 'ltr',\n format: '',\n indent: 0,\n textFormat: 0,\n textStyle: '',\n version: 1,\n })\n }\n\n if (nodes?.length) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n editorJSON.root.children.push(...(nodes as any))\n }\n\n return editorJSON as TypedEditorState<T>\n}\n\n/**\n *\n * Alias for `buildEditorState<DefaultNodeTypes>`\n *\n * @experimental this API may change or be removed in a minor release\n * @internal\n */\nexport const buildDefaultEditorState: typeof buildEditorState<DefaultNodeTypes> =\n buildEditorState<DefaultNodeTypes>\n"],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCA,OAAO,SAASA,iBAAkD;EAChEC,KAAK;EACLC;AAAI,CAIL;EACC,MAAMC,UAAA,GAAsC;IAC1CC,IAAA,EAAM;MACJC,IAAA,EAAM;MACNC,QAAA,EAAU,EAAE;MACZC,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EAEA,IAAIR,IAAA,EAAM;IACRC,UAAA,CAAWC,IAAI,CAACE,QAAQ,CAACK,IAAI,CAAC;MAC5BN,IAAA,EAAM;MACNC,QAAA,EAAU,CACR;QACED,IAAA,EAAM;QACNO,MAAA,EAAQ;QACRJ,MAAA,EAAQ;QACRK,IAAA,EAAM;QACNC,KAAA,EAAO;QACPZ,IAAA;QACAQ,OAAA,EAAS;MACX,EACD;MACDH,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRM,UAAA,EAAY;MACZC,SAAA,EAAW;MACXN,OAAA,EAAS;IACX;EACF;EAEA,IAAIT,KAAA,EAAOgB,MAAA,EAAQ;IACjB;IACAd,UAAA,CAAWC,IAAI,CAACE,QAAQ,CAACK,IAAI,IAAKV,KAAA;EACpC;EAEA,OAAOE,UAAA;AACT;AAEA;;;;;;;AAOA,OAAO,MAAMe,uBAAA,GACXlB,gBAAA","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/utilities/buildEditorState.ts"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\n\nimport type { DefaultNodeTypes, DefaultTypedEditorState, TypedEditorState } from '../nodeTypes.js'\n\n/**\n * Helper to build lexical editor state JSON from text and/or nodes.\n *\n * @param nodes - The nodes to include in the editor state. If you pass the `text` argument, this will append your nodes after the first paragraph node.\n * @param text - The text content to include in the editor state. This will create a paragraph node with a text node for you and set that as the first node.\n * @returns The constructed editor state JSON.\n *\n * @example\n *\n * just passing text:\n *\n * ```ts\n * const editorState = buildEditorState<DefaultNodeTypes>({ text: 'Hello world' }) // result typed as DefaultTypedEditorState\n * ```\n *\n * @example\n *\n * passing nodes:\n *\n * ```ts\n * const editorState = // result typed as TypedEditorState<DefaultNodeTypes | SerializedBlockNode> (or TypedEditorState<SerializedBlockNode>)\n * buildEditorState<DefaultNodeTypes | SerializedBlockNode>({ // or just buildEditorState<SerializedBlockNode> if you *only* want to allow block nodes\n * nodes: [\n * {\n * type: 'block',\n * fields: {\n * id: 'id',\n * blockName: 'Cool block',\n * blockType: 'myBlock',\n * },\n * format: 'left',\n * version: 1,\n * }\n * ],\n * })\n * ```\n */\nexport function buildEditorState<T extends SerializedLexicalNode>({\n nodes,\n text,\n}: {\n nodes?: TypedEditorState<T>['root']['children']\n text?: string\n}): TypedEditorState<T> {\n const editorJSON: DefaultTypedEditorState = {\n root: {\n type: 'root',\n children: [],\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n },\n }\n\n if (text) {\n editorJSON.root.children.push({\n type: 'paragraph',\n children: [\n {\n type: 'text',\n detail: 0,\n format: 0,\n mode: 'normal',\n style: '',\n text,\n version: 1,\n },\n ],\n direction: 'ltr',\n format: '',\n indent: 0,\n textFormat: 0,\n textStyle: '',\n version: 1,\n })\n }\n\n if (nodes?.length) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n editorJSON.root.children.push(...(nodes as any))\n }\n\n return editorJSON as TypedEditorState<T>\n}\n\n/**\n *\n * Alias for `buildEditorState<DefaultNodeTypes>`\n *\n * @experimental this API may change or be removed in a minor release\n * @internal\n */\nexport const buildDefaultEditorState: typeof buildEditorState<DefaultNodeTypes> =\n buildEditorState<DefaultNodeTypes>\n"],"names":["buildEditorState","nodes","text","editorJSON","root","type","children","direction","format","indent","version","push","detail","mode","style","textFormat","textStyle","length","buildDefaultEditorState"],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCC,GACD,OAAO,SAASA,iBAAkD,EAChEC,KAAK,EACLC,IAAI,EAIL;IACC,MAAMC,aAAsC;QAC1CC,MAAM;YACJC,MAAM;YACNC,UAAU,EAAE;YACZC,WAAW;YACXC,QAAQ;YACRC,QAAQ;YACRC,SAAS;QACX;IACF;IAEA,IAAIR,MAAM;QACRC,WAAWC,IAAI,CAACE,QAAQ,CAACK,IAAI,CAAC;YAC5BN,MAAM;YACNC,UAAU;gBACR;oBACED,MAAM;oBACNO,QAAQ;oBACRJ,QAAQ;oBACRK,MAAM;oBACNC,OAAO;oBACPZ;oBACAQ,SAAS;gBACX;aACD;YACDH,WAAW;YACXC,QAAQ;YACRC,QAAQ;YACRM,YAAY;YACZC,WAAW;YACXN,SAAS;QACX;IACF;IAEA,IAAIT,OAAOgB,QAAQ;QACjB,8DAA8D;QAC9Dd,WAAWC,IAAI,CAACE,QAAQ,CAACK,IAAI,IAAKV;IACpC;IAEA,OAAOE;AACT;AAEA;;;;;;CAMC,GACD,OAAO,MAAMe,0BACXlB,iBAAkC"}
@@ -1,57 +1,56 @@
1
1
  import { fieldSchemasToFormState } from '@payloadcms/ui/forms/fieldSchemasToFormState';
2
- export async function buildInitialState({
3
- context,
4
- initialState: initialStateFromArgs,
5
- nodeData
6
- }) {
7
- let initialState = initialStateFromArgs ?? {};
8
- for (const node of nodeData) {
9
- if ('children' in node) {
10
- initialState = await buildInitialState({
11
- context,
12
- initialState,
13
- nodeData: node.children
14
- });
15
- }
16
- if (node.type === 'block' || node.type === 'inlineBlock') {
17
- const blockNode = node;
18
- const id = blockNode?.fields?.id;
19
- if (!id) {
20
- continue;
21
- }
22
- const schemaFieldsPath = node.type === 'block' ? `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_blocks.${blockNode.fields.blockType}.fields` : `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_inline_blocks.${blockNode.fields.blockType}.fields`;
23
- // Build form state for the block
24
- const formStateResult = await fieldSchemasToFormState({
25
- id: context.id,
26
- clientFieldSchemaMap: context.clientFieldSchemaMap,
27
- collectionSlug: context.collectionSlug,
28
- data: blockNode.fields,
29
- documentData: context.documentData,
30
- fields: context.fieldSchemaMap.get(schemaFieldsPath)?.fields,
31
- fieldSchemaMap: context.fieldSchemaMap,
32
- initialBlockData: blockNode.fields,
33
- operation: context.operation,
34
- permissions: true,
35
- preferences: context.preferences,
36
- readOnly: context.disabled,
37
- renderAllFields: true,
38
- renderFieldFn: context.renderFieldFn,
39
- req: context.req,
40
- schemaPath: schemaFieldsPath
41
- });
42
- if (!initialState[id]) {
43
- initialState[id] = {};
44
- }
45
- initialState[id].formState = formStateResult;
46
- if (node.type === 'block') {
47
- const currentFieldPreferences = context.preferences?.fields?.[context.field.name];
48
- const collapsedArray = currentFieldPreferences?.collapsed;
49
- if (Array.isArray(collapsedArray) && collapsedArray.includes(id)) {
50
- initialState[id].collapsed = true;
2
+ export async function buildInitialState({ context, initialState: initialStateFromArgs, nodeData }) {
3
+ let initialState = initialStateFromArgs ?? {};
4
+ for (const node of nodeData){
5
+ if ('children' in node) {
6
+ initialState = await buildInitialState({
7
+ context,
8
+ initialState,
9
+ nodeData: node.children
10
+ });
11
+ }
12
+ if (node.type === 'block' || node.type === 'inlineBlock') {
13
+ const blockNode = node;
14
+ const id = blockNode?.fields?.id;
15
+ if (!id) {
16
+ continue;
17
+ }
18
+ const schemaFieldsPath = node.type === 'block' ? `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_blocks.${blockNode.fields.blockType}.fields` : `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_inline_blocks.${blockNode.fields.blockType}.fields`;
19
+ // Build form state for the block
20
+ const formStateResult = await fieldSchemasToFormState({
21
+ id: context.id,
22
+ clientFieldSchemaMap: context.clientFieldSchemaMap,
23
+ collectionSlug: context.collectionSlug,
24
+ data: blockNode.fields,
25
+ documentData: context.documentData,
26
+ fields: context.fieldSchemaMap.get(schemaFieldsPath)?.fields,
27
+ fieldSchemaMap: context.fieldSchemaMap,
28
+ initialBlockData: blockNode.fields,
29
+ operation: context.operation,
30
+ // TODO: Type
31
+ permissions: true,
32
+ preferences: context.preferences,
33
+ readOnly: context.disabled,
34
+ renderAllFields: true,
35
+ // If this function runs, the parent lexical field is being re-rendered => thus we can assume all its sub-fields need to be re-rendered
36
+ renderFieldFn: context.renderFieldFn,
37
+ req: context.req,
38
+ schemaPath: schemaFieldsPath
39
+ });
40
+ if (!initialState[id]) {
41
+ initialState[id] = {};
42
+ }
43
+ initialState[id].formState = formStateResult;
44
+ if (node.type === 'block') {
45
+ const currentFieldPreferences = context.preferences?.fields?.[context.field.name];
46
+ const collapsedArray = currentFieldPreferences?.collapsed;
47
+ if (Array.isArray(collapsedArray) && collapsedArray.includes(id)) {
48
+ initialState[id].collapsed = true;
49
+ }
50
+ }
51
51
  }
52
- }
53
52
  }
54
- }
55
- return initialState;
53
+ return initialState;
56
54
  }
55
+
57
56
  //# sourceMappingURL=buildInitialState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildInitialState.js","names":["fieldSchemasToFormState","buildInitialState","context","initialState","initialStateFromArgs","nodeData","node","children","type","blockNode","id","fields","schemaFieldsPath","lexicalFieldSchemaPath","blockType","formStateResult","clientFieldSchemaMap","collectionSlug","data","documentData","fieldSchemaMap","get","initialBlockData","operation","permissions","preferences","readOnly","disabled","renderAllFields","renderFieldFn","req","schemaPath","formState","currentFieldPreferences","field","name","collapsedArray","collapsed","Array","isArray","includes"],"sources":["../../src/utilities/buildInitialState.ts"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\nimport type {\n ClientFieldSchemaMap,\n DocumentPreferences,\n FieldSchemaMap,\n FormState,\n Operation,\n PayloadRequest,\n RichTextField,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport { fieldSchemasToFormState } from '@payloadcms/ui/forms/fieldSchemasToFormState'\n\nimport type { SerializedBlockNode } from '../nodeTypes.js'\n\nexport type InitialLexicalFormState = {\n [nodeID: string]: {\n [key: string]: any\n formState?: FormState\n }\n}\n\ntype Props = {\n context: {\n clientFieldSchemaMap: ClientFieldSchemaMap\n collectionSlug: string\n disabled?: boolean\n documentData?: any\n field: RichTextField\n fieldSchemaMap: FieldSchemaMap\n id?: number | string\n lexicalFieldSchemaPath: string\n operation: Operation\n permissions?: SanitizedFieldPermissions\n preferences: DocumentPreferences\n renderFieldFn: any\n req: PayloadRequest\n }\n initialState?: InitialLexicalFormState\n nodeData: SerializedLexicalNode[]\n}\n\nexport async function buildInitialState({\n context,\n initialState: initialStateFromArgs,\n nodeData,\n}: Props): Promise<InitialLexicalFormState> {\n let initialState: InitialLexicalFormState = initialStateFromArgs ?? {}\n for (const node of nodeData) {\n if ('children' in node) {\n initialState = await buildInitialState({\n context,\n initialState,\n nodeData: node.children as SerializedLexicalNode[],\n })\n }\n\n if (node.type === 'block' || node.type === 'inlineBlock') {\n const blockNode = node as SerializedBlockNode\n const id = blockNode?.fields?.id\n if (!id) {\n continue\n }\n\n const schemaFieldsPath =\n node.type === 'block'\n ? `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_blocks.${blockNode.fields.blockType}.fields`\n : `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_inline_blocks.${blockNode.fields.blockType}.fields`\n\n // Build form state for the block\n\n const formStateResult = await fieldSchemasToFormState({\n id: context.id,\n clientFieldSchemaMap: context.clientFieldSchemaMap,\n collectionSlug: context.collectionSlug,\n data: blockNode.fields,\n documentData: context.documentData,\n fields: (context.fieldSchemaMap.get(schemaFieldsPath) as any)?.fields,\n fieldSchemaMap: context.fieldSchemaMap,\n initialBlockData: blockNode.fields,\n operation: context.operation as any, // TODO: Type\n permissions: true,\n preferences: context.preferences,\n readOnly: context.disabled,\n renderAllFields: true, // If this function runs, the parent lexical field is being re-rendered => thus we can assume all its sub-fields need to be re-rendered\n renderFieldFn: context.renderFieldFn,\n req: context.req,\n schemaPath: schemaFieldsPath,\n })\n\n if (!initialState[id]) {\n initialState[id] = {}\n }\n\n initialState[id].formState = formStateResult\n\n if (node.type === 'block') {\n const currentFieldPreferences = context.preferences?.fields?.[context.field.name]\n const collapsedArray = currentFieldPreferences?.collapsed\n if (Array.isArray(collapsedArray) && collapsedArray.includes(id)) {\n initialState[id].collapsed = true\n }\n }\n }\n }\n return initialState\n}\n"],"mappings":"AAYA,SAASA,uBAAuB,QAAQ;AA+BxC,OAAO,eAAeC,kBAAkB;EACtCC,OAAO;EACPC,YAAA,EAAcC,oBAAoB;EAClCC;AAAQ,CACF;EACN,IAAIF,YAAA,GAAwCC,oBAAA,IAAwB,CAAC;EACrE,KAAK,MAAME,IAAA,IAAQD,QAAA,EAAU;IAC3B,IAAI,cAAcC,IAAA,EAAM;MACtBH,YAAA,GAAe,MAAMF,iBAAA,CAAkB;QACrCC,OAAA;QACAC,YAAA;QACAE,QAAA,EAAUC,IAAA,CAAKC;MACjB;IACF;IAEA,IAAID,IAAA,CAAKE,IAAI,KAAK,WAAWF,IAAA,CAAKE,IAAI,KAAK,eAAe;MACxD,MAAMC,SAAA,GAAYH,IAAA;MAClB,MAAMI,EAAA,GAAKD,SAAA,EAAWE,MAAA,EAAQD,EAAA;MAC9B,IAAI,CAACA,EAAA,EAAI;QACP;MACF;MAEA,MAAME,gBAAA,GACJN,IAAA,CAAKE,IAAI,KAAK,UACV,GAAGN,OAAA,CAAQW,sBAAsB,mDAAmDJ,SAAA,CAAUE,MAAM,CAACG,SAAS,SAAS,GACvH,GAAGZ,OAAA,CAAQW,sBAAsB,0DAA0DJ,SAAA,CAAUE,MAAM,CAACG,SAAS,SAAS;MAEpI;MAEA,MAAMC,eAAA,GAAkB,MAAMf,uBAAA,CAAwB;QACpDU,EAAA,EAAIR,OAAA,CAAQQ,EAAE;QACdM,oBAAA,EAAsBd,OAAA,CAAQc,oBAAoB;QAClDC,cAAA,EAAgBf,OAAA,CAAQe,cAAc;QACtCC,IAAA,EAAMT,SAAA,CAAUE,MAAM;QACtBQ,YAAA,EAAcjB,OAAA,CAAQiB,YAAY;QAClCR,MAAA,EAAST,OAAA,CAAQkB,cAAc,CAACC,GAAG,CAACT,gBAAA,GAA2BD,MAAA;QAC/DS,cAAA,EAAgBlB,OAAA,CAAQkB,cAAc;QACtCE,gBAAA,EAAkBb,SAAA,CAAUE,MAAM;QAClCY,SAAA,EAAWrB,OAAA,CAAQqB,SAAS;QAC5BC,WAAA,EAAa;QACbC,WAAA,EAAavB,OAAA,CAAQuB,WAAW;QAChCC,QAAA,EAAUxB,OAAA,CAAQyB,QAAQ;QAC1BC,eAAA,EAAiB;QACjBC,aAAA,EAAe3B,OAAA,CAAQ2B,aAAa;QACpCC,GAAA,EAAK5B,OAAA,CAAQ4B,GAAG;QAChBC,UAAA,EAAYnB;MACd;MAEA,IAAI,CAACT,YAAY,CAACO,EAAA,CAAG,EAAE;QACrBP,YAAY,CAACO,EAAA,CAAG,GAAG,CAAC;MACtB;MAEAP,YAAY,CAACO,EAAA,CAAG,CAACsB,SAAS,GAAGjB,eAAA;MAE7B,IAAIT,IAAA,CAAKE,IAAI,KAAK,SAAS;QACzB,MAAMyB,uBAAA,GAA0B/B,OAAA,CAAQuB,WAAW,EAAEd,MAAA,GAAST,OAAA,CAAQgC,KAAK,CAACC,IAAI,CAAC;QACjF,MAAMC,cAAA,GAAiBH,uBAAA,EAAyBI,SAAA;QAChD,IAAIC,KAAA,CAAMC,OAAO,CAACH,cAAA,KAAmBA,cAAA,CAAeI,QAAQ,CAAC9B,EAAA,GAAK;UAChEP,YAAY,CAACO,EAAA,CAAG,CAAC2B,SAAS,GAAG;QAC/B;MACF;IACF;EACF;EACA,OAAOlC,YAAA;AACT","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/utilities/buildInitialState.ts"],"sourcesContent":["import type { SerializedLexicalNode } from 'lexical'\nimport type {\n ClientFieldSchemaMap,\n DocumentPreferences,\n FieldSchemaMap,\n FormState,\n Operation,\n PayloadRequest,\n RichTextField,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport { fieldSchemasToFormState } from '@payloadcms/ui/forms/fieldSchemasToFormState'\n\nimport type { SerializedBlockNode } from '../nodeTypes.js'\n\nexport type InitialLexicalFormState = {\n [nodeID: string]: {\n [key: string]: any\n formState?: FormState\n }\n}\n\ntype Props = {\n context: {\n clientFieldSchemaMap: ClientFieldSchemaMap\n collectionSlug: string\n disabled?: boolean\n documentData?: any\n field: RichTextField\n fieldSchemaMap: FieldSchemaMap\n id?: number | string\n lexicalFieldSchemaPath: string\n operation: Operation\n permissions?: SanitizedFieldPermissions\n preferences: DocumentPreferences\n renderFieldFn: any\n req: PayloadRequest\n }\n initialState?: InitialLexicalFormState\n nodeData: SerializedLexicalNode[]\n}\n\nexport async function buildInitialState({\n context,\n initialState: initialStateFromArgs,\n nodeData,\n}: Props): Promise<InitialLexicalFormState> {\n let initialState: InitialLexicalFormState = initialStateFromArgs ?? {}\n for (const node of nodeData) {\n if ('children' in node) {\n initialState = await buildInitialState({\n context,\n initialState,\n nodeData: node.children as SerializedLexicalNode[],\n })\n }\n\n if (node.type === 'block' || node.type === 'inlineBlock') {\n const blockNode = node as SerializedBlockNode\n const id = blockNode?.fields?.id\n if (!id) {\n continue\n }\n\n const schemaFieldsPath =\n node.type === 'block'\n ? `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_blocks.${blockNode.fields.blockType}.fields`\n : `${context.lexicalFieldSchemaPath}.lexical_internal_feature.blocks.lexical_inline_blocks.${blockNode.fields.blockType}.fields`\n\n // Build form state for the block\n\n const formStateResult = await fieldSchemasToFormState({\n id: context.id,\n clientFieldSchemaMap: context.clientFieldSchemaMap,\n collectionSlug: context.collectionSlug,\n data: blockNode.fields,\n documentData: context.documentData,\n fields: (context.fieldSchemaMap.get(schemaFieldsPath) as any)?.fields,\n fieldSchemaMap: context.fieldSchemaMap,\n initialBlockData: blockNode.fields,\n operation: context.operation as any, // TODO: Type\n permissions: true,\n preferences: context.preferences,\n readOnly: context.disabled,\n renderAllFields: true, // If this function runs, the parent lexical field is being re-rendered => thus we can assume all its sub-fields need to be re-rendered\n renderFieldFn: context.renderFieldFn,\n req: context.req,\n schemaPath: schemaFieldsPath,\n })\n\n if (!initialState[id]) {\n initialState[id] = {}\n }\n\n initialState[id].formState = formStateResult\n\n if (node.type === 'block') {\n const currentFieldPreferences = context.preferences?.fields?.[context.field.name]\n const collapsedArray = currentFieldPreferences?.collapsed\n if (Array.isArray(collapsedArray) && collapsedArray.includes(id)) {\n initialState[id].collapsed = true\n }\n }\n }\n }\n return initialState\n}\n"],"names":["fieldSchemasToFormState","buildInitialState","context","initialState","initialStateFromArgs","nodeData","node","children","type","blockNode","id","fields","schemaFieldsPath","lexicalFieldSchemaPath","blockType","formStateResult","clientFieldSchemaMap","collectionSlug","data","documentData","fieldSchemaMap","get","initialBlockData","operation","permissions","preferences","readOnly","disabled","renderAllFields","renderFieldFn","req","schemaPath","formState","currentFieldPreferences","field","name","collapsedArray","collapsed","Array","isArray","includes"],"mappings":"AAYA,SAASA,uBAAuB,QAAQ,+CAA8C;AA+BtF,OAAO,eAAeC,kBAAkB,EACtCC,OAAO,EACPC,cAAcC,oBAAoB,EAClCC,QAAQ,EACF;IACN,IAAIF,eAAwCC,wBAAwB,CAAC;IACrE,KAAK,MAAME,QAAQD,SAAU;QAC3B,IAAI,cAAcC,MAAM;YACtBH,eAAe,MAAMF,kBAAkB;gBACrCC;gBACAC;gBACAE,UAAUC,KAAKC,QAAQ;YACzB;QACF;QAEA,IAAID,KAAKE,IAAI,KAAK,WAAWF,KAAKE,IAAI,KAAK,eAAe;YACxD,MAAMC,YAAYH;YAClB,MAAMI,KAAKD,WAAWE,QAAQD;YAC9B,IAAI,CAACA,IAAI;gBACP;YACF;YAEA,MAAME,mBACJN,KAAKE,IAAI,KAAK,UACV,GAAGN,QAAQW,sBAAsB,CAAC,gDAAgD,EAAEJ,UAAUE,MAAM,CAACG,SAAS,CAAC,OAAO,CAAC,GACvH,GAAGZ,QAAQW,sBAAsB,CAAC,uDAAuD,EAAEJ,UAAUE,MAAM,CAACG,SAAS,CAAC,OAAO,CAAC;YAEpI,iCAAiC;YAEjC,MAAMC,kBAAkB,MAAMf,wBAAwB;gBACpDU,IAAIR,QAAQQ,EAAE;gBACdM,sBAAsBd,QAAQc,oBAAoB;gBAClDC,gBAAgBf,QAAQe,cAAc;gBACtCC,MAAMT,UAAUE,MAAM;gBACtBQ,cAAcjB,QAAQiB,YAAY;gBAClCR,QAAST,QAAQkB,cAAc,CAACC,GAAG,CAACT,mBAA2BD;gBAC/DS,gBAAgBlB,QAAQkB,cAAc;gBACtCE,kBAAkBb,UAAUE,MAAM;gBAClCY,WAAWrB,QAAQqB,SAAS;gBAAS,aAAa;gBAClDC,aAAa;gBACbC,aAAavB,QAAQuB,WAAW;gBAChCC,UAAUxB,QAAQyB,QAAQ;gBAC1BC,iBAAiB;gBAAM,uIAAuI;gBAC9JC,eAAe3B,QAAQ2B,aAAa;gBACpCC,KAAK5B,QAAQ4B,GAAG;gBAChBC,YAAYnB;YACd;YAEA,IAAI,CAACT,YAAY,CAACO,GAAG,EAAE;gBACrBP,YAAY,CAACO,GAAG,GAAG,CAAC;YACtB;YAEAP,YAAY,CAACO,GAAG,CAACsB,SAAS,GAAGjB;YAE7B,IAAIT,KAAKE,IAAI,KAAK,SAAS;gBACzB,MAAMyB,0BAA0B/B,QAAQuB,WAAW,EAAEd,QAAQ,CAACT,QAAQgC,KAAK,CAACC,IAAI,CAAC;gBACjF,MAAMC,iBAAiBH,yBAAyBI;gBAChD,IAAIC,MAAMC,OAAO,CAACH,mBAAmBA,eAAeI,QAAQ,CAAC9B,KAAK;oBAChEP,YAAY,CAACO,GAAG,CAAC2B,SAAS,GAAG;gBAC/B;YACF;QACF;IACF;IACA,OAAOlC;AACT"}
@@ -1,51 +1,45 @@
1
- export const createClientFeature = feature => {
2
- const featureProviderProvideClient = props => {
3
- const featureProviderClient = {
4
- clientFeatureProps: props
5
- };
6
- if (typeof feature === 'function') {
7
- featureProviderClient.feature = ({
8
- config,
9
- featureClientImportMap,
10
- featureClientSchemaMap,
11
- featureProviderMap,
12
- field,
13
- resolvedFeatures,
14
- schemaPath,
15
- unSanitizedEditorConfig
16
- }) => {
17
- const toReturn = feature({
18
- config,
19
- featureClientImportMap,
20
- featureClientSchemaMap,
21
- featureProviderMap,
22
- field,
23
- props,
24
- resolvedFeatures,
25
- schemaPath,
26
- unSanitizedEditorConfig
27
- });
28
- if (toReturn.sanitizedClientFeatureProps === null) {
29
- toReturn.sanitizedClientFeatureProps = props;
1
+ /** unSanitizedEditorConfig.features, but mapped */ // other resolved features, which have been loaded before this one. All features declared in 'dependencies' should be available here
2
+ // unSanitized EditorConfig,
3
+ export const createClientFeature = (feature)=>{
4
+ const featureProviderProvideClient = (props)=>{
5
+ const featureProviderClient = {
6
+ clientFeatureProps: props
7
+ };
8
+ if (typeof feature === 'function') {
9
+ featureProviderClient.feature = ({ config, featureClientImportMap, featureClientSchemaMap, featureProviderMap, field, resolvedFeatures, schemaPath, unSanitizedEditorConfig })=>{
10
+ const toReturn = feature({
11
+ config,
12
+ featureClientImportMap,
13
+ featureClientSchemaMap,
14
+ featureProviderMap,
15
+ field,
16
+ props,
17
+ resolvedFeatures,
18
+ schemaPath,
19
+ unSanitizedEditorConfig
20
+ });
21
+ if (toReturn.sanitizedClientFeatureProps === null) {
22
+ toReturn.sanitizedClientFeatureProps = props;
23
+ }
24
+ return toReturn;
25
+ };
26
+ } else {
27
+ // We have to spread feature here! Otherwise, if the arg of createClientFeature is not a function, and 2
28
+ // richText editors have the same feature (even if both call it, e.g. both call UploadFeature()),
29
+ // the second richText editor here will override sanitizedClientFeatureProps of the first feature, as both richText
30
+ // editor features share the same reference to the feature object.
31
+ // Example: richText editor 1 and 2 both have UploadFeature. richText editor 1 calls UploadFeature() with custom fields,
32
+ // richText editor 2 calls UploadFeature() with NO custom fields. If we don't spread feature here, richText editor 1
33
+ // will not have any custom fields, as richText editor 2 will override the feature object.
34
+ const newFeature = {
35
+ ...feature
36
+ };
37
+ newFeature.sanitizedClientFeatureProps = props;
38
+ featureProviderClient.feature = newFeature;
30
39
  }
31
- return toReturn;
32
- };
33
- } else {
34
- // We have to spread feature here! Otherwise, if the arg of createClientFeature is not a function, and 2
35
- // richText editors have the same feature (even if both call it, e.g. both call UploadFeature()),
36
- // the second richText editor here will override sanitizedClientFeatureProps of the first feature, as both richText
37
- // editor features share the same reference to the feature object.
38
- // Example: richText editor 1 and 2 both have UploadFeature. richText editor 1 calls UploadFeature() with custom fields,
39
- // richText editor 2 calls UploadFeature() with NO custom fields. If we don't spread feature here, richText editor 1
40
- // will not have any custom fields, as richText editor 2 will override the feature object.
41
- const newFeature = {
42
- ...feature
43
- };
44
- newFeature.sanitizedClientFeatureProps = props;
45
- featureProviderClient.feature = newFeature;
46
- }
47
- return featureProviderClient;
48
- };
49
- return featureProviderProvideClient;
40
+ return featureProviderClient;
41
+ };
42
+ return featureProviderProvideClient;
50
43
  };
44
+
51
45
  //# sourceMappingURL=createClientFeature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createClientFeature.js","names":["createClientFeature","feature","featureProviderProvideClient","props","featureProviderClient","clientFeatureProps","config","featureClientImportMap","featureClientSchemaMap","featureProviderMap","field","resolvedFeatures","schemaPath","unSanitizedEditorConfig","toReturn","sanitizedClientFeatureProps","newFeature"],"sources":["../../src/utilities/createClientFeature.ts"],"sourcesContent":["import type { ClientConfig, RichTextFieldClient } from 'payload'\n\nimport type {\n BaseClientFeatureProps,\n ClientFeature,\n ClientFeatureProviderMap,\n FeatureProviderClient,\n FeatureProviderProviderClient,\n ResolvedClientFeatureMap,\n} from '../features/typesClient.js'\nimport type { ClientEditorConfig } from '../lexical/config/types.js'\nimport type { FeatureClientSchemaMap } from '../types.js'\n\nexport type CreateClientFeatureArgs<UnSanitizedClientProps, ClientProps> =\n | ((props: {\n config: ClientConfig\n featureClientImportMap: Record<string, any>\n featureClientSchemaMap: FeatureClientSchemaMap\n /** unSanitizedEditorConfig.features, but mapped */\n featureProviderMap: ClientFeatureProviderMap\n field?: RichTextFieldClient\n props: BaseClientFeatureProps<UnSanitizedClientProps>\n // other resolved features, which have been loaded before this one. All features declared in 'dependencies' should be available here\n resolvedFeatures: ResolvedClientFeatureMap\n schemaPath: string\n // unSanitized EditorConfig,\n unSanitizedEditorConfig: ClientEditorConfig\n }) => ClientFeature<ClientProps>)\n | Omit<ClientFeature<ClientProps>, 'sanitizedClientFeatureProps'>\n\nexport const createClientFeature: <\n UnSanitizedClientProps = undefined,\n ClientProps = UnSanitizedClientProps,\n>(\n args: CreateClientFeatureArgs<UnSanitizedClientProps, ClientProps>,\n) => FeatureProviderProviderClient<UnSanitizedClientProps, ClientProps> = (feature) => {\n const featureProviderProvideClient: FeatureProviderProviderClient<any, any> = (props) => {\n const featureProviderClient: Partial<FeatureProviderClient<any, any>> = {\n clientFeatureProps: props,\n }\n\n if (typeof feature === 'function') {\n featureProviderClient.feature = ({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n featureProviderMap,\n field,\n resolvedFeatures,\n schemaPath,\n unSanitizedEditorConfig,\n }) => {\n const toReturn = feature({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n featureProviderMap,\n field,\n props,\n resolvedFeatures,\n schemaPath,\n unSanitizedEditorConfig,\n })\n\n if (toReturn.sanitizedClientFeatureProps === null) {\n toReturn.sanitizedClientFeatureProps = props\n }\n\n return toReturn\n }\n } else {\n // We have to spread feature here! Otherwise, if the arg of createClientFeature is not a function, and 2\n // richText editors have the same feature (even if both call it, e.g. both call UploadFeature()),\n // the second richText editor here will override sanitizedClientFeatureProps of the first feature, as both richText\n // editor features share the same reference to the feature object.\n // Example: richText editor 1 and 2 both have UploadFeature. richText editor 1 calls UploadFeature() with custom fields,\n // richText editor 2 calls UploadFeature() with NO custom fields. If we don't spread feature here, richText editor 1\n // will not have any custom fields, as richText editor 2 will override the feature object.\n const newFeature: ClientFeature<any> = { ...feature }\n newFeature.sanitizedClientFeatureProps = props\n featureProviderClient.feature = newFeature\n }\n return featureProviderClient as FeatureProviderClient<any, any>\n }\n\n return featureProviderProvideClient\n}\n"],"mappings":"AA8BA,OAAO,MAAMA,mBAAA,GAK8DC,OAAA;EACzE,MAAMC,4BAAA,GAAyEC,KAAA;IAC7E,MAAMC,qBAAA,GAAkE;MACtEC,kBAAA,EAAoBF;IACtB;IAEA,IAAI,OAAOF,OAAA,KAAY,YAAY;MACjCG,qBAAA,CAAsBH,OAAO,GAAG,CAAC;QAC/BK,MAAM;QACNC,sBAAsB;QACtBC,sBAAsB;QACtBC,kBAAkB;QAClBC,KAAK;QACLC,gBAAgB;QAChBC,UAAU;QACVC;MAAuB,CACxB;QACC,MAAMC,QAAA,GAAWb,OAAA,CAAQ;UACvBK,MAAA;UACAC,sBAAA;UACAC,sBAAA;UACAC,kBAAA;UACAC,KAAA;UACAP,KAAA;UACAQ,gBAAA;UACAC,UAAA;UACAC;QACF;QAEA,IAAIC,QAAA,CAASC,2BAA2B,KAAK,MAAM;UACjDD,QAAA,CAASC,2BAA2B,GAAGZ,KAAA;QACzC;QAEA,OAAOW,QAAA;MACT;IACF,OAAO;MACL;MACA;MACA;MACA;MACA;MACA;MACA;MACA,MAAME,UAAA,GAAiC;QAAE,GAAGf;MAAQ;MACpDe,UAAA,CAAWD,2BAA2B,GAAGZ,KAAA;MACzCC,qBAAA,CAAsBH,OAAO,GAAGe,UAAA;IAClC;IACA,OAAOZ,qBAAA;EACT;EAEA,OAAOF,4BAAA;AACT","ignoreList":[]}
1
+ {"version":3,"sources":["../../src/utilities/createClientFeature.ts"],"sourcesContent":["import type { ClientConfig, RichTextFieldClient } from 'payload'\n\nimport type {\n BaseClientFeatureProps,\n ClientFeature,\n ClientFeatureProviderMap,\n FeatureProviderClient,\n FeatureProviderProviderClient,\n ResolvedClientFeatureMap,\n} from '../features/typesClient.js'\nimport type { ClientEditorConfig } from '../lexical/config/types.js'\nimport type { FeatureClientSchemaMap } from '../types.js'\n\nexport type CreateClientFeatureArgs<UnSanitizedClientProps, ClientProps> =\n | ((props: {\n config: ClientConfig\n featureClientImportMap: Record<string, any>\n featureClientSchemaMap: FeatureClientSchemaMap\n /** unSanitizedEditorConfig.features, but mapped */\n featureProviderMap: ClientFeatureProviderMap\n field?: RichTextFieldClient\n props: BaseClientFeatureProps<UnSanitizedClientProps>\n // other resolved features, which have been loaded before this one. All features declared in 'dependencies' should be available here\n resolvedFeatures: ResolvedClientFeatureMap\n schemaPath: string\n // unSanitized EditorConfig,\n unSanitizedEditorConfig: ClientEditorConfig\n }) => ClientFeature<ClientProps>)\n | Omit<ClientFeature<ClientProps>, 'sanitizedClientFeatureProps'>\n\nexport const createClientFeature: <\n UnSanitizedClientProps = undefined,\n ClientProps = UnSanitizedClientProps,\n>(\n args: CreateClientFeatureArgs<UnSanitizedClientProps, ClientProps>,\n) => FeatureProviderProviderClient<UnSanitizedClientProps, ClientProps> = (feature) => {\n const featureProviderProvideClient: FeatureProviderProviderClient<any, any> = (props) => {\n const featureProviderClient: Partial<FeatureProviderClient<any, any>> = {\n clientFeatureProps: props,\n }\n\n if (typeof feature === 'function') {\n featureProviderClient.feature = ({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n featureProviderMap,\n field,\n resolvedFeatures,\n schemaPath,\n unSanitizedEditorConfig,\n }) => {\n const toReturn = feature({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n featureProviderMap,\n field,\n props,\n resolvedFeatures,\n schemaPath,\n unSanitizedEditorConfig,\n })\n\n if (toReturn.sanitizedClientFeatureProps === null) {\n toReturn.sanitizedClientFeatureProps = props\n }\n\n return toReturn\n }\n } else {\n // We have to spread feature here! Otherwise, if the arg of createClientFeature is not a function, and 2\n // richText editors have the same feature (even if both call it, e.g. both call UploadFeature()),\n // the second richText editor here will override sanitizedClientFeatureProps of the first feature, as both richText\n // editor features share the same reference to the feature object.\n // Example: richText editor 1 and 2 both have UploadFeature. richText editor 1 calls UploadFeature() with custom fields,\n // richText editor 2 calls UploadFeature() with NO custom fields. If we don't spread feature here, richText editor 1\n // will not have any custom fields, as richText editor 2 will override the feature object.\n const newFeature: ClientFeature<any> = { ...feature }\n newFeature.sanitizedClientFeatureProps = props\n featureProviderClient.feature = newFeature\n }\n return featureProviderClient as FeatureProviderClient<any, any>\n }\n\n return featureProviderProvideClient\n}\n"],"names":["createClientFeature","feature","featureProviderProvideClient","props","featureProviderClient","clientFeatureProps","config","featureClientImportMap","featureClientSchemaMap","featureProviderMap","field","resolvedFeatures","schemaPath","unSanitizedEditorConfig","toReturn","sanitizedClientFeatureProps","newFeature"],"mappings":"AAkBM,iDAAiD,GAIjD,oIAAoI;AAGpI,4BAA4B;AAKlC,OAAO,MAAMA,sBAK6D,CAACC;IACzE,MAAMC,+BAAwE,CAACC;QAC7E,MAAMC,wBAAkE;YACtEC,oBAAoBF;QACtB;QAEA,IAAI,OAAOF,YAAY,YAAY;YACjCG,sBAAsBH,OAAO,GAAG,CAAC,EAC/BK,MAAM,EACNC,sBAAsB,EACtBC,sBAAsB,EACtBC,kBAAkB,EAClBC,KAAK,EACLC,gBAAgB,EAChBC,UAAU,EACVC,uBAAuB,EACxB;gBACC,MAAMC,WAAWb,QAAQ;oBACvBK;oBACAC;oBACAC;oBACAC;oBACAC;oBACAP;oBACAQ;oBACAC;oBACAC;gBACF;gBAEA,IAAIC,SAASC,2BAA2B,KAAK,MAAM;oBACjDD,SAASC,2BAA2B,GAAGZ;gBACzC;gBAEA,OAAOW;YACT;QACF,OAAO;YACL,wGAAwG;YACxG,iGAAiG;YACjG,mHAAmH;YACnH,kEAAkE;YAClE,wHAAwH;YACxH,oHAAoH;YACpH,0FAA0F;YAC1F,MAAME,aAAiC;gBAAE,GAAGf,OAAO;YAAC;YACpDe,WAAWD,2BAA2B,GAAGZ;YACzCC,sBAAsBH,OAAO,GAAGe;QAClC;QACA,OAAOZ;IACT;IAEA,OAAOF;AACT,EAAC"}