@payloadcms/richtext-lexical 3.0.0-canary.a192632 → 3.0.0-canary.a5aaf21

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 (902) hide show
  1. package/dist/cell/index.d.ts +2 -2
  2. package/dist/cell/index.d.ts.map +1 -1
  3. package/dist/cell/index.js +107 -132
  4. package/dist/cell/index.js.map +1 -1
  5. package/dist/exports/client/Component-DOSSWC76.js +2 -0
  6. package/dist/exports/client/Component-DOSSWC76.js.map +7 -0
  7. package/dist/exports/client/Component-MBLHTKDK.js +2 -0
  8. package/dist/exports/client/Component-MBLHTKDK.js.map +7 -0
  9. package/dist/exports/client/Field-EL5TNVZW.js +2 -0
  10. package/dist/exports/client/Field-EL5TNVZW.js.map +7 -0
  11. package/dist/exports/client/RelationshipComponent-Z5SZ5FFT.js +2 -0
  12. package/dist/exports/client/RelationshipComponent-Z5SZ5FFT.js.map +7 -0
  13. package/dist/exports/client/bundled.css +1 -1
  14. package/dist/exports/client/chunk-F5DIILW3.js +2 -0
  15. package/dist/exports/client/chunk-F5DIILW3.js.map +7 -0
  16. package/dist/exports/client/chunk-GK7ZKYHL.js +2 -0
  17. package/dist/exports/client/chunk-GK7ZKYHL.js.map +7 -0
  18. package/dist/exports/client/chunk-GTKNWSQW.js +2 -0
  19. package/dist/exports/client/chunk-GTKNWSQW.js.map +7 -0
  20. package/dist/exports/client/chunk-PECDZEZY.js +3 -0
  21. package/dist/exports/client/chunk-PECDZEZY.js.map +7 -0
  22. package/dist/exports/client/chunk-PY6JO5OH.js +2 -0
  23. package/dist/exports/client/chunk-PY6JO5OH.js.map +7 -0
  24. package/dist/exports/client/chunk-TXEIKM77.js +2 -0
  25. package/dist/exports/client/chunk-TXEIKM77.js.map +7 -0
  26. package/dist/exports/client/component-ATPITPNI.js +2 -0
  27. package/dist/exports/client/component-ATPITPNI.js.map +7 -0
  28. package/dist/exports/client/component-GAX6BHKZ.js +2 -0
  29. package/dist/exports/client/component-GAX6BHKZ.js.map +7 -0
  30. package/dist/exports/client/component-M3ZCPXEG.js +2 -0
  31. package/dist/exports/client/component-M3ZCPXEG.js.map +7 -0
  32. package/dist/exports/client/componentInline-HAGGWKA7.js +2 -0
  33. package/dist/exports/client/componentInline-HAGGWKA7.js.map +7 -0
  34. package/dist/exports/client/index.d.ts +2 -3
  35. package/dist/exports/client/index.d.ts.map +1 -1
  36. package/dist/exports/client/index.js +9 -9
  37. package/dist/exports/client/index.js.map +4 -4
  38. package/dist/exports/server/migrate.js +0 -1
  39. package/dist/exports/server/migrate.js.map +1 -1
  40. package/dist/features/align/client/index.d.ts +1 -4
  41. package/dist/features/align/client/index.d.ts.map +1 -1
  42. package/dist/features/align/client/index.js +151 -134
  43. package/dist/features/align/client/index.js.map +1 -1
  44. package/dist/features/align/client/toolbarAlignGroup.d.ts.map +1 -1
  45. package/dist/features/align/client/toolbarAlignGroup.js +10 -9
  46. package/dist/features/align/client/toolbarAlignGroup.js.map +1 -1
  47. package/dist/features/align/server/i18n.js +192 -193
  48. package/dist/features/align/server/i18n.js.map +1 -1
  49. package/dist/features/align/server/index.js +5 -6
  50. package/dist/features/align/server/index.js.map +1 -1
  51. package/dist/features/blockquote/client/index.d.ts +1 -4
  52. package/dist/features/blockquote/client/index.d.ts.map +1 -1
  53. package/dist/features/blockquote/client/index.js +60 -65
  54. package/dist/features/blockquote/client/index.js.map +1 -1
  55. package/dist/features/blockquote/markdownTransformer.js +28 -34
  56. package/dist/features/blockquote/markdownTransformer.js.map +1 -1
  57. package/dist/features/blockquote/server/i18n.js +96 -97
  58. package/dist/features/blockquote/server/i18n.js.map +1 -1
  59. package/dist/features/blockquote/server/index.d.ts.map +1 -1
  60. package/dist/features/blockquote/server/index.js +43 -38
  61. package/dist/features/blockquote/server/index.js.map +1 -1
  62. package/dist/features/blocks/client/component/BlockContent.d.ts.map +1 -1
  63. package/dist/features/blocks/client/component/BlockContent.js +166 -172
  64. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  65. package/dist/features/blocks/client/component/FormSavePlugin.d.ts.map +1 -1
  66. package/dist/features/blocks/client/component/FormSavePlugin.js +46 -22
  67. package/dist/features/blocks/client/component/FormSavePlugin.js.map +1 -1
  68. package/dist/features/blocks/client/component/index.js +134 -142
  69. package/dist/features/blocks/client/component/index.js.map +1 -1
  70. package/dist/features/blocks/client/component/removeEmptyArrayValues.d.ts.map +1 -1
  71. package/dist/features/blocks/client/component/removeEmptyArrayValues.js +12 -8
  72. package/dist/features/blocks/client/component/removeEmptyArrayValues.js.map +1 -1
  73. package/dist/features/blocks/client/componentInline/index.js +106 -122
  74. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  75. package/dist/features/blocks/client/index.d.ts +1 -4
  76. package/dist/features/blocks/client/index.d.ts.map +1 -1
  77. package/dist/features/blocks/client/index.js +149 -142
  78. package/dist/features/blocks/client/index.js.map +1 -1
  79. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  80. package/dist/features/blocks/client/nodes/BlocksNode.js +41 -40
  81. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  82. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  83. package/dist/features/blocks/client/nodes/InlineBlocksNode.js +31 -30
  84. package/dist/features/blocks/client/nodes/InlineBlocksNode.js.map +1 -1
  85. package/dist/features/blocks/client/plugin/commands.d.ts.map +1 -1
  86. package/dist/features/blocks/client/plugin/commands.js +2 -1
  87. package/dist/features/blocks/client/plugin/commands.js.map +1 -1
  88. package/dist/features/blocks/client/plugin/index.d.ts.map +1 -1
  89. package/dist/features/blocks/client/plugin/index.js +181 -99
  90. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  91. package/dist/features/blocks/server/graphQLPopulationPromise.js +41 -28
  92. package/dist/features/blocks/server/graphQLPopulationPromise.js.map +1 -1
  93. package/dist/features/blocks/server/i18n.js +288 -289
  94. package/dist/features/blocks/server/i18n.js.map +1 -1
  95. package/dist/features/blocks/server/index.d.ts.map +1 -1
  96. package/dist/features/blocks/server/index.js +151 -151
  97. package/dist/features/blocks/server/index.js.map +1 -1
  98. package/dist/features/blocks/server/nodes/BlocksNode.d.ts +1 -1
  99. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  100. package/dist/features/blocks/server/nodes/BlocksNode.js +76 -73
  101. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  102. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts +1 -1
  103. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  104. package/dist/features/blocks/server/nodes/InlineBlocksNode.js +78 -76
  105. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  106. package/dist/features/blocks/server/validate.js +45 -34
  107. package/dist/features/blocks/server/validate.js.map +1 -1
  108. package/dist/features/converters/html/converter/converters/linebreak.js +4 -7
  109. package/dist/features/converters/html/converter/converters/linebreak.js.map +1 -1
  110. package/dist/features/converters/html/converter/converters/paragraph.d.ts.map +1 -1
  111. package/dist/features/converters/html/converter/converters/paragraph.js +28 -19
  112. package/dist/features/converters/html/converter/converters/paragraph.js.map +1 -1
  113. package/dist/features/converters/html/converter/converters/text.d.ts.map +1 -1
  114. package/dist/features/converters/html/converter/converters/text.js +29 -29
  115. package/dist/features/converters/html/converter/converters/text.js.map +1 -1
  116. package/dist/features/converters/html/converter/defaultConverters.js +1 -6
  117. package/dist/features/converters/html/converter/defaultConverters.js.map +1 -1
  118. package/dist/features/converters/html/converter/index.d.ts +11 -7
  119. package/dist/features/converters/html/converter/index.d.ts.map +1 -1
  120. package/dist/features/converters/html/converter/index.js +82 -51
  121. package/dist/features/converters/html/converter/index.js.map +1 -1
  122. package/dist/features/converters/html/converter/types.d.ts +3 -1
  123. package/dist/features/converters/html/converter/types.d.ts.map +1 -1
  124. package/dist/features/converters/html/converter/types.js +1 -2
  125. package/dist/features/converters/html/converter/types.js.map +1 -1
  126. package/dist/features/converters/html/field/index.d.ts.map +1 -1
  127. package/dist/features/converters/html/field/index.js +140 -139
  128. package/dist/features/converters/html/field/index.js.map +1 -1
  129. package/dist/features/converters/html/index.js +2 -3
  130. package/dist/features/converters/html/index.js.map +1 -1
  131. package/dist/features/debug/testRecorder/client/index.d.ts +1 -4
  132. package/dist/features/debug/testRecorder/client/index.d.ts.map +1 -1
  133. package/dist/features/debug/testRecorder/client/index.js +5 -7
  134. package/dist/features/debug/testRecorder/client/index.js.map +1 -1
  135. package/dist/features/debug/testRecorder/client/plugin/index.js +353 -413
  136. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  137. package/dist/features/debug/testRecorder/server/index.js +4 -5
  138. package/dist/features/debug/testRecorder/server/index.js.map +1 -1
  139. package/dist/features/debug/treeView/client/index.d.ts +1 -4
  140. package/dist/features/debug/treeView/client/index.d.ts.map +1 -1
  141. package/dist/features/debug/treeView/client/index.js +5 -7
  142. package/dist/features/debug/treeView/client/index.js.map +1 -1
  143. package/dist/features/debug/treeView/client/plugin/index.js +21 -11
  144. package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
  145. package/dist/features/debug/treeView/server/index.js +4 -5
  146. package/dist/features/debug/treeView/server/index.js.map +1 -1
  147. package/dist/features/experimental_table/client/index.d.ts +1 -1
  148. package/dist/features/experimental_table/client/index.d.ts.map +1 -1
  149. package/dist/features/experimental_table/client/index.js +41 -58
  150. package/dist/features/experimental_table/client/index.js.map +1 -1
  151. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js +485 -567
  152. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  153. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js +282 -301
  154. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  155. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.d.ts +1 -8
  156. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +1 -1
  157. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js +165 -160
  158. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -1
  159. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts +1 -1
  160. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts.map +1 -1
  161. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js +132 -79
  162. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +1 -1
  163. package/dist/features/experimental_table/client/utils/debounce.d.ts.map +1 -1
  164. package/dist/features/experimental_table/client/utils/debounce.js +108 -89
  165. package/dist/features/experimental_table/client/utils/debounce.js.map +1 -1
  166. package/dist/features/experimental_table/client/utils/useDebounce.d.ts.map +1 -1
  167. package/dist/features/experimental_table/client/utils/useDebounce.js +11 -13
  168. package/dist/features/experimental_table/client/utils/useDebounce.js.map +1 -1
  169. package/dist/features/experimental_table/server/index.d.ts.map +1 -1
  170. package/dist/features/experimental_table/server/index.js +141 -114
  171. package/dist/features/experimental_table/server/index.js.map +1 -1
  172. package/dist/features/format/bold/feature.client.d.ts +1 -4
  173. package/dist/features/format/bold/feature.client.d.ts.map +1 -1
  174. package/dist/features/format/bold/feature.client.js +34 -35
  175. package/dist/features/format/bold/feature.client.js.map +1 -1
  176. package/dist/features/format/bold/feature.server.js +14 -18
  177. package/dist/features/format/bold/feature.server.js.map +1 -1
  178. package/dist/features/format/bold/markdownTransformers.js +14 -25
  179. package/dist/features/format/bold/markdownTransformers.js.map +1 -1
  180. package/dist/features/format/inlineCode/feature.client.d.ts +1 -4
  181. package/dist/features/format/inlineCode/feature.client.d.ts.map +1 -1
  182. package/dist/features/format/inlineCode/feature.client.js +26 -28
  183. package/dist/features/format/inlineCode/feature.client.js.map +1 -1
  184. package/dist/features/format/inlineCode/feature.server.js +5 -8
  185. package/dist/features/format/inlineCode/feature.server.js.map +1 -1
  186. package/dist/features/format/inlineCode/markdownTransformers.js +3 -6
  187. package/dist/features/format/inlineCode/markdownTransformers.js.map +1 -1
  188. package/dist/features/format/italic/feature.client.d.ts +1 -4
  189. package/dist/features/format/italic/feature.client.d.ts.map +1 -1
  190. package/dist/features/format/italic/feature.client.js +26 -29
  191. package/dist/features/format/italic/feature.client.js.map +1 -1
  192. package/dist/features/format/italic/feature.server.js +5 -9
  193. package/dist/features/format/italic/feature.server.js.map +1 -1
  194. package/dist/features/format/italic/markdownTransformers.js +7 -12
  195. package/dist/features/format/italic/markdownTransformers.js.map +1 -1
  196. package/dist/features/format/shared/toolbarFormatGroup.d.ts.map +1 -1
  197. package/dist/features/format/shared/toolbarFormatGroup.js +9 -8
  198. package/dist/features/format/shared/toolbarFormatGroup.js.map +1 -1
  199. package/dist/features/format/strikethrough/feature.client.d.ts +1 -4
  200. package/dist/features/format/strikethrough/feature.client.d.ts.map +1 -1
  201. package/dist/features/format/strikethrough/feature.client.js +26 -28
  202. package/dist/features/format/strikethrough/feature.client.js.map +1 -1
  203. package/dist/features/format/strikethrough/feature.server.js +5 -8
  204. package/dist/features/format/strikethrough/feature.server.js.map +1 -1
  205. package/dist/features/format/strikethrough/markdownTransformers.js +3 -6
  206. package/dist/features/format/strikethrough/markdownTransformers.js.map +1 -1
  207. package/dist/features/format/subscript/feature.client.d.ts +1 -4
  208. package/dist/features/format/subscript/feature.client.d.ts.map +1 -1
  209. package/dist/features/format/subscript/feature.client.js +25 -25
  210. package/dist/features/format/subscript/feature.client.js.map +1 -1
  211. package/dist/features/format/subscript/feature.server.js +4 -5
  212. package/dist/features/format/subscript/feature.server.js.map +1 -1
  213. package/dist/features/format/superscript/feature.client.d.ts +1 -4
  214. package/dist/features/format/superscript/feature.client.d.ts.map +1 -1
  215. package/dist/features/format/superscript/feature.client.js +25 -25
  216. package/dist/features/format/superscript/feature.client.js.map +1 -1
  217. package/dist/features/format/superscript/feature.server.js +4 -5
  218. package/dist/features/format/superscript/feature.server.js.map +1 -1
  219. package/dist/features/format/underline/feature.client.d.ts +1 -4
  220. package/dist/features/format/underline/feature.client.d.ts.map +1 -1
  221. package/dist/features/format/underline/feature.client.js +25 -25
  222. package/dist/features/format/underline/feature.client.js.map +1 -1
  223. package/dist/features/format/underline/feature.server.js +4 -5
  224. package/dist/features/format/underline/feature.server.js.map +1 -1
  225. package/dist/features/heading/client/index.d.ts +1 -4
  226. package/dist/features/heading/client/index.d.ts.map +1 -1
  227. package/dist/features/heading/client/index.js +86 -90
  228. package/dist/features/heading/client/index.js.map +1 -1
  229. package/dist/features/heading/markdownTransformer.js +22 -25
  230. package/dist/features/heading/markdownTransformer.js.map +1 -1
  231. package/dist/features/heading/server/i18n.js +96 -97
  232. package/dist/features/heading/server/i18n.js.map +1 -1
  233. package/dist/features/heading/server/index.d.ts.map +1 -1
  234. package/dist/features/heading/server/index.js +53 -51
  235. package/dist/features/heading/server/index.js.map +1 -1
  236. package/dist/features/horizontalRule/client/component/index.js +81 -51
  237. package/dist/features/horizontalRule/client/component/index.js.map +1 -1
  238. package/dist/features/horizontalRule/client/index.d.ts +1 -4
  239. package/dist/features/horizontalRule/client/index.d.ts.map +1 -1
  240. package/dist/features/horizontalRule/client/index.js +48 -57
  241. package/dist/features/horizontalRule/client/index.js.map +1 -1
  242. package/dist/features/horizontalRule/client/markdownTransformer.js +15 -18
  243. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  244. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
  245. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +33 -30
  246. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  247. package/dist/features/horizontalRule/client/plugin/index.js +31 -20
  248. package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
  249. package/dist/features/horizontalRule/server/i18n.js +96 -97
  250. package/dist/features/horizontalRule/server/i18n.js.map +1 -1
  251. package/dist/features/horizontalRule/server/index.js +17 -24
  252. package/dist/features/horizontalRule/server/index.js.map +1 -1
  253. package/dist/features/horizontalRule/server/markdownTransformer.js +15 -18
  254. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  255. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
  256. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +72 -67
  257. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  258. package/dist/features/indent/client/index.d.ts +1 -4
  259. package/dist/features/indent/client/index.d.ts.map +1 -1
  260. package/dist/features/indent/client/index.js +52 -47
  261. package/dist/features/indent/client/index.js.map +1 -1
  262. package/dist/features/indent/client/toolbarIndentGroup.d.ts.map +1 -1
  263. package/dist/features/indent/client/toolbarIndentGroup.js +9 -8
  264. package/dist/features/indent/client/toolbarIndentGroup.js.map +1 -1
  265. package/dist/features/indent/server/i18n.js +128 -129
  266. package/dist/features/indent/server/i18n.js.map +1 -1
  267. package/dist/features/indent/server/index.js +5 -6
  268. package/dist/features/indent/server/index.js.map +1 -1
  269. package/dist/features/link/client/index.d.ts +1 -13
  270. package/dist/features/link/client/index.d.ts.map +1 -1
  271. package/dist/features/link/client/index.js +79 -84
  272. package/dist/features/link/client/index.js.map +1 -1
  273. package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
  274. package/dist/features/link/client/plugins/autoLink/index.js +269 -271
  275. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  276. package/dist/features/link/client/plugins/clickableLink/index.js +3 -3
  277. package/dist/features/link/client/plugins/clickableLink/index.js.map +1 -1
  278. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.d.ts.map +1 -1
  279. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js +2 -1
  280. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/commands.js.map +1 -1
  281. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  282. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +257 -277
  283. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  284. package/dist/features/link/client/plugins/floatingLinkEditor/index.d.ts.map +1 -1
  285. package/dist/features/link/client/plugins/floatingLinkEditor/index.js +8 -6
  286. package/dist/features/link/client/plugins/floatingLinkEditor/index.js.map +1 -1
  287. package/dist/features/link/client/plugins/floatingLinkEditor/types.js +1 -2
  288. package/dist/features/link/client/plugins/floatingLinkEditor/types.js.map +1 -1
  289. package/dist/features/link/client/plugins/link/index.js +50 -41
  290. package/dist/features/link/client/plugins/link/index.js.map +1 -1
  291. package/dist/features/link/markdownTransformer.js +38 -39
  292. package/dist/features/link/markdownTransformer.js.map +1 -1
  293. package/dist/features/link/nodes/AutoLinkNode.js +57 -56
  294. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  295. package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
  296. package/dist/features/link/nodes/LinkNode.js +279 -277
  297. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  298. package/dist/features/link/nodes/types.js +1 -2
  299. package/dist/features/link/nodes/types.js.map +1 -1
  300. package/dist/features/link/server/baseFields.d.ts.map +1 -1
  301. package/dist/features/link/server/baseFields.js +128 -88
  302. package/dist/features/link/server/baseFields.js.map +1 -1
  303. package/dist/features/link/server/graphQLPopulationPromise.js +42 -28
  304. package/dist/features/link/server/graphQLPopulationPromise.js.map +1 -1
  305. package/dist/features/link/server/i18n.js +96 -97
  306. package/dist/features/link/server/i18n.js.map +1 -1
  307. package/dist/features/link/server/index.d.ts.map +1 -1
  308. package/dist/features/link/server/index.js +131 -114
  309. package/dist/features/link/server/index.js.map +1 -1
  310. package/dist/features/link/server/transformExtraFields.js +15 -15
  311. package/dist/features/link/server/transformExtraFields.js.map +1 -1
  312. package/dist/features/link/server/validate.js +37 -26
  313. package/dist/features/link/server/validate.js.map +1 -1
  314. package/dist/features/lists/checklist/client/index.d.ts +1 -4
  315. package/dist/features/lists/checklist/client/index.d.ts.map +1 -1
  316. package/dist/features/lists/checklist/client/index.js +77 -85
  317. package/dist/features/lists/checklist/client/index.js.map +1 -1
  318. package/dist/features/lists/checklist/client/plugin/index.js +3 -3
  319. package/dist/features/lists/checklist/client/plugin/index.js.map +1 -1
  320. package/dist/features/lists/checklist/markdownTransformers.js +7 -11
  321. package/dist/features/lists/checklist/markdownTransformers.js.map +1 -1
  322. package/dist/features/lists/checklist/server/i18n.js +96 -97
  323. package/dist/features/lists/checklist/server/i18n.js.map +1 -1
  324. package/dist/features/lists/checklist/server/index.js +21 -25
  325. package/dist/features/lists/checklist/server/index.js.map +1 -1
  326. package/dist/features/lists/htmlConverter.d.ts.map +1 -1
  327. package/dist/features/lists/htmlConverter.js +62 -43
  328. package/dist/features/lists/htmlConverter.js.map +1 -1
  329. package/dist/features/lists/orderedList/client/index.d.ts +1 -4
  330. package/dist/features/lists/orderedList/client/index.d.ts.map +1 -1
  331. package/dist/features/lists/orderedList/client/index.js +71 -77
  332. package/dist/features/lists/orderedList/client/index.js.map +1 -1
  333. package/dist/features/lists/orderedList/markdownTransformer.js +7 -11
  334. package/dist/features/lists/orderedList/markdownTransformer.js.map +1 -1
  335. package/dist/features/lists/orderedList/server/i18n.js +96 -97
  336. package/dist/features/lists/orderedList/server/i18n.js.map +1 -1
  337. package/dist/features/lists/orderedList/server/index.js +21 -25
  338. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  339. package/dist/features/lists/plugin/index.js +3 -3
  340. package/dist/features/lists/plugin/index.js.map +1 -1
  341. package/dist/features/lists/shared/markdown.js +48 -49
  342. package/dist/features/lists/shared/markdown.js.map +1 -1
  343. package/dist/features/lists/shared/slashMenuListGroup.js +9 -8
  344. package/dist/features/lists/shared/slashMenuListGroup.js.map +1 -1
  345. package/dist/features/lists/unorderedList/client/index.d.ts +1 -4
  346. package/dist/features/lists/unorderedList/client/index.d.ts.map +1 -1
  347. package/dist/features/lists/unorderedList/client/index.js +68 -76
  348. package/dist/features/lists/unorderedList/client/index.js.map +1 -1
  349. package/dist/features/lists/unorderedList/markdownTransformer.js +7 -11
  350. package/dist/features/lists/unorderedList/markdownTransformer.js.map +1 -1
  351. package/dist/features/lists/unorderedList/server/i18n.js +96 -97
  352. package/dist/features/lists/unorderedList/server/i18n.js.map +1 -1
  353. package/dist/features/lists/unorderedList/server/index.js +17 -23
  354. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  355. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +18 -17
  356. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js.map +1 -1
  357. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +30 -29
  358. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js.map +1 -1
  359. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +21 -20
  360. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js.map +1 -1
  361. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +21 -19
  362. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js.map +1 -1
  363. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +18 -17
  364. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js.map +1 -1
  365. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +24 -23
  366. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js.map +1 -1
  367. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +20 -21
  368. package/dist/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js.map +1 -1
  369. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +1 -10
  370. package/dist/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js.map +1 -1
  371. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js +69 -61
  372. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js.map +1 -1
  373. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js +1 -2
  374. package/dist/features/migrations/lexicalPluginToLexical/converter/types.js.map +1 -1
  375. package/dist/features/migrations/lexicalPluginToLexical/feature.client.d.ts +1 -4
  376. package/dist/features/migrations/lexicalPluginToLexical/feature.client.d.ts.map +1 -1
  377. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js +5 -7
  378. package/dist/features/migrations/lexicalPluginToLexical/feature.client.js.map +1 -1
  379. package/dist/features/migrations/lexicalPluginToLexical/feature.server.d.ts +1 -0
  380. package/dist/features/migrations/lexicalPluginToLexical/feature.server.d.ts.map +1 -1
  381. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js +42 -43
  382. package/dist/features/migrations/lexicalPluginToLexical/feature.server.js.map +1 -1
  383. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -1
  384. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +11 -11
  385. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  386. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +64 -59
  387. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  388. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +19 -19
  389. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js.map +1 -1
  390. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js +20 -25
  391. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js.map +1 -1
  392. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js +28 -30
  393. package/dist/features/migrations/slateToLexical/converter/converters/indent/converter.js.map +1 -1
  394. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js +26 -26
  395. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js.map +1 -1
  396. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js +22 -21
  397. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js.map +1 -1
  398. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +22 -22
  399. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js.map +1 -1
  400. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js +12 -13
  401. package/dist/features/migrations/slateToLexical/converter/converters/relationship/converter.js.map +1 -1
  402. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js +23 -23
  403. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js.map +1 -1
  404. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +22 -22
  405. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js.map +1 -1
  406. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js +15 -16
  407. package/dist/features/migrations/slateToLexical/converter/converters/upload/converter.js.map +1 -1
  408. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js +1 -13
  409. package/dist/features/migrations/slateToLexical/converter/defaultConverters.js.map +1 -1
  410. package/dist/features/migrations/slateToLexical/converter/index.js +105 -98
  411. package/dist/features/migrations/slateToLexical/converter/index.js.map +1 -1
  412. package/dist/features/migrations/slateToLexical/converter/types.js +1 -2
  413. package/dist/features/migrations/slateToLexical/converter/types.js.map +1 -1
  414. package/dist/features/migrations/slateToLexical/feature.client.d.ts +1 -4
  415. package/dist/features/migrations/slateToLexical/feature.client.d.ts.map +1 -1
  416. package/dist/features/migrations/slateToLexical/feature.client.js +5 -7
  417. package/dist/features/migrations/slateToLexical/feature.client.js.map +1 -1
  418. package/dist/features/migrations/slateToLexical/feature.server.d.ts +1 -0
  419. package/dist/features/migrations/slateToLexical/feature.server.d.ts.map +1 -1
  420. package/dist/features/migrations/slateToLexical/feature.server.js +43 -44
  421. package/dist/features/migrations/slateToLexical/feature.server.js.map +1 -1
  422. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -1
  423. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +11 -11
  424. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js.map +1 -1
  425. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +64 -59
  426. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  427. package/dist/features/paragraph/client/index.d.ts +1 -4
  428. package/dist/features/paragraph/client/index.d.ts.map +1 -1
  429. package/dist/features/paragraph/client/index.js +58 -61
  430. package/dist/features/paragraph/client/index.js.map +1 -1
  431. package/dist/features/paragraph/server/i18n.js +128 -129
  432. package/dist/features/paragraph/server/i18n.js.map +1 -1
  433. package/dist/features/paragraph/server/index.js +6 -7
  434. package/dist/features/paragraph/server/index.js.map +1 -1
  435. package/dist/features/relationship/client/components/RelationshipComponent.d.ts.map +1 -1
  436. package/dist/features/relationship/client/components/RelationshipComponent.js +144 -149
  437. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  438. package/dist/features/relationship/client/drawer/commands.js +0 -1
  439. package/dist/features/relationship/client/drawer/commands.js.map +1 -1
  440. package/dist/features/relationship/client/drawer/index.js +138 -67
  441. package/dist/features/relationship/client/drawer/index.js.map +1 -1
  442. package/dist/features/relationship/client/index.d.ts +2 -17
  443. package/dist/features/relationship/client/index.d.ts.map +1 -1
  444. package/dist/features/relationship/client/index.js +53 -59
  445. package/dist/features/relationship/client/index.js.map +1 -1
  446. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts +1 -1
  447. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
  448. package/dist/features/relationship/client/nodes/RelationshipNode.js +60 -59
  449. package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
  450. package/dist/features/relationship/client/plugins/index.js +90 -35
  451. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  452. package/dist/features/relationship/client/utils/EnabledRelationshipsCondition.d.ts.map +1 -1
  453. package/dist/features/relationship/client/utils/EnabledRelationshipsCondition.js +97 -26
  454. package/dist/features/relationship/client/utils/EnabledRelationshipsCondition.js.map +1 -1
  455. package/dist/features/relationship/server/graphQLPopulationPromise.js +34 -26
  456. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  457. package/dist/features/relationship/server/i18n.js +96 -97
  458. package/dist/features/relationship/server/i18n.js.map +1 -1
  459. package/dist/features/relationship/server/index.d.ts +1 -1
  460. package/dist/features/relationship/server/index.d.ts.map +1 -1
  461. package/dist/features/relationship/server/index.js +56 -44
  462. package/dist/features/relationship/server/index.js.map +1 -1
  463. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts +7 -5
  464. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  465. package/dist/features/relationship/server/nodes/RelationshipNode.js +90 -87
  466. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  467. package/dist/features/shared/slashMenu/basicGroup.js +9 -8
  468. package/dist/features/shared/slashMenu/basicGroup.js.map +1 -1
  469. package/dist/features/shared/toolbar/addDropdownGroup.js +8 -9
  470. package/dist/features/shared/toolbar/addDropdownGroup.js.map +1 -1
  471. package/dist/features/shared/toolbar/featureButtonsGroup.js +7 -8
  472. package/dist/features/shared/toolbar/featureButtonsGroup.js.map +1 -1
  473. package/dist/features/shared/toolbar/textDropdownGroup.js +8 -9
  474. package/dist/features/shared/toolbar/textDropdownGroup.js.map +1 -1
  475. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
  476. package/dist/features/toolbars/fixed/client/Toolbar/index.js +264 -187
  477. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  478. package/dist/features/toolbars/fixed/client/index.d.ts +1 -4
  479. package/dist/features/toolbars/fixed/client/index.d.ts.map +1 -1
  480. package/dist/features/toolbars/fixed/client/index.js +5 -7
  481. package/dist/features/toolbars/fixed/client/index.js.map +1 -1
  482. package/dist/features/toolbars/fixed/server/index.js +14 -13
  483. package/dist/features/toolbars/fixed/server/index.js.map +1 -1
  484. package/dist/features/toolbars/inline/client/Toolbar/index.d.ts.map +1 -1
  485. package/dist/features/toolbars/inline/client/Toolbar/index.js +338 -291
  486. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  487. package/dist/features/toolbars/inline/client/index.d.ts +1 -4
  488. package/dist/features/toolbars/inline/client/index.d.ts.map +1 -1
  489. package/dist/features/toolbars/inline/client/index.js +5 -7
  490. package/dist/features/toolbars/inline/client/index.js.map +1 -1
  491. package/dist/features/toolbars/inline/server/index.js +4 -5
  492. package/dist/features/toolbars/inline/server/index.js.map +1 -1
  493. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts +1 -1
  494. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  495. package/dist/features/toolbars/shared/ToolbarButton/index.js +75 -97
  496. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  497. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts +2 -2
  498. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts.map +1 -1
  499. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +194 -209
  500. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  501. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts +3 -3
  502. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  503. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +271 -124
  504. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  505. package/dist/features/toolbars/types.js +1 -2
  506. package/dist/features/toolbars/types.js.map +1 -1
  507. package/dist/features/typeUtilities.js +2 -3
  508. package/dist/features/typeUtilities.js.map +1 -1
  509. package/dist/features/typesClient.d.ts +10 -11
  510. package/dist/features/typesClient.d.ts.map +1 -1
  511. package/dist/features/typesClient.js +1 -2
  512. package/dist/features/typesClient.js.map +1 -1
  513. package/dist/features/typesServer.d.ts +11 -11
  514. package/dist/features/typesServer.d.ts.map +1 -1
  515. package/dist/features/typesServer.js +1 -2
  516. package/dist/features/typesServer.js.map +1 -1
  517. package/dist/features/upload/client/component/index.d.ts.map +1 -1
  518. package/dist/features/upload/client/component/index.js +212 -220
  519. package/dist/features/upload/client/component/index.js.map +1 -1
  520. package/dist/features/upload/client/drawer/commands.js +1 -1
  521. package/dist/features/upload/client/drawer/commands.js.map +1 -1
  522. package/dist/features/upload/client/drawer/index.js +107 -58
  523. package/dist/features/upload/client/drawer/index.js.map +1 -1
  524. package/dist/features/upload/client/feature.client.d.ts +1 -4
  525. package/dist/features/upload/client/feature.client.d.ts.map +1 -1
  526. package/dist/features/upload/client/feature.client.js +51 -61
  527. package/dist/features/upload/client/feature.client.js.map +1 -1
  528. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  529. package/dist/features/upload/client/nodes/UploadNode.js +77 -74
  530. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  531. package/dist/features/upload/client/plugin/index.js +67 -39
  532. package/dist/features/upload/client/plugin/index.js.map +1 -1
  533. package/dist/features/upload/server/feature.server.d.ts.map +1 -1
  534. package/dist/features/upload/server/feature.server.js +195 -170
  535. package/dist/features/upload/server/feature.server.js.map +1 -1
  536. package/dist/features/upload/server/graphQLPopulationPromise.js +60 -47
  537. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  538. package/dist/features/upload/server/i18n.js +96 -97
  539. package/dist/features/upload/server/i18n.js.map +1 -1
  540. package/dist/features/upload/server/nodes/UploadNode.d.ts +9 -7
  541. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  542. package/dist/features/upload/server/nodes/UploadNode.js +113 -108
  543. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  544. package/dist/features/upload/server/validate.js +53 -40
  545. package/dist/features/upload/server/validate.js.map +1 -1
  546. package/dist/field/Field.d.ts.map +1 -1
  547. package/dist/field/Field.js +124 -105
  548. package/dist/field/Field.js.map +1 -1
  549. package/dist/field/bundled.css +1 -0
  550. package/dist/field/index.d.ts.map +1 -1
  551. package/dist/field/index.js +83 -36
  552. package/dist/field/index.js.map +1 -1
  553. package/dist/i18n.js +160 -161
  554. package/dist/i18n.js.map +1 -1
  555. package/dist/index.d.ts +4 -3
  556. package/dist/index.d.ts.map +1 -1
  557. package/dist/index.js +666 -629
  558. package/dist/index.js.map +1 -1
  559. package/dist/lexical/EditorPlugin.d.ts.map +1 -1
  560. package/dist/lexical/EditorPlugin.js +15 -10
  561. package/dist/lexical/EditorPlugin.js.map +1 -1
  562. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  563. package/dist/lexical/LexicalEditor.js +209 -164
  564. package/dist/lexical/LexicalEditor.js.map +1 -1
  565. package/dist/lexical/LexicalProvider.js +84 -83
  566. package/dist/lexical/LexicalProvider.js.map +1 -1
  567. package/dist/lexical/config/client/EditorConfigProvider.d.ts +1 -1
  568. package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
  569. package/dist/lexical/config/client/EditorConfigProvider.js +76 -79
  570. package/dist/lexical/config/client/EditorConfigProvider.js.map +1 -1
  571. package/dist/lexical/config/client/default.js +3 -3
  572. package/dist/lexical/config/client/default.js.map +1 -1
  573. package/dist/lexical/config/client/loader.d.ts +1 -3
  574. package/dist/lexical/config/client/loader.d.ts.map +1 -1
  575. package/dist/lexical/config/client/loader.js +30 -39
  576. package/dist/lexical/config/client/loader.js.map +1 -1
  577. package/dist/lexical/config/client/sanitize.d.ts +1 -1
  578. package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
  579. package/dist/lexical/config/client/sanitize.js +166 -166
  580. package/dist/lexical/config/client/sanitize.js.map +1 -1
  581. package/dist/lexical/config/server/default.js +5 -27
  582. package/dist/lexical/config/server/default.js.map +1 -1
  583. package/dist/lexical/config/server/loader.d.ts +2 -1
  584. package/dist/lexical/config/server/loader.d.ts.map +1 -1
  585. package/dist/lexical/config/server/loader.js +105 -103
  586. package/dist/lexical/config/server/loader.js.map +1 -1
  587. package/dist/lexical/config/server/sanitize.d.ts +1 -1
  588. package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
  589. package/dist/lexical/config/server/sanitize.js +100 -100
  590. package/dist/lexical/config/server/sanitize.js.map +1 -1
  591. package/dist/lexical/config/types.js +1 -2
  592. package/dist/lexical/config/types.js.map +1 -1
  593. package/dist/lexical/nodes/index.js +9 -8
  594. package/dist/lexical/nodes/index.js.map +1 -1
  595. package/dist/lexical/plugins/MarkdownShortcut/index.js +17 -5
  596. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  597. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +3 -3
  598. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
  599. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +349 -362
  600. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  601. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +1 -1
  602. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -1
  603. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +223 -160
  604. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js.map +1 -1
  605. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +1 -2
  606. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js.map +1 -1
  607. package/dist/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  608. package/dist/lexical/plugins/SlashMenu/index.js +191 -179
  609. package/dist/lexical/plugins/SlashMenu/index.js.map +1 -1
  610. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.d.ts.map +1 -1
  611. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js +41 -26
  612. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js.map +1 -1
  613. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +126 -130
  614. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  615. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
  616. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +11 -10
  617. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js.map +1 -1
  618. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.d.ts.map +1 -1
  619. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +11 -10
  620. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js.map +1 -1
  621. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.d.ts.map +1 -1
  622. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +27 -23
  623. package/dist/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js.map +1 -1
  624. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
  625. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +306 -300
  626. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  627. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.d.ts.map +1 -1
  628. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +96 -99
  629. package/dist/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js.map +1 -1
  630. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.d.ts.map +1 -1
  631. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js +23 -16
  632. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.js.map +1 -1
  633. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.d.ts.map +1 -1
  634. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js +20 -27
  635. package/dist/lexical/plugins/handles/utils/doesLineHeightAffectElement.js.map +1 -1
  636. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.d.ts.map +1 -1
  637. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js +15 -11
  638. package/dist/lexical/plugins/handles/utils/getCollapsedMargins.js.map +1 -1
  639. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.d.ts.map +1 -1
  640. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js +133 -118
  641. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js.map +1 -1
  642. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.d.ts.map +1 -1
  643. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +3 -2
  644. package/dist/lexical/plugins/handles/utils/getTopLevelNodeKeys.js.map +1 -1
  645. package/dist/lexical/plugins/handles/utils/isOnHandleElement.d.ts.map +1 -1
  646. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js +3 -2
  647. package/dist/lexical/plugins/handles/utils/isOnHandleElement.js.map +1 -1
  648. package/dist/lexical/plugins/handles/utils/setHandlePosition.d.ts.map +1 -1
  649. package/dist/lexical/plugins/handles/utils/setHandlePosition.js +24 -25
  650. package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
  651. package/dist/lexical/theme/EditorTheme.d.ts.map +1 -1
  652. package/dist/lexical/theme/EditorTheme.js +97 -102
  653. package/dist/lexical/theme/EditorTheme.js.map +1 -1
  654. package/dist/lexical/ui/ContentEditable.d.ts.map +1 -1
  655. package/dist/lexical/ui/ContentEditable.js +27 -10
  656. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  657. package/dist/lexical/ui/icons/AI/index.d.ts.map +1 -1
  658. package/dist/lexical/ui/icons/AI/index.js +31 -33
  659. package/dist/lexical/ui/icons/AI/index.js.map +1 -1
  660. package/dist/lexical/ui/icons/Add/index.d.ts.map +1 -1
  661. package/dist/lexical/ui/icons/Add/index.js +16 -18
  662. package/dist/lexical/ui/icons/Add/index.js.map +1 -1
  663. package/dist/lexical/ui/icons/AlignCenter/index.d.ts.map +1 -1
  664. package/dist/lexical/ui/icons/AlignCenter/index.js +25 -28
  665. package/dist/lexical/ui/icons/AlignCenter/index.js.map +1 -1
  666. package/dist/lexical/ui/icons/AlignJustify/index.d.ts.map +1 -1
  667. package/dist/lexical/ui/icons/AlignJustify/index.js +25 -28
  668. package/dist/lexical/ui/icons/AlignJustify/index.js.map +1 -1
  669. package/dist/lexical/ui/icons/AlignLeft/index.d.ts.map +1 -1
  670. package/dist/lexical/ui/icons/AlignLeft/index.js +25 -28
  671. package/dist/lexical/ui/icons/AlignLeft/index.js.map +1 -1
  672. package/dist/lexical/ui/icons/AlignRight/index.d.ts.map +1 -1
  673. package/dist/lexical/ui/icons/AlignRight/index.js +25 -28
  674. package/dist/lexical/ui/icons/AlignRight/index.js.map +1 -1
  675. package/dist/lexical/ui/icons/Block/index.d.ts.map +1 -1
  676. package/dist/lexical/ui/icons/Block/index.js +34 -37
  677. package/dist/lexical/ui/icons/Block/index.js.map +1 -1
  678. package/dist/lexical/ui/icons/Blockquote/index.d.ts.map +1 -1
  679. package/dist/lexical/ui/icons/Blockquote/index.js +16 -15
  680. package/dist/lexical/ui/icons/Blockquote/index.js.map +1 -1
  681. package/dist/lexical/ui/icons/Bold/index.d.ts.map +1 -1
  682. package/dist/lexical/ui/icons/Bold/index.js +16 -15
  683. package/dist/lexical/ui/icons/Bold/index.js.map +1 -1
  684. package/dist/lexical/ui/icons/Caret/index.svg +2 -2
  685. package/dist/lexical/ui/icons/Checklist/index.d.ts.map +1 -1
  686. package/dist/lexical/ui/icons/Checklist/index.js +24 -26
  687. package/dist/lexical/ui/icons/Checklist/index.js.map +1 -1
  688. package/dist/lexical/ui/icons/Code/index.d.ts.map +1 -1
  689. package/dist/lexical/ui/icons/Code/index.js +19 -21
  690. package/dist/lexical/ui/icons/Code/index.js.map +1 -1
  691. package/dist/lexical/ui/icons/CodeBlock/index.d.ts.map +1 -1
  692. package/dist/lexical/ui/icons/CodeBlock/index.js +19 -21
  693. package/dist/lexical/ui/icons/CodeBlock/index.js.map +1 -1
  694. package/dist/lexical/ui/icons/H1/index.d.ts.map +1 -1
  695. package/dist/lexical/ui/icons/H1/index.js +16 -15
  696. package/dist/lexical/ui/icons/H1/index.js.map +1 -1
  697. package/dist/lexical/ui/icons/H2/index.d.ts.map +1 -1
  698. package/dist/lexical/ui/icons/H2/index.js +16 -15
  699. package/dist/lexical/ui/icons/H2/index.js.map +1 -1
  700. package/dist/lexical/ui/icons/H3/index.d.ts.map +1 -1
  701. package/dist/lexical/ui/icons/H3/index.js +16 -15
  702. package/dist/lexical/ui/icons/H3/index.js.map +1 -1
  703. package/dist/lexical/ui/icons/H4/index.d.ts.map +1 -1
  704. package/dist/lexical/ui/icons/H4/index.js +16 -15
  705. package/dist/lexical/ui/icons/H4/index.js.map +1 -1
  706. package/dist/lexical/ui/icons/H5/index.d.ts.map +1 -1
  707. package/dist/lexical/ui/icons/H5/index.js +16 -15
  708. package/dist/lexical/ui/icons/H5/index.js.map +1 -1
  709. package/dist/lexical/ui/icons/H6/index.d.ts.map +1 -1
  710. package/dist/lexical/ui/icons/H6/index.js +16 -15
  711. package/dist/lexical/ui/icons/H6/index.js.map +1 -1
  712. package/dist/lexical/ui/icons/HorizontalRule/index.d.ts.map +1 -1
  713. package/dist/lexical/ui/icons/HorizontalRule/index.js +19 -18
  714. package/dist/lexical/ui/icons/HorizontalRule/index.js.map +1 -1
  715. package/dist/lexical/ui/icons/IndentDecrease/index.d.ts.map +1 -1
  716. package/dist/lexical/ui/icons/IndentDecrease/index.js +28 -32
  717. package/dist/lexical/ui/icons/IndentDecrease/index.js.map +1 -1
  718. package/dist/lexical/ui/icons/IndentIncrease/index.d.ts.map +1 -1
  719. package/dist/lexical/ui/icons/IndentIncrease/index.js +28 -32
  720. package/dist/lexical/ui/icons/IndentIncrease/index.js.map +1 -1
  721. package/dist/lexical/ui/icons/InlineBlocks/index.d.ts.map +1 -1
  722. package/dist/lexical/ui/icons/InlineBlocks/index.js +18 -17
  723. package/dist/lexical/ui/icons/InlineBlocks/index.js.map +1 -1
  724. package/dist/lexical/ui/icons/Italic/index.d.ts.map +1 -1
  725. package/dist/lexical/ui/icons/Italic/index.js +16 -15
  726. package/dist/lexical/ui/icons/Italic/index.js.map +1 -1
  727. package/dist/lexical/ui/icons/Link/index.d.ts.map +1 -1
  728. package/dist/lexical/ui/icons/Link/index.js +17 -16
  729. package/dist/lexical/ui/icons/Link/index.js.map +1 -1
  730. package/dist/lexical/ui/icons/Meatballs/index.d.ts.map +1 -1
  731. package/dist/lexical/ui/icons/Meatballs/index.js +19 -22
  732. package/dist/lexical/ui/icons/Meatballs/index.js.map +1 -1
  733. package/dist/lexical/ui/icons/OrderedList/index.d.ts.map +1 -1
  734. package/dist/lexical/ui/icons/OrderedList/index.js +31 -36
  735. package/dist/lexical/ui/icons/OrderedList/index.js.map +1 -1
  736. package/dist/lexical/ui/icons/Relationship/index.d.ts.map +1 -1
  737. package/dist/lexical/ui/icons/Relationship/index.js +31 -33
  738. package/dist/lexical/ui/icons/Relationship/index.js.map +1 -1
  739. package/dist/lexical/ui/icons/Strikethrough/index.d.ts.map +1 -1
  740. package/dist/lexical/ui/icons/Strikethrough/index.js +19 -21
  741. package/dist/lexical/ui/icons/Strikethrough/index.js.map +1 -1
  742. package/dist/lexical/ui/icons/Subscript/index.d.ts.map +1 -1
  743. package/dist/lexical/ui/icons/Subscript/index.js +16 -15
  744. package/dist/lexical/ui/icons/Subscript/index.js.map +1 -1
  745. package/dist/lexical/ui/icons/Superscript/index.d.ts.map +1 -1
  746. package/dist/lexical/ui/icons/Superscript/index.js +16 -15
  747. package/dist/lexical/ui/icons/Superscript/index.js.map +1 -1
  748. package/dist/lexical/ui/icons/Table/index.d.ts.map +1 -1
  749. package/dist/lexical/ui/icons/Table/index.js +17 -16
  750. package/dist/lexical/ui/icons/Table/index.js.map +1 -1
  751. package/dist/lexical/ui/icons/Text/index.d.ts.map +1 -1
  752. package/dist/lexical/ui/icons/Text/index.js +16 -15
  753. package/dist/lexical/ui/icons/Text/index.js.map +1 -1
  754. package/dist/lexical/ui/icons/Underline/index.d.ts.map +1 -1
  755. package/dist/lexical/ui/icons/Underline/index.js +19 -21
  756. package/dist/lexical/ui/icons/Underline/index.js.map +1 -1
  757. package/dist/lexical/ui/icons/UnorderedList/index.d.ts.map +1 -1
  758. package/dist/lexical/ui/icons/UnorderedList/index.js +46 -52
  759. package/dist/lexical/ui/icons/UnorderedList/index.js.map +1 -1
  760. package/dist/lexical/ui/icons/Upload/index.d.ts.map +1 -1
  761. package/dist/lexical/ui/icons/Upload/index.js +28 -31
  762. package/dist/lexical/ui/icons/Upload/index.js.map +1 -1
  763. package/dist/lexical/utils/canUseDOM.d.ts.map +1 -1
  764. package/dist/lexical/utils/canUseDOM.js +2 -1
  765. package/dist/lexical/utils/canUseDOM.js.map +1 -1
  766. package/dist/lexical/utils/environment.d.ts.map +1 -1
  767. package/dist/lexical/utils/environment.js +2 -1
  768. package/dist/lexical/utils/environment.js.map +1 -1
  769. package/dist/lexical/utils/getDOMRangeRect.d.ts.map +1 -1
  770. package/dist/lexical/utils/getDOMRangeRect.js +13 -12
  771. package/dist/lexical/utils/getDOMRangeRect.js.map +1 -1
  772. package/dist/lexical/utils/getSelectedNode.d.ts.map +1 -1
  773. package/dist/lexical/utils/getSelectedNode.js +18 -13
  774. package/dist/lexical/utils/getSelectedNode.js.map +1 -1
  775. package/dist/lexical/utils/guard.d.ts.map +1 -1
  776. package/dist/lexical/utils/guard.js +3 -2
  777. package/dist/lexical/utils/guard.js.map +1 -1
  778. package/dist/lexical/utils/joinClasses.d.ts.map +1 -1
  779. package/dist/lexical/utils/joinClasses.js +3 -2
  780. package/dist/lexical/utils/joinClasses.js.map +1 -1
  781. package/dist/lexical/utils/markdown/createBlockNode.js +9 -10
  782. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  783. package/dist/lexical/utils/nodeFormat.d.ts +2 -2
  784. package/dist/lexical/utils/nodeFormat.d.ts.map +1 -1
  785. package/dist/lexical/utils/nodeFormat.js +58 -59
  786. package/dist/lexical/utils/nodeFormat.js.map +1 -1
  787. package/dist/lexical/utils/point.d.ts.map +1 -1
  788. package/dist/lexical/utils/point.js +40 -32
  789. package/dist/lexical/utils/point.js.map +1 -1
  790. package/dist/lexical/utils/rect.d.ts.map +1 -1
  791. package/dist/lexical/utils/rect.js +167 -134
  792. package/dist/lexical/utils/rect.js.map +1 -1
  793. package/dist/lexical/utils/setFloatingElemPosition.d.ts.map +1 -1
  794. package/dist/lexical/utils/setFloatingElemPosition.js +57 -46
  795. package/dist/lexical/utils/setFloatingElemPosition.js.map +1 -1
  796. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.d.ts.map +1 -1
  797. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js +23 -22
  798. package/dist/lexical/utils/setFloatingElemPositionForLinkEditor.js.map +1 -1
  799. package/dist/lexical/utils/swipe.d.ts.map +1 -1
  800. package/dist/lexical/utils/swipe.js +82 -83
  801. package/dist/lexical/utils/swipe.js.map +1 -1
  802. package/dist/lexical/utils/url.d.ts +5 -0
  803. package/dist/lexical/utils/url.d.ts.map +1 -1
  804. package/dist/lexical/utils/url.js +42 -21
  805. package/dist/lexical/utils/url.js.map +1 -1
  806. package/dist/nodeTypes.js +1 -2
  807. package/dist/nodeTypes.js.map +1 -1
  808. package/dist/populateGraphQL/defaultValue.js +24 -29
  809. package/dist/populateGraphQL/defaultValue.js.map +1 -1
  810. package/dist/populateGraphQL/populate.js +35 -25
  811. package/dist/populateGraphQL/populate.js.map +1 -1
  812. package/dist/populateGraphQL/populateLexicalPopulationPromises.js +47 -32
  813. package/dist/populateGraphQL/populateLexicalPopulationPromises.js.map +1 -1
  814. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js +39 -25
  815. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js.map +1 -1
  816. package/dist/types.d.ts +7 -7
  817. package/dist/types.d.ts.map +1 -1
  818. package/dist/types.js +1 -2
  819. package/dist/types.js.map +1 -1
  820. package/dist/utilities/createClientFeature.d.ts +3 -5
  821. package/dist/utilities/createClientFeature.d.ts.map +1 -1
  822. package/dist/utilities/createClientFeature.js +38 -27
  823. package/dist/utilities/createClientFeature.js.map +1 -1
  824. package/dist/utilities/createServerFeature.d.ts +1 -0
  825. package/dist/utilities/createServerFeature.d.ts.map +1 -1
  826. package/dist/utilities/createServerFeature.js +48 -31
  827. package/dist/utilities/createServerFeature.js.map +1 -1
  828. package/dist/utilities/fieldsDrawer/Drawer.js +28 -17
  829. package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
  830. package/dist/utilities/fieldsDrawer/DrawerContent.d.ts.map +1 -1
  831. package/dist/utilities/fieldsDrawer/DrawerContent.js +154 -78
  832. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  833. package/dist/utilities/forEachNodeRecursively.js +24 -19
  834. package/dist/utilities/forEachNodeRecursively.js.map +1 -1
  835. package/dist/utilities/generateComponentMap.d.ts.map +1 -1
  836. package/dist/utilities/generateComponentMap.js +87 -84
  837. package/dist/utilities/generateComponentMap.js.map +1 -1
  838. package/dist/utilities/generateImportMap.js +53 -47
  839. package/dist/utilities/generateImportMap.js.map +1 -1
  840. package/dist/utilities/generateSchemaMap.js +35 -30
  841. package/dist/utilities/generateSchemaMap.js.map +1 -1
  842. package/dist/utilities/migrateSlateToLexical/index.d.ts.map +1 -1
  843. package/dist/utilities/migrateSlateToLexical/index.js +125 -81
  844. package/dist/utilities/migrateSlateToLexical/index.js.map +1 -1
  845. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js +73 -66
  846. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js.map +1 -1
  847. package/dist/utilities/recurseNodeTree.js +25 -22
  848. package/dist/utilities/recurseNodeTree.js.map +1 -1
  849. package/dist/utilities/upgradeLexicalData/index.js +99 -86
  850. package/dist/utilities/upgradeLexicalData/index.js.map +1 -1
  851. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js +71 -66
  852. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
  853. package/dist/utilities/useLexicalFeature.js +9 -8
  854. package/dist/utilities/useLexicalFeature.js.map +1 -1
  855. package/dist/validate/index.d.ts.map +1 -1
  856. package/dist/validate/index.js +45 -24
  857. package/dist/validate/index.js.map +1 -1
  858. package/dist/validate/validateNodes.d.ts +2 -2
  859. package/dist/validate/validateNodes.d.ts.map +1 -1
  860. package/dist/validate/validateNodes.js +31 -28
  861. package/dist/validate/validateNodes.js.map +1 -1
  862. package/package.json +33 -21
  863. package/dist/exports/client/Component-7HS6FEJS.js +0 -2
  864. package/dist/exports/client/Component-7HS6FEJS.js.map +0 -7
  865. package/dist/exports/client/Component-LAKSCIDX.js +0 -2
  866. package/dist/exports/client/Component-LAKSCIDX.js.map +0 -7
  867. package/dist/exports/client/Field-QK4IB5HD.js +0 -2
  868. package/dist/exports/client/Field-QK4IB5HD.js.map +0 -7
  869. package/dist/exports/client/RelationshipComponent-GYUTPDNG.js +0 -2
  870. package/dist/exports/client/RelationshipComponent-GYUTPDNG.js.map +0 -7
  871. package/dist/exports/client/chunk-4EX7W4UX.js +0 -2
  872. package/dist/exports/client/chunk-4EX7W4UX.js.map +0 -7
  873. package/dist/exports/client/chunk-62LVB5C6.js +0 -2
  874. package/dist/exports/client/chunk-62LVB5C6.js.map +0 -7
  875. package/dist/exports/client/chunk-EBB2CEB6.js +0 -2
  876. package/dist/exports/client/chunk-EBB2CEB6.js.map +0 -7
  877. package/dist/exports/client/chunk-LTR7V74A.js +0 -2
  878. package/dist/exports/client/chunk-LTR7V74A.js.map +0 -7
  879. package/dist/exports/client/chunk-SQHN3N6E.js +0 -2
  880. package/dist/exports/client/chunk-SQHN3N6E.js.map +0 -7
  881. package/dist/exports/client/chunk-VMCQSR3T.js +0 -3
  882. package/dist/exports/client/chunk-VMCQSR3T.js.map +0 -7
  883. package/dist/exports/client/component-6C5JERGA.js +0 -2
  884. package/dist/exports/client/component-6C5JERGA.js.map +0 -7
  885. package/dist/exports/client/component-DKFKZBZR.js +0 -2
  886. package/dist/exports/client/component-DKFKZBZR.js.map +0 -7
  887. package/dist/exports/client/component-UQ2BKD5X.js +0 -2
  888. package/dist/exports/client/component-UQ2BKD5X.js.map +0 -7
  889. package/dist/exports/client/componentInline-C2XIK5VZ.js +0 -2
  890. package/dist/exports/client/componentInline-C2XIK5VZ.js.map +0 -7
  891. package/dist/features/createClientComponent.d.ts +0 -7
  892. package/dist/features/createClientComponent.d.ts.map +0 -1
  893. package/dist/features/createClientComponent.js +0 -12
  894. package/dist/features/createClientComponent.js.map +0 -1
  895. package/dist/features/createFeaturePropComponent.d.ts +0 -6
  896. package/dist/features/createFeaturePropComponent.d.ts.map +0 -1
  897. package/dist/features/createFeaturePropComponent.js +0 -18
  898. package/dist/features/createFeaturePropComponent.js.map +0 -1
  899. package/dist/features/experimental_table/plugins/TableHoverActionsPlugin/index.d.ts +0 -12
  900. package/dist/features/experimental_table/plugins/TableHoverActionsPlugin/index.d.ts.map +0 -1
  901. package/dist/features/experimental_table/plugins/TableHoverActionsPlugin/index.js +0 -181
  902. package/dist/features/experimental_table/plugins/TableHoverActionsPlugin/index.js.map +0 -1
