@payloadcms/richtext-lexical 4.0.0-internal.d28e9fb → 4.0.0-internal.fa345ef

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 (949) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/cell/rscEntry.d.ts +1 -1
  3. package/dist/cell/rscEntry.d.ts.map +1 -1
  4. package/dist/cell/rscEntry.js +5 -5
  5. package/dist/cell/rscEntry.js.map +1 -1
  6. package/dist/exports/client/Field-XH5C4HFU.js +2 -0
  7. package/dist/exports/client/Field-XH5C4HFU.js.map +7 -0
  8. package/dist/exports/client/RelationshipComponent-YCPAKOL7.js +2 -0
  9. package/dist/exports/client/RelationshipComponent-YCPAKOL7.js.map +7 -0
  10. package/dist/exports/client/bundled.css +1 -1
  11. package/dist/exports/client/chunk-5VIL27GI.js +2 -0
  12. package/dist/exports/client/chunk-5VIL27GI.js.map +7 -0
  13. package/dist/exports/client/chunk-ESITTE3C.js +2 -0
  14. package/dist/exports/client/chunk-ESITTE3C.js.map +7 -0
  15. package/dist/exports/client/{chunk-BZZVLW4U.js → chunk-RJ5MAOKZ.js} +1 -1
  16. package/dist/exports/client/chunk-RJ5MAOKZ.js.map +7 -0
  17. package/dist/exports/client/chunk-UD4DQ4AK.js +2 -0
  18. package/dist/exports/client/chunk-UD4DQ4AK.js.map +7 -0
  19. package/dist/exports/client/chunk-WSAPGI3Z.js +2 -0
  20. package/dist/exports/client/chunk-WSAPGI3Z.js.map +7 -0
  21. package/dist/exports/client/chunk-X3D4LZS7.js +2 -0
  22. package/dist/exports/client/chunk-X3D4LZS7.js.map +7 -0
  23. package/dist/exports/client/component-PHZQBOJE.js +2 -0
  24. package/dist/exports/client/component-PHZQBOJE.js.map +7 -0
  25. package/dist/exports/client/componentInline-H24N7GUG.js +2 -0
  26. package/dist/exports/client/index.d.ts +0 -1
  27. package/dist/exports/client/index.d.ts.map +1 -1
  28. package/dist/exports/client/index.js +27 -28
  29. package/dist/exports/client/index.js.map +4 -4
  30. package/dist/exports/react/index.d.ts +1 -1
  31. package/dist/exports/react/index.d.ts.map +1 -1
  32. package/dist/exports/react/index.js.map +1 -1
  33. package/dist/features/align/client/toolbarAlignGroup.d.ts.map +1 -1
  34. package/dist/features/align/client/toolbarAlignGroup.js +1 -0
  35. package/dist/features/align/client/toolbarAlignGroup.js.map +1 -1
  36. package/dist/features/blockquote/client/index.js +2 -2
  37. package/dist/features/blockquote/client/index.js.map +1 -1
  38. package/dist/features/blockquote/server/index.d.ts +1 -4
  39. package/dist/features/blockquote/server/index.d.ts.map +1 -1
  40. package/dist/features/blockquote/server/index.js +4 -41
  41. package/dist/features/blockquote/server/index.js.map +1 -1
  42. package/dist/features/blockquote/server/schema.d.ts +8 -0
  43. package/dist/features/blockquote/server/schema.d.ts.map +1 -0
  44. package/dist/features/blockquote/server/schema.js +15 -0
  45. package/dist/features/blockquote/server/schema.js.map +1 -0
  46. package/dist/features/blocks/client/component/BlockContent.d.ts +10 -0
  47. package/dist/features/blocks/client/component/BlockContent.d.ts.map +1 -1
  48. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  49. package/dist/features/blocks/client/component/index.css +178 -0
  50. package/dist/features/blocks/client/component/index.d.ts +4 -3
  51. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  52. package/dist/features/blocks/client/component/index.js +89 -24
  53. package/dist/features/blocks/client/component/index.js.map +1 -1
  54. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.d.ts.map +1 -1
  55. package/dist/features/blocks/client/componentInline/index.css +85 -0
  56. package/dist/features/blocks/client/componentInline/index.d.ts +4 -3
  57. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  58. package/dist/features/blocks/client/componentInline/index.js +33 -12
  59. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  60. package/dist/features/blocks/client/index.d.ts.map +1 -1
  61. package/dist/features/blocks/client/index.js +4 -4
  62. package/dist/features/blocks/client/index.js.map +1 -1
  63. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts +1 -1
  64. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts.map +1 -1
  65. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +1 -1
  66. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
  67. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts +1 -1
  68. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts.map +1 -1
  69. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +5 -2
  70. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
  71. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts +1 -2
  72. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts.map +1 -1
  73. package/dist/features/blocks/client/markdown/markdownTransformer.js +4 -4
  74. package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
  75. package/dist/features/blocks/client/nodes/BlocksNode.d.ts +2 -2
  76. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  77. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  78. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts +2 -2
  79. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  80. package/dist/features/blocks/client/nodes/InlineBlocksNode.js.map +1 -1
  81. package/dist/features/blocks/client/plugin/index.d.ts +1 -1
  82. package/dist/features/blocks/client/plugin/index.d.ts.map +1 -1
  83. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  84. package/dist/features/blocks/premade/CodeBlock/Component/Block.d.ts +1 -1
  85. package/dist/features/blocks/premade/CodeBlock/Component/Block.d.ts.map +1 -1
  86. package/dist/features/blocks/premade/CodeBlock/Component/Block.js +4 -0
  87. package/dist/features/blocks/premade/CodeBlock/Component/Block.js.map +1 -1
  88. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.css +26 -0
  89. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.d.ts +1 -1
  90. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.d.ts.map +1 -1
  91. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js +4 -1
  92. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.js.map +1 -1
  93. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.css +38 -0
  94. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.d.ts +1 -1
  95. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.d.ts.map +1 -1
  96. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js +7 -8
  97. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.js.map +1 -1
  98. package/dist/features/blocks/premade/CodeBlock/Component/index.css +171 -0
  99. package/dist/features/blocks/server/graphQLPopulationPromise.d.ts +1 -2
  100. package/dist/features/blocks/server/graphQLPopulationPromise.d.ts.map +1 -1
  101. package/dist/features/blocks/server/graphQLPopulationPromise.js.map +1 -1
  102. package/dist/features/blocks/server/index.d.ts +1 -0
  103. package/dist/features/blocks/server/index.d.ts.map +1 -1
  104. package/dist/features/blocks/server/index.js +24 -72
  105. package/dist/features/blocks/server/index.js.map +1 -1
  106. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts +1 -1
  107. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts.map +1 -1
  108. package/dist/features/blocks/server/markdown/markdownTransformer.js +4 -4
  109. package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
  110. package/dist/features/blocks/server/nodes/BlocksNode.d.ts +1 -18
  111. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  112. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  113. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts +2 -10
  114. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  115. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  116. package/dist/features/blocks/server/schema.d.ts +45 -0
  117. package/dist/features/blocks/server/schema.d.ts.map +1 -0
  118. package/dist/features/blocks/server/schema.js +140 -0
  119. package/dist/features/blocks/server/schema.js.map +1 -0
  120. package/dist/features/blocks/server/validate.d.ts +1 -2
  121. package/dist/features/blocks/server/validate.d.ts.map +1 -1
  122. package/dist/features/blocks/server/validate.js.map +1 -1
  123. package/dist/features/converters/htmlToLexical/index.d.ts +1 -1
  124. package/dist/features/converters/htmlToLexical/index.d.ts.map +1 -1
  125. package/dist/features/converters/htmlToLexical/index.js.map +1 -1
  126. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.d.ts +1 -1
  127. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.d.ts.map +1 -1
  128. package/dist/features/converters/lexicalToHtml/async/converters/blockquote.js.map +1 -1
  129. package/dist/features/converters/lexicalToHtml/async/converters/heading.d.ts +1 -1
  130. package/dist/features/converters/lexicalToHtml/async/converters/heading.d.ts.map +1 -1
  131. package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
  132. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.d.ts +1 -1
  133. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.d.ts.map +1 -1
  134. package/dist/features/converters/lexicalToHtml/async/converters/horizontalRule.js.map +1 -1
  135. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.d.ts +1 -1
  136. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.d.ts.map +1 -1
  137. package/dist/features/converters/lexicalToHtml/async/converters/linebreak.js.map +1 -1
  138. package/dist/features/converters/lexicalToHtml/async/converters/link.d.ts +1 -1
  139. package/dist/features/converters/lexicalToHtml/async/converters/link.d.ts.map +1 -1
  140. package/dist/features/converters/lexicalToHtml/async/converters/link.js.map +1 -1
  141. package/dist/features/converters/lexicalToHtml/async/converters/list.d.ts +1 -1
  142. package/dist/features/converters/lexicalToHtml/async/converters/list.d.ts.map +1 -1
  143. package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
  144. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.d.ts +1 -1
  145. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.d.ts.map +1 -1
  146. package/dist/features/converters/lexicalToHtml/async/converters/paragraph.js.map +1 -1
  147. package/dist/features/converters/lexicalToHtml/async/converters/tab.d.ts +1 -1
  148. package/dist/features/converters/lexicalToHtml/async/converters/tab.d.ts.map +1 -1
  149. package/dist/features/converters/lexicalToHtml/async/converters/tab.js.map +1 -1
  150. package/dist/features/converters/lexicalToHtml/async/converters/table.d.ts +1 -1
  151. package/dist/features/converters/lexicalToHtml/async/converters/table.d.ts.map +1 -1
  152. package/dist/features/converters/lexicalToHtml/async/converters/table.js +1 -1
  153. package/dist/features/converters/lexicalToHtml/async/converters/table.js.map +1 -1
  154. package/dist/features/converters/lexicalToHtml/async/converters/text.d.ts +1 -1
  155. package/dist/features/converters/lexicalToHtml/async/converters/text.d.ts.map +1 -1
  156. package/dist/features/converters/lexicalToHtml/async/converters/text.js.map +1 -1
  157. package/dist/features/converters/lexicalToHtml/async/converters/upload.d.ts +1 -1
  158. package/dist/features/converters/lexicalToHtml/async/converters/upload.d.ts.map +1 -1
  159. package/dist/features/converters/lexicalToHtml/async/converters/upload.js.map +1 -1
  160. package/dist/features/converters/lexicalToHtml/async/defaultConverters.d.ts +1 -1
  161. package/dist/features/converters/lexicalToHtml/async/defaultConverters.d.ts.map +1 -1
  162. package/dist/features/converters/lexicalToHtml/async/defaultConverters.js.map +1 -1
  163. package/dist/features/converters/lexicalToHtml/async/types.d.ts +15 -16
  164. package/dist/features/converters/lexicalToHtml/async/types.d.ts.map +1 -1
  165. package/dist/features/converters/lexicalToHtml/async/types.js.map +1 -1
  166. package/dist/features/converters/lexicalToHtml/shared/cssColors.d.ts.map +1 -1
  167. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
  168. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.d.ts +1 -1
  169. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.d.ts.map +1 -1
  170. package/dist/features/converters/lexicalToHtml/sync/converters/blockquote.js.map +1 -1
  171. package/dist/features/converters/lexicalToHtml/sync/converters/heading.d.ts +1 -1
  172. package/dist/features/converters/lexicalToHtml/sync/converters/heading.d.ts.map +1 -1
  173. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
  174. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.d.ts +1 -1
  175. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.d.ts.map +1 -1
  176. package/dist/features/converters/lexicalToHtml/sync/converters/horizontalRule.js.map +1 -1
  177. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.d.ts +1 -1
  178. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.d.ts.map +1 -1
  179. package/dist/features/converters/lexicalToHtml/sync/converters/linebreak.js.map +1 -1
  180. package/dist/features/converters/lexicalToHtml/sync/converters/link.d.ts +1 -1
  181. package/dist/features/converters/lexicalToHtml/sync/converters/link.d.ts.map +1 -1
  182. package/dist/features/converters/lexicalToHtml/sync/converters/link.js.map +1 -1
  183. package/dist/features/converters/lexicalToHtml/sync/converters/list.d.ts +1 -1
  184. package/dist/features/converters/lexicalToHtml/sync/converters/list.d.ts.map +1 -1
  185. package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
  186. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.d.ts +1 -1
  187. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.d.ts.map +1 -1
  188. package/dist/features/converters/lexicalToHtml/sync/converters/paragraph.js.map +1 -1
  189. package/dist/features/converters/lexicalToHtml/sync/converters/tab.d.ts +1 -1
  190. package/dist/features/converters/lexicalToHtml/sync/converters/tab.d.ts.map +1 -1
  191. package/dist/features/converters/lexicalToHtml/sync/converters/tab.js.map +1 -1
  192. package/dist/features/converters/lexicalToHtml/sync/converters/table.d.ts +1 -1
  193. package/dist/features/converters/lexicalToHtml/sync/converters/table.d.ts.map +1 -1
  194. package/dist/features/converters/lexicalToHtml/sync/converters/table.js +1 -1
  195. package/dist/features/converters/lexicalToHtml/sync/converters/table.js.map +1 -1
  196. package/dist/features/converters/lexicalToHtml/sync/converters/text.d.ts +1 -1
  197. package/dist/features/converters/lexicalToHtml/sync/converters/text.d.ts.map +1 -1
  198. package/dist/features/converters/lexicalToHtml/sync/converters/text.js.map +1 -1
  199. package/dist/features/converters/lexicalToHtml/sync/converters/upload.d.ts +1 -1
  200. package/dist/features/converters/lexicalToHtml/sync/converters/upload.d.ts.map +1 -1
  201. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js.map +1 -1
  202. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.d.ts +1 -1
  203. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.d.ts.map +1 -1
  204. package/dist/features/converters/lexicalToHtml/sync/defaultConverters.js.map +1 -1
  205. package/dist/features/converters/lexicalToHtml/sync/types.d.ts +15 -16
  206. package/dist/features/converters/lexicalToHtml/sync/types.d.ts.map +1 -1
  207. package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
  208. package/dist/features/converters/lexicalToJSX/Component/index.d.ts +6 -4
  209. package/dist/features/converters/lexicalToJSX/Component/index.d.ts.map +1 -1
  210. package/dist/features/converters/lexicalToJSX/Component/index.js +5 -4
  211. package/dist/features/converters/lexicalToJSX/Component/index.js.map +1 -1
  212. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.d.ts +1 -1
  213. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.d.ts.map +1 -1
  214. package/dist/features/converters/lexicalToJSX/converter/converters/blockquote.js.map +1 -1
  215. package/dist/features/converters/lexicalToJSX/converter/converters/heading.d.ts +1 -1
  216. package/dist/features/converters/lexicalToJSX/converter/converters/heading.d.ts.map +1 -1
  217. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
  218. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.d.ts +1 -1
  219. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.d.ts.map +1 -1
  220. package/dist/features/converters/lexicalToJSX/converter/converters/horizontalRule.js.map +1 -1
  221. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.d.ts +1 -1
  222. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.d.ts.map +1 -1
  223. package/dist/features/converters/lexicalToJSX/converter/converters/linebreak.js.map +1 -1
  224. package/dist/features/converters/lexicalToJSX/converter/converters/link.d.ts +1 -1
  225. package/dist/features/converters/lexicalToJSX/converter/converters/link.d.ts.map +1 -1
  226. package/dist/features/converters/lexicalToJSX/converter/converters/link.js.map +1 -1
  227. package/dist/features/converters/lexicalToJSX/converter/converters/list.d.ts +1 -1
  228. package/dist/features/converters/lexicalToJSX/converter/converters/list.d.ts.map +1 -1
  229. package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
  230. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.d.ts +1 -1
  231. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.d.ts.map +1 -1
  232. package/dist/features/converters/lexicalToJSX/converter/converters/paragraph.js.map +1 -1
  233. package/dist/features/converters/lexicalToJSX/converter/converters/tab.d.ts +1 -1
  234. package/dist/features/converters/lexicalToJSX/converter/converters/tab.d.ts.map +1 -1
  235. package/dist/features/converters/lexicalToJSX/converter/converters/tab.js.map +1 -1
  236. package/dist/features/converters/lexicalToJSX/converter/converters/table.d.ts +1 -1
  237. package/dist/features/converters/lexicalToJSX/converter/converters/table.d.ts.map +1 -1
  238. package/dist/features/converters/lexicalToJSX/converter/converters/table.js.map +1 -1
  239. package/dist/features/converters/lexicalToJSX/converter/converters/text.d.ts +1 -1
  240. package/dist/features/converters/lexicalToJSX/converter/converters/text.d.ts.map +1 -1
  241. package/dist/features/converters/lexicalToJSX/converter/converters/text.js.map +1 -1
  242. package/dist/features/converters/lexicalToJSX/converter/converters/upload.d.ts +1 -1
  243. package/dist/features/converters/lexicalToJSX/converter/converters/upload.d.ts.map +1 -1
  244. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js.map +1 -1
  245. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.d.ts +1 -1
  246. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.d.ts.map +1 -1
  247. package/dist/features/converters/lexicalToJSX/converter/defaultConverters.js.map +1 -1
  248. package/dist/features/converters/lexicalToJSX/converter/index.d.ts +1 -1
  249. package/dist/features/converters/lexicalToJSX/converter/index.d.ts.map +1 -1
  250. package/dist/features/converters/lexicalToJSX/converter/index.js.map +1 -1
  251. package/dist/features/converters/lexicalToJSX/converter/types.d.ts +13 -15
  252. package/dist/features/converters/lexicalToJSX/converter/types.d.ts.map +1 -1
  253. package/dist/features/converters/lexicalToJSX/converter/types.js.map +1 -1
  254. package/dist/features/converters/lexicalToMarkdown/index.d.ts.map +1 -1
  255. package/dist/features/converters/lexicalToMarkdown/index.js +1 -1
  256. package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
  257. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +1 -1
  258. package/dist/features/converters/lexicalToPlaintext/shared/findConverterForNode.js.map +1 -1
  259. package/dist/features/converters/lexicalToPlaintext/sync/types.d.ts +13 -15
  260. package/dist/features/converters/lexicalToPlaintext/sync/types.d.ts.map +1 -1
  261. package/dist/features/converters/lexicalToPlaintext/sync/types.js.map +1 -1
  262. package/dist/features/converters/markdownToLexical/index.d.ts +1 -1
  263. package/dist/features/converters/markdownToLexical/index.d.ts.map +1 -1
  264. package/dist/features/converters/markdownToLexical/index.js +5 -2
  265. package/dist/features/converters/markdownToLexical/index.js.map +1 -1
  266. package/dist/features/debug/jsxConverter/client/plugin/index.d.ts +1 -1
  267. package/dist/features/debug/jsxConverter/client/plugin/index.d.ts.map +1 -1
  268. package/dist/features/debug/jsxConverter/client/plugin/index.js +1 -0
  269. package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
  270. package/dist/features/debug/jsxConverter/client/plugin/style.css +9 -0
  271. package/dist/features/debug/testRecorder/client/plugin/index.css +51 -0
  272. package/dist/features/debug/testRecorder/client/plugin/index.d.ts +1 -1
  273. package/dist/features/debug/testRecorder/client/plugin/index.d.ts.map +1 -1
  274. package/dist/features/debug/testRecorder/client/plugin/index.js +1 -0
  275. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  276. package/dist/features/debug/treeView/client/plugin/index.css +81 -0
  277. package/dist/features/debug/treeView/client/plugin/index.d.ts +1 -1
  278. package/dist/features/debug/treeView/client/plugin/index.d.ts.map +1 -1
  279. package/dist/features/debug/treeView/client/plugin/index.js +1 -0
  280. package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
  281. package/dist/features/experimental_table/client/index.js +2 -2
  282. package/dist/features/experimental_table/client/index.js.map +1 -1
  283. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.css +91 -0
  284. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.d.ts +1 -1
  285. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.d.ts.map +1 -1
  286. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js +3 -2
  287. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  288. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.css +11 -0
  289. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.d.ts +1 -1
  290. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.d.ts.map +1 -1
  291. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js +1 -0
  292. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  293. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js +1 -1
  294. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -1
  295. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.css +166 -0
  296. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.d.ts +17 -0
  297. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +1 -0
  298. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.js +219 -0
  299. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.js.map +1 -0
  300. package/dist/features/experimental_table/client/plugins/TablePlugin/index.css +235 -0
  301. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts +1 -1
  302. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts.map +1 -1
  303. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js +95 -104
  304. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +1 -1
  305. package/dist/features/experimental_table/markdownTransformer.d.ts +2 -2
  306. package/dist/features/experimental_table/markdownTransformer.d.ts.map +1 -1
  307. package/dist/features/experimental_table/markdownTransformer.js +6 -3
  308. package/dist/features/experimental_table/markdownTransformer.js.map +1 -1
  309. package/dist/features/experimental_table/server/index.d.ts +1 -6
  310. package/dist/features/experimental_table/server/index.d.ts.map +1 -1
  311. package/dist/features/experimental_table/server/index.js +6 -104
  312. package/dist/features/experimental_table/server/index.js.map +1 -1
  313. package/dist/features/experimental_table/server/schema.d.ts +27 -0
  314. package/dist/features/experimental_table/server/schema.d.ts.map +1 -0
  315. package/dist/features/experimental_table/server/schema.js +107 -0
  316. package/dist/features/experimental_table/server/schema.js.map +1 -0
  317. package/dist/features/format/bold/feature.client.js +1 -1
  318. package/dist/features/format/bold/feature.client.js.map +1 -1
  319. package/dist/features/format/bold/feature.server.d.ts.map +1 -1
  320. package/dist/features/format/bold/feature.server.js +1 -1
  321. package/dist/features/format/bold/feature.server.js.map +1 -1
  322. package/dist/features/format/inlineCode/feature.client.js +1 -1
  323. package/dist/features/format/inlineCode/feature.client.js.map +1 -1
  324. package/dist/features/format/inlineCode/feature.server.d.ts.map +1 -1
  325. package/dist/features/format/inlineCode/feature.server.js +1 -1
  326. package/dist/features/format/inlineCode/feature.server.js.map +1 -1
  327. package/dist/features/format/italic/feature.client.js +1 -1
  328. package/dist/features/format/italic/feature.client.js.map +1 -1
  329. package/dist/features/format/italic/feature.server.d.ts.map +1 -1
  330. package/dist/features/format/italic/feature.server.js +1 -1
  331. package/dist/features/format/italic/feature.server.js.map +1 -1
  332. package/dist/features/format/shared/toolbarFormatGroup.d.ts.map +1 -1
  333. package/dist/features/format/strikethrough/feature.client.js +1 -1
  334. package/dist/features/format/strikethrough/feature.client.js.map +1 -1
  335. package/dist/features/format/strikethrough/feature.server.d.ts.map +1 -1
  336. package/dist/features/format/strikethrough/feature.server.js +1 -1
  337. package/dist/features/format/strikethrough/feature.server.js.map +1 -1
  338. package/dist/features/heading/client/index.js +2 -2
  339. package/dist/features/heading/client/index.js.map +1 -1
  340. package/dist/features/heading/markdownTransformer.d.ts +2 -2
  341. package/dist/features/heading/markdownTransformer.d.ts.map +1 -1
  342. package/dist/features/heading/markdownTransformer.js +6 -19
  343. package/dist/features/heading/markdownTransformer.js.map +1 -1
  344. package/dist/features/heading/server/index.d.ts +2 -4
  345. package/dist/features/heading/server/index.d.ts.map +1 -1
  346. package/dist/features/heading/server/index.js +4 -41
  347. package/dist/features/heading/server/index.js.map +1 -1
  348. package/dist/features/heading/server/schema.d.ts +10 -0
  349. package/dist/features/heading/server/schema.d.ts.map +1 -0
  350. package/dist/features/heading/server/schema.js +37 -0
  351. package/dist/features/heading/server/schema.js.map +1 -0
  352. package/dist/features/horizontalRule/client/index.js +2 -2
  353. package/dist/features/horizontalRule/client/index.js.map +1 -1
  354. package/dist/features/horizontalRule/client/markdownTransformer.d.ts +2 -2
  355. package/dist/features/horizontalRule/client/markdownTransformer.d.ts.map +1 -1
  356. package/dist/features/horizontalRule/client/markdownTransformer.js +1 -1
  357. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  358. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts +1 -1
  359. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
  360. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  361. package/dist/features/horizontalRule/client/plugin/index.css +25 -0
  362. package/dist/features/horizontalRule/client/plugin/index.d.ts +1 -1
  363. package/dist/features/horizontalRule/client/plugin/index.d.ts.map +1 -1
  364. package/dist/features/horizontalRule/client/plugin/index.js +73 -4
  365. package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
  366. package/dist/features/horizontalRule/server/index.d.ts +1 -0
  367. package/dist/features/horizontalRule/server/index.d.ts.map +1 -1
  368. package/dist/features/horizontalRule/server/index.js +4 -10
  369. package/dist/features/horizontalRule/server/index.js.map +1 -1
  370. package/dist/features/horizontalRule/server/markdownTransformer.d.ts +2 -2
  371. package/dist/features/horizontalRule/server/markdownTransformer.d.ts.map +1 -1
  372. package/dist/features/horizontalRule/server/markdownTransformer.js +1 -1
  373. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  374. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts +1 -5
  375. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
  376. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  377. package/dist/features/horizontalRule/server/schema.d.ts +7 -0
  378. package/dist/features/horizontalRule/server/schema.d.ts.map +1 -0
  379. package/dist/features/horizontalRule/server/schema.js +25 -0
  380. package/dist/features/horizontalRule/server/schema.js.map +1 -0
  381. package/dist/features/indent/client/toolbarIndentGroup.d.ts.map +1 -1
  382. package/dist/features/link/client/index.d.ts.map +1 -1
  383. package/dist/features/link/client/index.js +2 -2
  384. package/dist/features/link/client/index.js.map +1 -1
  385. package/dist/features/link/client/plugins/autoLink/index.d.ts +1 -1
  386. package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
  387. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  388. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  389. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +28 -8
  390. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  391. package/dist/features/link/client/plugins/floatingLinkEditor/index.css +108 -0
  392. package/dist/features/link/client/plugins/floatingLinkEditor/index.d.ts +1 -1
  393. package/dist/features/link/client/plugins/floatingLinkEditor/index.d.ts.map +1 -1
  394. package/dist/features/link/client/plugins/floatingLinkEditor/index.js +1 -0
  395. package/dist/features/link/client/plugins/floatingLinkEditor/index.js.map +1 -1
  396. package/dist/features/link/client/plugins/floatingLinkEditor/types.d.ts +1 -1
  397. package/dist/features/link/client/plugins/floatingLinkEditor/types.d.ts.map +1 -1
  398. package/dist/features/link/client/plugins/floatingLinkEditor/types.js.map +1 -1
  399. package/dist/features/link/client/plugins/link/index.js.map +1 -1
  400. package/dist/features/link/markdownTransformer.d.ts +5 -5
  401. package/dist/features/link/markdownTransformer.d.ts.map +1 -1
  402. package/dist/features/link/markdownTransformer.js +2 -2
  403. package/dist/features/link/markdownTransformer.js.map +1 -1
  404. package/dist/features/link/markdownTransformer.spec.js +10 -10
  405. package/dist/features/link/markdownTransformer.spec.js.map +1 -1
  406. package/dist/features/link/nodes/AutoLinkNode.d.ts +3 -3
  407. package/dist/features/link/nodes/AutoLinkNode.d.ts.map +1 -1
  408. package/dist/features/link/nodes/AutoLinkNode.js +2 -1
  409. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  410. package/dist/features/link/nodes/LinkNode.d.ts +3 -3
  411. package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
  412. package/dist/features/link/nodes/LinkNode.js +2 -1
  413. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  414. package/dist/features/link/server/baseFields.d.ts.map +1 -1
  415. package/dist/features/link/server/baseFields.js.map +1 -1
  416. package/dist/features/link/server/graphQLPopulationPromise.d.ts +1 -1
  417. package/dist/features/link/server/graphQLPopulationPromise.d.ts.map +1 -1
  418. package/dist/features/link/server/graphQLPopulationPromise.js.map +1 -1
  419. package/dist/features/link/server/index.d.ts +2 -1
  420. package/dist/features/link/server/index.d.ts.map +1 -1
  421. package/dist/features/link/server/index.js +5 -73
  422. package/dist/features/link/server/index.js.map +1 -1
  423. package/dist/features/link/server/schema.d.ts +32 -0
  424. package/dist/features/link/server/schema.d.ts.map +1 -0
  425. package/dist/features/link/server/schema.js +171 -0
  426. package/dist/features/link/server/schema.js.map +1 -0
  427. package/dist/features/link/server/validate.d.ts +1 -1
  428. package/dist/features/link/server/validate.d.ts.map +1 -1
  429. package/dist/features/link/server/validate.js.map +1 -1
  430. package/dist/features/lists/checklist/client/index.js +1 -1
  431. package/dist/features/lists/checklist/client/index.js.map +1 -1
  432. package/dist/features/lists/checklist/server/index.d.ts.map +1 -1
  433. package/dist/features/lists/checklist/server/index.js +4 -8
  434. package/dist/features/lists/checklist/server/index.js.map +1 -1
  435. package/dist/features/lists/orderedList/client/index.js +1 -1
  436. package/dist/features/lists/orderedList/client/index.js.map +1 -1
  437. package/dist/features/lists/orderedList/server/index.d.ts.map +1 -1
  438. package/dist/features/lists/orderedList/server/index.js +4 -8
  439. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  440. package/dist/features/lists/plugin/index.d.ts +0 -9
  441. package/dist/features/lists/plugin/index.d.ts.map +1 -1
  442. package/dist/features/lists/plugin/index.js.map +1 -1
  443. package/dist/features/lists/shared/schema.d.ts +18 -0
  444. package/dist/features/lists/shared/schema.d.ts.map +1 -0
  445. package/dist/features/lists/shared/schema.js +62 -0
  446. package/dist/features/lists/shared/schema.js.map +1 -0
  447. package/dist/features/lists/unorderedList/client/index.js +1 -1
  448. package/dist/features/lists/unorderedList/client/index.js.map +1 -1
  449. package/dist/features/lists/unorderedList/server/index.d.ts.map +1 -1
  450. package/dist/features/lists/unorderedList/server/index.js +4 -8
  451. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  452. package/dist/features/relationship/client/components/RelationshipComponent.d.ts +2 -2
  453. package/dist/features/relationship/client/components/RelationshipComponent.d.ts.map +1 -1
  454. package/dist/features/relationship/client/components/RelationshipComponent.js +29 -4
  455. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  456. package/dist/features/relationship/client/components/index.css +112 -0
  457. package/dist/features/relationship/client/drawer/index.d.ts.map +1 -1
  458. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts +1 -1
  459. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
  460. package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
  461. package/dist/features/relationship/client/plugins/index.d.ts +1 -1
  462. package/dist/features/relationship/client/plugins/index.d.ts.map +1 -1
  463. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  464. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts.map +1 -1
  465. package/dist/features/relationship/client/utils/useEnabledRelationships.js +9 -40
  466. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  467. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts +1 -1
  468. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts.map +1 -1
  469. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  470. package/dist/features/relationship/server/index.d.ts +1 -0
  471. package/dist/features/relationship/server/index.d.ts.map +1 -1
  472. package/dist/features/relationship/server/index.js +2 -0
  473. package/dist/features/relationship/server/index.js.map +1 -1
  474. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts +1 -10
  475. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  476. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  477. package/dist/features/relationship/server/schema.d.ts +28 -0
  478. package/dist/features/relationship/server/schema.d.ts.map +1 -0
  479. package/dist/features/relationship/server/schema.js +97 -0
  480. package/dist/features/relationship/server/schema.js.map +1 -0
  481. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts +23 -0
  482. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts.map +1 -0
  483. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js +34 -0
  484. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js.map +1 -0
  485. package/dist/features/shared/toolbar/addDropdownGroup.d.ts.map +1 -1
  486. package/dist/features/shared/toolbar/featureButtonsGroup.d.ts.map +1 -1
  487. package/dist/features/shared/toolbar/textDropdownGroup.d.ts.map +1 -1
  488. package/dist/features/textState/feature.client.js +1 -1
  489. package/dist/features/textState/feature.client.js.map +1 -1
  490. package/dist/features/toolbars/fixed/client/Toolbar/index.css +87 -0
  491. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts +1 -1
  492. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
  493. package/dist/features/toolbars/fixed/client/Toolbar/index.js +1 -0
  494. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  495. package/dist/features/toolbars/inline/client/Toolbar/index.css +32 -0
  496. package/dist/features/toolbars/inline/client/Toolbar/index.d.ts +1 -1
  497. package/dist/features/toolbars/inline/client/Toolbar/index.d.ts.map +1 -1
  498. package/dist/features/toolbars/inline/client/Toolbar/index.js +1 -0
  499. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  500. package/dist/features/toolbars/shared/ToolbarButton/index.css +57 -0
  501. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts +1 -1
  502. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  503. package/dist/features/toolbars/shared/ToolbarButton/index.js +80 -74
  504. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  505. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts.map +1 -1
  506. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +5 -2
  507. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  508. package/dist/features/toolbars/shared/ToolbarDropdown/index.css +210 -0
  509. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts +1 -1
  510. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  511. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +11 -7
  512. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  513. package/dist/features/toolbars/shared/useToolbarStates.d.ts.map +1 -1
  514. package/dist/features/toolbars/shared/useToolbarStates.js +3 -1
  515. package/dist/features/toolbars/shared/useToolbarStates.js.map +1 -1
  516. package/dist/features/toolbars/types.d.ts +5 -1
  517. package/dist/features/toolbars/types.d.ts.map +1 -1
  518. package/dist/features/toolbars/types.js.map +1 -1
  519. package/dist/features/typesClient.d.ts +2 -2
  520. package/dist/features/typesClient.d.ts.map +1 -1
  521. package/dist/features/typesClient.js.map +1 -1
  522. package/dist/features/typesServer.d.ts +19 -59
  523. package/dist/features/typesServer.d.ts.map +1 -1
  524. package/dist/features/typesServer.js.map +1 -1
  525. package/dist/features/upload/client/component/index.css +214 -0
  526. package/dist/features/upload/client/component/index.d.ts +2 -2
  527. package/dist/features/upload/client/component/index.d.ts.map +1 -1
  528. package/dist/features/upload/client/component/index.js +86 -63
  529. package/dist/features/upload/client/component/index.js.map +1 -1
  530. package/dist/features/upload/client/component/pending/index.d.ts +0 -1
  531. package/dist/features/upload/client/component/pending/index.d.ts.map +1 -1
  532. package/dist/features/upload/client/component/pending/index.js.map +1 -1
  533. package/dist/features/upload/client/drawer/index.d.ts.map +1 -1
  534. package/dist/features/upload/client/nodes/UploadNode.d.ts +1 -1
  535. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  536. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  537. package/dist/features/upload/client/plugin/index.d.ts +1 -1
  538. package/dist/features/upload/client/plugin/index.d.ts.map +1 -1
  539. package/dist/features/upload/client/plugin/index.js +5 -5
  540. package/dist/features/upload/client/plugin/index.js.map +1 -1
  541. package/dist/features/upload/server/graphQLPopulationPromise.d.ts +1 -1
  542. package/dist/features/upload/server/graphQLPopulationPromise.d.ts.map +1 -1
  543. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  544. package/dist/features/upload/server/index.d.ts +1 -0
  545. package/dist/features/upload/server/index.d.ts.map +1 -1
  546. package/dist/features/upload/server/index.js +5 -82
  547. package/dist/features/upload/server/index.js.map +1 -1
  548. package/dist/features/upload/server/markdownTransformer.d.ts +2 -2
  549. package/dist/features/upload/server/markdownTransformer.d.ts.map +1 -1
  550. package/dist/features/upload/server/markdownTransformer.js +1 -1
  551. package/dist/features/upload/server/markdownTransformer.js.map +1 -1
  552. package/dist/features/upload/server/nodes/UploadNode.d.ts +1 -55
  553. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  554. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  555. package/dist/features/upload/server/nodes/conversions.d.ts.map +1 -1
  556. package/dist/features/upload/server/nodes/conversions.js.map +1 -1
  557. package/dist/features/upload/server/schema.d.ts +52 -0
  558. package/dist/features/upload/server/schema.d.ts.map +1 -0
  559. package/dist/features/upload/server/schema.js +149 -0
  560. package/dist/features/upload/server/schema.js.map +1 -0
  561. package/dist/features/upload/server/validate.d.ts +1 -1
  562. package/dist/features/upload/server/validate.d.ts.map +1 -1
  563. package/dist/features/upload/server/validate.js.map +1 -1
  564. package/dist/field/Diff/converters/link.d.ts +1 -1
  565. package/dist/field/Diff/converters/link.d.ts.map +1 -1
  566. package/dist/field/Diff/converters/link.js.map +1 -1
  567. package/dist/field/Diff/converters/listitem/index.css +80 -0
  568. package/dist/field/Diff/converters/listitem/index.d.ts +2 -2
  569. package/dist/field/Diff/converters/listitem/index.d.ts.map +1 -1
  570. package/dist/field/Diff/converters/listitem/index.js +1 -0
  571. package/dist/field/Diff/converters/listitem/index.js.map +1 -1
  572. package/dist/field/Diff/converters/relationship/index.css +108 -0
  573. package/dist/field/Diff/converters/relationship/index.d.ts +2 -2
  574. package/dist/field/Diff/converters/relationship/index.d.ts.map +1 -1
  575. package/dist/field/Diff/converters/relationship/index.js +11 -28
  576. package/dist/field/Diff/converters/relationship/index.js.map +1 -1
  577. package/dist/field/Diff/converters/unknown/index.css +37 -0
  578. package/dist/field/Diff/converters/unknown/index.d.ts +1 -1
  579. package/dist/field/Diff/converters/unknown/index.d.ts.map +1 -1
  580. package/dist/field/Diff/converters/unknown/index.js +1 -0
  581. package/dist/field/Diff/converters/unknown/index.js.map +1 -1
  582. package/dist/field/Diff/converters/upload/index.css +175 -0
  583. package/dist/field/Diff/converters/upload/index.d.ts +2 -2
  584. package/dist/field/Diff/converters/upload/index.d.ts.map +1 -1
  585. package/dist/field/Diff/converters/upload/index.js +7 -2
  586. package/dist/field/Diff/converters/upload/index.js.map +1 -1
  587. package/dist/field/Diff/index.css +156 -0
  588. package/dist/field/Diff/index.d.ts +1 -1
  589. package/dist/field/Diff/index.d.ts.map +1 -1
  590. package/dist/field/Diff/index.js +1 -0
  591. package/dist/field/Diff/index.js.map +1 -1
  592. package/dist/field/Field.d.ts +3 -3
  593. package/dist/field/Field.d.ts.map +1 -1
  594. package/dist/field/Field.js +13 -12
  595. package/dist/field/Field.js.map +1 -1
  596. package/dist/field/RenderLexical/index.d.ts +2 -2
  597. package/dist/field/RenderLexical/index.d.ts.map +1 -1
  598. package/dist/field/RenderLexical/index.js.map +1 -1
  599. package/dist/field/RichTextViewProvider.d.ts +1 -1
  600. package/dist/field/RichTextViewProvider.d.ts.map +1 -1
  601. package/dist/field/RichTextViewProvider.js.map +1 -1
  602. package/dist/field/ViewSelector.css +32 -0
  603. package/dist/field/ViewSelector.d.ts +1 -1
  604. package/dist/field/ViewSelector.d.ts.map +1 -1
  605. package/dist/field/ViewSelector.js +1 -0
  606. package/dist/field/ViewSelector.js.map +1 -1
  607. package/dist/field/bundled.css +1 -1
  608. package/dist/field/index.css +60 -0
  609. package/dist/field/index.d.ts +1 -1
  610. package/dist/field/index.d.ts.map +1 -1
  611. package/dist/field/index.js +1 -1
  612. package/dist/field/index.js.map +1 -1
  613. package/dist/field/rscEntry.d.ts +1 -1
  614. package/dist/field/rscEntry.d.ts.map +1 -1
  615. package/dist/field/rscEntry.js +2 -0
  616. package/dist/field/rscEntry.js.map +1 -1
  617. package/dist/hooks.d.ts +6 -0
  618. package/dist/hooks.d.ts.map +1 -0
  619. package/dist/hooks.js +548 -0
  620. package/dist/hooks.js.map +1 -0
  621. package/dist/index.d.ts +13 -19
  622. package/dist/index.d.ts.map +1 -1
  623. package/dist/index.js +12 -629
  624. package/dist/index.js.map +1 -1
  625. package/dist/lexical/LexicalEditor.css +50 -0
  626. package/dist/lexical/LexicalEditor.d.ts +1 -1
  627. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  628. package/dist/lexical/LexicalEditor.js +1 -0
  629. package/dist/lexical/LexicalEditor.js.map +1 -1
  630. package/dist/lexical/LexicalProvider.d.ts +1 -1
  631. package/dist/lexical/LexicalProvider.d.ts.map +1 -1
  632. package/dist/lexical/LexicalProvider.js.map +1 -1
  633. package/dist/lexical/config/client/EditorConfigProvider.d.ts +1 -1
  634. package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
  635. package/dist/lexical/config/client/EditorConfigProvider.js.map +1 -1
  636. package/dist/lexical/config/client/loader.d.ts +1 -1
  637. package/dist/lexical/config/client/loader.d.ts.map +1 -1
  638. package/dist/lexical/config/client/loader.js +5 -1
  639. package/dist/lexical/config/client/loader.js.map +1 -1
  640. package/dist/lexical/config/client/sanitize.d.ts +1 -1
  641. package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
  642. package/dist/lexical/config/client/sanitize.js.map +1 -1
  643. package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
  644. package/dist/lexical/config/server/sanitize.js +9 -17
  645. package/dist/lexical/config/server/sanitize.js.map +1 -1
  646. package/dist/lexical/config/types.d.ts +1 -1
  647. package/dist/lexical/config/types.d.ts.map +1 -1
  648. package/dist/lexical/config/types.js.map +1 -1
  649. package/dist/lexical/nodes/index.d.ts +1 -1
  650. package/dist/lexical/nodes/index.d.ts.map +1 -1
  651. package/dist/lexical/nodes/index.js.map +1 -1
  652. package/dist/lexical/plugins/DecoratorPlugin/index.css +11 -0
  653. package/dist/lexical/plugins/DecoratorPlugin/index.d.ts +1 -1
  654. package/dist/lexical/plugins/DecoratorPlugin/index.d.ts.map +1 -1
  655. package/dist/lexical/plugins/DecoratorPlugin/index.js +1 -0
  656. package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
  657. package/dist/lexical/plugins/InsertParagraphAtEnd/index.css +52 -0
  658. package/dist/lexical/plugins/InsertParagraphAtEnd/index.d.ts +1 -1
  659. package/dist/lexical/plugins/InsertParagraphAtEnd/index.d.ts.map +1 -1
  660. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js +1 -0
  661. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
  662. package/dist/lexical/plugins/MarkdownShortcut/index.d.ts.map +1 -1
  663. package/dist/lexical/plugins/MarkdownShortcut/index.js +1 -1
  664. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  665. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts +1 -1
  666. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts.map +1 -1
  667. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js.map +1 -1
  668. package/dist/lexical/plugins/SlashMenu/index.css +61 -0
  669. package/dist/lexical/plugins/SlashMenu/index.d.ts +1 -1
  670. package/dist/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  671. package/dist/lexical/plugins/SlashMenu/index.js +2 -0
  672. package/dist/lexical/plugins/SlashMenu/index.js.map +1 -1
  673. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.css +40 -0
  674. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts +1 -1
  675. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts.map +1 -1
  676. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +1 -0
  677. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  678. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
  679. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +84 -0
  680. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts +1 -1
  681. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
  682. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +16 -9
  683. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  684. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +1 -1
  685. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js.map +1 -1
  686. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.d.ts.map +1 -1
  687. package/dist/lexical/theme/EditorTheme.css +358 -0
  688. package/dist/lexical/theme/EditorTheme.d.ts.map +1 -1
  689. package/dist/lexical/theme/EditorTheme.js +1 -0
  690. package/dist/lexical/theme/EditorTheme.js.map +1 -1
  691. package/dist/lexical/ui/ContentEditable.css +95 -0
  692. package/dist/lexical/ui/ContentEditable.d.ts +1 -1
  693. package/dist/lexical/ui/ContentEditable.d.ts.map +1 -1
  694. package/dist/lexical/ui/ContentEditable.js +1 -0
  695. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  696. package/dist/lexical/ui/icons/Code/index.js +1 -1
  697. package/dist/lexical/ui/icons/Code/index.js.map +1 -1
  698. package/dist/lexical/ui/icons/CodeBlock/index.js +1 -1
  699. package/dist/lexical/ui/icons/CodeBlock/index.js.map +1 -1
  700. package/dist/lexical/ui/icons/Link/index.js +1 -1
  701. package/dist/lexical/ui/icons/Link/index.js.map +1 -1
  702. package/dist/lexical/ui/icons/Page/index.d.ts +5 -0
  703. package/dist/lexical/ui/icons/Page/index.d.ts.map +1 -0
  704. package/dist/lexical/ui/icons/Page/index.js +21 -0
  705. package/dist/lexical/ui/icons/Page/index.js.map +1 -0
  706. package/dist/lexical/ui/icons/Trash/index.d.ts +10 -0
  707. package/dist/lexical/ui/icons/Trash/index.d.ts.map +1 -0
  708. package/dist/lexical/ui/icons/Trash/index.js +29 -0
  709. package/dist/lexical/ui/icons/Trash/index.js.map +1 -0
  710. package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts +17 -0
  711. package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts.map +1 -0
  712. package/dist/lexical/utils/markdown/convertFromMarkdownString.js +27 -0
  713. package/dist/lexical/utils/markdown/convertFromMarkdownString.js.map +1 -0
  714. package/dist/lexical/utils/markdown/convertFromMarkdownString.spec.js +88 -0
  715. package/dist/lexical/utils/markdown/convertFromMarkdownString.spec.js.map +1 -0
  716. package/dist/lexical/utils/markdown/createBlockNode.d.ts +1 -1
  717. package/dist/lexical/utils/markdown/createBlockNode.d.ts.map +1 -1
  718. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  719. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts +25 -0
  720. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts.map +1 -0
  721. package/dist/lexical/utils/markdown/normalizeMarkdown.js +91 -0
  722. package/dist/lexical/utils/markdown/normalizeMarkdown.js.map +1 -0
  723. package/dist/lexical-proxy/@lexical-markdown.d.ts +1 -1
  724. package/dist/lexical-proxy/@lexical-markdown.d.ts.map +1 -1
  725. package/dist/lexical-proxy/@lexical-markdown.js +1 -1
  726. package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
  727. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts +1 -1
  728. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts.map +1 -1
  729. package/dist/populateGraphQL/populateLexicalPopulationPromises.js.map +1 -1
  730. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.d.ts.map +1 -1
  731. package/dist/types/builtInNodes.d.ts +14 -0
  732. package/dist/types/builtInNodes.d.ts.map +1 -0
  733. package/dist/types/builtInNodes.js +203 -0
  734. package/dist/types/builtInNodes.js.map +1 -0
  735. package/dist/{types.d.ts → types/index.d.ts} +25 -26
  736. package/dist/types/index.d.ts.map +1 -0
  737. package/dist/types/index.js +2 -0
  738. package/dist/types/index.js.map +1 -0
  739. package/dist/types/jsonSchemaHelpers.d.ts +30 -0
  740. package/dist/types/jsonSchemaHelpers.d.ts.map +1 -0
  741. package/dist/types/jsonSchemaHelpers.js +58 -0
  742. package/dist/types/jsonSchemaHelpers.js.map +1 -0
  743. package/dist/types/nodeTypes.d.ts +128 -0
  744. package/dist/types/nodeTypes.d.ts.map +1 -0
  745. package/dist/types/nodeTypes.js +6 -0
  746. package/dist/types/nodeTypes.js.map +1 -0
  747. package/dist/types/schema.d.ts +6 -0
  748. package/dist/types/schema.d.ts.map +1 -0
  749. package/dist/types/schema.js +90 -0
  750. package/dist/types/schema.js.map +1 -0
  751. package/dist/utilities/applyBaseFilterToFields.d.ts.map +1 -1
  752. package/dist/utilities/applyBaseFilterToFields.js +1 -2
  753. package/dist/utilities/applyBaseFilterToFields.js.map +1 -1
  754. package/dist/utilities/buildEditorState.d.ts +18 -4
  755. package/dist/utilities/buildEditorState.d.ts.map +1 -1
  756. package/dist/utilities/buildEditorState.js +8 -0
  757. package/dist/utilities/buildEditorState.js.map +1 -1
  758. package/dist/utilities/buildInitialState.d.ts +2 -1
  759. package/dist/utilities/buildInitialState.d.ts.map +1 -1
  760. package/dist/utilities/buildInitialState.js.map +1 -1
  761. package/dist/utilities/createClientFeature.d.ts +1 -1
  762. package/dist/utilities/createClientFeature.d.ts.map +1 -1
  763. package/dist/utilities/createClientFeature.js.map +1 -1
  764. package/dist/utilities/editorConfigFactory.d.ts +1 -1
  765. package/dist/utilities/editorConfigFactory.d.ts.map +1 -1
  766. package/dist/utilities/editorConfigFactory.js.map +1 -1
  767. package/dist/utilities/fieldsDrawer/Drawer.d.ts.map +1 -1
  768. package/dist/utilities/fieldsDrawer/Drawer.js +19 -10
  769. package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
  770. package/dist/utilities/fieldsDrawer/DrawerContent.d.ts +4 -1
  771. package/dist/utilities/fieldsDrawer/DrawerContent.d.ts.map +1 -1
  772. package/dist/utilities/fieldsDrawer/DrawerContent.js +8 -7
  773. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  774. package/dist/utilities/fieldsDrawer/index.css +12 -0
  775. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts +29 -0
  776. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts.map +1 -0
  777. package/dist/utilities/fieldsDrawer/useDrawerSubmit.js +97 -0
  778. package/dist/utilities/fieldsDrawer/useDrawerSubmit.js.map +1 -0
  779. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.d.ts +1 -0
  780. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.d.ts.map +1 -1
  781. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js +34 -18
  782. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js.map +1 -1
  783. package/dist/utilities/fieldsDrawer/useLexicalDrawer.d.ts.map +1 -1
  784. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.d.ts.map +1 -1
  785. package/dist/utilities/generateImportMap.d.ts +1 -1
  786. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  787. package/dist/utilities/generateImportMap.js.map +1 -1
  788. package/dist/utilities/generateSchemaMap.d.ts.map +1 -1
  789. package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts.map +1 -1
  790. package/dist/utilities/initLexicalFeatures.d.ts +1 -1
  791. package/dist/utilities/initLexicalFeatures.d.ts.map +1 -1
  792. package/dist/utilities/initLexicalFeatures.js.map +1 -1
  793. package/dist/utilities/recurseNodeTree.d.ts.map +1 -1
  794. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts.map +1 -1
  795. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js +1 -1
  796. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
  797. package/dist/utilities/useLexicalFeature.d.ts.map +1 -1
  798. package/dist/validate/index.d.ts.map +1 -1
  799. package/package.json +27 -31
  800. package/dist/exports/client/Field-NXLXFFLW.js +0 -2
  801. package/dist/exports/client/Field-NXLXFFLW.js.map +0 -7
  802. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js +0 -2
  803. package/dist/exports/client/RelationshipComponent-BG3DPV3T.js.map +0 -7
  804. package/dist/exports/client/chunk-BZZVLW4U.js.map +0 -7
  805. package/dist/exports/client/chunk-DZDHVMML.js +0 -2
  806. package/dist/exports/client/chunk-DZDHVMML.js.map +0 -7
  807. package/dist/exports/client/chunk-F26IQ5RE.js +0 -2
  808. package/dist/exports/client/chunk-F26IQ5RE.js.map +0 -7
  809. package/dist/exports/client/chunk-FTT5KJ6W.js +0 -12
  810. package/dist/exports/client/chunk-FTT5KJ6W.js.map +0 -7
  811. package/dist/exports/client/chunk-INBEEENE.js +0 -2
  812. package/dist/exports/client/chunk-INBEEENE.js.map +0 -7
  813. package/dist/exports/client/chunk-QJ5EETIB.js +0 -2
  814. package/dist/exports/client/chunk-QJ5EETIB.js.map +0 -7
  815. package/dist/exports/client/component-XIHC3W6W.js +0 -2
  816. package/dist/exports/client/component-XIHC3W6W.js.map +0 -7
  817. package/dist/exports/client/componentInline-LCHKRXOV.js +0 -2
  818. package/dist/features/blockquote/markdownTransformer.d.ts +0 -3
  819. package/dist/features/blockquote/markdownTransformer.d.ts.map +0 -1
  820. package/dist/features/blockquote/markdownTransformer.js +0 -33
  821. package/dist/features/blockquote/markdownTransformer.js.map +0 -1
  822. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.d.ts +0 -4
  823. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.d.ts.map +0 -1
  824. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js +0 -7
  825. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/linebreak.js.map +0 -1
  826. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.d.ts +0 -4
  827. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.d.ts.map +0 -1
  828. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js +0 -38
  829. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/paragraph.js.map +0 -1
  830. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.d.ts +0 -4
  831. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.d.ts.map +0 -1
  832. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js +0 -9
  833. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/tab.js.map +0 -1
  834. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.d.ts +0 -4
  835. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.d.ts.map +0 -1
  836. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js +0 -33
  837. package/dist/features/converters/lexicalToHtml_deprecated/converter/converters/text.js.map +0 -1
  838. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.d.ts +0 -6
  839. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.d.ts.map +0 -1
  840. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js +0 -9
  841. package/dist/features/converters/lexicalToHtml_deprecated/converter/defaultConverters.js.map +0 -1
  842. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.d.ts +0 -70
  843. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.d.ts.map +0 -1
  844. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js +0 -104
  845. package/dist/features/converters/lexicalToHtml_deprecated/converter/index.js.map +0 -1
  846. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.d.ts +0 -27
  847. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.d.ts.map +0 -1
  848. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js +0 -2
  849. package/dist/features/converters/lexicalToHtml_deprecated/converter/types.js.map +0 -1
  850. package/dist/features/converters/lexicalToHtml_deprecated/field/index.d.ts +0 -39
  851. package/dist/features/converters/lexicalToHtml_deprecated/field/index.d.ts.map +0 -1
  852. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js +0 -122
  853. package/dist/features/converters/lexicalToHtml_deprecated/field/index.js.map +0 -1
  854. package/dist/features/converters/lexicalToHtml_deprecated/index.d.ts +0 -12
  855. package/dist/features/converters/lexicalToHtml_deprecated/index.d.ts.map +0 -1
  856. package/dist/features/converters/lexicalToHtml_deprecated/index.js +0 -11
  857. package/dist/features/converters/lexicalToHtml_deprecated/index.js.map +0 -1
  858. package/dist/features/format/bold/markdownTransformers.d.ts +0 -6
  859. package/dist/features/format/bold/markdownTransformers.d.ts.map +0 -1
  860. package/dist/features/format/bold/markdownTransformers.js +0 -23
  861. package/dist/features/format/bold/markdownTransformers.js.map +0 -1
  862. package/dist/features/format/inlineCode/markdownTransformers.d.ts +0 -3
  863. package/dist/features/format/inlineCode/markdownTransformers.d.ts.map +0 -1
  864. package/dist/features/format/inlineCode/markdownTransformers.js +0 -6
  865. package/dist/features/format/inlineCode/markdownTransformers.js.map +0 -1
  866. package/dist/features/format/italic/markdownTransformers.d.ts +0 -4
  867. package/dist/features/format/italic/markdownTransformers.d.ts.map +0 -1
  868. package/dist/features/format/italic/markdownTransformers.js +0 -12
  869. package/dist/features/format/italic/markdownTransformers.js.map +0 -1
  870. package/dist/features/format/strikethrough/markdownTransformers.d.ts +0 -3
  871. package/dist/features/format/strikethrough/markdownTransformers.d.ts.map +0 -1
  872. package/dist/features/format/strikethrough/markdownTransformers.js +0 -6
  873. package/dist/features/format/strikethrough/markdownTransformers.js.map +0 -1
  874. package/dist/features/link/nodes/types.d.ts +0 -27
  875. package/dist/features/link/nodes/types.d.ts.map +0 -1
  876. package/dist/features/link/nodes/types.js +0 -2
  877. package/dist/features/link/nodes/types.js.map +0 -1
  878. package/dist/features/lists/checklist/markdownTransformers.d.ts +0 -3
  879. package/dist/features/lists/checklist/markdownTransformers.d.ts.map +0 -1
  880. package/dist/features/lists/checklist/markdownTransformers.js +0 -12
  881. package/dist/features/lists/checklist/markdownTransformers.js.map +0 -1
  882. package/dist/features/lists/htmlConverter.d.ts +0 -5
  883. package/dist/features/lists/htmlConverter.d.ts.map +0 -1
  884. package/dist/features/lists/htmlConverter.js +0 -81
  885. package/dist/features/lists/htmlConverter.js.map +0 -1
  886. package/dist/features/lists/orderedList/markdownTransformer.d.ts +0 -3
  887. package/dist/features/lists/orderedList/markdownTransformer.d.ts.map +0 -1
  888. package/dist/features/lists/orderedList/markdownTransformer.js +0 -12
  889. package/dist/features/lists/orderedList/markdownTransformer.js.map +0 -1
  890. package/dist/features/lists/shared/markdown.d.ts +0 -6
  891. package/dist/features/lists/shared/markdown.d.ts.map +0 -1
  892. package/dist/features/lists/shared/markdown.js +0 -57
  893. package/dist/features/lists/shared/markdown.js.map +0 -1
  894. package/dist/features/lists/unorderedList/markdownTransformer.d.ts +0 -3
  895. package/dist/features/lists/unorderedList/markdownTransformer.d.ts.map +0 -1
  896. package/dist/features/lists/unorderedList/markdownTransformer.js +0 -12
  897. package/dist/features/lists/unorderedList/markdownTransformer.js.map +0 -1
  898. package/dist/lexical/utils/guard.d.ts +0 -5
  899. package/dist/lexical/utils/guard.d.ts.map +0 -1
  900. package/dist/lexical/utils/guard.js +0 -9
  901. package/dist/lexical/utils/guard.js.map +0 -1
  902. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts +0 -2
  903. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts.map +0 -1
  904. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +0 -2
  905. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +0 -1
  906. package/dist/nodeTypes.d.ts +0 -74
  907. package/dist/nodeTypes.d.ts.map +0 -1
  908. package/dist/nodeTypes.js +0 -5
  909. package/dist/nodeTypes.js.map +0 -1
  910. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts +0 -14
  911. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts.map +0 -1
  912. package/dist/packages/@lexical/markdown/MarkdownExport.js +0 -213
  913. package/dist/packages/@lexical/markdown/MarkdownExport.js.map +0 -1
  914. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts +0 -19
  915. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts.map +0 -1
  916. package/dist/packages/@lexical/markdown/MarkdownImport.js +0 -198
  917. package/dist/packages/@lexical/markdown/MarkdownImport.js.map +0 -1
  918. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts +0 -11
  919. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts.map +0 -1
  920. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +0 -304
  921. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +0 -1
  922. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts +0 -147
  923. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts.map +0 -1
  924. package/dist/packages/@lexical/markdown/MarkdownTransformers.js +0 -268
  925. package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +0 -1
  926. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts +0 -22
  927. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts.map +0 -1
  928. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +0 -91
  929. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +0 -1
  930. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts +0 -21
  931. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts.map +0 -1
  932. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +0 -54
  933. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +0 -1
  934. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts +0 -18
  935. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts.map +0 -1
  936. package/dist/packages/@lexical/markdown/importTextTransformers.js +0 -54
  937. package/dist/packages/@lexical/markdown/importTextTransformers.js.map +0 -1
  938. package/dist/packages/@lexical/markdown/index.d.ts +0 -29
  939. package/dist/packages/@lexical/markdown/index.d.ts.map +0 -1
  940. package/dist/packages/@lexical/markdown/index.js +0 -39
  941. package/dist/packages/@lexical/markdown/index.js.map +0 -1
  942. package/dist/packages/@lexical/markdown/utils.d.ts +0 -34
  943. package/dist/packages/@lexical/markdown/utils.d.ts.map +0 -1
  944. package/dist/packages/@lexical/markdown/utils.js +0 -267
  945. package/dist/packages/@lexical/markdown/utils.js.map +0 -1
  946. package/dist/types.d.ts.map +0 -1
  947. package/dist/types.js +0 -2
  948. package/dist/types.js.map +0 -1
  949. /package/dist/exports/client/{componentInline-LCHKRXOV.js.map → componentInline-H24N7GUG.js.map} +0 -0
