@payloadcms/richtext-lexical 4.0.0-internal.688c4d0 → 4.0.0-internal.77191e5

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 (659) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/exports/client/Field-QKAL7KMC.js +2 -0
  3. package/dist/exports/client/Field-QKAL7KMC.js.map +7 -0
  4. package/dist/exports/client/bundled.css +1 -1
  5. package/dist/exports/client/chunk-43E5QYAA.js +2 -0
  6. package/dist/exports/client/chunk-43E5QYAA.js.map +7 -0
  7. package/dist/exports/client/chunk-LN6VX25I.js +2 -0
  8. package/dist/exports/client/chunk-LN6VX25I.js.map +7 -0
  9. package/dist/exports/client/component-D5QLYS7W.js +2 -0
  10. package/dist/exports/client/component-D5QLYS7W.js.map +7 -0
  11. package/dist/exports/client/index.d.ts +1 -3
  12. package/dist/exports/client/index.d.ts.map +1 -1
  13. package/dist/exports/client/index.js +26 -27
  14. package/dist/exports/client/index.js.map +4 -4
  15. package/dist/features/align/client/toolbarAlignGroup.d.ts.map +1 -1
  16. package/dist/features/blockquote/client/index.js +2 -2
  17. package/dist/features/blockquote/client/index.js.map +1 -1
  18. package/dist/features/blockquote/server/index.js +2 -2
  19. package/dist/features/blockquote/server/index.js.map +1 -1
  20. package/dist/features/blocks/client/component/index.css +2 -2
  21. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.d.ts.map +1 -1
  22. package/dist/features/blocks/client/componentInline/index.css +8 -8
  23. package/dist/features/blocks/client/getBlockImageComponent.d.ts +1 -1
  24. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts +1 -1
  25. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts.map +1 -1
  26. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +1 -1
  27. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
  28. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts +1 -1
  29. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts.map +1 -1
  30. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +5 -2
  31. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
  32. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts +1 -2
  33. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts.map +1 -1
  34. package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
  35. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  36. package/dist/features/blocks/client/nodes/InlineBlocksNode.d.ts.map +1 -1
  37. package/dist/features/blocks/premade/CodeBlock/Component/Collapse/index.css +1 -1
  38. package/dist/features/blocks/premade/CodeBlock/Component/FloatingCollapse/index.css +2 -4
  39. package/dist/features/blocks/premade/CodeBlock/Component/index.css +5 -5
  40. package/dist/features/blocks/server/graphQLPopulationPromise.d.ts.map +1 -1
  41. package/dist/features/blocks/server/index.js +2 -2
  42. package/dist/features/blocks/server/index.js.map +1 -1
  43. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts +1 -1
  44. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts.map +1 -1
  45. package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
  46. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  47. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  48. package/dist/features/blocks/server/schema.d.ts.map +1 -1
  49. package/dist/features/blocks/server/schema.js +3 -2
  50. package/dist/features/blocks/server/schema.js.map +1 -1
  51. package/dist/features/blocks/server/validate.d.ts.map +1 -1
  52. package/dist/features/converters/htmlToLexical/index.d.ts.map +1 -1
  53. package/dist/features/converters/lexicalToHtml/async/converters/heading.js +1 -1
  54. package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
  55. package/dist/features/converters/lexicalToHtml/async/converters/list.d.ts.map +1 -1
  56. package/dist/features/converters/lexicalToHtml/async/converters/list.js +4 -3
  57. package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
  58. package/dist/features/converters/lexicalToHtml/shared/cssColors.d.ts.map +1 -1
  59. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.d.ts.map +1 -1
  60. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js +3 -2
  61. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
  62. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js +1 -1
  63. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
  64. package/dist/features/converters/lexicalToHtml/sync/converters/list.d.ts.map +1 -1
  65. package/dist/features/converters/lexicalToHtml/sync/converters/list.js +4 -3
  66. package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
  67. package/dist/features/converters/lexicalToJSX/converter/converters/heading.d.ts.map +1 -1
  68. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js +2 -1
  69. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
  70. package/dist/features/converters/lexicalToJSX/converter/converters/list.d.ts.map +1 -1
  71. package/dist/features/converters/lexicalToJSX/converter/converters/list.js +2 -1
  72. package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
  73. package/dist/features/converters/lexicalToMarkdown/index.d.ts.map +1 -1
  74. package/dist/features/converters/lexicalToMarkdown/index.js +1 -1
  75. package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
  76. package/dist/features/converters/markdownToLexical/index.d.ts.map +1 -1
  77. package/dist/features/converters/markdownToLexical/index.js +5 -2
  78. package/dist/features/converters/markdownToLexical/index.js.map +1 -1
  79. package/dist/features/debug/jsxConverter/client/plugin/style.css +2 -2
  80. package/dist/features/debug/testRecorder/client/plugin/index.css +0 -1
  81. package/dist/features/format/bold/feature.client.js +1 -1
  82. package/dist/features/format/bold/feature.client.js.map +1 -1
  83. package/dist/features/format/bold/feature.server.d.ts.map +1 -1
  84. package/dist/features/format/bold/feature.server.js +1 -1
  85. package/dist/features/format/bold/feature.server.js.map +1 -1
  86. package/dist/features/format/inlineCode/feature.client.js +1 -1
  87. package/dist/features/format/inlineCode/feature.client.js.map +1 -1
  88. package/dist/features/format/inlineCode/feature.server.d.ts.map +1 -1
  89. package/dist/features/format/inlineCode/feature.server.js +1 -1
  90. package/dist/features/format/inlineCode/feature.server.js.map +1 -1
  91. package/dist/features/format/italic/feature.client.js +1 -1
  92. package/dist/features/format/italic/feature.client.js.map +1 -1
  93. package/dist/features/format/italic/feature.server.d.ts.map +1 -1
  94. package/dist/features/format/italic/feature.server.js +1 -1
  95. package/dist/features/format/italic/feature.server.js.map +1 -1
  96. package/dist/features/format/shared/toolbarFormatGroup.d.ts.map +1 -1
  97. package/dist/features/format/strikethrough/feature.client.js +1 -1
  98. package/dist/features/format/strikethrough/feature.client.js.map +1 -1
  99. package/dist/features/format/strikethrough/feature.server.d.ts.map +1 -1
  100. package/dist/features/format/strikethrough/feature.server.js +1 -1
  101. package/dist/features/format/strikethrough/feature.server.js.map +1 -1
  102. package/dist/features/heading/client/index.js +2 -2
  103. package/dist/features/heading/client/index.js.map +1 -1
  104. package/dist/features/heading/constants.d.ts +2 -0
  105. package/dist/features/heading/constants.d.ts.map +1 -0
  106. package/dist/features/heading/constants.js +2 -0
  107. package/dist/features/heading/constants.js.map +1 -0
  108. package/dist/features/heading/markdownTransformer.d.ts +2 -2
  109. package/dist/features/heading/markdownTransformer.d.ts.map +1 -1
  110. package/dist/features/heading/markdownTransformer.js +6 -19
  111. package/dist/features/heading/markdownTransformer.js.map +1 -1
  112. package/dist/features/heading/server/index.d.ts.map +1 -1
  113. package/dist/features/heading/server/index.js +7 -3
  114. package/dist/features/heading/server/index.js.map +1 -1
  115. package/dist/features/heading/server/schema.d.ts.map +1 -1
  116. package/dist/features/heading/server/validate.d.ts +6 -0
  117. package/dist/features/heading/server/validate.d.ts.map +1 -0
  118. package/dist/features/heading/server/validate.js +15 -0
  119. package/dist/features/heading/server/validate.js.map +1 -0
  120. package/dist/features/horizontalRule/client/index.js +2 -2
  121. package/dist/features/horizontalRule/client/index.js.map +1 -1
  122. package/dist/features/horizontalRule/client/markdownTransformer.d.ts +2 -2
  123. package/dist/features/horizontalRule/client/markdownTransformer.d.ts.map +1 -1
  124. package/dist/features/horizontalRule/client/markdownTransformer.js +1 -1
  125. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  126. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts +1 -1
  127. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
  128. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +1 -1
  129. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  130. package/dist/features/horizontalRule/client/plugin/index.css +2 -2
  131. package/dist/features/horizontalRule/server/index.js +2 -2
  132. package/dist/features/horizontalRule/server/index.js.map +1 -1
  133. package/dist/features/horizontalRule/server/markdownTransformer.d.ts +2 -2
  134. package/dist/features/horizontalRule/server/markdownTransformer.d.ts.map +1 -1
  135. package/dist/features/horizontalRule/server/markdownTransformer.js +1 -1
  136. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  137. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts +1 -1
  138. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
  139. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +1 -1
  140. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  141. package/dist/features/indent/client/toolbarIndentGroup.d.ts.map +1 -1
  142. package/dist/features/link/client/index.js +2 -2
  143. package/dist/features/link/client/index.js.map +1 -1
  144. package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
  145. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +3 -3
  146. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  147. package/dist/features/link/client/plugins/floatingLinkEditor/index.css +7 -12
  148. package/dist/features/link/markdownTransformer.d.ts +4 -4
  149. package/dist/features/link/markdownTransformer.d.ts.map +1 -1
  150. package/dist/features/link/markdownTransformer.js +2 -2
  151. package/dist/features/link/markdownTransformer.js.map +1 -1
  152. package/dist/features/link/nodes/AutoLinkNode.d.ts +1 -1
  153. package/dist/features/link/nodes/AutoLinkNode.d.ts.map +1 -1
  154. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  155. package/dist/features/link/nodes/LinkNode.d.ts +1 -1
  156. package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
  157. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  158. package/dist/features/link/server/baseFields.d.ts.map +1 -1
  159. package/dist/features/link/server/baseFields.js.map +1 -1
  160. package/dist/features/link/server/graphQLPopulationPromise.d.ts.map +1 -1
  161. package/dist/features/link/server/index.js +4 -4
  162. package/dist/features/link/server/index.js.map +1 -1
  163. package/dist/features/link/server/schema.d.ts.map +1 -1
  164. package/dist/features/link/server/schema.js +4 -2
  165. package/dist/features/link/server/schema.js.map +1 -1
  166. package/dist/features/link/server/validate.d.ts.map +1 -1
  167. package/dist/features/lists/checklist/client/index.js +1 -1
  168. package/dist/features/lists/checklist/client/index.js.map +1 -1
  169. package/dist/features/lists/checklist/server/index.d.ts.map +1 -1
  170. package/dist/features/lists/checklist/server/index.js +6 -3
  171. package/dist/features/lists/checklist/server/index.js.map +1 -1
  172. package/dist/features/lists/orderedList/client/index.js +1 -1
  173. package/dist/features/lists/orderedList/client/index.js.map +1 -1
  174. package/dist/features/lists/orderedList/server/index.d.ts.map +1 -1
  175. package/dist/features/lists/orderedList/server/index.js +6 -3
  176. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  177. package/dist/features/lists/shared/constants.d.ts +2 -0
  178. package/dist/features/lists/shared/constants.d.ts.map +1 -0
  179. package/dist/features/lists/shared/constants.js +2 -0
  180. package/dist/features/lists/shared/constants.js.map +1 -0
  181. package/dist/features/lists/shared/validate.d.ts +5 -0
  182. package/dist/features/lists/shared/validate.d.ts.map +1 -0
  183. package/dist/features/lists/shared/validate.js +15 -0
  184. package/dist/features/lists/shared/validate.js.map +1 -0
  185. package/dist/features/lists/unorderedList/client/index.js +1 -1
  186. package/dist/features/lists/unorderedList/client/index.js.map +1 -1
  187. package/dist/features/lists/unorderedList/server/index.d.ts.map +1 -1
  188. package/dist/features/lists/unorderedList/server/index.js +6 -3
  189. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  190. package/dist/features/relationship/client/drawer/index.d.ts.map +1 -1
  191. package/dist/features/relationship/client/index.d.ts +2 -2
  192. package/dist/features/relationship/client/index.d.ts.map +1 -1
  193. package/dist/features/relationship/client/index.js.map +1 -1
  194. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
  195. package/dist/features/relationship/client/plugins/index.d.ts +2 -2
  196. package/dist/features/relationship/client/plugins/index.d.ts.map +1 -1
  197. package/dist/features/relationship/client/plugins/index.js +27 -31
  198. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  199. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts +2 -4
  200. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts.map +1 -1
  201. package/dist/features/relationship/client/utils/useEnabledRelationships.js +53 -20
  202. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  203. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts +2 -2
  204. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts.map +1 -1
  205. package/dist/features/relationship/server/graphQLPopulationPromise.js +2 -2
  206. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  207. package/dist/features/relationship/server/index.d.ts +8 -1
  208. package/dist/features/relationship/server/index.d.ts.map +1 -1
  209. package/dist/features/relationship/server/index.js +28 -11
  210. package/dist/features/relationship/server/index.js.map +1 -1
  211. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  212. package/dist/features/relationship/server/schema.d.ts +5 -5
  213. package/dist/features/relationship/server/schema.d.ts.map +1 -1
  214. package/dist/features/relationship/server/schema.js +27 -15
  215. package/dist/features/relationship/server/schema.js.map +1 -1
  216. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts +1 -6
  217. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts.map +1 -1
  218. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js +1 -5
  219. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js.map +1 -1
  220. package/dist/features/shared/toolbar/addDropdownGroup.d.ts.map +1 -1
  221. package/dist/features/shared/toolbar/featureButtonsGroup.d.ts.map +1 -1
  222. package/dist/features/shared/toolbar/textDropdownGroup.d.ts.map +1 -1
  223. package/dist/features/table/client/index.d.ts.map +1 -0
  224. package/dist/features/{experimental_table → table}/client/index.js +2 -2
  225. package/dist/features/table/client/index.js.map +1 -0
  226. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts +8 -0
  227. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts.map +1 -0
  228. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js +19 -0
  229. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js.map +1 -0
  230. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.d.ts.map +1 -0
  231. package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.js +16 -43
  232. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js.map +1 -0
  233. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.d.ts.map +1 -0
  234. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js.map +1 -0
  235. package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +1 -0
  236. package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -0
  237. package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +1 -0
  238. package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.js.map +1 -0
  239. package/dist/features/table/client/plugins/TablePlugin/index.d.ts.map +1 -0
  240. package/dist/features/table/client/plugins/TablePlugin/index.js.map +1 -0
  241. package/dist/features/table/client/utils/debounce.d.ts.map +1 -0
  242. package/dist/features/table/client/utils/debounce.js.map +1 -0
  243. package/dist/features/table/client/utils/useDebounce.d.ts.map +1 -0
  244. package/dist/features/table/client/utils/useDebounce.js.map +1 -0
  245. package/dist/features/table/markdownTransformer.d.ts +5 -0
  246. package/dist/features/table/markdownTransformer.d.ts.map +1 -0
  247. package/dist/features/{experimental_table → table}/markdownTransformer.js +6 -3
  248. package/dist/features/table/markdownTransformer.js.map +1 -0
  249. package/dist/features/table/server/index.d.ts +3 -0
  250. package/dist/features/table/server/index.d.ts.map +1 -0
  251. package/dist/features/{experimental_table → table}/server/index.js +6 -6
  252. package/dist/features/table/server/index.js.map +1 -0
  253. package/dist/features/table/server/schema.d.ts.map +1 -0
  254. package/dist/features/table/server/schema.js.map +1 -0
  255. package/dist/features/textState/feature.client.js +1 -1
  256. package/dist/features/textState/feature.client.js.map +1 -1
  257. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts +8 -0
  258. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts.map +1 -0
  259. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js +80 -0
  260. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js.map +1 -0
  261. package/dist/features/toolbars/fixed/client/Toolbar/index.css +80 -8
  262. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
  263. package/dist/features/toolbars/fixed/client/Toolbar/index.js +4 -1
  264. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  265. package/dist/features/toolbars/inline/client/Toolbar/index.css +2 -14
  266. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  267. package/dist/features/toolbars/shared/ToolbarDropdown/index.css +19 -24
  268. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  269. package/dist/features/toolbars/shared/useToolbarStates.d.ts.map +1 -1
  270. package/dist/features/toolbars/shared/useToolbarStates.js +3 -1
  271. package/dist/features/toolbars/shared/useToolbarStates.js.map +1 -1
  272. package/dist/features/typesClient.d.ts +1 -1
  273. package/dist/features/typesClient.d.ts.map +1 -1
  274. package/dist/features/typesClient.js.map +1 -1
  275. package/dist/features/typesServer.d.ts +3 -3
  276. package/dist/features/typesServer.d.ts.map +1 -1
  277. package/dist/features/typesServer.js.map +1 -1
  278. package/dist/features/upload/client/component/index.css +9 -9
  279. package/dist/features/upload/client/component/index.js +2 -1
  280. package/dist/features/upload/client/component/index.js.map +1 -1
  281. package/dist/features/upload/client/drawer/index.d.ts.map +1 -1
  282. package/dist/features/upload/client/index.d.ts +3 -2
  283. package/dist/features/upload/client/index.d.ts.map +1 -1
  284. package/dist/features/upload/client/index.js.map +1 -1
  285. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  286. package/dist/features/upload/client/plugin/index.d.ts.map +1 -1
  287. package/dist/features/upload/client/plugin/index.js +50 -55
  288. package/dist/features/upload/client/plugin/index.js.map +1 -1
  289. package/dist/features/upload/server/graphQLPopulationPromise.d.ts +2 -2
  290. package/dist/features/upload/server/graphQLPopulationPromise.d.ts.map +1 -1
  291. package/dist/features/upload/server/graphQLPopulationPromise.js +1 -1
  292. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  293. package/dist/features/upload/server/index.d.ts +6 -2
  294. package/dist/features/upload/server/index.d.ts.map +1 -1
  295. package/dist/features/upload/server/index.js +22 -18
  296. package/dist/features/upload/server/index.js.map +1 -1
  297. package/dist/features/upload/server/markdownTransformer.d.ts +2 -2
  298. package/dist/features/upload/server/markdownTransformer.d.ts.map +1 -1
  299. package/dist/features/upload/server/markdownTransformer.js +1 -1
  300. package/dist/features/upload/server/markdownTransformer.js.map +1 -1
  301. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  302. package/dist/features/upload/server/schema.d.ts +6 -6
  303. package/dist/features/upload/server/schema.d.ts.map +1 -1
  304. package/dist/features/upload/server/schema.js +30 -14
  305. package/dist/features/upload/server/schema.js.map +1 -1
  306. package/dist/features/upload/server/validate.d.ts +2 -2
  307. package/dist/features/upload/server/validate.d.ts.map +1 -1
  308. package/dist/features/upload/server/validate.js +3 -0
  309. package/dist/features/upload/server/validate.js.map +1 -1
  310. package/dist/field/Diff/converters/listitem/index.d.ts.map +1 -1
  311. package/dist/field/Diff/converters/listitem/index.js +2 -1
  312. package/dist/field/Diff/converters/listitem/index.js.map +1 -1
  313. package/dist/field/Diff/converters/unknown/index.css +1 -1
  314. package/dist/field/Diff/index.d.ts.map +1 -1
  315. package/dist/field/Diff/index.js +1 -0
  316. package/dist/field/Diff/index.js.map +1 -1
  317. package/dist/field/Field.d.ts.map +1 -1
  318. package/dist/field/Field.js +18 -15
  319. package/dist/field/Field.js.map +1 -1
  320. package/dist/field/RenderLexical/index.d.ts +3 -1
  321. package/dist/field/RenderLexical/index.d.ts.map +1 -1
  322. package/dist/field/RenderLexical/index.js +23 -23
  323. package/dist/field/RenderLexical/index.js.map +1 -1
  324. package/dist/field/ViewSelector.css +1 -1
  325. package/dist/field/bundled.css +1 -1
  326. package/dist/field/index.css +7 -8
  327. package/dist/i18n.d.ts.map +1 -1
  328. package/dist/i18n.js +68 -0
  329. package/dist/i18n.js.map +1 -1
  330. package/dist/index.d.ts +3 -3
  331. package/dist/index.d.ts.map +1 -1
  332. package/dist/index.js +11 -54
  333. package/dist/index.js.map +1 -1
  334. package/dist/lexical/LexicalEditor.css +18 -18
  335. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  336. package/dist/lexical/LexicalEditor.js +2 -36
  337. package/dist/lexical/LexicalEditor.js.map +1 -1
  338. package/dist/lexical/LexicalProvider.d.ts.map +1 -1
  339. package/dist/lexical/LexicalProvider.js +7 -22
  340. package/dist/lexical/LexicalProvider.js.map +1 -1
  341. package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
  342. package/dist/lexical/config/client/sanitize.d.ts.map +1 -1
  343. package/dist/lexical/config/server/loader.d.ts +1 -1
  344. package/dist/lexical/config/server/loader.d.ts.map +1 -1
  345. package/dist/lexical/config/server/loader.js +2 -2
  346. package/dist/lexical/config/server/loader.js.map +1 -1
  347. package/dist/lexical/config/server/sanitize.d.ts +1 -1
  348. package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
  349. package/dist/lexical/config/server/sanitize.js +2 -2
  350. package/dist/lexical/config/server/sanitize.js.map +1 -1
  351. package/dist/lexical/plugins/DecoratorPlugin/index.css +1 -1
  352. package/dist/lexical/plugins/InsertParagraphAtEnd/index.css +16 -24
  353. package/dist/lexical/plugins/InsertParagraphAtEnd/index.d.ts.map +1 -1
  354. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js +27 -14
  355. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
  356. package/dist/lexical/plugins/MarkdownShortcut/index.d.ts.map +1 -1
  357. package/dist/lexical/plugins/MarkdownShortcut/index.js +1 -1
  358. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  359. package/dist/lexical/plugins/NodeViewOverridePlugin/index.d.ts.map +1 -1
  360. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js +21 -0
  361. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -1
  362. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +0 -1
  363. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -1
  364. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +1 -20
  365. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  366. package/dist/lexical/plugins/SlashMenu/index.css +1 -6
  367. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.css +1 -1
  368. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
  369. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +4 -3
  370. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +1 -1
  371. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  372. package/dist/lexical/plugins/handles/utils/calculateDistanceFromScrollerElem.d.ts.map +1 -1
  373. package/dist/lexical/theme/EditorTheme.css +18 -19
  374. package/dist/lexical/ui/ContentEditable.css +22 -17
  375. package/dist/lexical/ui/icons/H3/index.d.ts.map +1 -1
  376. package/dist/lexical/ui/icons/H3/index.js +13 -6
  377. package/dist/lexical/ui/icons/H3/index.js.map +1 -1
  378. package/dist/lexical/ui/icons/H4/index.d.ts.map +1 -1
  379. package/dist/lexical/ui/icons/H4/index.js +13 -6
  380. package/dist/lexical/ui/icons/H4/index.js.map +1 -1
  381. package/dist/lexical/ui/icons/H5/index.d.ts.map +1 -1
  382. package/dist/lexical/ui/icons/H5/index.js +13 -6
  383. package/dist/lexical/ui/icons/H5/index.js.map +1 -1
  384. package/dist/lexical/ui/icons/H6/index.d.ts.map +1 -1
  385. package/dist/lexical/ui/icons/H6/index.js +13 -6
  386. package/dist/lexical/ui/icons/H6/index.js.map +1 -1
  387. package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts +17 -0
  388. package/dist/lexical/utils/markdown/convertFromMarkdownString.d.ts.map +1 -0
  389. package/dist/lexical/utils/markdown/convertFromMarkdownString.js +27 -0
  390. package/dist/lexical/utils/markdown/convertFromMarkdownString.js.map +1 -0
  391. package/dist/lexical/utils/markdown/createBlockNode.d.ts +2 -2
  392. package/dist/lexical/utils/markdown/createBlockNode.d.ts.map +1 -1
  393. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  394. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts +25 -0
  395. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts.map +1 -0
  396. package/dist/lexical/utils/markdown/normalizeMarkdown.js +91 -0
  397. package/dist/lexical/utils/markdown/normalizeMarkdown.js.map +1 -0
  398. package/dist/lexical/utils/nodeFormat.d.ts.map +1 -1
  399. package/dist/lexical/utils/point.d.ts.map +1 -1
  400. package/dist/lexical/utils/rect.d.ts.map +1 -1
  401. package/dist/lexical-proxy/@lexical-markdown.d.ts +1 -1
  402. package/dist/lexical-proxy/@lexical-markdown.d.ts.map +1 -1
  403. package/dist/lexical-proxy/@lexical-markdown.js +1 -1
  404. package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
  405. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts +2 -0
  406. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts.map +1 -0
  407. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js +2 -0
  408. package/dist/lexical-proxy/@lexical-react/ExtensionComponent.js.map +1 -0
  409. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts +2 -0
  410. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts.map +1 -0
  411. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js +2 -0
  412. package/dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js.map +1 -0
  413. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts +2 -0
  414. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts.map +1 -0
  415. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js +2 -0
  416. package/dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js.map +1 -0
  417. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts +2 -0
  418. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts.map +1 -0
  419. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js +2 -0
  420. package/dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js.map +1 -0
  421. package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts +2 -0
  422. package/dist/lexical-proxy/@lexical-react/ReactExtension.d.ts.map +1 -0
  423. package/dist/lexical-proxy/@lexical-react/ReactExtension.js +2 -0
  424. package/dist/lexical-proxy/@lexical-react/ReactExtension.js.map +1 -0
  425. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts +2 -0
  426. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts.map +1 -0
  427. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js +2 -0
  428. package/dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js.map +1 -0
  429. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts +2 -0
  430. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts.map +1 -0
  431. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js +2 -0
  432. package/dist/lexical-proxy/@lexical-react/ReactProviderExtension.js.map +1 -0
  433. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts +2 -0
  434. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts.map +1 -0
  435. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js +2 -0
  436. package/dist/lexical-proxy/@lexical-react/TreeViewExtension.js.map +1 -0
  437. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts +2 -0
  438. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts.map +1 -0
  439. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js +2 -0
  440. package/dist/lexical-proxy/@lexical-react/useExtensionComponent.js.map +1 -0
  441. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts +2 -0
  442. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts.map +1 -0
  443. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js +2 -0
  444. package/dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js.map +1 -0
  445. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts +2 -0
  446. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts.map +1 -0
  447. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js +2 -0
  448. package/dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js.map +1 -0
  449. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts +2 -0
  450. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts.map +1 -0
  451. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js +2 -0
  452. package/dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js.map +1 -0
  453. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts +2 -0
  454. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts.map +1 -0
  455. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js +2 -0
  456. package/dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js.map +1 -0
  457. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts +2 -0
  458. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts.map +1 -0
  459. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js +2 -0
  460. package/dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js.map +1 -0
  461. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts +2 -0
  462. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts.map +1 -0
  463. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js +2 -0
  464. package/dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js.map +1 -0
  465. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts.map +1 -1
  466. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.d.ts.map +1 -1
  467. package/dist/types/index.d.ts +1 -1
  468. package/dist/types/index.d.ts.map +1 -1
  469. package/dist/types/index.js.map +1 -1
  470. package/dist/types/jsonSchemaHelpers.d.ts.map +1 -1
  471. package/dist/types/nodeTypes.d.ts +1 -1
  472. package/dist/types/nodeTypes.d.ts.map +1 -1
  473. package/dist/types/nodeTypes.js.map +1 -1
  474. package/dist/types/schema.d.ts.map +1 -1
  475. package/dist/types/schema.js +12 -5
  476. package/dist/types/schema.js.map +1 -1
  477. package/dist/utilities/applyBaseFilterToFields.d.ts.map +1 -1
  478. package/dist/utilities/applyBaseFilterToFields.js.map +1 -1
  479. package/dist/utilities/createServerFeature.d.ts +1 -1
  480. package/dist/utilities/createServerFeature.d.ts.map +1 -1
  481. package/dist/utilities/createServerFeature.js +2 -2
  482. package/dist/utilities/createServerFeature.js.map +1 -1
  483. package/dist/utilities/editorConfigFactory.d.ts +6 -6
  484. package/dist/utilities/editorConfigFactory.d.ts.map +1 -1
  485. package/dist/utilities/editorConfigFactory.js +9 -9
  486. package/dist/utilities/editorConfigFactory.js.map +1 -1
  487. package/dist/utilities/fieldsDrawer/index.css +0 -4
  488. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts +1 -1
  489. package/dist/utilities/fieldsDrawer/useDrawerSubmit.d.ts.map +1 -1
  490. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.d.ts.map +1 -1
  491. package/dist/utilities/fieldsDrawer/useLexicalDrawer.d.ts.map +1 -1
  492. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.d.ts.map +1 -1
  493. package/dist/utilities/generateImportMap.d.ts +1 -1
  494. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  495. package/dist/utilities/generateImportMap.js +3 -7
  496. package/dist/utilities/generateImportMap.js.map +1 -1
  497. package/dist/utilities/generateSchemaMap.d.ts +1 -1
  498. package/dist/utilities/generateSchemaMap.d.ts.map +1 -1
  499. package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts +2 -2
  500. package/dist/utilities/getDefaultSanitizedEditorConfig.d.ts.map +1 -1
  501. package/dist/utilities/getDefaultSanitizedEditorConfig.js +6 -17
  502. package/dist/utilities/getDefaultSanitizedEditorConfig.js.map +1 -1
  503. package/dist/utilities/recurseNodeTree.d.ts.map +1 -1
  504. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts.map +1 -1
  505. package/dist/utilities/useLexicalFeature.d.ts.map +1 -1
  506. package/dist/validate/index.d.ts.map +1 -1
  507. package/package.json +97 -29
  508. package/dist/@types/assets.d.js +0 -2
  509. package/dist/@types/assets.d.js.map +0 -1
  510. package/dist/dependencyChecker.spec.js +0 -16
  511. package/dist/dependencyChecker.spec.js.map +0 -1
  512. package/dist/exports/client/Field-VYBSMSRY.js +0 -2
  513. package/dist/exports/client/Field-VYBSMSRY.js.map +0 -7
  514. package/dist/exports/client/chunk-LH634DPU.js +0 -12
  515. package/dist/exports/client/chunk-LH634DPU.js.map +0 -7
  516. package/dist/exports/client/chunk-UD4DQ4AK.js +0 -2
  517. package/dist/exports/client/chunk-UD4DQ4AK.js.map +0 -7
  518. package/dist/exports/client/component-PHZQBOJE.js +0 -2
  519. package/dist/exports/client/component-PHZQBOJE.js.map +0 -7
  520. package/dist/exports/server/rsc.browser.d.ts +0 -11
  521. package/dist/exports/server/rsc.browser.d.ts.map +0 -1
  522. package/dist/exports/server/rsc.browser.js +0 -10
  523. package/dist/exports/server/rsc.browser.js.map +0 -1
  524. package/dist/features/blockquote/markdownTransformer.d.ts +0 -3
  525. package/dist/features/blockquote/markdownTransformer.d.ts.map +0 -1
  526. package/dist/features/blockquote/markdownTransformer.js +0 -33
  527. package/dist/features/blockquote/markdownTransformer.js.map +0 -1
  528. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js +0 -180
  529. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +0 -1
  530. package/dist/features/experimental_table/client/index.d.ts.map +0 -1
  531. package/dist/features/experimental_table/client/index.js.map +0 -1
  532. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.d.ts.map +0 -1
  533. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +0 -1
  534. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.d.ts.map +0 -1
  535. package/dist/features/experimental_table/client/plugins/TableCellResizerPlugin/index.js.map +0 -1
  536. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.d.ts.map +0 -1
  537. package/dist/features/experimental_table/client/plugins/TableHoverActionsPlugin/index.js.map +0 -1
  538. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.d.ts.map +0 -1
  539. package/dist/features/experimental_table/client/plugins/TablePlugin/TableGridPopup/index.js.map +0 -1
  540. package/dist/features/experimental_table/client/plugins/TablePlugin/index.d.ts.map +0 -1
  541. package/dist/features/experimental_table/client/plugins/TablePlugin/index.js.map +0 -1
  542. package/dist/features/experimental_table/client/utils/debounce.d.ts.map +0 -1
  543. package/dist/features/experimental_table/client/utils/debounce.js.map +0 -1
  544. package/dist/features/experimental_table/client/utils/useDebounce.d.ts.map +0 -1
  545. package/dist/features/experimental_table/client/utils/useDebounce.js.map +0 -1
  546. package/dist/features/experimental_table/markdownTransformer.d.ts +0 -5
  547. package/dist/features/experimental_table/markdownTransformer.d.ts.map +0 -1
  548. package/dist/features/experimental_table/markdownTransformer.js.map +0 -1
  549. package/dist/features/experimental_table/server/index.d.ts +0 -3
  550. package/dist/features/experimental_table/server/index.d.ts.map +0 -1
  551. package/dist/features/experimental_table/server/index.js.map +0 -1
  552. package/dist/features/experimental_table/server/schema.d.ts.map +0 -1
  553. package/dist/features/experimental_table/server/schema.js.map +0 -1
  554. package/dist/features/format/bold/markdownTransformers.d.ts +0 -6
  555. package/dist/features/format/bold/markdownTransformers.d.ts.map +0 -1
  556. package/dist/features/format/bold/markdownTransformers.js +0 -23
  557. package/dist/features/format/bold/markdownTransformers.js.map +0 -1
  558. package/dist/features/format/inlineCode/markdownTransformers.d.ts +0 -3
  559. package/dist/features/format/inlineCode/markdownTransformers.d.ts.map +0 -1
  560. package/dist/features/format/inlineCode/markdownTransformers.js +0 -6
  561. package/dist/features/format/inlineCode/markdownTransformers.js.map +0 -1
  562. package/dist/features/format/italic/markdownTransformers.d.ts +0 -4
  563. package/dist/features/format/italic/markdownTransformers.d.ts.map +0 -1
  564. package/dist/features/format/italic/markdownTransformers.js +0 -12
  565. package/dist/features/format/italic/markdownTransformers.js.map +0 -1
  566. package/dist/features/format/strikethrough/markdownTransformers.d.ts +0 -3
  567. package/dist/features/format/strikethrough/markdownTransformers.d.ts.map +0 -1
  568. package/dist/features/format/strikethrough/markdownTransformers.js +0 -6
  569. package/dist/features/format/strikethrough/markdownTransformers.js.map +0 -1
  570. package/dist/features/link/markdownTransformer.spec.js +0 -195
  571. package/dist/features/link/markdownTransformer.spec.js.map +0 -1
  572. package/dist/features/lists/checklist/markdownTransformers.d.ts +0 -3
  573. package/dist/features/lists/checklist/markdownTransformers.d.ts.map +0 -1
  574. package/dist/features/lists/checklist/markdownTransformers.js +0 -12
  575. package/dist/features/lists/checklist/markdownTransformers.js.map +0 -1
  576. package/dist/features/lists/orderedList/markdownTransformer.d.ts +0 -3
  577. package/dist/features/lists/orderedList/markdownTransformer.d.ts.map +0 -1
  578. package/dist/features/lists/orderedList/markdownTransformer.js +0 -12
  579. package/dist/features/lists/orderedList/markdownTransformer.js.map +0 -1
  580. package/dist/features/lists/shared/markdown.d.ts +0 -6
  581. package/dist/features/lists/shared/markdown.d.ts.map +0 -1
  582. package/dist/features/lists/shared/markdown.js +0 -57
  583. package/dist/features/lists/shared/markdown.js.map +0 -1
  584. package/dist/features/lists/unorderedList/markdownTransformer.d.ts +0 -3
  585. package/dist/features/lists/unorderedList/markdownTransformer.d.ts.map +0 -1
  586. package/dist/features/lists/unorderedList/markdownTransformer.js +0 -12
  587. package/dist/features/lists/unorderedList/markdownTransformer.js.map +0 -1
  588. package/dist/field/clientEntry.d.ts +0 -29
  589. package/dist/field/clientEntry.d.ts.map +0 -1
  590. package/dist/field/clientEntry.js +0 -86
  591. package/dist/field/clientEntry.js.map +0 -1
  592. package/dist/lexical/utils/guard.d.ts +0 -5
  593. package/dist/lexical/utils/guard.d.ts.map +0 -1
  594. package/dist/lexical/utils/guard.js +0 -9
  595. package/dist/lexical/utils/guard.js.map +0 -1
  596. package/dist/lexical/utils/url.spec.js +0 -114
  597. package/dist/lexical/utils/url.spec.js.map +0 -1
  598. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts +0 -2
  599. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts.map +0 -1
  600. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +0 -2
  601. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +0 -1
  602. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts +0 -14
  603. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts.map +0 -1
  604. package/dist/packages/@lexical/markdown/MarkdownExport.js +0 -213
  605. package/dist/packages/@lexical/markdown/MarkdownExport.js.map +0 -1
  606. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts +0 -19
  607. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts.map +0 -1
  608. package/dist/packages/@lexical/markdown/MarkdownImport.js +0 -198
  609. package/dist/packages/@lexical/markdown/MarkdownImport.js.map +0 -1
  610. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts +0 -11
  611. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts.map +0 -1
  612. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +0 -304
  613. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +0 -1
  614. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts +0 -147
  615. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts.map +0 -1
  616. package/dist/packages/@lexical/markdown/MarkdownTransformers.js +0 -268
  617. package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +0 -1
  618. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts +0 -22
  619. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts.map +0 -1
  620. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +0 -91
  621. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +0 -1
  622. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts +0 -21
  623. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts.map +0 -1
  624. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +0 -54
  625. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +0 -1
  626. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts +0 -18
  627. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts.map +0 -1
  628. package/dist/packages/@lexical/markdown/importTextTransformers.js +0 -54
  629. package/dist/packages/@lexical/markdown/importTextTransformers.js.map +0 -1
  630. package/dist/packages/@lexical/markdown/index.d.ts +0 -29
  631. package/dist/packages/@lexical/markdown/index.d.ts.map +0 -1
  632. package/dist/packages/@lexical/markdown/index.js +0 -39
  633. package/dist/packages/@lexical/markdown/index.js.map +0 -1
  634. package/dist/packages/@lexical/markdown/utils.d.ts +0 -34
  635. package/dist/packages/@lexical/markdown/utils.d.ts.map +0 -1
  636. package/dist/packages/@lexical/markdown/utils.js +0 -267
  637. package/dist/packages/@lexical/markdown/utils.js.map +0 -1
  638. package/dist/utilities/jsx/jsx.spec.js +0 -178
  639. package/dist/utilities/jsx/jsx.spec.js.map +0 -1
  640. /package/dist/features/{experimental_table → table}/client/index.d.ts +0 -0
  641. /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.css +0 -0
  642. /package/dist/features/{experimental_table → table}/client/plugins/TableActionMenuPlugin/index.d.ts +0 -0
  643. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.css +0 -0
  644. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.d.ts +0 -0
  645. /package/dist/features/{experimental_table → table}/client/plugins/TableCellResizerPlugin/index.js +0 -0
  646. /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.d.ts +0 -0
  647. /package/dist/features/{experimental_table → table}/client/plugins/TableHoverActionsPlugin/index.js +0 -0
  648. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.css +0 -0
  649. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.d.ts +0 -0
  650. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/TableGridPopup/index.js +0 -0
  651. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.css +0 -0
  652. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.d.ts +0 -0
  653. /package/dist/features/{experimental_table → table}/client/plugins/TablePlugin/index.js +0 -0
  654. /package/dist/features/{experimental_table → table}/client/utils/debounce.d.ts +0 -0
  655. /package/dist/features/{experimental_table → table}/client/utils/debounce.js +0 -0
  656. /package/dist/features/{experimental_table → table}/client/utils/useDebounce.d.ts +0 -0
  657. /package/dist/features/{experimental_table → table}/client/utils/useDebounce.js +0 -0
  658. /package/dist/features/{experimental_table → table}/server/schema.d.ts +0 -0
  659. /package/dist/features/{experimental_table → table}/server/schema.js +0 -0
