@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,60 @@
1
+ import { $applyNodeReplacement, $isElementNode } from 'lexical';
2
+ import { LinkNode } from './LinkNode';
3
+ // Custom node type to override `canInsertTextAfter` that will
4
+ // allow typing within the link
5
+ export class AutoLinkNode extends LinkNode {
6
+ static clone(node) {
7
+ return new AutoLinkNode({
8
+ fields: node.__fields,
9
+ key: node.__key
10
+ });
11
+ }
12
+ static getType() {
13
+ return 'autolink';
14
+ }
15
+ static importDOM() {
16
+ // TODO: Should link node should handle the import over autolink?
17
+ return null;
18
+ }
19
+ static importJSON(serializedNode) {
20
+ if (serializedNode.version === 1 && typeof serializedNode.fields?.doc?.value === 'object' && serializedNode.fields?.doc?.value?.id) {
21
+ serializedNode.fields.doc.value = serializedNode.fields.doc.value.id;
22
+ serializedNode.version = 2;
23
+ }
24
+ const node = $createAutoLinkNode({
25
+ fields: serializedNode.fields
26
+ });
27
+ node.setFormat(serializedNode.format);
28
+ node.setIndent(serializedNode.indent);
29
+ node.setDirection(serializedNode.direction);
30
+ return node;
31
+ }
32
+ exportJSON() {
33
+ return {
34
+ ...super.exportJSON(),
35
+ type: 'autolink',
36
+ version: 2
37
+ };
38
+ }
39
+ insertNewAfter(selection, restoreSelection = true) {
40
+ const element = this.getParentOrThrow().insertNewAfter(selection, restoreSelection);
41
+ if ($isElementNode(element)) {
42
+ const linkNode = $createAutoLinkNode({
43
+ fields: this.__fields
44
+ });
45
+ element.append(linkNode);
46
+ return linkNode;
47
+ }
48
+ return null;
49
+ }
50
+ }
51
+ export function $createAutoLinkNode({ fields }) {
52
+ return $applyNodeReplacement(new AutoLinkNode({
53
+ fields
54
+ }));
55
+ }
56
+ export function $isAutoLinkNode(node) {
57
+ return node instanceof AutoLinkNode;
58
+ }
59
+
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9saW5rL25vZGVzL0F1dG9MaW5rTm9kZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAkYXBwbHlOb2RlUmVwbGFjZW1lbnQsXG4gICRpc0VsZW1lbnROb2RlLFxuICB0eXBlIEVsZW1lbnROb2RlLFxuICB0eXBlIExleGljYWxOb2RlLFxuICB0eXBlIFJhbmdlU2VsZWN0aW9uLFxufSBmcm9tICdsZXhpY2FsJ1xuXG5pbXBvcnQgdHlwZSB7IExpbmtGaWVsZHMsIFNlcmlhbGl6ZWRBdXRvTGlua05vZGUgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBMaW5rTm9kZSB9IGZyb20gJy4vTGlua05vZGUnXG5cbi8vIEN1c3RvbSBub2RlIHR5cGUgdG8gb3ZlcnJpZGUgYGNhbkluc2VydFRleHRBZnRlcmAgdGhhdCB3aWxsXG4vLyBhbGxvdyB0eXBpbmcgd2l0aGluIHRoZSBsaW5rXG5cbmV4cG9ydCBjbGFzcyBBdXRvTGlua05vZGUgZXh0ZW5kcyBMaW5rTm9kZSB7XG4gIHN0YXRpYyBjbG9uZShub2RlOiBBdXRvTGlua05vZGUpOiBBdXRvTGlua05vZGUge1xuICAgIHJldHVybiBuZXcgQXV0b0xpbmtOb2RlKHsgZmllbGRzOiBub2RlLl9fZmllbGRzLCBrZXk6IG5vZGUuX19rZXkgfSlcbiAgfVxuXG4gIHN0YXRpYyBnZXRUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdhdXRvbGluaydcbiAgfVxuXG4gIHN0YXRpYyBpbXBvcnRET00oKTogbnVsbCB7XG4gICAgLy8gVE9ETzogU2hvdWxkIGxpbmsgbm9kZSBzaG91bGQgaGFuZGxlIHRoZSBpbXBvcnQgb3ZlciBhdXRvbGluaz9cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgc3RhdGljIGltcG9ydEpTT04oc2VyaWFsaXplZE5vZGU6IFNlcmlhbGl6ZWRBdXRvTGlua05vZGUpOiBBdXRvTGlua05vZGUge1xuICAgIGlmIChcbiAgICAgIHNlcmlhbGl6ZWROb2RlLnZlcnNpb24gPT09IDEgJiZcbiAgICAgIHR5cGVvZiBzZXJpYWxpemVkTm9kZS5maWVsZHM/LmRvYz8udmFsdWUgPT09ICdvYmplY3QnICYmXG4gICAgICBzZXJpYWxpemVkTm9kZS5maWVsZHM/LmRvYz8udmFsdWU/LmlkXG4gICAgKSB7XG4gICAgICBzZXJpYWxpemVkTm9kZS5maWVsZHMuZG9jLnZhbHVlID0gc2VyaWFsaXplZE5vZGUuZmllbGRzLmRvYy52YWx1ZS5pZFxuICAgICAgc2VyaWFsaXplZE5vZGUudmVyc2lvbiA9IDJcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gJGNyZWF0ZUF1dG9MaW5rTm9kZSh7IGZpZWxkczogc2VyaWFsaXplZE5vZGUuZmllbGRzIH0pXG5cbiAgICBub2RlLnNldEZvcm1hdChzZXJpYWxpemVkTm9kZS5mb3JtYXQpXG4gICAgbm9kZS5zZXRJbmRlbnQoc2VyaWFsaXplZE5vZGUuaW5kZW50KVxuICAgIG5vZGUuc2V0RGlyZWN0aW9uKHNlcmlhbGl6ZWROb2RlLmRpcmVjdGlvbilcbiAgICByZXR1cm4gbm9kZVxuICB9XG5cbiAgZXhwb3J0SlNPTigpOiBTZXJpYWxpemVkQXV0b0xpbmtOb2RlIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIuZXhwb3J0SlNPTigpLFxuICAgICAgdHlwZTogJ2F1dG9saW5rJyxcbiAgICAgIHZlcnNpb246IDIsXG4gICAgfVxuICB9XG5cbiAgaW5zZXJ0TmV3QWZ0ZXIoc2VsZWN0aW9uOiBSYW5nZVNlbGVjdGlvbiwgcmVzdG9yZVNlbGVjdGlvbiA9IHRydWUpOiBFbGVtZW50Tm9kZSB8IG51bGwge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmdldFBhcmVudE9yVGhyb3coKS5pbnNlcnROZXdBZnRlcihzZWxlY3Rpb24sIHJlc3RvcmVTZWxlY3Rpb24pXG4gICAgaWYgKCRpc0VsZW1lbnROb2RlKGVsZW1lbnQpKSB7XG4gICAgICBjb25zdCBsaW5rTm9kZSA9ICRjcmVhdGVBdXRvTGlua05vZGUoeyBmaWVsZHM6IHRoaXMuX19maWVsZHMgfSlcbiAgICAgIGVsZW1lbnQuYXBwZW5kKGxpbmtOb2RlKVxuICAgICAgcmV0dXJuIGxpbmtOb2RlXG4gICAgfVxuICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uICRjcmVhdGVBdXRvTGlua05vZGUoeyBmaWVsZHMgfTogeyBmaWVsZHM6IExpbmtGaWVsZHMgfSk6IEF1dG9MaW5rTm9kZSB7XG4gIHJldHVybiAkYXBwbHlOb2RlUmVwbGFjZW1lbnQobmV3IEF1dG9MaW5rTm9kZSh7IGZpZWxkcyB9KSlcbn1cbmV4cG9ydCBmdW5jdGlvbiAkaXNBdXRvTGlua05vZGUobm9kZTogTGV4aWNhbE5vZGUgfCBudWxsIHwgdW5kZWZpbmVkKTogbm9kZSBpcyBBdXRvTGlua05vZGUge1xuICByZXR1cm4gbm9kZSBpbnN0YW5jZW9mIEF1dG9MaW5rTm9kZVxufVxuIl0sIm5hbWVzIjpbIiRhcHBseU5vZGVSZXBsYWNlbWVudCIsIiRpc0VsZW1lbnROb2RlIiwiTGlua05vZGUiLCJBdXRvTGlua05vZGUiLCJjbG9uZSIsIm5vZGUiLCJmaWVsZHMiLCJfX2ZpZWxkcyIsImtleSIsIl9fa2V5IiwiZ2V0VHlwZSIsImltcG9ydERPTSIsImltcG9ydEpTT04iLCJzZXJpYWxpemVkTm9kZSIsInZlcnNpb24iLCJkb2MiLCJ2YWx1ZSIsImlkIiwiJGNyZWF0ZUF1dG9MaW5rTm9kZSIsInNldEZvcm1hdCIsImZvcm1hdCIsInNldEluZGVudCIsImluZGVudCIsInNldERpcmVjdGlvbiIsImRpcmVjdGlvbiIsImV4cG9ydEpTT04iLCJ0eXBlIiwiaW5zZXJ0TmV3QWZ0ZXIiLCJzZWxlY3Rpb24iLCJyZXN0b3JlU2VsZWN0aW9uIiwiZWxlbWVudCIsImdldFBhcmVudE9yVGhyb3ciLCJsaW5rTm9kZSIsImFwcGVuZCIsIiRpc0F1dG9MaW5rTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FDRUEscUJBQXFCLEVBQ3JCQyxjQUFjLFFBSVQsVUFBUztBQUloQixTQUFTQyxRQUFRLFFBQVEsYUFBWTtBQUVyQyw4REFBOEQ7QUFDOUQsK0JBQStCO0FBRS9CLE9BQU8sTUFBTUMscUJBQXFCRDtJQUNoQyxPQUFPRSxNQUFNQyxJQUFrQixFQUFnQjtRQUM3QyxPQUFPLElBQUlGLGFBQWE7WUFBRUcsUUFBUUQsS0FBS0UsUUFBUTtZQUFFQyxLQUFLSCxLQUFLSSxLQUFLO1FBQUM7SUFDbkU7SUFFQSxPQUFPQyxVQUFrQjtRQUN2QixPQUFPO0lBQ1Q7SUFFQSxPQUFPQyxZQUFrQjtRQUN2QixpRUFBaUU7UUFDakUsT0FBTztJQUNUO0lBRUEsT0FBT0MsV0FBV0MsY0FBc0MsRUFBZ0I7UUFDdEUsSUFDRUEsZUFBZUMsT0FBTyxLQUFLLEtBQzNCLE9BQU9ELGVBQWVQLE1BQU0sRUFBRVMsS0FBS0MsVUFBVSxZQUM3Q0gsZUFBZVAsTUFBTSxFQUFFUyxLQUFLQyxPQUFPQyxJQUNuQztZQUNBSixlQUFlUCxNQUFNLENBQUNTLEdBQUcsQ0FBQ0MsS0FBSyxHQUFHSCxlQUFlUCxNQUFNLENBQUNTLEdBQUcsQ0FBQ0MsS0FBSyxDQUFDQyxFQUFFO1lBQ3BFSixlQUFlQyxPQUFPLEdBQUc7UUFDM0I7UUFFQSxNQUFNVCxPQUFPYSxvQkFBb0I7WUFBRVosUUFBUU8sZUFBZVAsTUFBTTtRQUFDO1FBRWpFRCxLQUFLYyxTQUFTLENBQUNOLGVBQWVPLE1BQU07UUFDcENmLEtBQUtnQixTQUFTLENBQUNSLGVBQWVTLE1BQU07UUFDcENqQixLQUFLa0IsWUFBWSxDQUFDVixlQUFlVyxTQUFTO1FBQzFDLE9BQU9uQjtJQUNUO0lBRUFvQixhQUFxQztRQUNuQyxPQUFPO1lBQ0wsR0FBRyxLQUFLLENBQUNBLFlBQVk7WUFDckJDLE1BQU07WUFDTlosU0FBUztRQUNYO0lBQ0Y7SUFFQWEsZUFBZUMsU0FBeUIsRUFBRUMsbUJBQW1CLElBQUksRUFBc0I7UUFDckYsTUFBTUMsVUFBVSxJQUFJLENBQUNDLGdCQUFnQixHQUFHSixjQUFjLENBQUNDLFdBQVdDO1FBQ2xFLElBQUk1QixlQUFlNkIsVUFBVTtZQUMzQixNQUFNRSxXQUFXZCxvQkFBb0I7Z0JBQUVaLFFBQVEsSUFBSSxDQUFDQyxRQUFRO1lBQUM7WUFDN0R1QixRQUFRRyxNQUFNLENBQUNEO1lBQ2YsT0FBT0E7UUFDVDtRQUNBLE9BQU87SUFDVDtBQUNGO0FBRUEsT0FBTyxTQUFTZCxvQkFBb0IsRUFBRVosTUFBTSxFQUEwQjtJQUNwRSxPQUFPTixzQkFBc0IsSUFBSUcsYUFBYTtRQUFFRztJQUFPO0FBQ3pEO0FBQ0EsT0FBTyxTQUFTNEIsZ0JBQWdCN0IsSUFBb0M7SUFDbEUsT0FBT0EsZ0JBQWdCRjtBQUN6QiJ9
@@ -0,0 +1,35 @@
1
+ import type { BaseSelection } from 'lexical';
2
+ import { type DOMConversionMap, type EditorConfig, ElementNode, type LexicalCommand, type LexicalNode, type NodeKey, type RangeSelection } from 'lexical';
3
+ import type { LinkPayload } from '../plugins/floatingLinkEditor/types';
4
+ import type { LinkFields, SerializedLinkNode } from './types';
5
+ /** @noInheritDoc */
6
+ export declare class LinkNode extends ElementNode {
7
+ __fields: LinkFields;
8
+ constructor({ fields, key, }: {
9
+ fields: LinkFields;
10
+ key?: NodeKey;
11
+ });
12
+ static clone(node: LinkNode): LinkNode;
13
+ static getType(): string;
14
+ static importDOM(): DOMConversionMap | null;
15
+ static importJSON(serializedNode: SerializedLinkNode): LinkNode;
16
+ canBeEmpty(): false;
17
+ canInsertTextAfter(): false;
18
+ canInsertTextBefore(): false;
19
+ createDOM(config: EditorConfig): HTMLAnchorElement;
20
+ exportJSON(): SerializedLinkNode;
21
+ extractWithChild(child: LexicalNode, selection: BaseSelection, destination: 'clone' | 'html'): boolean;
22
+ getFields(): LinkFields;
23
+ insertNewAfter(selection: RangeSelection, restoreSelection?: boolean): ElementNode | null;
24
+ isInline(): true;
25
+ sanitizeUrl(url: string): string;
26
+ setFields(fields: LinkFields): void;
27
+ updateDOM(prevNode: LinkNode, anchor: HTMLAnchorElement, config: EditorConfig): boolean;
28
+ }
29
+ export declare function $createLinkNode({ fields }: {
30
+ fields: LinkFields;
31
+ }): LinkNode;
32
+ export declare function $isLinkNode(node: LexicalNode | null | undefined): node is LinkNode;
33
+ export declare const TOGGLE_LINK_COMMAND: LexicalCommand<LinkPayload | null>;
34
+ export declare function toggleLink(payload: LinkPayload): void;
35
+ //# sourceMappingURL=LinkNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkNode.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/link/nodes/LinkNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAG5C,OAAO,EAML,KAAK,gBAAgB,EAErB,KAAK,YAAY,EACjB,WAAW,EACX,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,cAAc,EAEpB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAI7D,oBAAoB;AACpB,qBAAa,QAAS,SAAQ,WAAW;IACvC,QAAQ,EAAE,UAAU,CAAA;gBAER,EACV,MAKC,EACD,GAAG,GACJ,EAAE;QACD,MAAM,EAAE,UAAU,CAAA;QAClB,GAAG,CAAC,EAAE,OAAO,CAAA;KACd;IAKD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAOtC,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,SAAS,IAAI,gBAAgB,GAAG,IAAI;IAS3C,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,kBAAkB,GAAG,QAAQ;IAmB/D,UAAU,IAAI,KAAK;IAInB,kBAAkB,IAAI,KAAK;IAI3B,mBAAmB,IAAI,KAAK;IAI5B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB;IAiBlD,UAAU,IAAI,kBAAkB;IAShC,gBAAgB,CACd,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,aAAa,EACxB,WAAW,EAAE,OAAO,GAAG,MAAM,GAC5B,OAAO;IAeV,SAAS,IAAI,UAAU;IAIvB,cAAc,CAAC,SAAS,EAAE,cAAc,EAAE,gBAAgB,UAAO,GAAG,WAAW,GAAG,IAAI;IAUtF,QAAQ,IAAI,IAAI;IAIhB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAahC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAKnC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO;CA8BxF;AAoBD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG,QAAQ,CAE5E;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,QAAQ,CAElF;AAED,eAAO,MAAM,mBAAmB,EAAE,cAAc,CAAC,WAAW,GAAG,IAAI,CAC7B,CAAA;AAEtC,wBAAgB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CA6GrD"}
@@ -0,0 +1,299 @@
1
+ import { addClassNamesToElement, isHTMLAnchorElement } from '@lexical/utils';
2
+ import { $applyNodeReplacement, $createTextNode, $getSelection, $isElementNode, $isRangeSelection, ElementNode, createCommand } from 'lexical';
3
+ const SUPPORTED_URL_PROTOCOLS = new Set([
4
+ 'http:',
5
+ 'https:',
6
+ 'mailto:',
7
+ 'sms:',
8
+ 'tel:'
9
+ ]);
10
+ /** @noInheritDoc */ export class LinkNode extends ElementNode {
11
+ __fields;
12
+ constructor({ fields = {
13
+ doc: null,
14
+ linkType: 'custom',
15
+ newTab: false,
16
+ url: undefined
17
+ }, key }){
18
+ super(key);
19
+ this.__fields = fields;
20
+ }
21
+ static clone(node) {
22
+ return new LinkNode({
23
+ fields: node.__fields,
24
+ key: node.__key
25
+ });
26
+ }
27
+ static getType() {
28
+ return 'link';
29
+ }
30
+ static importDOM() {
31
+ return {
32
+ a: (node)=>({
33
+ conversion: convertAnchorElement,
34
+ priority: 1
35
+ })
36
+ };
37
+ }
38
+ static importJSON(serializedNode) {
39
+ if (serializedNode.version === 1 && typeof serializedNode.fields?.doc?.value === 'object' && serializedNode.fields?.doc?.value?.id) {
40
+ serializedNode.fields.doc.value = serializedNode.fields.doc.value.id;
41
+ serializedNode.version = 2;
42
+ }
43
+ const node = $createLinkNode({
44
+ fields: serializedNode.fields
45
+ });
46
+ node.setFormat(serializedNode.format);
47
+ node.setIndent(serializedNode.indent);
48
+ node.setDirection(serializedNode.direction);
49
+ return node;
50
+ }
51
+ canBeEmpty() {
52
+ return false;
53
+ }
54
+ canInsertTextAfter() {
55
+ return false;
56
+ }
57
+ canInsertTextBefore() {
58
+ return false;
59
+ }
60
+ createDOM(config) {
61
+ const element = document.createElement('a');
62
+ if (this.__fields?.linkType === 'custom') {
63
+ element.href = this.sanitizeUrl(this.__fields.url ?? '');
64
+ }
65
+ if (this.__fields?.newTab ?? false) {
66
+ element.target = '_blank';
67
+ }
68
+ if (this.__fields?.newTab === true && this.__fields?.linkType === 'custom') {
69
+ element.rel = manageRel(element.rel, 'add', 'noopener');
70
+ }
71
+ addClassNamesToElement(element, config.theme.link);
72
+ return element;
73
+ }
74
+ exportJSON() {
75
+ return {
76
+ ...super.exportJSON(),
77
+ type: this.getType(),
78
+ fields: this.getFields(),
79
+ version: 2
80
+ };
81
+ }
82
+ extractWithChild(child, selection, destination) {
83
+ if (!$isRangeSelection(selection)) {
84
+ return false;
85
+ }
86
+ const anchorNode = selection.anchor.getNode();
87
+ const focusNode = selection.focus.getNode();
88
+ return this.isParentOf(anchorNode) && this.isParentOf(focusNode) && selection.getTextContent().length > 0;
89
+ }
90
+ getFields() {
91
+ return this.getLatest().__fields;
92
+ }
93
+ insertNewAfter(selection, restoreSelection = true) {
94
+ const element = this.getParentOrThrow().insertNewAfter(selection, restoreSelection);
95
+ if ($isElementNode(element)) {
96
+ const linkNode = $createLinkNode({
97
+ fields: this.__fields
98
+ });
99
+ element.append(linkNode);
100
+ return linkNode;
101
+ }
102
+ return null;
103
+ }
104
+ isInline() {
105
+ return true;
106
+ }
107
+ sanitizeUrl(url) {
108
+ try {
109
+ const parsedUrl = new URL(url);
110
+ // eslint-disable-next-line no-script-url
111
+ if (!SUPPORTED_URL_PROTOCOLS.has(parsedUrl.protocol)) {
112
+ return 'about:blank';
113
+ }
114
+ } catch (e) {
115
+ return 'https://';
116
+ }
117
+ return url;
118
+ }
119
+ setFields(fields) {
120
+ const writable = this.getWritable();
121
+ writable.__fields = fields;
122
+ }
123
+ updateDOM(prevNode, anchor, config) {
124
+ const url = this.__fields?.url;
125
+ const newTab = this.__fields?.newTab;
126
+ if (url != null && url !== prevNode.__fields?.url && this.__fields?.linkType === 'custom') {
127
+ anchor.href = url;
128
+ }
129
+ if (this.__fields?.linkType === 'internal' && prevNode.__fields?.linkType === 'custom') {
130
+ anchor.removeAttribute('href');
131
+ }
132
+ // TODO: not 100% sure why we're settign rel to '' - revisit
133
+ // Start rel config here, then check newTab below
134
+ if (anchor.rel == null) {
135
+ anchor.rel = '';
136
+ }
137
+ if (newTab !== prevNode.__fields?.newTab) {
138
+ if (newTab ?? false) {
139
+ anchor.target = '_blank';
140
+ if (this.__fields?.linkType === 'custom') {
141
+ anchor.rel = manageRel(anchor.rel, 'add', 'noopener');
142
+ }
143
+ } else {
144
+ anchor.removeAttribute('target');
145
+ anchor.rel = manageRel(anchor.rel, 'remove', 'noopener');
146
+ }
147
+ }
148
+ return false;
149
+ }
150
+ }
151
+ function convertAnchorElement(domNode) {
152
+ let node = null;
153
+ if (isHTMLAnchorElement(domNode)) {
154
+ const content = domNode.textContent;
155
+ if (content !== null && content !== '') {
156
+ node = $createLinkNode({
157
+ fields: {
158
+ doc: null,
159
+ linkType: 'custom',
160
+ newTab: domNode.getAttribute('target') === '_blank',
161
+ url: domNode.getAttribute('href') ?? ''
162
+ }
163
+ });
164
+ }
165
+ }
166
+ return {
167
+ node
168
+ };
169
+ }
170
+ export function $createLinkNode({ fields }) {
171
+ return $applyNodeReplacement(new LinkNode({
172
+ fields
173
+ }));
174
+ }
175
+ export function $isLinkNode(node) {
176
+ return node instanceof LinkNode;
177
+ }
178
+ export const TOGGLE_LINK_COMMAND = createCommand('TOGGLE_LINK_COMMAND');
179
+ export function toggleLink(payload) {
180
+ const selection = $getSelection();
181
+ if (!$isRangeSelection(selection)) {
182
+ return;
183
+ }
184
+ const nodes = selection.extract();
185
+ if (payload === null) {
186
+ // Remove LinkNodes
187
+ nodes.forEach((node)=>{
188
+ const parent = node.getParent();
189
+ if ($isLinkNode(parent)) {
190
+ const children = parent.getChildren();
191
+ for(let i = 0; i < children.length; i += 1){
192
+ parent.insertBefore(children[i]);
193
+ }
194
+ parent.remove();
195
+ }
196
+ });
197
+ } else {
198
+ // Add or merge LinkNodes
199
+ if (nodes.length === 1) {
200
+ const firstNode = nodes[0];
201
+ // if the first node is a LinkNode or if its
202
+ // parent is a LinkNode, we update the URL, target and rel.
203
+ const linkNode = $isLinkNode(firstNode) ? firstNode : $getLinkAncestor(firstNode);
204
+ if (linkNode !== null) {
205
+ linkNode.setFields(payload.fields);
206
+ if (payload.text != null && payload.text !== linkNode.getTextContent()) {
207
+ // remove all children and add child with new textcontent:
208
+ linkNode.append($createTextNode(payload.text));
209
+ linkNode.getChildren().forEach((child)=>{
210
+ if (child !== linkNode.getLastChild()) {
211
+ child.remove();
212
+ }
213
+ });
214
+ }
215
+ return;
216
+ }
217
+ }
218
+ let prevParent = null;
219
+ let linkNode = null;
220
+ nodes.forEach((node)=>{
221
+ const parent = node.getParent();
222
+ if (parent === linkNode || parent === null || $isElementNode(node) && !node.isInline()) {
223
+ return;
224
+ }
225
+ if ($isLinkNode(parent)) {
226
+ linkNode = parent;
227
+ parent.setFields(payload.fields);
228
+ if (payload.text != null && payload.text !== parent.getTextContent()) {
229
+ // remove all children and add child with new textcontent:
230
+ parent.append($createTextNode(payload.text));
231
+ parent.getChildren().forEach((child)=>{
232
+ if (child !== parent.getLastChild()) {
233
+ child.remove();
234
+ }
235
+ });
236
+ }
237
+ return;
238
+ }
239
+ if (!parent.is(prevParent)) {
240
+ prevParent = parent;
241
+ linkNode = $createLinkNode({
242
+ fields: payload.fields
243
+ });
244
+ if ($isLinkNode(parent)) {
245
+ if (node.getPreviousSibling() === null) {
246
+ parent.insertBefore(linkNode);
247
+ } else {
248
+ parent.insertAfter(linkNode);
249
+ }
250
+ } else {
251
+ node.insertBefore(linkNode);
252
+ }
253
+ }
254
+ if ($isLinkNode(node)) {
255
+ if (node.is(linkNode)) {
256
+ return;
257
+ }
258
+ if (linkNode !== null) {
259
+ const children = node.getChildren();
260
+ for(let i = 0; i < children.length; i += 1){
261
+ linkNode.append(children[i]);
262
+ }
263
+ }
264
+ node.remove();
265
+ return;
266
+ }
267
+ if (linkNode !== null) {
268
+ linkNode.append(node);
269
+ }
270
+ });
271
+ }
272
+ }
273
+ function $getLinkAncestor(node) {
274
+ return $getAncestor(node, (ancestor)=>$isLinkNode(ancestor));
275
+ }
276
+ function $getAncestor(node, predicate) {
277
+ let parent = node;
278
+ while(parent !== null && (parent = parent.getParent()) !== null && !predicate(parent));
279
+ return parent;
280
+ }
281
+ function manageRel(input, action, value) {
282
+ let result;
283
+ let mutableInput = `${input}`;
284
+ if (action === 'add') {
285
+ // if we somehow got out of sync - clean up
286
+ if (mutableInput.includes(value)) {
287
+ const re = new RegExp(value, 'g');
288
+ mutableInput = mutableInput.replace(re, '').trim();
289
+ }
290
+ mutableInput = mutableInput.trim();
291
+ result = mutableInput.length === 0 ? `${value}` : `${mutableInput} ${value}`;
292
+ } else {
293
+ const re = new RegExp(value, 'g');
294
+ result = mutableInput.replace(re, '').trim();
295
+ }
296
+ return result;
297
+ }
298
+
299
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9saW5rL25vZGVzL0xpbmtOb2RlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzZVNlbGVjdGlvbiB9IGZyb20gJ2xleGljYWwnXG5cbmltcG9ydCB7IGFkZENsYXNzTmFtZXNUb0VsZW1lbnQsIGlzSFRNTEFuY2hvckVsZW1lbnQgfSBmcm9tICdAbGV4aWNhbC91dGlscydcbmltcG9ydCB7XG4gICRhcHBseU5vZGVSZXBsYWNlbWVudCxcbiAgJGNyZWF0ZVRleHROb2RlLFxuICAkZ2V0U2VsZWN0aW9uLFxuICAkaXNFbGVtZW50Tm9kZSxcbiAgJGlzUmFuZ2VTZWxlY3Rpb24sXG4gIHR5cGUgRE9NQ29udmVyc2lvbk1hcCxcbiAgdHlwZSBET01Db252ZXJzaW9uT3V0cHV0LFxuICB0eXBlIEVkaXRvckNvbmZpZyxcbiAgRWxlbWVudE5vZGUsXG4gIHR5cGUgTGV4aWNhbENvbW1hbmQsXG4gIHR5cGUgTGV4aWNhbE5vZGUsXG4gIHR5cGUgTm9kZUtleSxcbiAgdHlwZSBSYW5nZVNlbGVjdGlvbixcbiAgY3JlYXRlQ29tbWFuZCxcbn0gZnJvbSAnbGV4aWNhbCdcblxuaW1wb3J0IHR5cGUgeyBMaW5rUGF5bG9hZCB9IGZyb20gJy4uL3BsdWdpbnMvZmxvYXRpbmdMaW5rRWRpdG9yL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBMaW5rRmllbGRzLCBTZXJpYWxpemVkTGlua05vZGUgfSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBTVVBQT1JURURfVVJMX1BST1RPQ09MUyA9IG5ldyBTZXQoWydodHRwOicsICdodHRwczonLCAnbWFpbHRvOicsICdzbXM6JywgJ3RlbDonXSlcblxuLyoqIEBub0luaGVyaXREb2MgKi9cbmV4cG9ydCBjbGFzcyBMaW5rTm9kZSBleHRlbmRzIEVsZW1lbnROb2RlIHtcbiAgX19maWVsZHM6IExpbmtGaWVsZHNcblxuICBjb25zdHJ1Y3Rvcih7XG4gICAgZmllbGRzID0ge1xuICAgICAgZG9jOiBudWxsLFxuICAgICAgbGlua1R5cGU6ICdjdXN0b20nLFxuICAgICAgbmV3VGFiOiBmYWxzZSxcbiAgICAgIHVybDogdW5kZWZpbmVkLFxuICAgIH0sXG4gICAga2V5LFxuICB9OiB7XG4gICAgZmllbGRzOiBMaW5rRmllbGRzXG4gICAga2V5PzogTm9kZUtleVxuICB9KSB7XG4gICAgc3VwZXIoa2V5KVxuICAgIHRoaXMuX19maWVsZHMgPSBmaWVsZHNcbiAgfVxuXG4gIHN0YXRpYyBjbG9uZShub2RlOiBMaW5rTm9kZSk6IExpbmtOb2RlIHtcbiAgICByZXR1cm4gbmV3IExpbmtOb2RlKHtcbiAgICAgIGZpZWxkczogbm9kZS5fX2ZpZWxkcyxcbiAgICAgIGtleTogbm9kZS5fX2tleSxcbiAgICB9KVxuICB9XG5cbiAgc3RhdGljIGdldFR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2xpbmsnXG4gIH1cblxuICBzdGF0aWMgaW1wb3J0RE9NKCk6IERPTUNvbnZlcnNpb25NYXAgfCBudWxsIHtcbiAgICByZXR1cm4ge1xuICAgICAgYTogKG5vZGU6IE5vZGUpID0+ICh7XG4gICAgICAgIGNvbnZlcnNpb246IGNvbnZlcnRBbmNob3JFbGVtZW50LFxuICAgICAgICBwcmlvcml0eTogMSxcbiAgICAgIH0pLFxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBpbXBvcnRKU09OKHNlcmlhbGl6ZWROb2RlOiBTZXJpYWxpemVkTGlua05vZGUpOiBMaW5rTm9kZSB7XG4gICAgaWYgKFxuICAgICAgc2VyaWFsaXplZE5vZGUudmVyc2lvbiA9PT0gMSAmJlxuICAgICAgdHlwZW9mIHNlcmlhbGl6ZWROb2RlLmZpZWxkcz8uZG9jPy52YWx1ZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIHNlcmlhbGl6ZWROb2RlLmZpZWxkcz8uZG9jPy52YWx1ZT8uaWRcbiAgICApIHtcbiAgICAgIHNlcmlhbGl6ZWROb2RlLmZpZWxkcy5kb2MudmFsdWUgPSBzZXJpYWxpemVkTm9kZS5maWVsZHMuZG9jLnZhbHVlLmlkXG4gICAgICBzZXJpYWxpemVkTm9kZS52ZXJzaW9uID0gMlxuICAgIH1cblxuICAgIGNvbnN0IG5vZGUgPSAkY3JlYXRlTGlua05vZGUoe1xuICAgICAgZmllbGRzOiBzZXJpYWxpemVkTm9kZS5maWVsZHMsXG4gICAgfSlcbiAgICBub2RlLnNldEZvcm1hdChzZXJpYWxpemVkTm9kZS5mb3JtYXQpXG4gICAgbm9kZS5zZXRJbmRlbnQoc2VyaWFsaXplZE5vZGUuaW5kZW50KVxuICAgIG5vZGUuc2V0RGlyZWN0aW9uKHNlcmlhbGl6ZWROb2RlLmRpcmVjdGlvbilcbiAgICByZXR1cm4gbm9kZVxuICB9XG5cbiAgY2FuQmVFbXB0eSgpOiBmYWxzZSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBjYW5JbnNlcnRUZXh0QWZ0ZXIoKTogZmFsc2Uge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgY2FuSW5zZXJ0VGV4dEJlZm9yZSgpOiBmYWxzZSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBjcmVhdGVET00oY29uZmlnOiBFZGl0b3JDb25maWcpOiBIVE1MQW5jaG9yRWxlbWVudCB7XG4gICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKVxuICAgIGlmICh0aGlzLl9fZmllbGRzPy5saW5rVHlwZSA9PT0gJ2N1c3RvbScpIHtcbiAgICAgIGVsZW1lbnQuaHJlZiA9IHRoaXMuc2FuaXRpemVVcmwodGhpcy5fX2ZpZWxkcy51cmwgPz8gJycpXG4gICAgfVxuICAgIGlmICh0aGlzLl9fZmllbGRzPy5uZXdUYWIgPz8gZmFsc2UpIHtcbiAgICAgIGVsZW1lbnQudGFyZ2V0ID0gJ19ibGFuaydcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fX2ZpZWxkcz8ubmV3VGFiID09PSB0cnVlICYmIHRoaXMuX19maWVsZHM/LmxpbmtUeXBlID09PSAnY3VzdG9tJykge1xuICAgICAgZWxlbWVudC5yZWwgPSBtYW5hZ2VSZWwoZWxlbWVudC5yZWwsICdhZGQnLCAnbm9vcGVuZXInKVxuICAgIH1cblxuICAgIGFkZENsYXNzTmFtZXNUb0VsZW1lbnQoZWxlbWVudCwgY29uZmlnLnRoZW1lLmxpbmspXG4gICAgcmV0dXJuIGVsZW1lbnRcbiAgfVxuXG4gIGV4cG9ydEpTT04oKTogU2VyaWFsaXplZExpbmtOb2RlIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIuZXhwb3J0SlNPTigpLFxuICAgICAgdHlwZTogdGhpcy5nZXRUeXBlKCksXG4gICAgICBmaWVsZHM6IHRoaXMuZ2V0RmllbGRzKCksXG4gICAgICB2ZXJzaW9uOiAyLFxuICAgIH1cbiAgfVxuXG4gIGV4dHJhY3RXaXRoQ2hpbGQoXG4gICAgY2hpbGQ6IExleGljYWxOb2RlLFxuICAgIHNlbGVjdGlvbjogQmFzZVNlbGVjdGlvbixcbiAgICBkZXN0aW5hdGlvbjogJ2Nsb25lJyB8ICdodG1sJyxcbiAgKTogYm9vbGVhbiB7XG4gICAgaWYgKCEkaXNSYW5nZVNlbGVjdGlvbihzZWxlY3Rpb24pKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBjb25zdCBhbmNob3JOb2RlID0gc2VsZWN0aW9uLmFuY2hvci5nZXROb2RlKClcbiAgICBjb25zdCBmb2N1c05vZGUgPSBzZWxlY3Rpb24uZm9jdXMuZ2V0Tm9kZSgpXG5cbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5pc1BhcmVudE9mKGFuY2hvck5vZGUpICYmXG4gICAgICB0aGlzLmlzUGFyZW50T2YoZm9jdXNOb2RlKSAmJlxuICAgICAgc2VsZWN0aW9uLmdldFRleHRDb250ZW50KCkubGVuZ3RoID4gMFxuICAgIClcbiAgfVxuXG4gIGdldEZpZWxkcygpOiBMaW5rRmllbGRzIHtcbiAgICByZXR1cm4gdGhpcy5nZXRMYXRlc3QoKS5fX2ZpZWxkc1xuICB9XG5cbiAgaW5zZXJ0TmV3QWZ0ZXIoc2VsZWN0aW9uOiBSYW5nZVNlbGVjdGlvbiwgcmVzdG9yZVNlbGVjdGlvbiA9IHRydWUpOiBFbGVtZW50Tm9kZSB8IG51bGwge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmdldFBhcmVudE9yVGhyb3coKS5pbnNlcnROZXdBZnRlcihzZWxlY3Rpb24sIHJlc3RvcmVTZWxlY3Rpb24pXG4gICAgaWYgKCRpc0VsZW1lbnROb2RlKGVsZW1lbnQpKSB7XG4gICAgICBjb25zdCBsaW5rTm9kZSA9ICRjcmVhdGVMaW5rTm9kZSh7IGZpZWxkczogdGhpcy5fX2ZpZWxkcyB9KVxuICAgICAgZWxlbWVudC5hcHBlbmQobGlua05vZGUpXG4gICAgICByZXR1cm4gbGlua05vZGVcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGlzSW5saW5lKCk6IHRydWUge1xuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBzYW5pdGl6ZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHBhcnNlZFVybCA9IG5ldyBVUkwodXJsKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNjcmlwdC11cmxcbiAgICAgIGlmICghU1VQUE9SVEVEX1VSTF9QUk9UT0NPTFMuaGFzKHBhcnNlZFVybC5wcm90b2NvbCkpIHtcbiAgICAgICAgcmV0dXJuICdhYm91dDpibGFuaydcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gJ2h0dHBzOi8vJ1xuICAgIH1cbiAgICByZXR1cm4gdXJsXG4gIH1cblxuICBzZXRGaWVsZHMoZmllbGRzOiBMaW5rRmllbGRzKTogdm9pZCB7XG4gICAgY29uc3Qgd3JpdGFibGUgPSB0aGlzLmdldFdyaXRhYmxlKClcbiAgICB3cml0YWJsZS5fX2ZpZWxkcyA9IGZpZWxkc1xuICB9XG5cbiAgdXBkYXRlRE9NKHByZXZOb2RlOiBMaW5rTm9kZSwgYW5jaG9yOiBIVE1MQW5jaG9yRWxlbWVudCwgY29uZmlnOiBFZGl0b3JDb25maWcpOiBib29sZWFuIHtcbiAgICBjb25zdCB1cmwgPSB0aGlzLl9fZmllbGRzPy51cmxcbiAgICBjb25zdCBuZXdUYWIgPSB0aGlzLl9fZmllbGRzPy5uZXdUYWJcbiAgICBpZiAodXJsICE9IG51bGwgJiYgdXJsICE9PSBwcmV2Tm9kZS5fX2ZpZWxkcz8udXJsICYmIHRoaXMuX19maWVsZHM/LmxpbmtUeXBlID09PSAnY3VzdG9tJykge1xuICAgICAgYW5jaG9yLmhyZWYgPSB1cmxcbiAgICB9XG4gICAgaWYgKHRoaXMuX19maWVsZHM/LmxpbmtUeXBlID09PSAnaW50ZXJuYWwnICYmIHByZXZOb2RlLl9fZmllbGRzPy5saW5rVHlwZSA9PT0gJ2N1c3RvbScpIHtcbiAgICAgIGFuY2hvci5yZW1vdmVBdHRyaWJ1dGUoJ2hyZWYnKVxuICAgIH1cblxuICAgIC8vIFRPRE86IG5vdCAxMDAlIHN1cmUgd2h5IHdlJ3JlIHNldHRpZ24gcmVsIHRvICcnIC0gcmV2aXNpdFxuICAgIC8vIFN0YXJ0IHJlbCBjb25maWcgaGVyZSwgdGhlbiBjaGVjayBuZXdUYWIgYmVsb3dcbiAgICBpZiAoYW5jaG9yLnJlbCA9PSBudWxsKSB7XG4gICAgICBhbmNob3IucmVsID0gJydcbiAgICB9XG5cbiAgICBpZiAobmV3VGFiICE9PSBwcmV2Tm9kZS5fX2ZpZWxkcz8ubmV3VGFiKSB7XG4gICAgICBpZiAobmV3VGFiID8/IGZhbHNlKSB7XG4gICAgICAgIGFuY2hvci50YXJnZXQgPSAnX2JsYW5rJ1xuICAgICAgICBpZiAodGhpcy5fX2ZpZWxkcz8ubGlua1R5cGUgPT09ICdjdXN0b20nKSB7XG4gICAgICAgICAgYW5jaG9yLnJlbCA9IG1hbmFnZVJlbChhbmNob3IucmVsLCAnYWRkJywgJ25vb3BlbmVyJylcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYW5jaG9yLnJlbW92ZUF0dHJpYnV0ZSgndGFyZ2V0JylcbiAgICAgICAgYW5jaG9yLnJlbCA9IG1hbmFnZVJlbChhbmNob3IucmVsLCAncmVtb3ZlJywgJ25vb3BlbmVyJylcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxufVxuXG5mdW5jdGlvbiBjb252ZXJ0QW5jaG9yRWxlbWVudChkb21Ob2RlOiBOb2RlKTogRE9NQ29udmVyc2lvbk91dHB1dCB7XG4gIGxldCBub2RlOiBMaW5rTm9kZSB8IG51bGwgPSBudWxsXG4gIGlmIChpc0hUTUxBbmNob3JFbGVtZW50KGRvbU5vZGUpKSB7XG4gICAgY29uc3QgY29udGVudCA9IGRvbU5vZGUudGV4dENvbnRlbnRcbiAgICBpZiAoY29udGVudCAhPT0gbnVsbCAmJiBjb250ZW50ICE9PSAnJykge1xuICAgICAgbm9kZSA9ICRjcmVhdGVMaW5rTm9kZSh7XG4gICAgICAgIGZpZWxkczoge1xuICAgICAgICAgIGRvYzogbnVsbCxcbiAgICAgICAgICBsaW5rVHlwZTogJ2N1c3RvbScsXG4gICAgICAgICAgbmV3VGFiOiBkb21Ob2RlLmdldEF0dHJpYnV0ZSgndGFyZ2V0JykgPT09ICdfYmxhbmsnLFxuICAgICAgICAgIHVybDogZG9tTm9kZS5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSA/PyAnJyxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfVxuICB9XG4gIHJldHVybiB7IG5vZGUgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gJGNyZWF0ZUxpbmtOb2RlKHsgZmllbGRzIH06IHsgZmllbGRzOiBMaW5rRmllbGRzIH0pOiBMaW5rTm9kZSB7XG4gIHJldHVybiAkYXBwbHlOb2RlUmVwbGFjZW1lbnQobmV3IExpbmtOb2RlKHsgZmllbGRzIH0pKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gJGlzTGlua05vZGUobm9kZTogTGV4aWNhbE5vZGUgfCBudWxsIHwgdW5kZWZpbmVkKTogbm9kZSBpcyBMaW5rTm9kZSB7XG4gIHJldHVybiBub2RlIGluc3RhbmNlb2YgTGlua05vZGVcbn1cblxuZXhwb3J0IGNvbnN0IFRPR0dMRV9MSU5LX0NPTU1BTkQ6IExleGljYWxDb21tYW5kPExpbmtQYXlsb2FkIHwgbnVsbD4gPVxuICBjcmVhdGVDb21tYW5kKCdUT0dHTEVfTElOS19DT01NQU5EJylcblxuZXhwb3J0IGZ1bmN0aW9uIHRvZ2dsZUxpbmsocGF5bG9hZDogTGlua1BheWxvYWQpOiB2b2lkIHtcbiAgY29uc3Qgc2VsZWN0aW9uID0gJGdldFNlbGVjdGlvbigpXG5cbiAgaWYgKCEkaXNSYW5nZVNlbGVjdGlvbihzZWxlY3Rpb24pKSB7XG4gICAgcmV0dXJuXG4gIH1cbiAgY29uc3Qgbm9kZXMgPSBzZWxlY3Rpb24uZXh0cmFjdCgpXG5cbiAgaWYgKHBheWxvYWQgPT09IG51bGwpIHtcbiAgICAvLyBSZW1vdmUgTGlua05vZGVzXG4gICAgbm9kZXMuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgY29uc3QgcGFyZW50ID0gbm9kZS5nZXRQYXJlbnQoKVxuXG4gICAgICBpZiAoJGlzTGlua05vZGUocGFyZW50KSkge1xuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IHBhcmVudC5nZXRDaGlsZHJlbigpXG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUoY2hpbGRyZW5baV0pXG4gICAgICAgIH1cblxuICAgICAgICBwYXJlbnQucmVtb3ZlKClcbiAgICAgIH1cbiAgICB9KVxuICB9IGVsc2Uge1xuICAgIC8vIEFkZCBvciBtZXJnZSBMaW5rTm9kZXNcbiAgICBpZiAobm9kZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICBjb25zdCBmaXJzdE5vZGUgPSBub2Rlc1swXVxuICAgICAgLy8gaWYgdGhlIGZpcnN0IG5vZGUgaXMgYSBMaW5rTm9kZSBvciBpZiBpdHNcbiAgICAgIC8vIHBhcmVudCBpcyBhIExpbmtOb2RlLCB3ZSB1cGRhdGUgdGhlIFVSTCwgdGFyZ2V0IGFuZCByZWwuXG4gICAgICBjb25zdCBsaW5rTm9kZTogTGlua05vZGUgfCBudWxsID0gJGlzTGlua05vZGUoZmlyc3ROb2RlKVxuICAgICAgICA/IGZpcnN0Tm9kZVxuICAgICAgICA6ICRnZXRMaW5rQW5jZXN0b3IoZmlyc3ROb2RlKVxuICAgICAgaWYgKGxpbmtOb2RlICE9PSBudWxsKSB7XG4gICAgICAgIGxpbmtOb2RlLnNldEZpZWxkcyhwYXlsb2FkLmZpZWxkcylcblxuICAgICAgICBpZiAocGF5bG9hZC50ZXh0ICE9IG51bGwgJiYgcGF5bG9hZC50ZXh0ICE9PSBsaW5rTm9kZS5nZXRUZXh0Q29udGVudCgpKSB7XG4gICAgICAgICAgLy8gcmVtb3ZlIGFsbCBjaGlsZHJlbiBhbmQgYWRkIGNoaWxkIHdpdGggbmV3IHRleHRjb250ZW50OlxuICAgICAgICAgIGxpbmtOb2RlLmFwcGVuZCgkY3JlYXRlVGV4dE5vZGUocGF5bG9hZC50ZXh0KSlcbiAgICAgICAgICBsaW5rTm9kZS5nZXRDaGlsZHJlbigpLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICAgICAgICBpZiAoY2hpbGQgIT09IGxpbmtOb2RlLmdldExhc3RDaGlsZCgpKSB7XG4gICAgICAgICAgICAgIGNoaWxkLnJlbW92ZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgcHJldlBhcmVudDogRWxlbWVudE5vZGUgfCBMaW5rTm9kZSB8IG51bGwgPSBudWxsXG4gICAgbGV0IGxpbmtOb2RlOiBMaW5rTm9kZSB8IG51bGwgPSBudWxsXG5cbiAgICBub2Rlcy5mb3JFYWNoKChub2RlKSA9PiB7XG4gICAgICBjb25zdCBwYXJlbnQgPSBub2RlLmdldFBhcmVudCgpXG5cbiAgICAgIGlmIChwYXJlbnQgPT09IGxpbmtOb2RlIHx8IHBhcmVudCA9PT0gbnVsbCB8fCAoJGlzRWxlbWVudE5vZGUobm9kZSkgJiYgIW5vZGUuaXNJbmxpbmUoKSkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGlmICgkaXNMaW5rTm9kZShwYXJlbnQpKSB7XG4gICAgICAgIGxpbmtOb2RlID0gcGFyZW50XG4gICAgICAgIHBhcmVudC5zZXRGaWVsZHMocGF5bG9hZC5maWVsZHMpXG4gICAgICAgIGlmIChwYXlsb2FkLnRleHQgIT0gbnVsbCAmJiBwYXlsb2FkLnRleHQgIT09IHBhcmVudC5nZXRUZXh0Q29udGVudCgpKSB7XG4gICAgICAgICAgLy8gcmVtb3ZlIGFsbCBjaGlsZHJlbiBhbmQgYWRkIGNoaWxkIHdpdGggbmV3IHRleHRjb250ZW50OlxuICAgICAgICAgIHBhcmVudC5hcHBlbmQoJGNyZWF0ZVRleHROb2RlKHBheWxvYWQudGV4dCkpXG4gICAgICAgICAgcGFyZW50LmdldENoaWxkcmVuKCkuZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgICAgICAgIGlmIChjaGlsZCAhPT0gcGFyZW50LmdldExhc3RDaGlsZCgpKSB7XG4gICAgICAgICAgICAgIGNoaWxkLnJlbW92ZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKCFwYXJlbnQuaXMocHJldlBhcmVudCkpIHtcbiAgICAgICAgcHJldlBhcmVudCA9IHBhcmVudFxuICAgICAgICBsaW5rTm9kZSA9ICRjcmVhdGVMaW5rTm9kZSh7IGZpZWxkczogcGF5bG9hZC5maWVsZHMgfSlcblxuICAgICAgICBpZiAoJGlzTGlua05vZGUocGFyZW50KSkge1xuICAgICAgICAgIGlmIChub2RlLmdldFByZXZpb3VzU2libGluZygpID09PSBudWxsKSB7XG4gICAgICAgICAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKGxpbmtOb2RlKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJlbnQuaW5zZXJ0QWZ0ZXIobGlua05vZGUpXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG5vZGUuaW5zZXJ0QmVmb3JlKGxpbmtOb2RlKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICgkaXNMaW5rTm9kZShub2RlKSkge1xuICAgICAgICBpZiAobm9kZS5pcyhsaW5rTm9kZSkpIHtcbiAgICAgICAgICByZXR1cm5cbiAgICAgICAgfVxuICAgICAgICBpZiAobGlua05vZGUgIT09IG51bGwpIHtcbiAgICAgICAgICBjb25zdCBjaGlsZHJlbiA9IG5vZGUuZ2V0Q2hpbGRyZW4oKVxuXG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgICAgICAgbGlua05vZGUuYXBwZW5kKGNoaWxkcmVuW2ldKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIG5vZGUucmVtb3ZlKClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGlmIChsaW5rTm9kZSAhPT0gbnVsbCkge1xuICAgICAgICBsaW5rTm9kZS5hcHBlbmQobm9kZSlcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uICRnZXRMaW5rQW5jZXN0b3Iobm9kZTogTGV4aWNhbE5vZGUpOiBMaW5rTm9kZSB8IG51bGwge1xuICByZXR1cm4gJGdldEFuY2VzdG9yKG5vZGUsIChhbmNlc3RvcikgPT4gJGlzTGlua05vZGUoYW5jZXN0b3IpKSBhcyBMaW5rTm9kZVxufVxuXG5mdW5jdGlvbiAkZ2V0QW5jZXN0b3IoXG4gIG5vZGU6IExleGljYWxOb2RlLFxuICBwcmVkaWNhdGU6IChhbmNlc3RvcjogTGV4aWNhbE5vZGUpID0+IGJvb2xlYW4sXG4pOiBMZXhpY2FsTm9kZSB8IG51bGwge1xuICBsZXQgcGFyZW50OiBMZXhpY2FsTm9kZSB8IG51bGwgPSBub2RlXG4gIHdoaWxlIChwYXJlbnQgIT09IG51bGwgJiYgKHBhcmVudCA9IHBhcmVudC5nZXRQYXJlbnQoKSkgIT09IG51bGwgJiYgIXByZWRpY2F0ZShwYXJlbnQpKTtcbiAgcmV0dXJuIHBhcmVudFxufVxuXG5mdW5jdGlvbiBtYW5hZ2VSZWwoaW5wdXQ6IHN0cmluZywgYWN0aW9uOiAnYWRkJyB8ICdyZW1vdmUnLCB2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgbGV0IHJlc3VsdDogc3RyaW5nXG4gIGxldCBtdXRhYmxlSW5wdXQgPSBgJHtpbnB1dH1gXG4gIGlmIChhY3Rpb24gPT09ICdhZGQnKSB7XG4gICAgLy8gaWYgd2Ugc29tZWhvdyBnb3Qgb3V0IG9mIHN5bmMgLSBjbGVhbiB1cFxuICAgIGlmIChtdXRhYmxlSW5wdXQuaW5jbHVkZXModmFsdWUpKSB7XG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAodmFsdWUsICdnJylcbiAgICAgIG11dGFibGVJbnB1dCA9IG11dGFibGVJbnB1dC5yZXBsYWNlKHJlLCAnJykudHJpbSgpXG4gICAgfVxuICAgIG11dGFibGVJbnB1dCA9IG11dGFibGVJbnB1dC50cmltKClcbiAgICByZXN1bHQgPSBtdXRhYmxlSW5wdXQubGVuZ3RoID09PSAwID8gYCR7dmFsdWV9YCA6IGAke211dGFibGVJbnB1dH0gJHt2YWx1ZX1gXG4gIH0gZWxzZSB7XG4gICAgY29uc3QgcmUgPSBuZXcgUmVnRXhwKHZhbHVlLCAnZycpXG4gICAgcmVzdWx0ID0gbXV0YWJsZUlucHV0LnJlcGxhY2UocmUsICcnKS50cmltKClcbiAgfVxuICByZXR1cm4gcmVzdWx0XG59XG4iXSwibmFtZXMiOlsiYWRkQ2xhc3NOYW1lc1RvRWxlbWVudCIsImlzSFRNTEFuY2hvckVsZW1lbnQiLCIkYXBwbHlOb2RlUmVwbGFjZW1lbnQiLCIkY3JlYXRlVGV4dE5vZGUiLCIkZ2V0U2VsZWN0aW9uIiwiJGlzRWxlbWVudE5vZGUiLCIkaXNSYW5nZVNlbGVjdGlvbiIsIkVsZW1lbnROb2RlIiwiY3JlYXRlQ29tbWFuZCIsIlNVUFBPUlRFRF9VUkxfUFJPVE9DT0xTIiwiU2V0IiwiTGlua05vZGUiLCJfX2ZpZWxkcyIsImNvbnN0cnVjdG9yIiwiZmllbGRzIiwiZG9jIiwibGlua1R5cGUiLCJuZXdUYWIiLCJ1cmwiLCJ1bmRlZmluZWQiLCJrZXkiLCJjbG9uZSIsIm5vZGUiLCJfX2tleSIsImdldFR5cGUiLCJpbXBvcnRET00iLCJhIiwiY29udmVyc2lvbiIsImNvbnZlcnRBbmNob3JFbGVtZW50IiwicHJpb3JpdHkiLCJpbXBvcnRKU09OIiwic2VyaWFsaXplZE5vZGUiLCJ2ZXJzaW9uIiwidmFsdWUiLCJpZCIsIiRjcmVhdGVMaW5rTm9kZSIsInNldEZvcm1hdCIsImZvcm1hdCIsInNldEluZGVudCIsImluZGVudCIsInNldERpcmVjdGlvbiIsImRpcmVjdGlvbiIsImNhbkJlRW1wdHkiLCJjYW5JbnNlcnRUZXh0QWZ0ZXIiLCJjYW5JbnNlcnRUZXh0QmVmb3JlIiwiY3JlYXRlRE9NIiwiY29uZmlnIiwiZWxlbWVudCIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImhyZWYiLCJzYW5pdGl6ZVVybCIsInRhcmdldCIsInJlbCIsIm1hbmFnZVJlbCIsInRoZW1lIiwibGluayIsImV4cG9ydEpTT04iLCJ0eXBlIiwiZ2V0RmllbGRzIiwiZXh0cmFjdFdpdGhDaGlsZCIsImNoaWxkIiwic2VsZWN0aW9uIiwiZGVzdGluYXRpb24iLCJhbmNob3JOb2RlIiwiYW5jaG9yIiwiZ2V0Tm9kZSIsImZvY3VzTm9kZSIsImZvY3VzIiwiaXNQYXJlbnRPZiIsImdldFRleHRDb250ZW50IiwibGVuZ3RoIiwiZ2V0TGF0ZXN0IiwiaW5zZXJ0TmV3QWZ0ZXIiLCJyZXN0b3JlU2VsZWN0aW9uIiwiZ2V0UGFyZW50T3JUaHJvdyIsImxpbmtOb2RlIiwiYXBwZW5kIiwiaXNJbmxpbmUiLCJwYXJzZWRVcmwiLCJVUkwiLCJoYXMiLCJwcm90b2NvbCIsImUiLCJzZXRGaWVsZHMiLCJ3cml0YWJsZSIsImdldFdyaXRhYmxlIiwidXBkYXRlRE9NIiwicHJldk5vZGUiLCJyZW1vdmVBdHRyaWJ1dGUiLCJkb21Ob2RlIiwiY29udGVudCIsInRleHRDb250ZW50IiwiZ2V0QXR0cmlidXRlIiwiJGlzTGlua05vZGUiLCJUT0dHTEVfTElOS19DT01NQU5EIiwidG9nZ2xlTGluayIsInBheWxvYWQiLCJub2RlcyIsImV4dHJhY3QiLCJmb3JFYWNoIiwicGFyZW50IiwiZ2V0UGFyZW50IiwiY2hpbGRyZW4iLCJnZXRDaGlsZHJlbiIsImkiLCJpbnNlcnRCZWZvcmUiLCJyZW1vdmUiLCJmaXJzdE5vZGUiLCIkZ2V0TGlua0FuY2VzdG9yIiwidGV4dCIsImdldExhc3RDaGlsZCIsInByZXZQYXJlbnQiLCJpcyIsImdldFByZXZpb3VzU2libGluZyIsImluc2VydEFmdGVyIiwiJGdldEFuY2VzdG9yIiwiYW5jZXN0b3IiLCJwcmVkaWNhdGUiLCJpbnB1dCIsImFjdGlvbiIsInJlc3VsdCIsIm11dGFibGVJbnB1dCIsImluY2x1ZGVzIiwicmUiLCJSZWdFeHAiLCJyZXBsYWNlIiwidHJpbSJdLCJtYXBwaW5ncyI6IkFBRUEsU0FBU0Esc0JBQXNCLEVBQUVDLG1CQUFtQixRQUFRLGlCQUFnQjtBQUM1RSxTQUNFQyxxQkFBcUIsRUFDckJDLGVBQWUsRUFDZkMsYUFBYSxFQUNiQyxjQUFjLEVBQ2RDLGlCQUFpQixFQUlqQkMsV0FBVyxFQUtYQyxhQUFhLFFBQ1IsVUFBUztBQUtoQixNQUFNQywwQkFBMEIsSUFBSUMsSUFBSTtJQUFDO0lBQVM7SUFBVTtJQUFXO0lBQVE7Q0FBTztBQUV0RixrQkFBa0IsR0FDbEIsT0FBTyxNQUFNQyxpQkFBaUJKO0lBQzVCSyxTQUFvQjtJQUVwQkMsWUFBWSxFQUNWQyxTQUFTO1FBQ1BDLEtBQUs7UUFDTEMsVUFBVTtRQUNWQyxRQUFRO1FBQ1JDLEtBQUtDO0lBQ1AsQ0FBQyxFQUNEQyxHQUFHLEVBSUosQ0FBRTtRQUNELEtBQUssQ0FBQ0E7UUFDTixJQUFJLENBQUNSLFFBQVEsR0FBR0U7SUFDbEI7SUFFQSxPQUFPTyxNQUFNQyxJQUFjLEVBQVk7UUFDckMsT0FBTyxJQUFJWCxTQUFTO1lBQ2xCRyxRQUFRUSxLQUFLVixRQUFRO1lBQ3JCUSxLQUFLRSxLQUFLQyxLQUFLO1FBQ2pCO0lBQ0Y7SUFFQSxPQUFPQyxVQUFrQjtRQUN2QixPQUFPO0lBQ1Q7SUFFQSxPQUFPQyxZQUFxQztRQUMxQyxPQUFPO1lBQ0xDLEdBQUcsQ0FBQ0osT0FBZ0IsQ0FBQTtvQkFDbEJLLFlBQVlD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
@@ -0,0 +1,19 @@
1
+ import type { SerializedElementNode, Spread } from 'lexical';
2
+ export type LinkFields = {
3
+ [key: string]: unknown;
4
+ doc: {
5
+ relationTo: string;
6
+ value: {
7
+ [key: string]: unknown;
8
+ id: string;
9
+ } | string;
10
+ } | null;
11
+ linkType: 'custom' | 'internal';
12
+ newTab: boolean;
13
+ url: string;
14
+ };
15
+ export type SerializedLinkNode = Spread<{
16
+ fields: LinkFields;
17
+ }, SerializedElementNode>;
18
+ export type SerializedAutoLinkNode = SerializedLinkNode;
19
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/link/nodes/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAE5D,MAAM,MAAM,UAAU,GAAG;IAEvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;IACtB,GAAG,EAAE;QACH,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EACD;YAEE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;YACtB,EAAE,EAAE,MAAM,CAAA;SACX,GACD,MAAM,CAAA;KACX,GAAG,IAAI,CAAA;IACR,QAAQ,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC/B,MAAM,EAAE,OAAO,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,CACrC;IACE,MAAM,EAAE,UAAU,CAAA;CACnB,EACD,qBAAqB,CACtB,CAAA;AACD,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export { };
2
+
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9saW5rL25vZGVzL3R5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU2VyaWFsaXplZEVsZW1lbnROb2RlLCBTcHJlYWQgfSBmcm9tICdsZXhpY2FsJ1xuXG5leHBvcnQgdHlwZSBMaW5rRmllbGRzID0ge1xuICAvLyB1bmtub3duLCBjdXN0b20gZmllbGRzOlxuICBba2V5OiBzdHJpbmddOiB1bmtub3duXG4gIGRvYzoge1xuICAgIHJlbGF0aW9uVG86IHN0cmluZ1xuICAgIHZhbHVlOlxuICAgICAgfCB7XG4gICAgICAgICAgLy8gQWN0dWFsIGRvYyBkYXRhLCBwb3B1bGF0ZWQgaW4gYWZ0ZXJSZWFkIGhvb2tcbiAgICAgICAgICBba2V5OiBzdHJpbmddOiB1bmtub3duXG4gICAgICAgICAgaWQ6IHN0cmluZ1xuICAgICAgICB9XG4gICAgICB8IHN0cmluZ1xuICB9IHwgbnVsbFxuICBsaW5rVHlwZTogJ2N1c3RvbScgfCAnaW50ZXJuYWwnXG4gIG5ld1RhYjogYm9vbGVhblxuICB1cmw6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkTGlua05vZGUgPSBTcHJlYWQ8XG4gIHtcbiAgICBmaWVsZHM6IExpbmtGaWVsZHNcbiAgfSxcbiAgU2VyaWFsaXplZEVsZW1lbnROb2RlXG4+XG5leHBvcnQgdHlwZSBTZXJpYWxpemVkQXV0b0xpbmtOb2RlID0gU2VyaWFsaXplZExpbmtOb2RlXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLFdBQXVEIn0=
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ import type { LinkFields } from '../../nodes/types';
3
+ interface LinkMatcherResult {
4
+ fields?: LinkFields;
5
+ index: number;
6
+ length: number;
7
+ text: string;
8
+ url: string;
9
+ }
10
+ export type LinkMatcher = (text: string) => LinkMatcherResult | null;
11
+ export declare function createLinkMatcherWithRegExp(regExp: RegExp, urlTransformer?: (text: string) => string): (text: string) => {
12
+ index: number;
13
+ length: number;
14
+ text: string;
15
+ url: string;
16
+ };
17
+ export declare function AutoLinkPlugin(): JSX.Element | null;
18
+ export {};
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/field/features/link/plugins/autoLink/index.tsx"],"names":[],"mappings":";AAiBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAQnD,UAAU,iBAAiB;IACzB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,GAAG,IAAI,CAAA;AAEpE,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,cAAc,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAuB,UAE3C,MAAM;;;;;EAUrB;AA4XD,wBAAgB,cAAc,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CAMnD"}