@payloadcms/richtext-lexical 3.70.0-canary.9 → 3.71.0-internal-debug.80dab4c

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 (1056) 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.js +85 -65
  6. package/dist/exports/client/index.js.map +1 -7
  7. package/dist/exports/cssEntry.js +1 -0
  8. package/dist/exports/cssEntry.js.map +1 -1
  9. package/dist/exports/html/index.js +1 -0
  10. package/dist/exports/html/index.js.map +1 -1
  11. package/dist/exports/html-async/index.js +1 -0
  12. package/dist/exports/html-async/index.js.map +1 -1
  13. package/dist/exports/plaintext/index.js +1 -0
  14. package/dist/exports/plaintext/index.js.map +1 -1
  15. package/dist/exports/react/index.js +1 -0
  16. package/dist/exports/react/index.js.map +1 -1
  17. package/dist/exports/server/ast/mdx.js +37 -35
  18. package/dist/exports/server/ast/mdx.js.map +1 -1
  19. package/dist/exports/server/migrate.js +1 -0
  20. package/dist/exports/server/migrate.js.map +1 -1
  21. package/dist/exports/server/rsc.js +1 -0
  22. package/dist/exports/server/rsc.js.map +1 -1
  23. package/dist/exports/shared.js +1 -0
  24. package/dist/exports/shared.js.map +1 -1
  25. package/dist/features/align/client/index.js +168 -195
  26. package/dist/features/align/client/index.js.map +1 -1
  27. package/dist/features/align/client/toolbarAlignGroup.js +9 -9
  28. package/dist/features/align/client/toolbarAlignGroup.js.map +1 -1
  29. package/dist/features/align/server/i18n.js +223 -222
  30. package/dist/features/align/server/i18n.js.map +1 -1
  31. package/dist/features/align/server/index.js +6 -5
  32. package/dist/features/align/server/index.js.map +1 -1
  33. package/dist/features/blockquote/client/index.js +65 -60
  34. package/dist/features/blockquote/client/index.js.map +1 -1
  35. package/dist/features/blockquote/markdownTransformer.js +33 -28
  36. package/dist/features/blockquote/markdownTransformer.js.map +1 -1
  37. package/dist/features/blockquote/server/i18n.js +112 -111
  38. package/dist/features/blockquote/server/i18n.js.map +1 -1
  39. package/dist/features/blockquote/server/index.js +47 -48
  40. package/dist/features/blockquote/server/index.js.map +1 -1
  41. package/dist/features/blocks/client/component/BlockContent.js +95 -69
  42. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  43. package/dist/features/blocks/client/component/components/BlockCollapsible.js +13 -14
  44. package/dist/features/blocks/client/component/components/BlockCollapsible.js.map +1 -1
  45. package/dist/features/blocks/client/component/components/BlockEditButton.js +9 -17
  46. package/dist/features/blocks/client/component/components/BlockEditButton.js.map +1 -1
  47. package/dist/features/blocks/client/component/components/BlockRemoveButton.js +9 -17
  48. package/dist/features/blocks/client/component/components/BlockRemoveButton.js.map +1 -1
  49. package/dist/features/blocks/client/component/index.js +553 -410
  50. package/dist/features/blocks/client/component/index.js.map +1 -1
  51. package/dist/features/blocks/client/component/index.scss +188 -0
  52. package/dist/features/blocks/client/component/removeEmptyArrayValues.js +8 -11
  53. package/dist/features/blocks/client/component/removeEmptyArrayValues.js.map +1 -1
  54. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js +11 -23
  55. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js.map +1 -1
  56. package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js +9 -17
  57. package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js.map +1 -1
  58. package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js +9 -17
  59. package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js.map +1 -1
  60. package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js +9 -17
  61. package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js.map +1 -1
  62. package/dist/features/blocks/client/componentInline/index.js +468 -340
  63. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  64. package/dist/features/blocks/client/componentInline/index.scss +100 -0
  65. package/dist/features/blocks/client/getBlockImageComponent.js +17 -12
  66. package/dist/features/blocks/client/getBlockImageComponent.js.map +1 -1
  67. package/dist/features/blocks/client/index.js +141 -146
  68. package/dist/features/blocks/client/index.js.map +1 -1
  69. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +18 -18
  70. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
  71. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +14 -15
  72. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
  73. package/dist/features/blocks/client/markdown/markdownTransformer.js +328 -330
  74. package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
  75. package/dist/features/blocks/client/nodes/BlocksNode.js +44 -40
  76. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  77. package/dist/features/blocks/client/nodes/InlineBlocksNode.js +37 -33
  78. package/dist/features/blocks/client/nodes/InlineBlocksNode.js.map +1 -1
  79. package/dist/features/blocks/client/plugin/commands.js +1 -1
  80. package/dist/features/blocks/client/plugin/commands.js.map +1 -1
  81. package/dist/features/blocks/client/plugin/index.js +59 -87
  82. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  83. package/dist/features/blocks/premade/CodeBlock/Component/Block.js +158 -101
  84. package/dist/features/blocks/premade/CodeBlock/Component/Block.js.map +1 -1
  85. package/dist/features/blocks/premade/CodeBlock/Component/Code.js +119 -93
  86. package/dist/features/blocks/premade/CodeBlock/Component/Code.js.map +1 -1
  87. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js +19 -11
  88. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js.map +1 -1
  89. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.scss +6 -0
  90. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js +32 -20
  91. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js.map +1 -1
  92. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.scss +29 -0
  93. package/dist/features/blocks/premade/CodeBlock/Component/defaultLanguages.js +84 -83
  94. package/dist/features/blocks/premade/CodeBlock/Component/defaultLanguages.js.map +1 -1
  95. package/dist/features/blocks/premade/CodeBlock/Component/index.scss +97 -0
  96. package/dist/features/blocks/premade/CodeBlock/converter.js +36 -40
  97. package/dist/features/blocks/premade/CodeBlock/converter.js.map +1 -1
  98. package/dist/features/blocks/premade/CodeBlock/converterClient.js +1 -1
  99. package/dist/features/blocks/premade/CodeBlock/converterClient.js.map +1 -1
  100. package/dist/features/blocks/premade/CodeBlock/index.js +49 -49
  101. package/dist/features/blocks/premade/CodeBlock/index.js.map +1 -1
  102. package/dist/features/blocks/server/graphQLPopulationPromise.js +29 -44
  103. package/dist/features/blocks/server/graphQLPopulationPromise.js.map +1 -1
  104. package/dist/features/blocks/server/i18n.js +334 -333
  105. package/dist/features/blocks/server/i18n.js.map +1 -1
  106. package/dist/features/blocks/server/index.d.ts +33 -1
  107. package/dist/features/blocks/server/index.d.ts.map +1 -1
  108. package/dist/features/blocks/server/index.js +238 -218
  109. package/dist/features/blocks/server/index.js.map +1 -1
  110. package/dist/features/blocks/server/markdown/linesFromMatchToContentAndPropsString.js +123 -122
  111. package/dist/features/blocks/server/markdown/linesFromMatchToContentAndPropsString.js.map +1 -1
  112. package/dist/features/blocks/server/markdown/markdownTransformer.js +347 -349
  113. package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
  114. package/dist/features/blocks/server/nodes/BlocksNode.js +86 -90
  115. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  116. package/dist/features/blocks/server/nodes/InlineBlocksNode.js +84 -87
  117. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  118. package/dist/features/blocks/server/validate.js +42 -55
  119. package/dist/features/blocks/server/validate.js.map +1 -1
  120. package/dist/features/converters/htmlToLexical/index.js +21 -24
  121. package/dist/features/converters/htmlToLexical/index.js.map +1 -1
  122. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.js +7 -10
  123. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.js.map +1 -1
  124. package/dist/features/converters/lexicalToHtml/async/converters/heading.js +7 -10
  125. package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
  126. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.js +2 -1
  127. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.js.map +1 -1
  128. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.js +2 -1
  129. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.js.map +1 -1
  130. package/dist/features/converters/lexicalToHtml/async/converters/link.js +28 -37
  131. package/dist/features/converters/lexicalToHtml/async/converters/link.js.map +1 -1
  132. package/dist/features/converters/lexicalToHtml/async/converters/list.js +18 -26
  133. package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
  134. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.js +9 -12
  135. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.js.map +1 -1
  136. package/dist/features/converters/lexicalToHtml/async/converters/tab.js +2 -1
  137. package/dist/features/converters/lexicalToHtml/async/converters/tab.js.map +1 -1
  138. package/dist/features/converters/lexicalToHtml/async/converters/table.js +27 -38
  139. package/dist/features/converters/lexicalToHtml/async/converters/table.js.map +1 -1
  140. package/dist/features/converters/lexicalToHtml/async/converters/text.js +25 -26
  141. package/dist/features/converters/lexicalToHtml/async/converters/text.js.map +1 -1
  142. package/dist/features/converters/lexicalToHtml/async/converters/upload.d.ts.map +1 -1
  143. package/dist/features/converters/lexicalToHtml/async/converters/upload.js +43 -45
  144. package/dist/features/converters/lexicalToHtml/async/converters/upload.js.map +1 -1
  145. package/dist/features/converters/lexicalToHtml/async/defaultConverters.js +12 -11
  146. package/dist/features/converters/lexicalToHtml/async/defaultConverters.js.map +1 -1
  147. package/dist/features/converters/lexicalToHtml/async/field/index.js +56 -56
  148. package/dist/features/converters/lexicalToHtml/async/field/index.js.map +1 -1
  149. package/dist/features/converters/lexicalToHtml/async/index.js +87 -97
  150. package/dist/features/converters/lexicalToHtml/async/index.js.map +1 -1
  151. package/dist/features/converters/lexicalToHtml/async/types.js +4 -1
  152. package/dist/features/converters/lexicalToHtml/async/types.js.map +1 -1
  153. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js +57 -62
  154. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
  155. package/dist/features/converters/lexicalToHtml/shared/types.js +2 -1
  156. package/dist/features/converters/lexicalToHtml/shared/types.js.map +1 -1
  157. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.js +7 -10
  158. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.js.map +1 -1
  159. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js +7 -10
  160. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
  161. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.js +2 -1
  162. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.js.map +1 -1
  163. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.js +2 -1
  164. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.js.map +1 -1
  165. package/dist/features/converters/lexicalToHtml/sync/converters/link.js +27 -35
  166. package/dist/features/converters/lexicalToHtml/sync/converters/link.js.map +1 -1
  167. package/dist/features/converters/lexicalToHtml/sync/converters/list.js +18 -26
  168. package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
  169. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.js +9 -12
  170. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.js.map +1 -1
  171. package/dist/features/converters/lexicalToHtml/sync/converters/tab.js +2 -1
  172. package/dist/features/converters/lexicalToHtml/sync/converters/tab.js.map +1 -1
  173. package/dist/features/converters/lexicalToHtml/sync/converters/table.js +27 -38
  174. package/dist/features/converters/lexicalToHtml/sync/converters/table.js.map +1 -1
  175. package/dist/features/converters/lexicalToHtml/sync/converters/text.js +25 -26
  176. package/dist/features/converters/lexicalToHtml/sync/converters/text.js.map +1 -1
  177. package/dist/features/converters/lexicalToHtml/sync/converters/upload.d.ts.map +1 -1
  178. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js +37 -38
  179. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js.map +1 -1
  180. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.js +12 -11
  181. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.js.map +1 -1
  182. package/dist/features/converters/lexicalToHtml/sync/index.js +84 -92
  183. package/dist/features/converters/lexicalToHtml/sync/index.js.map +1 -1
  184. package/dist/features/converters/lexicalToHtml/sync/types.js +4 -1
  185. package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
  186. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js +7 -4
  187. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js.map +1 -1
  188. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js +29 -34
  189. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js.map +1 -1
  190. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js +7 -6
  191. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js.map +1 -1
  192. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js +29 -28
  193. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js.map +1 -1
  194. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js +7 -2
  195. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js.map +1 -1
  196. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js +84 -84
  197. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js.map +1 -1
  198. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js +6 -1
  199. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js.map +1 -1
  200. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js +107 -107
  201. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js.map +1 -1
  202. package/dist/features/converters/lexicalToHtml_deprecated/index.js +4 -4
  203. package/dist/features/converters/lexicalToHtml_deprecated/index.js.map +1 -1
  204. package/dist/features/converters/lexicalToJSX/Component/index.js +46 -36
  205. package/dist/features/converters/lexicalToJSX/Component/index.js.map +1 -1
  206. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.js +14 -12
  207. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.js.map +1 -1
  208. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js +15 -13
  209. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
  210. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.js +7 -2
  211. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.js.map +1 -1
  212. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.js +7 -2
  213. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.js.map +1 -1
  214. package/dist/features/converters/lexicalToJSX/converter/converters/link.js +49 -47
  215. package/dist/features/converters/lexicalToJSX/converter/converters/link.js.map +1 -1
  216. package/dist/features/converters/lexicalToJSX/converter/converters/list.js +78 -56
  217. package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
  218. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.js +26 -16
  219. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.js.map +1 -1
  220. package/dist/features/converters/lexicalToJSX/converter/converters/tab.js +2 -1
  221. package/dist/features/converters/lexicalToJSX/converter/converters/tab.js.map +1 -1
  222. package/dist/features/converters/lexicalToJSX/converter/converters/table.js +73 -59
  223. package/dist/features/converters/lexicalToJSX/converter/converters/table.js.map +1 -1
  224. package/dist/features/converters/lexicalToJSX/converter/converters/text.js +74 -47
  225. package/dist/features/converters/lexicalToJSX/converter/converters/text.js.map +1 -1
  226. package/dist/features/converters/lexicalToJSX/converter/converters/upload.d.ts.map +1 -1
  227. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js +77 -60
  228. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js.map +1 -1
  229. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.js +12 -11
  230. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.js.map +1 -1
  231. package/dist/features/converters/lexicalToJSX/converter/index.js +123 -128
  232. package/dist/features/converters/lexicalToJSX/converter/index.js.map +1 -1
  233. package/dist/features/converters/lexicalToJSX/converter/types.js +4 -1
  234. package/dist/features/converters/lexicalToJSX/converter/types.js.map +1 -1
  235. package/dist/features/converters/lexicalToMarkdown/index.js +17 -19
  236. package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
  237. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js +223 -146
  238. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +1 -1
  239. package/dist/features/converters/lexicalToPlaintext/shared/findConverterForNode.js +11 -13
  240. package/dist/features/converters/lexicalToPlaintext/shared/findConverterForNode.js.map +1 -1
  241. package/dist/features/converters/lexicalToPlaintext/shared/types.js +2 -1
  242. package/dist/features/converters/lexicalToPlaintext/shared/types.js.map +1 -1
  243. package/dist/features/converters/lexicalToPlaintext/sync/index.js +83 -82
  244. package/dist/features/converters/lexicalToPlaintext/sync/index.js.map +1 -1
  245. package/dist/features/converters/lexicalToPlaintext/sync/types.js +3 -1
  246. package/dist/features/converters/lexicalToPlaintext/sync/types.js.map +1 -1
  247. package/dist/features/converters/markdownToLexical/index.js +14 -16
  248. package/dist/features/converters/markdownToLexical/index.js.map +1 -1
  249. package/dist/features/converters/utilities/payloadPopulateFn.js +37 -38
  250. package/dist/features/converters/utilities/payloadPopulateFn.js.map +1 -1
  251. package/dist/features/converters/utilities/restPopulateFn.js +24 -30
  252. package/dist/features/converters/utilities/restPopulateFn.js.map +1 -1
  253. package/dist/features/debug/jsxConverter/client/index.js +7 -5
  254. package/dist/features/debug/jsxConverter/client/index.js.map +1 -1
  255. package/dist/features/debug/jsxConverter/client/plugin/index.js +27 -47
  256. package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
  257. package/dist/features/debug/jsxConverter/client/plugin/style.scss +12 -0
  258. package/dist/features/debug/jsxConverter/server/index.js +5 -4
  259. package/dist/features/debug/jsxConverter/server/index.js.map +1 -1
  260. package/dist/features/debug/testRecorder/client/index.js +7 -5
  261. package/dist/features/debug/testRecorder/client/index.js.map +1 -1
  262. package/dist/features/debug/testRecorder/client/plugin/index.js +456 -365
  263. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  264. package/dist/features/debug/testRecorder/client/plugin/index.scss +53 -0
  265. package/dist/features/debug/testRecorder/server/index.js +5 -4
  266. package/dist/features/debug/testRecorder/server/index.js.map +1 -1
  267. package/dist/features/debug/treeView/client/index.js +7 -5
  268. package/dist/features/debug/treeView/client/index.js.map +1 -1
  269. package/dist/features/debug/treeView/client/plugin/index.js +18 -23
  270. package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
  271. package/dist/features/debug/treeView/client/plugin/index.scss +80 -0
  272. package/dist/features/debug/treeView/server/index.js +5 -4
  273. package/dist/features/debug/treeView/server/index.js.map +1 -1
  274. package/dist/features/experimental_table/client/index.js +61 -42
  275. package/dist/features/experimental_table/client/index.js.map +1 -1
  276. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js +752 -517
  277. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  278. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.scss +87 -0
  279. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js +350 -316
  280. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  281. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.scss +11 -0
  282. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js +215 -225
  283. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -1
  284. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js +104 -133
  285. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +1 -1
  286. package/dist/features/experimental_table/client/plugins/TablePlugin/index.scss +233 -0
  287. package/dist/features/experimental_table/client/utils/debounce.js +89 -107
  288. package/dist/features/experimental_table/client/utils/debounce.js.map +1 -1
  289. package/dist/features/experimental_table/client/utils/useDebounce.js +21 -39
  290. package/dist/features/experimental_table/client/utils/useDebounce.js.map +1 -1
  291. package/dist/features/experimental_table/markdownTransformer.js +123 -118
  292. package/dist/features/experimental_table/markdownTransformer.js.map +1 -1
  293. package/dist/features/experimental_table/server/index.js +125 -143
  294. package/dist/features/experimental_table/server/index.js.map +1 -1
  295. package/dist/features/format/bold/feature.client.js +38 -35
  296. package/dist/features/format/bold/feature.client.js.map +1 -1
  297. package/dist/features/format/bold/feature.server.js +18 -14
  298. package/dist/features/format/bold/feature.server.js.map +1 -1
  299. package/dist/features/format/bold/markdownTransformers.js +25 -14
  300. package/dist/features/format/bold/markdownTransformers.js.map +1 -1
  301. package/dist/features/format/inlineCode/feature.client.js +31 -27
  302. package/dist/features/format/inlineCode/feature.client.js.map +1 -1
  303. package/dist/features/format/inlineCode/feature.server.js +8 -5
  304. package/dist/features/format/inlineCode/feature.server.js.map +1 -1
  305. package/dist/features/format/inlineCode/markdownTransformers.js +6 -3
  306. package/dist/features/format/inlineCode/markdownTransformers.js.map +1 -1
  307. package/dist/features/format/italic/feature.client.js +32 -27
  308. package/dist/features/format/italic/feature.client.js.map +1 -1
  309. package/dist/features/format/italic/feature.server.js +9 -5
  310. package/dist/features/format/italic/feature.server.js.map +1 -1
  311. package/dist/features/format/italic/markdownTransformers.js +12 -7
  312. package/dist/features/format/italic/markdownTransformers.js.map +1 -1
  313. package/dist/features/format/shared/toolbarFormatGroup.js +8 -8
  314. package/dist/features/format/shared/toolbarFormatGroup.js.map +1 -1
  315. package/dist/features/format/strikethrough/feature.client.js +31 -27
  316. package/dist/features/format/strikethrough/feature.client.js.map +1 -1
  317. package/dist/features/format/strikethrough/feature.server.js +8 -5
  318. package/dist/features/format/strikethrough/feature.server.js.map +1 -1
  319. package/dist/features/format/strikethrough/markdownTransformers.js +6 -3
  320. package/dist/features/format/strikethrough/markdownTransformers.js.map +1 -1
  321. package/dist/features/format/subscript/feature.client.js +28 -26
  322. package/dist/features/format/subscript/feature.client.js.map +1 -1
  323. package/dist/features/format/subscript/feature.server.js +5 -4
  324. package/dist/features/format/subscript/feature.server.js.map +1 -1
  325. package/dist/features/format/superscript/feature.client.js +28 -26
  326. package/dist/features/format/superscript/feature.client.js.map +1 -1
  327. package/dist/features/format/superscript/feature.server.js +5 -4
  328. package/dist/features/format/superscript/feature.server.js.map +1 -1
  329. package/dist/features/format/underline/feature.client.js +28 -26
  330. package/dist/features/format/underline/feature.client.js.map +1 -1
  331. package/dist/features/format/underline/feature.server.js +5 -4
  332. package/dist/features/format/underline/feature.server.js.map +1 -1
  333. package/dist/features/heading/client/index.js +121 -142
  334. package/dist/features/heading/client/index.js.map +1 -1
  335. package/dist/features/heading/markdownTransformer.js +25 -22
  336. package/dist/features/heading/markdownTransformer.js.map +1 -1
  337. package/dist/features/heading/server/i18n.js +112 -111
  338. package/dist/features/heading/server/i18n.js.map +1 -1
  339. package/dist/features/heading/server/index.js +62 -60
  340. package/dist/features/heading/server/index.js.map +1 -1
  341. package/dist/features/horizontalRule/client/index.js +57 -48
  342. package/dist/features/horizontalRule/client/index.js.map +1 -1
  343. package/dist/features/horizontalRule/client/markdownTransformer.js +18 -15
  344. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  345. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +25 -27
  346. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  347. package/dist/features/horizontalRule/client/plugin/index.js +21 -32
  348. package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
  349. package/dist/features/horizontalRule/client/plugin/index.scss +23 -0
  350. package/dist/features/horizontalRule/server/i18n.js +112 -111
  351. package/dist/features/horizontalRule/server/i18n.js.map +1 -1
  352. package/dist/features/horizontalRule/server/index.js +24 -17
  353. package/dist/features/horizontalRule/server/index.js.map +1 -1
  354. package/dist/features/horizontalRule/server/markdownTransformer.js +18 -15
  355. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  356. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +69 -72
  357. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  358. package/dist/features/indent/client/IndentPlugin.js +78 -78
  359. package/dist/features/indent/client/IndentPlugin.js.map +1 -1
  360. package/dist/features/indent/client/index.js +68 -77
  361. package/dist/features/indent/client/index.js.map +1 -1
  362. package/dist/features/indent/client/toolbarIndentGroup.js +8 -8
  363. package/dist/features/indent/client/toolbarIndentGroup.js.map +1 -1
  364. package/dist/features/indent/server/i18n.js +149 -148
  365. package/dist/features/indent/server/i18n.js.map +1 -1
  366. package/dist/features/indent/server/index.js +18 -11
  367. package/dist/features/indent/server/index.js.map +1 -1
  368. package/dist/features/link/client/index.js +83 -80
  369. package/dist/features/link/client/index.js.map +1 -1
  370. package/dist/features/link/client/plugins/autoLink/index.js +280 -273
  371. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  372. package/dist/features/link/client/plugins/clickableLink/index.js +8 -4
  373. package/dist/features/link/client/plugins/clickableLink/index.js.map +1 -1
  374. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js +1 -1
  375. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js.map +1 -1
  376. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +378 -297
  377. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  378. package/dist/features/link/client/plugins/floatingLinkEditor/index.js +12 -9
  379. package/dist/features/link/client/plugins/floatingLinkEditor/index.js.map +1 -1
  380. package/dist/features/link/client/plugins/floatingLinkEditor/index.scss +92 -0
  381. package/dist/features/link/client/plugins/floatingLinkEditor/types.js +6 -1
  382. package/dist/features/link/client/plugins/floatingLinkEditor/types.js.map +1 -1
  383. package/dist/features/link/client/plugins/link/index.js +53 -68
  384. package/dist/features/link/client/plugins/link/index.js.map +1 -1
  385. package/dist/features/link/markdownTransformer.js +34 -33
  386. package/dist/features/link/markdownTransformer.js.map +1 -1
  387. package/dist/features/link/nodes/AutoLinkNode.js +56 -58
  388. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  389. package/dist/features/link/nodes/LinkNode.js +286 -288
  390. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  391. package/dist/features/link/nodes/types.js +6 -1
  392. package/dist/features/link/nodes/types.js.map +1 -1
  393. package/dist/features/link/server/baseFields.js +115 -140
  394. package/dist/features/link/server/baseFields.js.map +1 -1
  395. package/dist/features/link/server/graphQLPopulationPromise.js +29 -45
  396. package/dist/features/link/server/graphQLPopulationPromise.js.map +1 -1
  397. package/dist/features/link/server/i18n.js +149 -148
  398. package/dist/features/link/server/i18n.js.map +1 -1
  399. package/dist/features/link/server/index.js +156 -143
  400. package/dist/features/link/server/index.js.map +1 -1
  401. package/dist/features/link/server/transformExtraFields.js +15 -15
  402. package/dist/features/link/server/transformExtraFields.js.map +1 -1
  403. package/dist/features/link/server/validate.js +35 -46
  404. package/dist/features/link/server/validate.js.map +1 -1
  405. package/dist/features/lists/checklist/client/index.js +86 -78
  406. package/dist/features/lists/checklist/client/index.js.map +1 -1
  407. package/dist/features/lists/checklist/client/plugin/index.js +8 -4
  408. package/dist/features/lists/checklist/client/plugin/index.js.map +1 -1
  409. package/dist/features/lists/checklist/markdownTransformers.js +11 -7
  410. package/dist/features/lists/checklist/markdownTransformers.js.map +1 -1
  411. package/dist/features/lists/checklist/server/i18n.js +112 -111
  412. package/dist/features/lists/checklist/server/i18n.js.map +1 -1
  413. package/dist/features/lists/checklist/server/index.js +26 -21
  414. package/dist/features/lists/checklist/server/index.js.map +1 -1
  415. package/dist/features/lists/htmlConverter.js +47 -62
  416. package/dist/features/lists/htmlConverter.js.map +1 -1
  417. package/dist/features/lists/orderedList/client/index.js +78 -72
  418. package/dist/features/lists/orderedList/client/index.js.map +1 -1
  419. package/dist/features/lists/orderedList/markdownTransformer.js +11 -7
  420. package/dist/features/lists/orderedList/markdownTransformer.js.map +1 -1
  421. package/dist/features/lists/orderedList/server/i18n.js +112 -111
  422. package/dist/features/lists/orderedList/server/i18n.js.map +1 -1
  423. package/dist/features/lists/orderedList/server/index.js +26 -21
  424. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  425. package/dist/features/lists/plugin/index.js +8 -4
  426. package/dist/features/lists/plugin/index.js.map +1 -1
  427. package/dist/features/lists/shared/markdown.js +49 -48
  428. package/dist/features/lists/shared/markdown.js.map +1 -1
  429. package/dist/features/lists/shared/shouldRegisterListBaseNodes.js +10 -9
  430. package/dist/features/lists/shared/shouldRegisterListBaseNodes.js.map +1 -1
  431. package/dist/features/lists/shared/slashMenuListGroup.js +8 -9
  432. package/dist/features/lists/shared/slashMenuListGroup.js.map +1 -1
  433. package/dist/features/lists/unorderedList/client/index.js +76 -68
  434. package/dist/features/lists/unorderedList/client/index.js.map +1 -1
  435. package/dist/features/lists/unorderedList/markdownTransformer.js +11 -7
  436. package/dist/features/lists/unorderedList/markdownTransformer.js.map +1 -1
  437. package/dist/features/lists/unorderedList/server/i18n.js +112 -111
  438. package/dist/features/lists/unorderedList/server/i18n.js.map +1 -1
  439. package/dist/features/lists/unorderedList/server/index.js +24 -17
  440. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  441. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +17 -18
  442. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js.map +1 -1
  443. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +29 -30
  444. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js.map +1 -1
  445. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +20 -21
  446. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js.map +1 -1
  447. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +19 -21
  448. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js.map +1 -1
  449. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +17 -18
  450. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js.map +1 -1
  451. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +23 -24
  452. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js.map +1 -1
  453. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +21 -20
  454. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js.map +1 -1
  455. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +10 -1
  456. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js.map +1 -1
  457. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js +64 -70
  458. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js.map +1 -1
  459. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js +2 -1
  460. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js.map +1 -1
  461. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js +7 -5
  462. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js.map +1 -1
  463. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js +43 -42
  464. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js.map +1 -1
  465. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +21 -11
  466. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  467. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +65 -66
  468. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  469. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +16 -0
  470. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +19 -19
  471. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js.map +1 -1
  472. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js +26 -20
  473. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js.map +1 -1
  474. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js +30 -28
  475. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js.map +1 -1
  476. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js +27 -26
  477. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js.map +1 -1
  478. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js +21 -22
  479. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js.map +1 -1
  480. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +22 -22
  481. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js.map +1 -1
  482. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js +13 -12
  483. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js.map +1 -1
  484. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js +23 -23
  485. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js.map +1 -1
  486. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +22 -22
  487. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js.map +1 -1
  488. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js +16 -15
  489. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js.map +1 -1
  490. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js +13 -1
  491. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js.map +1 -1
  492. package/dist/features/migrations/slateToLexical/converter/index.js +110 -117
  493. package/dist/features/migrations/slateToLexical/converter/index.js.map +1 -1
  494. package/dist/features/migrations/slateToLexical/converter/types.js +2 -1
  495. package/dist/features/migrations/slateToLexical/converter/types.js.map +1 -1
  496. package/dist/features/migrations/slateToLexical/feature.client.js +7 -5
  497. package/dist/features/migrations/slateToLexical/feature.client.js.map +1 -1
  498. package/dist/features/migrations/slateToLexical/feature.server.js +54 -45
  499. package/dist/features/migrations/slateToLexical/feature.server.js.map +1 -1
  500. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +21 -11
  501. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  502. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +65 -66
  503. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  504. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.scss +16 -0
  505. package/dist/features/paragraph/client/index.js +61 -58
  506. package/dist/features/paragraph/client/index.js.map +1 -1
  507. package/dist/features/paragraph/server/i18n.js +149 -148
  508. package/dist/features/paragraph/server/i18n.js.map +1 -1
  509. package/dist/features/paragraph/server/index.js +7 -6
  510. package/dist/features/paragraph/server/index.js.map +1 -1
  511. package/dist/features/relationship/client/components/RelationshipComponent.js +147 -118
  512. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  513. package/dist/features/relationship/client/components/index.scss +95 -0
  514. package/dist/features/relationship/client/drawer/commands.js +1 -0
  515. package/dist/features/relationship/client/drawer/commands.js.map +1 -1
  516. package/dist/features/relationship/client/drawer/index.js +81 -132
  517. package/dist/features/relationship/client/drawer/index.js.map +1 -1
  518. package/dist/features/relationship/client/index.js +59 -53
  519. package/dist/features/relationship/client/index.js.map +1 -1
  520. package/dist/features/relationship/client/nodes/RelationshipNode.js +64 -60
  521. package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
  522. package/dist/features/relationship/client/plugins/index.js +39 -69
  523. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  524. package/dist/features/relationship/client/utils/useEnabledRelationships.js +48 -58
  525. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  526. package/dist/features/relationship/server/graphQLPopulationPromise.js +26 -34
  527. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  528. package/dist/features/relationship/server/i18n.js +112 -111
  529. package/dist/features/relationship/server/i18n.js.map +1 -1
  530. package/dist/features/relationship/server/index.js +64 -59
  531. package/dist/features/relationship/server/index.js.map +1 -1
  532. package/dist/features/relationship/server/nodes/RelationshipNode.js +92 -95
  533. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  534. package/dist/features/shared/slashMenu/basicGroup.js +8 -9
  535. package/dist/features/shared/slashMenu/basicGroup.js.map +1 -1
  536. package/dist/features/shared/toolbar/addDropdownGroup.js +9 -8
  537. package/dist/features/shared/toolbar/addDropdownGroup.js.map +1 -1
  538. package/dist/features/shared/toolbar/featureButtonsGroup.js +8 -7
  539. package/dist/features/shared/toolbar/featureButtonsGroup.js.map +1 -1
  540. package/dist/features/shared/toolbar/textDropdownGroup.js +9 -8
  541. package/dist/features/shared/toolbar/textDropdownGroup.js.map +1 -1
  542. package/dist/features/textState/defaultColors.js +370 -370
  543. package/dist/features/textState/defaultColors.js.map +1 -1
  544. package/dist/features/textState/feature.client.js +77 -64
  545. package/dist/features/textState/feature.client.js.map +1 -1
  546. package/dist/features/textState/feature.server.js +46 -14
  547. package/dist/features/textState/feature.server.js.map +1 -1
  548. package/dist/features/textState/i18n.js +112 -111
  549. package/dist/features/textState/i18n.js.map +1 -1
  550. package/dist/features/textState/textState.js +64 -62
  551. package/dist/features/textState/textState.js.map +1 -1
  552. package/dist/features/toolbars/fixed/client/Toolbar/index.js +263 -297
  553. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  554. package/dist/features/toolbars/fixed/client/Toolbar/index.scss +113 -0
  555. package/dist/features/toolbars/fixed/client/index.js +7 -5
  556. package/dist/features/toolbars/fixed/client/index.js.map +1 -1
  557. package/dist/features/toolbars/fixed/server/index.js +32 -16
  558. package/dist/features/toolbars/fixed/server/index.js.map +1 -1
  559. package/dist/features/toolbars/inline/client/Toolbar/index.js +343 -366
  560. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  561. package/dist/features/toolbars/inline/client/Toolbar/index.scss +58 -0
  562. package/dist/features/toolbars/inline/client/index.js +7 -5
  563. package/dist/features/toolbars/inline/client/index.js.map +1 -1
  564. package/dist/features/toolbars/inline/server/index.js +5 -4
  565. package/dist/features/toolbars/inline/server/index.js.map +1 -1
  566. package/dist/features/toolbars/shared/ToolbarButton/index.js +103 -145
  567. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  568. package/dist/features/toolbars/shared/ToolbarButton/index.scss +46 -0
  569. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +264 -208
  570. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  571. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +172 -176
  572. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  573. package/dist/features/toolbars/shared/ToolbarDropdown/index.scss +129 -0
  574. package/dist/features/toolbars/types.js +29 -1
  575. package/dist/features/toolbars/types.js.map +1 -1
  576. package/dist/features/typeUtilities.js +3 -2
  577. package/dist/features/typeUtilities.js.map +1 -1
  578. package/dist/features/typesClient.js +61 -1
  579. package/dist/features/typesClient.js.map +1 -1
  580. package/dist/features/typesServer.js +90 -1
  581. package/dist/features/typesServer.js.map +1 -1
  582. package/dist/features/upload/client/component/index.js +242 -189
  583. package/dist/features/upload/client/component/index.js.map +1 -1
  584. package/dist/features/upload/client/component/index.scss +191 -0
  585. package/dist/features/upload/client/component/pending/index.js +19 -10
  586. package/dist/features/upload/client/component/pending/index.js.map +1 -1
  587. package/dist/features/upload/client/drawer/commands.js +1 -1
  588. package/dist/features/upload/client/drawer/commands.js.map +1 -1
  589. package/dist/features/upload/client/drawer/index.js +83 -132
  590. package/dist/features/upload/client/drawer/index.js.map +1 -1
  591. package/dist/features/upload/client/index.js +61 -51
  592. package/dist/features/upload/client/index.js.map +1 -1
  593. package/dist/features/upload/client/nodes/UploadNode.js +67 -61
  594. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  595. package/dist/features/upload/client/plugin/index.js +290 -331
  596. package/dist/features/upload/client/plugin/index.js.map +1 -1
  597. package/dist/features/upload/server/graphQLPopulationPromise.js +48 -63
  598. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  599. package/dist/features/upload/server/i18n.js +112 -111
  600. package/dist/features/upload/server/i18n.js.map +1 -1
  601. package/dist/features/upload/server/index.d.ts.map +1 -1
  602. package/dist/features/upload/server/index.js +197 -206
  603. package/dist/features/upload/server/index.js.map +1 -1
  604. package/dist/features/upload/server/nodes/UploadNode.js +115 -99
  605. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  606. package/dist/features/upload/server/nodes/conversions.js +41 -40
  607. package/dist/features/upload/server/nodes/conversions.js.map +1 -1
  608. package/dist/features/upload/server/validate.js +48 -62
  609. package/dist/features/upload/server/validate.js.map +1 -1
  610. package/dist/field/Diff/converters/link.js +32 -41
  611. package/dist/field/Diff/converters/link.js.map +1 -1
  612. package/dist/field/Diff/converters/listitem/index.js +75 -55
  613. package/dist/field/Diff/converters/listitem/index.js.map +1 -1
  614. package/dist/field/Diff/converters/listitem/index.scss +47 -0
  615. package/dist/field/Diff/converters/relationship/index.js +85 -63
  616. package/dist/field/Diff/converters/relationship/index.js.map +1 -1
  617. package/dist/field/Diff/converters/relationship/index.scss +73 -0
  618. package/dist/field/Diff/converters/unknown/index.js +64 -41
  619. package/dist/field/Diff/converters/unknown/index.js.map +1 -1
  620. package/dist/field/Diff/converters/unknown/index.scss +40 -0
  621. package/dist/field/Diff/converters/upload/index.d.ts.map +1 -1
  622. package/dist/field/Diff/converters/upload/index.js +122 -69
  623. package/dist/field/Diff/converters/upload/index.js.map +1 -1
  624. package/dist/field/Diff/converters/upload/index.scss +115 -0
  625. package/dist/field/Diff/index.js +59 -66
  626. package/dist/field/Diff/index.js.map +1 -1
  627. package/dist/field/Diff/index.scss +102 -0
  628. package/dist/field/Field.js +226 -167
  629. package/dist/field/Field.js.map +1 -1
  630. package/dist/field/RenderLexical/index.js +123 -119
  631. package/dist/field/RenderLexical/index.js.map +1 -1
  632. package/dist/field/bundled.css +0 -1
  633. package/dist/field/index.js +61 -97
  634. package/dist/field/index.js.map +1 -1
  635. package/dist/field/index.scss +41 -0
  636. package/dist/field/rscEntry.js +86 -84
  637. package/dist/field/rscEntry.js.map +1 -1
  638. package/dist/i18n.js +223 -222
  639. package/dist/i18n.js.map +1 -1
  640. package/dist/index.d.ts +2 -1
  641. package/dist/index.d.ts.map +1 -1
  642. package/dist/index.js +639 -704
  643. package/dist/index.js.map +1 -1
  644. package/dist/lexical/EditorPlugin.js +21 -17
  645. package/dist/lexical/EditorPlugin.js.map +1 -1
  646. package/dist/lexical/LexicalEditor.js +274 -171
  647. package/dist/lexical/LexicalEditor.js.map +1 -1
  648. package/dist/lexical/LexicalEditor.scss +54 -0
  649. package/dist/lexical/LexicalProvider.js +109 -86
  650. package/dist/lexical/LexicalProvider.js.map +1 -1
  651. package/dist/lexical/config/client/EditorConfigProvider.js +94 -81
  652. package/dist/lexical/config/client/EditorConfigProvider.js.map +1 -1
  653. package/dist/lexical/config/client/default.js +3 -3
  654. package/dist/lexical/config/client/default.js.map +1 -1
  655. package/dist/lexical/config/client/loader.js +30 -38
  656. package/dist/lexical/config/client/loader.js.map +1 -1
  657. package/dist/lexical/config/client/sanitize.js +188 -187
  658. package/dist/lexical/config/client/sanitize.js.map +1 -1
  659. package/dist/lexical/config/server/default.js +27 -5
  660. package/dist/lexical/config/server/default.js.map +1 -1
  661. package/dist/lexical/config/server/loader.js +105 -106
  662. package/dist/lexical/config/server/loader.js.map +1 -1
  663. package/dist/lexical/config/server/sanitize.js +114 -113
  664. package/dist/lexical/config/server/sanitize.js.map +1 -1
  665. package/dist/lexical/config/types.js +4 -1
  666. package/dist/lexical/config/types.js.map +1 -1
  667. package/dist/lexical/nodes/index.js +12 -15
  668. package/dist/lexical/nodes/index.js.map +1 -1
  669. package/dist/lexical/plugins/ClipboardPlugin/index.js +66 -70
  670. package/dist/lexical/plugins/ClipboardPlugin/index.js.map +1 -1
  671. package/dist/lexical/plugins/DecoratorPlugin/index.js +208 -225
  672. package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
  673. package/dist/lexical/plugins/DecoratorPlugin/index.scss +13 -0
  674. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js +42 -41
  675. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
  676. package/dist/lexical/plugins/InsertParagraphAtEnd/index.scss +54 -0
  677. package/dist/lexical/plugins/MarkdownShortcut/index.js +11 -23
  678. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  679. package/dist/lexical/plugins/NormalizeSelection/index.js +21 -19
  680. package/dist/lexical/plugins/NormalizeSelection/index.js.map +1 -1
  681. package/dist/lexical/plugins/SelectAllPlugin/index.js +19 -17
  682. package/dist/lexical/plugins/SelectAllPlugin/index.js.map +1 -1
  683. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +399 -420
  684. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  685. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +164 -155
  686. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js.map +1 -1
  687. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +10 -1
  688. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js.map +1 -1
  689. package/dist/lexical/plugins/SlashMenu/index.js +204 -181
  690. package/dist/lexical/plugins/SlashMenu/index.js.map +1 -1
  691. package/dist/lexical/plugins/SlashMenu/index.scss +68 -0
  692. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js +28 -41
  693. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js.map +1 -1
  694. package/dist/lexical/plugins/TextPlugin/index.js +27 -42
  695. package/dist/lexical/plugins/TextPlugin/index.js.map +1 -1
  696. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +145 -130
  697. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  698. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.scss +35 -0
  699. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +10 -10
  700. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js.map +1 -1
  701. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +10 -10
  702. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js.map +1 -1
  703. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +23 -26
  704. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js.map +1 -1
  705. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +325 -317
  706. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  707. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.scss +80 -0
  708. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +86 -98
  709. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js.map +1 -1
  710. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js +16 -22
  711. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js.map +1 -1
  712. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js +29 -19
  713. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js.map +1 -1
  714. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js +11 -14
  715. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js.map +1 -1
  716. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js +122 -133
  717. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js.map +1 -1
  718. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +2 -2
  719. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js.map +1 -1
  720. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js +2 -2
  721. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js.map +1 -1
  722. package/dist/lexical/plugins/handles/utils/setHandlePosition.js +29 -24
  723. package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
  724. package/dist/lexical/theme/EditorTheme.js +72 -65
  725. package/dist/lexical/theme/EditorTheme.js.map +1 -1
  726. package/dist/lexical/theme/EditorTheme.scss +357 -0
  727. package/dist/lexical/ui/ContentEditable.js +22 -35
  728. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  729. package/dist/lexical/ui/ContentEditable.scss +105 -0
  730. package/dist/lexical/ui/icons/AI/index.js +58 -31
  731. package/dist/lexical/ui/icons/AI/index.js.map +1 -1
  732. package/dist/lexical/ui/icons/Add/index.js +31 -16
  733. package/dist/lexical/ui/icons/Add/index.js.map +1 -1
  734. package/dist/lexical/ui/icons/AlignCenter/index.js +45 -25
  735. package/dist/lexical/ui/icons/AlignCenter/index.js.map +1 -1
  736. package/dist/lexical/ui/icons/AlignJustify/index.js +45 -25
  737. package/dist/lexical/ui/icons/AlignJustify/index.js.map +1 -1
  738. package/dist/lexical/ui/icons/AlignLeft/index.js +45 -25
  739. package/dist/lexical/ui/icons/AlignLeft/index.js.map +1 -1
  740. package/dist/lexical/ui/icons/AlignRight/index.js +45 -25
  741. package/dist/lexical/ui/icons/AlignRight/index.js.map +1 -1
  742. package/dist/lexical/ui/icons/Block/index.js +54 -34
  743. package/dist/lexical/ui/icons/Block/index.js.map +1 -1
  744. package/dist/lexical/ui/icons/Blockquote/index.js +24 -16
  745. package/dist/lexical/ui/icons/Blockquote/index.js.map +1 -1
  746. package/dist/lexical/ui/icons/Bold/index.js +24 -16
  747. package/dist/lexical/ui/icons/Bold/index.js.map +1 -1
  748. package/dist/lexical/ui/icons/Checklist/index.js +39 -24
  749. package/dist/lexical/ui/icons/Checklist/index.js.map +1 -1
  750. package/dist/lexical/ui/icons/Code/index.js +34 -19
  751. package/dist/lexical/ui/icons/Code/index.js.map +1 -1
  752. package/dist/lexical/ui/icons/CodeBlock/index.js +22 -14
  753. package/dist/lexical/ui/icons/CodeBlock/index.js.map +1 -1
  754. package/dist/lexical/ui/icons/Collapse/index.js +23 -15
  755. package/dist/lexical/ui/icons/Collapse/index.js.map +1 -1
  756. package/dist/lexical/ui/icons/H1/index.js +24 -16
  757. package/dist/lexical/ui/icons/H1/index.js.map +1 -1
  758. package/dist/lexical/ui/icons/H2/index.js +24 -16
  759. package/dist/lexical/ui/icons/H2/index.js.map +1 -1
  760. package/dist/lexical/ui/icons/H3/index.js +24 -16
  761. package/dist/lexical/ui/icons/H3/index.js.map +1 -1
  762. package/dist/lexical/ui/icons/H4/index.js +24 -16
  763. package/dist/lexical/ui/icons/H4/index.js.map +1 -1
  764. package/dist/lexical/ui/icons/H5/index.js +24 -16
  765. package/dist/lexical/ui/icons/H5/index.js.map +1 -1
  766. package/dist/lexical/ui/icons/H6/index.js +24 -16
  767. package/dist/lexical/ui/icons/H6/index.js.map +1 -1
  768. package/dist/lexical/ui/icons/HorizontalRule/index.js +27 -19
  769. package/dist/lexical/ui/icons/HorizontalRule/index.js.map +1 -1
  770. package/dist/lexical/ui/icons/IndentDecrease/index.js +53 -28
  771. package/dist/lexical/ui/icons/IndentDecrease/index.js.map +1 -1
  772. package/dist/lexical/ui/icons/IndentIncrease/index.js +53 -28
  773. package/dist/lexical/ui/icons/IndentIncrease/index.js.map +1 -1
  774. package/dist/lexical/ui/icons/InlineBlocks/index.js +26 -18
  775. package/dist/lexical/ui/icons/InlineBlocks/index.js.map +1 -1
  776. package/dist/lexical/ui/icons/Italic/index.js +24 -16
  777. package/dist/lexical/ui/icons/Italic/index.js.map +1 -1
  778. package/dist/lexical/ui/icons/Link/index.js +25 -17
  779. package/dist/lexical/ui/icons/Link/index.js.map +1 -1
  780. package/dist/lexical/ui/icons/Meatballs/index.js +39 -19
  781. package/dist/lexical/ui/icons/Meatballs/index.js.map +1 -1
  782. package/dist/lexical/ui/icons/OrderedList/index.js +61 -31
  783. package/dist/lexical/ui/icons/OrderedList/index.js.map +1 -1
  784. package/dist/lexical/ui/icons/Relationship/index.js +58 -31
  785. package/dist/lexical/ui/icons/Relationship/index.js.map +1 -1
  786. package/dist/lexical/ui/icons/Strikethrough/index.js +34 -19
  787. package/dist/lexical/ui/icons/Strikethrough/index.js.map +1 -1
  788. package/dist/lexical/ui/icons/Subscript/index.js +24 -16
  789. package/dist/lexical/ui/icons/Subscript/index.js.map +1 -1
  790. package/dist/lexical/ui/icons/Superscript/index.js +24 -16
  791. package/dist/lexical/ui/icons/Superscript/index.js.map +1 -1
  792. package/dist/lexical/ui/icons/Table/index.js +25 -17
  793. package/dist/lexical/ui/icons/Table/index.js.map +1 -1
  794. package/dist/lexical/ui/icons/Text/index.js +24 -16
  795. package/dist/lexical/ui/icons/Text/index.js.map +1 -1
  796. package/dist/lexical/ui/icons/TextState/index.js +25 -19
  797. package/dist/lexical/ui/icons/TextState/index.js.map +1 -1
  798. package/dist/lexical/ui/icons/Underline/index.js +34 -19
  799. package/dist/lexical/ui/icons/Underline/index.js.map +1 -1
  800. package/dist/lexical/ui/icons/UnorderedList/index.js +81 -46
  801. package/dist/lexical/ui/icons/UnorderedList/index.js.map +1 -1
  802. package/dist/lexical/ui/icons/Upload/index.js +48 -28
  803. package/dist/lexical/ui/icons/Upload/index.js.map +1 -1
  804. package/dist/lexical/utils/canUseDOM.js +1 -1
  805. package/dist/lexical/utils/canUseDOM.js.map +1 -1
  806. package/dist/lexical/utils/environment.js +1 -1
  807. package/dist/lexical/utils/environment.js.map +1 -1
  808. package/dist/lexical/utils/getDOMRangeRect.js +12 -12
  809. package/dist/lexical/utils/getDOMRangeRect.js.map +1 -1
  810. package/dist/lexical/utils/getSelectedNode.js +13 -17
  811. package/dist/lexical/utils/getSelectedNode.js.map +1 -1
  812. package/dist/lexical/utils/guard.js +3 -4
  813. package/dist/lexical/utils/guard.js.map +1 -1
  814. package/dist/lexical/utils/joinClasses.js +2 -2
  815. package/dist/lexical/utils/joinClasses.js.map +1 -1
  816. package/dist/lexical/utils/markdown/createBlockNode.js +10 -9
  817. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  818. package/dist/lexical/utils/nodeFormat.js +59 -58
  819. package/dist/lexical/utils/nodeFormat.js.map +1 -1
  820. package/dist/lexical/utils/point.js +32 -39
  821. package/dist/lexical/utils/point.js.map +1 -1
  822. package/dist/lexical/utils/rect.js +136 -166
  823. package/dist/lexical/utils/rect.js.map +1 -1
  824. package/dist/lexical/utils/setFloatingElemPosition.js +48 -56
  825. package/dist/lexical/utils/setFloatingElemPosition.js.map +1 -1
  826. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js +22 -22
  827. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js.map +1 -1
  828. package/dist/lexical/utils/swipe.js +83 -81
  829. package/dist/lexical/utils/swipe.js.map +1 -1
  830. package/dist/lexical/utils/url.js +53 -53
  831. package/dist/lexical/utils/url.js.map +1 -1
  832. package/dist/lexical/utils/url.spec.js +214 -98
  833. package/dist/lexical/utils/url.spec.js.map +1 -1
  834. package/dist/lexical-proxy/@lexical-headless.js +1 -0
  835. package/dist/lexical-proxy/@lexical-headless.js.map +1 -1
  836. package/dist/lexical-proxy/@lexical-html.js +1 -0
  837. package/dist/lexical-proxy/@lexical-html.js.map +1 -1
  838. package/dist/lexical-proxy/@lexical-link.js +1 -0
  839. package/dist/lexical-proxy/@lexical-link.js.map +1 -1
  840. package/dist/lexical-proxy/@lexical-list.js +1 -0
  841. package/dist/lexical-proxy/@lexical-list.js.map +1 -1
  842. package/dist/lexical-proxy/@lexical-mark.js +1 -0
  843. package/dist/lexical-proxy/@lexical-mark.js.map +1 -1
  844. package/dist/lexical-proxy/@lexical-markdown.js +1 -0
  845. package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
  846. package/dist/lexical-proxy/@lexical-react/LexicalAutoEmbedPlugin.js +1 -0
  847. package/dist/lexical-proxy/@lexical-react/LexicalAutoEmbedPlugin.js.map +1 -1
  848. package/dist/lexical-proxy/@lexical-react/LexicalAutoFocusPlugin.js +1 -0
  849. package/dist/lexical-proxy/@lexical-react/LexicalAutoFocusPlugin.js.map +1 -1
  850. package/dist/lexical-proxy/@lexical-react/LexicalAutoLinkPlugin.js +1 -0
  851. package/dist/lexical-proxy/@lexical-react/LexicalAutoLinkPlugin.js.map +1 -1
  852. package/dist/lexical-proxy/@lexical-react/LexicalBlockWithAlignableContents.js +1 -0
  853. package/dist/lexical-proxy/@lexical-react/LexicalBlockWithAlignableContents.js.map +1 -1
  854. package/dist/lexical-proxy/@lexical-react/LexicalCharacterLimitPlugin.js +1 -0
  855. package/dist/lexical-proxy/@lexical-react/LexicalCharacterLimitPlugin.js.map +1 -1
  856. package/dist/lexical-proxy/@lexical-react/LexicalCheckListPlugin.js +1 -0
  857. package/dist/lexical-proxy/@lexical-react/LexicalCheckListPlugin.js.map +1 -1
  858. package/dist/lexical-proxy/@lexical-react/LexicalClearEditorPlugin.js +1 -0
  859. package/dist/lexical-proxy/@lexical-react/LexicalClearEditorPlugin.js.map +1 -1
  860. package/dist/lexical-proxy/@lexical-react/LexicalClickableLinkPlugin.js +1 -0
  861. package/dist/lexical-proxy/@lexical-react/LexicalClickableLinkPlugin.js.map +1 -1
  862. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationContext.js +1 -0
  863. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationContext.js.map +1 -1
  864. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationPlugin.js +1 -0
  865. package/dist/lexical-proxy/@lexical-react/LexicalCollaborationPlugin.js.map +1 -1
  866. package/dist/lexical-proxy/@lexical-react/LexicalComposer.js +1 -0
  867. package/dist/lexical-proxy/@lexical-react/LexicalComposer.js.map +1 -1
  868. package/dist/lexical-proxy/@lexical-react/LexicalComposerContext.js +1 -0
  869. package/dist/lexical-proxy/@lexical-react/LexicalComposerContext.js.map +1 -1
  870. package/dist/lexical-proxy/@lexical-react/LexicalContentEditable.js +1 -0
  871. package/dist/lexical-proxy/@lexical-react/LexicalContentEditable.js.map +1 -1
  872. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +1 -0
  873. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +1 -1
  874. package/dist/lexical-proxy/@lexical-react/LexicalDecoratorBlockNode.js +1 -0
  875. package/dist/lexical-proxy/@lexical-react/LexicalDecoratorBlockNode.js.map +1 -1
  876. package/dist/lexical-proxy/@lexical-react/LexicalDraggableBlockPlugin.js +1 -0
  877. package/dist/lexical-proxy/@lexical-react/LexicalDraggableBlockPlugin.js.map +1 -1
  878. package/dist/lexical-proxy/@lexical-react/LexicalEditorRefPlugin.js +1 -0
  879. package/dist/lexical-proxy/@lexical-react/LexicalEditorRefPlugin.js.map +1 -1
  880. package/dist/lexical-proxy/@lexical-react/LexicalErrorBoundary.js +1 -0
  881. package/dist/lexical-proxy/@lexical-react/LexicalErrorBoundary.js.map +1 -1
  882. package/dist/lexical-proxy/@lexical-react/LexicalHashtagPlugin.js +1 -0
  883. package/dist/lexical-proxy/@lexical-react/LexicalHashtagPlugin.js.map +1 -1
  884. package/dist/lexical-proxy/@lexical-react/LexicalHistoryPlugin.js +1 -0
  885. package/dist/lexical-proxy/@lexical-react/LexicalHistoryPlugin.js.map +1 -1
  886. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRuleNode.js +1 -0
  887. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRuleNode.js.map +1 -1
  888. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRulePlugin.js +1 -0
  889. package/dist/lexical-proxy/@lexical-react/LexicalHorizontalRulePlugin.js.map +1 -1
  890. package/dist/lexical-proxy/@lexical-react/LexicalLinkPlugin.js +1 -0
  891. package/dist/lexical-proxy/@lexical-react/LexicalLinkPlugin.js.map +1 -1
  892. package/dist/lexical-proxy/@lexical-react/LexicalListPlugin.js +1 -0
  893. package/dist/lexical-proxy/@lexical-react/LexicalListPlugin.js.map +1 -1
  894. package/dist/lexical-proxy/@lexical-react/LexicalMarkdownShortcutPlugin.js +1 -0
  895. package/dist/lexical-proxy/@lexical-react/LexicalMarkdownShortcutPlugin.js.map +1 -1
  896. package/dist/lexical-proxy/@lexical-react/LexicalNestedComposer.js +1 -0
  897. package/dist/lexical-proxy/@lexical-react/LexicalNestedComposer.js.map +1 -1
  898. package/dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js +1 -0
  899. package/dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js.map +1 -1
  900. package/dist/lexical-proxy/@lexical-react/LexicalNodeEventPlugin.js +1 -0
  901. package/dist/lexical-proxy/@lexical-react/LexicalNodeEventPlugin.js.map +1 -1
  902. package/dist/lexical-proxy/@lexical-react/LexicalNodeMenuPlugin.js +1 -0
  903. package/dist/lexical-proxy/@lexical-react/LexicalNodeMenuPlugin.js.map +1 -1
  904. package/dist/lexical-proxy/@lexical-react/LexicalOnChangePlugin.js +1 -0
  905. package/dist/lexical-proxy/@lexical-react/LexicalOnChangePlugin.js.map +1 -1
  906. package/dist/lexical-proxy/@lexical-react/LexicalPlainTextPlugin.js +1 -0
  907. package/dist/lexical-proxy/@lexical-react/LexicalPlainTextPlugin.js.map +1 -1
  908. package/dist/lexical-proxy/@lexical-react/LexicalRichTextPlugin.js +1 -0
  909. package/dist/lexical-proxy/@lexical-react/LexicalRichTextPlugin.js.map +1 -1
  910. package/dist/lexical-proxy/@lexical-react/LexicalTabIndentationPlugin.js +1 -0
  911. package/dist/lexical-proxy/@lexical-react/LexicalTabIndentationPlugin.js.map +1 -1
  912. package/dist/lexical-proxy/@lexical-react/LexicalTableOfContentsPlugin.js +1 -0
  913. package/dist/lexical-proxy/@lexical-react/LexicalTableOfContentsPlugin.js.map +1 -1
  914. package/dist/lexical-proxy/@lexical-react/LexicalTablePlugin.js +1 -0
  915. package/dist/lexical-proxy/@lexical-react/LexicalTablePlugin.js.map +1 -1
  916. package/dist/lexical-proxy/@lexical-react/LexicalTreeView.js +1 -0
  917. package/dist/lexical-proxy/@lexical-react/LexicalTreeView.js.map +1 -1
  918. package/dist/lexical-proxy/@lexical-react/LexicalTypeaheadMenuPlugin.js +1 -0
  919. package/dist/lexical-proxy/@lexical-react/LexicalTypeaheadMenuPlugin.js.map +1 -1
  920. package/dist/lexical-proxy/@lexical-react/useLexicalEditable.js +1 -0
  921. package/dist/lexical-proxy/@lexical-react/useLexicalEditable.js.map +1 -1
  922. package/dist/lexical-proxy/@lexical-react/useLexicalIsTextContentEmpty.js +1 -0
  923. package/dist/lexical-proxy/@lexical-react/useLexicalIsTextContentEmpty.js.map +1 -1
  924. package/dist/lexical-proxy/@lexical-react/useLexicalNodeSelection.js +1 -0
  925. package/dist/lexical-proxy/@lexical-react/useLexicalNodeSelection.js.map +1 -1
  926. package/dist/lexical-proxy/@lexical-react/useLexicalSubscription.js +1 -0
  927. package/dist/lexical-proxy/@lexical-react/useLexicalSubscription.js.map +1 -1
  928. package/dist/lexical-proxy/@lexical-react/useLexicalTextEntity.js +1 -0
  929. package/dist/lexical-proxy/@lexical-react/useLexicalTextEntity.js.map +1 -1
  930. package/dist/lexical-proxy/@lexical-rich-text.js +1 -0
  931. package/dist/lexical-proxy/@lexical-rich-text.js.map +1 -1
  932. package/dist/lexical-proxy/@lexical-selection.js +1 -0
  933. package/dist/lexical-proxy/@lexical-selection.js.map +1 -1
  934. package/dist/lexical-proxy/@lexical-utils.js +1 -0
  935. package/dist/lexical-proxy/@lexical-utils.js.map +1 -1
  936. package/dist/lexical-proxy/lexical.js +1 -0
  937. package/dist/lexical-proxy/lexical.js.map +1 -1
  938. package/dist/nodeTypes.js +35 -1
  939. package/dist/nodeTypes.js.map +1 -1
  940. package/dist/packages/@lexical/markdown/MarkdownExport.js +184 -179
  941. package/dist/packages/@lexical/markdown/MarkdownExport.js.map +1 -1
  942. package/dist/packages/@lexical/markdown/MarkdownImport.js +174 -169
  943. package/dist/packages/@lexical/markdown/MarkdownImport.js.map +1 -1
  944. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +258 -268
  945. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +1 -1
  946. package/dist/packages/@lexical/markdown/MarkdownTransformers.js +305 -209
  947. package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +1 -1
  948. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +76 -73
  949. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +1 -1
  950. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +59 -48
  951. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +1 -1
  952. package/dist/packages/@lexical/markdown/importTextTransformers.js +51 -45
  953. package/dist/packages/@lexical/markdown/importTextTransformers.js.map +1 -1
  954. package/dist/packages/@lexical/markdown/index.js +33 -14
  955. package/dist/packages/@lexical/markdown/index.js.map +1 -1
  956. package/dist/packages/@lexical/markdown/utils.js +217 -185
  957. package/dist/packages/@lexical/markdown/utils.js.map +1 -1
  958. package/dist/populateGraphQL/defaultValue.js +29 -24
  959. package/dist/populateGraphQL/defaultValue.js.map +1 -1
  960. package/dist/populateGraphQL/populate.js +26 -37
  961. package/dist/populateGraphQL/populate.js.map +1 -1
  962. package/dist/populateGraphQL/populateLexicalPopulationPromises.js +34 -50
  963. package/dist/populateGraphQL/populateLexicalPopulationPromises.js.map +1 -1
  964. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js +35 -42
  965. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js.map +1 -1
  966. package/dist/types.js +40 -1
  967. package/dist/types.js.map +1 -1
  968. package/dist/utilities/applyBaseFilterToFields.js +81 -84
  969. package/dist/utilities/applyBaseFilterToFields.js.map +1 -1
  970. package/dist/utilities/buildEditorState.js +39 -40
  971. package/dist/utilities/buildEditorState.js.map +1 -1
  972. package/dist/utilities/buildInitialState.js +51 -52
  973. package/dist/utilities/buildInitialState.js.map +1 -1
  974. package/dist/utilities/createClientFeature.js +42 -48
  975. package/dist/utilities/createClientFeature.js.map +1 -1
  976. package/dist/utilities/createServerFeature.js +38 -48
  977. package/dist/utilities/createServerFeature.js.map +1 -1
  978. package/dist/utilities/editorConfigFactory.js +78 -79
  979. package/dist/utilities/editorConfigFactory.js.map +1 -1
  980. package/dist/utilities/fieldsDrawer/Drawer.js +45 -70
  981. package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
  982. package/dist/utilities/fieldsDrawer/DrawerContent.js +130 -120
  983. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  984. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js +64 -115
  985. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js.map +1 -1
  986. package/dist/utilities/fieldsDrawer/useLexicalDrawer.js +76 -121
  987. package/dist/utilities/fieldsDrawer/useLexicalDrawer.js.map +1 -1
  988. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js +79 -141
  989. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js.map +1 -1
  990. package/dist/utilities/forEachNodeRecursively.js +19 -24
  991. package/dist/utilities/forEachNodeRecursively.js.map +1 -1
  992. package/dist/utilities/generateImportMap.js +43 -49
  993. package/dist/utilities/generateImportMap.js.map +1 -1
  994. package/dist/utilities/generateSchemaMap.js +32 -37
  995. package/dist/utilities/generateSchemaMap.js.map +1 -1
  996. package/dist/utilities/getDefaultSanitizedEditorConfig.js +12 -14
  997. package/dist/utilities/getDefaultSanitizedEditorConfig.js.map +1 -1
  998. package/dist/utilities/initLexicalFeatures.js +68 -65
  999. package/dist/utilities/initLexicalFeatures.js.map +1 -1
  1000. package/dist/utilities/jsx/collectTopLevelJSXInLines.js +26 -29
  1001. package/dist/utilities/jsx/collectTopLevelJSXInLines.js.map +1 -1
  1002. package/dist/utilities/jsx/declare.d.js.map +1 -1
  1003. package/dist/utilities/jsx/extractPropsFromJSXPropsString.js +100 -102
  1004. package/dist/utilities/jsx/extractPropsFromJSXPropsString.js.map +1 -1
  1005. package/dist/utilities/jsx/jsx.js +76 -80
  1006. package/dist/utilities/jsx/jsx.js.map +1 -1
  1007. package/dist/utilities/jsx/jsx.spec.js +225 -171
  1008. package/dist/utilities/jsx/jsx.spec.js.map +1 -1
  1009. package/dist/utilities/migrateSlateToLexical/index.js +112 -128
  1010. package/dist/utilities/migrateSlateToLexical/index.js.map +1 -1
  1011. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js +74 -78
  1012. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js.map +1 -1
  1013. package/dist/utilities/recurseNodeTree.js +22 -25
  1014. package/dist/utilities/recurseNodeTree.js.map +1 -1
  1015. package/dist/utilities/upgradeLexicalData/index.js +88 -102
  1016. package/dist/utilities/upgradeLexicalData/index.js.map +1 -1
  1017. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js +78 -80
  1018. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
  1019. package/dist/utilities/useLexicalFeature.js +14 -16
  1020. package/dist/utilities/useLexicalFeature.js.map +1 -1
  1021. package/dist/utilities/useRunDeprioritized.js +41 -37
  1022. package/dist/utilities/useRunDeprioritized.js.map +1 -1
  1023. package/dist/validate/hasText.js +21 -20
  1024. package/dist/validate/hasText.js.map +1 -1
  1025. package/dist/validate/index.js +22 -28
  1026. package/dist/validate/index.js.map +1 -1
  1027. package/dist/validate/validateNodes.js +28 -31
  1028. package/dist/validate/validateNodes.js.map +1 -1
  1029. package/package.json +6 -6
  1030. package/dist/exports/client/Component-DOSSWC76.js +0 -2
  1031. package/dist/exports/client/Component-DOSSWC76.js.map +0 -7
  1032. package/dist/exports/client/Component-MBLHTKDK.js +0 -2
  1033. package/dist/exports/client/Component-MBLHTKDK.js.map +0 -7
  1034. package/dist/exports/client/Field-2A2VQXKP.js +0 -2
  1035. package/dist/exports/client/Field-2A2VQXKP.js.map +0 -7
  1036. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js +0 -2
  1037. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js.map +0 -7
  1038. package/dist/exports/client/bundled.css +0 -1
  1039. package/dist/exports/client/chunk-AFXLIYGL.js +0 -12
  1040. package/dist/exports/client/chunk-AFXLIYGL.js.map +0 -7
  1041. package/dist/exports/client/chunk-BZZVLW4U.js +0 -2
  1042. package/dist/exports/client/chunk-BZZVLW4U.js.map +0 -7
  1043. package/dist/exports/client/chunk-DBWINSQN.js +0 -2
  1044. package/dist/exports/client/chunk-DBWINSQN.js.map +0 -7
  1045. package/dist/exports/client/chunk-F26IQ5RE.js +0 -2
  1046. package/dist/exports/client/chunk-F26IQ5RE.js.map +0 -7
  1047. package/dist/exports/client/chunk-INBEEENE.js +0 -2
  1048. package/dist/exports/client/chunk-INBEEENE.js.map +0 -7
  1049. package/dist/exports/client/chunk-O6XRT2H3.js +0 -2
  1050. package/dist/exports/client/chunk-O6XRT2H3.js.map +0 -7
  1051. package/dist/exports/client/chunk-TRHFMZ3F.js +0 -2
  1052. package/dist/exports/client/chunk-TRHFMZ3F.js.map +0 -7
  1053. package/dist/exports/client/component-YQ22OGQW.js +0 -2
  1054. package/dist/exports/client/component-YQ22OGQW.js.map +0 -7
  1055. package/dist/exports/client/componentInline-5OVPQNQH.js +0 -2
  1056. package/dist/exports/client/componentInline-5OVPQNQH.js.map +0 -7