@@ -0,0 +1,80 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { useEffect } from 'react';
5
+ const scrollContainerSelector = '.fixed-toolbar__scroll';
6
+ // A single notch on a classic (non-trackpad) wheel mouse reports deltaMode 1 with a
7
+ // deltaY of only 1-3, so it must be scaled up to a pixel value that actually moves the scroll.
8
+ const PIXELS_PER_LINE = 40;
9
+ export function getHorizontalScrollDelta({
10
+ clientWidth,
11
+ deltaMode,
12
+ deltaY,
13
+ isRightToLeft
14
+ }) {
15
+ const deltaInPixels = deltaMode === 1 ? deltaY * PIXELS_PER_LINE : deltaMode === 2 ? deltaY * clientWidth : deltaY;
16
+ // scrollLeft moves toward the inline-start edge for a given positive delta in RTL,
17
+ // the opposite of LTR, so the delta must be negated to keep the scroll direction consistent.
18
+ return isRightToLeft ? -deltaInPixels : deltaInPixels;
19
+ }
20
+ function redirectVerticalWheelToHorizontalScroll(event) {
21
+ const isPrimarilyVerticalWheelInput = Math.abs(event.deltaY) > Math.abs(event.deltaX);
22
+ if (!isPrimarilyVerticalWheelInput) {
23
+ return;
24
+ }
25
+ const target = event.target;
26
+ if (!(target instanceof Element)) {
27
+ return;
28
+ }
29
+ const scrollContainer = target.closest(scrollContainerSelector);
30
+ if (!scrollContainer) {
31
+ return;
32
+ }
33
+ const canScrollHorizontally = scrollContainer.scrollWidth > scrollContainer.clientWidth;
34
+ if (!canScrollHorizontally) {
35
+ return;
36
+ }
37
+ event.preventDefault();
38
+ scrollContainer.scrollLeft += getHorizontalScrollDelta({
39
+ clientWidth: scrollContainer.clientWidth,
40
+ deltaMode: event.deltaMode,
41
+ deltaY: event.deltaY,
42
+ isRightToLeft: getComputedStyle(scrollContainer).direction === 'rtl'
43
+ });
44
+ }
45
+ // A single page can render many fixed toolbars at once (e.g. rich text nested several
46
+ // layers deep inside blocks), so this listener is delegated to `document` and shared
47
+ // across every toolbar instance instead of being attached per instance. A wheel listener
48
+ // that can call preventDefault() must be non-passive, and non-passive listeners make the
49
+ // browser treat their element as a "non-fast-scrollable region" that every scroll gesture
50
+ // on the page has to be checked against, even ones nowhere near it. Attaching one instance
51
+ // per toolbar would multiply that bookkeeping by however many toolbars happen to be on the
52
+ // page; a single delegated listener keeps that cost constant no matter how many there are.
53
+ let toolbarsListeningForWheelEvents = 0;
54
+ export function useRedirectVerticalWheelToHorizontalScroll() {
55
+ const $ = _c(1);
56
+ let t0;
57
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
58
+ t0 = [];
59
+ $[0] = t0;
60
+ } else {
61
+ t0 = $[0];
62
+ }
63
+ useEffect(_temp2, t0);
64
+ }
65
+ function _temp2() {
66
+ if (toolbarsListeningForWheelEvents === 0) {
67
+ document.addEventListener("wheel", redirectVerticalWheelToHorizontalScroll, {
68
+ passive: false
69
+ });
70
+ }
71
+ toolbarsListeningForWheelEvents = toolbarsListeningForWheelEvents + 1;
72
+ return _temp;
73
+ }
74
+ function _temp() {
75
+ toolbarsListeningForWheelEvents = toolbarsListeningForWheelEvents - 1;
76
+ if (toolbarsListeningForWheelEvents === 0) {
77
+ document.removeEventListener("wheel", redirectVerticalWheelToHorizontalScroll);
78
+ }
79
+ }
80
+ //# sourceMappingURL=horizontalWheelScroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontalWheelScroll.js","names":["c","_c","useEffect","scrollContainerSelector","PIXELS_PER_LINE","getHorizontalScrollDelta","clientWidth","deltaMode","deltaY","isRightToLeft","deltaInPixels","redirectVerticalWheelToHorizontalScroll","event","isPrimarilyVerticalWheelInput","Math","abs","deltaX","target","Element","scrollContainer","closest","canScrollHorizontally","scrollWidth","preventDefault","scrollLeft","getComputedStyle","direction","toolbarsListeningForWheelEvents","useRedirectVerticalWheelToHorizontalScroll","$","t0","Symbol","for","_temp2","document","addEventListener","passive","_temp","removeEventListener"],"sources":["../../../../../../src/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.ts"],"sourcesContent":["'use client'\nimport { useEffect } from 'react'\n\nconst scrollContainerSelector = '.fixed-toolbar__scroll'\n\n// A single notch on a classic (non-trackpad) wheel mouse reports deltaMode 1 with a\n// deltaY of only 1-3, so it must be scaled up to a pixel value that actually moves the scroll.\nconst PIXELS_PER_LINE = 40\n\nexport function getHorizontalScrollDelta({\n clientWidth,\n deltaMode,\n deltaY,\n isRightToLeft,\n}: {\n clientWidth: number\n deltaMode: number\n deltaY: number\n isRightToLeft: boolean\n}): number {\n const deltaInPixels =\n deltaMode === 1 ? deltaY * PIXELS_PER_LINE : deltaMode === 2 ? deltaY * clientWidth : deltaY\n\n // scrollLeft moves toward the inline-start edge for a given positive delta in RTL,\n // the opposite of LTR, so the delta must be negated to keep the scroll direction consistent.\n return isRightToLeft ? -deltaInPixels : deltaInPixels\n}\n\nfunction redirectVerticalWheelToHorizontalScroll(event: WheelEvent): void {\n const isPrimarilyVerticalWheelInput = Math.abs(event.deltaY) > Math.abs(event.deltaX)\n if (!isPrimarilyVerticalWheelInput) {\n return\n }\n\n const target = event.target\n if (!(target instanceof Element)) {\n return\n }\n\n const scrollContainer = target.closest<HTMLElement>(scrollContainerSelector)\n if (!scrollContainer) {\n return\n }\n\n const canScrollHorizontally = scrollContainer.scrollWidth > scrollContainer.clientWidth\n if (!canScrollHorizontally) {\n return\n }\n\n event.preventDefault()\n scrollContainer.scrollLeft += getHorizontalScrollDelta({\n clientWidth: scrollContainer.clientWidth,\n deltaMode: event.deltaMode,\n deltaY: event.deltaY,\n isRightToLeft: getComputedStyle(scrollContainer).direction === 'rtl',\n })\n}\n\n// A single page can render many fixed toolbars at once (e.g. rich text nested several\n// layers deep inside blocks), so this listener is delegated to `document` and shared\n// across every toolbar instance instead of being attached per instance. A wheel listener\n// that can call preventDefault() must be non-passive, and non-passive listeners make the\n// browser treat their element as a \"non-fast-scrollable region\" that every scroll gesture\n// on the page has to be checked against, even ones nowhere near it. Attaching one instance\n// per toolbar would multiply that bookkeeping by however many toolbars happen to be on the\n// page; a single delegated listener keeps that cost constant no matter how many there are.\nlet toolbarsListeningForWheelEvents = 0\n\nexport function useRedirectVerticalWheelToHorizontalScroll(): void {\n useEffect(() => {\n if (toolbarsListeningForWheelEvents === 0) {\n document.addEventListener('wheel', redirectVerticalWheelToHorizontalScroll, {\n passive: false,\n })\n }\n toolbarsListeningForWheelEvents += 1\n\n return () => {\n toolbarsListeningForWheelEvents -= 1\n if (toolbarsListeningForWheelEvents === 0) {\n document.removeEventListener('wheel', redirectVerticalWheelToHorizontalScroll)\n }\n }\n }, [])\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;AACA,SAASC,SAAS,QAAQ;AAE1B,MAAMC,uBAAA,GAA0B;AAEhC;AACA;AACA,MAAMC,eAAA,GAAkB;AAExB,OAAO,SAASC,yBAAyB;EACvCC,WAAW;EACXC,SAAS;EACTC,MAAM;EACNC;AAAa,CAMd;EACC,MAAMC,aAAA,GACJH,SAAA,KAAc,IAAIC,MAAA,GAASJ,eAAA,GAAkBG,SAAA,KAAc,IAAIC,MAAA,GAASF,WAAA,GAAcE,MAAA;EAExF;EACA;EACA,OAAOC,aAAA,GAAgB,CAACC,aAAA,GAAgBA,aAAA;AAC1C;AAEA,SAASC,wCAAwCC,KAAiB;EAChE,MAAMC,6BAAA,GAAgCC,IAAA,CAAKC,GAAG,CAACH,KAAA,CAAMJ,MAAM,IAAIM,IAAA,CAAKC,GAAG,CAACH,KAAA,CAAMI,MAAM;EACpF,IAAI,CAACH,6BAAA,EAA+B;IAClC;EACF;EAEA,MAAMI,MAAA,GAASL,KAAA,CAAMK,MAAM;EAC3B,IAAI,EAAEA,MAAA,YAAkBC,OAAM,GAAI;IAChC;EACF;EAEA,MAAMC,eAAA,GAAkBF,MAAA,CAAOG,OAAO,CAAcjB,uBAAA;EACpD,IAAI,CAACgB,eAAA,EAAiB;IACpB;EACF;EAEA,MAAME,qBAAA,GAAwBF,eAAA,CAAgBG,WAAW,GAAGH,eAAA,CAAgBb,WAAW;EACvF,IAAI,CAACe,qBAAA,EAAuB;IAC1B;EACF;EAEAT,KAAA,CAAMW,cAAc;EACpBJ,eAAA,CAAgBK,UAAU,IAAInB,wBAAA,CAAyB;IACrDC,WAAA,EAAaa,eAAA,CAAgBb,WAAW;IACxCC,SAAA,EAAWK,KAAA,CAAML,SAAS;IAC1BC,MAAA,EAAQI,KAAA,CAAMJ,MAAM;IACpBC,aAAA,EAAegB,gBAAA,CAAiBN,eAAA,EAAiBO,SAAS,KAAK;EACjE;AACF;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,+BAAA,GAAkC;AAEtC,OAAO,SAAAC,2CAAA;EAAA,MAAAC,CAAA,GAAA5B,EAAA;EAAA,IAAA6B,EAAA;EAAA,IAAAD,CAAA,QAAAE,MAAA,CAAAC,GAAA;IAeFF,EAAA;IAAED,CAAA,MAAAC,EAAA;EAAA;IAAAA,EAAA,GAAAD,CAAA;EAAA;EAdL3B,SAAA,CAAA+B,MAAA,EAcGH,EAAE;AAAA;AAfA,SAAAG,OAAA;EAAA,IAECN,+BAAA,MAAoC;IACtCO,QAAA,CAAAC,gBAAA,CAA0B,SAAAxB,uCAAA;MAAAyB,OAAA;IAAA,CAE1B;EAAA;EAAAT,+BAAA,GAEFA,+BAAA,IAAmC;EAAA,OAAAU,KAAA;AAAA;AAPhC,SAAAA,MAAA;EAAAV,+BAAA,GAUDA,+BAAA,IAAmC;EAAA,IAC/BA,+BAAA,MAAoC;IACtCO,QAAA,CAAAI,mBAAA,CAA6B,SAAA3B,uCAAS;EAAA;AAAA","ignoreList":[]}
@@ -1,3 +1,37 @@
1
+ @property --fixed-toolbar-fade-start {
2
+ syntax: '<length>';
3
+ inherits: false;
4
+ initial-value: 0px;
5
+ }
6
+
7
+ @property --fixed-toolbar-fade-end {
8
+ syntax: '<length>';
9
+ inherits: false;
10
+ initial-value: 0px;
11
+ }
12
+
13
+ /*
14
+ * Drives the fade widths off the toolbar's own scroll position: fully opaque at rest,
15
+ * fading in on whichever edge still has scrolled-off content once it overflows.
16
+ * Unsupported browsers (no animation-timeline) simply keep the initial 0px fade, i.e. no fade at all.
17
+ */
18
+ @keyframes fixed-toolbar-scroll-fade {
19
+ 0% {
20
+ --fixed-toolbar-fade-start: 0px;
21
+ }
22
+ 10%,
23
+ 100% {
24
+ --fixed-toolbar-fade-start: var(--spacer-5);
25
+ }
26
+ 0%,
27
+ 90% {
28
+ --fixed-toolbar-fade-end: var(--spacer-5);
29
+ }
30
+ 100% {
31
+ --fixed-toolbar-fade-end: 0px;
32
+ }
33
+ }
34
+
1
35
  @layer payload-default {
2
36
  .fixed-toolbar.fixed-toolbar--hide {
3
37
  visibility: hidden;
@@ -7,10 +41,8 @@
7
41
 
8
42
  .fixed-toolbar {
9
43
  display: flex;
10
- flex-wrap: wrap;
11
44
  align-items: center;
12
45
  padding: 0 var(--spacer-2);
13
- gap: var(--spacer-2);
14
46
  vertical-align: middle;
15
47
  position: sticky;
16
48
  z-index: 2;
@@ -27,9 +59,9 @@
27
59
  content: ' ';
28
60
  position: absolute;
29
61
  top: 0;
30
- right: 0;
62
+ inset-inline-end: 0;
31
63
  bottom: 0;
32
- left: 0;
64
+ inset-inline-start: 0;
33
65
  border-radius: inherit;
34
66
  }
35
67
 
@@ -46,24 +78,64 @@
46
78
  border-radius: 0 0 var(--radius-medium) var(--radius-medium) !important;
47
79
 
48
80
  > .editor-scroller > .editor {
81
+ --content-editable-padding-block-start: var(--spacer-2);
82
+
49
83
  > .ContentEditable__root {
50
84
  padding-top: var(--spacer-2);
51
85
  }
52
86
  }
87
+ }
88
+ }
53
89
 