@@ -1,8 +1,9 @@
1
1
  'use client';
2
+
2
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
4
  import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
4
5
  import { useLexicalEditable } from '@lexical/react/useLexicalEditable';
5
- import { $deleteTableColumn__EXPERIMENTAL, $deleteTableRow__EXPERIMENTAL, $getNodeTriplet, $getTableCellNodeFromLexicalNode, $getTableColumnIndexFromTableCellNode, $getTableNodeFromLexicalNodeOrThrow, $getTableRowIndexFromTableCellNode, $insertTableColumn__EXPERIMENTAL, $insertTableRow__EXPERIMENTAL, $isTableCellNode, $isTableRowNode, $isTableSelection, $unmergeCell, TableCellHeaderStates, TableCellNode, getTableObserverFromTableElement } from '@lexical/table';
6
+ import { $deleteTableColumn__EXPERIMENTAL, $deleteTableRow__EXPERIMENTAL, $getNodeTriplet, $getTableCellNodeFromLexicalNode, $getTableColumnIndexFromTableCellNode, $getTableNodeFromLexicalNodeOrThrow, $getTableRowIndexFromTableCellNode, $insertTableColumn__EXPERIMENTAL, $insertTableRow__EXPERIMENTAL, $isTableCellNode, $isTableRowNode, $isTableSelection, $unmergeCell, getTableObserverFromTableElement, TableCellHeaderStates, TableCellNode } from '@lexical/table';
6
7
  import { useScrollInfo } from '@payloadcms/ui';