@@ -4,15 +4,16 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js';
5
5
  import { useLexicalEditable } from '@lexical/react/useLexicalEditable';
6
6
  import { getTranslation } from '@payloadcms/translations';
7
- import { Button, formatDrawerSlug, Thumbnail, useConfig, useEditDepth, usePayloadAPI, useTranslation } from '@payloadcms/ui';
8
- import { $getNodeByKey } from 'lexical';
7
+ import { Button, formatDrawerSlug, Pill, Thumbnail, useConfig, useEditDepth, usePayloadAPI, useTranslation } from '@payloadcms/ui';
8
+ import { $getNodeByKey, $getSelection, $isNodeSelection, $isRangeSelection } from 'lexical';
9
9
  import { formatAdminURL, isImage } from 'payload/shared';
10
- import React, { useCallback, useId, useReducer, useRef, useState } from 'react';
10
+ import React, { useCallback, useEffect, useId, useReducer, useRef, useState } from 'react';
11
11
  import { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js';
12
12
  import { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js';
13
13
  import { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js';
14
14
  import { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js';
15
15
  import { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js';
16
+ import './index.css';
16
17
  const initialParams = {
17
18
  depth: 0
18
19
  };
@@ -56,6 +57,7 @@ export const UploadComponent = props => {
56
57
  i18n,
57
58
  t
58
59
  } = useTranslation();
60
+ const [isSelected, setIsSelected] = useState(false);
59
61
  const [cacheBust, dispatchCacheBust] = useReducer(state => state + 1, 0);
60
62
  const [relatedCollection] = useState(() => getEntityConfig({
61
63
  collectionSlug: relationTo
@@ -90,6 +92,29 @@ export const UploadComponent = props => {
90
92
  initialParams
91
93
  });
92
94
  const thumbnailSRC = data?.thumbnailURL || data?.url;
95
+ useEffect(() => {
96
+ return editor.registerUpdateListener(({
97
+ editorState
98
+ }) => {
99
+ editorState.read(() => {
100
+ const selection = $getSelection();
101
+ if ($isNodeSelection(selection)) {
102
+ setIsSelected(selection.has(nodeKey));
103
+ } else if ($isRangeSelection(selection)) {
104
+ const nodes = selection.getNodes();
105
+ setIsSelected(nodes.some(node => node.getKey() === nodeKey));
106
+ } else {
107
+ setIsSelected(false);
108
+ }
109
+ });
110
+ });
111
+ }, [editor, nodeKey]);
112
+ useEffect(() => {
113
+ const outerEl = uploadRef.current?.closest(`.${baseClass}`);
114
+ if (outerEl) {
115
+ outerEl.classList.toggle(`${baseClass}--selected`, isSelected);
116
+ }
117
+ }, [isSelected, baseClass]);
93
118
  const removeUpload = useCallback(() => {
94
119
  editor.update(() => {
95
120
  $getNodeByKey(nodeKey)?.remove();
@@ -123,9 +148,9 @@ export const UploadComponent = props => {
123
148
  "data-align": format || undefined,
124
149
  "data-filename": data?.filename,
125
150
  ref: uploadRef,
126
- children: [/*#__PURE__*/_jsxs("div", {
151
+ children: [/*#__PURE__*/_jsx("div", {
127
152
  className: `${baseClass}__card`,
128
- children: [/*#__PURE__*/_jsxs("div", {
153
+ children: /*#__PURE__*/_jsxs("div", {
129
154
  className: `${baseClass}__media`,
130
155
  children: [/*#__PURE__*/_jsx(Thumbnail, {
131
156
  collectionSlug: relationTo,
@@ -133,65 +158,63 @@ export const UploadComponent = props => {
133
158
  height: data?.height,
134
159
  size: "none",
135
160
  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)
161
+ }), isEditable && /*#__PURE__*/_jsxs("div", {
162
+ className: `${baseClass}__floater`,
163
+ "data-theme": "dark",
164
+ children: [/*#__PURE__*/_jsx(Pill, {
165
+ className: `${baseClass}__collectionLabel`,
166
+ pillStyle: "dark",
167
+ size: "small",
168
+ children: getTranslation(relatedCollection.labels.singular, i18n)
169
+ }), /*#__PURE__*/_jsx(DocumentDrawerToggler, {
170
+ className: `${baseClass}__doc-drawer-toggler`,
171
+ children: /*#__PURE__*/_jsx("span", {
172
+ className: `${baseClass}__filename`,
173
+ children: data?.filename || t('general:untitled')
174
+ })
175
+ }), hasExtraFields ? /*#__PURE__*/_jsx(Button, {
176
+ buttonStyle: "ghost",
177
+ className: `${baseClass}__upload-drawer-toggler`,
178
+ disabled: !isEditable,
179
+ el: "button",
180
+ icon: "write",
181
+ onClick: toggleDrawer,
182
+ round: true,
183
+ size: "medium",
184
+ tooltip: t('fields:editRelationship')
185
+ }) : null, /*#__PURE__*/_jsx("div", {
186
+ className: `${baseClass}__divider`
187
+ }), /*#__PURE__*/_jsx(Button, {
188
+ buttonStyle: "ghost",
189
+ className: `${baseClass}__swap-drawer-toggler`,
190
+ disabled: !isEditable,
191
+ el: "button",
192
+ icon: "swap",
193
+ onClick: () => {
194
+ editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {
195
+ replace: {
196
+ nodeKey
197
+ }
198
+ });
199
+ },
200
+ round: true,
201
+ size: "medium",
202
+ tooltip: t('fields:swapUpload')
203
+ }), /*#__PURE__*/_jsx(Button, {
204
+ buttonStyle: "ghost",
205
+ className: `${baseClass}__removeButton`,
206
+ disabled: !isEditable,
207
+ icon: "x",
208
+ onClick: e => {
209
+ e.preventDefault();
210
+ removeUpload();
211
+ },
212
+ round: true,
213
+ size: "medium",
214
+ tooltip: t('fields:removeUpload')
215
+ })]
193
216
  })]
194
- })]
217
+ })
195
218
  }), value ? /*#__PURE__*/_jsx(DocumentDrawer, {
196
219
  onSave: updateUpload
197
220
  }) : null, hasExtraFields ? /*#__PURE__*/_jsx(FieldsDrawer, {
@@ -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,"file":"index.js","names":["useLexicalComposerContext","useLexicalEditable","getTranslation","Button","formatDrawerSlug","Pill","Thumbnail","useConfig","useEditDepth","usePayloadAPI","useTranslation","$getNodeByKey","$getSelection","$isNodeSelection","$isRangeSelection","formatAdminURL","isImage","React","useCallback","useEffect","useId","useReducer","useRef","useState","useEditorConfigContext","FieldsDrawer","useLexicalDocumentDrawer","useLexicalDrawer","INSERT_UPLOAD_WITH_DRAWER_COMMAND","initialParams","depth","UploadComponent","props","className","baseClass","data","fields","relationTo","value","format","nodeKey","Error","config","routes","api","serverURL","getEntityConfig","uploadRef","uuid","editDepth","editor","editorConfig","fieldProps","schemaPath","isEditable","i18n","t","isSelected","setIsSelected","cacheBust","dispatchCacheBust","state","relatedCollection","collectionSlug","componentID","extraFieldsDrawerSlug","slug","toggleDrawer","closeDocumentDrawer","DocumentDrawer","DocumentDrawerToggler","id","setParams","apiRoute","path","thumbnailSRC","thumbnailURL","url","registerUpdateListener","editorState","read","selection","has","nodes","getNodes","some","node","getKey","outerEl","current","closest","classList","toggle","removeUpload","update","remove","updateUpload","_data","hasExtraFields","resolvedFeatureMap","get","sanitizedClientFeatureProps","collections","onExtraFieldsDrawerSubmit","_","uploadNode","newData","getData","setData","aspectRatio","width","height","_jsxs","undefined","filename","ref","_jsx","fileSrc","mimeType","size","pillStyle","labels","singular","buttonStyle","disabled","el","icon","onClick","round","tooltip","dispatchCommand","replace","e","preventDefault","onSave","drawerSlug","drawerTitle","label","featureKey","handleDrawerSubmit","schemaPathSuffix"],"sources":["../../../../../src/features/upload/client/component/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Data, FormState, JsonObject } from 'payload'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n formatDrawerSlug,\n Pill,\n Thumbnail,\n useConfig,\n useEditDepth,\n usePayloadAPI,\n useTranslation,\n} from '@payloadcms/ui'\nimport {\n $getNodeByKey,\n $getSelection,\n $isNodeSelection,\n $isRangeSelection,\n type ElementFormatType,\n} from 'lexical'\nimport { formatAdminURL, isImage } from 'payload/shared'\nimport React, { useCallback, useEffect, useId, useReducer, useRef, useState } from 'react'\n\nimport type { BaseClientFeatureProps } from '../../../typesClient.js'\nimport type { UploadData } from '../../server/schema.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\nimport type { UploadNode } from '../nodes/UploadNode.js'\n\nimport { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'\nimport { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'\nimport { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'\nimport { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'\nimport { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'\nimport './index.css'\n\nconst initialParams = {\n depth: 0,\n}\n\nexport type ElementProps = {\n className: string\n data: UploadData\n format?: ElementFormatType\n nodeKey: string\n}\n\nexport const UploadComponent: React.FC<ElementProps> = (props) => {\n const {\n className: baseClass,\n data: { fields, relationTo, value },\n format,\n nodeKey,\n } = props\n\n if (typeof value === 'object') {\n throw new Error(\n 'Upload value should be a string or number. The Lexical Upload component should not receive the populated value object.',\n )\n }\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n const uploadRef = useRef<HTMLDivElement | null>(null)\n const { uuid } = useEditorConfigContext()\n const editDepth = useEditDepth()\n const [editor] = useLexicalComposerContext()\n\n const {\n editorConfig,\n fieldProps: { schemaPath },\n } = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n const { i18n, t } = useTranslation()\n const [isSelected, setIsSelected] = useState(false)\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0)\n const [relatedCollection] = useState<ClientCollectionConfig>(() =>\n getEntityConfig({ collectionSlug: relationTo }),\n )\n\n const componentID = useId()\n\n const extraFieldsDrawerSlug = formatDrawerSlug({\n slug: `lexical-upload-drawer-` + uuid + componentID, // There can be multiple upload components, each with their own drawer, in one single editor => separate them by componentID\n depth: editDepth,\n })\n\n // Need to use hook to initialize useEffect that restores cursor position\n const { toggleDrawer } = useLexicalDrawer(extraFieldsDrawerSlug, true)\n\n const { closeDocumentDrawer, DocumentDrawer, DocumentDrawerToggler } = useLexicalDocumentDrawer({\n id: value,\n collectionSlug: relatedCollection.slug,\n })\n\n // Get the referenced document\n const [{ data }, { setParams }] = usePayloadAPI(\n formatAdminURL({ apiRoute: api, path: `/${relatedCollection.slug}/${value}`, serverURL }),\n { initialParams },\n )\n\n const thumbnailSRC = data?.thumbnailURL || data?.url\n\n useEffect(() => {\n return editor.registerUpdateListener(({ editorState }) => {\n editorState.read(() => {\n const selection = $getSelection()\n\n if ($isNodeSelection(selection)) {\n setIsSelected(selection.has(nodeKey))\n } else if ($isRangeSelection(selection)) {\n const nodes = selection.getNodes()\n setIsSelected(nodes.some((node) => node.getKey() === nodeKey))\n } else {\n setIsSelected(false)\n }\n })\n })\n }, [editor, nodeKey])\n\n useEffect(() => {\n const outerEl = uploadRef.current?.closest(`.${baseClass}`)\n\n if (outerEl) {\n outerEl.classList.toggle(`${baseClass}--selected`, isSelected)\n }\n }, [isSelected, baseClass])\n\n const removeUpload = useCallback(() => {\n editor.update(() => {\n $getNodeByKey(nodeKey)?.remove()\n })\n }, [editor, nodeKey])\n\n const updateUpload = useCallback(\n (_data: Data) => {\n setParams({\n ...initialParams,\n cacheBust, // do this to get the usePayloadAPI to re-fetch the data even though the URL string hasn't changed\n })\n\n dispatchCacheBust()\n closeDocumentDrawer()\n },\n [setParams, cacheBust, closeDocumentDrawer],\n )\n\n const hasExtraFields = (\n editorConfig?.resolvedFeatureMap?.get('upload')\n ?.sanitizedClientFeatureProps as BaseClientFeatureProps<UploadFeaturePropsClient>\n ).collections?.[relatedCollection.slug]?.hasExtraFields\n\n const onExtraFieldsDrawerSubmit = useCallback(\n (_: FormState, data: JsonObject) => {\n // Update lexical node (with key nodeKey) with new data\n editor.update(() => {\n const uploadNode: null | UploadNode = $getNodeByKey(nodeKey)\n if (uploadNode) {\n const newData: UploadData = {\n ...uploadNode.getData(),\n fields: data,\n }\n uploadNode.setData(newData)\n }\n })\n },\n [editor, nodeKey],\n )\n\n const aspectRatio =\n thumbnailSRC && data?.width && data?.height\n ? data.width > data.height\n ? 'landscape'\n : 'portrait'\n : 'landscape'\n\n return (\n <div\n className={`${baseClass}__contents ${baseClass}__contents--${aspectRatio}`}\n data-align={format || undefined}\n data-filename={data?.filename}\n ref={uploadRef}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__media`}>\n <Thumbnail\n collectionSlug={relationTo}\n fileSrc={isImage(data?.mimeType) ? thumbnailSRC : null}\n height={data?.height}\n size=\"none\"\n width={data?.width}\n />\n\n {isEditable && (\n <div className={`${baseClass}__floater`} data-theme=\"dark\">\n <Pill className={`${baseClass}__collectionLabel`} pillStyle=\"dark\" size=\"small\">\n {getTranslation(relatedCollection.labels.singular, i18n)}\n </Pill>\n\n <DocumentDrawerToggler className={`${baseClass}__doc-drawer-toggler`}>\n <span className={`${baseClass}__filename`}>\n {data?.filename || t('general:untitled')}\n </span>\n </DocumentDrawerToggler>\n\n {hasExtraFields ? (\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__upload-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"write\"\n onClick={toggleDrawer}\n round\n size=\"medium\"\n tooltip={t('fields:editRelationship')}\n />\n ) : null}\n\n <div className={`${baseClass}__divider`} />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__swap-drawer-toggler`}\n disabled={!isEditable}\n el=\"button\"\n icon=\"swap\"\n onClick={() => {\n editor.dispatchCommand(INSERT_UPLOAD_WITH_DRAWER_COMMAND, {\n replace: { nodeKey },\n })\n }}\n round\n size=\"medium\"\n tooltip={t('fields:swapUpload')}\n />\n\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__removeButton`}\n disabled={!isEditable}\n icon=\"x\"\n onClick={(e) => {\n e.preventDefault()\n removeUpload()\n }}\n round\n size=\"medium\"\n tooltip={t('fields:removeUpload')}\n />\n </div>\n )}\n </div>\n </div>\n\n {value ? <DocumentDrawer onSave={updateUpload} /> : null}\n {hasExtraFields ? (\n <FieldsDrawer\n data={fields}\n drawerSlug={extraFieldsDrawerSlug}\n drawerTitle={t('general:editLabel', {\n label: getTranslation(relatedCollection.labels.singular, i18n),\n })}\n featureKey=\"upload\"\n handleDrawerSubmit={onExtraFieldsDrawerSubmit}\n schemaPath={schemaPath}\n schemaPathSuffix={relatedCollection.slug}\n />\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,2 @@
1
- import '../index.scss';
2
1
  export declare const PendingUploadComponent: () => React.ReactNode;
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/upload/client/component/pending/index.tsx"],"names":[],"mappings":"AAIA,OAAO,eAAe,CAAA;AAEtB,eAAO,MAAM,sBAAsB,QAAO,KAAK,CAAC,SAM/C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/upload/client/component/pending/index.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB,QAAO,KAAK,CAAC,SAM/C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ShimmerEffect","PendingUploadComponent","_jsx","className","height","width"],"sources":["../../../../../../src/features/upload/client/component/pending/index.tsx"],"sourcesContent":["'use client'\n\nimport { ShimmerEffect } from '@payloadcms/ui'\n\nimport '../index.scss'\n\nexport const PendingUploadComponent = (): React.ReactNode => {\n return (\n <div className={'lexical-upload'}>\n <ShimmerEffect height={'95px'} width={'203px'} />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,SAASA,aAAa,QAAQ;AAI9B,OAAO,MAAMC,sBAAA,GAAyBA,CAAA;EACpC,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAW;cACd,aAAAD,IAAA,CAACF,aAAA;MAAcI,MAAA,EAAQ;MAAQC,KAAA,EAAO;;;AAG5C","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["ShimmerEffect","PendingUploadComponent","_jsx","className","height","width"],"sources":["../../../../../../src/features/upload/client/component/pending/index.tsx"],"sourcesContent":["'use client'\n\nimport { ShimmerEffect } from '@payloadcms/ui'\n\nexport const PendingUploadComponent = (): React.ReactNode => {\n return (\n <div className={'lexical-upload'}>\n <ShimmerEffect height={'95px'} width={'203px'} />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,SAASA,aAAa,QAAQ;AAE9B,OAAO,MAAMC,sBAAA,GAAyBA,CAAA;EACpC,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAW;cACd,aAAAD,IAAA,CAACF,aAAA;MAAcI,MAAA,EAAQ;MAAQC,KAAA,EAAO;;;AAG5C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/drawer/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAA2C,MAAM,OAAO,CAAA;AA4C/D,KAAK,KAAK,GAAG;IACX,sBAAsB,EAAE,oBAAoB,EAAE,CAAA;CAC/C,CAAA;AA6DD,eAAO,MAAM,YAAY,+BAAgC,KAAK,KAAG,KAAK,CAAC,SAMtE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/drawer/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAA2C,MAAM,OAAO,CAAA;AA4C/D,KAAK,KAAK,GAAG;IACX,sBAAsB,EAAE,oBAAoB,EAAE,CAAA;CAC/C,CAAA;AA6DD,eAAO,MAAM,YAAY,GAAI,4BAA4B,KAAK,KAAG,KAAK,CAAC,SAMtE,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import type { DOMConversionMap, EditorConfig, LexicalEditor, LexicalNode } from 'lexical';
2
2
  import type { JSX } from 'react';
3
- import type { SerializedUploadNode, UploadData } from '../../server/nodes/UploadNode.js';
3
+ import type { SerializedUploadNode, UploadData } from '../../server/schema.js';
4
4
  import { UploadServerNode } from '../../server/nodes/UploadNode.js';
5
5
  export declare class UploadNode extends UploadServerNode {
6
6
  static clone(node: UploadServerNode): UploadServerNode;
@@ -1 +1 @@
1
- {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAMhC,OAAO,KAAK,EAEV,oBAAoB,EACpB,UAAU,EACX,MAAM,kCAAkC,CAAA;AAGzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAOnE,qBAAa,UAAW,SAAQ,gBAAgB;WAC9B,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB;WAI/C,OAAO,IAAI,MAAM;WAIjB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;WAS/C,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,UAAU;IAuBnE,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO;IAcpE,UAAU,IAAI,oBAAoB;CAG5C;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,UAAU,CAMb;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,UAAU,CAEtF"}
1
+ {"version":3,"file":"UploadNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAMhC,OAAO,KAAK,EAAuB,oBAAoB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAGnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAOnE,qBAAa,UAAW,SAAQ,gBAAgB;WAC9B,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB;WAI/C,OAAO,IAAI,MAAM;WAIjB,SAAS,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;WAS/C,UAAU,CAAC,cAAc,EAAE,oBAAoB,GAAG,UAAU;IAuBnE,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO;IAcpE,UAAU,IAAI,oBAAoB;CAG5C;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;CAC/D,GAAG,UAAU,CAMb;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,UAAU,CAEtF"}
@@ -1 +1 @@
1
- {"version":3,"file":"UploadNode.js","names":["ObjectID","$applyNodeReplacement","React","$convertUploadElement","UploadServerNode","PendingUploadComponent","RawUploadComponent","lazy","then","module","default","UploadComponent","UploadNode","clone","node","getType","importDOM","img","conversion","domNode","$createUploadNode","priority","importJSON","serializedNode","version","value","id","toHexString","importedData","fields","pending","relationTo","data","setFormat","format","decorate","editor","config","__data","_jsx","className","theme","upload","__format","nodeKey","getKey","exportJSON","$isUploadNode"],"sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"sourcesContent":["'use client'\nimport type { DOMConversionMap, EditorConfig, LexicalEditor, LexicalNode } from 'lexical'\nimport type { JSX } from 'react'\n\nimport ObjectID from 'bson-objectid'\nimport { $applyNodeReplacement } from 'lexical'\nimport * as React from 'react'\n\nimport type {\n Internal_UploadData,\n SerializedUploadNode,\n UploadData,\n} from '../../server/nodes/UploadNode.js'\n\nimport { $convertUploadElement } from '../../server/nodes/conversions.js'\nimport { UploadServerNode } from '../../server/nodes/UploadNode.js'\nimport { PendingUploadComponent } from '../component/pending/index.js'\n\nconst RawUploadComponent = React.lazy(() =>\n import('../../client/component/index.js').then((module) => ({ default: module.UploadComponent })),\n)\n\nexport class UploadNode extends UploadServerNode {\n static override clone(node: UploadServerNode): UploadServerNode {\n return super.clone(node)\n }\n\n static override getType(): string {\n return super.getType()\n }\n\n static override importDOM(): DOMConversionMap<HTMLImageElement> {\n return {\n img: (node) => ({\n conversion: (domNode) => $convertUploadElement(domNode, $createUploadNode),\n priority: 0,\n }),\n }\n }\n\n static override importJSON(serializedNode: SerializedUploadNode): UploadNode {\n if (serializedNode.version === 1 && (serializedNode?.value as unknown as { id: string })?.id) {\n serializedNode.value = (serializedNode.value as unknown as { id: string }).id\n }\n if (serializedNode.version === 2 && !serializedNode?.id) {\n serializedNode.id = new ObjectID.default().toHexString()\n serializedNode.version = 3\n }\n\n const importedData: Internal_UploadData = {\n id: serializedNode.id,\n fields: serializedNode.fields,\n pending: (serializedNode as Internal_UploadData).pending,\n relationTo: serializedNode.relationTo,\n value: serializedNode.value,\n }\n\n const node = $createUploadNode({ data: importedData })\n node.setFormat(serializedNode.format)\n\n return node\n }\n\n override decorate(editor?: LexicalEditor, config?: EditorConfig): JSX.Element {\n if ((this.__data as Internal_UploadData).pending) {\n return <PendingUploadComponent />\n }\n return (\n <RawUploadComponent\n className={config?.theme?.upload ?? 'LexicalEditorTheme__upload'}\n data={this.__data}\n format={this.__format}\n nodeKey={this.getKey()}\n />\n )\n }\n\n override exportJSON(): SerializedUploadNode {\n return super.exportJSON()\n }\n}\n\nexport function $createUploadNode({\n data,\n}: {\n data: Omit<UploadData, 'id'> & Partial<Pick<UploadData, 'id'>>\n}): UploadNode {\n if (!data?.id) {\n data.id = new ObjectID.default().toHexString()\n }\n\n return $applyNodeReplacement(new UploadNode({ data: data as UploadData }))\n}\n\nexport function $isUploadNode(node: LexicalNode | null | undefined): node is UploadNode {\n return node instanceof UploadNode\n}\n"],"mappings":"AAAA;;;AAIA,OAAOA,QAAA,MAAc;AACrB,SAASC,qBAAqB,QAAQ;AACtC,YAAYC,KAAA,MAAW;AAQvB,SAASC,qBAAqB,QAAQ;AACtC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,sBAAsB,QAAQ;AAEvC,MAAMC,kBAAA,gBAAqBJ,KAAA,CAAMK,IAAI,CAAC,MACpC,MAAM,CAAC,mCAAmCC,IAAI,CAAEC,MAAA,KAAY;EAAEC,OAAA,EAASD,MAAA,CAAOE;AAAgB;AAGhG,OAAO,MAAMC,UAAA,SAAmBR,gBAAA;EAC9B,OAAgBS,MAAMC,IAAsB,EAAoB;IAC9D,OAAO,KAAK,CAACD,KAAA,CAAMC,IAAA;EACrB;EAEA,OAAgBC,QAAA,EAAkB;IAChC,OAAO,KAAK,CAACA,OAAA;EACf;EAEA,OAAgBC,UAAA,EAAgD;IAC9D,OAAO;MACLC,GAAA,EAAMH,IAAA,KAAU;QACdI,UAAA,EAAaC,OAAA,IAAYhB,qBAAA,CAAsBgB,OAAA,EAASC,iBAAA;QACxDC,QAAA,EAAU;MACZ;IACF;EACF;EAEA,OAAgBC,WAAWC,cAAoC,EAAc;IAC3E,IAAIA,cAAA,CAAeC,OAAO,KAAK,KAAMD,cAAA,EAAgBE,KAAA,EAAqCC,EAAA,EAAI;MAC5FH,cAAA,CAAeE,KAAK,GAAGF,cAAC,CAAeE,KAAK,CAA+BC,EAAE;IAC/E;IACA,IAAIH,cAAA,CAAeC,OAAO,KAAK,KAAK,CAACD,cAAA,EAAgBG,EAAA,EAAI;MACvDH,cAAA,CAAeG,EAAE,GAAG,IAAI1B,QAAA,CAASU,OAAO,GAAGiB,WAAW;MACtDJ,cAAA,CAAeC,OAAO,GAAG;IAC3B;IAEA,MAAMI,YAAA,GAAoC;MACxCF,EAAA,EAAIH,cAAA,CAAeG,EAAE;MACrBG,MAAA,EAAQN,cAAA,CAAeM,MAAM;MAC7BC,OAAA,EAASP,cAAC,CAAuCO,OAAO;MACxDC,UAAA,EAAYR,cAAA,CAAeQ,UAAU;MACrCN,KAAA,EAAOF,cAAA,CAAeE;IACxB;IAEA,MAAMX,IAAA,GAAOM,iBAAA,CAAkB;MAAEY,IAAA,EAAMJ;IAAa;IACpDd,IAAA,CAAKmB,SAAS,CAACV,cAAA,CAAeW,MAAM;IAEpC,OAAOpB,IAAA;EACT;EAESqB,SAASC,MAAsB,EAAEC,MAAqB,EAAe;IAC5E,IAAI,IAAK,CAACC,MAAM,CAAyBR,OAAO,EAAE;MAChD,oBAAOS,IAAA,CAAClC,sBAAA;IACV;IACA,oBACEkC,IAAA,CAACjC,kBAAA;MACCkC,SAAA,EAAWH,MAAA,EAAQI,KAAA,EAAOC,MAAA,IAAU;MACpCV,IAAA,EAAM,IAAI,CAACM,MAAM;MACjBJ,MAAA,EAAQ,IAAI,CAACS,QAAQ;MACrBC,OAAA,EAAS,IAAI,CAACC,MAAM;;EAG1B;EAESC,WAAA,EAAmC;IAC1C,OAAO,KAAK,CAACA,UAAA;EACf;AACF;AAEA,OAAO,SAAS1B,kBAAkB;EAChCY;AAAI,CAGL;EACC,IAAI,CAACA,IAAA,EAAMN,EAAA,EAAI;IACbM,IAAA,CAAKN,EAAE,GAAG,IAAI1B,QAAA,CAASU,OAAO,GAAGiB,WAAW;EAC9C;EAEA,OAAO1B,qBAAA,CAAsB,IAAIW,UAAA,CAAW;IAAEoB,IAAA,EAAMA;EAAmB;AACzE;AAEA,OAAO,SAASe,cAAcjC,IAAoC;EAChE,OAAOA,IAAA,YAAgBF,UAAA;AACzB","ignoreList":[]}
1
+ {"version":3,"file":"UploadNode.js","names":["ObjectID","$applyNodeReplacement","React","$convertUploadElement","UploadServerNode","PendingUploadComponent","RawUploadComponent","lazy","then","module","default","UploadComponent","UploadNode","clone","node","getType","importDOM","img","conversion","domNode","$createUploadNode","priority","importJSON","serializedNode","version","value","id","toHexString","importedData","fields","pending","relationTo","data","setFormat","format","decorate","editor","config","__data","_jsx","className","theme","upload","__format","nodeKey","getKey","exportJSON","$isUploadNode"],"sources":["../../../../../src/features/upload/client/nodes/UploadNode.tsx"],"sourcesContent":["'use client'\nimport type { DOMConversionMap, EditorConfig, LexicalEditor, LexicalNode } from 'lexical'\nimport type { JSX } from 'react'\n\nimport ObjectID from 'bson-objectid'\nimport { $applyNodeReplacement } from 'lexical'\nimport * as React from 'react'\n\nimport type { Internal_UploadData, SerializedUploadNode, UploadData } from '../../server/schema.js'\n\nimport { $convertUploadElement } from '../../server/nodes/conversions.js'\nimport { UploadServerNode } from '../../server/nodes/UploadNode.js'\nimport { PendingUploadComponent } from '../component/pending/index.js'\n\nconst RawUploadComponent = React.lazy(() =>\n import('../../client/component/index.js').then((module) => ({ default: module.UploadComponent })),\n)\n\nexport class UploadNode extends UploadServerNode {\n static override clone(node: UploadServerNode): UploadServerNode {\n return super.clone(node)\n }\n\n static override getType(): string {\n return super.getType()\n }\n\n static override importDOM(): DOMConversionMap<HTMLImageElement> {\n return {\n img: (node) => ({\n conversion: (domNode) => $convertUploadElement(domNode, $createUploadNode),\n priority: 0,\n }),\n }\n }\n\n static override importJSON(serializedNode: SerializedUploadNode): UploadNode {\n if (serializedNode.version === 1 && (serializedNode?.value as unknown as { id: string })?.id) {\n serializedNode.value = (serializedNode.value as unknown as { id: string }).id\n }\n if (serializedNode.version === 2 && !serializedNode?.id) {\n serializedNode.id = new ObjectID.default().toHexString()\n serializedNode.version = 3\n }\n\n const importedData: Internal_UploadData = {\n id: serializedNode.id,\n fields: serializedNode.fields,\n pending: (serializedNode as Internal_UploadData).pending,\n relationTo: serializedNode.relationTo,\n value: serializedNode.value,\n }\n\n const node = $createUploadNode({ data: importedData })\n node.setFormat(serializedNode.format)\n\n return node\n }\n\n override decorate(editor?: LexicalEditor, config?: EditorConfig): JSX.Element {\n if ((this.__data as Internal_UploadData).pending) {\n return <PendingUploadComponent />\n }\n return (\n <RawUploadComponent\n className={config?.theme?.upload ?? 'LexicalEditorTheme__upload'}\n data={this.__data}\n format={this.__format}\n nodeKey={this.getKey()}\n />\n )\n }\n\n override exportJSON(): SerializedUploadNode {\n return super.exportJSON()\n }\n}\n\nexport function $createUploadNode({\n data,\n}: {\n data: Omit<UploadData, 'id'> & Partial<Pick<UploadData, 'id'>>\n}): UploadNode {\n if (!data?.id) {\n data.id = new ObjectID.default().toHexString()\n }\n\n return $applyNodeReplacement(new UploadNode({ data: data as UploadData }))\n}\n\nexport function $isUploadNode(node: LexicalNode | null | undefined): node is UploadNode {\n return node instanceof UploadNode\n}\n"],"mappings":"AAAA;;;AAIA,OAAOA,QAAA,MAAc;AACrB,SAASC,qBAAqB,QAAQ;AACtC,YAAYC,KAAA,MAAW;AAIvB,SAASC,qBAAqB,QAAQ;AACtC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,sBAAsB,QAAQ;AAEvC,MAAMC,kBAAA,gBAAqBJ,KAAA,CAAMK,IAAI,CAAC,MACpC,MAAM,CAAC,mCAAmCC,IAAI,CAAEC,MAAA,KAAY;EAAEC,OAAA,EAASD,MAAA,CAAOE;AAAgB;AAGhG,OAAO,MAAMC,UAAA,SAAmBR,gBAAA;EAC9B,OAAgBS,MAAMC,IAAsB,EAAoB;IAC9D,OAAO,KAAK,CAACD,KAAA,CAAMC,IAAA;EACrB;EAEA,OAAgBC,QAAA,EAAkB;IAChC,OAAO,KAAK,CAACA,OAAA;EACf;EAEA,OAAgBC,UAAA,EAAgD;IAC9D,OAAO;MACLC,GAAA,EAAMH,IAAA,KAAU;QACdI,UAAA,EAAaC,OAAA,IAAYhB,qBAAA,CAAsBgB,OAAA,EAASC,iBAAA;QACxDC,QAAA,EAAU;MACZ;IACF;EACF;EAEA,OAAgBC,WAAWC,cAAoC,EAAc;IAC3E,IAAIA,cAAA,CAAeC,OAAO,KAAK,KAAMD,cAAA,EAAgBE,KAAA,EAAqCC,EAAA,EAAI;MAC5FH,cAAA,CAAeE,KAAK,GAAGF,cAAC,CAAeE,KAAK,CAA+BC,EAAE;IAC/E;IACA,IAAIH,cAAA,CAAeC,OAAO,KAAK,KAAK,CAACD,cAAA,EAAgBG,EAAA,EAAI;MACvDH,cAAA,CAAeG,EAAE,GAAG,IAAI1B,QAAA,CAASU,OAAO,GAAGiB,WAAW;MACtDJ,cAAA,CAAeC,OAAO,GAAG;IAC3B;IAEA,MAAMI,YAAA,GAAoC;MACxCF,EAAA,EAAIH,cAAA,CAAeG,EAAE;MACrBG,MAAA,EAAQN,cAAA,CAAeM,MAAM;MAC7BC,OAAA,EAASP,cAAC,CAAuCO,OAAO;MACxDC,UAAA,EAAYR,cAAA,CAAeQ,UAAU;MACrCN,KAAA,EAAOF,cAAA,CAAeE;IACxB;IAEA,MAAMX,IAAA,GAAOM,iBAAA,CAAkB;MAAEY,IAAA,EAAMJ;IAAa;IACpDd,IAAA,CAAKmB,SAAS,CAACV,cAAA,CAAeW,MAAM;IAEpC,OAAOpB,IAAA;EACT;EAESqB,SAASC,MAAsB,EAAEC,MAAqB,EAAe;IAC5E,IAAI,IAAK,CAACC,MAAM,CAAyBR,OAAO,EAAE;MAChD,oBAAOS,IAAA,CAAClC,sBAAA;IACV;IACA,oBACEkC,IAAA,CAACjC,kBAAA;MACCkC,SAAA,EAAWH,MAAA,EAAQI,KAAA,EAAOC,MAAA,IAAU;MACpCV,IAAA,EAAM,IAAI,CAACM,MAAM;MACjBJ,MAAA,EAAQ,IAAI,CAACS,QAAQ;MACrBC,OAAA,EAAS,IAAI,CAACC,MAAM;;EAG1B;EAESC,WAAA,EAAmC;IAC1C,OAAO,KAAK,CAACA,UAAA;EACf;AACF;AAEA,OAAO,SAAS1B,kBAAkB;EAChCY;AAAI,CAGL;EACC,IAAI,CAACA,IAAA,EAAMN,EAAA,EAAI;IACbM,IAAA,CAAKN,EAAE,GAAG,IAAI1B,QAAA,CAASU,OAAO,GAAGiB,WAAW;EAC9C;EAEA,OAAO1B,qBAAA,CAAsB,IAAIW,UAAA,CAAW;IAAEoB,IAAA,EAAMA;EAAmB;AACzE;AAEA,OAAO,SAASe,cAAcjC,IAAoC;EAChE,OAAOA,IAAA,YAAgBF,UAAA;AACzB","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import type { LexicalCommand } from 'lexical';
2
2
  import type { PluginComponent } from '../../../typesClient.js';
3
- import type { UploadData } from '../../server/nodes/UploadNode.js';
3
+ import type { UploadData } from '../../server/schema.js';
4
4
  import type { UploadFeaturePropsClient } from '../index.js';
5
5
  export type InsertUploadPayload = Readonly<Omit<UploadData, 'id'> & Partial<Pick<UploadData, 'id'>>>;
6
6
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/plugin/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAuB7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,kCAAkC,CAAA;AACvF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAM3D,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;AAEpG,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,SAAS;QACjB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,WAAW,CAAC,EAAE,IAAI,CAAA;KACnB;CACF;AA4BD,eAAO,MAAM,qBAAqB,EAAE,cAAc,CAAC,mBAAmB,CAC9B,CAAA;AAYxC,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,wBAAwB,CAiUlE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/upload/client/plugin/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAuB7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC7E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAM3D,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;AAEpG,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,SAAS;QACjB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,WAAW,CAAC,EAAE,IAAI,CAAA;KACnB;CACF;AA4BD,eAAO,MAAM,qBAAqB,EAAE,cAAc,CAAC,mBAAmB,CAC9B,CAAA;AAYxC,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,wBAAwB,CAiUlE,CAAA"}
@@ -55,7 +55,7 @@ export const UploadPlugin = t0 => {
55
55
  enabledCollectionSlugs
56
56
  } = useEnabledRelationships(t3);
57
57
  const {
58
- drawerSlug: bulkUploadDrawerSlug,
58
+ modalSlug: bulkUploadModalSlug,
59
59
  setCollectionSlug,
60
60
  setInitialForms,
61
61
  setOnCancel,
@@ -67,7 +67,7 @@ export const UploadPlugin = t0 => {
67
67
  openModal
68
68
  } = useModal();
69
69
  let t4;
70
- if ($[3] !== bulkUploadDrawerSlug || $[4] !== editor || $[5] !== enabledCollectionSlugs || $[6] !== isModalOpen || $[7] !== openModal || $[8] !== setCollectionSlug || $[9] !== setInitialForms || $[10] !== setOnCancel || $[11] !== setOnSuccess || $[12] !== setSelectableCollections) {
70
+ if ($[3] !== bulkUploadModalSlug || $[4] !== editor || $[5] !== enabledCollectionSlugs || $[6] !== isModalOpen || $[7] !== openModal || $[8] !== setCollectionSlug || $[9] !== setInitialForms || $[10] !== setOnCancel || $[11] !== setOnSuccess || $[12] !== setSelectableCollections) {
71
71
  t4 = t5 => {
72
72
  const {
73
73
  files
@@ -76,7 +76,7 @@ export const UploadPlugin = t0 => {
76
76
  return;
77
77
  }
78
78
  setInitialForms(initialForms => [...(initialForms ?? []), ...files.map(_temp)]);
79
- if (!isModalOpen(bulkUploadDrawerSlug)) {
79
+ if (!isModalOpen(bulkUploadModalSlug)) {
80
80
  if (!enabledCollectionSlugs.length || !enabledCollectionSlugs[0]) {
81
81
  return;
82
82
  }
@@ -109,10 +109,10 @@ export const UploadPlugin = t0 => {
109
109
  }
110
110
  });
111
111
  });
112
- openModal(bulkUploadDrawerSlug);
112
+ openModal(bulkUploadModalSlug);
113
113
  }
114
114
  };
115
- $[3] = bulkUploadDrawerSlug;
115
+ $[3] = bulkUploadModalSlug;
116
116
  $[4] = editor;
117
117
  $[5] = enabledCollectionSlugs;
118
118
  $[6] = isModalOpen;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$dfsIterator","$insertNodeToNearestRoot","mergeRegister","useBulkUpload","useEffectEvent","useModal","ObjectID","$createRangeSelection","$getPreviousSelection","$getSelection","$isParagraphNode","$isRangeSelection","$setSelection","COMMAND_PRIORITY_EDITOR","COMMAND_PRIORITY_LOW","createCommand","DROP_COMMAND","getDOMSelectionFromTarget","isHTMLElement","PASTE_COMMAND","React","useEffect","useEnabledRelationships","UploadDrawer","$createUploadNode","$isUploadNode","UploadNode","canDropImage","event","target","closest","parentElement","getDragSelection","range","domSelection","document","caretRangeFromPoint","clientX","clientY","rangeParent","collapse","rangeOffset","getRangeAt","Error","INSERT_UPLOAD_COMMAND","UploadPlugin","t0","$","clientProps","editor","t1","disabledCollections","t2","enabledCollections","t3","collectionSlugsBlacklist","collectionSlugsWhitelist","uploads","enabledCollectionSlugs","drawerSlug","bulkUploadDrawerSlug","setCollectionSlug","setInitialForms","setOnCancel","setOnSuccess","setSelectableCollections","isModalOpen","openModal","t4","t5","files","length","initialForms","map","_temp","update","_temp2","newDocs","newDocsMap","Map","_temp3","dfsNode_0","node_0","dfsNode","node","nodeData_0","getData","nodeData","pending","newDoc","get","formID","replace","data","id","default","toHexString","fields","relationTo","collectionSlug","value","doc","openBulkUpload","hasNodes","registerNodeTransform","node_1","nodeData_1","upload","transformedImage","src","startsWith","mimeMatch","match","mimeType","base64Data","byteCharacters","atob","byteNumbers","Array","i","charCodeAt","byteArray","Uint8Array","file_0","File","split","type","file","res","fetch","blob","inferredFileName","pop","file_1","registerCommand","payload","selection","uploadNode","focus","focusNode","getNode","__first","remove","ClipboardEvent","clipboardData","types","includes","files_0","from","forEach","file_2","push","alt","selection_0","file_3","pendingUploadNode","URL","createObjectURL","focus_0","focusNode_0","event_0","DragEvent","dt","dataTransfer","files_1","file_4","preventDefault","stopPropagation","selection_1","undefined","applyDOMRange","file_5","pendingUploadNode_0","focus_1","focusNode_1","t6","t7","_jsx"],"sources":["../../../../../src/features/upload/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalCommand } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $dfsIterator, $insertNodeToNearestRoot, mergeRegister } from '@lexical/utils'\nimport { useBulkUpload, useEffectEvent, useModal } from '@payloadcms/ui'\nimport ObjectID from 'bson-objectid'\nimport {\n $createRangeSelection,\n $getPreviousSelection,\n $getSelection,\n $isParagraphNode,\n $isRangeSelection,\n $setSelection,\n COMMAND_PRIORITY_EDITOR,\n COMMAND_PRIORITY_LOW,\n createCommand,\n DROP_COMMAND,\n getDOMSelectionFromTarget,\n isHTMLElement,\n PASTE_COMMAND,\n} from 'lexical'\nimport React, { useEffect } from 'react'\n\nimport type { PluginComponent } from '../../../typesClient.js'\nimport type { Internal_UploadData, UploadData } from '../../server/nodes/UploadNode.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\n\nimport { useEnabledRelationships } from '../../../relationship/client/utils/useEnabledRelationships.js'\nimport { UploadDrawer } from '../drawer/index.js'\nimport { $createUploadNode, $isUploadNode, UploadNode } from '../nodes/UploadNode.js'\n\nexport type InsertUploadPayload = Readonly<Omit<UploadData, 'id'> & Partial<Pick<UploadData, 'id'>>>\n\ndeclare global {\n interface DragEvent {\n rangeOffset?: number\n rangeParent?: Node\n }\n}\n\nfunction canDropImage(event: DragEvent): boolean {\n const target = event.target\n return !!(\n isHTMLElement(target) &&\n !target.closest('code, span.editor-image') &&\n isHTMLElement(target.parentElement) &&\n target.parentElement.closest('div.ContentEditable__root')\n )\n}\n\nfunction getDragSelection(event: DragEvent): null | Range | undefined {\n // Source: https://github.com/AlessioGr/lexical/blob/main/packages/lexical-playground/src/plugins/ImagesPlugin/index.tsx\n let range\n const domSelection = getDOMSelectionFromTarget(event.target)\n if (document.caretRangeFromPoint) {\n range = document.caretRangeFromPoint(event.clientX, event.clientY)\n } else if (event.rangeParent && domSelection !== null) {\n domSelection.collapse(event.rangeParent, event.rangeOffset || 0)\n range = domSelection.getRangeAt(0)\n } else {\n throw Error(`Cannot get the selection when dragging`)\n }\n\n return range\n}\n\nexport const INSERT_UPLOAD_COMMAND: LexicalCommand<InsertUploadPayload> =\n createCommand('INSERT_UPLOAD_COMMAND')\n\ntype FileToUpload = {\n alt?: string\n file: File\n /**\n * Bulk Upload Form ID that should be created, which can then be matched\n * against the node formID if the upload is successful\n */\n formID: string\n}\n\nexport const UploadPlugin: PluginComponent<UploadFeaturePropsClient> = ({ clientProps }) => {\n const [editor] = useLexicalComposerContext()\n\n const { enabledCollectionSlugs } = useEnabledRelationships({\n collectionSlugsBlacklist: clientProps?.disabledCollections,\n collectionSlugsWhitelist: clientProps?.enabledCollections,\n uploads: true,\n })\n\n const {\n drawerSlug: bulkUploadDrawerSlug,\n setCollectionSlug,\n setInitialForms,\n setOnCancel,\n setOnSuccess,\n setSelectableCollections,\n } = useBulkUpload()\n\n const { isModalOpen, openModal } = useModal()\n\n const openBulkUpload = useEffectEvent(({ files }: { files: FileToUpload[] }) => {\n if (files?.length === 0) {\n return\n }\n\n setInitialForms((initialForms) => [\n ...(initialForms ?? []),\n ...files.map((file) => ({\n file: file.file,\n formID: file.formID,\n })),\n ])\n\n if (!isModalOpen(bulkUploadDrawerSlug)) {\n if (!enabledCollectionSlugs.length || !enabledCollectionSlugs[0]) {\n return\n }\n\n setCollectionSlug(enabledCollectionSlugs[0])\n setSelectableCollections(enabledCollectionSlugs)\n\n setOnCancel(() => {\n // Remove all the pending upload nodes that were added but not uploaded\n editor.update(() => {\n for (const dfsNode of $dfsIterator()) {\n const node = dfsNode.node\n\n if ($isUploadNode(node)) {\n const nodeData = node.getData()\n if ((nodeData as Internal_UploadData)?.pending) {\n node.remove()\n }\n }\n }\n })\n })\n\n setOnSuccess((newDocs) => {\n const newDocsMap = new Map(newDocs.map((doc) => [doc.formID, doc]))\n editor.update(() => {\n for (const dfsNode of $dfsIterator()) {\n const node = dfsNode.node\n if ($isUploadNode(node)) {\n const nodeData: Internal_UploadData = node.getData()\n\n if (nodeData?.pending) {\n const newDoc = newDocsMap.get(nodeData.pending?.formID)\n if (newDoc) {\n node.replace(\n $createUploadNode({\n data: {\n id: new ObjectID.default().toHexString(),\n fields: {},\n relationTo: newDoc.collectionSlug,\n value: newDoc.doc.id,\n } as UploadData,\n }),\n )\n }\n }\n }\n }\n })\n })\n\n openModal(bulkUploadDrawerSlug)\n }\n })\n\n useEffect(() => {\n if (!editor.hasNodes([UploadNode])) {\n throw new Error('UploadPlugin: UploadNode not registered on editor')\n }\n\n return mergeRegister(\n /**\n * Handle auto-uploading files if you copy & paste an image dom element from the clipboard\n */\n editor.registerNodeTransform(UploadNode, (node) => {\n const nodeData: Internal_UploadData = node.getData()\n if (!nodeData?.pending) {\n return\n }\n\n async function upload() {\n let transformedImage: FileToUpload | null = null\n\n const src = nodeData?.pending?.src\n const formID = nodeData?.pending?.formID as string\n\n if (src?.startsWith('data:')) {\n // It's a base64-encoded image\n const mimeMatch = src.match(/data:(image\\/[a-zA-Z]+);base64,/)\n const mimeType = mimeMatch ? mimeMatch[1] : 'image/png' // Default to PNG if MIME type not found\n const base64Data = src.replace(/^data:image\\/[a-zA-Z]+;base64,/, '')\n const byteCharacters = atob(base64Data)\n const byteNumbers = new Array(byteCharacters.length)\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i)\n }\n const byteArray = new Uint8Array(byteNumbers)\n const file = new File([byteArray], 'pasted-image.' + mimeType?.split('/', 2)[1], {\n type: mimeType,\n })\n transformedImage = { alt: undefined, file, formID }\n } else if (src?.startsWith('http') || src?.startsWith('https')) {\n // It's an image URL\n const res = await fetch(src)\n const blob = await res.blob()\n const inferredFileName =\n src.split('/').pop() || 'pasted-image' + blob.type.split('/', 2)[1]\n const file = new File([blob], inferredFileName, {\n type: blob.type,\n })\n\n transformedImage = { alt: undefined, file, formID }\n }\n\n if (!transformedImage) {\n return\n }\n\n openBulkUpload({ files: [transformedImage] })\n }\n void upload()\n }),\n editor.registerCommand<InsertUploadPayload>(\n INSERT_UPLOAD_COMMAND,\n (payload: InsertUploadPayload) => {\n editor.update(() => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n const uploadNode = $createUploadNode({\n data: {\n id: payload.id,\n fields: payload.fields,\n relationTo: payload.relationTo,\n value: payload.value,\n },\n })\n // we need to get the focus node before inserting the block node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(uploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n })\n\n return true\n },\n COMMAND_PRIORITY_EDITOR,\n ),\n editor.registerCommand(\n PASTE_COMMAND,\n (event) => {\n // Pending UploadNodes are automatically created when importDOM is called. However, if you paste a file from your computer\n // directly, importDOM won't be called, as it's not a HTML dom element. So we need to handle that case here.\n\n if (!(event instanceof ClipboardEvent)) {\n return false\n }\n const clipboardData = event.clipboardData\n\n if (!clipboardData?.types?.length || clipboardData?.types?.includes('text/html')) {\n // HTML is handled through importDOM => registerNodeTransform for pending UploadNode\n return false\n }\n\n const files: FileToUpload[] = []\n if (clipboardData?.files?.length) {\n Array.from(clipboardData.files).forEach((file) => {\n files.push({\n alt: '',\n file,\n formID: new ObjectID.default().toHexString(),\n })\n })\n }\n\n if (files.length) {\n // Insert a pending UploadNode for each image\n editor.update(() => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n for (const file of files) {\n const pendingUploadNode = $createUploadNode({\n data: {\n pending: {\n formID: file.formID,\n src: URL.createObjectURL(file.file),\n },\n } as Internal_UploadData,\n })\n // we need to get the focus node before inserting the upload node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(pendingUploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n }\n })\n\n // Open the bulk drawer - the node transform will not open it for us, as it does not handle blob/file uploads\n openBulkUpload({ files })\n\n return true\n }\n\n return false\n },\n COMMAND_PRIORITY_LOW,\n ),\n // Handle drag & drop of files from the desktop into the editor\n editor.registerCommand(\n DROP_COMMAND,\n (event) => {\n if (!(event instanceof DragEvent)) {\n return false\n }\n\n const dt = event.dataTransfer\n\n if (!dt?.types?.length) {\n return false\n }\n\n const files: FileToUpload[] = []\n if (dt?.files?.length) {\n Array.from(dt.files).forEach((file) => {\n files.push({\n alt: '',\n file,\n formID: new ObjectID.default().toHexString(),\n })\n })\n }\n\n if (files.length) {\n // Prevent the default browser drop handling, which would open the file in the browser\n event.preventDefault()\n event.stopPropagation()\n\n // Insert a PendingUploadNode for each image\n editor.update(() => {\n if (canDropImage(event)) {\n const range = getDragSelection(event)\n const selection = $createRangeSelection()\n if (range !== null && range !== undefined) {\n selection.applyDOMRange(range)\n }\n $setSelection(selection)\n\n for (const file of files) {\n const pendingUploadNode = $createUploadNode({\n data: {\n pending: {\n formID: file.formID,\n src: URL.createObjectURL(file.file),\n },\n } as Internal_UploadData,\n })\n // we need to get the focus node before inserting the upload node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(pendingUploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n }\n })\n\n // Open the bulk drawer - the node transform will not open it for us, as it does not handle blob/file uploads\n openBulkUpload({ files })\n\n return true\n }\n\n return false\n },\n COMMAND_PRIORITY_LOW,\n ),\n )\n }, [editor])\n\n return <UploadDrawer enabledCollectionSlugs={enabledCollectionSlugs} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$dfsIterator","$insertNodeToNearestRoot","mergeRegister","useBulkUpload","useEffectEvent","useModal","ObjectID","$createRangeSelection","$getPreviousSelection","$getSelection","$isParagraphNode","$isRangeSelection","$setSelection","COMMAND_PRIORITY_EDITOR","COMMAND_PRIORITY_LOW","createCommand","DROP_COMMAND","getDOMSelectionFromTarget","isHTMLElement","PASTE_COMMAND","React","useEffect","useEnabledRelationships","UploadDrawer","$createUploadNode","$isUploadNode","UploadNode","canDropImage","event","target","closest","parentElement","getDragSelection","range","domSelection","document","caretRangeFromPoint","clientX","clientY","rangeParent","collapse","rangeOffset","getRangeAt","Error","INSERT_UPLOAD_COMMAND","UploadPlugin","t0","$","clientProps","editor","t1","disabledCollections","t2","enabledCollections","t3","collectionSlugsBlacklist","collectionSlugsWhitelist","uploads","enabledCollectionSlugs","modalSlug","bulkUploadModalSlug","setCollectionSlug","setInitialForms","setOnCancel","setOnSuccess","setSelectableCollections","isModalOpen","openModal","t4","t5","files","length","initialForms","map","_temp","update","_temp2","newDocs","newDocsMap","Map","_temp3","dfsNode_0","node_0","dfsNode","node","nodeData_0","getData","nodeData","pending","newDoc","get","formID","replace","data","id","default","toHexString","fields","relationTo","collectionSlug","value","doc","openBulkUpload","hasNodes","registerNodeTransform","node_1","nodeData_1","upload","transformedImage","src","startsWith","mimeMatch","match","mimeType","base64Data","byteCharacters","atob","byteNumbers","Array","i","charCodeAt","byteArray","Uint8Array","file_0","File","split","type","file","res","fetch","blob","inferredFileName","pop","file_1","registerCommand","payload","selection","uploadNode","focus","focusNode","getNode","__first","remove","ClipboardEvent","clipboardData","types","includes","files_0","from","forEach","file_2","push","alt","selection_0","file_3","pendingUploadNode","URL","createObjectURL","focus_0","focusNode_0","event_0","DragEvent","dt","dataTransfer","files_1","file_4","preventDefault","stopPropagation","selection_1","undefined","applyDOMRange","file_5","pendingUploadNode_0","focus_1","focusNode_1","t6","t7","_jsx"],"sources":["../../../../../src/features/upload/client/plugin/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalCommand } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $dfsIterator, $insertNodeToNearestRoot, mergeRegister } from '@lexical/utils'\nimport { useBulkUpload, useEffectEvent, useModal } from '@payloadcms/ui'\nimport ObjectID from 'bson-objectid'\nimport {\n $createRangeSelection,\n $getPreviousSelection,\n $getSelection,\n $isParagraphNode,\n $isRangeSelection,\n $setSelection,\n COMMAND_PRIORITY_EDITOR,\n COMMAND_PRIORITY_LOW,\n createCommand,\n DROP_COMMAND,\n getDOMSelectionFromTarget,\n isHTMLElement,\n PASTE_COMMAND,\n} from 'lexical'\nimport React, { useEffect } from 'react'\n\nimport type { PluginComponent } from '../../../typesClient.js'\nimport type { Internal_UploadData, UploadData } from '../../server/schema.js'\nimport type { UploadFeaturePropsClient } from '../index.js'\n\nimport { useEnabledRelationships } from '../../../relationship/client/utils/useEnabledRelationships.js'\nimport { UploadDrawer } from '../drawer/index.js'\nimport { $createUploadNode, $isUploadNode, UploadNode } from '../nodes/UploadNode.js'\n\nexport type InsertUploadPayload = Readonly<Omit<UploadData, 'id'> & Partial<Pick<UploadData, 'id'>>>\n\ndeclare global {\n interface DragEvent {\n rangeOffset?: number\n rangeParent?: Node\n }\n}\n\nfunction canDropImage(event: DragEvent): boolean {\n const target = event.target\n return !!(\n isHTMLElement(target) &&\n !target.closest('code, span.editor-image') &&\n isHTMLElement(target.parentElement) &&\n target.parentElement.closest('div.ContentEditable__root')\n )\n}\n\nfunction getDragSelection(event: DragEvent): null | Range | undefined {\n // Source: https://github.com/AlessioGr/lexical/blob/main/packages/lexical-playground/src/plugins/ImagesPlugin/index.tsx\n let range\n const domSelection = getDOMSelectionFromTarget(event.target)\n if (document.caretRangeFromPoint) {\n range = document.caretRangeFromPoint(event.clientX, event.clientY)\n } else if (event.rangeParent && domSelection !== null) {\n domSelection.collapse(event.rangeParent, event.rangeOffset || 0)\n range = domSelection.getRangeAt(0)\n } else {\n throw Error(`Cannot get the selection when dragging`)\n }\n\n return range\n}\n\nexport const INSERT_UPLOAD_COMMAND: LexicalCommand<InsertUploadPayload> =\n createCommand('INSERT_UPLOAD_COMMAND')\n\ntype FileToUpload = {\n alt?: string\n file: File\n /**\n * Bulk Upload Form ID that should be created, which can then be matched\n * against the node formID if the upload is successful\n */\n formID: string\n}\n\nexport const UploadPlugin: PluginComponent<UploadFeaturePropsClient> = ({ clientProps }) => {\n const [editor] = useLexicalComposerContext()\n\n const { enabledCollectionSlugs } = useEnabledRelationships({\n collectionSlugsBlacklist: clientProps?.disabledCollections,\n collectionSlugsWhitelist: clientProps?.enabledCollections,\n uploads: true,\n })\n\n const {\n modalSlug: bulkUploadModalSlug,\n setCollectionSlug,\n setInitialForms,\n setOnCancel,\n setOnSuccess,\n setSelectableCollections,\n } = useBulkUpload()\n\n const { isModalOpen, openModal } = useModal()\n\n const openBulkUpload = useEffectEvent(({ files }: { files: FileToUpload[] }) => {\n if (files?.length === 0) {\n return\n }\n\n setInitialForms((initialForms) => [\n ...(initialForms ?? []),\n ...files.map((file) => ({\n file: file.file,\n formID: file.formID,\n })),\n ])\n\n if (!isModalOpen(bulkUploadModalSlug)) {\n if (!enabledCollectionSlugs.length || !enabledCollectionSlugs[0]) {\n return\n }\n\n setCollectionSlug(enabledCollectionSlugs[0])\n setSelectableCollections(enabledCollectionSlugs)\n\n setOnCancel(() => {\n // Remove all the pending upload nodes that were added but not uploaded\n editor.update(() => {\n for (const dfsNode of $dfsIterator()) {\n const node = dfsNode.node\n\n if ($isUploadNode(node)) {\n const nodeData = node.getData()\n if ((nodeData as Internal_UploadData)?.pending) {\n node.remove()\n }\n }\n }\n })\n })\n\n setOnSuccess((newDocs) => {\n const newDocsMap = new Map(newDocs.map((doc) => [doc.formID, doc]))\n editor.update(() => {\n for (const dfsNode of $dfsIterator()) {\n const node = dfsNode.node\n if ($isUploadNode(node)) {\n const nodeData: Internal_UploadData = node.getData()\n\n if (nodeData?.pending) {\n const newDoc = newDocsMap.get(nodeData.pending?.formID)\n if (newDoc) {\n node.replace(\n $createUploadNode({\n data: {\n id: new ObjectID.default().toHexString(),\n fields: {},\n relationTo: newDoc.collectionSlug,\n value: newDoc.doc.id,\n } as UploadData,\n }),\n )\n }\n }\n }\n }\n })\n })\n\n openModal(bulkUploadModalSlug)\n }\n })\n\n useEffect(() => {\n if (!editor.hasNodes([UploadNode])) {\n throw new Error('UploadPlugin: UploadNode not registered on editor')\n }\n\n return mergeRegister(\n /**\n * Handle auto-uploading files if you copy & paste an image dom element from the clipboard\n */\n editor.registerNodeTransform(UploadNode, (node) => {\n const nodeData: Internal_UploadData = node.getData()\n if (!nodeData?.pending) {\n return\n }\n\n async function upload() {\n let transformedImage: FileToUpload | null = null\n\n const src = nodeData?.pending?.src\n const formID = nodeData?.pending?.formID as string\n\n if (src?.startsWith('data:')) {\n // It's a base64-encoded image\n const mimeMatch = src.match(/data:(image\\/[a-zA-Z]+);base64,/)\n const mimeType = mimeMatch ? mimeMatch[1] : 'image/png' // Default to PNG if MIME type not found\n const base64Data = src.replace(/^data:image\\/[a-zA-Z]+;base64,/, '')\n const byteCharacters = atob(base64Data)\n const byteNumbers = new Array(byteCharacters.length)\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i)\n }\n const byteArray = new Uint8Array(byteNumbers)\n const file = new File([byteArray], 'pasted-image.' + mimeType?.split('/', 2)[1], {\n type: mimeType,\n })\n transformedImage = { alt: undefined, file, formID }\n } else if (src?.startsWith('http') || src?.startsWith('https')) {\n // It's an image URL\n const res = await fetch(src)\n const blob = await res.blob()\n const inferredFileName =\n src.split('/').pop() || 'pasted-image' + blob.type.split('/', 2)[1]\n const file = new File([blob], inferredFileName, {\n type: blob.type,\n })\n\n transformedImage = { alt: undefined, file, formID }\n }\n\n if (!transformedImage) {\n return\n }\n\n openBulkUpload({ files: [transformedImage] })\n }\n void upload()\n }),\n editor.registerCommand<InsertUploadPayload>(\n INSERT_UPLOAD_COMMAND,\n (payload: InsertUploadPayload) => {\n editor.update(() => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n const uploadNode = $createUploadNode({\n data: {\n id: payload.id,\n fields: payload.fields,\n relationTo: payload.relationTo,\n value: payload.value,\n },\n })\n // we need to get the focus node before inserting the block node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(uploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n })\n\n return true\n },\n COMMAND_PRIORITY_EDITOR,\n ),\n editor.registerCommand(\n PASTE_COMMAND,\n (event) => {\n // Pending UploadNodes are automatically created when importDOM is called. However, if you paste a file from your computer\n // directly, importDOM won't be called, as it's not a HTML dom element. So we need to handle that case here.\n\n if (!(event instanceof ClipboardEvent)) {\n return false\n }\n const clipboardData = event.clipboardData\n\n if (!clipboardData?.types?.length || clipboardData?.types?.includes('text/html')) {\n // HTML is handled through importDOM => registerNodeTransform for pending UploadNode\n return false\n }\n\n const files: FileToUpload[] = []\n if (clipboardData?.files?.length) {\n Array.from(clipboardData.files).forEach((file) => {\n files.push({\n alt: '',\n file,\n formID: new ObjectID.default().toHexString(),\n })\n })\n }\n\n if (files.length) {\n // Insert a pending UploadNode for each image\n editor.update(() => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n for (const file of files) {\n const pendingUploadNode = $createUploadNode({\n data: {\n pending: {\n formID: file.formID,\n src: URL.createObjectURL(file.file),\n },\n } as Internal_UploadData,\n })\n // we need to get the focus node before inserting the upload node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(pendingUploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n }\n })\n\n // Open the bulk drawer - the node transform will not open it for us, as it does not handle blob/file uploads\n openBulkUpload({ files })\n\n return true\n }\n\n return false\n },\n COMMAND_PRIORITY_LOW,\n ),\n // Handle drag & drop of files from the desktop into the editor\n editor.registerCommand(\n DROP_COMMAND,\n (event) => {\n if (!(event instanceof DragEvent)) {\n return false\n }\n\n const dt = event.dataTransfer\n\n if (!dt?.types?.length) {\n return false\n }\n\n const files: FileToUpload[] = []\n if (dt?.files?.length) {\n Array.from(dt.files).forEach((file) => {\n files.push({\n alt: '',\n file,\n formID: new ObjectID.default().toHexString(),\n })\n })\n }\n\n if (files.length) {\n // Prevent the default browser drop handling, which would open the file in the browser\n event.preventDefault()\n event.stopPropagation()\n\n // Insert a PendingUploadNode for each image\n editor.update(() => {\n if (canDropImage(event)) {\n const range = getDragSelection(event)\n const selection = $createRangeSelection()\n if (range !== null && range !== undefined) {\n selection.applyDOMRange(range)\n }\n $setSelection(selection)\n\n for (const file of files) {\n const pendingUploadNode = $createUploadNode({\n data: {\n pending: {\n formID: file.formID,\n src: URL.createObjectURL(file.file),\n },\n } as Internal_UploadData,\n })\n // we need to get the focus node before inserting the upload node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert upload node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(pendingUploadNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n }\n })\n\n // Open the bulk drawer - the node transform will not open it for us, as it does not handle blob/file uploads\n openBulkUpload({ files })\n\n return true\n }\n\n return false\n },\n COMMAND_PRIORITY_LOW,\n ),\n )\n }, [editor])\n\n return <UploadDrawer enabledCollectionSlugs={enabledCollectionSlugs} />\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import type { PopulationPromise } from '../../typesServer.js';
2
2
  import type { UploadFeatureProps } from './index.js';
3
- import type { SerializedUploadNode } from './nodes/UploadNode.js';
3
+ import type { SerializedUploadNode } from './schema.js';
4
4
  export declare const uploadPopulationPromiseHOC: (props?: UploadFeatureProps) => PopulationPromise<SerializedUploadNode>;
5
5
  //# sourceMappingURL=graphQLPopulationPromise.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAKjE,eAAO,MAAM,0BAA0B,WAC7B,kBAAkB,KACzB,iBAAiB,CAAC,oBAAoB,CAwExC,CAAA"}
1
+ {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAKvD,eAAO,MAAM,0BAA0B,GACrC,QAAQ,kBAAkB,KACzB,iBAAiB,CAAC,oBAAoB,CAwExC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"graphQLPopulationPromise.js","names":["populate","recursivelyPopulateFieldsForGraphQL","uploadPopulationPromiseHOC","props","context","currentDepth","depth","draft","editorPopulationPromises","field","fieldPromises","findMany","flattenLocales","node","overrideAccess","parentIsLocalized","populationPromises","req","showHiddenFields","value","collection","payload","collections","relationTo","id","populateDepth","maxDepth","undefined","push","collectionSlug","config","slug","data","key","collectionFieldSchema","fields","Array","isArray","length","localized","siblingDoc"],"sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"sourcesContent":["import type { PopulationPromise } from '../../typesServer.js'\nimport type { UploadFeatureProps } from './index.js'\nimport type { SerializedUploadNode } from './nodes/UploadNode.js'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\nimport { recursivelyPopulateFieldsForGraphQL } from '../../../populateGraphQL/recursivelyPopulateFieldsForGraphQL.js'\n\nexport const uploadPopulationPromiseHOC = (\n props?: UploadFeatureProps,\n): PopulationPromise<SerializedUploadNode> => {\n return ({\n context,\n currentDepth,\n depth,\n draft,\n editorPopulationPromises,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n node,\n overrideAccess,\n parentIsLocalized,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (node?.value) {\n const collection = req.payload.collections[node?.relationTo]\n\n if (collection) {\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const populateDepth =\n props?.maxDepth !== undefined && props?.maxDepth < depth ? props?.maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n showHiddenFields,\n }),\n )\n\n const collectionFieldSchema = props?.collections?.[node?.relationTo]?.fields\n\n if (Array.isArray(collectionFieldSchema)) {\n if (!collectionFieldSchema?.length) {\n return\n }\n recursivelyPopulateFieldsForGraphQL({\n context,\n currentDepth,\n data: node.fields || {},\n depth,\n parentIsLocalized: parentIsLocalized || field.localized || false,\n\n draft,\n editorPopulationPromises,\n fieldPromises,\n fields: collectionFieldSchema,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc: node.fields || {},\n })\n }\n }\n }\n }\n}\n"],"mappings":"AAIA,SAASA,QAAQ,QAAQ;AACzB,SAASC,mCAAmC,QAAQ;AAEpD,OAAO,MAAMC,0BAAA,GACXC,KAAA;EAEA,OAAO,CAAC;IACNC,OAAO;IACPC,YAAY;IACZC,KAAK;IACLC,KAAK;IACLC,wBAAwB;IACxBC,KAAK;IACLC,aAAa;IACbC,QAAQ;IACRC,cAAc;IACdC,IAAI;IACJC,cAAc;IACdC,iBAAiB;IACjBC,kBAAkB;IAClBC,GAAG;IACHC;EAAgB,CACjB;IACC,IAAIL,IAAA,EAAMM,KAAA,EAAO;MACf,MAAMC,UAAA,GAAaH,GAAA,CAAII,OAAO,CAACC,WAAW,CAACT,IAAA,EAAMU,UAAA,CAAW;MAE5D,IAAIH,UAAA,EAAY;QACd;QACA,MAAMI,EAAA,GAAKX,IAAA,EAAMM,KAAA,EAAOK,EAAA,IAAMX,IAAA,EAAMM,KAAA,CAAM;AAAA;QAE1C,MAAMM,aAAA,GACJtB,KAAA,EAAOuB,QAAA,KAAaC,SAAA,IAAaxB,KAAA,EAAOuB,QAAA,GAAWpB,KAAA,GAAQH,KAAA,EAAOuB,QAAA,GAAWpB,KAAA;QAE/EU,kBAAA,CAAmBY,IAAI,CACrB5B,QAAA,CAAS;UACPwB,EAAA;UACAK,cAAA,EAAgBT,UAAA,CAAWU,MAAM,CAACC,IAAI;UACtC1B,YAAA;UACA2B,IAAA,EAAMnB,IAAA;UACNP,KAAA,EAAOmB,aAAA;UACPlB,KAAA;UACA0B,GAAA,EAAK;UACLnB,cAAA;UACAG,GAAA;UACAC;QACF;QAGF,MAAMgB,qBAAA,GAAwB/B,KAAA,EAAOmB,WAAA,GAAcT,IAAA,EAAMU,UAAA,CAAW,EAAEY,MAAA;QAEtE,IAAIC,KAAA,CAAMC,OAAO,CAACH,qBAAA,GAAwB;UACxC,IAAI,CAACA,qBAAA,EAAuBI,MAAA,EAAQ;YAClC;UACF;UACArC,mCAAA,CAAoC;YAClCG,OAAA;YACAC,YAAA;YACA2B,IAAA,EAAMnB,IAAA,CAAKsB,MAAM,IAAI,CAAC;YACtB7B,KAAA;YACAS,iBAAA,EAAmBA,iBAAA,IAAqBN,KAAA,CAAM8B,SAAS,IAAI;YAE3DhC,KAAA;YACAC,wBAAA;YACAE,aAAA;YACAyB,MAAA,EAAQD,qBAAA;YACRvB,QAAA;YACAC,cAAA;YACAE,cAAA;YACAE,kBAAA;YACAC,GAAA;YACAC,gBAAA;YACAsB,UAAA,EAAY3B,IAAA,CAAKsB,MAAM,IAAI,CAAC;UAC9B;QACF;MACF;IACF;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"file":"graphQLPopulationPromise.js","names":["populate","recursivelyPopulateFieldsForGraphQL","uploadPopulationPromiseHOC","props","context","currentDepth","depth","draft","editorPopulationPromises","field","fieldPromises","findMany","flattenLocales","node","overrideAccess","parentIsLocalized","populationPromises","req","showHiddenFields","value","collection","payload","collections","relationTo","id","populateDepth","maxDepth","undefined","push","collectionSlug","config","slug","data","key","collectionFieldSchema","fields","Array","isArray","length","localized","siblingDoc"],"sources":["../../../../src/features/upload/server/graphQLPopulationPromise.ts"],"sourcesContent":["import type { PopulationPromise } from '../../typesServer.js'\nimport type { UploadFeatureProps } from './index.js'\nimport type { SerializedUploadNode } from './schema.js'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\nimport { recursivelyPopulateFieldsForGraphQL } from '../../../populateGraphQL/recursivelyPopulateFieldsForGraphQL.js'\n\nexport const uploadPopulationPromiseHOC = (\n props?: UploadFeatureProps,\n): PopulationPromise<SerializedUploadNode> => {\n return ({\n context,\n currentDepth,\n depth,\n draft,\n editorPopulationPromises,\n field,\n fieldPromises,\n findMany,\n flattenLocales,\n node,\n overrideAccess,\n parentIsLocalized,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (node?.value) {\n const collection = req.payload.collections[node?.relationTo]\n\n if (collection) {\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const populateDepth =\n props?.maxDepth !== undefined && props?.maxDepth < depth ? props?.maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n showHiddenFields,\n }),\n )\n\n const collectionFieldSchema = props?.collections?.[node?.relationTo]?.fields\n\n if (Array.isArray(collectionFieldSchema)) {\n if (!collectionFieldSchema?.length) {\n return\n }\n recursivelyPopulateFieldsForGraphQL({\n context,\n currentDepth,\n data: node.fields || {},\n depth,\n parentIsLocalized: parentIsLocalized || field.localized || false,\n\n draft,\n editorPopulationPromises,\n fieldPromises,\n fields: collectionFieldSchema,\n findMany,\n flattenLocales,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n siblingDoc: node.fields || {},\n })\n }\n }\n }\n }\n}\n"],"mappings":"AAIA,SAASA,QAAQ,QAAQ;AACzB,SAASC,mCAAmC,QAAQ;AAEpD,OAAO,MAAMC,0BAAA,GACXC,KAAA;EAEA,OAAO,CAAC;IACNC,OAAO;IACPC,YAAY;IACZC,KAAK;IACLC,KAAK;IACLC,wBAAwB;IACxBC,KAAK;IACLC,aAAa;IACbC,QAAQ;IACRC,cAAc;IACdC,IAAI;IACJC,cAAc;IACdC,iBAAiB;IACjBC,kBAAkB;IAClBC,GAAG;IACHC;EAAgB,CACjB;IACC,IAAIL,IAAA,EAAMM,KAAA,EAAO;MACf,MAAMC,UAAA,GAAaH,GAAA,CAAII,OAAO,CAACC,WAAW,CAACT,IAAA,EAAMU,UAAA,CAAW;MAE5D,IAAIH,UAAA,EAAY;QACd;QACA,MAAMI,EAAA,GAAKX,IAAA,EAAMM,KAAA,EAAOK,EAAA,IAAMX,IAAA,EAAMM,KAAA,CAAM;AAAA;QAE1C,MAAMM,aAAA,GACJtB,KAAA,EAAOuB,QAAA,KAAaC,SAAA,IAAaxB,KAAA,EAAOuB,QAAA,GAAWpB,KAAA,GAAQH,KAAA,EAAOuB,QAAA,GAAWpB,KAAA;QAE/EU,kBAAA,CAAmBY,IAAI,CACrB5B,QAAA,CAAS;UACPwB,EAAA;UACAK,cAAA,EAAgBT,UAAA,CAAWU,MAAM,CAACC,IAAI;UACtC1B,YAAA;UACA2B,IAAA,EAAMnB,IAAA;UACNP,KAAA,EAAOmB,aAAA;UACPlB,KAAA;UACA0B,GAAA,EAAK;UACLnB,cAAA;UACAG,GAAA;UACAC;QACF;QAGF,MAAMgB,qBAAA,GAAwB/B,KAAA,EAAOmB,WAAA,GAAcT,IAAA,EAAMU,UAAA,CAAW,EAAEY,MAAA;QAEtE,IAAIC,KAAA,CAAMC,OAAO,CAACH,qBAAA,GAAwB;UACxC,IAAI,CAACA,qBAAA,EAAuBI,MAAA,EAAQ;YAClC;UACF;UACArC,mCAAA,CAAoC;YAClCG,OAAA;YACAC,YAAA;YACA2B,IAAA,EAAMnB,IAAA,CAAKsB,MAAM,IAAI,CAAC;YACtB7B,KAAA;YACAS,iBAAA,EAAmBA,iBAAA,IAAqBN,KAAA,CAAM8B,SAAS,IAAI;YAE3DhC,KAAA;YACAC,wBAAA;YACAE,aAAA;YACAyB,MAAA,EAAQD,qBAAA;YACRvB,QAAA;YACAC,cAAA;YACAE,cAAA;YACAE,kBAAA;YACAC,GAAA;YACAC,gBAAA;YACAsB,UAAA,EAAY3B,IAAA,CAAKsB,MAAM,IAAI,CAAC;UAC9B;QACF;MACF;IACF;EACF;AACF","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import type { Field, UploadCollectionSlug } from 'payload';
2
2
  import type { UploadFeaturePropsClient } from '../client/index.js';
3
+ export type { Internal_UploadData, SerializedUploadNode, UploadData, UploadDataImproved, } from './schema.js';
3
4
  export type ExclusiveUploadFeatureProps = {
4
5
  /**
5
6
  * The collections that should be disabled. Overrides the `enableRichTextRelationship` property in the collection config.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,KAAK,EAML,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAWlE,MAAM,MAAM,2BAA2B,GACnC;IACE;;;QAGI;IACJ,mBAAmB,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAG5C,kBAAkB,CAAC,EAAE,KAAK,CAAA;CAC3B,GACD;IAEE,mBAAmB,CAAC,EAAE,KAAK,CAAA;IAE3B;;;QAGI;IACJ,kBAAkB,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAC5C,CAAA;AAEL,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE;QACZ,CAAC,UAAU,EAAE,oBAAoB,GAAG;YAClC,MAAM,EAAE,KAAK,EAAE,CAAA;SAChB,CAAA;KACF,CAAA;IACD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,2BAA2B,CAAA;AAS/B,eAAO,MAAM,aAAa,gIA8PxB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/upload/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,KAAK,EAAkB,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAIlF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAYlE,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,kBAAkB,GACnB,MAAM,aAAa,CAAA;AAEpB,MAAM,MAAM,2BAA2B,GACnC;IACE;;;QAGI;IACJ,mBAAmB,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAG5C,kBAAkB,CAAC,EAAE,KAAK,CAAA;CAC3B,GACD;IAEE,mBAAmB,CAAC,EAAE,KAAK,CAAA;IAE3B;;;QAGI;IACJ,kBAAkB,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAC5C,CAAA;AAEL,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE;QACZ,CAAC,UAAU,EAAE,oBAAoB,GAAG;YAClC,MAAM,EAAE,KAAK,EAAE,CAAA;SAChB,CAAA;KACF,CAAA;IACD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,2BAA2B,CAAA;AAE/B,eAAO,MAAM,aAAa,gIA0JxB,CAAA"}