54
- > .editor-scroller > .editor > div > .LexicalEditorTheme__placeholder {
55
- top: var(--spacer-4);
56
- }
90
+ .fixed-toolbar__scroll {
91
+ display: flex;
92
+ flex: 1 1 auto;
93
+ flex-wrap: nowrap;
94
+ align-items: center;
95
+ gap: var(--spacer-2);
96
+ min-width: 0;
97
+ overflow-x: auto;
98
+ scrollbar-width: none;
99
+ -ms-overflow-style: none;
100
+ position: relative;
101
+ z-index: 1;
102
+ animation: fixed-toolbar-scroll-fade linear;
103
+ animation-timeline: scroll(self inline);
104
+ mask: linear-gradient(
105
+ to right,
106
+ transparent,
107
+ black var(--fixed-toolbar-fade-start),
108
+ black calc(100% - var(--fixed-toolbar-fade-end)),
109
+ transparent
110
+ );
111
+
112
+ &::-webkit-scrollbar {
113
+ display: none;
57
114
  }
58
115
  }
59
116
 
117
+ [dir='rtl'] .fixed-toolbar__scroll {
118
+ mask: linear-gradient(
119
+ to left,
120
+ transparent,
121
+ black var(--fixed-toolbar-fade-start),
122
+ black calc(100% - var(--fixed-toolbar-fade-end)),
123
+ transparent
124
+ );
125
+ }
126
+
60
127
  .fixed-toolbar__group {
61
128
  display: flex;
62
- flex-wrap: wrap;
129
+ flex-wrap: nowrap;
63
130
  align-items: center;
64
131
  gap: var(--spacer-2);
65
132
  align-self: stretch;
66
133
  z-index: 1;
134
+ flex-shrink: 0;
135
+
136
+ > * {
137
+ flex-shrink: 0;
138
+ }
67
139
 
68
140
  .divider {
69
141
  width: var(--stroke-width-small);
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/toolbars/fixed/client/Toolbar/index.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAMrE,OAAO,aAAa,CAAA;AA2PpB,eAAO,MAAM,kBAAkB,EAAE,eAAe,CAAC,wBAAwB,CAuCxE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/toolbars/fixed/client/Toolbar/index.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAOrE,OAAO,aAAa,CAAA;AA6PpB,eAAO,MAAM,kBAAkB,EAAE,eAAe,CAAC,wBAAwB,CAuCxE,CAAA"}
@@ -11,6 +11,7 @@ import { useEditorConfigContext } from '../../../../../lexical/config/client/Edi
11
11
  import { ToolbarButton } from '../../../shared/ToolbarButton/index.js';
12
12
  import { ToolbarDropdown } from '../../../shared/ToolbarDropdown/index.js';
13
13
  import { useToolbarStates } from '../../../shared/useToolbarStates.js';
14
+ import { useRedirectVerticalWheelToHorizontalScroll } from './horizontalWheelScroll.js';
14
15
  import './index.css';
15
16
  function ButtonGroupItem({
16
17
  active,
@@ -129,6 +130,7 @@ function FixedToolbar({
129
130
  const {
130
131
  y
131
132
  } = useScrollInfo();
133
+ useRedirectVerticalWheelToHorizontalScroll();
132
134
  const toolbarStates = useToolbarStates(editor, editorConfig?.features?.toolbarFixed?.groups);
133
135
  // Memoize the parent toolbar element
134
136
  const parentToolbarElem = useMemo(() => {
@@ -181,7 +183,8 @@ function FixedToolbar({
181
183
  event.stopPropagation();
182
184
  },
183
185
  ref: currentToolbarRef,
184
- children: isEditable && /*#__PURE__*/_jsx(React.Fragment, {
186
+ children: isEditable && /*#__PURE__*/_jsx("div", {
187
+ className: "fixed-toolbar__scroll",
185
188
  children: editorConfig?.features && editorConfig.features?.toolbarFixed?.groups.map((group, i) => {
186
189
  return /*#__PURE__*/_jsx(ToolbarGroupComponent, {
187
190
  anchorElem: anchorElem,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","useLexicalEditable","useScrollInfo","useThrottledEffect","useTranslation","React","useMemo","useEditorConfigContext","ToolbarButton","ToolbarDropdown","useToolbarStates","ButtonGroupItem","active","anchorElem","editor","enabled","item","Component","_jsx","key","ChildComponent","ToolbarGroupComponent","editorConfig","group","index","toolbarStates","i18n","fieldProps","featureClientSchemaMap","schemaPath","groupState","groupStates","get","DropdownIcon","type","undefined","activeItem","activeItems","dropdownLabel","length","t","count","label","substring","_jsxs","className","items","Icon","itemsContainerClassNames","map","itemState","itemStates","features","toolbarFixed","groups","FixedToolbar","clientProps","parentWithFixedToolbar","currentToolbarRef","useRef","isEditable","y","parentToolbarElem","disableIfParentHasFixedToolbar","parentEditorElem","editorContainerRef","current","sibling","previousElementSibling","classList","contains","currentToolbarElem","currentRect","getBoundingClientRect","parentRect","overlapping","bottom","top","remove","add","onFocus","event","stopPropagation","ref","Fragment","i","getParentEditorWithFixedToolbar","editorConfigContext","parentEditor","resolvedFeatureMap","has","FixedToolbarPlugin","t0","$","currentEditor","currentEditorConfig","applyToFocusedEditor","focusedEditor","t1","t2","Symbol","for","bb0","document","body"],"sources":["../../../../../../src/features/toolbars/fixed/client/Toolbar/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalEditor } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { useScrollInfo, useThrottledEffect, useTranslation } from '@payloadcms/ui'\nimport * as React from 'react'\nimport { useMemo } from 'react'\n\nimport type { EditorConfigContextType } from '../../../../../lexical/config/client/EditorConfigProvider.js'\nimport type { SanitizedClientEditorConfig } from '../../../../../lexical/config/types.js'\nimport type { PluginComponent } from '../../../../typesClient.js'\nimport type { ToolbarStates } from '../../../shared/useToolbarStates.js'\nimport type { ToolbarGroup, ToolbarGroupItem } from '../../../types.js'\nimport type { FixedToolbarFeatureProps } from '../../server/index.js'\n\nimport { useEditorConfigContext } from '../../../../../lexical/config/client/EditorConfigProvider.js'\nimport { ToolbarButton } from '../../../shared/ToolbarButton/index.js'\nimport { ToolbarDropdown } from '../../../shared/ToolbarDropdown/index.js'\nimport { useToolbarStates } from '../../../shared/useToolbarStates.js'\nimport './index.css'\n\nfunction ButtonGroupItem({\n active,\n anchorElem,\n editor,\n enabled,\n item,\n}: {\n active: boolean\n anchorElem: HTMLElement\n editor: LexicalEditor\n enabled: boolean\n item: ToolbarGroupItem\n}): React.ReactNode {\n if (item.Component) {\n return (\n item?.Component && (\n <item.Component anchorElem={anchorElem} editor={editor} item={item} key={item.key} />\n )\n )\n }\n\n if (!item.ChildComponent) {\n return null\n }\n\n return (\n <ToolbarButton active={active} editor={editor} enabled={enabled} item={item} key={item.key}>\n <item.ChildComponent />\n </ToolbarButton>\n )\n}\n\nfunction ToolbarGroupComponent({\n anchorElem,\n editor,\n editorConfig,\n group,\n index,\n toolbarStates,\n}: {\n anchorElem: HTMLElement\n editor: LexicalEditor\n editorConfig: SanitizedClientEditorConfig\n group: ToolbarGroup\n index: number\n toolbarStates: ToolbarStates\n}): React.ReactNode {\n const { i18n } = useTranslation<{}, string>()\n const {\n fieldProps: { featureClientSchemaMap, schemaPath },\n } = useEditorConfigContext()\n\n const groupState = toolbarStates.groupStates.get(group.key)\n\n const DropdownIcon = useMemo(() => {\n if (group.type !== 'dropdown') {\n return undefined\n }\n const activeItem = groupState?.activeItems?.[0]\n if (activeItem) {\n return activeItem.ChildComponent\n }\n return group.ChildComponent\n }, [group, groupState?.activeItems])\n\n const dropdownLabel = useMemo(() => {\n if (group.type !== 'dropdown') {\n return undefined\n }\n const activeItems = groupState?.activeItems\n if (!activeItems?.length) {\n return undefined\n }\n if (activeItems.length > 1) {\n return i18n.t('lexical:general:toolbarItemsActive', { count: activeItems.length })\n }\n const item = activeItems[0]!\n let label = item.key\n if (item.label) {\n label =\n typeof item.label === 'function'\n ? item.label({ featureClientSchemaMap, i18n, schemaPath })\n : item.label\n }\n if (label.length > 25) {\n label = label.substring(0, 25) + '...'\n }\n return label\n }, [group, groupState?.activeItems, i18n, featureClientSchemaMap, schemaPath])\n\n return (\n <div\n className={`fixed-toolbar__group fixed-toolbar__group-${group.key}`}\n data-toolbar-group-key={group.key}\n key={group.key}\n >\n {group.type === 'dropdown' && group.items.length && groupState ? (\n <ToolbarDropdown\n anchorElem={anchorElem}\n editor={editor}\n group={group}\n groupState={groupState}\n Icon={DropdownIcon}\n itemsContainerClassNames={['fixed-toolbar__dropdown-items']}\n label={dropdownLabel}\n />\n ) : null}\n {group.type === 'buttons' && group.items.length\n ? group.items.map((item) => {\n const itemState = toolbarStates.itemStates.get(item.key)\n return (\n <ButtonGroupItem\n active={itemState?.active ?? false}\n anchorElem={anchorElem}\n editor={editor}\n enabled={itemState?.enabled ?? true}\n item={item}\n key={item.key}\n />\n )\n })\n : null}\n {index < editorConfig.features.toolbarFixed?.groups.length - 1 && <div className=\"divider\" />}\n </div>\n )\n}\n\nfunction FixedToolbar({\n anchorElem,\n clientProps,\n editor,\n editorConfig,\n parentWithFixedToolbar,\n}: {\n anchorElem: HTMLElement\n clientProps?: FixedToolbarFeatureProps\n editor: LexicalEditor\n editorConfig: SanitizedClientEditorConfig\n parentWithFixedToolbar: EditorConfigContextType | false\n}): React.ReactNode {\n const currentToolbarRef = React.useRef<HTMLDivElement>(null)\n const isEditable = useLexicalEditable()\n\n const { y } = useScrollInfo()\n\n const toolbarStates = useToolbarStates(editor, editorConfig?.features?.toolbarFixed?.groups)\n\n // Memoize the parent toolbar element\n const parentToolbarElem = useMemo(() => {\n if (!parentWithFixedToolbar || clientProps?.disableIfParentHasFixedToolbar) {\n return null\n }\n\n const parentEditorElem = parentWithFixedToolbar.editorContainerRef.current\n let sibling = parentEditorElem.previousElementSibling\n while (sibling) {\n if (sibling.classList.contains('fixed-toolbar')) {\n return sibling\n }\n sibling = sibling.previousElementSibling\n }\n return null\n }, [clientProps?.disableIfParentHasFixedToolbar, parentWithFixedToolbar])\n\n useThrottledEffect(\n () => {\n if (!parentToolbarElem) {\n // this also checks for clientProps?.disableIfParentHasFixedToolbar indirectly, see the parentToolbarElem useMemo\n return\n }\n const currentToolbarElem = currentToolbarRef.current\n if (!currentToolbarElem) {\n return\n }\n\n const currentRect = currentToolbarElem.getBoundingClientRect()\n const parentRect = parentToolbarElem.getBoundingClientRect()\n\n // we only need to check for vertical overlap\n const overlapping = !(\n currentRect.bottom < parentRect.top || currentRect.top > parentRect.bottom\n )\n\n if (overlapping) {\n currentToolbarElem.classList.remove('fixed-toolbar')\n currentToolbarElem.classList.add('fixed-toolbar', 'fixed-toolbar--overlapping')\n parentToolbarElem.classList.remove('fixed-toolbar')\n parentToolbarElem.classList.add('fixed-toolbar', 'fixed-toolbar--hide')\n } else {\n if (!currentToolbarElem.classList.contains('fixed-toolbar--overlapping')) {\n return\n }\n currentToolbarElem.classList.remove('fixed-toolbar--overlapping')\n currentToolbarElem.classList.add('fixed-toolbar')\n parentToolbarElem.classList.remove('fixed-toolbar--hide')\n parentToolbarElem.classList.add('fixed-toolbar')\n }\n },\n 50,\n [currentToolbarRef, parentToolbarElem, y],\n )\n\n return (\n <div\n className=\"fixed-toolbar\"\n onFocus={(event) => {\n // Prevent other focus events being triggered. Otherwise, if this was to be clicked while in a child editor,\n // the parent editor will be focused, and the child editor will lose focus.\n event.stopPropagation()\n }}\n ref={currentToolbarRef}\n >\n {isEditable && (\n <React.Fragment>\n {editorConfig?.features &&\n editorConfig.features?.toolbarFixed?.groups.map((group, i) => {\n return (\n <ToolbarGroupComponent\n anchorElem={anchorElem}\n editor={editor}\n editorConfig={editorConfig}\n group={group}\n index={i}\n key={group.key}\n toolbarStates={toolbarStates}\n />\n )\n })}\n </React.Fragment>\n )}\n </div>\n )\n}\n\nconst getParentEditorWithFixedToolbar = (\n editorConfigContext: EditorConfigContextType,\n): EditorConfigContextType | false => {\n if (editorConfigContext.parentEditor?.editorConfig) {\n if (editorConfigContext.parentEditor?.editorConfig.resolvedFeatureMap.has('toolbarFixed')) {\n return editorConfigContext.parentEditor\n } else {\n if (editorConfigContext.parentEditor) {\n return getParentEditorWithFixedToolbar(editorConfigContext.parentEditor)\n }\n }\n }\n return false\n}\n\nexport const FixedToolbarPlugin: PluginComponent<FixedToolbarFeatureProps> = ({ clientProps }) => {\n const [currentEditor] = useLexicalComposerContext()\n const editorConfigContext = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n if (!isEditable) {\n return null\n }\n\n const { editorConfig: currentEditorConfig } = editorConfigContext\n\n const editor = clientProps.applyToFocusedEditor\n ? editorConfigContext.focusedEditor?.editor || currentEditor\n : currentEditor\n\n const editorConfig = clientProps.applyToFocusedEditor\n ? editorConfigContext.focusedEditor?.editorConfig || currentEditorConfig\n : currentEditorConfig\n\n const parentWithFixedToolbar = getParentEditorWithFixedToolbar(editorConfigContext)\n\n if (clientProps?.disableIfParentHasFixedToolbar) {\n if (parentWithFixedToolbar) {\n return null\n }\n }\n\n if (!editorConfig?.features?.toolbarFixed?.groups?.length) {\n return null\n }\n\n return (\n <FixedToolbar\n anchorElem={document.body}\n clientProps={clientProps}\n editor={editor}\n editorConfig={editorConfig}\n parentWithFixedToolbar={parentWithFixedToolbar}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","useLexicalEditable","useScrollInfo","useThrottledEffect","useTranslation","React","useMemo","useEditorConfigContext","ToolbarButton","ToolbarDropdown","useToolbarStates","useRedirectVerticalWheelToHorizontalScroll","ButtonGroupItem","active","anchorElem","editor","enabled","item","Component","_jsx","key","ChildComponent","ToolbarGroupComponent","editorConfig","group","index","toolbarStates","i18n","fieldProps","featureClientSchemaMap","schemaPath","groupState","groupStates","get","DropdownIcon","type","undefined","activeItem","activeItems","dropdownLabel","length","t","count","label","substring","_jsxs","className","items","Icon","itemsContainerClassNames","map","itemState","itemStates","features","toolbarFixed","groups","FixedToolbar","clientProps","parentWithFixedToolbar","currentToolbarRef","useRef","isEditable","y","parentToolbarElem","disableIfParentHasFixedToolbar","parentEditorElem","editorContainerRef","current","sibling","previousElementSibling","classList","contains","currentToolbarElem","currentRect","getBoundingClientRect","parentRect","overlapping","bottom","top","remove","add","onFocus","event","stopPropagation","ref","i","getParentEditorWithFixedToolbar","editorConfigContext","parentEditor","resolvedFeatureMap","has","FixedToolbarPlugin","t0","$","currentEditor","currentEditorConfig","applyToFocusedEditor","focusedEditor","t1","t2","Symbol","for","bb0","document","body"],"sources":["../../../../../../src/features/toolbars/fixed/client/Toolbar/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalEditor } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { useScrollInfo, useThrottledEffect, useTranslation } from '@payloadcms/ui'\nimport * as React from 'react'\nimport { useMemo } from 'react'\n\nimport type { EditorConfigContextType } from '../../../../../lexical/config/client/EditorConfigProvider.js'\nimport type { SanitizedClientEditorConfig } from '../../../../../lexical/config/types.js'\nimport type { PluginComponent } from '../../../../typesClient.js'\nimport type { ToolbarStates } from '../../../shared/useToolbarStates.js'\nimport type { ToolbarGroup, ToolbarGroupItem } from '../../../types.js'\nimport type { FixedToolbarFeatureProps } from '../../server/index.js'\n\nimport { useEditorConfigContext } from '../../../../../lexical/config/client/EditorConfigProvider.js'\nimport { ToolbarButton } from '../../../shared/ToolbarButton/index.js'\nimport { ToolbarDropdown } from '../../../shared/ToolbarDropdown/index.js'\nimport { useToolbarStates } from '../../../shared/useToolbarStates.js'\nimport { useRedirectVerticalWheelToHorizontalScroll } from './horizontalWheelScroll.js'\nimport './index.css'\n\nfunction ButtonGroupItem({\n active,\n anchorElem,\n editor,\n enabled,\n item,\n}: {\n active: boolean\n anchorElem: HTMLElement\n editor: LexicalEditor\n enabled: boolean\n item: ToolbarGroupItem\n}): React.ReactNode {\n if (item.Component) {\n return (\n item?.Component && (\n <item.Component anchorElem={anchorElem} editor={editor} item={item} key={item.key} />\n )\n )\n }\n\n if (!item.ChildComponent) {\n return null\n }\n\n return (\n <ToolbarButton active={active} editor={editor} enabled={enabled} item={item} key={item.key}>\n <item.ChildComponent />\n </ToolbarButton>\n )\n}\n\nfunction ToolbarGroupComponent({\n anchorElem,\n editor,\n editorConfig,\n group,\n index,\n toolbarStates,\n}: {\n anchorElem: HTMLElement\n editor: LexicalEditor\n editorConfig: SanitizedClientEditorConfig\n group: ToolbarGroup\n index: number\n toolbarStates: ToolbarStates\n}): React.ReactNode {\n const { i18n } = useTranslation<{}, string>()\n const {\n fieldProps: { featureClientSchemaMap, schemaPath },\n } = useEditorConfigContext()\n\n const groupState = toolbarStates.groupStates.get(group.key)\n\n const DropdownIcon = useMemo(() => {\n if (group.type !== 'dropdown') {\n return undefined\n }\n const activeItem = groupState?.activeItems?.[0]\n if (activeItem) {\n return activeItem.ChildComponent\n }\n return group.ChildComponent\n }, [group, groupState?.activeItems])\n\n const dropdownLabel = useMemo(() => {\n if (group.type !== 'dropdown') {\n return undefined\n }\n const activeItems = groupState?.activeItems\n if (!activeItems?.length) {\n return undefined\n }\n if (activeItems.length > 1) {\n return i18n.t('lexical:general:toolbarItemsActive', { count: activeItems.length })\n }\n const item = activeItems[0]!\n let label = item.key\n if (item.label) {\n label =\n typeof item.label === 'function'\n ? item.label({ featureClientSchemaMap, i18n, schemaPath })\n : item.label\n }\n if (label.length > 25) {\n label = label.substring(0, 25) + '...'\n }\n return label\n }, [group, groupState?.activeItems, i18n, featureClientSchemaMap, schemaPath])\n\n return (\n <div\n className={`fixed-toolbar__group fixed-toolbar__group-${group.key}`}\n data-toolbar-group-key={group.key}\n key={group.key}\n >\n {group.type === 'dropdown' && group.items.length && groupState ? (\n <ToolbarDropdown\n anchorElem={anchorElem}\n editor={editor}\n group={group}\n groupState={groupState}\n Icon={DropdownIcon}\n itemsContainerClassNames={['fixed-toolbar__dropdown-items']}\n label={dropdownLabel}\n />\n ) : null}\n {group.type === 'buttons' && group.items.length\n ? group.items.map((item) => {\n const itemState = toolbarStates.itemStates.get(item.key)\n return (\n <ButtonGroupItem\n active={itemState?.active ?? false}\n anchorElem={anchorElem}\n editor={editor}\n enabled={itemState?.enabled ?? true}\n item={item}\n key={item.key}\n />\n )\n })\n : null}\n {index < editorConfig.features.toolbarFixed?.groups.length - 1 && <div className=\"divider\" />}\n </div>\n )\n}\n\nfunction FixedToolbar({\n anchorElem,\n clientProps,\n editor,\n editorConfig,\n parentWithFixedToolbar,\n}: {\n anchorElem: HTMLElement\n clientProps?: FixedToolbarFeatureProps\n editor: LexicalEditor\n editorConfig: SanitizedClientEditorConfig\n parentWithFixedToolbar: EditorConfigContextType | false\n}): React.ReactNode {\n const currentToolbarRef = React.useRef<HTMLDivElement>(null)\n const isEditable = useLexicalEditable()\n\n const { y } = useScrollInfo()\n\n useRedirectVerticalWheelToHorizontalScroll()\n\n const toolbarStates = useToolbarStates(editor, editorConfig?.features?.toolbarFixed?.groups)\n\n // Memoize the parent toolbar element\n const parentToolbarElem = useMemo(() => {\n if (!parentWithFixedToolbar || clientProps?.disableIfParentHasFixedToolbar) {\n return null\n }\n\n const parentEditorElem = parentWithFixedToolbar.editorContainerRef.current\n let sibling = parentEditorElem.previousElementSibling\n while (sibling) {\n if (sibling.classList.contains('fixed-toolbar')) {\n return sibling\n }\n sibling = sibling.previousElementSibling\n }\n return null\n }, [clientProps?.disableIfParentHasFixedToolbar, parentWithFixedToolbar])\n\n useThrottledEffect(\n () => {\n if (!parentToolbarElem) {\n // this also checks for clientProps?.disableIfParentHasFixedToolbar indirectly, see the parentToolbarElem useMemo\n return\n }\n const currentToolbarElem = currentToolbarRef.current\n if (!currentToolbarElem) {\n return\n }\n\n const currentRect = currentToolbarElem.getBoundingClientRect()\n const parentRect = parentToolbarElem.getBoundingClientRect()\n\n // we only need to check for vertical overlap\n const overlapping = !(\n currentRect.bottom < parentRect.top || currentRect.top > parentRect.bottom\n )\n\n if (overlapping) {\n currentToolbarElem.classList.remove('fixed-toolbar')\n currentToolbarElem.classList.add('fixed-toolbar', 'fixed-toolbar--overlapping')\n parentToolbarElem.classList.remove('fixed-toolbar')\n parentToolbarElem.classList.add('fixed-toolbar', 'fixed-toolbar--hide')\n } else {\n if (!currentToolbarElem.classList.contains('fixed-toolbar--overlapping')) {\n return\n }\n currentToolbarElem.classList.remove('fixed-toolbar--overlapping')\n currentToolbarElem.classList.add('fixed-toolbar')\n parentToolbarElem.classList.remove('fixed-toolbar--hide')\n parentToolbarElem.classList.add('fixed-toolbar')\n }\n },\n 50,\n [currentToolbarRef, parentToolbarElem, y],\n )\n\n return (\n <div\n className=\"fixed-toolbar\"\n onFocus={(event) => {\n // Prevent other focus events being triggered. Otherwise, if this was to be clicked while in a child editor,\n // the parent editor will be focused, and the child editor will lose focus.\n event.stopPropagation()\n }}\n ref={currentToolbarRef}\n >\n {isEditable && (\n <div className=\"fixed-toolbar__scroll\">\n {editorConfig?.features &&\n editorConfig.features?.toolbarFixed?.groups.map((group, i) => {\n return (\n <ToolbarGroupComponent\n anchorElem={anchorElem}\n editor={editor}\n editorConfig={editorConfig}\n group={group}\n index={i}\n key={group.key}\n toolbarStates={toolbarStates}\n />\n )\n })}\n </div>\n )}\n </div>\n )\n}\n\nconst getParentEditorWithFixedToolbar = (\n editorConfigContext: EditorConfigContextType,\n): EditorConfigContextType | false => {\n if (editorConfigContext.parentEditor?.editorConfig) {\n if (editorConfigContext.parentEditor?.editorConfig.resolvedFeatureMap.has('toolbarFixed')) {\n return editorConfigContext.parentEditor\n } else {\n if (editorConfigContext.parentEditor) {\n return getParentEditorWithFixedToolbar(editorConfigContext.parentEditor)\n }\n }\n }\n return false\n}\n\nexport const FixedToolbarPlugin: PluginComponent<FixedToolbarFeatureProps> = ({ clientProps }) => {\n const [currentEditor] = useLexicalComposerContext()\n const editorConfigContext = useEditorConfigContext()\n const isEditable = useLexicalEditable()\n if (!isEditable) {\n return null\n }\n\n const { editorConfig: currentEditorConfig } = editorConfigContext\n\n const editor = clientProps.applyToFocusedEditor\n ? editorConfigContext.focusedEditor?.editor || currentEditor\n : currentEditor\n\n const editorConfig = clientProps.applyToFocusedEditor\n ? editorConfigContext.focusedEditor?.editorConfig || currentEditorConfig\n : currentEditorConfig\n\n const parentWithFixedToolbar = getParentEditorWithFixedToolbar(editorConfigContext)\n\n if (clientProps?.disableIfParentHasFixedToolbar) {\n if (parentWithFixedToolbar) {\n return null\n }\n }\n\n if (!editorConfig?.features?.toolbarFixed?.groups?.length) {\n return null\n }\n\n return (\n <FixedToolbar\n anchorElem={document.body}\n clientProps={clientProps}\n editor={editor}\n editorConfig={editorConfig}\n parentWithFixedToolbar={parentWithFixedToolbar}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -8,16 +8,12 @@
8
8
  vertical-align: middle;
9
9
  position: absolute;
10
10
  top: 0;
11
- left: 0;
11
+ inset-inline-start: 0;
12
12
  z-index: 2;
13
13
  opacity: 0;
14
14
  border-radius: var(--radius-medium);
15
- transition: opacity 0.2s;
16
15
  will-change: transform;
17
- box-shadow:
18
- 0px 1px 2px 1px rgba(0, 0, 0, 0.1),
19
- 0px 4px 16px 0px rgba(0, 0, 0, 0.2),
20
- 0px -4px 8px 0px rgba(0, 0, 0, 0.1);
16
+ box-shadow: var(--elevation-300-tooltip);
21
17
  }
22
18
 
23
19
  .inline-toolbar-popup__group {
@@ -32,12 +28,4 @@
32
28
  background-color: var(--lexical-border-color);
33
29
  }
34
30
  }
35
-
36
- html[data-theme='light'] {
37
- .inline-toolbar-popup {
38
- box-shadow:
39
- 0px 1px 2px 1px rgba(0, 0, 0, 0.05),
40
- 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
41
- }
42
- }
43
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/toolbars/shared/ToolbarButton/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAA4D,MAAM,OAAO,CAAA;AAEhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAGtD,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,aAAa,GAAI,8CAM3B;IACD,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAA;IAC3B,MAAM,EAAE,aAAa,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,gBAAgB,CAAA;CACvB,sBAmFA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/toolbars/shared/ToolbarButton/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAA4D,MAAM,OAAO,CAAA;AAEhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAGtD,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,aAAa,iDAMvB;IACD,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAA;IAC3B,MAAM,EAAE,aAAa,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,gBAAgB,CAAA;CACvB,sBAmFA,CAAA"}
@@ -19,7 +19,6 @@
19
19
  border-radius: var(--radius-medium);
20
20
  cursor: pointer;
21
21
  position: relative;
22
- transition: background-color 0.15s cubic-bezier(0, 0.2, 0.2, 1);
23
22
  min-width: calc(var(--spacer-4) + var(--spacer-2-5));
24
23
 
25
24
  &:disabled {
@@ -60,7 +59,7 @@
60
59
  align-items: center;
61
60
  justify-content: center;
62
61
  width: 6px;
63
- margin: 0 4px 0 2px;
62
+ margin: 0 var(--spacer-1) 0 calc(var(--spacer-1) / 2);
64
63
  height: 4px;
65
64
  background-color: var(--color-icon);
66
65
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='4' viewBox='0 0 6 4' fill='none'%3E%3Cpath d='M4.38921 0.146406C4.58445 -0.0488286 4.90098 -0.0487744 5.09624 0.146406C5.29151 0.341668 5.29151 0.658175 5.09624 0.853437L2.97515 2.97453C2.77987 3.16959 2.46332 3.16972 2.26812 2.97453L0.146049 0.853437C-0.0487219 0.6583 -0.0486443 0.341591 0.146049 0.146406C0.341285 -0.0488288 0.658788 -0.0487749 0.854057 0.146406L2.62164 1.91398L4.38921 0.146406Z' fill='black'/%3E%3C/svg%3E");
@@ -77,17 +76,12 @@
77
76
  padding: var(--spacer-2);
78
77
  min-width: var(--dropdown-min-width);
79
78
  z-index: 100;
80
- box-shadow:
81
- 0 2px 6px 0 rgba(0, 0, 0, 0.12),
82
- 0 10px 16px 0 rgba(0, 0, 0, 0.08),
83
- 0 0 0.5px 0 rgba(0, 0, 0, 0.12),
84
- 0 0 0 1px rgba(0, 0, 0, 0.04);
79
+ box-shadow: var(--elevation-300-tooltip);
85
80
 
86
81
  .toolbar-popup__dropdown-item {
87
82
  all: unset;
88
83
  cursor: pointer;
89
84
  color: var(--color-text);
90
- transition: background-color 0.15s cubic-bezier(0, 0.2, 0.2, 1);
91
85
  position: relative;
92
86
  font-family: var(--text-body-medium-font-family);
93
87
  font-size: var(--text-body-medium-font-size);
@@ -101,7 +95,7 @@
101
95
  display: flex;
102
96
  align-items: center;
103
97
  gap: var(--spacer-1);
104
- margin-right: -var(--spacer-3);
98
+ margin-inline-end: -var(--spacer-3);
105
99
 
106
100
  .text {
107
101
  overflow: hidden;
@@ -168,15 +162,15 @@
168
162
  }
169
163
 
170
164
  .btn__tooltip {
171
- background-color: var(--ramp-grey-900);
172
- color: var(--ramp-grey-100);
165
+ background-color: var(--color-bg-tooltip);
166
+ color: var(--color-text-ontooltip);
173
167
 
174
168
  &.tooltip--position-top::after {
175
- border-top-color: var(--ramp-grey-900);
169
+ border-top-color: var(--color-bg-tooltip);
176
170
  }
177
171
 
178
172
  &.tooltip--position-bottom::after {
179
- border-bottom-color: var(--ramp-grey-900);
173
+ border-bottom-color: var(--color-bg-tooltip);
180
174
  }
181
175
  }
182
176
  }
@@ -191,20 +185,21 @@
191
185
  }
192
186
 
193
187
  [data-dropdown-key='text'] {
194
- & .toolbar-popup__dropdown-item {
195
- padding: 0 var(--spacer-4);
188
+ /* Reserved on every item, not just the active one, so the checkmark never overlaps the item icon. */
189
+ & .toolbar-popup__dropdown-item::before {
190
+ content: '';
191
+ flex-shrink: 0;
192
+ width: var(--spacer-3);
193
+ height: var(--spacer-3);
194
+ background-color: currentColor;
195
+ mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M12.277 3.584a.5.5 0 0 1 .139.693l-5 7.5a.5.5 0 0 1-.77.077l-3-3a.5.5 0 0 1 .708-.708l2.568 2.57 4.662-6.993a.5.5 0 0 1 .693-.139' fill='black'/%3E%3C/svg%3E");
196
+ mask-size: contain;
197
+ mask-repeat: no-repeat;
198
+ visibility: hidden;
196
199
  }
197
200
 
198
201
  & .toolbar-popup__dropdown-item.active::before {
199
- content: '';
200
- position: absolute;
201
- left: var(--spacer-2-5);
202
- top: 50%;
203
- width: var(--spacer-1);
204
- height: var(--spacer-2);
205
- border: solid var(--color-text-onselected-strong);
206
- border-width: 0 1px 1px 0;
207
- transform: translateY(-60%) rotate(45deg);
202
+ visibility: visible;
208
203
  }
209
204
 
210
205
  .btn__icon {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/toolbars/shared/ToolbarDropdown/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAItC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,gBAAgB,CAAA;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG/D,OAAO,aAAa,CAAA;AAsEpB,eAAO,MAAM,eAAe,GAAI,+FAS7B;IACD,UAAU,EAAE,WAAW,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,EAAE,oBAAoB,CAAA;IAC3B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,CAAA;IACf,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,sBAmCA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/toolbars/shared/ToolbarDropdown/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAItC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAI5C,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,gBAAgB,CAAA;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG/D,OAAO,aAAa,CAAA;AAsEpB,eAAO,MAAM,eAAe,kGASzB;IACD,UAAU,EAAE,WAAW,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,aAAa,CAAA;IACrB,KAAK,EAAE,oBAAoB,CAAA;IAC3B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,CAAA;IACf,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,sBAmCA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useToolbarStates.d.ts","sourceRoot":"","sources":["../../../../src/features/toolbars/shared/useToolbarStates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAM5C,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKjE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,EAAE,gBAAgB,EAAE,CAAA;IAC/B,YAAY,EAAE,OAAO,CAAA;IACrB,eAAe,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAC1C;AAgCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,GACjC,aAAa,CAyFf"}
1
+ {"version":3,"file":"useToolbarStates.d.ts","sourceRoot":"","sources":["../../../../src/features/toolbars/shared/useToolbarStates.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAM5C,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKjE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,EAAE,gBAAgB,EAAE,CAAA;IAC/B,YAAY,EAAE,OAAO,CAAA;IACrB,eAAe,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CAC1C;AAgCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,GACjC,aAAa,CA2Ff"}
@@ -114,7 +114,9 @@ export function useToolbarStates(editor, groups) {
114
114
  }, [editor]);
115
115
  useEffect(() => {
116
116
  void runDeprioritized(updateStates);
117
- const listener = () => runDeprioritized(updateStates);
117
+ const listener = () => {
118
+ void runDeprioritized(updateStates);
119
+ };
118
120
  const cleanup = mergeRegister(editor.registerUpdateListener(listener));
119
121
  document.addEventListener('mouseup', listener);
120
122
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useToolbarStates.js","names":["mergeRegister","$getSelection","useCallback","useDeferredValue","useEffect","useRef","useState","useEditorConfigContext","useRunDeprioritized","buildDefaultStates","groups","itemStates","Map","groupStates","length","group","enabledItemKeys","item","items","set","key","active","enabled","push","activeItemKeys","activeItems","enabledGroup","useToolbarStates","editor","states","setStates","deferredStates","editorConfigContext","editorConfigContextRef","current","groupsRef","runDeprioritized","updateStates","getEditorState","read","selection","currentGroups","ctx","newItemStates","newGroupStates","maxActive","type","maxActiveItems","undefined","isActive","isEnabled","listener","cleanup","registerUpdateListener","document","addEventListener","removeEventListener"],"sources":["../../../../src/features/toolbars/shared/useToolbarStates.ts"],"sourcesContent":["'use client'\nimport type { LexicalEditor } from 'lexical'\n\nimport { mergeRegister } from '@lexical/utils'\nimport { $getSelection } from 'lexical'\nimport { useCallback, useDeferredValue, useEffect, useRef, useState } from 'react'\n\nimport type { ToolbarGroup, ToolbarGroupItem } from '../types.js'\n\nimport { useEditorConfigContext } from '../../../lexical/config/client/EditorConfigProvider.js'\nimport { useRunDeprioritized } from '../../../utilities/useRunDeprioritized.js'\n\nexport interface ToolbarItemState {\n active: boolean\n enabled: boolean\n}\n\nexport interface ToolbarGroupState {\n activeItemKeys: string[]\n activeItems: ToolbarGroupItem[]\n enabledGroup: boolean\n enabledItemKeys: string[]\n}\n\nexport interface ToolbarStates {\n groupStates: Map<string, ToolbarGroupState>\n itemStates: Map<string, ToolbarItemState>\n}\n\n/**\n * Build default states where every item is enabled and nothing is active.\n * Used as the initial value so toolbar groups render immediately on mount\n * instead of waiting for the first updateStates call.\n */\nfunction buildDefaultStates(groups: ToolbarGroup[] | undefined): ToolbarStates {\n const itemStates = new Map<string, ToolbarItemState>()\n const groupStates = new Map<string, ToolbarGroupState>()\n\n if (!groups?.length) {\n return { groupStates, itemStates }\n }\n\n for (const group of groups) {\n const enabledItemKeys: string[] = []\n for (const item of group.items) {\n itemStates.set(item.key, { active: false, enabled: true })\n enabledItemKeys.push(item.key)\n }\n groupStates.set(group.key, {\n activeItemKeys: [],\n activeItems: [],\n enabledGroup: true,\n enabledItemKeys,\n })\n }\n\n return { groupStates, itemStates }\n}\n\n/**\n * Subscribes once to `editor.registerUpdateListener` and computes\n * isActive / isEnabled for every toolbar item in a read.\n */\nexport function useToolbarStates(\n editor: LexicalEditor,\n groups: ToolbarGroup[] | undefined,\n): ToolbarStates {\n const [states, setStates] = useState<ToolbarStates>(() => buildDefaultStates(groups))\n const deferredStates = useDeferredValue(states)\n\n const editorConfigContext = useEditorConfigContext()\n const editorConfigContextRef = useRef(editorConfigContext)\n editorConfigContextRef.current = editorConfigContext\n\n const groupsRef = useRef(groups)\n groupsRef.current = groups\n\n const runDeprioritized = useRunDeprioritized()\n\n const updateStates = useCallback(() => {\n editor.getEditorState().read(() => {\n const selection = $getSelection()\n if (!selection) {\n return\n }\n\n const currentGroups = groupsRef.current\n if (!currentGroups?.length) {\n return\n }\n\n const ctx = editorConfigContextRef.current\n const newItemStates = new Map<string, ToolbarItemState>()\n const newGroupStates = new Map<string, ToolbarGroupState>()\n\n for (const group of currentGroups) {\n const activeItemKeys: string[] = []\n const activeItems: ToolbarGroupItem[] = []\n const enabledItemKeys: string[] = []\n\n const maxActive = group.type === 'dropdown' ? (group.maxActiveItems ?? 1) : undefined\n\n for (const item of group.items) {\n const isActive = item.isActive\n ? (!maxActive || activeItemKeys.length < maxActive) &&\n item.isActive({ editor, editorConfigContext: ctx, selection })\n : false\n\n const isEnabled = item.isEnabled\n ? item.isEnabled({ editor, editorConfigContext: ctx, selection })\n : true\n\n if (isActive) {\n activeItemKeys.push(item.key)\n activeItems.push(item)\n }\n if (isEnabled) {\n enabledItemKeys.push(item.key)\n }\n\n newItemStates.set(item.key, { active: isActive, enabled: isEnabled })\n }\n\n const enabledGroup =\n group.type === 'dropdown' && group.isEnabled\n ? group.isEnabled({ editor, editorConfigContext: ctx, selection })\n : true\n\n newGroupStates.set(group.key, {\n activeItemKeys,\n activeItems,\n enabledGroup,\n enabledItemKeys,\n })\n }\n\n setStates({ groupStates: newGroupStates, itemStates: newItemStates })\n })\n }, [editor])\n\n useEffect(() => {\n void runDeprioritized(updateStates)\n\n const listener = () => runDeprioritized(updateStates)\n\n const cleanup = mergeRegister(editor.registerUpdateListener(listener))\n document.addEventListener('mouseup', listener)\n\n return () => {\n cleanup()\n document.removeEventListener('mouseup', listener)\n }\n }, [editor, runDeprioritized, updateStates])\n\n return deferredStates\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useToolbarStates.js","names":["mergeRegister","$getSelection","useCallback","useDeferredValue","useEffect","useRef","useState","useEditorConfigContext","useRunDeprioritized","buildDefaultStates","groups","itemStates","Map","groupStates","length","group","enabledItemKeys","item","items","set","key","active","enabled","push","activeItemKeys","activeItems","enabledGroup","useToolbarStates","editor","states","setStates","deferredStates","editorConfigContext","editorConfigContextRef","current","groupsRef","runDeprioritized","updateStates","getEditorState","read","selection","currentGroups","ctx","newItemStates","newGroupStates","maxActive","type","maxActiveItems","undefined","isActive","isEnabled","listener","cleanup","registerUpdateListener","document","addEventListener","removeEventListener"],"sources":["../../../../src/features/toolbars/shared/useToolbarStates.ts"],"sourcesContent":["'use client'\nimport type { LexicalEditor } from 'lexical'\n\nimport { mergeRegister } from '@lexical/utils'\nimport { $getSelection } from 'lexical'\nimport { useCallback, useDeferredValue, useEffect, useRef, useState } from 'react'\n\nimport type { ToolbarGroup, ToolbarGroupItem } from '../types.js'\n\nimport { useEditorConfigContext } from '../../../lexical/config/client/EditorConfigProvider.js'\nimport { useRunDeprioritized } from '../../../utilities/useRunDeprioritized.js'\n\nexport interface ToolbarItemState {\n active: boolean\n enabled: boolean\n}\n\nexport interface ToolbarGroupState {\n activeItemKeys: string[]\n activeItems: ToolbarGroupItem[]\n enabledGroup: boolean\n enabledItemKeys: string[]\n}\n\nexport interface ToolbarStates {\n groupStates: Map<string, ToolbarGroupState>\n itemStates: Map<string, ToolbarItemState>\n}\n\n/**\n * Build default states where every item is enabled and nothing is active.\n * Used as the initial value so toolbar groups render immediately on mount\n * instead of waiting for the first updateStates call.\n */\nfunction buildDefaultStates(groups: ToolbarGroup[] | undefined): ToolbarStates {\n const itemStates = new Map<string, ToolbarItemState>()\n const groupStates = new Map<string, ToolbarGroupState>()\n\n if (!groups?.length) {\n return { groupStates, itemStates }\n }\n\n for (const group of groups) {\n const enabledItemKeys: string[] = []\n for (const item of group.items) {\n itemStates.set(item.key, { active: false, enabled: true })\n enabledItemKeys.push(item.key)\n }\n groupStates.set(group.key, {\n activeItemKeys: [],\n activeItems: [],\n enabledGroup: true,\n enabledItemKeys,\n })\n }\n\n return { groupStates, itemStates }\n}\n\n/**\n * Subscribes once to `editor.registerUpdateListener` and computes\n * isActive / isEnabled for every toolbar item in a read.\n */\nexport function useToolbarStates(\n editor: LexicalEditor,\n groups: ToolbarGroup[] | undefined,\n): ToolbarStates {\n const [states, setStates] = useState<ToolbarStates>(() => buildDefaultStates(groups))\n const deferredStates = useDeferredValue(states)\n\n const editorConfigContext = useEditorConfigContext()\n const editorConfigContextRef = useRef(editorConfigContext)\n editorConfigContextRef.current = editorConfigContext\n\n const groupsRef = useRef(groups)\n groupsRef.current = groups\n\n const runDeprioritized = useRunDeprioritized()\n\n const updateStates = useCallback(() => {\n editor.getEditorState().read(() => {\n const selection = $getSelection()\n if (!selection) {\n return\n }\n\n const currentGroups = groupsRef.current\n if (!currentGroups?.length) {\n return\n }\n\n const ctx = editorConfigContextRef.current\n const newItemStates = new Map<string, ToolbarItemState>()\n const newGroupStates = new Map<string, ToolbarGroupState>()\n\n for (const group of currentGroups) {\n const activeItemKeys: string[] = []\n const activeItems: ToolbarGroupItem[] = []\n const enabledItemKeys: string[] = []\n\n const maxActive = group.type === 'dropdown' ? (group.maxActiveItems ?? 1) : undefined\n\n for (const item of group.items) {\n const isActive = item.isActive\n ? (!maxActive || activeItemKeys.length < maxActive) &&\n item.isActive({ editor, editorConfigContext: ctx, selection })\n : false\n\n const isEnabled = item.isEnabled\n ? item.isEnabled({ editor, editorConfigContext: ctx, selection })\n : true\n\n if (isActive) {\n activeItemKeys.push(item.key)\n activeItems.push(item)\n }\n if (isEnabled) {\n enabledItemKeys.push(item.key)\n }\n\n newItemStates.set(item.key, { active: isActive, enabled: isEnabled })\n }\n\n const enabledGroup =\n group.type === 'dropdown' && group.isEnabled\n ? group.isEnabled({ editor, editorConfigContext: ctx, selection })\n : true\n\n newGroupStates.set(group.key, {\n activeItemKeys,\n activeItems,\n enabledGroup,\n enabledItemKeys,\n })\n }\n\n setStates({ groupStates: newGroupStates, itemStates: newItemStates })\n })\n }, [editor])\n\n useEffect(() => {\n void runDeprioritized(updateStates)\n\n const listener = () => {\n void runDeprioritized(updateStates)\n }\n\n const cleanup = mergeRegister(editor.registerUpdateListener(listener))\n document.addEventListener('mouseup', listener)\n\n return () => {\n cleanup()\n document.removeEventListener('mouseup', listener)\n }\n }, [editor, runDeprioritized, updateStates])\n\n return deferredStates\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,10 @@
1
+ import type { Transformer } from '@lexical/markdown';
1
2
  import type { Klass, LexicalEditor, LexicalNode, LexicalNodeReplacement, TextFormatType } from 'lexical';
2
3
  import type { ClientConfig, RichTextFieldClient } from 'payload';
3
4
  import type React from 'react';
4
5
  import type { JSX } from 'react';
5
6
  import type { ClientEditorConfig } from '../lexical/config/types.js';
6
7
  import type { SlashMenuGroup } from '../lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js';
7
- import type { Transformer } from '../packages/@lexical/markdown/index.js';
8
8
  import type { FeatureClientSchemaMap } from '../types/index.js';
9
9
  import type { ToolbarGroup } from './toolbars/types.js';
10
10
  export type FeatureProviderProviderClient<UnSanitizedClientFeatureProps = undefined, ClientFeatureProps = UnSanitizedClientFeatureProps> = (props: BaseClientFeatureProps<ClientFeatureProps>) => FeatureProviderClient<ClientFeatureProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"typesClient.d.ts","sourceRoot":"","sources":["../../src/features/typesClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typesClient.d.ts","sourceRoot":"","sources":["../../src/features/typesClient.ts"],"names":[],"mappings":"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"}