@payloadcms/richtext-lexical 0.7.0 → 3.0.0-alpha.19

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 (993) hide show
  1. package/README.md +1 -3
  2. package/components.d.ts +1 -1
  3. package/components.js +6 -33
  4. package/dist/cell/index.d.ts +4 -4
  5. package/dist/cell/index.d.ts.map +1 -1
  6. package/dist/cell/index.js +98 -79
  7. package/dist/exports/components.d.ts +1 -1
  8. package/dist/exports/components.d.ts.map +1 -1
  9. package/dist/exports/components.js +6 -33
  10. package/dist/field/Field.d.ts +8 -3
  11. package/dist/field/Field.d.ts.map +1 -1
  12. package/dist/field/Field.js +26 -98
  13. package/dist/field/features/align/feature.client.d.ts +3 -0
  14. package/dist/field/features/align/feature.client.d.ts.map +1 -0
  15. package/dist/field/features/align/feature.client.js +71 -0
  16. package/dist/field/features/align/feature.server.d.ts +3 -0
  17. package/dist/field/features/align/feature.server.d.ts.map +1 -0
  18. package/dist/field/features/align/feature.server.js +16 -0
  19. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.d.ts.map +1 -1
  20. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.js +6 -57
  21. package/dist/field/features/blockquote/feature.client.d.ts +3 -0
  22. package/dist/field/features/blockquote/feature.client.d.ts.map +1 -0
  23. package/dist/field/features/blockquote/feature.client.js +67 -0
  24. package/dist/field/features/blockquote/feature.server.d.ts +3 -0
  25. package/dist/field/features/blockquote/feature.server.d.ts.map +1 -0
  26. package/dist/field/features/blockquote/feature.server.js +46 -0
  27. package/dist/field/features/blockquote/markdownTransformer.d.ts.map +1 -0
  28. package/dist/field/features/blockquote/markdownTransformer.js +40 -0
  29. package/dist/field/features/blocks/component/BlockContent.d.ts +25 -0
  30. package/dist/field/features/blocks/component/BlockContent.d.ts.map +1 -0
  31. package/dist/field/features/blocks/component/BlockContent.js +163 -0
  32. package/dist/field/features/blocks/component/FormSavePlugin.d.ts +12 -0
  33. package/dist/field/features/blocks/component/FormSavePlugin.d.ts.map +1 -0
  34. package/dist/field/features/blocks/component/FormSavePlugin.js +24 -0
  35. package/dist/field/features/blocks/component/index.d.ts +16 -0
  36. package/dist/field/features/blocks/component/index.d.ts.map +1 -0
  37. package/dist/field/features/blocks/component/index.js +121 -0
  38. package/dist/field/features/blocks/component/index.scss +153 -0
  39. package/dist/field/features/blocks/drawer/index.d.ts.map +1 -0
  40. package/dist/field/features/blocks/drawer/index.js +78 -0
  41. package/dist/field/features/blocks/feature.client.d.ts +7 -0
  42. package/dist/field/features/blocks/feature.client.d.ts.map +1 -0
  43. package/dist/field/features/blocks/feature.client.js +61 -0
  44. package/dist/field/features/blocks/feature.server.d.ts +8 -0
  45. package/dist/field/features/blocks/feature.server.d.ts.map +1 -0
  46. package/dist/field/features/blocks/feature.server.js +86 -0
  47. package/dist/field/features/blocks/nodes/BlocksNode.d.ts.map +1 -0
  48. package/dist/field/features/blocks/nodes/BlocksNode.js +91 -0
  49. package/dist/field/features/blocks/plugin/commands.d.ts.map +1 -0
  50. package/dist/field/features/blocks/plugin/commands.js +4 -0
  51. package/dist/field/features/blocks/plugin/index.d.ts +5 -0
  52. package/dist/field/features/blocks/plugin/index.d.ts.map +1 -0
  53. package/dist/field/features/blocks/plugin/index.js +40 -0
  54. package/dist/field/features/blocks/populationPromise.d.ts +5 -0
  55. package/dist/field/features/blocks/populationPromise.d.ts.map +1 -0
  56. package/dist/field/features/blocks/populationPromise.js +45 -0
  57. package/dist/field/features/blocks/validate.d.ts +5 -0
  58. package/dist/field/features/blocks/validate.d.ts.map +1 -0
  59. package/dist/field/features/blocks/validate.js +49 -0
  60. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.js +4 -14
  61. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.d.ts.map +1 -1
  62. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.js +6 -57
  63. package/dist/field/features/converters/html/converter/converters/linebreak.js +2 -12
  64. package/dist/field/features/converters/html/converter/converters/paragraph.d.ts.map +1 -1
  65. package/dist/field/features/converters/html/converter/converters/paragraph.js +7 -16
  66. package/dist/field/features/converters/html/converter/converters/text.js +10 -20
  67. package/dist/field/features/converters/html/converter/defaultConverters.js +8 -18
  68. package/dist/field/features/converters/html/converter/index.d.ts +11 -2
  69. package/dist/field/features/converters/html/converter/index.d.ts.map +1 -1
  70. package/dist/field/features/converters/html/converter/index.js +9 -24
  71. package/dist/field/features/converters/html/converter/types.d.ts +6 -1
  72. package/dist/field/features/converters/html/converter/types.d.ts.map +1 -1
  73. package/dist/field/features/converters/html/converter/types.js +2 -5
  74. package/dist/field/features/converters/html/feature.server.d.ts +9 -0
  75. package/dist/field/features/converters/html/feature.server.d.ts.map +1 -0
  76. package/dist/field/features/converters/html/feature.server.js +14 -0
  77. package/dist/field/features/converters/html/field/index.d.ts +2 -2
  78. package/dist/field/features/converters/html/field/index.d.ts.map +1 -1
  79. package/dist/field/features/converters/html/field/index.js +18 -31
  80. package/dist/field/features/createClientComponent.d.ts +7 -0
  81. package/dist/field/features/createClientComponent.d.ts.map +1 -0
  82. package/dist/field/features/createClientComponent.js +12 -0
  83. package/dist/field/features/createFeaturePropComponent.d.ts +6 -0
  84. package/dist/field/features/createFeaturePropComponent.d.ts.map +1 -0
  85. package/dist/field/features/createFeaturePropComponent.js +14 -0
  86. package/dist/field/features/debug/testrecorder/feature.client.d.ts +3 -0
  87. package/dist/field/features/debug/testrecorder/feature.client.d.ts.map +1 -0
  88. package/dist/field/features/debug/testrecorder/feature.client.js +20 -0
  89. package/dist/field/features/debug/testrecorder/feature.server.d.ts +3 -0
  90. package/dist/field/features/debug/testrecorder/feature.server.d.ts.map +1 -0
  91. package/dist/field/features/debug/testrecorder/feature.server.js +15 -0
  92. package/dist/field/features/debug/testrecorder/plugin/index.d.ts.map +1 -0
  93. package/dist/field/features/debug/testrecorder/plugin/index.js +446 -0
  94. package/dist/field/features/debug/testrecorder/plugin/index.scss +49 -0
  95. package/dist/field/features/debug/treeview/feature.client.d.ts +3 -0
  96. package/dist/field/features/debug/treeview/feature.client.d.ts.map +1 -0
  97. package/dist/field/features/debug/treeview/feature.client.js +20 -0
  98. package/dist/field/features/debug/treeview/feature.server.d.ts +3 -0
  99. package/dist/field/features/debug/treeview/feature.server.d.ts.map +1 -0
  100. package/dist/field/features/debug/treeview/feature.server.js +15 -0
  101. package/dist/field/features/debug/treeview/plugin/index.d.ts +4 -0
  102. package/dist/field/features/debug/treeview/plugin/index.d.ts.map +1 -0
  103. package/dist/field/features/debug/treeview/plugin/index.js +19 -0
  104. package/dist/field/features/format/bold/feature.client.d.ts +3 -0
  105. package/dist/field/features/format/bold/feature.client.d.ts.map +1 -0
  106. package/dist/field/features/format/bold/feature.client.js +47 -0
  107. package/dist/field/features/format/bold/feature.server.d.ts +3 -0
  108. package/dist/field/features/format/bold/feature.server.d.ts.map +1 -0
  109. package/dist/field/features/format/bold/feature.server.js +27 -0
  110. package/dist/field/features/format/bold/markdownTransformers.d.ts.map +1 -0
  111. package/dist/field/features/format/bold/markdownTransformers.js +34 -0
  112. package/dist/field/features/format/common/floatingSelectToolbarSection.js +4 -14
  113. package/dist/field/features/format/inlinecode/feature.client.d.ts +3 -0
  114. package/dist/field/features/format/inlinecode/feature.client.d.ts.map +1 -0
  115. package/dist/field/features/format/inlinecode/feature.client.js +42 -0
  116. package/dist/field/features/format/inlinecode/feature.server.d.ts +3 -0
  117. package/dist/field/features/format/inlinecode/feature.server.d.ts.map +1 -0
  118. package/dist/field/features/format/inlinecode/feature.server.js +19 -0
  119. package/dist/field/features/format/inlinecode/markdownTransformers.d.ts.map +1 -0
  120. package/dist/field/features/format/inlinecode/markdownTransformers.js +9 -0
  121. package/dist/field/features/format/italic/feature.client.d.ts +3 -0
  122. package/dist/field/features/format/italic/feature.client.d.ts.map +1 -0
  123. package/dist/field/features/format/italic/feature.client.js +43 -0
  124. package/dist/field/features/format/italic/feature.server.d.ts +3 -0
  125. package/dist/field/features/format/italic/feature.server.d.ts.map +1 -0
  126. package/dist/field/features/format/italic/feature.server.js +20 -0
  127. package/dist/field/features/format/italic/markdownTransformers.d.ts.map +1 -0
  128. package/dist/field/features/format/italic/markdownTransformers.js +17 -0
  129. package/dist/field/features/format/strikethrough/feature.client.d.ts +3 -0
  130. package/dist/field/features/format/strikethrough/feature.client.d.ts.map +1 -0
  131. package/dist/field/features/format/strikethrough/feature.client.js +42 -0
  132. package/dist/field/features/format/strikethrough/feature.server.d.ts +3 -0
  133. package/dist/field/features/format/strikethrough/feature.server.d.ts.map +1 -0
  134. package/dist/field/features/format/strikethrough/feature.server.js +19 -0
  135. package/dist/field/features/format/strikethrough/markdownTransformers.js +4 -14
  136. package/dist/field/features/format/subscript/feature.client.d.ts +3 -0
  137. package/dist/field/features/format/subscript/feature.client.d.ts.map +1 -0
  138. package/dist/field/features/format/subscript/feature.client.js +38 -0
  139. package/dist/field/features/format/subscript/feature.server.d.ts +3 -0
  140. package/dist/field/features/format/subscript/feature.server.d.ts.map +1 -0
  141. package/dist/field/features/format/subscript/feature.server.js +15 -0
  142. package/dist/field/features/format/superscript/feature.client.d.ts +3 -0
  143. package/dist/field/features/format/superscript/feature.client.d.ts.map +1 -0
  144. package/dist/field/features/format/superscript/feature.client.js +38 -0
  145. package/dist/field/features/format/superscript/feature.server.d.ts +3 -0
  146. package/dist/field/features/format/superscript/feature.server.d.ts.map +1 -0
  147. package/dist/field/features/format/superscript/feature.server.js +15 -0
  148. package/dist/field/features/format/underline/feature.client.d.ts +3 -0
  149. package/dist/field/features/format/underline/feature.client.d.ts.map +1 -0
  150. package/dist/field/features/format/underline/feature.client.js +38 -0
  151. package/dist/field/features/format/underline/feature.server.d.ts +3 -0
  152. package/dist/field/features/format/underline/feature.server.d.ts.map +1 -0
  153. package/dist/field/features/format/underline/feature.server.js +15 -0
  154. package/dist/field/features/heading/feature.client.d.ts +4 -0
  155. package/dist/field/features/heading/feature.client.d.ts.map +1 -0
  156. package/dist/field/features/heading/feature.client.js +95 -0
  157. package/dist/field/features/heading/feature.server.d.ts +7 -0
  158. package/dist/field/features/heading/feature.server.d.ts.map +1 -0
  159. package/dist/field/features/heading/feature.server.js +57 -0
  160. package/dist/field/features/heading/markdownTransformer.d.ts.map +1 -0
  161. package/dist/field/features/heading/markdownTransformer.js +29 -0
  162. package/dist/field/features/indent/feature.client.d.ts +3 -0
  163. package/dist/field/features/indent/feature.client.d.ts.map +1 -0
  164. package/dist/field/features/indent/feature.client.js +57 -0
  165. package/dist/field/features/indent/feature.server.d.ts +3 -0
  166. package/dist/field/features/indent/feature.server.d.ts.map +1 -0
  167. package/dist/field/features/indent/feature.server.js +16 -0
  168. package/dist/field/features/indent/floatingSelectToolbarIndentSection.js +4 -14
  169. package/dist/field/features/link/drawer/baseFields.d.ts.map +1 -0
  170. package/dist/field/features/link/drawer/baseFields.js +118 -0
  171. package/dist/field/features/link/drawer/index.d.ts.map +1 -0
  172. package/dist/field/features/link/drawer/index.js +83 -0
  173. package/dist/field/features/link/drawer/index.scss +50 -0
  174. package/dist/field/features/link/drawer/types.d.ts +8 -0
  175. package/dist/field/features/link/drawer/types.d.ts.map +1 -0
  176. package/dist/field/features/link/drawer/types.js +3 -0
  177. package/dist/field/features/link/feature.client.d.ts +5 -0
  178. package/dist/field/features/link/feature.client.d.ts.map +1 -0
  179. package/dist/field/features/link/feature.client.js +88 -0
  180. package/dist/field/features/link/feature.server.d.ts +33 -0
  181. package/dist/field/features/link/feature.server.d.ts.map +1 -0
  182. package/dist/field/features/link/feature.server.js +98 -0
  183. package/dist/field/features/link/nodes/AutoLinkNode.d.ts +16 -0
  184. package/dist/field/features/link/nodes/AutoLinkNode.d.ts.map +1 -0
  185. package/dist/field/features/link/nodes/AutoLinkNode.js +60 -0
  186. package/dist/field/features/link/nodes/LinkNode.d.ts +35 -0
  187. package/dist/field/features/link/nodes/LinkNode.d.ts.map +1 -0
  188. package/dist/field/features/link/nodes/LinkNode.js +299 -0
  189. package/dist/field/features/link/nodes/types.d.ts +19 -0
  190. package/dist/field/features/link/nodes/types.d.ts.map +1 -0
  191. package/dist/field/features/link/nodes/types.js +3 -0
  192. package/dist/field/features/link/plugins/autoLink/index.d.ts +19 -0
  193. package/dist/field/features/link/plugins/autoLink/index.d.ts.map +1 -0
  194. package/dist/field/features/link/plugins/autoLink/index.js +318 -0
  195. package/dist/field/features/link/plugins/clickableLink/index.d.ts.map +1 -0
  196. package/dist/field/features/link/plugins/clickableLink/index.js +8 -0
  197. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/commands.d.ts.map +1 -0
  198. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/commands.js +4 -0
  199. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.d.ts +5 -0
  200. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -0
  201. package/dist/field/features/link/plugins/floatingLinkEditor/LinkEditor/index.js +243 -0
  202. package/dist/field/features/link/plugins/floatingLinkEditor/index.d.ts +6 -0
  203. package/dist/field/features/link/plugins/floatingLinkEditor/index.d.ts.map +1 -0
  204. package/dist/field/features/link/plugins/floatingLinkEditor/index.js +13 -0
  205. package/dist/field/features/link/plugins/floatingLinkEditor/index.scss +78 -0
  206. package/dist/field/features/link/plugins/floatingLinkEditor/types.d.ts +13 -0
  207. package/dist/field/features/link/plugins/floatingLinkEditor/types.d.ts.map +1 -0
  208. package/dist/field/features/link/plugins/floatingLinkEditor/types.js +6 -0
  209. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.d.ts +12 -0
  210. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.d.ts.map +1 -0
  211. package/dist/field/features/link/plugins/floatingLinkEditor/utilities.js +37 -0
  212. package/dist/field/features/link/plugins/link/index.d.ts.map +1 -0
  213. package/dist/field/features/link/plugins/link/index.js +59 -0
  214. package/dist/field/features/link/populationPromise.d.ts +5 -0
  215. package/dist/field/features/link/populationPromise.d.ts.map +1 -0
  216. package/dist/field/features/link/populationPromise.js +46 -0
  217. package/dist/field/features/lists/checklist/feature.client.d.ts +3 -0
  218. package/dist/field/features/lists/checklist/feature.client.d.ts.map +1 -0
  219. package/dist/field/features/lists/checklist/feature.client.js +81 -0
  220. package/dist/field/features/lists/checklist/feature.server.d.ts +3 -0
  221. package/dist/field/features/lists/checklist/feature.server.d.ts.map +1 -0
  222. package/dist/field/features/lists/checklist/feature.server.js +35 -0
  223. package/dist/field/features/lists/checklist/markdownTransformers.d.ts.map +1 -0
  224. package/dist/field/features/lists/checklist/markdownTransformers.js +16 -0
  225. package/dist/field/features/lists/checklist/plugin/index.d.ts.map +1 -0
  226. package/dist/field/features/lists/checklist/plugin/index.js +8 -0
  227. package/dist/field/features/lists/common/markdown.js +10 -28
  228. package/dist/field/features/lists/htmlConverter.d.ts.map +1 -1
  229. package/dist/field/features/lists/htmlConverter.js +15 -31
  230. package/dist/field/features/lists/orderedlist/feature.client.d.ts +3 -0
  231. package/dist/field/features/lists/orderedlist/feature.client.d.ts.map +1 -0
  232. package/dist/field/features/lists/orderedlist/feature.client.js +71 -0
  233. package/dist/field/features/lists/orderedlist/feature.server.d.ts +3 -0
  234. package/dist/field/features/lists/orderedlist/feature.server.d.ts.map +1 -0
  235. package/dist/field/features/lists/orderedlist/feature.server.js +35 -0
  236. package/dist/field/features/lists/orderedlist/markdownTransformer.d.ts.map +1 -0
  237. package/dist/field/features/lists/orderedlist/markdownTransformer.js +16 -0
  238. package/dist/field/features/lists/plugin/index.js +5 -20
  239. package/dist/field/features/lists/unorderedlist/feature.client.d.ts +3 -0
  240. package/dist/field/features/lists/unorderedlist/feature.client.d.ts.map +1 -0
  241. package/dist/field/features/lists/unorderedlist/feature.client.js +71 -0
  242. package/dist/field/features/lists/unorderedlist/feature.server.d.ts +3 -0
  243. package/dist/field/features/lists/unorderedlist/feature.server.d.ts.map +1 -0
  244. package/dist/field/features/lists/unorderedlist/feature.server.js +35 -0
  245. package/dist/field/features/lists/unorderedlist/markdownTransformer.d.ts.map +1 -0
  246. package/dist/field/features/lists/unorderedlist/markdownTransformer.js +16 -0
  247. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.d.ts +6 -0
  248. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.d.ts.map +1 -0
  249. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/client.js +6 -0
  250. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.d.ts +3 -0
  251. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.d.ts.map +1 -0
  252. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/converter.js +20 -0
  253. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.d.ts +3 -0
  254. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.d.ts.map +1 -0
  255. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/heading/index.js +8 -0
  256. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.d.ts +6 -0
  257. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.d.ts.map +1 -0
  258. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/client.js +6 -0
  259. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.d.ts +3 -0
  260. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.d.ts.map +1 -0
  261. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/converter.js +31 -0
  262. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.d.ts +3 -0
  263. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.d.ts.map +1 -0
  264. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/link/index.js +8 -0
  265. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.d.ts +6 -0
  266. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.d.ts.map +1 -0
  267. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/client.js +6 -0
  268. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.d.ts +3 -0
  269. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.d.ts.map +1 -0
  270. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/converter.js +22 -0
  271. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.d.ts +3 -0
  272. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.d.ts.map +1 -0
  273. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/list/index.js +8 -0
  274. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.d.ts +6 -0
  275. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.d.ts.map +1 -0
  276. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/client.js +6 -0
  277. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.d.ts +3 -0
  278. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.d.ts.map +1 -0
  279. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/converter.js +22 -0
  280. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.d.ts +3 -0
  281. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.d.ts.map +1 -0
  282. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/listItem/index.js +8 -0
  283. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.d.ts +6 -0
  284. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.d.ts.map +1 -0
  285. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/client.js +6 -0
  286. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.d.ts +3 -0
  287. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.d.ts.map +1 -0
  288. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/converter.js +20 -0
  289. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.d.ts +3 -0
  290. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.d.ts.map +1 -0
  291. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/quote/index.js +8 -0
  292. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.d.ts +6 -0
  293. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.d.ts.map +1 -0
  294. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/client.js +6 -0
  295. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.d.ts +3 -0
  296. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.d.ts.map +1 -0
  297. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/converter.js +26 -0
  298. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.d.ts +3 -0
  299. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.d.ts.map +1 -0
  300. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/unknown/index.js +8 -0
  301. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.d.ts +6 -0
  302. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.d.ts.map +1 -0
  303. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/client.js +6 -0
  304. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.d.ts +3 -0
  305. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.d.ts.map +1 -0
  306. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/converter.js +25 -0
  307. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.d.ts +3 -0
  308. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.d.ts.map +1 -0
  309. package/dist/field/features/migrations/lexicalPluginToLexical/converter/converters/upload/index.js +8 -0
  310. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.d.ts +3 -0
  311. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.d.ts.map +1 -0
  312. package/dist/field/features/migrations/lexicalPluginToLexical/converter/defaultConverters.js +18 -0
  313. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.d.ts +17 -0
  314. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.d.ts.map +1 -0
  315. package/dist/field/features/migrations/lexicalPluginToLexical/converter/index.js +63 -0
  316. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.d.ts +31 -0
  317. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.d.ts.map +1 -0
  318. package/dist/field/features/migrations/lexicalPluginToLexical/converter/types.js +3 -0
  319. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.d.ts +3 -0
  320. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.d.ts.map +1 -0
  321. package/dist/field/features/migrations/lexicalPluginToLexical/feature.client.js +34 -0
  322. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.d.ts +9 -0
  323. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.d.ts.map +1 -0
  324. package/dist/field/features/migrations/lexicalPluginToLexical/feature.server.js +47 -0
  325. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -0
  326. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +8 -0
  327. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -0
  328. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js +69 -0
  329. package/dist/field/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +14 -0
  330. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.d.ts +6 -0
  331. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.d.ts.map +1 -0
  332. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/client.js +6 -0
  333. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.d.ts +3 -0
  334. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.d.ts.map +1 -0
  335. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/converter.js +23 -0
  336. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.d.ts +3 -0
  337. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.d.ts.map +1 -0
  338. package/dist/field/features/migrations/slateToLexical/converter/converters/blockquote/index.js +8 -0
  339. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.d.ts +6 -0
  340. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.d.ts.map +1 -0
  341. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/client.js +6 -0
  342. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.d.ts +3 -0
  343. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.d.ts.map +1 -0
  344. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/converter.js +29 -0
  345. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.d.ts +3 -0
  346. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.d.ts.map +1 -0
  347. package/dist/field/features/migrations/slateToLexical/converter/converters/heading/index.js +8 -0
  348. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.d.ts +6 -0
  349. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.d.ts.map +1 -0
  350. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/client.js +6 -0
  351. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.d.ts +3 -0
  352. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.d.ts.map +1 -0
  353. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/converter.js +35 -0
  354. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.d.ts +3 -0
  355. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.d.ts.map +1 -0
  356. package/dist/field/features/migrations/slateToLexical/converter/converters/indent/index.js +8 -0
  357. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.d.ts +6 -0
  358. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.d.ts.map +1 -0
  359. package/dist/field/features/migrations/slateToLexical/converter/converters/link/client.js +6 -0
  360. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.d.ts +3 -0
  361. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.d.ts.map +1 -0
  362. package/dist/field/features/migrations/slateToLexical/converter/converters/link/converter.js +30 -0
  363. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.d.ts +3 -0
  364. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.d.ts.map +1 -0
  365. package/dist/field/features/migrations/slateToLexical/converter/converters/link/index.js +8 -0
  366. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.d.ts +6 -0
  367. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.d.ts.map +1 -0
  368. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/client.js +6 -0
  369. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.d.ts +3 -0
  370. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.d.ts.map +1 -0
  371. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/converter.js +25 -0
  372. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.d.ts +3 -0
  373. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.d.ts.map +1 -0
  374. package/dist/field/features/migrations/slateToLexical/converter/converters/listItem/index.js +8 -0
  375. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.d.ts +6 -0
  376. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.d.ts.map +1 -0
  377. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/client.js +6 -0
  378. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.d.ts +3 -0
  379. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.d.ts.map +1 -0
  380. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/converter.js +26 -0
  381. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.d.ts +3 -0
  382. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.d.ts.map +1 -0
  383. package/dist/field/features/migrations/slateToLexical/converter/converters/orderedList/index.js +8 -0
  384. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.d.ts +6 -0
  385. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.d.ts.map +1 -0
  386. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/client.js +6 -0
  387. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.d.ts +3 -0
  388. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.d.ts.map +1 -0
  389. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/converter.js +18 -0
  390. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.d.ts +3 -0
  391. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.d.ts.map +1 -0
  392. package/dist/field/features/migrations/slateToLexical/converter/converters/relationship/index.js +8 -0
  393. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.d.ts +6 -0
  394. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.d.ts.map +1 -0
  395. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/client.js +6 -0
  396. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.d.ts +3 -0
  397. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.d.ts.map +1 -0
  398. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/converter.js +27 -0
  399. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.d.ts +3 -0
  400. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.d.ts.map +1 -0
  401. package/dist/field/features/migrations/slateToLexical/converter/converters/unknown/index.js +8 -0
  402. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.d.ts +6 -0
  403. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.d.ts.map +1 -0
  404. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/client.js +6 -0
  405. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.d.ts +3 -0
  406. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.d.ts.map +1 -0
  407. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js +26 -0
  408. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.d.ts +3 -0
  409. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.d.ts.map +1 -0
  410. package/dist/field/features/migrations/slateToLexical/converter/converters/unorderedList/index.js +8 -0
  411. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.d.ts +6 -0
  412. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.d.ts.map +1 -0
  413. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/client.js +6 -0
  414. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.d.ts +3 -0
  415. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.d.ts.map +1 -0
  416. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/converter.js +21 -0
  417. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.d.ts +3 -0
  418. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.d.ts.map +1 -0
  419. package/dist/field/features/migrations/slateToLexical/converter/converters/upload/index.js +8 -0
  420. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.d.ts +3 -0
  421. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.d.ts.map +1 -0
  422. package/dist/field/features/migrations/slateToLexical/converter/defaultConverters.js +24 -0
  423. package/dist/field/features/migrations/slateToLexical/converter/index.d.ts +19 -0
  424. package/dist/field/features/migrations/slateToLexical/converter/index.d.ts.map +1 -0
  425. package/dist/field/features/migrations/slateToLexical/converter/index.js +107 -0
  426. package/dist/field/features/migrations/slateToLexical/converter/types.d.ts +25 -0
  427. package/dist/field/features/migrations/slateToLexical/converter/types.d.ts.map +1 -0
  428. package/dist/field/features/migrations/slateToLexical/converter/types.js +3 -0
  429. package/dist/field/features/migrations/slateToLexical/feature.client.d.ts +3 -0
  430. package/dist/field/features/migrations/slateToLexical/feature.client.d.ts.map +1 -0
  431. package/dist/field/features/migrations/slateToLexical/feature.client.js +34 -0
  432. package/dist/field/features/migrations/slateToLexical/feature.server.d.ts +9 -0
  433. package/dist/field/features/migrations/slateToLexical/feature.server.d.ts.map +1 -0
  434. package/dist/field/features/migrations/slateToLexical/feature.server.js +47 -0
  435. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.d.ts.map +1 -0
  436. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/Component.js +8 -0
  437. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -0
  438. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js +69 -0
  439. package/dist/field/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.scss +14 -0
  440. package/dist/field/features/paragraph/feature.client.d.ts +3 -0
  441. package/dist/field/features/paragraph/feature.client.d.ts.map +1 -0
  442. package/dist/field/features/paragraph/feature.client.js +63 -0
  443. package/dist/field/features/paragraph/feature.server.d.ts +3 -0
  444. package/dist/field/features/paragraph/feature.server.d.ts.map +1 -0
  445. package/dist/field/features/paragraph/feature.server.js +16 -0
  446. package/dist/field/features/relationship/drawer/commands.d.ts.map +1 -0
  447. package/dist/field/features/relationship/drawer/commands.js +4 -0
  448. package/dist/field/features/relationship/drawer/index.d.ts.map +1 -0
  449. package/dist/field/features/relationship/drawer/index.js +79 -0
  450. package/dist/field/features/relationship/feature.client.d.ts +4 -0
  451. package/dist/field/features/relationship/feature.client.d.ts.map +1 -0
  452. package/dist/field/features/relationship/feature.client.js +56 -0
  453. package/dist/field/features/relationship/feature.server.d.ts +18 -0
  454. package/dist/field/features/relationship/feature.server.d.ts.map +1 -0
  455. package/dist/field/features/relationship/feature.server.js +26 -0
  456. package/dist/field/features/relationship/nodes/RelationshipNode.d.ts.map +1 -0
  457. package/dist/field/features/relationship/nodes/RelationshipNode.js +110 -0
  458. package/dist/field/features/relationship/nodes/components/RelationshipComponent.d.ts.map +1 -0
  459. package/dist/field/features/relationship/nodes/components/RelationshipComponent.js +103 -0
  460. package/dist/field/features/relationship/nodes/components/index.scss +97 -0
  461. package/dist/field/features/relationship/plugins/index.d.ts +7 -0
  462. package/dist/field/features/relationship/plugins/index.d.ts.map +1 -0
  463. package/dist/field/features/relationship/plugins/index.js +49 -0
  464. package/dist/field/features/relationship/populationPromise.d.ts.map +1 -0
  465. package/dist/field/features/relationship/populationPromise.js +24 -0
  466. package/dist/field/features/relationship/utils/EnabledRelationshipsCondition.d.ts.map +1 -0
  467. package/dist/field/features/relationship/utils/EnabledRelationshipsCondition.js +33 -0
  468. package/dist/field/features/types.d.ts +139 -70
  469. package/dist/field/features/types.d.ts.map +1 -1
  470. package/dist/field/features/types.js +2 -5
  471. package/dist/field/features/upload/component/ExtraFieldsDrawer/index.d.ts.map +1 -0
  472. package/dist/field/features/upload/component/ExtraFieldsDrawer/index.js +110 -0
  473. package/dist/field/features/upload/component/index.d.ts.map +1 -0
  474. package/dist/field/features/upload/component/index.js +135 -0
  475. package/dist/field/features/upload/component/index.scss +152 -0
  476. package/dist/field/features/upload/drawer/commands.d.ts.map +1 -0
  477. package/dist/field/features/upload/drawer/commands.js +5 -0
  478. package/dist/field/features/upload/drawer/index.d.ts.map +1 -0
  479. package/dist/field/features/upload/drawer/index.js +76 -0
  480. package/dist/field/features/upload/feature.client.d.ts +10 -0
  481. package/dist/field/features/upload/feature.client.d.ts.map +1 -0
  482. package/dist/field/features/upload/feature.client.js +55 -0
  483. package/dist/field/features/upload/feature.server.d.ts +12 -0
  484. package/dist/field/features/upload/feature.server.d.ts.map +1 -0
  485. package/dist/field/features/upload/feature.server.js +103 -0
  486. package/dist/field/features/upload/nodes/UploadNode.d.ts +47 -0
  487. package/dist/field/features/upload/nodes/UploadNode.d.ts.map +1 -0
  488. package/dist/field/features/upload/nodes/UploadNode.js +98 -0
  489. package/dist/field/features/upload/plugin/index.d.ts.map +1 -0
  490. package/dist/field/features/upload/plugin/index.js +52 -0
  491. package/dist/field/features/upload/populationPromise.d.ts +5 -0
  492. package/dist/field/features/upload/populationPromise.d.ts.map +1 -0
  493. package/dist/field/features/upload/populationPromise.js +46 -0
  494. package/dist/field/features/upload/validate.d.ts.map +1 -0
  495. package/dist/field/features/upload/validate.js +19 -0
  496. package/dist/field/index.d.ts +7 -2
  497. package/dist/field/index.d.ts.map +1 -1
  498. package/dist/field/index.js +78 -57
  499. package/dist/field/index.scss +2 -2
  500. package/dist/field/lexical/EditorPlugin.d.ts.map +1 -1
  501. package/dist/field/lexical/EditorPlugin.js +6 -65
  502. package/dist/field/lexical/LexicalEditor.js +39 -94
  503. package/dist/field/lexical/LexicalEditor.scss +1 -3
  504. package/dist/field/lexical/LexicalProvider.d.ts +8 -4
  505. package/dist/field/lexical/LexicalProvider.d.ts.map +1 -1
  506. package/dist/field/lexical/LexicalProvider.js +30 -83
  507. package/dist/field/lexical/config/client/EditorConfigProvider.d.ts +24 -0
  508. package/dist/field/lexical/config/client/EditorConfigProvider.d.ts.map +1 -0
  509. package/dist/field/lexical/config/client/EditorConfigProvider.js +41 -0
  510. package/dist/field/lexical/config/client/default.d.ts +3 -0
  511. package/dist/field/lexical/config/client/default.d.ts.map +1 -0
  512. package/dist/field/lexical/config/client/default.js +8 -0
  513. package/dist/field/lexical/config/client/loader.d.ts +11 -0
  514. package/dist/field/lexical/config/client/loader.d.ts.map +1 -0
  515. package/dist/field/lexical/config/client/loader.js +46 -0
  516. package/dist/field/lexical/config/client/sanitize.d.ts +6 -0
  517. package/dist/field/lexical/config/client/sanitize.d.ts.map +1 -0
  518. package/dist/field/lexical/config/client/sanitize.js +126 -0
  519. package/dist/field/lexical/config/server/default.d.ts +8 -0
  520. package/dist/field/lexical/config/server/default.d.ts.map +1 -0
  521. package/dist/field/lexical/config/server/default.js +51 -0
  522. package/dist/field/lexical/config/server/loader.d.ts +7 -0
  523. package/dist/field/lexical/config/server/loader.d.ts.map +1 -0
  524. package/dist/field/lexical/config/server/loader.js +118 -0
  525. package/dist/field/lexical/config/server/sanitize.d.ts +5 -0
  526. package/dist/field/lexical/config/server/sanitize.d.ts.map +1 -0
  527. package/dist/field/lexical/config/server/sanitize.js +65 -0
  528. package/dist/field/lexical/config/types.d.ts +18 -9
  529. package/dist/field/lexical/config/types.d.ts.map +1 -1
  530. package/dist/field/lexical/config/types.js +2 -5
  531. package/dist/field/lexical/nodes/index.d.ts +2 -2
  532. package/dist/field/lexical/nodes/index.d.ts.map +1 -1
  533. package/dist/field/lexical/nodes/index.js +8 -13
  534. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.js +19 -70
  535. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.scss +0 -2
  536. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts +3 -3
  537. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts.map +1 -1
  538. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.js +40 -98
  539. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.d.ts.map +1 -1
  540. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.js +12 -85
  541. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.scss +1 -1
  542. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.d.ts.map +1 -1
  543. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.js +57 -127
  544. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.scss +1 -1
  545. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts +4 -4
  546. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts.map +1 -1
  547. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.js +2 -5
  548. package/dist/field/lexical/plugins/MarkdownShortcut/index.js +7 -58
  549. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +39 -64
  550. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +2 -2
  551. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -1
  552. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +32 -104
  553. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts +6 -6
  554. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts.map +1 -1
  555. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js +3 -21
  556. package/dist/field/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  557. package/dist/field/lexical/plugins/SlashMenu/index.js +27 -84
  558. package/dist/field/lexical/plugins/SlashMenu/index.scss +1 -1
  559. package/dist/field/lexical/plugins/SlashMenu/useMenuTriggerMatch.js +8 -16
  560. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +35 -84
  561. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.scss +0 -2
  562. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +2 -12
  563. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +2 -12
  564. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getNodeCloseToPoint.js +18 -28
  565. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +4 -14
  566. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.js +52 -102
  567. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.scss +0 -2
  568. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +8 -18
  569. package/dist/field/lexical/plugins/handles/utils/getCollapsedMargins.js +2 -12
  570. package/dist/field/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +4 -14
  571. package/dist/field/lexical/plugins/handles/utils/isOnHandleElement.js +2 -12
  572. package/dist/field/lexical/plugins/handles/utils/setHandlePosition.js +2 -12
  573. package/dist/field/lexical/theme/EditorTheme.js +3 -13
  574. package/dist/field/lexical/theme/EditorTheme.scss +0 -2
  575. package/dist/field/lexical/ui/ContentEditable.js +6 -57
  576. package/dist/field/lexical/ui/icons/AI/index.js +7 -22
  577. package/dist/field/lexical/ui/icons/AlignCenter/index.js +6 -21
  578. package/dist/field/lexical/ui/icons/AlignJustify/index.js +6 -21
  579. package/dist/field/lexical/ui/icons/AlignLeft/index.js +6 -21
  580. package/dist/field/lexical/ui/icons/AlignRight/index.js +6 -21
  581. package/dist/field/lexical/ui/icons/Block/index.js +6 -21
  582. package/dist/field/lexical/ui/icons/Blockquote/index.js +4 -19
  583. package/dist/field/lexical/ui/icons/Bold/index.js +4 -19
  584. package/dist/field/lexical/ui/icons/Checklist/index.js +5 -20
  585. package/dist/field/lexical/ui/icons/Code/index.js +5 -20
  586. package/dist/field/lexical/ui/icons/CodeBlock/index.js +5 -20
  587. package/dist/field/lexical/ui/icons/H1/index.js +4 -19
  588. package/dist/field/lexical/ui/icons/H2/index.js +4 -19
  589. package/dist/field/lexical/ui/icons/H3/index.js +4 -19
  590. package/dist/field/lexical/ui/icons/H4/index.js +4 -19
  591. package/dist/field/lexical/ui/icons/H5/index.js +4 -19
  592. package/dist/field/lexical/ui/icons/H6/index.js +4 -19
  593. package/dist/field/lexical/ui/icons/IndentDecrease/index.js +7 -22
  594. package/dist/field/lexical/ui/icons/IndentIncrease/index.js +7 -22
  595. package/dist/field/lexical/ui/icons/Italic/index.js +4 -19
  596. package/dist/field/lexical/ui/icons/Link/index.js +7 -22
  597. package/dist/field/lexical/ui/icons/OrderedList/index.js +8 -23
  598. package/dist/field/lexical/ui/icons/Relationship/index.js +7 -22
  599. package/dist/field/lexical/ui/icons/Strikethrough/index.js +5 -20
  600. package/dist/field/lexical/ui/icons/Subscript/index.js +4 -19
  601. package/dist/field/lexical/ui/icons/Superscript/index.js +4 -19
  602. package/dist/field/lexical/ui/icons/Text/index.js +4 -19
  603. package/dist/field/lexical/ui/icons/Underline/index.js +5 -20
  604. package/dist/field/lexical/ui/icons/UnorderedList/index.js +9 -24
  605. package/dist/field/lexical/ui/icons/Upload/index.js +6 -21
  606. package/dist/field/lexical/utils/canUseDOM.js +2 -12
  607. package/dist/field/lexical/utils/cloneDeep.js +2 -12
  608. package/dist/field/lexical/utils/environment.js +13 -51
  609. package/dist/field/lexical/utils/getDOMRangeRect.js +2 -12
  610. package/dist/field/lexical/utils/getSelectedNode.js +5 -15
  611. package/dist/field/lexical/utils/guard.js +2 -12
  612. package/dist/field/lexical/utils/invariant.js +2 -12
  613. package/dist/field/lexical/utils/joinClasses.js +2 -12
  614. package/dist/field/lexical/utils/markdown/createBlockNode.js +2 -12
  615. package/dist/field/lexical/utils/nodeFormat.js +17 -61
  616. package/dist/field/lexical/utils/point.js +3 -21
  617. package/dist/field/lexical/utils/rect.js +4 -14
  618. package/dist/field/lexical/utils/setFloatingElemPosition.js +5 -12
  619. package/dist/field/lexical/utils/setFloatingElemPositionForLinkEditor.js +2 -12
  620. package/dist/field/lexical/utils/swipe.js +5 -29
  621. package/dist/field/lexical/utils/url.js +3 -21
  622. package/dist/generateComponentMap.d.ts +6 -0
  623. package/dist/generateComponentMap.d.ts.map +1 -0
  624. package/dist/generateComponentMap.js +77 -0
  625. package/dist/generateSchemaMap.d.ts +6 -0
  626. package/dist/generateSchemaMap.d.ts.map +1 -0
  627. package/dist/generateSchemaMap.js +27 -0
  628. package/dist/index.d.ts +59 -56
  629. package/dist/index.d.ts.map +1 -1
  630. package/dist/index.js +130 -488
  631. package/dist/populate/defaultValue.js +8 -26
  632. package/dist/populate/populate.js +2 -12
  633. package/dist/populate/recurseNestedFields.d.ts.map +1 -1
  634. package/dist/populate/recurseNestedFields.js +6 -14
  635. package/dist/populate/richTextRelationshipPromise.js +4 -22
  636. package/dist/scss/app.scss +209 -0
  637. package/dist/scss/colors.scss +269 -0
  638. package/dist/scss/custom.css +1 -0
  639. package/dist/scss/fonts.scss +75 -0
  640. package/dist/scss/queries.scss +27 -0
  641. package/dist/scss/resets.scss +17 -0
  642. package/dist/scss/styles.scss +11 -0
  643. package/dist/scss/svg.scss +10 -0
  644. package/dist/scss/toastify.scss +58 -0
  645. package/dist/scss/type.scss +117 -0
  646. package/dist/scss/vars.scss +220 -0
  647. package/dist/scss/z-index.scss +9 -0
  648. package/dist/types.d.ts +8 -2
  649. package/dist/types.d.ts.map +1 -1
  650. package/dist/types.js +2 -5
  651. package/dist/useLexicalFeature.d.ts +3 -0
  652. package/dist/useLexicalFeature.d.ts.map +1 -0
  653. package/dist/useLexicalFeature.js +9 -0
  654. package/dist/validate/index.d.ts +4 -4
  655. package/dist/validate/index.d.ts.map +1 -1
  656. package/dist/validate/index.js +7 -18
  657. package/dist/validate/validateNodes.d.ts +2 -4
  658. package/dist/validate/validateNodes.d.ts.map +1 -1
  659. package/dist/validate/validateNodes.js +2 -14
  660. package/package.json +13 -7
  661. package/dist/field/features/BlockQuote/index.d.ts +0 -3
  662. package/dist/field/features/BlockQuote/index.d.ts.map +0 -1
  663. package/dist/field/features/BlockQuote/index.js +0 -140
  664. package/dist/field/features/BlockQuote/markdownTransformer.d.ts.map +0 -1
  665. package/dist/field/features/BlockQuote/markdownTransformer.js +0 -50
  666. package/dist/field/features/Blocks/component/BlockContent.d.ts +0 -20
  667. package/dist/field/features/Blocks/component/BlockContent.d.ts.map +0 -1
  668. package/dist/field/features/Blocks/component/BlockContent.js +0 -220
  669. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts +0 -11
  670. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts.map +0 -1
  671. package/dist/field/features/Blocks/component/FormSavePlugin.js +0 -34
  672. package/dist/field/features/Blocks/component/index.d.ts +0 -15
  673. package/dist/field/features/Blocks/component/index.d.ts.map +0 -1
  674. package/dist/field/features/Blocks/component/index.js +0 -150
  675. package/dist/field/features/Blocks/component/index.scss +0 -153
  676. package/dist/field/features/Blocks/drawer/index.d.ts.map +0 -1
  677. package/dist/field/features/Blocks/drawer/index.js +0 -140
  678. package/dist/field/features/Blocks/index.d.ts +0 -7
  679. package/dist/field/features/Blocks/index.d.ts.map +0 -1
  680. package/dist/field/features/Blocks/index.js +0 -147
  681. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts.map +0 -1
  682. package/dist/field/features/Blocks/nodes/BlocksNode.js +0 -173
  683. package/dist/field/features/Blocks/plugin/commands.d.ts.map +0 -1
  684. package/dist/field/features/Blocks/plugin/commands.js +0 -14
  685. package/dist/field/features/Blocks/plugin/index.d.ts +0 -5
  686. package/dist/field/features/Blocks/plugin/index.d.ts.map +0 -1
  687. package/dist/field/features/Blocks/plugin/index.js +0 -91
  688. package/dist/field/features/Blocks/populationPromise.d.ts +0 -5
  689. package/dist/field/features/Blocks/populationPromise.d.ts.map +0 -1
  690. package/dist/field/features/Blocks/populationPromise.js +0 -55
  691. package/dist/field/features/Blocks/utils/transformInputFormData.d.ts +0 -11
  692. package/dist/field/features/Blocks/utils/transformInputFormData.d.ts.map +0 -1
  693. package/dist/field/features/Blocks/utils/transformInputFormData.js +0 -35
  694. package/dist/field/features/Blocks/utils/transformInputFormSchema.d.ts +0 -3
  695. package/dist/field/features/Blocks/utils/transformInputFormSchema.d.ts.map +0 -1
  696. package/dist/field/features/Blocks/utils/transformInputFormSchema.js +0 -43
  697. package/dist/field/features/Blocks/validate.d.ts +0 -5
  698. package/dist/field/features/Blocks/validate.d.ts.map +0 -1
  699. package/dist/field/features/Blocks/validate.js +0 -62
  700. package/dist/field/features/Heading/index.d.ts +0 -8
  701. package/dist/field/features/Heading/index.d.ts.map +0 -1
  702. package/dist/field/features/Heading/index.js +0 -164
  703. package/dist/field/features/Heading/markdownTransformer.d.ts.map +0 -1
  704. package/dist/field/features/Heading/markdownTransformer.js +0 -39
  705. package/dist/field/features/Link/drawer/baseFields.d.ts.map +0 -1
  706. package/dist/field/features/Link/drawer/baseFields.js +0 -128
  707. package/dist/field/features/Link/drawer/index.d.ts.map +0 -1
  708. package/dist/field/features/Link/drawer/index.js +0 -40
  709. package/dist/field/features/Link/drawer/index.scss +0 -50
  710. package/dist/field/features/Link/drawer/types.d.ts +0 -8
  711. package/dist/field/features/Link/drawer/types.d.ts.map +0 -1
  712. package/dist/field/features/Link/drawer/types.js +0 -6
  713. package/dist/field/features/Link/index.d.ts +0 -33
  714. package/dist/field/features/Link/index.d.ts.map +0 -1
  715. package/dist/field/features/Link/index.js +0 -201
  716. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts +0 -16
  717. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts.map +0 -1
  718. package/dist/field/features/Link/nodes/AutoLinkNode.js +0 -79
  719. package/dist/field/features/Link/nodes/LinkNode.d.ts +0 -50
  720. package/dist/field/features/Link/nodes/LinkNode.d.ts.map +0 -1
  721. package/dist/field/features/Link/nodes/LinkNode.js +0 -326
  722. package/dist/field/features/Link/plugins/autoLink/index.d.ts +0 -19
  723. package/dist/field/features/Link/plugins/autoLink/index.d.ts.map +0 -1
  724. package/dist/field/features/Link/plugins/autoLink/index.js +0 -336
  725. package/dist/field/features/Link/plugins/clickableLink/index.d.ts.map +0 -1
  726. package/dist/field/features/Link/plugins/clickableLink/index.js +0 -23
  727. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/commands.d.ts.map +0 -1
  728. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/commands.js +0 -14
  729. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts +0 -6
  730. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +0 -1
  731. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.js +0 -336
  732. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts +0 -7
  733. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts.map +0 -1
  734. package/dist/field/features/Link/plugins/floatingLinkEditor/index.js +0 -65
  735. package/dist/field/features/Link/plugins/floatingLinkEditor/index.scss +0 -78
  736. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts +0 -13
  737. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts.map +0 -1
  738. package/dist/field/features/Link/plugins/floatingLinkEditor/types.js +0 -6
  739. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts +0 -12
  740. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts.map +0 -1
  741. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.js +0 -45
  742. package/dist/field/features/Link/plugins/link/index.d.ts.map +0 -1
  743. package/dist/field/features/Link/plugins/link/index.js +0 -69
  744. package/dist/field/features/Link/populationPromise.d.ts +0 -5
  745. package/dist/field/features/Link/populationPromise.d.ts.map +0 -1
  746. package/dist/field/features/Link/populationPromise.js +0 -56
  747. package/dist/field/features/Paragraph/index.d.ts +0 -3
  748. package/dist/field/features/Paragraph/index.d.ts.map +0 -1
  749. package/dist/field/features/Paragraph/index.js +0 -114
  750. package/dist/field/features/Relationship/drawer/commands.d.ts.map +0 -1
  751. package/dist/field/features/Relationship/drawer/commands.js +0 -14
  752. package/dist/field/features/Relationship/drawer/index.d.ts.map +0 -1
  753. package/dist/field/features/Relationship/drawer/index.js +0 -130
  754. package/dist/field/features/Relationship/index.d.ts +0 -18
  755. package/dist/field/features/Relationship/index.d.ts.map +0 -1
  756. package/dist/field/features/Relationship/index.js +0 -115
  757. package/dist/field/features/Relationship/nodes/RelationshipNode.d.ts.map +0 -1
  758. package/dist/field/features/Relationship/nodes/RelationshipNode.js +0 -172
  759. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts.map +0 -1
  760. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.js +0 -161
  761. package/dist/field/features/Relationship/nodes/components/index.scss +0 -97
  762. package/dist/field/features/Relationship/plugins/index.d.ts +0 -7
  763. package/dist/field/features/Relationship/plugins/index.d.ts.map +0 -1
  764. package/dist/field/features/Relationship/plugins/index.js +0 -107
  765. package/dist/field/features/Relationship/populationPromise.d.ts.map +0 -1
  766. package/dist/field/features/Relationship/populationPromise.js +0 -34
  767. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.d.ts.map +0 -1
  768. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.js +0 -84
  769. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.d.ts.map +0 -1
  770. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.js +0 -148
  771. package/dist/field/features/Upload/component/index.d.ts.map +0 -1
  772. package/dist/field/features/Upload/component/index.js +0 -191
  773. package/dist/field/features/Upload/component/index.scss +0 -152
  774. package/dist/field/features/Upload/drawer/commands.d.ts.map +0 -1
  775. package/dist/field/features/Upload/drawer/commands.js +0 -14
  776. package/dist/field/features/Upload/drawer/index.d.ts.map +0 -1
  777. package/dist/field/features/Upload/drawer/index.js +0 -127
  778. package/dist/field/features/Upload/index.d.ts +0 -11
  779. package/dist/field/features/Upload/index.d.ts.map +0 -1
  780. package/dist/field/features/Upload/index.js +0 -168
  781. package/dist/field/features/Upload/nodes/UploadNode.d.ts +0 -47
  782. package/dist/field/features/Upload/nodes/UploadNode.d.ts.map +0 -1
  783. package/dist/field/features/Upload/nodes/UploadNode.js +0 -160
  784. package/dist/field/features/Upload/plugin/index.d.ts.map +0 -1
  785. package/dist/field/features/Upload/plugin/index.js +0 -111
  786. package/dist/field/features/Upload/populationPromise.d.ts +0 -5
  787. package/dist/field/features/Upload/populationPromise.d.ts.map +0 -1
  788. package/dist/field/features/Upload/populationPromise.js +0 -56
  789. package/dist/field/features/Upload/validate.d.ts.map +0 -1
  790. package/dist/field/features/Upload/validate.js +0 -29
  791. package/dist/field/features/align/index.d.ts +0 -3
  792. package/dist/field/features/align/index.d.ts.map +0 -1
  793. package/dist/field/features/align/index.js +0 -121
  794. package/dist/field/features/converters/html/index.d.ts +0 -13
  795. package/dist/field/features/converters/html/index.d.ts.map +0 -1
  796. package/dist/field/features/converters/html/index.js +0 -25
  797. package/dist/field/features/debug/TestRecorder/index.d.ts +0 -3
  798. package/dist/field/features/debug/TestRecorder/index.d.ts.map +0 -1
  799. package/dist/field/features/debug/TestRecorder/index.js +0 -70
  800. package/dist/field/features/debug/TestRecorder/plugin/index.d.ts.map +0 -1
  801. package/dist/field/features/debug/TestRecorder/plugin/index.js +0 -500
  802. package/dist/field/features/debug/TestRecorder/plugin/index.scss +0 -51
  803. package/dist/field/features/debug/TreeView/index.d.ts +0 -3
  804. package/dist/field/features/debug/TreeView/index.d.ts.map +0 -1
  805. package/dist/field/features/debug/TreeView/index.js +0 -70
  806. package/dist/field/features/debug/TreeView/plugin.d.ts +0 -4
  807. package/dist/field/features/debug/TreeView/plugin.d.ts.map +0 -1
  808. package/dist/field/features/debug/TreeView/plugin.js +0 -70
  809. package/dist/field/features/format/Bold/index.d.ts +0 -3
  810. package/dist/field/features/format/Bold/index.d.ts.map +0 -1
  811. package/dist/field/features/format/Bold/index.js +0 -98
  812. package/dist/field/features/format/Bold/markdownTransformers.d.ts.map +0 -1
  813. package/dist/field/features/format/Bold/markdownTransformers.js +0 -58
  814. package/dist/field/features/format/InlineCode/index.d.ts +0 -3
  815. package/dist/field/features/format/InlineCode/index.d.ts.map +0 -1
  816. package/dist/field/features/format/InlineCode/index.js +0 -90
  817. package/dist/field/features/format/InlineCode/markdownTransformers.d.ts.map +0 -1
  818. package/dist/field/features/format/InlineCode/markdownTransformers.js +0 -19
  819. package/dist/field/features/format/Italic/index.d.ts +0 -3
  820. package/dist/field/features/format/Italic/index.d.ts.map +0 -1
  821. package/dist/field/features/format/Italic/index.js +0 -91
  822. package/dist/field/features/format/Italic/markdownTransformers.d.ts.map +0 -1
  823. package/dist/field/features/format/Italic/markdownTransformers.js +0 -35
  824. package/dist/field/features/format/strikethrough/index.d.ts +0 -3
  825. package/dist/field/features/format/strikethrough/index.d.ts.map +0 -1
  826. package/dist/field/features/format/strikethrough/index.js +0 -90
  827. package/dist/field/features/format/subscript/index.d.ts +0 -3
  828. package/dist/field/features/format/subscript/index.d.ts.map +0 -1
  829. package/dist/field/features/format/subscript/index.js +0 -86
  830. package/dist/field/features/format/superscript/index.d.ts +0 -3
  831. package/dist/field/features/format/superscript/index.d.ts.map +0 -1
  832. package/dist/field/features/format/superscript/index.js +0 -86
  833. package/dist/field/features/format/underline/index.d.ts +0 -3
  834. package/dist/field/features/format/underline/index.d.ts.map +0 -1
  835. package/dist/field/features/format/underline/index.js +0 -86
  836. package/dist/field/features/indent/index.d.ts +0 -3
  837. package/dist/field/features/indent/index.d.ts.map +0 -1
  838. package/dist/field/features/indent/index.js +0 -114
  839. package/dist/field/features/indent/plugin.d.ts +0 -3
  840. package/dist/field/features/indent/plugin.d.ts.map +0 -1
  841. package/dist/field/features/indent/plugin.js +0 -17
  842. package/dist/field/features/lists/CheckList/index.d.ts +0 -3
  843. package/dist/field/features/lists/CheckList/index.d.ts.map +0 -1
  844. package/dist/field/features/lists/CheckList/index.js +0 -135
  845. package/dist/field/features/lists/CheckList/markdownTransformers.d.ts.map +0 -1
  846. package/dist/field/features/lists/CheckList/markdownTransformers.js +0 -26
  847. package/dist/field/features/lists/CheckList/plugin/index.d.ts.map +0 -1
  848. package/dist/field/features/lists/CheckList/plugin/index.js +0 -23
  849. package/dist/field/features/lists/OrderedList/index.d.ts +0 -3
  850. package/dist/field/features/lists/OrderedList/index.d.ts.map +0 -1
  851. package/dist/field/features/lists/OrderedList/index.js +0 -133
  852. package/dist/field/features/lists/OrderedList/markdownTransformer.d.ts.map +0 -1
  853. package/dist/field/features/lists/OrderedList/markdownTransformer.js +0 -26
  854. package/dist/field/features/lists/UnorderedList/index.d.ts +0 -3
  855. package/dist/field/features/lists/UnorderedList/index.d.ts.map +0 -1
  856. package/dist/field/features/lists/UnorderedList/index.js +0 -133
  857. package/dist/field/features/lists/UnorderedList/markdownTransformer.d.ts.map +0 -1
  858. package/dist/field/features/lists/UnorderedList/markdownTransformer.js +0 -26
  859. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.d.ts +0 -3
  860. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.d.ts.map +0 -1
  861. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/heading.js +0 -30
  862. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.d.ts +0 -3
  863. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.d.ts.map +0 -1
  864. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/link.js +0 -41
  865. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.d.ts +0 -3
  866. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.d.ts.map +0 -1
  867. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/list.js +0 -32
  868. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.d.ts +0 -3
  869. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.d.ts.map +0 -1
  870. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/listItem.js +0 -32
  871. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.d.ts +0 -3
  872. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.d.ts.map +0 -1
  873. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/quote.js +0 -30
  874. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.d.ts +0 -3
  875. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.d.ts.map +0 -1
  876. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/unknown.js +0 -36
  877. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.d.ts +0 -3
  878. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.d.ts.map +0 -1
  879. package/dist/field/features/migrations/LexicalPluginToLexical/converter/converters/upload.js +0 -35
  880. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.d.ts +0 -3
  881. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.d.ts.map +0 -1
  882. package/dist/field/features/migrations/LexicalPluginToLexical/converter/defaultConverters.js +0 -28
  883. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.d.ts +0 -18
  884. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.d.ts.map +0 -1
  885. package/dist/field/features/migrations/LexicalPluginToLexical/converter/index.js +0 -90
  886. package/dist/field/features/migrations/LexicalPluginToLexical/converter/types.d.ts +0 -20
  887. package/dist/field/features/migrations/LexicalPluginToLexical/converter/types.d.ts.map +0 -1
  888. package/dist/field/features/migrations/LexicalPluginToLexical/converter/types.js +0 -6
  889. package/dist/field/features/migrations/LexicalPluginToLexical/index.d.ts +0 -10
  890. package/dist/field/features/migrations/LexicalPluginToLexical/index.d.ts.map +0 -1
  891. package/dist/field/features/migrations/LexicalPluginToLexical/index.js +0 -50
  892. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/Component.d.ts.map +0 -1
  893. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/Component.js +0 -23
  894. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +0 -1
  895. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.js +0 -131
  896. package/dist/field/features/migrations/LexicalPluginToLexical/nodes/unknownConvertedNode/index.scss +0 -16
  897. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.d.ts +0 -3
  898. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.d.ts.map +0 -1
  899. package/dist/field/features/migrations/SlateToLexical/converter/converters/blockquote.js +0 -33
  900. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.d.ts +0 -3
  901. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.d.ts.map +0 -1
  902. package/dist/field/features/migrations/SlateToLexical/converter/converters/heading.js +0 -39
  903. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.d.ts +0 -3
  904. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.d.ts.map +0 -1
  905. package/dist/field/features/migrations/SlateToLexical/converter/converters/indent.js +0 -57
  906. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.d.ts +0 -3
  907. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.d.ts.map +0 -1
  908. package/dist/field/features/migrations/SlateToLexical/converter/converters/link.js +0 -40
  909. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.d.ts +0 -3
  910. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.d.ts.map +0 -1
  911. package/dist/field/features/migrations/SlateToLexical/converter/converters/listItem.js +0 -35
  912. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.d.ts +0 -3
  913. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.d.ts.map +0 -1
  914. package/dist/field/features/migrations/SlateToLexical/converter/converters/orderedList.js +0 -36
  915. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.d.ts +0 -3
  916. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.d.ts.map +0 -1
  917. package/dist/field/features/migrations/SlateToLexical/converter/converters/relationship.js +0 -28
  918. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.d.ts +0 -3
  919. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.d.ts.map +0 -1
  920. package/dist/field/features/migrations/SlateToLexical/converter/converters/unknown.js +0 -37
  921. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.d.ts +0 -3
  922. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.d.ts.map +0 -1
  923. package/dist/field/features/migrations/SlateToLexical/converter/converters/unorderedList.js +0 -36
  924. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.d.ts +0 -3
  925. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.d.ts.map +0 -1
  926. package/dist/field/features/migrations/SlateToLexical/converter/converters/upload.js +0 -31
  927. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.d.ts +0 -3
  928. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.d.ts.map +0 -1
  929. package/dist/field/features/migrations/SlateToLexical/converter/defaultConverters.js +0 -34
  930. package/dist/field/features/migrations/SlateToLexical/converter/index.d.ts +0 -19
  931. package/dist/field/features/migrations/SlateToLexical/converter/index.d.ts.map +0 -1
  932. package/dist/field/features/migrations/SlateToLexical/converter/index.js +0 -131
  933. package/dist/field/features/migrations/SlateToLexical/converter/types.d.ts +0 -16
  934. package/dist/field/features/migrations/SlateToLexical/converter/types.d.ts.map +0 -1
  935. package/dist/field/features/migrations/SlateToLexical/converter/types.js +0 -6
  936. package/dist/field/features/migrations/SlateToLexical/index.d.ts +0 -10
  937. package/dist/field/features/migrations/SlateToLexical/index.d.ts.map +0 -1
  938. package/dist/field/features/migrations/SlateToLexical/index.js +0 -50
  939. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/Component.d.ts.map +0 -1
  940. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/Component.js +0 -23
  941. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.d.ts.map +0 -1
  942. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.js +0 -131
  943. package/dist/field/features/migrations/SlateToLexical/nodes/unknownConvertedNode/index.scss +0 -16
  944. package/dist/field/lexical/config/EditorConfigProvider.d.ts +0 -16
  945. package/dist/field/lexical/config/EditorConfigProvider.d.ts.map +0 -1
  946. package/dist/field/lexical/config/EditorConfigProvider.js +0 -99
  947. package/dist/field/lexical/config/default.d.ts +0 -6
  948. package/dist/field/lexical/config/default.d.ts.map +0 -1
  949. package/dist/field/lexical/config/default.js +0 -112
  950. package/dist/field/lexical/config/defaultClient.d.ts +0 -3
  951. package/dist/field/lexical/config/defaultClient.d.ts.map +0 -1
  952. package/dist/field/lexical/config/defaultClient.js +0 -17
  953. package/dist/field/lexical/config/loader.d.ts +0 -7
  954. package/dist/field/lexical/config/loader.d.ts.map +0 -1
  955. package/dist/field/lexical/config/loader.js +0 -133
  956. package/dist/field/lexical/config/sanitize.d.ts +0 -5
  957. package/dist/field/lexical/config/sanitize.d.ts.map +0 -1
  958. package/dist/field/lexical/config/sanitize.js +0 -170
  959. /package/dist/field/features/{BlockQuote → blockquote}/markdownTransformer.d.ts +0 -0
  960. /package/dist/field/features/{Blocks → blocks}/drawer/index.d.ts +0 -0
  961. /package/dist/field/features/{Blocks → blocks}/nodes/BlocksNode.d.ts +0 -0
  962. /package/dist/field/features/{Blocks → blocks}/plugin/commands.d.ts +0 -0
  963. /package/dist/field/features/debug/{TestRecorder → testrecorder}/plugin/index.d.ts +0 -0
  964. /package/dist/field/features/debug/{TreeView → treeview/plugin}/index.scss +0 -0
  965. /package/dist/field/features/format/{Bold → bold}/markdownTransformers.d.ts +0 -0
  966. /package/dist/field/features/format/{InlineCode → inlinecode}/markdownTransformers.d.ts +0 -0
  967. /package/dist/field/features/format/{Italic → italic}/markdownTransformers.d.ts +0 -0
  968. /package/dist/field/features/{Heading → heading}/markdownTransformer.d.ts +0 -0
  969. /package/dist/field/features/{Link → link}/drawer/baseFields.d.ts +0 -0
  970. /package/dist/field/features/{Link → link}/drawer/index.d.ts +0 -0
  971. /package/dist/field/features/{Link → link}/plugins/clickableLink/index.d.ts +0 -0
  972. /package/dist/field/features/{Link → link}/plugins/floatingLinkEditor/LinkEditor/commands.d.ts +0 -0
  973. /package/dist/field/features/{Link → link}/plugins/link/index.d.ts +0 -0
  974. /package/dist/field/features/lists/{CheckList → checklist}/markdownTransformers.d.ts +0 -0
  975. /package/dist/field/features/lists/{CheckList → checklist}/plugin/index.d.ts +0 -0
  976. /package/dist/field/features/lists/{OrderedList → orderedlist}/markdownTransformer.d.ts +0 -0
  977. /package/dist/field/features/lists/{UnorderedList → unorderedlist}/markdownTransformer.d.ts +0 -0
  978. /package/dist/field/features/migrations/{LexicalPluginToLexical → lexicalPluginToLexical}/nodes/unknownConvertedNode/Component.d.ts +0 -0
  979. /package/dist/field/features/migrations/{LexicalPluginToLexical → lexicalPluginToLexical}/nodes/unknownConvertedNode/index.d.ts +0 -0
  980. /package/dist/field/features/migrations/{SlateToLexical → slateToLexical}/nodes/unknownConvertedNode/Component.d.ts +0 -0
  981. /package/dist/field/features/migrations/{SlateToLexical → slateToLexical}/nodes/unknownConvertedNode/index.d.ts +0 -0
  982. /package/dist/field/features/{Relationship → relationship}/drawer/commands.d.ts +0 -0
  983. /package/dist/field/features/{Relationship → relationship}/drawer/index.d.ts +0 -0
  984. /package/dist/field/features/{Relationship → relationship}/nodes/RelationshipNode.d.ts +0 -0
  985. /package/dist/field/features/{Relationship → relationship}/nodes/components/RelationshipComponent.d.ts +0 -0
  986. /package/dist/field/features/{Relationship → relationship}/populationPromise.d.ts +0 -0
  987. /package/dist/field/features/{Relationship → relationship}/utils/EnabledRelationshipsCondition.d.ts +0 -0
  988. /package/dist/field/features/{Upload → upload}/component/ExtraFieldsDrawer/index.d.ts +0 -0
  989. /package/dist/field/features/{Upload → upload}/component/index.d.ts +0 -0
  990. /package/dist/field/features/{Upload → upload}/drawer/commands.d.ts +0 -0
  991. /package/dist/field/features/{Upload → upload}/drawer/index.d.ts +0 -0
  992. /package/dist/field/features/{Upload → upload}/plugin/index.d.ts +0 -0
  993. /package/dist/field/features/{Upload → upload}/validate.d.ts +0 -0
