@ekz/lexical-react 0.40.0

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 (470) hide show
  1. package/@ekz/lexicalExtensionComponent.dev.js +53 -0
  2. package/@ekz/lexicalExtensionComponent.dev.mjs +51 -0
  3. package/@ekz/lexicalExtensionComponent.js +11 -0
  4. package/@ekz/lexicalExtensionComponent.mjs +12 -0
  5. package/@ekz/lexicalExtensionComponent.node.mjs +10 -0
  6. package/@ekz/lexicalExtensionComponent.prod.js +9 -0
  7. package/@ekz/lexicalExtensionComponent.prod.mjs +9 -0
  8. package/@ekz/lexicalReactExtension.dev.js +187 -0
  9. package/@ekz/lexicalReactExtension.dev.mjs +184 -0
  10. package/@ekz/lexicalReactExtension.js +11 -0
  11. package/@ekz/lexicalReactExtension.mjs +13 -0
  12. package/@ekz/lexicalReactExtension.node.mjs +11 -0
  13. package/@ekz/lexicalReactExtension.prod.js +9 -0
  14. package/@ekz/lexicalReactExtension.prod.mjs +9 -0
  15. package/@ekz/lexicalReactPluginHostExtension.dev.js +189 -0
  16. package/@ekz/lexicalReactPluginHostExtension.dev.mjs +181 -0
  17. package/@ekz/lexicalReactPluginHostExtension.js +11 -0
  18. package/@ekz/lexicalReactPluginHostExtension.mjs +18 -0
  19. package/@ekz/lexicalReactPluginHostExtension.node.mjs +16 -0
  20. package/@ekz/lexicalReactPluginHostExtension.prod.js +9 -0
  21. package/@ekz/lexicalReactPluginHostExtension.prod.mjs +9 -0
  22. package/@ekz/lexicalReactProviderExtension.dev.js +33 -0
  23. package/@ekz/lexicalReactProviderExtension.dev.mjs +31 -0
  24. package/@ekz/lexicalReactProviderExtension.js +11 -0
  25. package/@ekz/lexicalReactProviderExtension.mjs +12 -0
  26. package/@ekz/lexicalReactProviderExtension.node.mjs +10 -0
  27. package/@ekz/lexicalReactProviderExtension.prod.js +9 -0
  28. package/@ekz/lexicalReactProviderExtension.prod.mjs +9 -0
  29. package/@ekz/lexicalTreeViewExtension.dev.js +57 -0
  30. package/@ekz/lexicalTreeViewExtension.dev.mjs +54 -0
  31. package/@ekz/lexicalTreeViewExtension.js +11 -0
  32. package/@ekz/lexicalTreeViewExtension.mjs +13 -0
  33. package/@ekz/lexicalTreeViewExtension.node.mjs +11 -0
  34. package/@ekz/lexicalTreeViewExtension.prod.js +9 -0
  35. package/@ekz/lexicalTreeViewExtension.prod.mjs +9 -0
  36. package/ExtensionComponent.d.ts +42 -0
  37. package/LICENSE +21 -0
  38. package/LexicalAutoEmbedPlugin.d.ts +39 -0
  39. package/LexicalAutoEmbedPlugin.dev.js +146 -0
  40. package/LexicalAutoEmbedPlugin.dev.mjs +141 -0
  41. package/LexicalAutoEmbedPlugin.js +11 -0
  42. package/LexicalAutoEmbedPlugin.js.flow +64 -0
  43. package/LexicalAutoEmbedPlugin.mjs +15 -0
  44. package/LexicalAutoEmbedPlugin.node.mjs +13 -0
  45. package/LexicalAutoEmbedPlugin.prod.js +9 -0
  46. package/LexicalAutoEmbedPlugin.prod.mjs +9 -0
  47. package/LexicalAutoFocusPlugin.d.ts +12 -0
  48. package/LexicalAutoFocusPlugin.dev.js +47 -0
  49. package/LexicalAutoFocusPlugin.dev.mjs +45 -0
  50. package/LexicalAutoFocusPlugin.js +11 -0
  51. package/LexicalAutoFocusPlugin.js.flow +14 -0
  52. package/LexicalAutoFocusPlugin.mjs +12 -0
  53. package/LexicalAutoFocusPlugin.node.mjs +10 -0
  54. package/LexicalAutoFocusPlugin.prod.js +9 -0
  55. package/LexicalAutoFocusPlugin.prod.mjs +9 -0
  56. package/LexicalAutoLinkPlugin.d.ts +14 -0
  57. package/LexicalAutoLinkPlugin.dev.js +54 -0
  58. package/LexicalAutoLinkPlugin.dev.mjs +52 -0
  59. package/LexicalAutoLinkPlugin.js +11 -0
  60. package/LexicalAutoLinkPlugin.js.flow +18 -0
  61. package/LexicalAutoLinkPlugin.mjs +13 -0
  62. package/LexicalAutoLinkPlugin.node.mjs +11 -0
  63. package/LexicalAutoLinkPlugin.prod.js +9 -0
  64. package/LexicalAutoLinkPlugin.prod.mjs +9 -0
  65. package/LexicalBlockWithAlignableContents.d.ts +21 -0
  66. package/LexicalBlockWithAlignableContents.dev.js +81 -0
  67. package/LexicalBlockWithAlignableContents.dev.mjs +79 -0
  68. package/LexicalBlockWithAlignableContents.js +11 -0
  69. package/LexicalBlockWithAlignableContents.js.flow +28 -0
  70. package/LexicalBlockWithAlignableContents.mjs +12 -0
  71. package/LexicalBlockWithAlignableContents.node.mjs +10 -0
  72. package/LexicalBlockWithAlignableContents.prod.js +9 -0
  73. package/LexicalBlockWithAlignableContents.prod.mjs +9 -0
  74. package/LexicalCharacterLimitPlugin.d.ts +15 -0
  75. package/LexicalCharacterLimitPlugin.dev.js +292 -0
  76. package/LexicalCharacterLimitPlugin.dev.mjs +290 -0
  77. package/LexicalCharacterLimitPlugin.js +11 -0
  78. package/LexicalCharacterLimitPlugin.js.flow +12 -0
  79. package/LexicalCharacterLimitPlugin.mjs +12 -0
  80. package/LexicalCharacterLimitPlugin.node.mjs +10 -0
  81. package/LexicalCharacterLimitPlugin.prod.js +9 -0
  82. package/LexicalCharacterLimitPlugin.prod.mjs +9 -0
  83. package/LexicalCheckListPlugin.d.ts +8 -0
  84. package/LexicalCheckListPlugin.dev.js +31 -0
  85. package/LexicalCheckListPlugin.dev.mjs +29 -0
  86. package/LexicalCheckListPlugin.js +11 -0
  87. package/LexicalCheckListPlugin.js.flow +10 -0
  88. package/LexicalCheckListPlugin.mjs +12 -0
  89. package/LexicalCheckListPlugin.node.mjs +10 -0
  90. package/LexicalCheckListPlugin.prod.js +9 -0
  91. package/LexicalCheckListPlugin.prod.mjs +9 -0
  92. package/LexicalClearEditorPlugin.d.ts +13 -0
  93. package/LexicalClearEditorPlugin.dev.js +55 -0
  94. package/LexicalClearEditorPlugin.dev.mjs +53 -0
  95. package/LexicalClearEditorPlugin.js +11 -0
  96. package/LexicalClearEditorPlugin.js.flow +14 -0
  97. package/LexicalClearEditorPlugin.mjs +12 -0
  98. package/LexicalClearEditorPlugin.node.mjs +10 -0
  99. package/LexicalClearEditorPlugin.prod.js +9 -0
  100. package/LexicalClearEditorPlugin.prod.mjs +9 -0
  101. package/LexicalClickableLinkPlugin.d.ts +11 -0
  102. package/LexicalClickableLinkPlugin.dev.js +38 -0
  103. package/LexicalClickableLinkPlugin.dev.mjs +36 -0
  104. package/LexicalClickableLinkPlugin.js +11 -0
  105. package/LexicalClickableLinkPlugin.js.flow +12 -0
  106. package/LexicalClickableLinkPlugin.mjs +12 -0
  107. package/LexicalClickableLinkPlugin.node.mjs +10 -0
  108. package/LexicalClickableLinkPlugin.prod.js +9 -0
  109. package/LexicalClickableLinkPlugin.prod.mjs +9 -0
  110. package/LexicalCollaborationContext.d.ts +19 -0
  111. package/LexicalCollaborationContext.dev.js +69 -0
  112. package/LexicalCollaborationContext.dev.mjs +65 -0
  113. package/LexicalCollaborationContext.js +11 -0
  114. package/LexicalCollaborationContext.js.flow +22 -0
  115. package/LexicalCollaborationContext.mjs +14 -0
  116. package/LexicalCollaborationContext.node.mjs +12 -0
  117. package/LexicalCollaborationContext.prod.js +9 -0
  118. package/LexicalCollaborationContext.prod.mjs +9 -0
  119. package/LexicalCollaborationPlugin.d.ts +39 -0
  120. package/LexicalCollaborationPlugin.dev.js +584 -0
  121. package/LexicalCollaborationPlugin.dev.mjs +569 -0
  122. package/LexicalCollaborationPlugin.js +11 -0
  123. package/LexicalCollaborationPlugin.js.flow +50 -0
  124. package/LexicalCollaborationPlugin.mjs +13 -0
  125. package/LexicalCollaborationPlugin.node.mjs +11 -0
  126. package/LexicalCollaborationPlugin.prod.js +9 -0
  127. package/LexicalCollaborationPlugin.prod.mjs +9 -0
  128. package/LexicalComposer.d.ts +25 -0
  129. package/LexicalComposer.dev.js +134 -0
  130. package/LexicalComposer.dev.mjs +132 -0
  131. package/LexicalComposer.js +11 -0
  132. package/LexicalComposer.js.flow +40 -0
  133. package/LexicalComposer.mjs +12 -0
  134. package/LexicalComposer.node.mjs +10 -0
  135. package/LexicalComposer.prod.js +9 -0
  136. package/LexicalComposer.prod.mjs +9 -0
  137. package/LexicalComposerContext.d.ts +18 -0
  138. package/LexicalComposerContext.dev.js +55 -0
  139. package/LexicalComposerContext.dev.mjs +51 -0
  140. package/LexicalComposerContext.js +11 -0
  141. package/LexicalComposerContext.js.flow +27 -0
  142. package/LexicalComposerContext.mjs +14 -0
  143. package/LexicalComposerContext.node.mjs +12 -0
  144. package/LexicalComposerContext.prod.js +9 -0
  145. package/LexicalComposerContext.prod.mjs +9 -0
  146. package/LexicalContentEditable.d.ts +26 -0
  147. package/LexicalContentEditable.dev.js +242 -0
  148. package/LexicalContentEditable.dev.mjs +239 -0
  149. package/LexicalContentEditable.js +11 -0
  150. package/LexicalContentEditable.js.flow +80 -0
  151. package/LexicalContentEditable.mjs +13 -0
  152. package/LexicalContentEditable.node.mjs +11 -0
  153. package/LexicalContentEditable.prod.js +9 -0
  154. package/LexicalContentEditable.prod.mjs +9 -0
  155. package/LexicalContextMenuPlugin.d.ts +36 -0
  156. package/LexicalContextMenuPlugin.dev.js +524 -0
  157. package/LexicalContextMenuPlugin.dev.mjs +509 -0
  158. package/LexicalContextMenuPlugin.js +11 -0
  159. package/LexicalContextMenuPlugin.js.flow +13 -0
  160. package/LexicalContextMenuPlugin.mjs +13 -0
  161. package/LexicalContextMenuPlugin.node.mjs +11 -0
  162. package/LexicalContextMenuPlugin.prod.js +9 -0
  163. package/LexicalContextMenuPlugin.prod.mjs +9 -0
  164. package/LexicalDecoratorBlockNode.d.ts +25 -0
  165. package/LexicalDecoratorBlockNode.dev.js +59 -0
  166. package/LexicalDecoratorBlockNode.dev.mjs +56 -0
  167. package/LexicalDecoratorBlockNode.js +11 -0
  168. package/LexicalDecoratorBlockNode.js.flow +35 -0
  169. package/LexicalDecoratorBlockNode.mjs +13 -0
  170. package/LexicalDecoratorBlockNode.node.mjs +11 -0
  171. package/LexicalDecoratorBlockNode.prod.js +9 -0
  172. package/LexicalDecoratorBlockNode.prod.mjs +9 -0
  173. package/LexicalDraggableBlockPlugin.d.ts +18 -0
  174. package/LexicalDraggableBlockPlugin.dev.js +655 -0
  175. package/LexicalDraggableBlockPlugin.dev.mjs +653 -0
  176. package/LexicalDraggableBlockPlugin.js +11 -0
  177. package/LexicalDraggableBlockPlugin.js.flow +24 -0
  178. package/LexicalDraggableBlockPlugin.mjs +12 -0
  179. package/LexicalDraggableBlockPlugin.node.mjs +10 -0
  180. package/LexicalDraggableBlockPlugin.prod.js +9 -0
  181. package/LexicalDraggableBlockPlugin.prod.mjs +9 -0
  182. package/LexicalEditorRefPlugin.d.ts +20 -0
  183. package/LexicalEditorRefPlugin.dev.js +58 -0
  184. package/LexicalEditorRefPlugin.dev.mjs +43 -0
  185. package/LexicalEditorRefPlugin.js +11 -0
  186. package/LexicalEditorRefPlugin.js.flow +19 -0
  187. package/LexicalEditorRefPlugin.mjs +12 -0
  188. package/LexicalEditorRefPlugin.node.mjs +10 -0
  189. package/LexicalEditorRefPlugin.prod.js +9 -0
  190. package/LexicalEditorRefPlugin.prod.mjs +9 -0
  191. package/LexicalErrorBoundary.d.ts +13 -0
  192. package/LexicalErrorBoundary.dev.js +40 -0
  193. package/LexicalErrorBoundary.dev.mjs +38 -0
  194. package/LexicalErrorBoundary.js +11 -0
  195. package/LexicalErrorBoundary.js.flow +17 -0
  196. package/LexicalErrorBoundary.mjs +12 -0
  197. package/LexicalErrorBoundary.node.mjs +10 -0
  198. package/LexicalErrorBoundary.prod.js +9 -0
  199. package/LexicalErrorBoundary.prod.mjs +9 -0
  200. package/LexicalExtensionComponent.js.flow +12 -0
  201. package/LexicalExtensionComposer.d.ts +69 -0
  202. package/LexicalExtensionComposer.dev.js +105 -0
  203. package/LexicalExtensionComposer.dev.mjs +103 -0
  204. package/LexicalExtensionComposer.js +11 -0
  205. package/LexicalExtensionComposer.js.flow +20 -0
  206. package/LexicalExtensionComposer.mjs +12 -0
  207. package/LexicalExtensionComposer.node.mjs +10 -0
  208. package/LexicalExtensionComposer.prod.js +9 -0
  209. package/LexicalExtensionComposer.prod.mjs +9 -0
  210. package/LexicalHashtagPlugin.d.ts +9 -0
  211. package/LexicalHashtagPlugin.dev.js +34 -0
  212. package/LexicalHashtagPlugin.dev.mjs +32 -0
  213. package/LexicalHashtagPlugin.js +11 -0
  214. package/LexicalHashtagPlugin.js.flow +10 -0
  215. package/LexicalHashtagPlugin.mjs +12 -0
  216. package/LexicalHashtagPlugin.node.mjs +10 -0
  217. package/LexicalHashtagPlugin.prod.js +9 -0
  218. package/LexicalHashtagPlugin.prod.mjs +9 -0
  219. package/LexicalHistoryPlugin.d.ts +14 -0
  220. package/LexicalHistoryPlugin.dev.js +48 -0
  221. package/LexicalHistoryPlugin.dev.mjs +46 -0
  222. package/LexicalHistoryPlugin.js +11 -0
  223. package/LexicalHistoryPlugin.js.flow +28 -0
  224. package/LexicalHistoryPlugin.mjs +13 -0
  225. package/LexicalHistoryPlugin.node.mjs +11 -0
  226. package/LexicalHistoryPlugin.prod.js +9 -0
  227. package/LexicalHistoryPlugin.prod.mjs +9 -0
  228. package/LexicalHorizontalRuleNode.d.ts +25 -0
  229. package/LexicalHorizontalRuleNode.dev.js +102 -0
  230. package/LexicalHorizontalRuleNode.dev.mjs +98 -0
  231. package/LexicalHorizontalRuleNode.js +11 -0
  232. package/LexicalHorizontalRuleNode.js.flow +27 -0
  233. package/LexicalHorizontalRuleNode.mjs +15 -0
  234. package/LexicalHorizontalRuleNode.node.mjs +13 -0
  235. package/LexicalHorizontalRuleNode.prod.js +9 -0
  236. package/LexicalHorizontalRuleNode.prod.mjs +9 -0
  237. package/LexicalHorizontalRulePlugin.d.ts +8 -0
  238. package/LexicalHorizontalRulePlugin.dev.js +44 -0
  239. package/LexicalHorizontalRulePlugin.dev.mjs +42 -0
  240. package/LexicalHorizontalRulePlugin.js +11 -0
  241. package/LexicalHorizontalRulePlugin.js.flow +12 -0
  242. package/LexicalHorizontalRulePlugin.mjs +12 -0
  243. package/LexicalHorizontalRulePlugin.node.mjs +10 -0
  244. package/LexicalHorizontalRulePlugin.prod.js +9 -0
  245. package/LexicalHorizontalRulePlugin.prod.mjs +9 -0
  246. package/LexicalLinkPlugin.d.ts +14 -0
  247. package/LexicalLinkPlugin.dev.js +43 -0
  248. package/LexicalLinkPlugin.dev.mjs +41 -0
  249. package/LexicalLinkPlugin.js +11 -0
  250. package/LexicalLinkPlugin.js.flow +21 -0
  251. package/LexicalLinkPlugin.mjs +12 -0
  252. package/LexicalLinkPlugin.node.mjs +10 -0
  253. package/LexicalLinkPlugin.prod.js +9 -0
  254. package/LexicalLinkPlugin.prod.mjs +9 -0
  255. package/LexicalListPlugin.d.ts +20 -0
  256. package/LexicalListPlugin.dev.js +55 -0
  257. package/LexicalListPlugin.dev.mjs +53 -0
  258. package/LexicalListPlugin.js +11 -0
  259. package/LexicalListPlugin.js.flow +15 -0
  260. package/LexicalListPlugin.mjs +12 -0
  261. package/LexicalListPlugin.node.mjs +10 -0
  262. package/LexicalListPlugin.prod.js +9 -0
  263. package/LexicalListPlugin.prod.mjs +9 -0
  264. package/LexicalMarkdownShortcutPlugin.d.ts +12 -0
  265. package/LexicalMarkdownShortcutPlugin.dev.js +55 -0
  266. package/LexicalMarkdownShortcutPlugin.dev.mjs +52 -0
  267. package/LexicalMarkdownShortcutPlugin.js +11 -0
  268. package/LexicalMarkdownShortcutPlugin.js.flow +16 -0
  269. package/LexicalMarkdownShortcutPlugin.mjs +13 -0
  270. package/LexicalMarkdownShortcutPlugin.node.mjs +11 -0
  271. package/LexicalMarkdownShortcutPlugin.prod.js +9 -0
  272. package/LexicalMarkdownShortcutPlugin.prod.mjs +9 -0
  273. package/LexicalNestedComposer.d.ts +57 -0
  274. package/LexicalNestedComposer.dev.js +161 -0
  275. package/LexicalNestedComposer.dev.mjs +159 -0
  276. package/LexicalNestedComposer.js +11 -0
  277. package/LexicalNestedComposer.js.flow +26 -0
  278. package/LexicalNestedComposer.mjs +12 -0
  279. package/LexicalNestedComposer.node.mjs +10 -0
  280. package/LexicalNestedComposer.prod.js +9 -0
  281. package/LexicalNestedComposer.prod.mjs +9 -0
  282. package/LexicalNodeContextMenuPlugin.d.ts +46 -0
  283. package/LexicalNodeContextMenuPlugin.dev.js +257 -0
  284. package/LexicalNodeContextMenuPlugin.dev.mjs +253 -0
  285. package/LexicalNodeContextMenuPlugin.js +11 -0
  286. package/LexicalNodeContextMenuPlugin.js.flow +12 -0
  287. package/LexicalNodeContextMenuPlugin.mjs +14 -0
  288. package/LexicalNodeContextMenuPlugin.node.mjs +12 -0
  289. package/LexicalNodeContextMenuPlugin.prod.js +9 -0
  290. package/LexicalNodeContextMenuPlugin.prod.mjs +9 -0
  291. package/LexicalNodeEventPlugin.d.ts +13 -0
  292. package/LexicalNodeEventPlugin.dev.js +61 -0
  293. package/LexicalNodeEventPlugin.dev.mjs +59 -0
  294. package/LexicalNodeEventPlugin.js +11 -0
  295. package/LexicalNodeEventPlugin.js.flow +20 -0
  296. package/LexicalNodeEventPlugin.mjs +12 -0
  297. package/LexicalNodeEventPlugin.node.mjs +10 -0
  298. package/LexicalNodeEventPlugin.prod.js +9 -0
  299. package/LexicalNodeEventPlugin.prod.mjs +9 -0
  300. package/LexicalNodeMenuPlugin.d.ts +24 -0
  301. package/LexicalNodeMenuPlugin.dev.js +527 -0
  302. package/LexicalNodeMenuPlugin.dev.mjs +524 -0
  303. package/LexicalNodeMenuPlugin.js +11 -0
  304. package/LexicalNodeMenuPlugin.js.flow +64 -0
  305. package/LexicalNodeMenuPlugin.mjs +13 -0
  306. package/LexicalNodeMenuPlugin.node.mjs +11 -0
  307. package/LexicalNodeMenuPlugin.prod.js +9 -0
  308. package/LexicalNodeMenuPlugin.prod.mjs +9 -0
  309. package/LexicalOnChangePlugin.d.ts +13 -0
  310. package/LexicalOnChangePlugin.dev.js +72 -0
  311. package/LexicalOnChangePlugin.dev.mjs +70 -0
  312. package/LexicalOnChangePlugin.js +11 -0
  313. package/LexicalOnChangePlugin.js.flow +16 -0
  314. package/LexicalOnChangePlugin.mjs +12 -0
  315. package/LexicalOnChangePlugin.node.mjs +10 -0
  316. package/LexicalOnChangePlugin.prod.js +9 -0
  317. package/LexicalOnChangePlugin.prod.mjs +9 -0
  318. package/LexicalPlainTextPlugin.d.ts +14 -0
  319. package/LexicalPlainTextPlugin.dev.js +235 -0
  320. package/LexicalPlainTextPlugin.dev.mjs +233 -0
  321. package/LexicalPlainTextPlugin.js +11 -0
  322. package/LexicalPlainTextPlugin.js.flow +29 -0
  323. package/LexicalPlainTextPlugin.mjs +12 -0
  324. package/LexicalPlainTextPlugin.node.mjs +10 -0
  325. package/LexicalPlainTextPlugin.prod.js +9 -0
  326. package/LexicalPlainTextPlugin.prod.mjs +9 -0
  327. package/LexicalReactExtension.js.flow +68 -0
  328. package/LexicalReactPluginHostExtension.js.flow +84 -0
  329. package/LexicalReactProviderExtension.js.flow +12 -0
  330. package/LexicalRichTextPlugin.d.ts +14 -0
  331. package/LexicalRichTextPlugin.dev.js +235 -0
  332. package/LexicalRichTextPlugin.dev.mjs +233 -0
  333. package/LexicalRichTextPlugin.js +11 -0
  334. package/LexicalRichTextPlugin.js.flow +29 -0
  335. package/LexicalRichTextPlugin.mjs +12 -0
  336. package/LexicalRichTextPlugin.node.mjs +10 -0
  337. package/LexicalRichTextPlugin.prod.js +9 -0
  338. package/LexicalRichTextPlugin.prod.mjs +9 -0
  339. package/LexicalSelectionAlwaysOnDisplay.d.ts +12 -0
  340. package/LexicalSelectionAlwaysOnDisplay.dev.js +33 -0
  341. package/LexicalSelectionAlwaysOnDisplay.dev.mjs +31 -0
  342. package/LexicalSelectionAlwaysOnDisplay.js +11 -0
  343. package/LexicalSelectionAlwaysOnDisplay.js.flow +15 -0
  344. package/LexicalSelectionAlwaysOnDisplay.mjs +12 -0
  345. package/LexicalSelectionAlwaysOnDisplay.node.mjs +10 -0
  346. package/LexicalSelectionAlwaysOnDisplay.prod.js +9 -0
  347. package/LexicalSelectionAlwaysOnDisplay.prod.mjs +9 -0
  348. package/LexicalTabIndentationPlugin.d.ts +17 -0
  349. package/LexicalTabIndentationPlugin.dev.js +40 -0
  350. package/LexicalTabIndentationPlugin.dev.mjs +38 -0
  351. package/LexicalTabIndentationPlugin.js +11 -0
  352. package/LexicalTabIndentationPlugin.js.flow +21 -0
  353. package/LexicalTabIndentationPlugin.mjs +13 -0
  354. package/LexicalTabIndentationPlugin.node.mjs +11 -0
  355. package/LexicalTabIndentationPlugin.prod.js +9 -0
  356. package/LexicalTabIndentationPlugin.prod.mjs +9 -0
  357. package/LexicalTableOfContentsPlugin.d.ts +20 -0
  358. package/LexicalTableOfContentsPlugin.dev.js +209 -0
  359. package/LexicalTableOfContentsPlugin.dev.mjs +207 -0
  360. package/LexicalTableOfContentsPlugin.js +11 -0
  361. package/LexicalTableOfContentsPlugin.js.flow +18 -0
  362. package/LexicalTableOfContentsPlugin.mjs +12 -0
  363. package/LexicalTableOfContentsPlugin.node.mjs +10 -0
  364. package/LexicalTableOfContentsPlugin.prod.js +9 -0
  365. package/LexicalTableOfContentsPlugin.prod.mjs +9 -0
  366. package/LexicalTablePlugin.d.ts +46 -0
  367. package/LexicalTablePlugin.dev.js +81 -0
  368. package/LexicalTablePlugin.dev.mjs +79 -0
  369. package/LexicalTablePlugin.js +11 -0
  370. package/LexicalTablePlugin.js.flow +15 -0
  371. package/LexicalTablePlugin.mjs +12 -0
  372. package/LexicalTablePlugin.node.mjs +10 -0
  373. package/LexicalTablePlugin.prod.js +9 -0
  374. package/LexicalTablePlugin.prod.mjs +9 -0
  375. package/LexicalTreeView.d.ts +37 -0
  376. package/LexicalTreeView.dev.js +105 -0
  377. package/LexicalTreeView.dev.mjs +91 -0
  378. package/LexicalTreeView.js +11 -0
  379. package/LexicalTreeView.js.flow +21 -0
  380. package/LexicalTreeView.mjs +12 -0
  381. package/LexicalTreeView.node.mjs +10 -0
  382. package/LexicalTreeView.prod.js +9 -0
  383. package/LexicalTreeView.prod.mjs +9 -0
  384. package/LexicalTreeViewExtension.js.flow +12 -0
  385. package/LexicalTypeaheadMenuPlugin.d.ts +40 -0
  386. package/LexicalTypeaheadMenuPlugin.dev.js +654 -0
  387. package/LexicalTypeaheadMenuPlugin.dev.mjs +646 -0
  388. package/LexicalTypeaheadMenuPlugin.js +11 -0
  389. package/LexicalTypeaheadMenuPlugin.js.flow +83 -0
  390. package/LexicalTypeaheadMenuPlugin.mjs +18 -0
  391. package/LexicalTypeaheadMenuPlugin.node.mjs +16 -0
  392. package/LexicalTypeaheadMenuPlugin.prod.js +9 -0
  393. package/LexicalTypeaheadMenuPlugin.prod.mjs +9 -0
  394. package/README.md +90 -0
  395. package/ReactExtension.d.ts +41 -0
  396. package/ReactPluginHostExtension.d.ts +56 -0
  397. package/ReactProviderExtension.d.ts +9 -0
  398. package/TreeViewExtension.d.ts +18 -0
  399. package/package.json +1549 -0
  400. package/shared/LegacyDecorators.d.ts +23 -0
  401. package/shared/LexicalContentEditableElement.d.ts +43 -0
  402. package/shared/LexicalMenu.d.ts +52 -0
  403. package/shared/buildEditorComponent.d.ts +11 -0
  404. package/shared/mergeRefs.d.ts +9 -0
  405. package/shared/point.d.ts +21 -0
  406. package/shared/rect.d.ts +45 -0
  407. package/shared/types.d.ts +89 -0
  408. package/shared/useCanShowPlaceholder.d.ts +9 -0
  409. package/shared/useCharacterLimit.d.ts +16 -0
  410. package/shared/useDecorators.d.ts +17 -0
  411. package/shared/useHistory.d.ts +10 -0
  412. package/shared/useList.d.ts +9 -0
  413. package/shared/usePlainTextSetup.d.ts +9 -0
  414. package/shared/useReactDecorators.d.ts +12 -0
  415. package/shared/useRichTextSetup.d.ts +9 -0
  416. package/shared/useYjsCollaboration.d.ts +25 -0
  417. package/useExtensionComponent.d.ts +10 -0
  418. package/useLexicalEditable.d.ts +16 -0
  419. package/useLexicalEditable.dev.js +102 -0
  420. package/useLexicalEditable.dev.mjs +100 -0
  421. package/useLexicalEditable.js +11 -0
  422. package/useLexicalEditable.js.flow +12 -0
  423. package/useLexicalEditable.mjs +12 -0
  424. package/useLexicalEditable.node.mjs +10 -0
  425. package/useLexicalEditable.prod.js +9 -0
  426. package/useLexicalEditable.prod.mjs +9 -0
  427. package/useLexicalExtensionComponent.dev.js +37 -0
  428. package/useLexicalExtensionComponent.dev.mjs +34 -0
  429. package/useLexicalExtensionComponent.js +11 -0
  430. package/useLexicalExtensionComponent.js.flow +12 -0
  431. package/useLexicalExtensionComponent.mjs +13 -0
  432. package/useLexicalExtensionComponent.node.mjs +11 -0
  433. package/useLexicalExtensionComponent.prod.js +9 -0
  434. package/useLexicalExtensionComponent.prod.mjs +9 -0
  435. package/useLexicalIsTextContentEmpty.d.ts +9 -0
  436. package/useLexicalIsTextContentEmpty.dev.js +60 -0
  437. package/useLexicalIsTextContentEmpty.dev.mjs +58 -0
  438. package/useLexicalIsTextContentEmpty.js +11 -0
  439. package/useLexicalIsTextContentEmpty.js.flow +15 -0
  440. package/useLexicalIsTextContentEmpty.mjs +12 -0
  441. package/useLexicalIsTextContentEmpty.node.mjs +10 -0
  442. package/useLexicalIsTextContentEmpty.prod.js +9 -0
  443. package/useLexicalIsTextContentEmpty.prod.mjs +9 -0
  444. package/useLexicalNodeSelection.d.ts +24 -0
  445. package/useLexicalNodeSelection.dev.js +102 -0
  446. package/useLexicalNodeSelection.dev.mjs +100 -0
  447. package/useLexicalNodeSelection.js +11 -0
  448. package/useLexicalNodeSelection.js.flow +14 -0
  449. package/useLexicalNodeSelection.mjs +12 -0
  450. package/useLexicalNodeSelection.node.mjs +10 -0
  451. package/useLexicalNodeSelection.prod.js +9 -0
  452. package/useLexicalNodeSelection.prod.mjs +9 -0
  453. package/useLexicalSubscription.d.ts +17 -0
  454. package/useLexicalSubscription.dev.js +73 -0
  455. package/useLexicalSubscription.dev.mjs +71 -0
  456. package/useLexicalSubscription.js +11 -0
  457. package/useLexicalSubscription.js.flow +19 -0
  458. package/useLexicalSubscription.mjs +12 -0
  459. package/useLexicalSubscription.node.mjs +10 -0
  460. package/useLexicalSubscription.prod.js +9 -0
  461. package/useLexicalSubscription.prod.mjs +9 -0
  462. package/useLexicalTextEntity.d.ts +10 -0
  463. package/useLexicalTextEntity.dev.js +31 -0
  464. package/useLexicalTextEntity.dev.mjs +29 -0
  465. package/useLexicalTextEntity.js +11 -0
  466. package/useLexicalTextEntity.js.flow +18 -0
  467. package/useLexicalTextEntity.mjs +12 -0
  468. package/useLexicalTextEntity.node.mjs +10 -0
  469. package/useLexicalTextEntity.prod.js +9 -0
  470. package/useLexicalTextEntity.prod.mjs +9 -0
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ 'use strict';
10
+
11
+ var useExtensionComponent = require('@ekz/lexical-react/useExtensionComponent');
12
+ var jsxRuntime = require('react/jsx-runtime');
13
+
14
+ /**
15
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
16
+ *
17
+ * This source code is licensed under the MIT license found in the
18
+ * LICENSE file in the root directory of this source tree.
19
+ *
20
+ */
21
+
22
+ /**
23
+ * A convenient way to get an Extension's output Component with {@link useExtensionComponent}
24
+ * and construct it in one step.
25
+ *
26
+ * @example
27
+ * Usage
28
+ * ```tsx
29
+ * return (
30
+ * <ExtensionComponent
31
+ * lexical:extension={TreeViewExtension}
32
+ * viewClassName="tree-view-output" />
33
+ * );
34
+ * ```
35
+ *
36
+ * @example
37
+ * Alternative without ExtensionComponent
38
+ * ```tsx
39
+ * const TreeViewComponent = useExtensionComponent(TreeViewExtension);
40
+ * return (<TreeViewComponent viewClassName="tree-view-output" />);
41
+ * ```
42
+ */
43
+ function ExtensionComponent({
44
+ 'lexical:extension': extension,
45
+ ...props
46
+ }) {
47
+ const Component = useExtensionComponent.useExtensionComponent(extension);
48
+ return /*#__PURE__*/jsxRuntime.jsx(Component, {
49
+ ...props
50
+ });
51
+ }
52
+
53
+ exports.ExtensionComponent = ExtensionComponent;
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import { useExtensionComponent } from '@ekz/lexical-react/useExtensionComponent';
10
+ import { jsx } from 'react/jsx-runtime';
11
+
12
+ /**
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ *
18
+ */
19
+
20
+ /**
21
+ * A convenient way to get an Extension's output Component with {@link useExtensionComponent}
22
+ * and construct it in one step.
23
+ *
24
+ * @example
25
+ * Usage
26
+ * ```tsx
27
+ * return (
28
+ * <ExtensionComponent
29
+ * lexical:extension={TreeViewExtension}
30
+ * viewClassName="tree-view-output" />
31
+ * );
32
+ * ```
33
+ *
34
+ * @example
35
+ * Alternative without ExtensionComponent
36
+ * ```tsx
37
+ * const TreeViewComponent = useExtensionComponent(TreeViewExtension);
38
+ * return (<TreeViewComponent viewClassName="tree-view-output" />);
39
+ * ```
40
+ */
41
+ function ExtensionComponent({
42
+ 'lexical:extension': extension,
43
+ ...props
44
+ }) {
45
+ const Component = useExtensionComponent(extension);
46
+ return /*#__PURE__*/jsx(Component, {
47
+ ...props
48
+ });
49
+ }
50
+
51
+ export { ExtensionComponent };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ 'use strict'
10
+ const @ekz/lexicalExtensionComponent = process.env.NODE_ENV !== 'production' ? require('./@ekz/lexicalExtensionComponent.dev.js') : require('./@ekz/lexicalExtensionComponent.prod.js');
11
+ module.exports = @ekz/lexicalExtensionComponent;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import * as modDev from './@ekz/lexicalExtensionComponent.dev.mjs';
10
+ import * as modProd from './@ekz/lexicalExtensionComponent.prod.mjs';
11
+ const mod = process.env.NODE_ENV !== 'production' ? modDev : modProd;
12
+ export const ExtensionComponent = mod.ExtensionComponent;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ const mod = await (process.env.NODE_ENV !== 'production' ? import('./@ekz/lexicalExtensionComponent.dev.mjs') : import('./@ekz/lexicalExtensionComponent.prod.mjs'));
10
+ export const ExtensionComponent = mod.ExtensionComponent;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ "use strict";var e=require("@ekz/lexical-react/useExtensionComponent"),n=require("react/jsx-runtime");exports.ExtensionComponent=function({"lexical:extension":t,...o}){const r=e.useExtensionComponent(t);return n.jsx(r,{...o})};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import{useExtensionComponent as e}from"@ekz/lexical-react/useExtensionComponent";import{jsx as t}from"react/jsx-runtime";function n({"lexical:extension":n,...o}){const r=e(n);return t(r,{...o})}export{n as ExtensionComponent};
@@ -0,0 +1,187 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ 'use strict';
10
+
11
+ var LexicalContentEditable = require('@ekz/lexical-react/LexicalContentEditable');
12
+ var LexicalErrorBoundary = require('@ekz/lexical-react/LexicalErrorBoundary');
13
+ var ReactProviderExtension = require('@ekz/lexical-react/ReactProviderExtension');
14
+ var lexical = require('@ekz/lexical');
15
+ var LexicalComposerContext = require('@ekz/lexical-react/LexicalComposerContext');
16
+ var react = require('react');
17
+ var reactDom = require('react-dom');
18
+ var jsxRuntime = require('react/jsx-runtime');
19
+
20
+ /**
21
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ *
26
+ */
27
+
28
+ // Do not require this module directly! Use normal `invariant` calls.
29
+
30
+ function formatDevErrorMessage(message) {
31
+ throw new Error(message);
32
+ }
33
+
34
+ /**
35
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
36
+ *
37
+ * This source code is licensed under the MIT license found in the
38
+ * LICENSE file in the root directory of this source tree.
39
+ *
40
+ */
41
+
42
+ /** @internal */
43
+ function useReactDecorators(editor, ErrorBoundary) {
44
+ const [subscribe, getSnapshot] = react.useMemo(() => [cb => editor.registerDecoratorListener(cb), () => editor.getDecorators()], [editor]);
45
+ const decorators = react.useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
46
+
47
+ // Return decorators defined as React Portals
48
+ return react.useMemo(() => {
49
+ const decoratedPortals = [];
50
+ for (const nodeKey in decorators) {
51
+ const element = editor.getElementByKey(nodeKey);
52
+ if (element !== null) {
53
+ const reactDecorator = /*#__PURE__*/jsxRuntime.jsx(ErrorBoundary, {
54
+ onError: e => {
55
+ editor._onError(e);
56
+ },
57
+ children: /*#__PURE__*/jsxRuntime.jsx(react.Suspense, {
58
+ fallback: null,
59
+ children: decorators[nodeKey]
60
+ })
61
+ });
62
+ decoratedPortals.push(/*#__PURE__*/reactDom.createPortal(reactDecorator, element, nodeKey));
63
+ }
64
+ }
65
+ return decoratedPortals;
66
+ }, [ErrorBoundary, decorators, editor]);
67
+ }
68
+
69
+ /**
70
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
71
+ *
72
+ * This source code is licensed under the MIT license found in the
73
+ * LICENSE file in the root directory of this source tree.
74
+ *
75
+ */
76
+ function buildEditorComponent(config, context) {
77
+ const [editor] = context;
78
+ const rawConfigDecorators = config.decorators.map(El =>
79
+ // eslint-disable-next-line react/jsx-key -- wrapped later
80
+ typeof El === 'function' ? /*#__PURE__*/jsxRuntime.jsx(El, {
81
+ context: context
82
+ }) : El);
83
+ return function EditorComponent(props) {
84
+ const {
85
+ EditorChildrenComponent = config.EditorChildrenComponent,
86
+ ErrorBoundary = config.ErrorBoundary,
87
+ contentEditable = config.contentEditable,
88
+ children
89
+ } = props;
90
+ const decorators = useReactDecorators(editor, ErrorBoundary);
91
+ const configDecorators = react.useMemo(() => rawConfigDecorators.map((decorator, i) => /*#__PURE__*/jsxRuntime.jsx(ErrorBoundary, {
92
+ onError: e => {
93
+ editor._onError(e);
94
+ }
95
+ // eslint-disable-next-line react/no-array-index-key -- no natural key
96
+ ,
97
+ children: /*#__PURE__*/jsxRuntime.jsx(react.Suspense, {
98
+ fallback: null,
99
+ children: decorator
100
+ })
101
+ }, i)), [ErrorBoundary]);
102
+ return /*#__PURE__*/jsxRuntime.jsx(LexicalComposerContext.LexicalComposerContext.Provider, {
103
+ value: context,
104
+ children: /*#__PURE__*/jsxRuntime.jsxs(EditorChildrenComponent, {
105
+ context: context,
106
+ contentEditable: contentEditable,
107
+ children: [children, configDecorators, decorators]
108
+ })
109
+ });
110
+ };
111
+ }
112
+
113
+ /**
114
+ * @example
115
+ * The default EditorChildrenComponent implementation
116
+ * ```jsx
117
+ * return (
118
+ * <>
119
+ * {contentEditable}
120
+ * {children}
121
+ * </>
122
+ * );
123
+ * ```
124
+ */
125
+ function DefaultEditorChildrenComponent({
126
+ contentEditable,
127
+ children
128
+ }) {
129
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
130
+ children: [contentEditable, children]
131
+ });
132
+ }
133
+ const initialConfig = {
134
+ EditorChildrenComponent: DefaultEditorChildrenComponent,
135
+ ErrorBoundary: LexicalErrorBoundary.LexicalErrorBoundary,
136
+ contentEditable: /*#__PURE__*/jsxRuntime.jsx(LexicalContentEditable.ContentEditable, {}),
137
+ decorators: []
138
+ };
139
+
140
+ /**
141
+ * An extension to use or configure React for use with Lexical. In an editor, you
142
+ * would typically use {@link LexicalExtensionComposer} (for React projects) or
143
+ * {@link ReactPluginHostExtension} (to use React Extensions and plug-ins in a non-React
144
+ * project).
145
+ *
146
+ * See {@link ReactConfig} for more detailed exextensionations of how to use
147
+ * the config for this Extension.
148
+ *
149
+ * For an Extension developer, you can defineConfig() override the extension with
150
+ * decorators to add JSX inside the editor context that is not
151
+ * location-dependent (e.g. floating UI that does not need to be mounted in
152
+ * some specific location, or effects that return null).
153
+ */
154
+ const ReactExtension = lexical.defineExtension({
155
+ build(editor, config, state) {
156
+ const providerPeer = state.getPeer(ReactProviderExtension.ReactProviderExtension.name);
157
+ if (!providerPeer) {
158
+ {
159
+ formatDevErrorMessage(`No ReactProviderExtension detected. You must use ReactPluginHostExtension or LexicalExtensionComposer to host React extensions. The following extensions depend on ReactExtension: ${[...state.getDirectDependentNames()].join(' ')}`);
160
+ }
161
+ }
162
+ const context = [editor, {
163
+ getTheme: () => editor._config.theme
164
+ }];
165
+ const Component = buildEditorComponent(config, context);
166
+ return {
167
+ Component,
168
+ context
169
+ };
170
+ },
171
+ config: initialConfig,
172
+ mergeConfig(a, b) {
173
+ const config = lexical.shallowMergeConfig(a, b);
174
+ if (b.decorators) {
175
+ config.decorators = b.decorators.length > 0 ? [...a.decorators, ...b.decorators] : a.decorators;
176
+ }
177
+ return config;
178
+ },
179
+ name: '@ekz/lexical-react/React',
180
+ peerDependencies: [
181
+ // We are not trying to avoid the import, just the direct dependency,
182
+ // so using the extension directly is fine.
183
+ lexical.declarePeerDependency(ReactProviderExtension.ReactProviderExtension.name)]
184
+ });
185
+
186
+ exports.DefaultEditorChildrenComponent = DefaultEditorChildrenComponent;
187
+ exports.ReactExtension = ReactExtension;
@@ -0,0 +1,184 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import { ContentEditable } from '@ekz/lexical-react/LexicalContentEditable';
10
+ import { LexicalErrorBoundary } from '@ekz/lexical-react/LexicalErrorBoundary';
11
+ import { ReactProviderExtension } from '@ekz/lexical-react/ReactProviderExtension';
12
+ import { defineExtension, declarePeerDependency, shallowMergeConfig } from '@ekz/lexical';
13
+ import { LexicalComposerContext } from '@ekz/lexical-react/LexicalComposerContext';
14
+ import { useMemo, useSyncExternalStore, Suspense } from 'react';
15
+ import { createPortal } from 'react-dom';
16
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
17
+
18
+ /**
19
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
20
+ *
21
+ * This source code is licensed under the MIT license found in the
22
+ * LICENSE file in the root directory of this source tree.
23
+ *
24
+ */
25
+
26
+ // Do not require this module directly! Use normal `invariant` calls.
27
+
28
+ function formatDevErrorMessage(message) {
29
+ throw new Error(message);
30
+ }
31
+
32
+ /**
33
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
34
+ *
35
+ * This source code is licensed under the MIT license found in the
36
+ * LICENSE file in the root directory of this source tree.
37
+ *
38
+ */
39
+
40
+ /** @internal */
41
+ function useReactDecorators(editor, ErrorBoundary) {
42
+ const [subscribe, getSnapshot] = useMemo(() => [cb => editor.registerDecoratorListener(cb), () => editor.getDecorators()], [editor]);
43
+ const decorators = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
44
+
45
+ // Return decorators defined as React Portals
46
+ return useMemo(() => {
47
+ const decoratedPortals = [];
48
+ for (const nodeKey in decorators) {
49
+ const element = editor.getElementByKey(nodeKey);
50
+ if (element !== null) {
51
+ const reactDecorator = /*#__PURE__*/jsx(ErrorBoundary, {
52
+ onError: e => {
53
+ editor._onError(e);
54
+ },
55
+ children: /*#__PURE__*/jsx(Suspense, {
56
+ fallback: null,
57
+ children: decorators[nodeKey]
58
+ })
59
+ });
60
+ decoratedPortals.push(/*#__PURE__*/createPortal(reactDecorator, element, nodeKey));
61
+ }
62
+ }
63
+ return decoratedPortals;
64
+ }, [ErrorBoundary, decorators, editor]);
65
+ }
66
+
67
+ /**
68
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
69
+ *
70
+ * This source code is licensed under the MIT license found in the
71
+ * LICENSE file in the root directory of this source tree.
72
+ *
73
+ */
74
+ function buildEditorComponent(config, context) {
75
+ const [editor] = context;
76
+ const rawConfigDecorators = config.decorators.map(El =>
77
+ // eslint-disable-next-line react/jsx-key -- wrapped later
78
+ typeof El === 'function' ? /*#__PURE__*/jsx(El, {
79
+ context: context
80
+ }) : El);
81
+ return function EditorComponent(props) {
82
+ const {
83
+ EditorChildrenComponent = config.EditorChildrenComponent,
84
+ ErrorBoundary = config.ErrorBoundary,
85
+ contentEditable = config.contentEditable,
86
+ children
87
+ } = props;
88
+ const decorators = useReactDecorators(editor, ErrorBoundary);
89
+ const configDecorators = useMemo(() => rawConfigDecorators.map((decorator, i) => /*#__PURE__*/jsx(ErrorBoundary, {
90
+ onError: e => {
91
+ editor._onError(e);
92
+ }
93
+ // eslint-disable-next-line react/no-array-index-key -- no natural key
94
+ ,
95
+ children: /*#__PURE__*/jsx(Suspense, {
96
+ fallback: null,
97
+ children: decorator
98
+ })
99
+ }, i)), [ErrorBoundary]);
100
+ return /*#__PURE__*/jsx(LexicalComposerContext.Provider, {
101
+ value: context,
102
+ children: /*#__PURE__*/jsxs(EditorChildrenComponent, {
103
+ context: context,
104
+ contentEditable: contentEditable,
105
+ children: [children, configDecorators, decorators]
106
+ })
107
+ });
108
+ };
109
+ }
110
+
111
+ /**
112
+ * @example
113
+ * The default EditorChildrenComponent implementation
114
+ * ```jsx
115
+ * return (
116
+ * <>
117
+ * {contentEditable}
118
+ * {children}
119
+ * </>
120
+ * );
121
+ * ```
122
+ */
123
+ function DefaultEditorChildrenComponent({
124
+ contentEditable,
125
+ children
126
+ }) {
127
+ return /*#__PURE__*/jsxs(Fragment, {
128
+ children: [contentEditable, children]
129
+ });
130
+ }
131
+ const initialConfig = {
132
+ EditorChildrenComponent: DefaultEditorChildrenComponent,
133
+ ErrorBoundary: LexicalErrorBoundary,
134
+ contentEditable: /*#__PURE__*/jsx(ContentEditable, {}),
135
+ decorators: []
136
+ };
137
+
138
+ /**
139
+ * An extension to use or configure React for use with Lexical. In an editor, you
140
+ * would typically use {@link LexicalExtensionComposer} (for React projects) or
141
+ * {@link ReactPluginHostExtension} (to use React Extensions and plug-ins in a non-React
142
+ * project).
143
+ *
144
+ * See {@link ReactConfig} for more detailed exextensionations of how to use
145
+ * the config for this Extension.
146
+ *
147
+ * For an Extension developer, you can defineConfig() override the extension with
148
+ * decorators to add JSX inside the editor context that is not
149
+ * location-dependent (e.g. floating UI that does not need to be mounted in
150
+ * some specific location, or effects that return null).
151
+ */
152
+ const ReactExtension = defineExtension({
153
+ build(editor, config, state) {
154
+ const providerPeer = state.getPeer(ReactProviderExtension.name);
155
+ if (!providerPeer) {
156
+ {
157
+ formatDevErrorMessage(`No ReactProviderExtension detected. You must use ReactPluginHostExtension or LexicalExtensionComposer to host React extensions. The following extensions depend on ReactExtension: ${[...state.getDirectDependentNames()].join(' ')}`);
158
+ }
159
+ }
160
+ const context = [editor, {
161
+ getTheme: () => editor._config.theme
162
+ }];
163
+ const Component = buildEditorComponent(config, context);
164
+ return {
165
+ Component,
166
+ context
167
+ };
168
+ },
169
+ config: initialConfig,
170
+ mergeConfig(a, b) {
171
+ const config = shallowMergeConfig(a, b);
172
+ if (b.decorators) {
173
+ config.decorators = b.decorators.length > 0 ? [...a.decorators, ...b.decorators] : a.decorators;
174
+ }
175
+ return config;
176
+ },
177
+ name: '@ekz/lexical-react/React',
178
+ peerDependencies: [
179
+ // We are not trying to avoid the import, just the direct dependency,
180
+ // so using the extension directly is fine.
181
+ declarePeerDependency(ReactProviderExtension.name)]
182
+ });
183
+
184
+ export { DefaultEditorChildrenComponent, ReactExtension };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ 'use strict'
10
+ const @ekz/lexicalReactExtension = process.env.NODE_ENV !== 'production' ? require('./@ekz/lexicalReactExtension.dev.js') : require('./@ekz/lexicalReactExtension.prod.js');
11
+ module.exports = @ekz/lexicalReactExtension;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import * as modDev from './@ekz/lexicalReactExtension.dev.mjs';
10
+ import * as modProd from './@ekz/lexicalReactExtension.prod.mjs';
11
+ const mod = process.env.NODE_ENV !== 'production' ? modDev : modProd;
12
+ export const DefaultEditorChildrenComponent = mod.DefaultEditorChildrenComponent;
13
+ export const ReactExtension = mod.ReactExtension;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ const mod = await (process.env.NODE_ENV !== 'production' ? import('./@ekz/lexicalReactExtension.dev.mjs') : import('./@ekz/lexicalReactExtension.prod.mjs'));
10
+ export const DefaultEditorChildrenComponent = mod.DefaultEditorChildrenComponent;
11
+ export const ReactExtension = mod.ReactExtension;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ "use strict";var e=require("@ekz/lexical-react/LexicalContentEditable"),r=require("@ekz/lexical-react/LexicalErrorBoundary"),n=require("@ekz/lexical-react/ReactProviderExtension"),t=require("@ekz/lexical"),o=require("@ekz/lexical-react/LexicalComposerContext"),i=require("react"),c=require("react-dom"),a=require("react/jsx-runtime");function s(e,r){const[n]=r,t=e.decorators.map(e=>"function"==typeof e?a.jsx(e,{context:r}):e);return function(s){const{EditorChildrenComponent:l=e.EditorChildrenComponent,ErrorBoundary:d=e.ErrorBoundary,contentEditable:u=e.contentEditable,children:x}=s,E=function(e,r){const[n,t]=i.useMemo(()=>[r=>e.registerDecoratorListener(r),()=>e.getDecorators()],[e]),o=i.useSyncExternalStore(n,t,t);return i.useMemo(()=>{const n=[];for(const t in o){const s=e.getElementByKey(t);if(null!==s){const l=a.jsx(r,{onError:r=>{e._onError(r)},children:a.jsx(i.Suspense,{fallback:null,children:o[t]})});n.push(c.createPortal(l,s,t))}}return n},[r,o,e])}(n,d),m=i.useMemo(()=>t.map((e,r)=>a.jsx(d,{onError:e=>{n._onError(e)},children:a.jsx(i.Suspense,{fallback:null,children:e})},r)),[d]);return a.jsx(o.LexicalComposerContext.Provider,{value:r,children:a.jsxs(l,{context:r,contentEditable:u,children:[x,m,E]})})}}function l({contentEditable:e,children:r}){return a.jsxs(a.Fragment,{children:[e,r]})}const d={EditorChildrenComponent:l,ErrorBoundary:r.LexicalErrorBoundary,contentEditable:a.jsx(e.ContentEditable,{}),decorators:[]},u=t.defineExtension({build(e,r,t){t.getPeer(n.ReactProviderExtension.name)||function(e,...r){const n=new URL("https://lexical.dev/docs/error"),t=new URLSearchParams;t.append("code",e);for(const e of r)t.append("v",e);throw n.search=t.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(321,[...t.getDirectDependentNames()].join(" "));const o=[e,{getTheme:()=>e._config.theme}];return{Component:s(r,o),context:o}},config:d,mergeConfig(e,r){const n=t.shallowMergeConfig(e,r);return r.decorators&&(n.decorators=r.decorators.length>0?[...e.decorators,...r.decorators]:e.decorators),n},name:"@ekz/lexical-react/React",peerDependencies:[t.declarePeerDependency(n.ReactProviderExtension.name)]});exports.DefaultEditorChildrenComponent=l,exports.ReactExtension=u;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ */
8
+
9
+ import{ContentEditable as e}from"@ekz/lexical-react/LexicalContentEditable";import{LexicalErrorBoundary as r}from"@ekz/lexical-react/LexicalErrorBoundary";import{ReactProviderExtension as o}from"@ekz/lexical-react/ReactProviderExtension";import{defineExtension as t,declarePeerDependency as n,shallowMergeConfig as c}from"@ekz/lexical";import{LexicalComposerContext as i}from"@ekz/lexical-react/LexicalComposerContext";import{useMemo as a,useSyncExternalStore as l,Suspense as d}from"react";import{createPortal as s}from"react-dom";import{jsx as m,jsxs as f,Fragment as u}from"react/jsx-runtime";function p(e,r){const[o]=r,t=e.decorators.map(e=>"function"==typeof e?m(e,{context:r}):e);return function(n){const{EditorChildrenComponent:c=e.EditorChildrenComponent,ErrorBoundary:u=e.ErrorBoundary,contentEditable:p=e.contentEditable,children:h}=n,E=function(e,r){const[o,t]=a(()=>[r=>e.registerDecoratorListener(r),()=>e.getDecorators()],[e]),n=l(o,t,t);return a(()=>{const o=[];for(const t in n){const c=e.getElementByKey(t);if(null!==c){const i=m(r,{onError:r=>{e._onError(r)},children:m(d,{fallback:null,children:n[t]})});o.push(s(i,c,t))}}return o},[r,n,e])}(o,u),x=a(()=>t.map((e,r)=>m(u,{onError:e=>{o._onError(e)},children:m(d,{fallback:null,children:e})},r)),[u]);return m(i.Provider,{value:r,children:f(c,{context:r,contentEditable:p,children:[h,x,E]})})}}function h({contentEditable:e,children:r}){return f(u,{children:[e,r]})}const E={EditorChildrenComponent:h,ErrorBoundary:r,contentEditable:m(e,{}),decorators:[]},x=t({build(e,r,t){t.getPeer(o.name)||function(e,...r){const o=new URL("https://lexical.dev/docs/error"),t=new URLSearchParams;t.append("code",e);for(const e of r)t.append("v",e);throw o.search=t.toString(),Error(`Minified Lexical error #${e}; visit ${o.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(321,[...t.getDirectDependentNames()].join(" "));const n=[e,{getTheme:()=>e._config.theme}];return{Component:p(r,n),context:n}},config:E,mergeConfig(e,r){const o=c(e,r);return r.decorators&&(o.decorators=r.decorators.length>0?[...e.decorators,...r.decorators]:e.decorators),o},name:"@ekz/lexical-react/React",peerDependencies:[n(o.name)]});export{h as DefaultEditorChildrenComponent,x as ReactExtension};