7
8
  import { $createParagraphNode, $getRoot, $getSelection, $isElementNode, $isParagraphNode, $isRangeSelection, $isTextNode } from 'lexical';
8
9
  import * as React from 'react';
@@ -10,596 +11,513 @@ import { useCallback, useEffect, useRef, useState } from 'react';
10
11
  import { createPortal } from 'react-dom';
11
12
  import { MeatballsIcon } from '../../../../../lexical/ui/icons/Meatballs/index.js';
12
13
  function computeSelectionCount(selection) {
13
- const selectionShape = selection.getShape();
14
- return {
15
- columns: selectionShape.toX - selectionShape.fromX + 1,
16
- rows: selectionShape.toY - selectionShape.fromY + 1
17
- };
14
+ const selectionShape = selection.getShape();
15
+ return {
16
+ columns: selectionShape.toX - selectionShape.fromX + 1,
17
+ rows: selectionShape.toY - selectionShape.fromY + 1
18
+ };
18
19
  }
19
20
  // This is important when merging cells as there is no good way to re-merge weird shapes (a result
20
21
  // of selecting merged cells and non-merged)
21
22
  function isTableSelectionRectangular(selection) {
22
- const nodes = selection.getNodes();
23
- const currentRows = [];
24
- let currentRow = null;
25
- let expectedColumns = null;
26
- let currentColumns = 0;
27
- for(let i = 0; i < nodes.length; i++){
28
- const node = nodes[i];
29
- if ($isTableCellNode(node)) {
30
- const row = node.getParentOrThrow();
31
- if ($isTableRowNode(row)) {
32
- throw new Error('Expected CellNode to have a RowNode parent');
33
- }
34
- if (currentRow !== row) {
35
- if (expectedColumns !== null && currentColumns !== expectedColumns) {
36
- return false;
37
- }
38
- if (currentRow !== null) {
39
- expectedColumns = currentColumns;
40
- }
41
- currentRow = row;
42
- currentColumns = 0;
43
- }
44
- const colSpan = node.__colSpan;
45
- for(let j = 0; j < colSpan; j++){
46
- if (currentRows[currentColumns + j] === undefined) {
47
- currentRows[currentColumns + j] = 0;
48
- }
49
- currentRows[currentColumns + j] += node.__rowSpan;
50
- }
51
- currentColumns += colSpan;
23
+ const nodes = selection.getNodes();
24
+ const currentRows = [];
25
+ let currentRow = null;
26
+ let expectedColumns = null;
27
+ let currentColumns = 0;
28
+ for (let i = 0; i < nodes.length; i++) {
29
+ const node = nodes[i];
30
+ if ($isTableCellNode(node)) {
31
+ const row = node.getParentOrThrow();
32
+ if (!$isTableRowNode(row)) {
33
+ throw new Error('Expected CellNode to have a RowNode parent');
34
+ }
35
+ if (currentRow !== row) {
36
+ if (expectedColumns !== null && currentColumns !== expectedColumns) {
37
+ return false;
52
38
  }
39
+ if (currentRow !== null) {
40
+ expectedColumns = currentColumns;
41
+ }
42
+ currentRow = row;
43
+ currentColumns = 0;
44
+ }
45
+ const colSpan = node.__colSpan;
46
+ for (let j = 0; j < colSpan; j++) {
47
+ if (currentRows[currentColumns + j] === undefined) {
48
+ currentRows[currentColumns + j] = 0;
49
+ }
50
+ currentRows[currentColumns + j] += node.__rowSpan;
51
+ }
52
+ currentColumns += colSpan;
53
53
  }
54
- return (expectedColumns === null || currentColumns === expectedColumns) && currentRows.every((v)=>v === currentRows[0]);
54
+ }
55
+ return (expectedColumns === null || currentColumns === expectedColumns) && currentRows.every(v => v === currentRows[0]);
55
56
  }
56
57
  function $canUnmerge() {
57
- const selection = $getSelection();
58
- if ($isRangeSelection(selection) && !selection.isCollapsed() || $isTableSelection(selection) && !selection.anchor.is(selection.focus) || !$isRangeSelection(selection) && !$isTableSelection(selection)) {
59
- return false;
60
- }
61
- const [cell] = $getNodeTriplet(selection.anchor);
62
- return cell.__colSpan > 1 || cell.__rowSpan > 1;
58
+ const selection = $getSelection();
59
+ if ($isRangeSelection(selection) && !selection.isCollapsed() || $isTableSelection(selection) && !selection.anchor.is(selection.focus) || !$isRangeSelection(selection) && !$isTableSelection(selection)) {
60
+ return false;
61
+ }
62
+ const [cell] = $getNodeTriplet(selection.anchor);
63
+ return cell.__colSpan > 1 || cell.__rowSpan > 1;
63
64
  }
64
65
  function $cellContainsEmptyParagraph(cell) {
65
- if (cell.getChildrenSize() !== 1) {
66
- return false;
67
- }
68
- const firstChild = cell.getFirstChildOrThrow();
69
- if (!$isParagraphNode(firstChild) || !firstChild.isEmpty()) {
70
- return false;
71
- }
72
- return true;
66
+ if (cell.getChildrenSize() !== 1) {
67
+ return false;
68
+ }
69
+ const firstChild = cell.getFirstChildOrThrow();
70
+ if (!$isParagraphNode(firstChild) || !firstChild.isEmpty()) {
71
+ return false;
72
+ }
73
+ return true;
73
74
  }
74
75
  function $selectLastDescendant(node) {
75
- const lastDescendant = node.getLastDescendant();
76
- if ($isTextNode(lastDescendant)) {
77
- lastDescendant.select();
78
- } else if ($isElementNode(lastDescendant)) {
79
- lastDescendant.selectEnd();
80
- } else if (lastDescendant !== null) {
81
- lastDescendant.selectNext();
82
- }
76
+ const lastDescendant = node.getLastDescendant();
77
+ if ($isTextNode(lastDescendant)) {
78
+ lastDescendant.select();
79
+ } else if ($isElementNode(lastDescendant)) {
80
+ lastDescendant.selectEnd();
81
+ } else if (lastDescendant !== null) {
82
+ lastDescendant.selectNext();
83
+ }
83
84
  }
84
- function TableActionMenu({ cellMerge, contextRef, onClose, setIsMenuOpen, tableCellNode: _tableCellNode }) {
85
- const [editor] = useLexicalComposerContext();
86
- const dropDownRef = useRef(null);
87
- const [tableCellNode, updateTableCellNode] = useState(_tableCellNode);
88
- const [selectionCounts, updateSelectionCounts] = useState({
89
- columns: 1,
90
- rows: 1
91
- });
92
- const [canMergeCells, setCanMergeCells] = useState(false);
93
- const [canUnmergeCell, setCanUnmergeCell] = useState(false);
94
- const { y } = useScrollInfo();
95
- useEffect(()=>{
96
- return editor.registerMutationListener(TableCellNode, (nodeMutations)=>{
97
- const nodeUpdated = nodeMutations.get(tableCellNode.getKey()) === 'updated';
98
- if (nodeUpdated) {
99
- editor.getEditorState().read(()=>{
100
- updateTableCellNode(tableCellNode.getLatest());
101
- });
102
- }
103
- }, {
104
- skipInitialization: true
105
- });
106
- }, [
107
- editor,
108
- tableCellNode
109
- ]);
110
- useEffect(()=>{
111
- editor.getEditorState().read(()=>{
112
- const selection = $getSelection();
113
- // Merge cells
114
- if ($isTableSelection(selection)) {
115
- const currentSelectionCounts = computeSelectionCount(selection);
116
- updateSelectionCounts(computeSelectionCount(selection));
117
- setCanMergeCells(isTableSelectionRectangular(selection) && (currentSelectionCounts.columns > 1 || currentSelectionCounts.rows > 1));
118
- }
119
- // Unmerge cell
120
- setCanUnmergeCell($canUnmerge());
85
+ function TableActionMenu({
86
+ cellMerge,
87
+ contextRef,
88
+ onClose,
89
+ setIsMenuOpen,
90
+ tableCellNode: _tableCellNode
91
+ }) {
92
+ const [editor] = useLexicalComposerContext();
93
+ const dropDownRef = useRef(null);
94
+ const [tableCellNode, updateTableCellNode] = useState(_tableCellNode);
95
+ const [selectionCounts, updateSelectionCounts] = useState({
96
+ columns: 1,
97
+ rows: 1
98
+ });
99
+ const [canMergeCells, setCanMergeCells] = useState(false);
100
+ const [canUnmergeCell, setCanUnmergeCell] = useState(false);
101
+ const {
102
+ y
103
+ } = useScrollInfo();
104
+ useEffect(() => {
105
+ return editor.registerMutationListener(TableCellNode, nodeMutations => {
106
+ const nodeUpdated = nodeMutations.get(tableCellNode.getKey()) === 'updated';
107
+ if (nodeUpdated) {
108
+ editor.getEditorState().read(() => {
109
+ updateTableCellNode(tableCellNode.getLatest());
121
110
  });
122
- }, [
123
- editor
124
- ]);
125
- useEffect(()=>{
126
- const menuButtonElement = contextRef.current;
127
- const dropDownElement = dropDownRef.current;
128
- const rootElement = editor.getRootElement();
129
- if (menuButtonElement != null && dropDownElement != null && rootElement != null) {
130
- const rootEleRect = rootElement.getBoundingClientRect();
131
- const menuButtonRect = menuButtonElement.getBoundingClientRect();
132
- dropDownElement.style.opacity = '1';
133
- const dropDownElementRect = dropDownElement.getBoundingClientRect();
134
- const margin = 5;
135
- let leftPosition = menuButtonRect.right + margin;
136
- if (leftPosition + dropDownElementRect.width > window.innerWidth || leftPosition + dropDownElementRect.width > rootEleRect.right) {
137
- const position = menuButtonRect.left - dropDownElementRect.width - margin;
138
- leftPosition = (position < 0 ? margin : position) + window.pageXOffset;
139
- }
140
- dropDownElement.style.left = `${leftPosition + window.pageXOffset}px`;
141
- let topPosition = menuButtonRect.top;
142
- if (topPosition + dropDownElementRect.height > window.innerHeight) {
143
- const position = menuButtonRect.bottom - dropDownElementRect.height;
144
- topPosition = (position < 0 ? margin : position) + window.pageYOffset;
145
- }
146
- dropDownElement.style.top = `${topPosition}px`;
111
+ }
112
+ }, {
113
+ skipInitialization: true
114
+ });
115
+ }, [editor, tableCellNode]);
116
+ useEffect(() => {
117
+ editor.getEditorState().read(() => {
118
+ const selection = $getSelection();
119
+ // Merge cells
120
+ if ($isTableSelection(selection)) {
121
+ const currentSelectionCounts = computeSelectionCount(selection);
122
+ updateSelectionCounts(computeSelectionCount(selection));
123
+ setCanMergeCells(isTableSelectionRectangular(selection) && (currentSelectionCounts.columns > 1 || currentSelectionCounts.rows > 1));
124
+ }
125
+ // Unmerge cell
126
+ setCanUnmergeCell($canUnmerge());
127
+ });
128
+ }, [editor]);
129
+ useEffect(() => {
130
+ const menuButtonElement = contextRef.current;
131
+ const dropDownElement = dropDownRef.current;
132
+ const rootElement = editor.getRootElement();
133
+ if (menuButtonElement != null && dropDownElement != null && rootElement != null) {
134
+ const rootEleRect = rootElement.getBoundingClientRect();
135
+ const menuButtonRect = menuButtonElement.getBoundingClientRect();
136
+ dropDownElement.style.opacity = '1';
137
+ const dropDownElementRect = dropDownElement.getBoundingClientRect();
138
+ const margin = 5;
139
+ let leftPosition = menuButtonRect.right + margin;
140
+ if (leftPosition + dropDownElementRect.width > window.innerWidth || leftPosition + dropDownElementRect.width > rootEleRect.right) {
141
+ const position = menuButtonRect.left - dropDownElementRect.width - margin;
142
+ leftPosition = (position < 0 ? margin : position) + window.pageXOffset;
143
+ }
144
+ dropDownElement.style.left = `${leftPosition + window.pageXOffset}px`;
145
+ let topPosition = menuButtonRect.top;
146
+ if (topPosition + dropDownElementRect.height > window.innerHeight) {
147
+ const position_0 = menuButtonRect.bottom - dropDownElementRect.height;
148
+ topPosition = (position_0 < 0 ? margin : position_0) + window.pageYOffset;
149
+ }
150
+ dropDownElement.style.top = `${topPosition}px`;
151
+ }
152
+ }, [contextRef, dropDownRef, editor, y]);
153
+ useEffect(() => {
154
+ function handleClickOutside(event) {
155
+ if (dropDownRef.current != null && contextRef.current != null && !dropDownRef.current.contains(event.target) && !contextRef.current.contains(event.target)) {
156
+ setIsMenuOpen(false);
157
+ }
158
+ }
159
+ window.addEventListener('click', handleClickOutside);
160
+ return () => window.removeEventListener('click', handleClickOutside);
161
+ }, [setIsMenuOpen, contextRef]);
162
+ const clearTableSelection = useCallback(() => {
163
+ editor.update(() => {
164
+ if (tableCellNode.isAttached()) {
165
+ const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
166
+ const tableElement = editor.getElementByKey(tableNode.getKey());
167
+ if (!tableElement) {
168
+ throw new Error('Expected to find tableElement in DOM');
147
169
  }
148
- }, [
149
- contextRef,
150
- dropDownRef,
151
- editor,
152
- y
153
- ]);
154
- useEffect(()=>{
155
- function handleClickOutside(event) {
156
- if (dropDownRef.current != null && contextRef.current != null && !dropDownRef.current.contains(event.target) && !contextRef.current.contains(event.target)) {
157
- setIsMenuOpen(false);
158
- }
170
+ const tableSelection = getTableObserverFromTableElement(tableElement);
171
+ if (tableSelection !== null) {
172
+ tableSelection.clearHighlight();
159
173
  }
160
- window.addEventListener('click', handleClickOutside);
161
- return ()=>window.removeEventListener('click', handleClickOutside);
162
- }, [
163
- setIsMenuOpen,
164
- contextRef
165
- ]);
166
- const clearTableSelection = useCallback(()=>{
167
- editor.update(()=>{
168
- if (tableCellNode.isAttached()) {
169
- const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
170
- const tableElement = editor.getElementByKey(tableNode.getKey());
171
- if (!tableElement) {
172
- throw new Error('Expected to find tableElement in DOM');
173
- }
174
- const tableSelection = getTableObserverFromTableElement(tableElement);
175
- if (tableSelection !== null) {
176
- tableSelection.clearHighlight();
177
- }
178
- tableNode.markDirty();
179
- updateTableCellNode(tableCellNode.getLatest());
180
- }
181
- const rootNode = $getRoot();
182
- rootNode.selectStart();
183
- });
184
- }, [
185
- editor,
186
- tableCellNode
187
- ]);
188
- const mergeTableCellsAtSelection = ()=>{
189
- editor.update(()=>{
190
- const selection = $getSelection();
191
- if ($isTableSelection(selection)) {
192
- const { columns, rows } = computeSelectionCount(selection);
193
- const nodes = selection.getNodes();
194
- let firstCell = null;
195
- for(let i = 0; i < nodes.length; i++){
196
- const node = nodes[i];
197
- if ($isTableCellNode(node)) {
198
- if (firstCell === null) {
199
- node.setColSpan(columns).setRowSpan(rows);
200
- firstCell = node;
201
- const isEmpty = $cellContainsEmptyParagraph(node);
202
- let firstChild;
203
- if (isEmpty && $isParagraphNode(firstChild = node.getFirstChild())) {
204
- firstChild.remove();
205
- }
206
- } else if ($isTableCellNode(firstCell)) {
207
- const isEmpty = $cellContainsEmptyParagraph(node);
208
- if (!isEmpty) {
209
- firstCell.append(...node.getChildren());
210
- }
211
- node.remove();
212
- }
213
- }
214
- }
215
- if (firstCell !== null) {
216
- if (firstCell.getChildrenSize() === 0) {
217
- firstCell.append($createParagraphNode());
218
- }
219
- $selectLastDescendant(firstCell);
220
- }
221
- onClose();
222
- }
223
- });
224
- };
225
- const unmergeTableCellsAtSelection = ()=>{
226
- editor.update(()=>{
227
- $unmergeCell();
228
- });
229
- };
230
- const insertTableRowAtSelection = useCallback((shouldInsertAfter)=>{
231
- editor.update(()=>{
232
- $insertTableRow__EXPERIMENTAL(shouldInsertAfter);
233
- onClose();
234
- });
235
- }, [
236
- editor,
237
- onClose
238
- ]);
239
- const insertTableColumnAtSelection = useCallback((shouldInsertAfter)=>{
240
- editor.update(()=>{
241
- for(let i = 0; i < selectionCounts.columns; i++){
242
- $insertTableColumn__EXPERIMENTAL(shouldInsertAfter);
243
- }
244
- onClose();
245
- });
246
- }, [
247
- editor,
248
- onClose,
249
- selectionCounts.columns
250
- ]);
251
- const deleteTableRowAtSelection = useCallback(()=>{
252
- editor.update(()=>{
253
- $deleteTableRow__EXPERIMENTAL();
254
- onClose();
255
- });
256
- }, [
257
- editor,
258
- onClose
259
- ]);
260
- const deleteTableAtSelection = useCallback(()=>{
261
- editor.update(()=>{
262
- const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
263
- tableNode.remove();
264
- clearTableSelection();
265
- onClose();
266
- });
267
- }, [
268
- editor,
269
- tableCellNode,
270
- clearTableSelection,
271
- onClose
272
- ]);
273
- const deleteTableColumnAtSelection = useCallback(()=>{
274
- editor.update(()=>{
275
- $deleteTableColumn__EXPERIMENTAL();
276
- onClose();
277
- });
278
- }, [
279
- editor,
280
- onClose
281
- ]);
282
- const toggleTableRowIsHeader = useCallback(()=>{
283
- editor.update(()=>{
284
- const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
285
- const tableRowIndex = $getTableRowIndexFromTableCellNode(tableCellNode);
286
- const tableRows = tableNode.getChildren();
287
- if (tableRowIndex >= tableRows.length || tableRowIndex < 0) {
288
- throw new Error('Expected table cell to be inside of table row.');
289
- }
290
- const tableRow = tableRows[tableRowIndex];
291
- if (!$isTableRowNode(tableRow)) {
292
- throw new Error('Expected table row');
293
- }
294
- tableRow.getChildren().forEach((tableCell)=>{
295
- if (!$isTableCellNode(tableCell)) {
296
- throw new Error('Expected table cell');
297
- }
298
- tableCell.toggleHeaderStyle(TableCellHeaderStates.ROW);
299
- });
300
- clearTableSelection();
301
- onClose();
302
- });
303
- }, [
304
- editor,
305
- tableCellNode,
306
- clearTableSelection,
307
- onClose
308
- ]);
309
- const toggleTableColumnIsHeader = useCallback(()=>{
310
- editor.update(()=>{
311
- const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
312
- const tableColumnIndex = $getTableColumnIndexFromTableCellNode(tableCellNode);
313
- const tableRows = tableNode.getChildren();
314
- const maxRowsLength = Math.max(...tableRows.map((row)=>row.getChildren().length));
315
- if (tableColumnIndex >= maxRowsLength || tableColumnIndex < 0) {
316
- throw new Error('Expected table cell to be inside of table row.');
317
- }
318
- for(let r = 0; r < tableRows.length; r++){
319
- const tableRow = tableRows[r];
320
- if (!$isTableRowNode(tableRow)) {
321
- throw new Error('Expected table row');
322
- }
323
- const tableCells = tableRow.getChildren();
324
- if (tableColumnIndex >= tableCells.length) {
325
- continue;
326
- }
327
- const tableCell = tableCells[tableColumnIndex];
328
- if (!$isTableCellNode(tableCell)) {
329
- throw new Error('Expected table cell');
330
- }
331
- tableCell.toggleHeaderStyle(TableCellHeaderStates.COLUMN);
174
+ tableNode.markDirty();
175
+ updateTableCellNode(tableCellNode.getLatest());
176
+ }
177
+ const rootNode = $getRoot();
178
+ rootNode.selectStart();
179
+ });
180
+ }, [editor, tableCellNode]);
181
+ const mergeTableCellsAtSelection = () => {
182
+ editor.update(() => {
183
+ const selection_0 = $getSelection();
184
+ if ($isTableSelection(selection_0)) {
185
+ const {
186
+ columns,
187
+ rows
188
+ } = computeSelectionCount(selection_0);
189
+ const nodes = selection_0.getNodes();
190
+ let firstCell = null;
191
+ for (let i = 0; i < nodes.length; i++) {
192
+ const node = nodes[i];
193
+ if ($isTableCellNode(node)) {
194
+ if (firstCell === null) {
195
+ node.setColSpan(columns).setRowSpan(rows);
196
+ firstCell = node;
197
+ const isEmpty = $cellContainsEmptyParagraph(node);
198
+ let firstChild;
199
+ if (isEmpty && $isParagraphNode(firstChild = node.getFirstChild())) {
200
+ firstChild.remove();
201
+ }
202
+ } else if ($isTableCellNode(firstCell)) {
203
+ const isEmpty_0 = $cellContainsEmptyParagraph(node);
204
+ if (!isEmpty_0) {
205
+ firstCell.append(...node.getChildren());
206
+ }
207
+ node.remove();
332
208
  }
333
- clearTableSelection();
334
- onClose();
335
- });
336
- }, [
337
- editor,
338
- tableCellNode,
339
- clearTableSelection,
340
- onClose
341
- ]);
342
- let mergeCellButton = null;
343
- if (cellMerge) {
344
- if (canMergeCells) {
345
- mergeCellButton = /*#__PURE__*/ _jsx("button", {
346
- className: "item",
347
- "data-test-id": "table-merge-cells",
348
- onClick: ()=>mergeTableCellsAtSelection(),
349
- type: "button",
350
- children: "Merge cells"
351
- });
352
- } else if (canUnmergeCell) {
353
- mergeCellButton = /*#__PURE__*/ _jsx("button", {
354
- className: "item",
355
- "data-test-id": "table-unmerge-cells",
356
- onClick: ()=>unmergeTableCellsAtSelection(),
357
- type: "button",
358
- children: "Unmerge cells"
359
- });
209
+ }
360
210
  }
361
- }
362
- return /*#__PURE__*/ createPortal(// eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events
363
- /*#__PURE__*/ _jsxs("div", {
364
- className: "table-action-menu-dropdown",
365
- onClick: (e)=>{
366
- e.stopPropagation();
367
- },
368
- ref: dropDownRef,
369
- children: [
370
- mergeCellButton ? /*#__PURE__*/ _jsxs(React.Fragment, {
371
- children: [
372
- mergeCellButton,
373
- /*#__PURE__*/ _jsx("hr", {})
374
- ]
375
- }) : null,
376
- /*#__PURE__*/ _jsx("button", {
377
- className: "item",
378
- "data-test-id": "table-insert-row-above",
379
- onClick: ()=>insertTableRowAtSelection(false),
380
- type: "button",
381
- children: /*#__PURE__*/ _jsxs("span", {
382
- className: "text",
383
- children: [
384
- "Insert ",
385
- selectionCounts.rows === 1 ? 'row' : `${selectionCounts.rows} rows`,
386
- " above"
387
- ]
388
- })
389
- }),
390
- /*#__PURE__*/ _jsx("button", {
391
- className: "item",
392
- "data-test-id": "table-insert-row-below",
393
- onClick: ()=>insertTableRowAtSelection(true),
394
- type: "button",
395
- children: /*#__PURE__*/ _jsxs("span", {
396
- className: "text",
397
- children: [
398
- "Insert ",
399
- selectionCounts.rows === 1 ? 'row' : `${selectionCounts.rows} rows`,
400
- " below"
401
- ]
402
- })
403
- }),
404
- /*#__PURE__*/ _jsx("hr", {}),
405
- /*#__PURE__*/ _jsx("button", {
406
- className: "item",
407
- "data-test-id": "table-insert-column-before",
408
- onClick: ()=>insertTableColumnAtSelection(false),
409
- type: "button",
410
- children: /*#__PURE__*/ _jsxs("span", {
411
- className: "text",
412
- children: [
413
- "Insert ",
414
- selectionCounts.columns === 1 ? 'column' : `${selectionCounts.columns} columns`,
415
- ' ',
416
- "left"
417
- ]
418
- })
419
- }),
420
- /*#__PURE__*/ _jsx("button", {
421
- className: "item",
422
- "data-test-id": "table-insert-column-after",
423
- onClick: ()=>insertTableColumnAtSelection(true),
424
- type: "button",
425
- children: /*#__PURE__*/ _jsxs("span", {
426
- className: "text",
427
- children: [
428
- "Insert ",
429
- selectionCounts.columns === 1 ? 'column' : `${selectionCounts.columns} columns`,
430
- ' ',
431
- "right"
432
- ]
433
- })
434
- }),
435
- /*#__PURE__*/ _jsx("hr", {}),
436
- /*#__PURE__*/ _jsx("button", {
437
- className: "item",
438
- "data-test-id": "table-delete-columns",
439
- onClick: ()=>deleteTableColumnAtSelection(),
440
- type: "button",
441
- children: /*#__PURE__*/ _jsx("span", {
442
- className: "text",
443
- children: "Delete column"
444
- })
445
- }),
446
- /*#__PURE__*/ _jsx("button", {
447
- className: "item",
448
- "data-test-id": "table-delete-rows",
449
- onClick: ()=>deleteTableRowAtSelection(),
450
- type: "button",
451
- children: /*#__PURE__*/ _jsx("span", {
452
- className: "text",
453
- children: "Delete row"
454
- })
455
- }),
456
- /*#__PURE__*/ _jsx("button", {
457
- className: "item",
458
- "data-test-id": "table-delete",
459
- onClick: ()=>deleteTableAtSelection(),
460
- type: "button",
461
- children: /*#__PURE__*/ _jsx("span", {
462
- className: "text",
463
- children: "Delete table"
464
- })
465
- }),
466
- /*#__PURE__*/ _jsx("hr", {}),
467
- /*#__PURE__*/ _jsx("button", {
468
- className: "item",
469
- onClick: ()=>toggleTableRowIsHeader(),
470
- type: "button",
471
- children: /*#__PURE__*/ _jsxs("span", {
472
- className: "text",
473
- children: [
474
- (tableCellNode.__headerState & TableCellHeaderStates.ROW) === TableCellHeaderStates.ROW ? 'Remove' : 'Add',
475
- ' ',
476
- "row header"
477
- ]
478
- })
479
- }),
480
- /*#__PURE__*/ _jsx("button", {
481
- className: "item",
482
- "data-test-id": "table-column-header",
483
- onClick: ()=>toggleTableColumnIsHeader(),
484
- type: "button",
485
- children: /*#__PURE__*/ _jsxs("span", {
486
- className: "text",
487
- children: [
488
- (tableCellNode.__headerState & TableCellHeaderStates.COLUMN) === TableCellHeaderStates.COLUMN ? 'Remove' : 'Add',
489
- ' ',
490
- "column header"
491
- ]
492
- })
493
- })
494
- ]
495
- }), document.body);
496
- }
497
- function TableCellActionMenuContainer({ anchorElem, cellMerge }) {
498
- const [editor] = useLexicalComposerContext();
499
- const menuButtonRef = useRef(null);
500
- const menuRootRef = useRef(null);
501
- const [isMenuOpen, setIsMenuOpen] = useState(false);
502
- const [tableCellNode, setTableMenuCellNode] = useState(null);
503
- const $moveMenu = useCallback(()=>{
504
- const menu = menuButtonRef.current;
505
- const selection = $getSelection();
506
- const nativeSelection = window.getSelection();
507
- const activeElement = document.activeElement;
508
- if (selection == null || menu == null) {
509
- setTableMenuCellNode(null);
510
- return;
211
+ if (firstCell !== null) {
212
+ if (firstCell.getChildrenSize() === 0) {
213
+ firstCell.append($createParagraphNode());
214
+ }
215
+ $selectLastDescendant(firstCell);
511
216
  }
512
- const rootElement = editor.getRootElement();
513
- if ($isRangeSelection(selection) && rootElement !== null && nativeSelection !== null && rootElement.contains(nativeSelection.anchorNode)) {
514
- const tableCellNodeFromSelection = $getTableCellNodeFromLexicalNode(selection.anchor.getNode());
515
- if (tableCellNodeFromSelection == null) {
516
- setTableMenuCellNode(null);
517
- return;
518
- }
519
- const tableCellParentNodeDOM = editor.getElementByKey(tableCellNodeFromSelection.getKey());
520
- if (tableCellParentNodeDOM == null) {
521
- setTableMenuCellNode(null);
522
- return;
523
- }
524
- setTableMenuCellNode(tableCellNodeFromSelection);
525
- } else if (!activeElement) {
526
- setTableMenuCellNode(null);
217
+ onClose();
218
+ }
219
+ });
220
+ };
221
+ const unmergeTableCellsAtSelection = () => {
222
+ editor.update(() => {
223
+ $unmergeCell();
224
+ });
225
+ };
226
+ const insertTableRowAtSelection = useCallback(shouldInsertAfter => {
227
+ editor.update(() => {
228
+ $insertTableRow__EXPERIMENTAL(shouldInsertAfter);
229
+ onClose();
230
+ });
231
+ }, [editor, onClose]);
232
+ const insertTableColumnAtSelection = useCallback(shouldInsertAfter_0 => {
233
+ editor.update(() => {
234
+ for (let i_0 = 0; i_0 < selectionCounts.columns; i_0++) {
235
+ $insertTableColumn__EXPERIMENTAL(shouldInsertAfter_0);
236
+ }
237
+ onClose();
238
+ });
239
+ }, [editor, onClose, selectionCounts.columns]);
240
+ const deleteTableRowAtSelection = useCallback(() => {
241
+ editor.update(() => {
242
+ $deleteTableRow__EXPERIMENTAL();
243
+ onClose();
244
+ });
245
+ }, [editor, onClose]);
246
+ const deleteTableAtSelection = useCallback(() => {
247
+ editor.update(() => {
248
+ const tableNode_0 = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
249
+ tableNode_0.remove();
250
+ clearTableSelection();
251
+ onClose();
252
+ });
253
+ }, [editor, tableCellNode, clearTableSelection, onClose]);
254
+ const deleteTableColumnAtSelection = useCallback(() => {
255
+ editor.update(() => {
256
+ $deleteTableColumn__EXPERIMENTAL();
257
+ onClose();
258
+ });
259
+ }, [editor, onClose]);
260
+ const toggleTableRowIsHeader = useCallback(() => {
261
+ editor.update(() => {
262
+ const tableNode_1 = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
263
+ const tableRowIndex = $getTableRowIndexFromTableCellNode(tableCellNode);
264
+ const tableRows = tableNode_1.getChildren();
265
+ if (tableRowIndex >= tableRows.length || tableRowIndex < 0) {
266
+ throw new Error('Expected table cell to be inside of table row.');
267
+ }
268
+ const tableRow = tableRows[tableRowIndex];
269
+ if (!$isTableRowNode(tableRow)) {
270
+ throw new Error('Expected table row');
271
+ }
272
+ tableRow.getChildren().forEach(tableCell => {
273
+ if (!$isTableCellNode(tableCell)) {
274
+ throw new Error('Expected table cell');
527
275
  }
528
- }, [
529
- editor
530
- ]);
531
- useEffect(()=>{
532
- return editor.registerUpdateListener(()=>{
533
- editor.getEditorState().read(()=>{
534
- $moveMenu();
535
- });
536
- });
276
+ tableCell.toggleHeaderStyle(TableCellHeaderStates.ROW);
277
+ });
278
+ clearTableSelection();
279
+ onClose();
537
280
  });
538
- useEffect(()=>{
539
- const menuButtonDOM = menuButtonRef.current;
540
- if (menuButtonDOM != null && tableCellNode != null) {
541
- const tableCellNodeDOM = editor.getElementByKey(tableCellNode.getKey());
542
- if (tableCellNodeDOM != null) {
543
- const tableCellRect = tableCellNodeDOM.getBoundingClientRect();
544
- const menuRect = menuButtonDOM.getBoundingClientRect();
545
- const anchorRect = anchorElem.getBoundingClientRect();
546
- const top = tableCellRect.top - anchorRect.top + 4;
547
- const left = tableCellRect.right - menuRect.width - 10 - anchorRect.left;
548
- menuButtonDOM.style.opacity = '1';
549
- menuButtonDOM.style.transform = `translate(${left}px, ${top}px)`;
550
- } else {
551
- menuButtonDOM.style.opacity = '0';
552
- menuButtonDOM.style.transform = 'translate(-10000px, -10000px)';
553
- }
281
+ }, [editor, tableCellNode, clearTableSelection, onClose]);
282
+ const toggleTableColumnIsHeader = useCallback(() => {
283
+ editor.update(() => {
284
+ const tableNode_2 = $getTableNodeFromLexicalNodeOrThrow(tableCellNode);
285
+ const tableColumnIndex = $getTableColumnIndexFromTableCellNode(tableCellNode);
286
+ const tableRows_0 = tableNode_2.getChildren();
287
+ const maxRowsLength = Math.max(...tableRows_0.map(row => row.getChildren().length));
288
+ if (tableColumnIndex >= maxRowsLength || tableColumnIndex < 0) {
289
+ throw new Error('Expected table cell to be inside of table row.');
290
+ }
291
+ for (let r = 0; r < tableRows_0.length; r++) {
292
+ const tableRow_0 = tableRows_0[r];
293
+ if (!$isTableRowNode(tableRow_0)) {
294
+ throw new Error('Expected table row');
295
+ }
296
+ const tableCells = tableRow_0.getChildren();
297
+ if (tableColumnIndex >= tableCells.length) {
298
+ continue;
554
299
  }
555
- }, [
556
- menuButtonRef,
557
- tableCellNode,
558
- editor,
559
- anchorElem
560
- ]);
561
- const prevTableCellDOM = useRef(tableCellNode);
562
- useEffect(()=>{
563
- if (prevTableCellDOM.current !== tableCellNode) {
564
- setIsMenuOpen(false);
300
+ const tableCell_0 = tableCells[tableColumnIndex];
301
+ if (!$isTableCellNode(tableCell_0)) {
302
+ throw new Error('Expected table cell');
565
303
  }
566
- prevTableCellDOM.current = tableCellNode;
567
- }, [
568
- prevTableCellDOM,
569
- tableCellNode
570
- ]);
571
- return /*#__PURE__*/ _jsx("div", {
572
- className: "table-cell-action-button-container",
573
- ref: menuButtonRef,
574
- children: tableCellNode != null && /*#__PURE__*/ _jsxs(React.Fragment, {
575
- children: [
576
- /*#__PURE__*/ _jsx("button", {
577
- className: "table-cell-action-button",
578
- onClick: (e)=>{
579
- e.stopPropagation();
580
- setIsMenuOpen(!isMenuOpen);
581
- },
582
- ref: menuRootRef,
583
- type: "button",
584
- children: /*#__PURE__*/ _jsx(MeatballsIcon, {})
585
- }),
586
- isMenuOpen && /*#__PURE__*/ _jsx(TableActionMenu, {
587
- cellMerge: cellMerge,
588
- contextRef: menuRootRef,
589
- onClose: ()=>setIsMenuOpen(false),
590
- setIsMenuOpen: setIsMenuOpen,
591
- tableCellNode: tableCellNode
592
- })
593
- ]
594
- })
304
+ tableCell_0.toggleHeaderStyle(TableCellHeaderStates.COLUMN);
305
+ }
306
+ clearTableSelection();
307
+ onClose();
308
+ });
309
+ }, [editor, tableCellNode, clearTableSelection, onClose]);
310
+ let mergeCellButton = null;
311
+ if (cellMerge) {
312
+ if (canMergeCells) {
313
+ mergeCellButton = /*#__PURE__*/_jsx("button", {
314
+ className: "item",
315
+ "data-test-id": "table-merge-cells",
316
+ onClick: () => mergeTableCellsAtSelection(),
317
+ type: "button",
318
+ children: "Merge cells"
319
+ });
320
+ } else if (canUnmergeCell) {
321
+ mergeCellButton = /*#__PURE__*/_jsx("button", {
322
+ className: "item",
323
+ "data-test-id": "table-unmerge-cells",
324
+ onClick: () => unmergeTableCellsAtSelection(),
325
+ type: "button",
326
+ children: "Unmerge cells"
327
+ });
328
+ }
329
+ }
330
+ return /*#__PURE__*/createPortal(
331
+ // eslint-disable-next-line jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events
332
+ /*#__PURE__*/
333
+ _jsxs("div", {
334
+ className: "table-action-menu-dropdown",
335
+ onClick: e => {
336
+ e.stopPropagation();
337
+ },
338
+ ref: dropDownRef,
339
+ children: [mergeCellButton ? /*#__PURE__*/_jsxs(React.Fragment, {
340
+ children: [mergeCellButton, /*#__PURE__*/_jsx("hr", {})]
341
+ }) : null, /*#__PURE__*/_jsx("button", {
342
+ className: "item",
343
+ "data-test-id": "table-insert-row-above",
344
+ onClick: () => insertTableRowAtSelection(false),
345
+ type: "button",
346
+ children: /*#__PURE__*/_jsxs("span", {
347
+ className: "text",
348
+ children: ["Insert ", selectionCounts.rows === 1 ? 'row' : `${selectionCounts.rows} rows`, " above"]
349
+ })
350
+ }), /*#__PURE__*/_jsx("button", {
351
+ className: "item",
352
+ "data-test-id": "table-insert-row-below",
353
+ onClick: () => insertTableRowAtSelection(true),
354
+ type: "button",
355
+ children: /*#__PURE__*/_jsxs("span", {
356
+ className: "text",
357
+ children: ["Insert ", selectionCounts.rows === 1 ? 'row' : `${selectionCounts.rows} rows`, " below"]
358
+ })
359
+ }), /*#__PURE__*/_jsx("hr", {}), /*#__PURE__*/_jsx("button", {
360
+ className: "item",
361
+ "data-test-id": "table-insert-column-before",
362
+ onClick: () => insertTableColumnAtSelection(false),
363
+ type: "button",
364
+ children: /*#__PURE__*/_jsxs("span", {
365
+ className: "text",
366
+ children: ["Insert ", selectionCounts.columns === 1 ? 'column' : `${selectionCounts.columns} columns`, ' ', "left"]
367
+ })
368
+ }), /*#__PURE__*/_jsx("button", {
369
+ className: "item",
370
+ "data-test-id": "table-insert-column-after",
371
+ onClick: () => insertTableColumnAtSelection(true),
372
+ type: "button",
373
+ children: /*#__PURE__*/_jsxs("span", {
374
+ className: "text",
375
+ children: ["Insert ", selectionCounts.columns === 1 ? 'column' : `${selectionCounts.columns} columns`, ' ', "right"]
376
+ })
377
+ }), /*#__PURE__*/_jsx("hr", {}), /*#__PURE__*/_jsx("button", {
378
+ className: "item",
379
+ "data-test-id": "table-delete-columns",
380
+ onClick: () => deleteTableColumnAtSelection(),
381
+ type: "button",
382
+ children: /*#__PURE__*/_jsx("span", {
383
+ className: "text",
384
+ children: "Delete column"
385
+ })
386
+ }), /*#__PURE__*/_jsx("button", {
387
+ className: "item",
388
+ "data-test-id": "table-delete-rows",
389
+ onClick: () => deleteTableRowAtSelection(),
390
+ type: "button",
391
+ children: /*#__PURE__*/_jsx("span", {
392
+ className: "text",
393
+ children: "Delete row"
394
+ })
395
+ }), /*#__PURE__*/_jsx("button", {
396
+ className: "item",
397
+ "data-test-id": "table-delete",
398
+ onClick: () => deleteTableAtSelection(),
399
+ type: "button",
400
+ children: /*#__PURE__*/_jsx("span", {
401
+ className: "text",
402
+ children: "Delete table"
403
+ })
404
+ }), /*#__PURE__*/_jsx("hr", {}), /*#__PURE__*/_jsx("button", {
405
+ className: "item",
406
+ onClick: () => toggleTableRowIsHeader(),
407
+ type: "button",
408
+ children: /*#__PURE__*/_jsxs("span", {
409
+ className: "text",
410
+ children: [(tableCellNode.__headerState & TableCellHeaderStates.ROW) === TableCellHeaderStates.ROW ? 'Remove' : 'Add', ' ', "row header"]
411
+ })
412
+ }), /*#__PURE__*/_jsx("button", {
413
+ className: "item",
414
+ "data-test-id": "table-column-header",
415
+ onClick: () => toggleTableColumnIsHeader(),
416
+ type: "button",
417
+ children: /*#__PURE__*/_jsxs("span", {
418
+ className: "text",
419
+ children: [(tableCellNode.__headerState & TableCellHeaderStates.COLUMN) === TableCellHeaderStates.COLUMN ? 'Remove' : 'Add', ' ', "column header"]
420
+ })
421
+ })]
422
+ }), document.body);
423
+ }
424
+ function TableCellActionMenuContainer({
425
+ anchorElem,
426
+ cellMerge
427
+ }) {
428
+ const [editor] = useLexicalComposerContext();
429
+ const menuButtonRef = useRef(null);
430
+ const menuRootRef = useRef(null);
431
+ const [isMenuOpen, setIsMenuOpen] = useState(false);
432
+ const [tableCellNode, setTableMenuCellNode] = useState(null);
433
+ const $moveMenu = useCallback(() => {
434
+ const menu = menuButtonRef.current;
435
+ const selection = $getSelection();
436
+ const nativeSelection = window.getSelection();
437
+ const activeElement = document.activeElement;
438
+ if (selection == null || menu == null) {
439
+ setTableMenuCellNode(null);
440
+ return;
441
+ }
442
+ const rootElement = editor.getRootElement();
443
+ if ($isRangeSelection(selection) && rootElement !== null && nativeSelection !== null && rootElement.contains(nativeSelection.anchorNode)) {
444
+ const tableCellNodeFromSelection = $getTableCellNodeFromLexicalNode(selection.anchor.getNode());
445
+ if (tableCellNodeFromSelection == null) {
446
+ setTableMenuCellNode(null);
447
+ return;
448
+ }
449
+ const tableCellParentNodeDOM = editor.getElementByKey(tableCellNodeFromSelection.getKey());
450
+ if (tableCellParentNodeDOM == null) {
451
+ setTableMenuCellNode(null);
452
+ return;
453
+ }
454
+ setTableMenuCellNode(tableCellNodeFromSelection);
455
+ } else if (!activeElement) {
456
+ setTableMenuCellNode(null);
457
+ }
458
+ }, [editor]);
459
+ useEffect(() => {
460
+ return editor.registerUpdateListener(() => {
461
+ editor.getEditorState().read(() => {
462
+ $moveMenu();
463
+ });
595
464
  });
465
+ });
466
+ useEffect(() => {
467
+ const menuButtonDOM = menuButtonRef.current;
468
+ if (menuButtonDOM != null && tableCellNode != null) {
469
+ const tableCellNodeDOM = editor.getElementByKey(tableCellNode.getKey());
470
+ if (tableCellNodeDOM != null) {
471
+ const tableCellRect = tableCellNodeDOM.getBoundingClientRect();
472
+ const menuRect = menuButtonDOM.getBoundingClientRect();
473
+ const anchorRect = anchorElem.getBoundingClientRect();
474
+ const top = tableCellRect.top - anchorRect.top + 4;
475
+ const left = tableCellRect.right - menuRect.width - 10 - anchorRect.left;
476
+ menuButtonDOM.style.opacity = '1';
477
+ menuButtonDOM.style.transform = `translate(${left}px, ${top}px)`;
478
+ } else {
479
+ menuButtonDOM.style.opacity = '0';
480
+ menuButtonDOM.style.transform = 'translate(-10000px, -10000px)';
481
+ }
482
+ }
483
+ }, [menuButtonRef, tableCellNode, editor, anchorElem]);
484
+ const prevTableCellDOM = useRef(tableCellNode);
485
+ useEffect(() => {
486
+ if (prevTableCellDOM.current !== tableCellNode) {
487
+ setIsMenuOpen(false);
488
+ }
489
+ prevTableCellDOM.current = tableCellNode;
490
+ }, [prevTableCellDOM, tableCellNode]);
491
+ return /*#__PURE__*/_jsx("div", {
492
+ className: "table-cell-action-button-container",
493
+ ref: menuButtonRef,
494
+ children: tableCellNode != null && /*#__PURE__*/_jsxs(React.Fragment, {
495
+ children: [/*#__PURE__*/_jsx("button", {
496
+ className: "table-cell-action-button",
497
+ onClick: e => {
498
+ e.stopPropagation();
499
+ setIsMenuOpen(!isMenuOpen);
500
+ },
501
+ ref: menuRootRef,
502
+ type: "button",
503
+ children: /*#__PURE__*/_jsx(MeatballsIcon, {})
504
+ }), isMenuOpen && /*#__PURE__*/_jsx(TableActionMenu, {
505
+ cellMerge: cellMerge,
506
+ contextRef: menuRootRef,
507
+ onClose: () => setIsMenuOpen(false),
508
+ setIsMenuOpen: setIsMenuOpen,
509
+ tableCellNode: tableCellNode
510
+ })]
511
+ })
512
+ });
596
513
  }
597
- export const TableActionMenuPlugin = ({ anchorElem })=>{
598
- const isEditable = useLexicalEditable();
599
- return /*#__PURE__*/ createPortal(isEditable ? /*#__PURE__*/ _jsx(TableCellActionMenuContainer, {
600
- anchorElem: anchorElem ?? document.body,
601
- cellMerge: true
602
- }) : null, anchorElem ?? document.body);
514
+ export const TableActionMenuPlugin = ({
515
+ anchorElem
516
+ }) => {
517
+ const isEditable = useLexicalEditable();
518
+ return /*#__PURE__*/createPortal(isEditable ? /*#__PURE__*/_jsx(TableCellActionMenuContainer, {
519
+ anchorElem: anchorElem ?? document.body,
520
+ cellMerge: true
521
+ }) : null, anchorElem ?? document.body);
603
522
  };
604
-
605
523
  //# sourceMappingURL=index.js.map