@@ -0,0 +1,446 @@
1
+ 'use client';
2
+ import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
3
+ import { $createParagraphNode, $createTextNode, $getRoot } from 'lexical';
4
+ import * as React from 'react';
5
+ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';
6
+ import { IS_APPLE } from '../../../../lexical/utils/environment';
7
+ import './index.scss';
8
+ const copy = (text)=>{
9
+ const textArea = document.createElement('textarea');
10
+ textArea.value = text || '';
11
+ textArea.style.position = 'absolute';
12
+ textArea.style.opacity = '0';
13
+ document.body?.appendChild(textArea);
14
+ textArea.focus();
15
+ textArea.select();
16
+ try {
17
+ const result = document.execCommand('copy');
18
+ // eslint-disable-next-line no-console
19
+ console.log(result);
20
+ } catch (error) {
21
+ console.error(error);
22
+ }
23
+ document.body?.removeChild(textArea);
24
+ };
25
+ const download = (filename, text)=>{
26
+ const a = document.createElement('a');
27
+ a.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text || ''));
28
+ a.setAttribute('download', filename);
29
+ a.style.display = 'none';
30
+ document.body?.appendChild(a);
31
+ a.click();
32
+ document.body?.removeChild(a);
33
+ };
34
+ const formatStep = (step)=>{
35
+ const formatOneStep = (name, value)=>{
36
+ switch(name){
37
+ case 'click':
38
+ {
39
+ return ` await page.mouse.click(${value.x}, ${value.y});`;
40
+ }
41
+ case 'press':
42
+ {
43
+ return ` await page.keyboard.press('${value}');`;
44
+ }
45
+ case 'keydown':
46
+ {
47
+ return ` await page.keyboard.keydown('${value}');`;
48
+ }
49
+ case 'keyup':
50
+ {
51
+ return ` await page.keyboard.keyup('${value}');`;
52
+ }
53
+ case 'type':
54
+ {
55
+ return ` await page.keyboard.type('${value}');`;
56
+ }
57
+ case 'selectAll':
58
+ {
59
+ return ` await selectAll(page);`;
60
+ }
61
+ case 'snapshot':
62
+ {
63
+ return ` await assertHTMLSnapshot(page);
64
+ await assertSelection(page, {
65
+ anchorPath: [${value.anchorPath.toString()}],
66
+ anchorOffset: ${value.anchorOffset},
67
+ focusPath: [${value.focusPath.toString()}],
68
+ focusOffset: ${value.focusOffset},
69
+ });
70
+ `;
71
+ }
72
+ default:
73
+ return ``;
74
+ }
75
+ };
76
+ const formattedStep = formatOneStep(step.name, step.value);
77
+ switch(step.count){
78
+ case 1:
79
+ return formattedStep;
80
+ case 2:
81
+ return [
82
+ formattedStep,
83
+ formattedStep
84
+ ].join(`\n`);
85
+ default:
86
+ return ` await repeat(${step.count}, async () => {
87
+ ${formattedStep}
88
+ );`;
89
+ }
90
+ };
91
+ export function isSelectAll(event) {
92
+ return event.keyCode === 65 && (IS_APPLE ? event.metaKey : event.ctrlKey);
93
+ }
94
+ // stolen from LexicalSelection-test
95
+ function sanitizeSelection(selection) {
96
+ const { anchorNode, focusNode } = selection;
97
+ let { anchorOffset, focusOffset } = selection;
98
+ if (anchorOffset !== 0) {
99
+ anchorOffset--;
100
+ }
101
+ if (focusOffset !== 0) {
102
+ focusOffset--;
103
+ }
104
+ return {
105
+ anchorNode,
106
+ anchorOffset,
107
+ focusNode,
108
+ focusOffset
109
+ };
110
+ }
111
+ function getPathFromNodeToEditor(node, rootElement) {
112
+ let currentNode = node;
113
+ const path = [];
114
+ while(currentNode !== rootElement){
115
+ if (currentNode !== null && currentNode !== undefined) {
116
+ path.unshift(Array.from(currentNode?.parentNode?.childNodes ?? []).indexOf(currentNode));
117
+ }
118
+ currentNode = currentNode?.parentNode;
119
+ }
120
+ return path;
121
+ }
122
+ const keyPresses = new Set([
123
+ 'Enter',
124
+ 'Backspace',
125
+ 'Delete',
126
+ 'Escape',
127
+ 'ArrowLeft',
128
+ 'ArrowRight',
129
+ 'ArrowUp',
130
+ 'ArrowDown'
131
+ ]);
132
+ function useTestRecorder(editor) {
133
+ const [steps, setSteps] = useState([]);
134
+ const [isRecording, setIsRecording] = useState(false);
135
+ const [, setCurrentInnerHTML] = useState('');
136
+ const [templatedTest, setTemplatedTest] = useState('');
137
+ const previousSelectionRef = useRef(null);
138
+ const skipNextSelectionChangeRef = useRef(false);
139
+ const preRef = useRef(null);
140
+ const getCurrentEditor = useCallback(()=>{
141
+ return editor;
142
+ }, [
143
+ editor
144
+ ]);
145
+ const generateTestContent = useCallback(()=>{
146
+ const rootElement = editor.getRootElement();
147
+ const browserSelection = window.getSelection();
148
+ if (rootElement == null || browserSelection == null || browserSelection.anchorNode == null || browserSelection.focusNode == null || !rootElement.contains(browserSelection.anchorNode) || !rootElement.contains(browserSelection.focusNode)) {
149
+ return null;
150
+ }
151
+ return `
152
+ import {
153
+ initializeE2E,
154
+ assertHTMLSnapshot,
155
+ assertSelection,
156
+ repeat,
157
+ } from '../utils';
158
+ import {selectAll} from '../keyboardShortcuts';
159
+ import { RangeSelection } from 'lexical';
160
+ import { NodeSelection } from 'lexical';
161
+
162
+ describe('Test case', () => {
163
+ initializeE2E((e2e) => {
164
+ it('Should pass this test', async () => {
165
+ const {page} = e2e;
166
+
167
+ await page.focus('div[contenteditable="true"]');
168
+ ${steps.map(formatStep).join(`\n`)}
169
+ });
170
+ });
171
+ `;
172
+ }, [
173
+ editor,
174
+ steps
175
+ ]);
176
+ // just a wrapper around inserting new actions so that we can
177
+ // coalesce some actions like insertText/moveNativeSelection
178
+ const pushStep = useCallback((name, value)=>{
179
+ setSteps((currentSteps)=>{
180
+ // trying to group steps
181
+ const currentIndex = steps.length - 1;
182
+ const lastStep = steps[currentIndex];
183
+ if (lastStep) {
184
+ if (lastStep.name === name) {
185
+ if (name === 'type') {
186
+ // for typing events we just append the text
187
+ return [
188
+ ...steps.slice(0, currentIndex),
189
+ {
190
+ ...lastStep,
191
+ value: lastStep.value + value
192
+ }
193
+ ];
194
+ } else {
195
+ // for other events we bump the counter if their values are the same
196
+ if (lastStep.value === value) {
197
+ return [
198
+ ...steps.slice(0, currentIndex),
199
+ {
200
+ ...lastStep,
201
+ count: lastStep.count + 1
202
+ }
203
+ ];
204
+ }
205
+ }
206
+ }
207
+ }
208
+ // could not group, just append a new one
209
+ return [
210
+ ...currentSteps,
211
+ {
212
+ name,
213
+ count: 1,
214
+ value
215
+ }
216
+ ];
217
+ });
218
+ }, [
219
+ steps,
220
+ setSteps
221
+ ]);
222
+ useLayoutEffect(()=>{
223
+ const onKeyDown = (event)=>{
224
+ if (!isRecording) {
225
+ return;
226
+ }
227
+ const key = event.key;
228
+ if (isSelectAll(event)) {
229
+ pushStep('selectAll', '');
230
+ } else if (keyPresses.has(key)) {
231
+ pushStep('press', event.key);
232
+ } else if ([
233
+ ...key
234
+ ].length > 1) {
235
+ pushStep('keydown', event.key);
236
+ } else {
237
+ pushStep('type', event.key);
238
+ }
239
+ };
240
+ const onKeyUp = (event)=>{
241
+ if (!isRecording) {
242
+ return;
243
+ }
244
+ const key = event.key;
245
+ if (!keyPresses.has(key) && [
246
+ ...key
247
+ ].length > 1) {
248
+ pushStep('keyup', event.key);
249
+ }
250
+ };
251
+ return editor.registerRootListener((rootElement, prevRootElement)=>{
252
+ if (prevRootElement !== null) {
253
+ prevRootElement.removeEventListener('keydown', onKeyDown);
254
+ prevRootElement.removeEventListener('keyup', onKeyUp);
255
+ }
256
+ if (rootElement !== null) {
257
+ rootElement.addEventListener('keydown', onKeyDown);
258
+ rootElement.addEventListener('keyup', onKeyUp);
259
+ }
260
+ });
261
+ }, [
262
+ editor,
263
+ isRecording,
264
+ pushStep
265
+ ]);
266
+ useLayoutEffect(()=>{
267
+ if (preRef.current) {
268
+ preRef.current.scrollTo(0, preRef.current.scrollHeight);
269
+ }
270
+ }, [
271
+ generateTestContent
272
+ ]);
273
+ useEffect(()=>{
274
+ if (steps) {
275
+ const testContent = generateTestContent();
276
+ if (testContent !== null) {
277
+ setTemplatedTest(testContent);
278
+ }
279
+ if (preRef.current) {
280
+ preRef.current.scrollTo(0, preRef.current.scrollHeight);
281
+ }
282
+ }
283
+ }, [
284
+ generateTestContent,
285
+ steps
286
+ ]);
287
+ useEffect(()=>{
288
+ const removeUpdateListener = editor.registerUpdateListener(({ dirtyElements, dirtyLeaves, editorState })=>{
289
+ if (!isRecording) {
290
+ return;
291
+ }
292
+ const currentSelection = editorState._selection;
293
+ const previousSelection = previousSelectionRef.current;
294
+ const skipNextSelectionChange = skipNextSelectionChangeRef.current;
295
+ if (previousSelection !== currentSelection) {
296
+ if (dirtyLeaves.size === 0 && dirtyElements.size === 0 && !skipNextSelectionChange) {
297
+ const browserSelection = window.getSelection();
298
+ if (browserSelection && (browserSelection.anchorNode == null || browserSelection.focusNode == null)) {
299
+ return;
300
+ }
301
+ }
302
+ previousSelectionRef.current = currentSelection;
303
+ }
304
+ skipNextSelectionChangeRef.current = false;
305
+ const testContent = generateTestContent();
306
+ if (testContent !== null) {
307
+ setTemplatedTest(testContent);
308
+ }
309
+ });
310
+ return removeUpdateListener;
311
+ }, [
312
+ editor,
313
+ generateTestContent,
314
+ isRecording,
315
+ pushStep
316
+ ]);
317
+ // save innerHTML
318
+ useEffect(()=>{
319
+ if (!isRecording) {
320
+ return;
321
+ }
322
+ const removeUpdateListener = editor.registerUpdateListener(()=>{
323
+ const rootElement = editor.getRootElement();
324
+ if (rootElement !== null) {
325
+ setCurrentInnerHTML(rootElement?.innerHTML);
326
+ }
327
+ });
328
+ return removeUpdateListener;
329
+ }, [
330
+ editor,
331
+ isRecording
332
+ ]);
333
+ // clear editor and start recording
334
+ const toggleEditorSelection = useCallback((currentEditor)=>{
335
+ if (!isRecording) {
336
+ currentEditor.update(()=>{
337
+ const root = $getRoot();
338
+ root.clear();
339
+ const text = $createTextNode();
340
+ root.append($createParagraphNode().append(text));
341
+ text.select();
342
+ });
343
+ setSteps([]);
344
+ }
345
+ setIsRecording((currentIsRecording)=>!currentIsRecording);
346
+ }, [
347
+ isRecording
348
+ ]);
349
+ const onSnapshotClick = useCallback(()=>{
350
+ if (!isRecording) {
351
+ return;
352
+ }
353
+ const browserSelection = window.getSelection();
354
+ if (browserSelection === null || browserSelection.anchorNode == null || browserSelection.focusNode == null) {
355
+ return;
356
+ }
357
+ const { anchorNode, anchorOffset, focusNode, focusOffset } = sanitizeSelection(browserSelection);
358
+ const rootElement = getCurrentEditor().getRootElement();
359
+ let anchorPath;
360
+ if (anchorNode !== null) {
361
+ anchorPath = getPathFromNodeToEditor(anchorNode, rootElement);
362
+ }
363
+ let focusPath;
364
+ if (focusNode !== null) {
365
+ focusPath = getPathFromNodeToEditor(focusNode, rootElement);
366
+ }
367
+ pushStep('snapshot', {
368
+ anchorNode,
369
+ anchorOffset,
370
+ anchorPath,
371
+ focusNode,
372
+ focusOffset,
373
+ focusPath
374
+ });
375
+ }, [
376
+ pushStep,
377
+ isRecording,
378
+ getCurrentEditor
379
+ ]);
380
+ const onCopyClick = useCallback(()=>{
381
+ copy(generateTestContent());
382
+ }, [
383
+ generateTestContent
384
+ ]);
385
+ const onDownloadClick = useCallback(()=>{
386
+ download('test.js', generateTestContent());
387
+ }, [
388
+ generateTestContent
389
+ ]);
390
+ const button = /*#__PURE__*/ React.createElement("button", {
391
+ className: `editor-dev-button ${isRecording ? 'active' : ''}`,
392
+ id: "test-recorder-button",
393
+ onClick: (e)=>{
394
+ toggleEditorSelection(getCurrentEditor());
395
+ e.preventDefault();
396
+ },
397
+ title: isRecording ? 'Disable test recorder' : 'Enable test recorder',
398
+ type: "button"
399
+ }, isRecording ? 'Disable test recorder' : 'Enable test recorder');
400
+ const output = isRecording ? /*#__PURE__*/ React.createElement("div", {
401
+ className: "test-recorder-output"
402
+ }, /*#__PURE__*/ React.createElement("div", {
403
+ className: "test-recorder-toolbar"
404
+ }, /*#__PURE__*/ React.createElement("button", {
405
+ className: "test-recorder-button",
406
+ id: "test-recorder-button-snapshot",
407
+ onClick: (e)=>{
408
+ onSnapshotClick();
409
+ e.preventDefault();
410
+ },
411
+ title: "Insert snapshot",
412
+ type: "button"
413
+ }, "Insert Snapshot"), /*#__PURE__*/ React.createElement("button", {
414
+ className: "test-recorder-button",
415
+ id: "test-recorder-button-copy",
416
+ onClick: (e)=>{
417
+ onCopyClick();
418
+ e.preventDefault();
419
+ },
420
+ title: "Copy to clipboard",
421
+ type: "button"
422
+ }, "Copy"), /*#__PURE__*/ React.createElement("button", {
423
+ className: "test-recorder-button",
424
+ id: "test-recorder-button-download",
425
+ onClick: (e)=>{
426
+ onDownloadClick();
427
+ e.preventDefault();
428
+ },
429
+ title: "Download as a file",
430
+ type: "button"
431
+ }, "Download")), /*#__PURE__*/ React.createElement("pre", {
432
+ id: "test-recorder",
433
+ ref: preRef
434
+ }, templatedTest)) : null;
435
+ return [
436
+ button,
437
+ output
438
+ ];
439
+ }
440
+ export const TestRecorderPlugin = ()=>{
441
+ const [editor] = useLexicalComposerContext();
442
+ const [testRecorderButton, testRecorderOutput] = useTestRecorder(editor);
443
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("p", null, "HI"), testRecorderButton, testRecorderOutput, /*#__PURE__*/ React.createElement("p", null, "DONE"));
444
+ };
445
+
446
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9kZWJ1Zy90ZXN0cmVjb3JkZXIvcGx1Z2luL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCB0eXBlIHsgQmFzZVNlbGVjdGlvbiwgTGV4aWNhbEVkaXRvciB9IGZyb20gJ2xleGljYWwnXG5cbmltcG9ydCB7IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQgfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29tcG9zZXJDb250ZXh0J1xuaW1wb3J0IHsgJGNyZWF0ZVBhcmFncmFwaE5vZGUsICRjcmVhdGVUZXh0Tm9kZSwgJGdldFJvb3QgfSBmcm9tICdsZXhpY2FsJ1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VMYXlvdXRFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgSVNfQVBQTEUgfSBmcm9tICcuLi8uLi8uLi8uLi9sZXhpY2FsL3V0aWxzL2Vudmlyb25tZW50J1xuaW1wb3J0ICcuL2luZGV4LnNjc3MnXG5cbmNvbnN0IGNvcHkgPSAodGV4dDogbnVsbCB8IHN0cmluZykgPT4ge1xuICBjb25zdCB0ZXh0QXJlYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RleHRhcmVhJylcbiAgdGV4dEFyZWEudmFsdWUgPSB0ZXh0IHx8ICcnXG4gIHRleHRBcmVhLnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJ1xuICB0ZXh0QXJlYS5zdHlsZS5vcGFjaXR5ID0gJzAnXG4gIGRvY3VtZW50LmJvZHk/LmFwcGVuZENoaWxkKHRleHRBcmVhKVxuICB0ZXh0QXJlYS5mb2N1cygpXG4gIHRleHRBcmVhLnNlbGVjdCgpXG4gIHRyeSB7XG4gICAgY29uc3QgcmVzdWx0ID0gZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2NvcHknKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgY29uc29sZS5sb2cocmVzdWx0KVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpXG4gIH1cbiAgZG9jdW1lbnQuYm9keT8ucmVtb3ZlQ2hpbGQodGV4dEFyZWEpXG59XG5cbmNvbnN0IGRvd25sb2FkID0gKGZpbGVuYW1lOiBzdHJpbmcsIHRleHQ6IG51bGwgfCBzdHJpbmcpID0+IHtcbiAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuICBhLnNldEF0dHJpYnV0ZSgnaHJlZicsICdkYXRhOnRleHQvcGxhaW47Y2hhcnNldD11dGYtOCwnICsgZW5jb2RlVVJJQ29tcG9uZW50KHRleHQgfHwgJycpKVxuICBhLnNldEF0dHJpYnV0ZSgnZG93bmxvYWQnLCBmaWxlbmFtZSlcbiAgYS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnXG4gIGRvY3VtZW50LmJvZHk/LmFwcGVuZENoaWxkKGEpXG4gIGEuY2xpY2soKVxuICBkb2N1bWVudC5ib2R5Py5yZW1vdmVDaGlsZChhKVxufVxuXG5jb25zdCBmb3JtYXRTdGVwID0gKHN0ZXA6IFN0ZXApID0+IHtcbiAgY29uc3QgZm9ybWF0T25lU3RlcCA9IChuYW1lOiBzdHJpbmcsIHZhbHVlOiBTdGVwWyd2YWx1ZSddKSA9PiB7XG4gICAgc3dpdGNoIChuYW1lKSB7XG4gICAgICBjYXNlICdjbGljayc6IHtcbiAgICAgICAgcmV0dXJuIGAgICAgICBhd2FpdCBwYWdlLm1vdXNlLmNsaWNrKCR7dmFsdWUueH0sICR7dmFsdWUueX0pO2BcbiAgICAgIH1cbiAgICAgIGNhc2UgJ3ByZXNzJzoge1xuICAgICAgICByZXR1cm4gYCAgICAgIGF3YWl0IHBhZ2Uua2V5Ym9hcmQucHJlc3MoJyR7dmFsdWV9Jyk7YFxuICAgICAgfVxuICAgICAgY2FzZSAna2V5ZG93bic6IHtcbiAgICAgICAgcmV0dXJuIGAgICAgICBhd2FpdCBwYWdlLmtleWJvYXJkLmtleWRvd24oJyR7dmFsdWV9Jyk7YFxuICAgICAgfVxuICAgICAgY2FzZSAna2V5dXAnOiB7XG4gICAgICAgIHJldHVybiBgICAgICAgYXdhaXQgcGFnZS5rZXlib2FyZC5rZXl1cCgnJHt2YWx1ZX0nKTtgXG4gICAgICB9XG4gICAgICBjYXNlICd0eXBlJzoge1xuICAgICAgICByZXR1cm4gYCAgICAgIGF3YWl0IHBhZ2Uua2V5Ym9hcmQudHlwZSgnJHt2YWx1ZX0nKTtgXG4gICAgICB9XG4gICAgICBjYXNlICdzZWxlY3RBbGwnOiB7XG4gICAgICAgIHJldHVybiBgICAgICAgYXdhaXQgc2VsZWN0QWxsKHBhZ2UpO2BcbiAgICAgIH1cbiAgICAgIGNhc2UgJ3NuYXBzaG90Jzoge1xuICAgICAgICByZXR1cm4gYCAgICAgIGF3YWl0IGFzc2VydEhUTUxTbmFwc2hvdChwYWdlKTtcbiAgICAgIGF3YWl0IGFzc2VydFNlbGVjdGlvbihwYWdlLCB7XG4gICAgICAgIGFuY2hvclBhdGg6IFske3ZhbHVlLmFuY2hvclBhdGgudG9TdHJpbmcoKX1dLFxuICAgICAgICBhbmNob3JPZmZzZXQ6ICR7dmFsdWUuYW5jaG9yT2Zmc2V0fSxcbiAgICAgICAgZm9jdXNQYXRoOiBbJHt2YWx1ZS5mb2N1c1BhdGgudG9TdHJpbmcoKX1dLFxuICAgICAgICBmb2N1c09mZnNldDogJHt2YWx1ZS5mb2N1c09mZnNldH0sXG4gICAgICB9KTtcbmBcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBgYFxuICAgIH1cbiAgfVxuICBjb25zdCBmb3JtYXR0ZWRTdGVwID0gZm9ybWF0T25lU3RlcChzdGVwLm5hbWUsIHN0ZXAudmFsdWUpXG4gIHN3aXRjaCAoc3RlcC5jb3VudCkge1xuICAgIGNhc2UgMTpcbiAgICAgIHJldHVybiBmb3JtYXR0ZWRTdGVwXG4gICAgY2FzZSAyOlxuICAgICAgcmV0dXJuIFtmb3JtYXR0ZWRTdGVwLCBmb3JtYXR0ZWRTdGVwXS5qb2luKGBcXG5gKVxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gYCAgICAgIGF3YWl0IHJlcGVhdCgke3N0ZXAuY291bnR9LCBhc3luYyAoKSA9PiB7XG4gICR7Zm9ybWF0dGVkU3RlcH1cbiAgICAgICk7YFxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1NlbGVjdEFsbChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXZlbnQua2V5Q29kZSA9PT0gNjUgJiYgKElTX0FQUExFID8gZXZlbnQubWV0YUtleSA6IGV2ZW50LmN0cmxLZXkpXG59XG5cbi8vIHN0b2xlbiBmcm9tIExleGljYWxTZWxlY3Rpb24tdGVzdFxuZnVuY3Rpb24gc2FuaXRpemVTZWxlY3Rpb24oc2VsZWN0aW9uOiBTZWxlY3Rpb24pIHtcbiAgY29uc3QgeyBhbmNob3JOb2RlLCBmb2N1c05vZGUgfSA9IHNlbGVjdGlvblxuICBsZXQgeyBhbmNob3JPZmZzZXQsIGZvY3VzT2Zmc2V0IH0gPSBzZWxlY3Rpb25cbiAgaWYgKGFuY2hvck9mZnNldCAhPT0gMCkge1xuICAgIGFuY2hvck9mZnNldC0tXG4gIH1cbiAgaWYgKGZvY3VzT2Zmc2V0ICE9PSAwKSB7XG4gICAgZm9jdXNPZmZzZXQtLVxuICB9XG4gIHJldHVybiB7IGFuY2hvck5vZGUsIGFuY2hvck9mZnNldCwgZm9jdXNOb2RlLCBmb2N1c09mZnNldCB9XG59XG5cbmZ1bmN0aW9uIGdldFBhdGhGcm9tTm9kZVRvRWRpdG9yKG5vZGU6IE5vZGUsIHJvb3RFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwpIHtcbiAgbGV0IGN1cnJlbnROb2RlOiBOb2RlIHwgbnVsbCB8IHVuZGVmaW5lZCA9IG5vZGVcbiAgY29uc3QgcGF0aCA9IFtdXG4gIHdoaWxlIChjdXJyZW50Tm9kZSAhPT0gcm9vdEVsZW1lbnQpIHtcbiAgICBpZiAoY3VycmVudE5vZGUgIT09IG51bGwgJiYgY3VycmVudE5vZGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGF0aC51bnNoaWZ0KFxuICAgICAgICBBcnJheS5mcm9tKGN1cnJlbnROb2RlPy5wYXJlbnROb2RlPy5jaGlsZE5vZGVzID8/IFtdKS5pbmRleE9mKGN1cnJlbnROb2RlIGFzIENoaWxkTm9kZSksXG4gICAgICApXG4gICAgfVxuICAgIGN1cnJlbnROb2RlID0gY3VycmVudE5vZGU/LnBhcmVudE5vZGVcbiAgfVxuICByZXR1cm4gcGF0aFxufVxuXG5jb25zdCBrZXlQcmVzc2VzID0gbmV3IFNldChbXG4gICdFbnRlcicsXG4gICdCYWNrc3BhY2UnLFxuICAnRGVsZXRlJyxcbiAgJ0VzY2FwZScsXG4gICdBcnJvd0xlZnQnLFxuICAnQXJyb3dSaWdodCcsXG4gICdBcnJvd1VwJyxcbiAgJ0Fycm93RG93bicsXG5dKVxuXG50eXBlIFN0ZXAgPSB7XG4gIGNvdW50OiBudW1iZXJcbiAgbmFtZTogc3RyaW5nXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHZhbHVlOiBhbnlcbn1cblxudHlwZSBTdGVwcyA9IFN0ZXBbXVxuXG5mdW5jdGlvbiB1c2VUZXN0UmVjb3JkZXIoZWRpdG9yOiBMZXhpY2FsRWRpdG9yKTogW0pTWC5FbGVtZW50LCBKU1guRWxlbWVudCB8IG51bGxdIHtcbiAgY29uc3QgW3N0ZXBzLCBzZXRTdGVwc10gPSB1c2VTdGF0ZTxTdGVwcz4oW10pXG4gIGNvbnN0IFtpc1JlY29yZGluZywgc2V0SXNSZWNvcmRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFssIHNldEN1cnJlbnRJbm5lckhUTUxdID0gdXNlU3RhdGUoJycpXG4gIGNvbnN0IFt0ZW1wbGF0ZWRUZXN0LCBzZXRUZW1wbGF0ZWRUZXN0XSA9IHVzZVN0YXRlKCcnKVxuICBjb25zdCBwcmV2aW91c1NlbGVjdGlvblJlZiA9IHVzZVJlZjxCYXNlU2VsZWN0aW9uIHwgbnVsbD4obnVsbClcbiAgY29uc3Qgc2tpcE5leHRTZWxlY3Rpb25DaGFuZ2VSZWYgPSB1c2VSZWYoZmFsc2UpXG4gIGNvbnN0IHByZVJlZiA9IHVzZVJlZjxIVE1MUHJlRWxlbWVudD4obnVsbClcblxuICBjb25zdCBnZXRDdXJyZW50RWRpdG9yID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJldHVybiBlZGl0b3JcbiAgfSwgW2VkaXRvcl0pXG5cbiAgY29uc3QgZ2VuZXJhdGVUZXN0Q29udGVudCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCByb290RWxlbWVudCA9IGVkaXRvci5nZXRSb290RWxlbWVudCgpXG4gICAgY29uc3QgYnJvd3NlclNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKVxuXG4gICAgaWYgKFxuICAgICAgcm9vdEVsZW1lbnQgPT0gbnVsbCB8fFxuICAgICAgYnJvd3NlclNlbGVjdGlvbiA9PSBudWxsIHx8XG4gICAgICBicm93c2VyU2VsZWN0aW9uLmFuY2hvck5vZGUgPT0gbnVsbCB8fFxuICAgICAgYnJvd3NlclNlbGVjdGlvbi5mb2N1c05vZGUgPT0gbnVsbCB8fFxuICAgICAgIXJvb3RFbGVtZW50LmNvbnRhaW5zKGJyb3dzZXJTZWxlY3Rpb24uYW5jaG9yTm9kZSkgfHxcbiAgICAgICFyb290RWxlbWVudC5jb250YWlucyhicm93c2VyU2VsZWN0aW9uLmZvY3VzTm9kZSlcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIGBcbmltcG9ydCB7XG4gIGluaXRpYWxpemVFMkUsXG4gIGFzc2VydEhUTUxTbmFwc2hvdCxcbiAgYXNzZXJ0U2VsZWN0aW9uLFxuICByZXBlYXQsXG59IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7c2VsZWN0QWxsfSBmcm9tICcuLi9rZXlib2FyZFNob3J0Y3V0cyc7XG5pbXBvcnQgeyBSYW5nZVNlbGVjdGlvbiB9IGZyb20gJ2xleGljYWwnO1xuaW1wb3J0IHsgTm9kZVNlbGVjdGlvbiB9IGZyb20gJ2xleGljYWwnO1xuXG5kZXNjcmliZSgnVGVzdCBjYXNlJywgKCkgPT4ge1xuICBpbml0aWFsaXplRTJFKChlMmUpID0+IHtcbiAgICBpdCgnU2hvdWxkIHBhc3MgdGhpcyB0ZXN0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3Qge3BhZ2V9ID0gZTJlO1xuXG4gICAgICBhd2FpdCBwYWdlLmZvY3VzKCdkaXZbY29udGVudGVkaXRhYmxlPVwidHJ1ZVwiXScpO1xuJHtzdGVwcy5tYXAoZm9ybWF0U3RlcCkuam9pbihgXFxuYCl9XG4gICAgfSk7XG59KTtcbiAgICBgXG4gIH0sIFtlZGl0b3IsIHN0ZXBzXSlcblxuICAvLyBqdXN0IGEgd3JhcHBlciBhcm91bmQgaW5zZXJ0aW5nIG5ldyBhY3Rpb25zIHNvIHRoYXQgd2UgY2FuXG4gIC8vIGNvYWxlc2NlIHNvbWUgYWN0aW9ucyBsaWtlIGluc2VydFRleHQvbW92ZU5hdGl2ZVNlbGVjdGlvblxuICBjb25zdCBwdXNoU3RlcCA9IHVzZUNhbGxiYWNrKFxuICAgIChuYW1lOiBzdHJpbmcsIHZhbHVlOiBTdGVwWyd2YWx1ZSddKSA9PiB7XG4gICAgICBzZXRTdGVwcygoY3VycmVudFN0ZXBzKSA9PiB7XG4gICAgICAgIC8vIHRyeWluZyB0byBncm91cCBzdGVwc1xuICAgICAgICBjb25zdCBjdXJyZW50SW5kZXggPSBzdGVwcy5sZW5ndGggLSAxXG4gICAgICAgIGNvbnN0IGxhc3RTdGVwID0gc3RlcHNbY3VycmVudEluZGV4XVxuICAgICAgICBpZiAobGFzdFN0ZXApIHtcbiAgICAgICAgICBpZiAobGFzdFN0ZXAubmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgaWYgKG5hbWUgPT09ICd0eXBlJykge1xuICAgICAgICAgICAgICAvLyBmb3IgdHlwaW5nIGV2ZW50cyB3ZSBqdXN0IGFwcGVuZCB0aGUgdGV4dFxuICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgIC4uLnN0ZXBzLnNsaWNlKDAsIGN1cnJlbnRJbmRleCksXG4gICAgICAgICAgICAgICAgeyAuLi5sYXN0U3RlcCwgdmFsdWU6IGxhc3RTdGVwLnZhbHVlICsgdmFsdWUgfSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgLy8gZm9yIG90aGVyIGV2ZW50cyB3ZSBidW1wIHRoZSBjb3VudGVyIGlmIHRoZWlyIHZhbHVlcyBhcmUgdGhlIHNhbWVcbiAgICAgICAgICAgICAgaWYgKGxhc3RTdGVwLnZhbHVlID09PSB2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBbLi4uc3RlcHMuc2xpY2UoMCwgY3VycmVudEluZGV4KSwgeyAuLi5sYXN0U3RlcCwgY291bnQ6IGxhc3RTdGVwLmNvdW50ICsgMSB9XVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGNvdWxkIG5vdCBncm91cCwganVzdCBhcHBlbmQgYSBuZXcgb25lXG4gICAgICAgIHJldHVybiBbLi4uY3VycmVudFN0ZXBzLCB7IG5hbWUsIGNvdW50OiAxLCB2YWx1ZSB9XVxuICAgICAgfSlcbiAgICB9LFxuICAgIFtzdGVwcywgc2V0U3RlcHNdLFxuICApXG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBvbktleURvd24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgIGlmICghaXNSZWNvcmRpbmcpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBjb25zdCBrZXkgPSBldmVudC5rZXlcbiAgICAgIGlmIChpc1NlbGVjdEFsbChldmVudCkpIHtcbiAgICAgICAgcHVzaFN0ZXAoJ3NlbGVjdEFsbCcsICcnKVxuICAgICAgfSBlbHNlIGlmIChrZXlQcmVzc2VzLmhhcyhrZXkpKSB7XG4gICAgICAgIHB1c2hTdGVwKCdwcmVzcycsIGV2ZW50LmtleSlcbiAgICAgIH0gZWxzZSBpZiAoWy4uLmtleV0ubGVuZ3RoID4gMSkge1xuICAgICAgICBwdXNoU3RlcCgna2V5ZG93bicsIGV2ZW50LmtleSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHB1c2hTdGVwKCd0eXBlJywgZXZlbnQua2V5KVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IG9uS2V5VXAgPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgIGlmICghaXNSZWNvcmRpbmcpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICBjb25zdCBrZXkgPSBldmVudC5rZXlcbiAgICAgIGlmICgha2V5UHJlc3Nlcy5oYXMoa2V5KSAmJiBbLi4ua2V5XS5sZW5ndGggPiAxKSB7XG4gICAgICAgIHB1c2hTdGVwKCdrZXl1cCcsIGV2ZW50LmtleSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZWRpdG9yLnJlZ2lzdGVyUm9vdExpc3RlbmVyKFxuICAgICAgKHJvb3RFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwsIHByZXZSb290RWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsKSA9PiB7XG4gICAgICAgIGlmIChwcmV2Um9vdEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICAgICAgICBwcmV2Um9vdEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIG9uS2V5RG93bilcbiAgICAgICAgICBwcmV2Um9vdEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBvbktleVVwKVxuICAgICAgICB9XG4gICAgICAgIGlmIChyb290RWxlbWVudCAhPT0gbnVsbCkge1xuICAgICAgICAgIHJvb3RFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbktleURvd24pXG4gICAgICAgICAgcm9vdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCBvbktleVVwKVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIClcbiAgfSwgW2VkaXRvciwgaXNSZWNvcmRpbmcsIHB1c2hTdGVwXSlcblxuICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChwcmVSZWYuY3VycmVudCkge1xuICAgICAgcHJlUmVmLmN1cnJlbnQuc2Nyb2xsVG8oMCwgcHJlUmVmLmN1cnJlbnQuc2Nyb2xsSGVpZ2h0KVxuICAgIH1cbiAgfSwgW2dlbmVyYXRlVGVzdENvbnRlbnRdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHN0ZXBzKSB7XG4gICAgICBjb25zdCB0ZXN0Q29udGVudCA9IGdlbmVyYXRlVGVzdENvbnRlbnQoKVxuICAgICAgaWYgKHRlc3RDb250ZW50ICE9PSBudWxsKSB7XG4gICAgICAgIHNldFRlbXBsYXRlZFRlc3QodGVzdENvbnRlbnQpXG4gICAgICB9XG4gICAgICBpZiAocHJlUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgcHJlUmVmLmN1cnJlbnQuc2Nyb2xsVG8oMCwgcHJlUmVmLmN1cnJlbnQuc2Nyb2xsSGVpZ2h0KVxuICAgICAgfVxuICAgIH1cbiAgfSwgW2dlbmVyYXRlVGVzdENvbnRlbnQsIHN0ZXBzXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHJlbW92ZVVwZGF0ZUxpc3RlbmVyID0gZWRpdG9yLnJlZ2lzdGVyVXBkYXRlTGlzdGVuZXIoXG4gICAgICAoeyBkaXJ0eUVsZW1lbnRzLCBkaXJ0eUxlYXZlcywgZWRpdG9yU3RhdGUgfSkgPT4ge1xuICAgICAgICBpZiAoIWlzUmVjb3JkaW5nKSB7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3VycmVudFNlbGVjdGlvbiA9IGVkaXRvclN0YXRlLl9zZWxlY3Rpb25cbiAgICAgICAgY29uc3QgcHJldmlvdXNTZWxlY3Rpb24gPSBwcmV2aW91c1NlbGVjdGlvblJlZi5jdXJyZW50XG4gICAgICAgIGNvbnN0IHNraXBOZXh0U2VsZWN0aW9uQ2hhbmdlID0gc2tpcE5leHRTZWxlY3Rpb25DaGFuZ2VSZWYuY3VycmVudFxuICAgICAgICBpZiAocHJldmlvdXNTZWxlY3Rpb24gIT09IGN1cnJlbnRTZWxlY3Rpb24pIHtcbiAgICAgICAgICBpZiAoZGlydHlMZWF2ZXMuc2l6ZSA9PT0gMCAmJiBkaXJ0eUVsZW1lbnRzLnNpemUgPT09IDAgJiYgIXNraXBOZXh0U2VsZWN0aW9uQ2hhbmdlKSB7XG4gICAgICAgICAgICBjb25zdCBicm93c2VyU2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGJyb3dzZXJTZWxlY3Rpb24gJiZcbiAgICAgICAgICAgICAgKGJyb3dzZXJTZWxlY3Rpb24uYW5jaG9yTm9kZSA9PSBudWxsIHx8IGJyb3dzZXJTZWxlY3Rpb24uZm9jdXNOb2RlID09IG51bGwpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgcmV0dXJuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHByZXZpb3VzU2VsZWN0aW9uUmVmLmN1cnJlbnQgPSBjdXJyZW50U2VsZWN0aW9uXG4gICAgICAgIH1cbiAgICAgICAgc2tpcE5leHRTZWxlY3Rpb25DaGFuZ2VSZWYuY3VycmVudCA9IGZhbHNlXG4gICAgICAgIGNvbnN0IHRlc3RDb250ZW50ID0gZ2VuZXJhdGVUZXN0Q29udGVudCgpXG4gICAgICAgIGlmICh0ZXN0Q29udGVudCAhPT0gbnVsbCkge1xuICAgICAgICAgIHNldFRlbXBsYXRlZFRlc3QodGVzdENvbnRlbnQpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKVxuICAgIHJldHVybiByZW1vdmVVcGRhdGVMaXN0ZW5lclxuICB9LCBbZWRpdG9yLCBnZW5lcmF0ZVRlc3RDb250ZW50LCBpc1JlY29yZGluZywgcHVzaFN0ZXBdKVxuXG4gIC8vIHNhdmUgaW5uZXJIVE1MXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc1JlY29yZGluZykge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IHJlbW92ZVVwZGF0ZUxpc3RlbmVyID0gZWRpdG9yLnJlZ2lzdGVyVXBkYXRlTGlzdGVuZXIoKCkgPT4ge1xuICAgICAgY29uc3Qgcm9vdEVsZW1lbnQgPSBlZGl0b3IuZ2V0Um9vdEVsZW1lbnQoKVxuICAgICAgaWYgKHJvb3RFbGVtZW50ICE9PSBudWxsKSB7XG4gICAgICAgIHNldEN1cnJlbnRJbm5lckhUTUwocm9vdEVsZW1lbnQ/LmlubmVySFRNTClcbiAgICAgIH1cbiAgICB9KVxuICAgIHJldHVybiByZW1vdmVVcGRhdGVMaXN0ZW5lclxuICB9LCBbZWRpdG9yLCBpc1JlY29yZGluZ10pXG5cbiAgLy8gY2xlYXIgZWRpdG9yIGFuZCBzdGFydCByZWNvcmRpbmdcbiAgY29uc3QgdG9nZ2xlRWRpdG9yU2VsZWN0aW9uID0gdXNlQ2FsbGJhY2soXG4gICAgKGN1cnJlbnRFZGl0b3I6IExleGljYWxFZGl0b3IpID0+IHtcbiAgICAgIGlmICghaXNSZWNvcmRpbmcpIHtcbiAgICAgICAgY3VycmVudEVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJvb3QgPSAkZ2V0Um9vdCgpXG4gICAgICAgICAgcm9vdC5jbGVhcigpXG4gICAgICAgICAgY29uc3QgdGV4dCA9ICRjcmVhdGVUZXh0Tm9kZSgpXG4gICAgICAgICAgcm9vdC5hcHBlbmQoJGNyZWF0ZVBhcmFncmFwaE5vZGUoKS5hcHBlbmQodGV4dCkpXG4gICAgICAgICAgdGV4dC5zZWxlY3QoKVxuICAgICAgICB9KVxuICAgICAgICBzZXRTdGVwcyhbXSlcbiAgICAgIH1cbiAgICAgIHNldElzUmVjb3JkaW5nKChjdXJyZW50SXNSZWNvcmRpbmcpID0+ICFjdXJyZW50SXNSZWNvcmRpbmcpXG4gICAgfSxcbiAgICBbaXNSZWNvcmRpbmddLFxuICApXG5cbiAgY29uc3Qgb25TbmFwc2hvdENsaWNrID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmICghaXNSZWNvcmRpbmcpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCBicm93c2VyU2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpXG4gICAgaWYgKFxuICAgICAgYnJvd3NlclNlbGVjdGlvbiA9PT0gbnVsbCB8fFxuICAgICAgYnJvd3NlclNlbGVjdGlvbi5hbmNob3JOb2RlID09IG51bGwgfHxcbiAgICAgIGJyb3dzZXJTZWxlY3Rpb24uZm9jdXNOb2RlID09IG51bGxcbiAgICApIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCB7IGFuY2hvck5vZGUsIGFuY2hvck9mZnNldCwgZm9jdXNOb2RlLCBmb2N1c09mZnNldCB9ID0gc2FuaXRpemVTZWxlY3Rpb24oYnJvd3NlclNlbGVjdGlvbilcbiAgICBjb25zdCByb290RWxlbWVudCA9IGdldEN1cnJlbnRFZGl0b3IoKS5nZXRSb290RWxlbWVudCgpXG4gICAgbGV0IGFuY2hvclBhdGhcbiAgICBpZiAoYW5jaG9yTm9kZSAhPT0gbnVsbCkge1xuICAgICAgYW5jaG9yUGF0aCA9IGdldFBhdGhGcm9tTm9kZVRvRWRpdG9yKGFuY2hvck5vZGUsIHJvb3RFbGVtZW50KVxuICAgIH1cbiAgICBsZXQgZm9jdXNQYXRoXG4gICAgaWYgKGZvY3VzTm9kZSAhPT0gbnVsbCkge1xuICAgICAgZm9jdXNQYXRoID0gZ2V0UGF0aEZyb21Ob2RlVG9FZGl0b3IoZm9jdXNOb2RlLCByb290RWxlbWVudClcbiAgICB9XG4gICAgcHVzaFN0ZXAoJ3NuYXBzaG90Jywge1xuICAgICAgYW5jaG9yTm9kZSxcbiAgICAgIGFuY2hvck9mZnNldCxcbiAgICAgIGFuY2hvclBhdGgsXG4gICAgICBmb2N1c05vZGUsXG4gICAgICBmb2N1c09mZnNldCxcbiAgICAgIGZvY3VzUGF0aCxcbiAgICB9KVxuICB9LCBbcHVzaFN0ZXAsIGlzUmVjb3JkaW5nLCBnZXRDdXJyZW50RWRpdG9yXSlcblxuICBjb25zdCBvbkNvcHlDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb3B5KGdlbmVyYXRlVGVzdENvbnRlbnQoKSlcbiAgfSwgW2dlbmVyYXRlVGVzdENvbnRlbnRdKVxuXG4gIGNvbnN0IG9uRG93bmxvYWRDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBkb3dubG9hZCgndGVzdC5qcycsIGdlbmVyYXRlVGVzdENvbnRlbnQoKSlcbiAgfSwgW2dlbmVyYXRlVGVzdENvbnRlbnRdKVxuXG4gIGNvbnN0IGJ1dHRvbiA9IChcbiAgICA8YnV0dG9uXG4gICAgICBjbGFzc05hbWU9e2BlZGl0b3ItZGV2LWJ1dHRvbiAke2lzUmVjb3JkaW5nID8gJ2FjdGl2ZScgOiAnJ31gfVxuICAgICAgaWQ9XCJ0ZXN0LXJlY29yZGVyLWJ1dHRvblwiXG4gICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICB0b2dnbGVFZGl0b3JTZWxlY3Rpb24oZ2V0Q3VycmVudEVkaXRvcigpKVxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICAgIH19XG4gICAgICB0aXRsZT17aXNSZWNvcmRpbmcgPyAnRGlzYWJsZSB0ZXN0IHJlY29yZGVyJyA6ICdFbmFibGUgdGVzdCByZWNvcmRlcid9XG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICA+XG4gICAgICB7aXNSZWNvcmRpbmcgPyAnRGlzYWJsZSB0ZXN0IHJlY29yZGVyJyA6ICdFbmFibGUgdGVzdCByZWNvcmRlcid9XG4gICAgPC9idXR0b24+XG4gIClcbiAgY29uc3Qgb3V0cHV0ID0gaXNSZWNvcmRpbmcgPyAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXN0LXJlY29yZGVyLW91dHB1dFwiPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXN0LXJlY29yZGVyLXRvb2xiYXJcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzTmFtZT1cInRlc3QtcmVjb3JkZXItYnV0dG9uXCJcbiAgICAgICAgICBpZD1cInRlc3QtcmVjb3JkZXItYnV0dG9uLXNuYXBzaG90XCJcbiAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgb25TbmFwc2hvdENsaWNrKClcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIH19XG4gICAgICAgICAgdGl0bGU9XCJJbnNlcnQgc25hcHNob3RcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICA+XG4gICAgICAgICAgSW5zZXJ0IFNuYXBzaG90XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3NOYW1lPVwidGVzdC1yZWNvcmRlci1idXR0b25cIlxuICAgICAgICAgIGlkPVwidGVzdC1yZWNvcmRlci1idXR0b24tY29weVwiXG4gICAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICAgIG9uQ29weUNsaWNrKClcbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIH19XG4gICAgICAgICAgdGl0bGU9XCJDb3B5IHRvIGNsaXBib2FyZFwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgID5cbiAgICAgICAgICBDb3B5XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3NOYW1lPVwidGVzdC1yZWNvcmRlci1idXR0b25cIlxuICAgICAgICAgIGlkPVwidGVzdC1yZWNvcmRlci1idXR0b24tZG93bmxvYWRcIlxuICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiB7XG4gICAgICAgICAgICBvbkRvd25sb2FkQ2xpY2soKVxuICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgfX1cbiAgICAgICAgICB0aXRsZT1cIkRvd25sb2FkIGFzIGEgZmlsZVwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgID5cbiAgICAgICAgICBEb3dubG9hZFxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHByZSBpZD1cInRlc3QtcmVjb3JkZXJcIiByZWY9e3ByZVJlZn0+XG4gICAgICAgIHt0ZW1wbGF0ZWRUZXN0fVxuICAgICAgPC9wcmU+XG4gICAgPC9kaXY+XG4gICkgOiBudWxsXG5cbiAgcmV0dXJuIFtidXR0b24sIG91dHB1dF1cbn1cbmV4cG9ydCBjb25zdCBUZXN0UmVjb3JkZXJQbHVnaW46IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBbZWRpdG9yXSA9IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQoKVxuICBjb25zdCBbdGVzdFJlY29yZGVyQnV0dG9uLCB0ZXN0UmVjb3JkZXJPdXRwdXRdID0gdXNlVGVzdFJlY29yZGVyKGVkaXRvcilcblxuICByZXR1cm4gKFxuICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgIDxwPkhJPC9wPlxuICAgICAge3Rlc3RSZWNvcmRlckJ1dHRvbn1cbiAgICAgIHt0ZXN0UmVjb3JkZXJPdXRwdXR9XG4gICAgICA8cD5ET05FPC9wPlxuICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiJGNyZWF0ZVBhcmFncmFwaE5vZGUiLCIkY3JlYXRlVGV4dE5vZGUiLCIkZ2V0Um9vdCIsIlJlYWN0IiwidXNlQ2FsbGJhY2siLCJ1c2VFZmZlY3QiLCJ1c2VMYXlvdXRFZmZlY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsIklTX0FQUExFIiwiY29weSIsInRleHQiLCJ0ZXh0QXJlYSIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsInZhbHVlIiwic3R5bGUiLCJwb3NpdGlvbiIsIm9wYWNpdHkiLCJib2R5IiwiYXBwZW5kQ2hpbGQiLCJmb2N1cyIsInNlbGVjdCIsInJlc3VsdCIsImV4ZWNDb21tYW5kIiwiY29uc29sZSIsImxvZyIsImVycm9yIiwicmVtb3ZlQ2hpbGQiLCJkb3dubG9hZCIsImZpbGVuYW1lIiwiYSIsInNldEF0dHJpYnV0ZSIsImVuY29kZVVSSUNvbXBvbmVudCIsImRpc3BsYXkiLCJjbGljayIsImZvcm1hdFN0ZXAiLCJzdGVwIiwiZm9ybWF0T25lU3RlcCIsIm5hbWUiLCJ4IiwieSIsImFuY2hvclBhdGgiLCJ0b1N0cmluZyIsImFuY2hvck9mZnNldCIsImZvY3VzUGF0aCIsImZvY3VzT2Zmc2V0IiwiZm9ybWF0dGVkU3RlcCIsImNvdW50Iiwiam9pbiIsImlzU2VsZWN0QWxsIiwiZXZlbnQiLCJrZXlDb2RlIiwibWV0YUtleSIsImN0cmxLZXkiLCJzYW5pdGl6ZVNlbGVjdGlvbiIsInNlbGVjdGlvbiIsImFuY2hvck5vZGUiLCJmb2N1c05vZGUiLCJnZXRQYXRoRnJvbU5vZGVUb0VkaXRvciIsIm5vZGUiLCJyb290RWxlbWVudCIsImN1cnJlbnROb2RlIiwicGF0aCIsInVuZGVmaW5lZCIsInVuc2hpZnQiLCJBcnJheSIsImZyb20iLCJwYXJlbnROb2RlIiwiY2hpbGROb2RlcyIsImluZGV4T2YiLCJrZXlQcmVzc2VzIiwiU2V0IiwidXNlVGVzdFJlY29yZGVyIiwiZWRpdG9yIiwic3RlcHMiLCJzZXRTdGVwcyIsImlzUmVjb3JkaW5nIiwic2V0SXNSZWNvcmRpbmciLCJzZXRDdXJyZW50SW5uZXJIVE1MIiwidGVtcGxhdGVkVGVzdCIsInNldFRlbXBsYXRlZFRlc3QiLCJwcmV2aW91c1NlbGVjdGlvblJlZiIsInNraXBOZXh0U2VsZWN0aW9uQ2hhbmdlUmVmIiwicHJlUmVmIiwiZ2V0Q3VycmVudEVkaXRvciIsImdlbmVyYXRlVGVzdENvbnRlbnQiLCJnZXRSb290RWxlbWVudCIsImJyb3dzZXJTZWxlY3Rpb24iLCJ3aW5kb3ciLCJnZXRTZWxlY3Rpb24iLCJjb250YWlucyIsIm1hcCIsInB1c2hTdGVwIiwiY3VycmVudFN0ZXBzIiwiY3VycmVudEluZGV4IiwibGVuZ3RoIiwibGFzdFN0ZXAiLCJzbGljZSIsIm9uS2V5RG93biIsImtleSIsImhhcyIsIm9uS2V5VXAiLCJyZWdpc3RlclJvb3RMaXN0ZW5lciIsInByZXZSb290RWxlbWVudCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJhZGRFdmVudExpc3RlbmVyIiwiY3VycmVudCIsInNjcm9sbFRvIiwic2Nyb2xsSGVpZ2h0IiwidGVzdENvbnRlbnQiLCJyZW1vdmVVcGRhdGVMaXN0ZW5lciIsInJlZ2lzdGVyVXBkYXRlTGlzdGVuZXIiLCJkaXJ0eUVsZW1lbnRzIiwiZGlydHlMZWF2ZXMiLCJlZGl0b3JTdGF0ZSIsImN1cnJlbnRTZWxlY3Rpb24iLCJfc2VsZWN0aW9uIiwicHJldmlvdXNTZWxlY3Rpb24iLCJza2lwTmV4dFNlbGVjdGlvbkNoYW5nZSIsInNpemUiLCJpbm5lckhUTUwiLCJ0b2dnbGVFZGl0b3JTZWxlY3Rpb24iLCJjdXJyZW50RWRpdG9yIiwidXBkYXRlIiwicm9vdCIsImNsZWFyIiwiYXBwZW5kIiwiY3VycmVudElzUmVjb3JkaW5nIiwib25TbmFwc2hvdENsaWNrIiwib25Db3B5Q2xpY2siLCJvbkRvd25sb2FkQ2xpY2siLCJidXR0b24iLCJjbGFzc05hbWUiLCJpZCIsIm9uQ2xpY2siLCJlIiwicHJldmVudERlZmF1bHQiLCJ0aXRsZSIsInR5cGUiLCJvdXRwdXQiLCJkaXYiLCJwcmUiLCJyZWYiLCJUZXN0UmVjb3JkZXJQbHVnaW4iLCJ0ZXN0UmVjb3JkZXJCdXR0b24iLCJ0ZXN0UmVjb3JkZXJPdXRwdXQiLCJGcmFnbWVudCIsInAiXSwibWFwcGluZ3MiOiJBQUFBO0FBR0EsU0FBU0EseUJBQXlCLFFBQVEsd0NBQXVDO0FBQ2pGLFNBQVNDLG9CQUFvQixFQUFFQyxlQUFlLEVBQUVDLFFBQVEsUUFBUSxVQUFTO0FBQ3pFLFlBQVlDLFdBQVcsUUFBTztBQUM5QixTQUFTQyxXQUFXLEVBQUVDLFNBQVMsRUFBRUMsZUFBZSxFQUFFQyxNQUFNLEVBQUVDLFFBQVEsUUFBUSxRQUFPO0FBRWpGLFNBQVNDLFFBQVEsUUFBUSx3Q0FBdUM7QUFDaEUsT0FBTyxlQUFjO0FBRXJCLE1BQU1DLE9BQU8sQ0FBQ0M7SUFDWixNQUFNQyxXQUFXQyxTQUFTQyxhQUFhLENBQUM7SUFDeENGLFNBQVNHLEtBQUssR0FBR0osUUFBUTtJQUN6QkMsU0FBU0ksS0FBSyxDQUFDQyxRQUFRLEdBQUc7SUFDMUJMLFNBQVNJLEtBQUssQ0FBQ0UsT0FBTyxHQUFHO0lBQ3pCTCxTQUFTTSxJQUFJLEVBQUVDLFlBQVlSO0lBQzNCQSxTQUFTUyxLQUFLO0lBQ2RULFNBQVNV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
@@ -0,0 +1,49 @@
1
+ .test-recorder-output {
2
+ margin: 20px auto 20px auto;
3
+ width: 100%;
4
+ }
5
+ .test-recorder-toolbar {
6
+ display: flex;
7
+ }
8
+
9
+ .test-recorder-button {
10
+ position: relative;
11
+ display: block;
12
+ font-size: 10px;
13
+ padding: 6px 6px;
14
+ border-radius: 4px;
15
+ border: none;
16
+ cursor: pointer;
17
+ outline: none;
18
+ box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.4);
19
+ background-color: #222;
20
+ color: white;
21
+ transition: box-shadow 50ms ease-out;
22
+ }
23
+
24
+ .test-recorder-button:active {
25
+ box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.4);
26
+ }
27
+
28
+ .test-recorder-button + .test-recorder-button {
29
+ margin-left: 4px;
30
+ }
31
+
32
+ .test-recorder-button::after {
33
+ content: '';
34
+ position: absolute;
35
+ top: 8px;
36
+ right: 8px;
37
+ bottom: 8px;
38
+ left: 8px;
39
+ display: block;
40
+ background-size: contain;
41
+ filter: invert(1);
42
+ }
43
+ #test-recorder-button {
44
+ position: relative;
45
+ }
46
+
47
+ #test-recorder-button-snapshot {
48
+ margin-right: auto;
49
+ }
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ export declare const TreeViewFeatureClientComponent: import("react").FC<undefined>;
3
+ //# sourceMappingURL=feature.client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.client.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/debug/treeview/feature.client.tsx"],"names":[],"mappings":";AAqBA,eAAO,MAAM,8BAA8B,+BAA+C,CAAA"}
@@ -0,0 +1,20 @@
1
+ 'use client';
2
+ import { createClientComponent } from '../../createClientComponent';
3
+ import { TreeViewPlugin } from './plugin';
4
+ const TreeViewFeatureClient = (props)=>{
5
+ return {
6
+ clientFeatureProps: props,
7
+ feature: ()=>({
8
+ clientFeatureProps: props,
9
+ plugins: [
10
+ {
11
+ Component: TreeViewPlugin,
12
+ position: 'bottom'
13
+ }
14
+ ]
15
+ })
16
+ };
17
+ };
18
+ export const TreeViewFeatureClientComponent = createClientComponent(TreeViewFeatureClient);
19
+
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9kZWJ1Zy90cmVldmlldy9mZWF0dXJlLmNsaWVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgdHlwZSB7IEZlYXR1cmVQcm92aWRlclByb3ZpZGVyQ2xpZW50IH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmltcG9ydCB7IGNyZWF0ZUNsaWVudENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NyZWF0ZUNsaWVudENvbXBvbmVudCdcbmltcG9ydCB7IFRyZWVWaWV3UGx1Z2luIH0gZnJvbSAnLi9wbHVnaW4nXG5cbmNvbnN0IFRyZWVWaWV3RmVhdHVyZUNsaWVudDogRmVhdHVyZVByb3ZpZGVyUHJvdmlkZXJDbGllbnQ8dW5kZWZpbmVkPiA9IChwcm9wcykgPT4ge1xuICByZXR1cm4ge1xuICAgIGNsaWVudEZlYXR1cmVQcm9wczogcHJvcHMsXG4gICAgZmVhdHVyZTogKCkgPT4gKHtcbiAgICAgIGNsaWVudEZlYXR1cmVQcm9wczogcHJvcHMsXG4gICAgICBwbHVnaW5zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBDb21wb25lbnQ6IFRyZWVWaWV3UGx1Z2luLFxuICAgICAgICAgIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSksXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFRyZWVWaWV3RmVhdHVyZUNsaWVudENvbXBvbmVudCA9IGNyZWF0ZUNsaWVudENvbXBvbmVudChUcmVlVmlld0ZlYXR1cmVDbGllbnQpXG4iXSwibmFtZXMiOlsiY3JlYXRlQ2xpZW50Q29tcG9uZW50IiwiVHJlZVZpZXdQbHVnaW4iLCJUcmVlVmlld0ZlYXR1cmVDbGllbnQiLCJwcm9wcyIsImNsaWVudEZlYXR1cmVQcm9wcyIsImZlYXR1cmUiLCJwbHVnaW5zIiwiQ29tcG9uZW50IiwicG9zaXRpb24iLCJUcmVlVmlld0ZlYXR1cmVDbGllbnRDb21wb25lbnQiXSwibWFwcGluZ3MiOiJBQUFBO0FBR0EsU0FBU0EscUJBQXFCLFFBQVEsOEJBQTZCO0FBQ25FLFNBQVNDLGNBQWMsUUFBUSxXQUFVO0FBRXpDLE1BQU1DLHdCQUFrRSxDQUFDQztJQUN2RSxPQUFPO1FBQ0xDLG9CQUFvQkQ7UUFDcEJFLFNBQVMsSUFBTyxDQUFBO2dCQUNkRCxvQkFBb0JEO2dCQUNwQkcsU0FBUztvQkFDUDt3QkFDRUMsV0FBV047d0JBQ1hPLFVBQVU7b0JBQ1o7aUJBQ0Q7WUFDSCxDQUFBO0lBQ0Y7QUFDRjtBQUVBLE9BQU8sTUFBTUMsaUNBQWlDVCxzQkFBc0JFLHVCQUFzQiJ9
@@ -0,0 +1,3 @@
1
+ import type { FeatureProviderProviderServer } from '../../types';
2
+ export declare const TreeViewFeature: FeatureProviderProviderServer<undefined, undefined>;
3
+ //# sourceMappingURL=feature.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.server.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/debug/treeview/feature.server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAA;AAIhE,eAAO,MAAM,eAAe,EAAE,6BAA6B,CAAC,SAAS,EAAE,SAAS,CAW/E,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { TreeViewFeatureClientComponent } from './feature.client';
2
+ export const TreeViewFeature = (props)=>{
3
+ return {
4
+ feature: ()=>{
5
+ return {
6
+ ClientComponent: TreeViewFeatureClientComponent,
7
+ serverFeatureProps: props
8
+ };
9
+ },
10
+ key: 'treeview',
11
+ serverFeatureProps: props
12
+ };
13
+ };
14
+
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9kZWJ1Zy90cmVldmlldy9mZWF0dXJlLnNlcnZlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZlYXR1cmVQcm92aWRlclByb3ZpZGVyU2VydmVyIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmltcG9ydCB7IFRyZWVWaWV3RmVhdHVyZUNsaWVudENvbXBvbmVudCB9IGZyb20gJy4vZmVhdHVyZS5jbGllbnQnXG5cbmV4cG9ydCBjb25zdCBUcmVlVmlld0ZlYXR1cmU6IEZlYXR1cmVQcm92aWRlclByb3ZpZGVyU2VydmVyPHVuZGVmaW5lZCwgdW5kZWZpbmVkPiA9IChwcm9wcykgPT4ge1xuICByZXR1cm4ge1xuICAgIGZlYXR1cmU6ICgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIENsaWVudENvbXBvbmVudDogVHJlZVZpZXdGZWF0dXJlQ2xpZW50Q29tcG9uZW50LFxuICAgICAgICBzZXJ2ZXJGZWF0dXJlUHJvcHM6IHByb3BzLFxuICAgICAgfVxuICAgIH0sXG4gICAga2V5OiAndHJlZXZpZXcnLFxuICAgIHNlcnZlckZlYXR1cmVQcm9wczogcHJvcHMsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJUcmVlVmlld0ZlYXR1cmVDbGllbnRDb21wb25lbnQiLCJUcmVlVmlld0ZlYXR1cmUiLCJwcm9wcyIsImZlYXR1cmUiLCJDbGllbnRDb21wb25lbnQiLCJzZXJ2ZXJGZWF0dXJlUHJvcHMiLCJrZXkiXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLDhCQUE4QixRQUFRLG1CQUFrQjtBQUVqRSxPQUFPLE1BQU1DLGtCQUF1RSxDQUFDQztJQUNuRixPQUFPO1FBQ0xDLFNBQVM7WUFDUCxPQUFPO2dCQUNMQyxpQkFBaUJKO2dCQUNqQkssb0JBQW9CSDtZQUN0QjtRQUNGO1FBQ0FJLEtBQUs7UUFDTEQsb0JBQW9CSDtJQUN0QjtBQUNGLEVBQUMifQ==
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import './index.scss';
3
+ export declare function TreeViewPlugin(): React.ReactNode;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/field/features/debug/treeview/plugin/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,cAAc,CAAA;AAErB,wBAAgB,cAAc,IAAI,KAAK,CAAC,SAAS,CAahD"}
@@ -0,0 +1,19 @@
1
+ 'use client';
2
+ import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
3
+ import { TreeView } from '@lexical/react/LexicalTreeView';
4
+ import * as React from 'react';
5
+ import './index.scss';
6
+ export function TreeViewPlugin() {
7
+ const [editor] = useLexicalComposerContext();
8
+ return /*#__PURE__*/ React.createElement(TreeView, {
9
+ editor: editor,
10
+ timeTravelButtonClassName: "debug-timetravel-button",
11
+ timeTravelPanelButtonClassName: "debug-timetravel-panel-button",
12
+ timeTravelPanelClassName: "debug-timetravel-panel",
13
+ timeTravelPanelSliderClassName: "debug-timetravel-panel-slider",
14
+ treeTypeButtonClassName: "debug-treetype-button",
15
+ viewClassName: "tree-view-output"
16
+ });
17
+ }
18
+
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9kZWJ1Zy90cmVldmlldy9wbHVnaW4vaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuaW1wb3J0IHsgdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnXG5pbXBvcnQgeyBUcmVlVmlldyB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxUcmVlVmlldydcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcblxuZXhwb3J0IGZ1bmN0aW9uIFRyZWVWaWV3UGx1Z2luKCk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG4gIHJldHVybiAoXG4gICAgPFRyZWVWaWV3XG4gICAgICBlZGl0b3I9e2VkaXRvcn1cbiAgICAgIHRpbWVUcmF2ZWxCdXR0b25DbGFzc05hbWU9XCJkZWJ1Zy10aW1ldHJhdmVsLWJ1dHRvblwiXG4gICAgICB0aW1lVHJhdmVsUGFuZWxCdXR0b25DbGFzc05hbWU9XCJkZWJ1Zy10aW1ldHJhdmVsLXBhbmVsLWJ1dHRvblwiXG4gICAgICB0aW1lVHJhdmVsUGFuZWxDbGFzc05hbWU9XCJkZWJ1Zy10aW1ldHJhdmVsLXBhbmVsXCJcbiAgICAgIHRpbWVUcmF2ZWxQYW5lbFNsaWRlckNsYXNzTmFtZT1cImRlYnVnLXRpbWV0cmF2ZWwtcGFuZWwtc2xpZGVyXCJcbiAgICAgIHRyZWVUeXBlQnV0dG9uQ2xhc3NOYW1lPVwiZGVidWctdHJlZXR5cGUtYnV0dG9uXCJcbiAgICAgIHZpZXdDbGFzc05hbWU9XCJ0cmVlLXZpZXctb3V0cHV0XCJcbiAgICAvPlxuICApXG59XG4iXSwibmFtZXMiOlsidXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCIsIlRyZWVWaWV3IiwiUmVhY3QiLCJUcmVlVmlld1BsdWdpbiIsImVkaXRvciIsInRpbWVUcmF2ZWxCdXR0b25DbGFzc05hbWUiLCJ0aW1lVHJhdmVsUGFuZWxCdXR0b25DbGFzc05hbWUiLCJ0aW1lVHJhdmVsUGFuZWxDbGFzc05hbWUiLCJ0aW1lVHJhdmVsUGFuZWxTbGlkZXJDbGFzc05hbWUiLCJ0cmVlVHlwZUJ1dHRvbkNsYXNzTmFtZSIsInZpZXdDbGFzc05hbWUiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0EsU0FBU0EseUJBQXlCLFFBQVEsd0NBQXVDO0FBQ2pGLFNBQVNDLFFBQVEsUUFBUSxpQ0FBZ0M7QUFDekQsWUFBWUMsV0FBVyxRQUFPO0FBRTlCLE9BQU8sZUFBYztBQUVyQixPQUFPLFNBQVNDO0lBQ2QsTUFBTSxDQUFDQyxPQUFPLEdBQUdKO0lBQ2pCLHFCQUNFLG9CQUFDQztRQUNDRyxRQUFRQTtRQUNSQywyQkFBMEI7UUFDMUJDLGdDQUErQjtRQUMvQkMsMEJBQXlCO1FBQ3pCQyxnQ0FBK0I7UUFDL0JDLHlCQUF3QjtRQUN4QkMsZUFBYzs7QUFHcEIifQ==
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ export declare const BoldFeatureClientComponent: import("react").FC<undefined>;
3
+ //# sourceMappingURL=feature.client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.client.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/format/bold/feature.client.tsx"],"names":[],"mappings":";AAoDA,eAAO,MAAM,0BAA0B,+BAA2C,CAAA"}