@@ -1,6 +1,5 @@
1
1
  'use client';
2
-
3
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
4
3
  import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js';
5
4
  import { useLexicalEditable } from '@lexical/react/useLexicalEditable';
6
5
  import { getTranslation } from '@payloadcms/translations';
@@ -13,198 +12,252 @@ import { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js';
13
12
  import { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js';
14
13
  import { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js';
15
14
  import { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js';
15
+ import './index.scss';
16
16
  const initialParams = {
17
- depth: 0
17
+ depth: 0
18
18
  };
19
- export const UploadComponent = props => {
20
- const {
21
- className: baseClass,
22
- data: {
23
- fields,
24
- relationTo,
25
- value
26
- },
27
- format,
28
- nodeKey
29
- } = props;
30
- if (typeof value === 'object') {
31
- throw new Error('Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.');
32
- }
33
- const {
34
- config: {
35
- routes: {
36
- api
37
- },
38
- serverURL
39
- },
40
- getEntityConfig
41
- } = useConfig();
42
- const uploadRef = useRef(null);
43
- const {
44
- uuid
45
- } = useEditorConfigContext();
46
- const editDepth = useEditDepth();
47
- const [editor] = useLexicalComposerContext();
48
- const {
49
- editorConfig,
50
- fieldProps: {
51
- schemaPath
19
+ export const UploadComponent = (props)=>{
20
+ const { className: baseClass, data: { fields, relationTo, value }, format, nodeKey } = props;
21
+ if (typeof value === 'object') {
22
+ throw new Error('Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.');
52
23
  }
53
- } = useEditorConfigContext();
54
- const isEditable = useLexicalEditable();
55
- const {
56
- i18n,
57
- t
58
- } = useTranslation();
59
- const [cacheBust, dispatchCacheBust] = useReducer(state => state + 1, 0);
60
- const [relatedCollection] = useState(() => getEntityConfig({
61
- collectionSlug: relationTo
62
- }));
63
- const componentID = useId();
64
- const extraFieldsDrawerSlug = formatDrawerSlug({
65
- slug: `lexical-upload-drawer-` + uuid + componentID,
66
- depth: editDepth
67
- });
68
- // Need to use hook to initialize useEffect that restores cursor position
69
- const {
70
- toggleDrawer
71
- } = useLexicalDrawer(extraFieldsDrawerSlug, true);
72
- const {
73
- closeDocumentDrawer,
74
- DocumentDrawer,
75
- DocumentDrawerToggler
76
- } = useLexicalDocumentDrawer({
77
- id: value,
78
- collectionSlug: relatedCollection.slug
79
- });
80
- // Get the referenced document
81
- const [{
82
- data
83
- }, {
84
- setParams
85
- }] = usePayloadAPI(formatAdminURL({
86
- apiRoute: api,
87
- path: `/${relatedCollection.slug}/${value}`,
88
- serverURL
89
- }), {
90
- initialParams
91
- });
92
- const thumbnailSRC = data?.thumbnailURL || data?.url;
93
- const removeUpload = useCallback(() => {
94
- editor.update(() => {
95
- $getNodeByKey(nodeKey)?.remove();
24
+ const { config: { routes: { api }, serverURL }, getEntityConfig } = useConfig();
25
+ const uploadRef = useRef(null);
26
+ const { uuid } = useEditorConfigContext();
27
+ const editDepth = useEditDepth();
28
+ const [editor] = useLexicalComposerContext();
29
+ const { editorConfig, fieldProps: { schemaPath } } = useEditorConfigContext();
30
+ const isEditable = useLexicalEditable();
31
+ const { i18n, t } = useTranslation();
32
+ const [cacheBust, dispatchCacheBust] = useReducer((state)=>state + 1, 0);
33
+ const [relatedCollection] = useState(()=>getEntityConfig({
34
+ collectionSlug: relationTo
35
+ }));
36
+ const componentID = useId();
37
+ const extraFieldsDrawerSlug = formatDrawerSlug({
38
+ slug: `lexical-upload-drawer-` + uuid + componentID,
39
+ // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID
40
+ depth: editDepth
96
41
  });
97
- }, [editor, nodeKey]);
98
- const updateUpload = useCallback(_data => {
99
- setParams({
100
- ...initialParams,
101
- cacheBust
42
+ // Need to use hook to initialize useEffect that restores cursor position
43
+ const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true);
44
+ const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({
45
+ id: value,
46
+ collectionSlug: relatedCollection.slug
102
47
  });
103
- dispatchCacheBust();
104
- closeDocumentDrawer();
105
- }, [setParams, cacheBust, closeDocumentDrawer]);
106
- const hasExtraFields = editorConfig?.resolvedFeatureMap?.get('upload')?.sanitizedClientFeatureProps.collections?.[relatedCollection.slug]?.hasExtraFields;
107
- const onExtraFieldsDrawerSubmit = useCallback((_, data_0) => {
108
- // Update lexical node (with key nodeKey) with new data
109
- editor.update(() => {
110
- const uploadNode = $getNodeByKey(nodeKey);
111
- if (uploadNode) {
112
- const newData = {
113
- ...uploadNode.getData(),
114
- fields: data_0
115
- };
116
- uploadNode.setData(newData);
117
- }
48
+ // Get the referenced document
49
+ const [{ data }, { setParams }] = usePayloadAPI(formatAdminURL({
50
+ apiRoute: api,
51
+ path: `/${relatedCollection.slug}/${value}`,
52
+ serverURL
53
+ }), {
54
+ initialParams
118
55
  });
119
- }, [editor, nodeKey]);
120
- const aspectRatio = thumbnailSRC && data?.width && data?.height ? data.width > data.height ? 'landscape' : 'portrait' : 'landscape';
121
- return /*#__PURE__*/_jsxs("div", {
122
- className: `${baseClass}__contents ${baseClass}__contents--${aspectRatio}`,
123
- "data-align": format || undefined,
124
- "data-filename": data?.filename,
125
- ref: uploadRef,
126
- children: [/*#__PURE__*/_jsxs("div", {
127
- className: `${baseClass}__card`,
128
- children: [/*#__PURE__*/_jsxs("div", {
129
- className: `${baseClass}__media`,
130
- children: [/*#__PURE__*/_jsx(Thumbnail, {
131
- collectionSlug: relationTo,
132
- fileSrc: isImage(data?.mimeType) ? thumbnailSRC : null,
133
- height: data?.height,
134
- size: "none",
135
- width: data?.width
136
- }), isEditable && /*#__PURE__*/_jsx("div", {
137
- className: `${baseClass}__overlay ${baseClass}__floater`,
138
- children: /*#__PURE__*/_jsxs("div", {
139
- className: `${baseClass}__actions`,
140
- role: "toolbar",
141
- children: [hasExtraFields ? /*#__PURE__*/_jsx(Button, {
142
- buttonStyle: "icon-label",
143
- className: `${baseClass}__upload-drawer-toggler`,
144
- disabled: !isEditable,
145
- el: "button",
146
- icon: "edit",
147
- onClick: toggleDrawer,
148
- round: true,
149
- size: "medium",
150
- tooltip: t('fields:editRelationship')
151
- }) : null, /*#__PURE__*/_jsx(Button, {
152
- buttonStyle: "icon-label",
153
- className: `${baseClass}__swap-drawer-toggler`,
154
- disabled: !isEditable,
155
- el: "button",
156
- icon: "swap",
157
- onClick: () => {
158
- editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {
159
- replace: {
160
- nodeKey
161
- }
162
- });
163
- },
164
- round: true,
165
- size: "medium",
166
- tooltip: t('fields:swapUpload')
167
- }), /*#__PURE__*/_jsx(Button, {
168
- buttonStyle: "icon-label",
169
- className: `${baseClass}__removeButton`,
170
- disabled: !isEditable,
171
- icon: "x",
172
- onClick: e => {
173
- e.preventDefault();
174
- removeUpload();
175
- },
176
- round: true,
177
- size: "medium",
178
- tooltip: t('fields:removeUpload')
179
- })]
180
- })
181
- })]
182
- }), /*#__PURE__*/_jsxs("div", {
183
- className: `${baseClass}__metaOverlay ${baseClass}__floater`,
184
- children: [/*#__PURE__*/_jsx(DocumentDrawerToggler, {
185
- className: `${baseClass}__doc-drawer-toggler`,
186
- children: /*#__PURE__*/_jsx("strong", {
187
- className: `${baseClass}__filename`,
188
- children: data?.filename || t('general:untitled')
189
- })
190
- }), /*#__PURE__*/_jsx("div", {
191
- className: `${baseClass}__collectionLabel`,
192
- children: getTranslation(relatedCollection.labels.singular, i18n)
193
- })]
194
- })]
195
- }), value ? /*#__PURE__*/_jsx(DocumentDrawer, {
196
- onSave: updateUpload
197
- }) : null, hasExtraFields ? /*#__PURE__*/_jsx(FieldsDrawer, {
198
- data: fields,
199
- drawerSlug: extraFieldsDrawerSlug,
200
- drawerTitle: t('general:editLabel', {
201
- label: getTranslation(relatedCollection.labels.singular, i18n)
202
- }),
203
- featureKey: "upload",
204
- handleDrawerSubmit: onExtraFieldsDrawerSubmit,
205
- schemaPath: schemaPath,
206
- schemaPathSuffix: relatedCollection.slug
207
- }) : null]
208
- });
56
+ const thumbnailSRC = data?.thumbnailURL || data?.url;
57
+ const removeUpload = useCallback(()=>{
58
+ editor.update(()=>{
59
+ $getNodeByKey(nodeKey)?.remove();
60
+ });
61
+ }, [
62
+ editor,
63
+ nodeKey
64
+ ]);
65
+ const updateUpload = useCallback((_data)=>{
66
+ setParams({
67
+ ...initialParams,
68
+ cacheBust
69
+ });
70
+ // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed
71
+ dispatchCacheBust();
72
+ closeDocumentDrawer();
73
+ }, [
74
+ setParams,
75
+ cacheBust,
76
+ closeDocumentDrawer
77
+ ]);
78
+ const hasExtraFields = editorConfig?.resolvedFeatureMap?.get('upload')?.sanitizedClientFeatureProps.collections?.[relatedCollection.slug]?.hasExtraFields;
79
+ const onExtraFieldsDrawerSubmit = useCallback((_, data)=>{
80
+ // Update lexical node (with key nodeKey) with new data
81
+ editor.update(()=>{
82
+ const uploadNode = $getNodeByKey(nodeKey);
83
+ if (uploadNode) {
84
+ const newData = {
85
+ ...uploadNode.getData(),
86
+ fields: data
87
+ };
88
+ uploadNode.setData(newData);
89
+ }
90
+ });
91
+ }, [
92
+ editor,
93
+ nodeKey
94
+ ]);
95
+ const aspectRatio = thumbnailSRC && data?.width && data?.height ? data.width > data.height ? 'landscape' : 'portrait' : 'landscape';
96
+ return /*#__PURE__*/ _jsxDEV("div", {
97
+ className: `${baseClass}__contents ${baseClass}__contents--${aspectRatio}`,
98
+ "data-align": format || undefined,
99
+ "data-filename": data?.filename,
100
+ ref: uploadRef,
101
+ children: [
102
+ /*#__PURE__*/ _jsxDEV("div", {
103
+ className: `${baseClass}__card`,
104
+ children: [
105
+ /*#__PURE__*/ _jsxDEV("div", {
106
+ className: `${baseClass}__media`,
107
+ children: [
108
+ /*#__PURE__*/ _jsxDEV(Thumbnail, {
109
+ collectionSlug: relationTo,
110
+ fileSrc: isImage(data?.mimeType) ? thumbnailSRC : null,
111
+ height: data?.height,
112
+ size: "none",
113
+ width: data?.width
114
+ }, void 0, false, {
115
+ fileName: "src/features/upload/client/component/index.tsx",
116
+ lineNumber: 160,
117
+ columnNumber: 11
118
+ }, this),
119
+ isEditable && /*#__PURE__*/ _jsxDEV("div", {
120
+ className: `${baseClass}__overlay ${baseClass}__floater`,
121
+ children: /*#__PURE__*/ _jsxDEV("div", {
122
+ className: `${baseClass}__actions`,
123
+ role: "toolbar",
124
+ children: [
125
+ hasExtraFields ? /*#__PURE__*/ _jsxDEV(Button, {
126
+ buttonStyle: "icon-label",
127
+ className: `${baseClass}__upload-drawer-toggler`,
128
+ disabled: !isEditable,
129
+ el: "button",
130
+ icon: "edit",
131
+ onClick: toggleDrawer,
132
+ round: true,
133
+ size: "medium",
134
+ tooltip: t('fields:editRelationship')
135
+ }, void 0, false, {
136
+ fileName: "src/features/upload/client/component/index.tsx",
137
+ lineNumber: 172,
138
+ columnNumber: 19
139
+ }, this) : null,
140
+ /*#__PURE__*/ _jsxDEV(Button, {
141
+ buttonStyle: "icon-label",
142
+ className: `${baseClass}__swap-drawer-toggler`,
143
+ disabled: !isEditable,
144
+ el: "button",
145
+ icon: "swap",
146
+ onClick: ()=>{
147
+ editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {
148
+ replace: {
149
+ nodeKey
150
+ }
151
+ });
152
+ },
153
+ round: true,
154
+ size: "medium",
155
+ tooltip: t('fields:swapUpload')
156
+ }, void 0, false, {
157
+ fileName: "src/features/upload/client/component/index.tsx",
158
+ lineNumber: 185,
159
+ columnNumber: 17
160
+ }, this),
161
+ /*#__PURE__*/ _jsxDEV(Button, {
162
+ buttonStyle: "icon-label",
163
+ className: `${baseClass}__removeButton`,
164
+ disabled: !isEditable,
165
+ icon: "x",
166
+ onClick: (e)=>{
167
+ e.preventDefault();
168
+ removeUpload();
169
+ },
170
+ round: true,
171
+ size: "medium",
172
+ tooltip: t('fields:removeUpload')
173
+ }, void 0, false, {
174
+ fileName: "src/features/upload/client/component/index.tsx",
175
+ lineNumber: 201,
176
+ columnNumber: 17
177
+ }, this)
178
+ ]
179
+ }, void 0, true, {
180
+ fileName: "src/features/upload/client/component/index.tsx",
181
+ lineNumber: 170,
182
+ columnNumber: 15
183
+ }, this)
184
+ }, void 0, false, {
185
+ fileName: "src/features/upload/client/component/index.tsx",
186
+ lineNumber: 169,
187
+ columnNumber: 13
188
+ }, this)
189
+ ]
190
+ }, void 0, true, {
191
+ fileName: "src/features/upload/client/component/index.tsx",
192
+ lineNumber: 159,
193
+ columnNumber: 9
194
+ }, this),
195
+ /*#__PURE__*/ _jsxDEV("div", {
196
+ className: `${baseClass}__metaOverlay ${baseClass}__floater`,
197
+ children: [
198
+ /*#__PURE__*/ _jsxDEV(DocumentDrawerToggler, {
199
+ className: `${baseClass}__doc-drawer-toggler`,
200
+ children: /*#__PURE__*/ _jsxDEV("strong", {
201
+ className: `${baseClass}__filename`,
202
+ children: data?.filename || t('general:untitled')
203
+ }, void 0, false, {
204
+ fileName: "src/features/upload/client/component/index.tsx",
205
+ lineNumber: 221,
206
+ columnNumber: 13
207
+ }, this)
208
+ }, void 0, false, {
209
+ fileName: "src/features/upload/client/component/index.tsx",
210
+ lineNumber: 220,
211
+ columnNumber: 11
212
+ }, this),
213
+ /*#__PURE__*/ _jsxDEV("div", {
214
+ className: `${baseClass}__collectionLabel`,
215
+ children: getTranslation(relatedCollection.labels.singular, i18n)
216
+ }, void 0, false, {
217
+ fileName: "src/features/upload/client/component/index.tsx",
218
+ lineNumber: 225,
219
+ columnNumber: 11
220
+ }, this)
221
+ ]
222
+ }, void 0, true, {
223
+ fileName: "src/features/upload/client/component/index.tsx",
224
+ lineNumber: 219,
225
+ columnNumber: 9
226
+ }, this)
227
+ ]
228
+ }, void 0, true, {
229
+ fileName: "src/features/upload/client/component/index.tsx",
230
+ lineNumber: 158,
231
+ columnNumber: 7
232
+ }, this),
233
+ value ? /*#__PURE__*/ _jsxDEV(DocumentDrawer, {
234
+ onSave: updateUpload
235
+ }, void 0, false, {
236
+ fileName: "src/features/upload/client/component/index.tsx",
237
+ lineNumber: 231,
238
+ columnNumber: 16
239
+ }, this) : null,
240
+ hasExtraFields ? /*#__PURE__*/ _jsxDEV(FieldsDrawer, {
241
+ data: fields,
242
+ drawerSlug: extraFieldsDrawerSlug,
243
+ drawerTitle: t('general:editLabel', {
244
+ label: getTranslation(relatedCollection.labels.singular, i18n)
245
+ }),
246
+ featureKey: "upload",
247
+ handleDrawerSubmit: onExtraFieldsDrawerSubmit,
248
+ schemaPath: schemaPath,
249
+ schemaPathSuffix: relatedCollection.slug
250
+ }, void 0, false, {
251
+ fileName: "src/features/upload/client/component/index.tsx",
252
+ lineNumber: 233,
253
+ columnNumber: 9
254
+ }, this) : null
255
+ ]
256
+ }, void 0, true, {
257
+ fileName: "src/features/upload/client/component/index.tsx",
258
+ lineNumber: 152,
259
+ columnNumber: 5
260
+ }, this);
209
261
  };
262
+
210
263
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useLexicalComposerContext","useLexicalEditable","getTranslation","Button","formatDrawerSlug","Thumbnail","useConfig","useEditDepth","usePayloadAPI","useTranslation","$getNodeByKey","formatAdminURL","isImage","React","useCallback","useId","useReducer","useRef","useState","useEditorConfigContext","FieldsDrawer","useLexicalDocumentDrawer","useLexicalDrawer","INSERT_UPLOAD_WITH_DRAWER_COMMAND","initialParams","depth","UploadComponent","props","className","baseClass","data","fields","relationTo","value","format","nodeKey","Error","config","routes","api","serverURL","getEntityConfig","uploadRef","uuid","editDepth","editor","editorConfig","fieldProps","schemaPath","isEditable","i18n","t","cacheBust","dispatchCacheBust","state","relatedCollection","collectionSlug","componentID","extraFieldsDrawerSlug","slug","toggleDrawer","closeDocumentDrawer","DocumentDrawer","DocumentDrawerToggler","id","setParams","apiRoute","path","thumbnailSRC","thumbnailURL","url","removeUpload","update","remove","updateUpload","_data","hasExtraFields","resolvedFeatureMap","get","sanitizedClientFeatureProps","collections","onExtraFieldsDrawerSubmit","_","uploadNode","newData","getData","setData","aspectRatio","width","height","_jsxs","undefined","filename","ref","_jsx","fileSrc","mimeType","size","role","buttonStyle","disabled","el","icon","onClick","round","tooltip","dispatchCommand","replace","e","preventDefault","labels","singular","onSave","drawerSlug","drawerTitle","label","featureKey","handleDrawerSubmit","schemaPathSuffix"],"sources":["../../../../../src/features/upload/client/component/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Data, FormState, JsonObject } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n formatDrawerSlug,\n Thumbnail,\n useConfig,\n useEditDepth,\n usePayloadAPI,\n useTranslation,\n} from '@payloadcms/ui'\nimport { $getNodeByKey, type ElementFormatType } from 'lexical'\nimport { formatAdminURL, isImage } from 'payload/shared'\nimport React, { useCallback, useId, useReducer, useRef, useState } from 'react'\n\nimport type { BaseClientFeatureProps } from '../../../typesClient.js'\nimport type { UploadData } from '../../server/nodes/UploadNode.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\nimport type { UploadNode } from '../nodes/UploadNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'\nimport { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'\nimport { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'\nimport { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'\nimport './index.scss'\n\nconst initialParams = {\n depth: 0,\n}\n\nexport type ElementProps = {\n className: string\n data: UploadData\n format?: ElementFormatType\n nodeKey: string\n}\n\nexport const UploadComponent: React.FC<ElementProps> = (props) => {\n const {\n className: baseClass,\n data: { fields, relationTo, value },\n format,\n nodeKey,\n } = props\n\n if (typeof value === 'object') {\n throw new Error(\n 'Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.',\n )\n }\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const uploadRef = useRef<HTMLDivElement | null>(null)\n const { uuid } = useEditorConfigContext()\n const editDepth = useEditDepth()\n const [editor] = useLexicalComposerContext()\n\n const {\n editorConfig,\n fieldProps: { schemaPath },\n } = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n const { i18n, t } = useTranslation()\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0)\n const [relatedCollection] = useState<ClientCollectionConfig>(() =>\n getEntityConfig({ collectionSlug: relationTo }),\n )\n\n const componentID = useId()\n\n const extraFieldsDrawerSlug = formatDrawerSlug({\n slug: `lexical-upload-drawer-` + uuid + componentID, // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID\n depth: editDepth,\n })\n\n // Need to use hook to initialize useEffect that restores cursor position\n const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true)\n\n const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({\n id: value,\n collectionSlug: relatedCollection.slug,\n })\n\n // Get the referenced document\n const [{ data }, { setParams }] = usePayloadAPI(\n formatAdminURL({ apiRoute: api, path: `/${relatedCollection.slug}/${value}`, serverURL }),\n { initialParams },\n )\n\n const thumbnailSRC = data?.thumbnailURL || data?.url\n\n const removeUpload = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n const updateUpload = useCallback(\n (_data: Data) => {\n setParams({\n ...initialParams,\n cacheBust, // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed\n })\n\n dispatchCacheBust()\n closeDocumentDrawer()\n },\n [setParams, cacheBust, closeDocumentDrawer],\n )\n\n const hasExtraFields = (\n editorConfig?.resolvedFeatureMap?.get('upload')\n ?.sanitizedClientFeatureProps as BaseClientFeatureProps<UploadFeaturePropsClient>\n ).collections?.[relatedCollection.slug]?.hasExtraFields\n\n const onExtraFieldsDrawerSubmit = useCallback(\n (_: FormState, data: JsonObject) => {\n // Update lexical node (with key nodeKey) with new data\n editor.update(() => {\n const uploadNode: null | UploadNode = $getNodeByKey(nodeKey)\n if (uploadNode) {\n const newData: UploadData = {\n ...uploadNode.getData(),\n fields: data,\n }\n uploadNode.setData(newData)\n }\n })\n },\n [editor, nodeKey],\n )\n\n const aspectRatio =\n thumbnailSRC && data?.width && data?.height\n ? data.width > data.height\n ? 'landscape'\n : 'portrait'\n : 'landscape'\n\n return (\n <div\n className={`${baseClass}__contents ${baseClass}__contents--${aspectRatio}`}\n data-align={format || undefined}\n data-filename={data?.filename}\n ref={uploadRef}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__media`}>\n <Thumbnail\n collectionSlug={relationTo}\n fileSrc={isImage(data?.mimeType) ? thumbnailSRC : null}\n height={data?.height}\n size=\"none\"\n width={data?.width}\n />\n\n {isEditable && (\n <div className={`${baseClass}__overlay ${baseClass}__floater`}>\n <div className={`${baseClass}__actions`} role=\"toolbar\">\n {hasExtraFields ? (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__upload-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"edit\"\n onClick={toggleDrawer}\n round\n size=\"medium\"\n tooltip={t('fields:editRelationship')}\n />\n ) : null}\n\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__swap-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"swap\"\n onClick={() => {\n editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {\n replace: { nodeKey },\n })\n }}\n round\n size=\"medium\"\n tooltip={t('fields:swapUpload')}\n />\n\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__removeButton`}\n disabled={!isEditable}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeUpload()\n }}\n round\n size=\"medium\"\n tooltip={t('fields:removeUpload')}\n />\n </div>\n </div>\n )}\n </div>\n\n <div className={`${baseClass}__metaOverlay ${baseClass}__floater`}>\n <DocumentDrawerToggler className={`${baseClass}__doc-drawer-toggler`}>\n <strong className={`${baseClass}__filename`}>\n {data?.filename || t('general:untitled')}\n </strong>\n </DocumentDrawerToggler>\n <div className={`${baseClass}__collectionLabel`}>\n {getTranslation(relatedCollection.labels.singular, i18n)}\n </div>\n </div>\n </div>\n\n {value ? <DocumentDrawer onSave={updateUpload} /> : null}\n {hasExtraFields ? (\n <FieldsDrawer\n data={fields}\n drawerSlug={extraFieldsDrawerSlug}\n drawerTitle={t('general:editLabel', {\n label: getTranslation(relatedCollection.labels.singular, i18n),\n })}\n featureKey=\"upload\"\n handleDrawerSubmit={onExtraFieldsDrawerSubmit}\n schemaPath={schemaPath}\n schemaPathSuffix={relatedCollection.slug}\n />\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"sources":["../../../../../src/features/upload/client/component/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Data, FormState, JsonObject } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n formatDrawerSlug,\n Thumbnail,\n useConfig,\n useEditDepth,\n usePayloadAPI,\n useTranslation,\n} from '@payloadcms/ui'\nimport { $getNodeByKey, type ElementFormatType } from 'lexical'\nimport { formatAdminURL, isImage } from 'payload/shared'\nimport React, { useCallback, useId, useReducer, useRef, useState } from 'react'\n\nimport type { BaseClientFeatureProps } from '../../../typesClient.js'\nimport type { UploadData } from '../../server/nodes/UploadNode.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\nimport type { UploadNode } from '../nodes/UploadNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'\nimport { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'\nimport { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'\nimport { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'\nimport './index.scss'\n\nconst initialParams = {\n depth: 0,\n}\n\nexport type ElementProps = {\n className: string\n data: UploadData\n format?: ElementFormatType\n nodeKey: string\n}\n\nexport const UploadComponent: React.FC<ElementProps> = (props) => {\n const {\n className: baseClass,\n data: { fields, relationTo, value },\n format,\n nodeKey,\n } = props\n\n if (typeof value === 'object') {\n throw new Error(\n 'Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.',\n )\n }\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const uploadRef = useRef<HTMLDivElement | null>(null)\n const { uuid } = useEditorConfigContext()\n const editDepth = useEditDepth()\n const [editor] = useLexicalComposerContext()\n\n const {\n editorConfig,\n fieldProps: { schemaPath },\n } = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n const { i18n, t } = useTranslation()\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0)\n const [relatedCollection] = useState<ClientCollectionConfig>(() =>\n getEntityConfig({ collectionSlug: relationTo }),\n )\n\n const componentID = useId()\n\n const extraFieldsDrawerSlug = formatDrawerSlug({\n slug: `lexical-upload-drawer-` + uuid + componentID, // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID\n depth: editDepth,\n })\n\n // Need to use hook to initialize useEffect that restores cursor position\n const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true)\n\n const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({\n id: value,\n collectionSlug: relatedCollection.slug,\n })\n\n // Get the referenced document\n const [{ data }, { setParams }] = usePayloadAPI(\n formatAdminURL({ apiRoute: api, path: `/${relatedCollection.slug}/${value}`, serverURL }),\n { initialParams },\n )\n\n const thumbnailSRC = data?.thumbnailURL || data?.url\n\n const removeUpload = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n const updateUpload = useCallback(\n (_data: Data) => {\n setParams({\n ...initialParams,\n cacheBust, // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed\n })\n\n dispatchCacheBust()\n closeDocumentDrawer()\n },\n [setParams, cacheBust, closeDocumentDrawer],\n )\n\n const hasExtraFields = (\n editorConfig?.resolvedFeatureMap?.get('upload')\n ?.sanitizedClientFeatureProps as BaseClientFeatureProps<UploadFeaturePropsClient>\n ).collections?.[relatedCollection.slug]?.hasExtraFields\n\n const onExtraFieldsDrawerSubmit = useCallback(\n (_: FormState, data: JsonObject) => {\n // Update lexical node (with key nodeKey) with new data\n editor.update(() => {\n const uploadNode: null | UploadNode = $getNodeByKey(nodeKey)\n if (uploadNode) {\n const newData: UploadData = {\n ...uploadNode.getData(),\n fields: data,\n }\n uploadNode.setData(newData)\n }\n })\n },\n [editor, nodeKey],\n )\n\n const aspectRatio =\n thumbnailSRC && data?.width && data?.height\n ? data.width > data.height\n ? 'landscape'\n : 'portrait'\n : 'landscape'\n\n return (\n <div\n className={`${baseClass}__contents ${baseClass}__contents--${aspectRatio}`}\n data-align={format || undefined}\n data-filename={data?.filename}\n ref={uploadRef}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__media`}>\n <Thumbnail\n collectionSlug={relationTo}\n fileSrc={isImage(data?.mimeType) ? thumbnailSRC : null}\n height={data?.height}\n size=\"none\"\n width={data?.width}\n />\n\n {isEditable && (\n <div className={`${baseClass}__overlay ${baseClass}__floater`}>\n <div className={`${baseClass}__actions`} role=\"toolbar\">\n {hasExtraFields ? (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__upload-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"edit\"\n onClick={toggleDrawer}\n round\n size=\"medium\"\n tooltip={t('fields:editRelationship')}\n />\n ) : null}\n\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__swap-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"swap\"\n onClick={() => {\n editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {\n replace: { nodeKey },\n })\n }}\n round\n size=\"medium\"\n tooltip={t('fields:swapUpload')}\n />\n\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__removeButton`}\n disabled={!isEditable}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeUpload()\n }}\n round\n size=\"medium\"\n tooltip={t('fields:removeUpload')}\n />\n </div>\n </div>\n )}\n </div>\n\n <div className={`${baseClass}__metaOverlay ${baseClass}__floater`}>\n <DocumentDrawerToggler className={`${baseClass}__doc-drawer-toggler`}>\n <strong className={`${baseClass}__filename`}>\n {data?.filename || t('general:untitled')}\n </strong>\n </DocumentDrawerToggler>\n <div className={`${baseClass}__collectionLabel`}>\n {getTranslation(relatedCollection.labels.singular, i18n)}\n </div>\n </div>\n </div>\n\n {value ? <DocumentDrawer onSave={updateUpload} /> : null}\n {hasExtraFields ? (\n <FieldsDrawer\n data={fields}\n drawerSlug={extraFieldsDrawerSlug}\n drawerTitle={t('general:editLabel', {\n label: getTranslation(relatedCollection.labels.singular, i18n),\n })}\n featureKey=\"upload\"\n handleDrawerSubmit={onExtraFieldsDrawerSubmit}\n schemaPath={schemaPath}\n schemaPathSuffix={relatedCollection.slug}\n />\n ) : null}\n </div>\n )\n}\n"],"names":["useLexicalComposerContext","useLexicalEditable","getTranslation","Button","formatDrawerSlug","Thumbnail","useConfig","useEditDepth","usePayloadAPI","useTranslation","$getNodeByKey","formatAdminURL","isImage","React","useCallback","useId","useReducer","useRef","useState","useEditorConfigContext","FieldsDrawer","useLexicalDocumentDrawer","useLexicalDrawer","INSERT_UPLOAD_WITH_DRAWER_COMMAND","initialParams","depth","UploadComponent","props","className","baseClass","data","fields","relationTo","value","format","nodeKey","Error","config","routes","api","serverURL","getEntityConfig","uploadRef","uuid","editDepth","editor","editorConfig","fieldProps","schemaPath","isEditable","i18n","t","cacheBust","dispatchCacheBust","state","relatedCollection","collectionSlug","componentID","extraFieldsDrawerSlug","slug","toggleDrawer","closeDocumentDrawer","DocumentDrawer","DocumentDrawerToggler","id","setParams","apiRoute","path","thumbnailSRC","thumbnailURL","url","removeUpload","update","remove","updateUpload","_data","hasExtraFields","resolvedFeatureMap","get","sanitizedClientFeatureProps","collections","onExtraFieldsDrawerSubmit","_","uploadNode","newData","getData","setData","aspectRatio","width","height","div","data-align","undefined","data-filename","filename","ref","fileSrc","mimeType","size","role","buttonStyle","disabled","el","icon","onClick","round","tooltip","dispatchCommand","replace","e","preventDefault","strong","labels","singular","onSave","drawerSlug","drawerTitle","label","featureKey","handleDrawerSubmit","schemaPathSuffix"],"mappings":"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"}