@payloadcms/richtext-lexical 0.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (456) hide show
  1. package/LICENSE.md +22 -0
  2. package/dist/cell/index.d.ts +6 -0
  3. package/dist/cell/index.d.ts.map +1 -0
  4. package/dist/cell/index.js +86 -0
  5. package/dist/field/Field.d.ts +6 -0
  6. package/dist/field/Field.d.ts.map +1 -0
  7. package/dist/field/Field.js +138 -0
  8. package/dist/field/features/BlockQuote/index.d.ts +3 -0
  9. package/dist/field/features/BlockQuote/index.d.ts.map +1 -0
  10. package/dist/field/features/BlockQuote/index.js +82 -0
  11. package/dist/field/features/BlockQuote/markdownTransformer.d.ts +3 -0
  12. package/dist/field/features/BlockQuote/markdownTransformer.d.ts.map +1 -0
  13. package/dist/field/features/BlockQuote/markdownTransformer.js +50 -0
  14. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts +12 -0
  15. package/dist/field/features/Blocks/component/FormSavePlugin.d.ts.map +1 -0
  16. package/dist/field/features/Blocks/component/FormSavePlugin.js +33 -0
  17. package/dist/field/features/Blocks/component/index.d.ts +14 -0
  18. package/dist/field/features/Blocks/component/index.d.ts.map +1 -0
  19. package/dist/field/features/Blocks/component/index.js +176 -0
  20. package/dist/field/features/Blocks/drawer/index.d.ts +10 -0
  21. package/dist/field/features/Blocks/drawer/index.d.ts.map +1 -0
  22. package/dist/field/features/Blocks/drawer/index.js +140 -0
  23. package/dist/field/features/Blocks/index.d.ts +8 -0
  24. package/dist/field/features/Blocks/index.d.ts.map +1 -0
  25. package/dist/field/features/Blocks/index.js +80 -0
  26. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts +38 -0
  27. package/dist/field/features/Blocks/nodes/BlocksNode.d.ts.map +1 -0
  28. package/dist/field/features/Blocks/nodes/BlocksNode.js +104 -0
  29. package/dist/field/features/Blocks/plugin/index.d.ts +7 -0
  30. package/dist/field/features/Blocks/plugin/index.d.ts.map +1 -0
  31. package/dist/field/features/Blocks/plugin/index.js +86 -0
  32. package/dist/field/features/Heading/index.d.ts +8 -0
  33. package/dist/field/features/Heading/index.d.ts.map +1 -0
  34. package/dist/field/features/Heading/index.js +104 -0
  35. package/dist/field/features/Heading/markdownTransformer.d.ts +3 -0
  36. package/dist/field/features/Heading/markdownTransformer.d.ts.map +1 -0
  37. package/dist/field/features/Heading/markdownTransformer.js +32 -0
  38. package/dist/field/features/Link/afterReadPromise.d.ts +5 -0
  39. package/dist/field/features/Link/afterReadPromise.d.ts.map +1 -0
  40. package/dist/field/features/Link/afterReadPromise.js +51 -0
  41. package/dist/field/features/Link/drawer/baseFields.d.ts +4 -0
  42. package/dist/field/features/Link/drawer/baseFields.d.ts.map +1 -0
  43. package/dist/field/features/Link/drawer/baseFields.js +91 -0
  44. package/dist/field/features/Link/drawer/index.d.ts +5 -0
  45. package/dist/field/features/Link/drawer/index.d.ts.map +1 -0
  46. package/dist/field/features/Link/drawer/index.js +40 -0
  47. package/dist/field/features/Link/drawer/types.d.ts +8 -0
  48. package/dist/field/features/Link/drawer/types.d.ts.map +1 -0
  49. package/dist/field/features/Link/drawer/types.js +6 -0
  50. package/dist/field/features/Link/index.d.ts +14 -0
  51. package/dist/field/features/Link/index.d.ts.map +1 -0
  52. package/dist/field/features/Link/index.js +117 -0
  53. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts +16 -0
  54. package/dist/field/features/Link/nodes/AutoLinkNode.d.ts.map +1 -0
  55. package/dist/field/features/Link/nodes/AutoLinkNode.js +75 -0
  56. package/dist/field/features/Link/nodes/LinkNode.d.ts +55 -0
  57. package/dist/field/features/Link/nodes/LinkNode.d.ts.map +1 -0
  58. package/dist/field/features/Link/nodes/LinkNode.js +368 -0
  59. package/dist/field/features/Link/plugins/autoLink/index.d.ts +26 -0
  60. package/dist/field/features/Link/plugins/autoLink/index.d.ts.map +1 -0
  61. package/dist/field/features/Link/plugins/autoLink/index.js +230 -0
  62. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts +9 -0
  63. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -0
  64. package/dist/field/features/Link/plugins/floatingLinkEditor/LinkEditor/index.js +301 -0
  65. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts +7 -0
  66. package/dist/field/features/Link/plugins/floatingLinkEditor/index.d.ts.map +1 -0
  67. package/dist/field/features/Link/plugins/floatingLinkEditor/index.js +61 -0
  68. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts +13 -0
  69. package/dist/field/features/Link/plugins/floatingLinkEditor/types.d.ts.map +1 -0
  70. package/dist/field/features/Link/plugins/floatingLinkEditor/types.js +6 -0
  71. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts +12 -0
  72. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.d.ts.map +1 -0
  73. package/dist/field/features/Link/plugins/floatingLinkEditor/utilities.js +44 -0
  74. package/dist/field/features/Link/plugins/link/index.d.ts +9 -0
  75. package/dist/field/features/Link/plugins/link/index.d.ts.map +1 -0
  76. package/dist/field/features/Link/plugins/link/index.js +74 -0
  77. package/dist/field/features/Paragraph/index.d.ts +3 -0
  78. package/dist/field/features/Paragraph/index.d.ts.map +1 -0
  79. package/dist/field/features/Paragraph/index.js +74 -0
  80. package/dist/field/features/Relationship/afterReadPromise.d.ts +4 -0
  81. package/dist/field/features/Relationship/afterReadPromise.d.ts.map +1 -0
  82. package/dist/field/features/Relationship/afterReadPromise.js +34 -0
  83. package/dist/field/features/Relationship/drawer/index.d.ts +14 -0
  84. package/dist/field/features/Relationship/drawer/index.d.ts.map +1 -0
  85. package/dist/field/features/Relationship/drawer/index.js +135 -0
  86. package/dist/field/features/Relationship/index.d.ts +4 -0
  87. package/dist/field/features/Relationship/index.d.ts.map +1 -0
  88. package/dist/field/features/Relationship/index.js +72 -0
  89. package/dist/field/features/Relationship/nodes/RelationshipNode.d.ts +34 -0
  90. package/dist/field/features/Relationship/nodes/RelationshipNode.d.ts.map +1 -0
  91. package/dist/field/features/Relationship/nodes/RelationshipNode.js +165 -0
  92. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts +14 -0
  93. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.d.ts.map +1 -0
  94. package/dist/field/features/Relationship/nodes/components/RelationshipComponent.js +158 -0
  95. package/dist/field/features/Relationship/plugins/index.d.ts +6 -0
  96. package/dist/field/features/Relationship/plugins/index.d.ts.map +1 -0
  97. package/dist/field/features/Relationship/plugins/index.js +88 -0
  98. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.d.ts +3 -0
  99. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.d.ts.map +1 -0
  100. package/dist/field/features/Relationship/utils/EnabledRelationshipsCondition.js +75 -0
  101. package/dist/field/features/Upload/afterReadPromise.d.ts +5 -0
  102. package/dist/field/features/Upload/afterReadPromise.d.ts.map +1 -0
  103. package/dist/field/features/Upload/afterReadPromise.js +51 -0
  104. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.d.ts +12 -0
  105. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.d.ts.map +1 -0
  106. package/dist/field/features/Upload/component/ExtraFieldsDrawer/index.js +129 -0
  107. package/dist/field/features/Upload/component/index.d.ts +10 -0
  108. package/dist/field/features/Upload/component/index.d.ts.map +1 -0
  109. package/dist/field/features/Upload/component/index.js +188 -0
  110. package/dist/field/features/Upload/drawer/index.d.ts +14 -0
  111. package/dist/field/features/Upload/drawer/index.d.ts.map +1 -0
  112. package/dist/field/features/Upload/drawer/index.js +131 -0
  113. package/dist/field/features/Upload/index.d.ts +12 -0
  114. package/dist/field/features/Upload/index.d.ts.map +1 -0
  115. package/dist/field/features/Upload/index.js +70 -0
  116. package/dist/field/features/Upload/nodes/UploadNode.d.ts +44 -0
  117. package/dist/field/features/Upload/nodes/UploadNode.d.ts.map +1 -0
  118. package/dist/field/features/Upload/nodes/UploadNode.js +153 -0
  119. package/dist/field/features/Upload/plugin/index.d.ts +7 -0
  120. package/dist/field/features/Upload/plugin/index.d.ts.map +1 -0
  121. package/dist/field/features/Upload/plugin/index.js +97 -0
  122. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.d.ts +4 -0
  123. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.d.ts.map +1 -0
  124. package/dist/field/features/align/floatingSelectToolbarAlignDropdownSection.js +23 -0
  125. package/dist/field/features/align/index.d.ts +4 -0
  126. package/dist/field/features/align/index.d.ts.map +1 -0
  127. package/dist/field/features/align/index.js +67 -0
  128. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.d.ts +4 -0
  129. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.d.ts.map +1 -0
  130. package/dist/field/features/common/floatingSelectToolbarFeaturesButtonsSection/index.js +21 -0
  131. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.d.ts +4 -0
  132. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.d.ts.map +1 -0
  133. package/dist/field/features/common/floatingSelectToolbarTextDropdownSection/index.js +23 -0
  134. package/dist/field/features/debug/TreeView/index.d.ts +4 -0
  135. package/dist/field/features/debug/TreeView/index.d.ts.map +1 -0
  136. package/dist/field/features/debug/TreeView/index.js +30 -0
  137. package/dist/field/features/debug/TreeView/plugin.d.ts +3 -0
  138. package/dist/field/features/debug/TreeView/plugin.d.ts.map +1 -0
  139. package/dist/field/features/debug/TreeView/plugin.js +66 -0
  140. package/dist/field/features/format/Bold/index.d.ts +3 -0
  141. package/dist/field/features/format/Bold/index.d.ts.map +1 -0
  142. package/dist/field/features/format/Bold/index.js +57 -0
  143. package/dist/field/features/format/Bold/markdownTransformers.d.ts +6 -0
  144. package/dist/field/features/format/Bold/markdownTransformers.d.ts.map +1 -0
  145. package/dist/field/features/format/Bold/markdownTransformers.js +58 -0
  146. package/dist/field/features/format/InlineCode/index.d.ts +3 -0
  147. package/dist/field/features/format/InlineCode/index.d.ts.map +1 -0
  148. package/dist/field/features/format/InlineCode/index.js +49 -0
  149. package/dist/field/features/format/InlineCode/markdownTransformers.d.ts +3 -0
  150. package/dist/field/features/format/InlineCode/markdownTransformers.d.ts.map +1 -0
  151. package/dist/field/features/format/InlineCode/markdownTransformers.js +19 -0
  152. package/dist/field/features/format/Italic/index.d.ts +3 -0
  153. package/dist/field/features/format/Italic/index.d.ts.map +1 -0
  154. package/dist/field/features/format/Italic/index.js +50 -0
  155. package/dist/field/features/format/Italic/markdownTransformers.d.ts +4 -0
  156. package/dist/field/features/format/Italic/markdownTransformers.d.ts.map +1 -0
  157. package/dist/field/features/format/Italic/markdownTransformers.js +35 -0
  158. package/dist/field/features/format/common/floatingSelectToolbarSection.d.ts +4 -0
  159. package/dist/field/features/format/common/floatingSelectToolbarSection.d.ts.map +1 -0
  160. package/dist/field/features/format/common/floatingSelectToolbarSection.js +21 -0
  161. package/dist/field/features/format/strikethrough/index.d.ts +3 -0
  162. package/dist/field/features/format/strikethrough/index.d.ts.map +1 -0
  163. package/dist/field/features/format/strikethrough/index.js +49 -0
  164. package/dist/field/features/format/strikethrough/markdownTransformers.d.ts +3 -0
  165. package/dist/field/features/format/strikethrough/markdownTransformers.d.ts.map +1 -0
  166. package/dist/field/features/format/strikethrough/markdownTransformers.js +19 -0
  167. package/dist/field/features/format/subscript/index.d.ts +3 -0
  168. package/dist/field/features/format/subscript/index.d.ts.map +1 -0
  169. package/dist/field/features/format/subscript/index.js +45 -0
  170. package/dist/field/features/format/superscript/index.d.ts +3 -0
  171. package/dist/field/features/format/superscript/index.d.ts.map +1 -0
  172. package/dist/field/features/format/superscript/index.js +45 -0
  173. package/dist/field/features/format/underline/index.d.ts +3 -0
  174. package/dist/field/features/format/underline/index.d.ts.map +1 -0
  175. package/dist/field/features/format/underline/index.js +45 -0
  176. package/dist/field/features/indent/floatingSelectToolbarIndentSection.d.ts +4 -0
  177. package/dist/field/features/indent/floatingSelectToolbarIndentSection.d.ts.map +1 -0
  178. package/dist/field/features/indent/floatingSelectToolbarIndentSection.js +21 -0
  179. package/dist/field/features/indent/index.d.ts +4 -0
  180. package/dist/field/features/indent/index.d.ts.map +1 -0
  181. package/dist/field/features/indent/index.js +67 -0
  182. package/dist/field/features/lists/CheckList/index.d.ts +3 -0
  183. package/dist/field/features/lists/CheckList/index.d.ts.map +1 -0
  184. package/dist/field/features/lists/CheckList/index.js +67 -0
  185. package/dist/field/features/lists/CheckList/markdownTransformers.d.ts +3 -0
  186. package/dist/field/features/lists/CheckList/markdownTransformers.d.ts.map +1 -0
  187. package/dist/field/features/lists/CheckList/markdownTransformers.js +26 -0
  188. package/dist/field/features/lists/OrderedList/index.d.ts +3 -0
  189. package/dist/field/features/lists/OrderedList/index.d.ts.map +1 -0
  190. package/dist/field/features/lists/OrderedList/index.js +65 -0
  191. package/dist/field/features/lists/OrderedList/markdownTransformer.d.ts +3 -0
  192. package/dist/field/features/lists/OrderedList/markdownTransformer.d.ts.map +1 -0
  193. package/dist/field/features/lists/OrderedList/markdownTransformer.js +26 -0
  194. package/dist/field/features/lists/UnorderedList/index.d.ts +3 -0
  195. package/dist/field/features/lists/UnorderedList/index.d.ts.map +1 -0
  196. package/dist/field/features/lists/UnorderedList/index.js +65 -0
  197. package/dist/field/features/lists/UnorderedList/markdownTransformer.d.ts +3 -0
  198. package/dist/field/features/lists/UnorderedList/markdownTransformer.d.ts.map +1 -0
  199. package/dist/field/features/lists/UnorderedList/markdownTransformer.js +26 -0
  200. package/dist/field/features/lists/common/markdown.d.ts +6 -0
  201. package/dist/field/features/lists/common/markdown.d.ts.map +1 -0
  202. package/dist/field/features/lists/common/markdown.js +76 -0
  203. package/dist/field/features/types.d.ts +95 -0
  204. package/dist/field/features/types.d.ts.map +1 -0
  205. package/dist/field/features/types.js +6 -0
  206. package/dist/field/index.d.ts +4 -0
  207. package/dist/field/index.d.ts.map +1 -0
  208. package/dist/field/index.js +60 -0
  209. package/dist/field/lexical/LexicalEditor.d.ts +5 -0
  210. package/dist/field/lexical/LexicalEditor.d.ts.map +1 -0
  211. package/dist/field/lexical/LexicalEditor.js +134 -0
  212. package/dist/field/lexical/LexicalProvider.d.ts +16 -0
  213. package/dist/field/lexical/LexicalProvider.d.ts.map +1 -0
  214. package/dist/field/lexical/LexicalProvider.js +89 -0
  215. package/dist/field/lexical/config/EditorConfigProvider.d.ts +16 -0
  216. package/dist/field/lexical/config/EditorConfigProvider.d.ts.map +1 -0
  217. package/dist/field/lexical/config/EditorConfigProvider.js +96 -0
  218. package/dist/field/lexical/config/default.d.ts +4 -0
  219. package/dist/field/lexical/config/default.d.ts.map +1 -0
  220. package/dist/field/lexical/config/default.js +67 -0
  221. package/dist/field/lexical/config/loader.d.ts +7 -0
  222. package/dist/field/lexical/config/loader.d.ts.map +1 -0
  223. package/dist/field/lexical/config/loader.js +133 -0
  224. package/dist/field/lexical/config/sanitize.d.ts +5 -0
  225. package/dist/field/lexical/config/sanitize.d.ts.map +1 -0
  226. package/dist/field/lexical/config/sanitize.js +138 -0
  227. package/dist/field/lexical/config/types.d.ts +12 -0
  228. package/dist/field/lexical/config/types.d.ts.map +1 -0
  229. package/dist/field/lexical/config/types.js +6 -0
  230. package/dist/field/lexical/nodes/index.d.ts +6 -0
  231. package/dist/field/lexical/nodes/index.d.ts.map +1 -0
  232. package/dist/field/lexical/nodes/index.js +15 -0
  233. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.d.ts +8 -0
  234. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.d.ts.map +1 -0
  235. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarButton/index.js +135 -0
  236. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts +17 -0
  237. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.d.ts.map +1 -0
  238. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/DropDown.js +289 -0
  239. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.d.ts +9 -0
  240. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.d.ts.map +1 -0
  241. package/dist/field/lexical/plugins/FloatingSelectToolbar/ToolbarDropdown/index.js +36 -0
  242. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.d.ts +6 -0
  243. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.d.ts.map +1 -0
  244. package/dist/field/lexical/plugins/FloatingSelectToolbar/index.js +272 -0
  245. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts +40 -0
  246. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.d.ts.map +1 -0
  247. package/dist/field/lexical/plugins/FloatingSelectToolbar/types.js +6 -0
  248. package/dist/field/lexical/plugins/MarkdownShortcut/index.d.ts +10 -0
  249. package/dist/field/lexical/plugins/MarkdownShortcut/index.d.ts.map +1 -0
  250. package/dist/field/lexical/plugins/MarkdownShortcut/index.js +66 -0
  251. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts +63 -0
  252. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.d.ts.map +1 -0
  253. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +457 -0
  254. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts +26 -0
  255. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.d.ts.map +1 -0
  256. package/dist/field/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +281 -0
  257. package/dist/field/lexical/plugins/SlashMenu/defaultGroups.d.ts +2 -0
  258. package/dist/field/lexical/plugins/SlashMenu/defaultGroups.d.ts.map +1 -0
  259. package/dist/field/lexical/plugins/SlashMenu/defaultGroups.js +3 -0
  260. package/dist/field/lexical/plugins/SlashMenu/index.d.ts +4 -0
  261. package/dist/field/lexical/plugins/SlashMenu/index.d.ts.map +1 -0
  262. package/dist/field/lexical/plugins/SlashMenu/index.js +187 -0
  263. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts +6 -0
  264. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts.map +1 -0
  265. package/dist/field/lexical/plugins/handles/AddBlockHandlePlugin/index.js +264 -0
  266. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts +2 -0
  267. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -0
  268. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +24 -0
  269. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.d.ts +2 -0
  270. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.d.ts.map +1 -0
  271. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +24 -0
  272. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getNodeCloseToPoint.d.ts +27 -0
  273. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getNodeCloseToPoint.d.ts.map +1 -0
  274. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/getNodeCloseToPoint.js +160 -0
  275. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.d.ts +3 -0
  276. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.d.ts.map +1 -0
  277. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/highlightElemOriginalPosition.js +37 -0
  278. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts +6 -0
  279. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -0
  280. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/index.js +346 -0
  281. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.d.ts +3 -0
  282. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.d.ts.map +1 -0
  283. package/dist/field/lexical/plugins/handles/DraggableBlockPlugin/setTargetLine.js +59 -0
  284. package/dist/field/lexical/plugins/handles/utils/getCollapsedMargins.d.ts +5 -0
  285. package/dist/field/lexical/plugins/handles/utils/getCollapsedMargins.d.ts.map +1 -0
  286. package/dist/field/lexical/plugins/handles/utils/getCollapsedMargins.js +24 -0
  287. package/dist/field/lexical/plugins/handles/utils/getTopLevelNodeKeys.d.ts +3 -0
  288. package/dist/field/lexical/plugins/handles/utils/getTopLevelNodeKeys.d.ts.map +1 -0
  289. package/dist/field/lexical/plugins/handles/utils/getTopLevelNodeKeys.js +16 -0
  290. package/dist/field/lexical/plugins/handles/utils/isOnHandleElement.d.ts +2 -0
  291. package/dist/field/lexical/plugins/handles/utils/isOnHandleElement.d.ts.map +1 -0
  292. package/dist/field/lexical/plugins/handles/utils/isOnHandleElement.js +15 -0
  293. package/dist/field/lexical/plugins/handles/utils/setHandlePosition.d.ts +2 -0
  294. package/dist/field/lexical/plugins/handles/utils/setHandlePosition.d.ts.map +1 -0
  295. package/dist/field/lexical/plugins/handles/utils/setHandlePosition.js +27 -0
  296. package/dist/field/lexical/theme/EditorTheme.d.ts +4 -0
  297. package/dist/field/lexical/theme/EditorTheme.d.ts.map +1 -0
  298. package/dist/field/lexical/theme/EditorTheme.js +115 -0
  299. package/dist/field/lexical/ui/ContentEditable.d.ts +6 -0
  300. package/dist/field/lexical/ui/ContentEditable.d.ts.map +1 -0
  301. package/dist/field/lexical/ui/ContentEditable.js +59 -0
  302. package/dist/field/lexical/ui/icons/AI/index.d.ts +3 -0
  303. package/dist/field/lexical/ui/icons/AI/index.d.ts.map +1 -0
  304. package/dist/field/lexical/ui/icons/AI/index.js +42 -0
  305. package/dist/field/lexical/ui/icons/AlignCenter/index.d.ts +3 -0
  306. package/dist/field/lexical/ui/icons/AlignCenter/index.d.ts.map +1 -0
  307. package/dist/field/lexical/ui/icons/AlignCenter/index.js +40 -0
  308. package/dist/field/lexical/ui/icons/AlignLeft/index.d.ts +3 -0
  309. package/dist/field/lexical/ui/icons/AlignLeft/index.d.ts.map +1 -0
  310. package/dist/field/lexical/ui/icons/AlignLeft/index.js +40 -0
  311. package/dist/field/lexical/ui/icons/AlignRight/index.d.ts +3 -0
  312. package/dist/field/lexical/ui/icons/AlignRight/index.d.ts.map +1 -0
  313. package/dist/field/lexical/ui/icons/AlignRight/index.js +40 -0
  314. package/dist/field/lexical/ui/icons/Block/index.d.ts +3 -0
  315. package/dist/field/lexical/ui/icons/Block/index.d.ts.map +1 -0
  316. package/dist/field/lexical/ui/icons/Block/index.js +49 -0
  317. package/dist/field/lexical/ui/icons/Blockquote/index.d.ts +3 -0
  318. package/dist/field/lexical/ui/icons/Blockquote/index.d.ts.map +1 -0
  319. package/dist/field/lexical/ui/icons/Blockquote/index.js +31 -0
  320. package/dist/field/lexical/ui/icons/Bold/index.d.ts +3 -0
  321. package/dist/field/lexical/ui/icons/Bold/index.d.ts.map +1 -0
  322. package/dist/field/lexical/ui/icons/Bold/index.js +31 -0
  323. package/dist/field/lexical/ui/icons/Checklist/index.d.ts +3 -0
  324. package/dist/field/lexical/ui/icons/Checklist/index.d.ts.map +1 -0
  325. package/dist/field/lexical/ui/icons/Checklist/index.js +39 -0
  326. package/dist/field/lexical/ui/icons/Code/index.d.ts +3 -0
  327. package/dist/field/lexical/ui/icons/Code/index.d.ts.map +1 -0
  328. package/dist/field/lexical/ui/icons/Code/index.js +34 -0
  329. package/dist/field/lexical/ui/icons/CodeBlock/index.d.ts +3 -0
  330. package/dist/field/lexical/ui/icons/CodeBlock/index.d.ts.map +1 -0
  331. package/dist/field/lexical/ui/icons/CodeBlock/index.js +34 -0
  332. package/dist/field/lexical/ui/icons/H1/index.d.ts +3 -0
  333. package/dist/field/lexical/ui/icons/H1/index.d.ts.map +1 -0
  334. package/dist/field/lexical/ui/icons/H1/index.js +31 -0
  335. package/dist/field/lexical/ui/icons/H2/index.d.ts +3 -0
  336. package/dist/field/lexical/ui/icons/H2/index.d.ts.map +1 -0
  337. package/dist/field/lexical/ui/icons/H2/index.js +31 -0
  338. package/dist/field/lexical/ui/icons/H3/index.d.ts +3 -0
  339. package/dist/field/lexical/ui/icons/H3/index.d.ts.map +1 -0
  340. package/dist/field/lexical/ui/icons/H3/index.js +31 -0
  341. package/dist/field/lexical/ui/icons/H4/index.d.ts +3 -0
  342. package/dist/field/lexical/ui/icons/H4/index.d.ts.map +1 -0
  343. package/dist/field/lexical/ui/icons/H4/index.js +31 -0
  344. package/dist/field/lexical/ui/icons/H5/index.d.ts +3 -0
  345. package/dist/field/lexical/ui/icons/H5/index.d.ts.map +1 -0
  346. package/dist/field/lexical/ui/icons/H5/index.js +31 -0
  347. package/dist/field/lexical/ui/icons/H6/index.d.ts +3 -0
  348. package/dist/field/lexical/ui/icons/H6/index.d.ts.map +1 -0
  349. package/dist/field/lexical/ui/icons/H6/index.js +31 -0
  350. package/dist/field/lexical/ui/icons/IndentDecrease/index.d.ts +3 -0
  351. package/dist/field/lexical/ui/icons/IndentDecrease/index.d.ts.map +1 -0
  352. package/dist/field/lexical/ui/icons/IndentDecrease/index.js +43 -0
  353. package/dist/field/lexical/ui/icons/IndentIncrease/index.d.ts +3 -0
  354. package/dist/field/lexical/ui/icons/IndentIncrease/index.d.ts.map +1 -0
  355. package/dist/field/lexical/ui/icons/IndentIncrease/index.js +43 -0
  356. package/dist/field/lexical/ui/icons/Italic/index.d.ts +3 -0
  357. package/dist/field/lexical/ui/icons/Italic/index.d.ts.map +1 -0
  358. package/dist/field/lexical/ui/icons/Italic/index.js +31 -0
  359. package/dist/field/lexical/ui/icons/Link/index.d.ts +3 -0
  360. package/dist/field/lexical/ui/icons/Link/index.d.ts.map +1 -0
  361. package/dist/field/lexical/ui/icons/Link/index.js +42 -0
  362. package/dist/field/lexical/ui/icons/OrderedList/index.d.ts +3 -0
  363. package/dist/field/lexical/ui/icons/OrderedList/index.d.ts.map +1 -0
  364. package/dist/field/lexical/ui/icons/OrderedList/index.js +46 -0
  365. package/dist/field/lexical/ui/icons/Relationship/index.d.ts +3 -0
  366. package/dist/field/lexical/ui/icons/Relationship/index.d.ts.map +1 -0
  367. package/dist/field/lexical/ui/icons/Relationship/index.js +42 -0
  368. package/dist/field/lexical/ui/icons/Strikethrough/index.d.ts +3 -0
  369. package/dist/field/lexical/ui/icons/Strikethrough/index.d.ts.map +1 -0
  370. package/dist/field/lexical/ui/icons/Strikethrough/index.js +34 -0
  371. package/dist/field/lexical/ui/icons/Subscript/index.d.ts +3 -0
  372. package/dist/field/lexical/ui/icons/Subscript/index.d.ts.map +1 -0
  373. package/dist/field/lexical/ui/icons/Subscript/index.js +31 -0
  374. package/dist/field/lexical/ui/icons/Superscript/index.d.ts +3 -0
  375. package/dist/field/lexical/ui/icons/Superscript/index.d.ts.map +1 -0
  376. package/dist/field/lexical/ui/icons/Superscript/index.js +31 -0
  377. package/dist/field/lexical/ui/icons/Text/index.d.ts +3 -0
  378. package/dist/field/lexical/ui/icons/Text/index.d.ts.map +1 -0
  379. package/dist/field/lexical/ui/icons/Text/index.js +31 -0
  380. package/dist/field/lexical/ui/icons/Underline/index.d.ts +3 -0
  381. package/dist/field/lexical/ui/icons/Underline/index.d.ts.map +1 -0
  382. package/dist/field/lexical/ui/icons/Underline/index.js +34 -0
  383. package/dist/field/lexical/ui/icons/UnorderedList/index.d.ts +3 -0
  384. package/dist/field/lexical/ui/icons/UnorderedList/index.d.ts.map +1 -0
  385. package/dist/field/lexical/ui/icons/UnorderedList/index.js +61 -0
  386. package/dist/field/lexical/ui/icons/Upload/index.d.ts +3 -0
  387. package/dist/field/lexical/ui/icons/Upload/index.d.ts.map +1 -0
  388. package/dist/field/lexical/ui/icons/Upload/index.js +43 -0
  389. package/dist/field/lexical/utils/canUseDOM.d.ts +2 -0
  390. package/dist/field/lexical/utils/canUseDOM.d.ts.map +1 -0
  391. package/dist/field/lexical/utils/canUseDOM.js +13 -0
  392. package/dist/field/lexical/utils/cloneDeep.d.ts +2 -0
  393. package/dist/field/lexical/utils/cloneDeep.d.ts.map +1 -0
  394. package/dist/field/lexical/utils/cloneDeep.js +39 -0
  395. package/dist/field/lexical/utils/getDOMRangeRect.d.ts +2 -0
  396. package/dist/field/lexical/utils/getDOMRangeRect.d.ts.map +1 -0
  397. package/dist/field/lexical/utils/getDOMRangeRect.js +26 -0
  398. package/dist/field/lexical/utils/getSelectedNode.d.ts +3 -0
  399. package/dist/field/lexical/utils/getSelectedNode.d.ts.map +1 -0
  400. package/dist/field/lexical/utils/getSelectedNode.js +33 -0
  401. package/dist/field/lexical/utils/guard.d.ts +9 -0
  402. package/dist/field/lexical/utils/guard.d.ts.map +1 -0
  403. package/dist/field/lexical/utils/guard.js +21 -0
  404. package/dist/field/lexical/utils/invariant.d.ts +2 -0
  405. package/dist/field/lexical/utils/invariant.d.ts.map +1 -0
  406. package/dist/field/lexical/utils/invariant.js +22 -0
  407. package/dist/field/lexical/utils/isMobileWidth.d.ts +9 -0
  408. package/dist/field/lexical/utils/isMobileWidth.d.ts.map +1 -0
  409. package/dist/field/lexical/utils/isMobileWidth.js +9 -0
  410. package/dist/field/lexical/utils/joinClasses.d.ts +9 -0
  411. package/dist/field/lexical/utils/joinClasses.d.ts.map +1 -0
  412. package/dist/field/lexical/utils/joinClasses.js +21 -0
  413. package/dist/field/lexical/utils/markdown/createBlockNode.d.ts +4 -0
  414. package/dist/field/lexical/utils/markdown/createBlockNode.d.ts.map +1 -0
  415. package/dist/field/lexical/utils/markdown/createBlockNode.js +20 -0
  416. package/dist/field/lexical/utils/point.d.ts +22 -0
  417. package/dist/field/lexical/utils/point.d.ts.map +1 -0
  418. package/dist/field/lexical/utils/point.js +61 -0
  419. package/dist/field/lexical/utils/rect.d.ts +54 -0
  420. package/dist/field/lexical/utils/rect.d.ts.map +1 -0
  421. package/dist/field/lexical/utils/rect.js +154 -0
  422. package/dist/field/lexical/utils/setFloatingElemPosition.d.ts +2 -0
  423. package/dist/field/lexical/utils/setFloatingElemPosition.d.ts.map +1 -0
  424. package/dist/field/lexical/utils/setFloatingElemPosition.js +55 -0
  425. package/dist/field/lexical/utils/setFloatingElemPositionForLinkEditor.d.ts +2 -0
  426. package/dist/field/lexical/utils/setFloatingElemPositionForLinkEditor.d.ts.map +1 -0
  427. package/dist/field/lexical/utils/setFloatingElemPositionForLinkEditor.js +43 -0
  428. package/dist/field/lexical/utils/swipe.d.ts +12 -0
  429. package/dist/field/lexical/utils/swipe.d.ts.map +1 -0
  430. package/dist/field/lexical/utils/swipe.js +130 -0
  431. package/dist/field/lexical/utils/url.d.ts +10 -0
  432. package/dist/field/lexical/utils/url.d.ts.map +1 -0
  433. package/dist/field/lexical/utils/url.js +40 -0
  434. package/dist/index.d.ts +30 -0
  435. package/dist/index.d.ts.map +1 -0
  436. package/dist/index.js +170 -0
  437. package/dist/populate/defaultValue.d.ts +26 -0
  438. package/dist/populate/defaultValue.d.ts.map +1 -0
  439. package/dist/populate/defaultValue.js +41 -0
  440. package/dist/populate/populate.d.ts +20 -0
  441. package/dist/populate/populate.d.ts.map +1 -0
  442. package/dist/populate/populate.js +31 -0
  443. package/dist/populate/recurseNestedFields.d.ts +16 -0
  444. package/dist/populate/recurseNestedFields.d.ts.map +1 -0
  445. package/dist/populate/recurseNestedFields.js +182 -0
  446. package/dist/populate/richTextRelationshipPromise.d.ts +22 -0
  447. package/dist/populate/richTextRelationshipPromise.d.ts.map +1 -0
  448. package/dist/populate/richTextRelationshipPromise.js +71 -0
  449. package/dist/populate/validation.d.ts +4 -0
  450. package/dist/populate/validation.d.ts.map +1 -0
  451. package/dist/populate/validation.js +21 -0
  452. package/dist/types.d.ts +14 -0
  453. package/dist/types.d.ts.map +1 -0
  454. package/dist/types.js +6 -0
  455. package/package.json +60 -0
  456. package/src/index.ts +92 -0
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "BlockComponent", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return BlockComponent;
9
+ }
10
+ });
11
+ const _lexical = require("lexical");
12
+ const _elements = require("payload/components/elements");
13
+ const _forms = require("payload/components/forms");
14
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
15
+ const _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
16
+ const _components = require("payload/components");
17
+ const _Blocks = require("payload/components/fields/Blocks");
18
+ const _utilities = require("payload/utilities");
19
+ const _reacti18next = require("react-i18next");
20
+ const _EditorConfigProvider = require("../../../lexical/config/EditorConfigProvider");
21
+ const _FormSavePlugin = require("./FormSavePlugin");
22
+ require("./index.scss");
23
+ function _getRequireWildcardCache(nodeInterop) {
24
+ if (typeof WeakMap !== "function") return null;
25
+ var cacheBabelInterop = new WeakMap();
26
+ var cacheNodeInterop = new WeakMap();
27
+ return (_getRequireWildcardCache = function(nodeInterop) {
28
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
29
+ })(nodeInterop);
30
+ }
31
+ function _interop_require_wildcard(obj, nodeInterop) {
32
+ if (!nodeInterop && obj && obj.__esModule) {
33
+ return obj;
34
+ }
35
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
36
+ return {
37
+ default: obj
38
+ };
39
+ }
40
+ var cache = _getRequireWildcardCache(nodeInterop);
41
+ if (cache && cache.has(obj)) {
42
+ return cache.get(obj);
43
+ }
44
+ var newObj = {};
45
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
46
+ for(var key in obj){
47
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
48
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
49
+ if (desc && (desc.get || desc.set)) {
50
+ Object.defineProperty(newObj, key, desc);
51
+ } else {
52
+ newObj[key] = obj[key];
53
+ }
54
+ }
55
+ }
56
+ newObj.default = obj;
57
+ if (cache) {
58
+ cache.set(obj, newObj);
59
+ }
60
+ return newObj;
61
+ }
62
+ const baseClass = 'lexical-block';
63
+ const BlockComponent = (props)=>{
64
+ const { children, className, fields, format, nodeKey } = props;
65
+ const [editor] = (0, _LexicalComposerContext.useLexicalComposerContext)();
66
+ const { editorConfig, field } = (0, _EditorConfigProvider.useEditorConfigContext)();
67
+ const { i18n } = (0, _reacti18next.useTranslation)();
68
+ const [collapsed, setCollapsed] = _react.default.useState(fields.collapsed);
69
+ const [blockName, setBlockName] = _react.default.useState(fields.blockName);
70
+ const path = `${field.path}.${0}`;
71
+ const block = (editorConfig?.resolvedFeatureMap?.get('blocks')?.props)?.blocks?.find((block)=>block.slug === fields?.type);
72
+ const onFormChange = (0, _react.useCallback)(({ formData })=>{
73
+ editor.update(()=>{
74
+ const node = (0, _lexical.$getNodeByKey)(nodeKey);
75
+ if (node) {
76
+ node.setFields({
77
+ blockName: blockName,
78
+ collapsed: collapsed,
79
+ data: formData,
80
+ type: block.slug
81
+ });
82
+ }
83
+ });
84
+ }, [
85
+ block?.slug,
86
+ editor,
87
+ nodeKey,
88
+ collapsed,
89
+ blockName
90
+ ]);
91
+ const onCollapsedOrBlockNameChange = (0, _react.useCallback)(()=>{
92
+ editor.update(()=>{
93
+ const node = (0, _lexical.$getNodeByKey)(nodeKey);
94
+ if (node) {
95
+ node.setFields({
96
+ ...node.getFields(),
97
+ blockName: blockName,
98
+ collapsed: collapsed
99
+ });
100
+ }
101
+ });
102
+ }, [
103
+ editor,
104
+ nodeKey,
105
+ collapsed,
106
+ blockName
107
+ ]);
108
+ const initialDataRef = _react.default.useRef((0, _forms.buildInitialState)(fields.data || {})) // Store initial value in a ref, so it doesn't change on re-render and only gets initialized once
109
+ ;
110
+ // Memoized Form JSX
111
+ const formContent = (0, _react.useMemo)(()=>{
112
+ return block && /*#__PURE__*/ _react.default.createElement(_forms.Form, {
113
+ initialState: initialDataRef?.current
114
+ }, /*#__PURE__*/ _react.default.createElement("div", {
115
+ id: `row-${0}`,
116
+ key: `$row-${0}`
117
+ }, /*#__PURE__*/ _react.default.createElement(_elements.Collapsible, {
118
+ className: "",
119
+ collapsed: collapsed,
120
+ collapsibleStyle: false ? 'error' : 'default',
121
+ header: /*#__PURE__*/ _react.default.createElement("div", {
122
+ className: `${baseClass}__block-header`
123
+ }, /*#__PURE__*/ _react.default.createElement(_components.Pill, {
124
+ className: `${baseClass}__block-pill ${baseClass}__block-pill-${fields.type}`,
125
+ pillStyle: "white"
126
+ }, (0, _utilities.getTranslation)(block.labels.singular, i18n)), /*#__PURE__*/ _react.default.createElement(_Blocks.SectionTitle, {
127
+ customOnChange: (e)=>{
128
+ e.stopPropagation();
129
+ e.preventDefault();
130
+ setBlockName(e.target.value);
131
+ onCollapsedOrBlockNameChange();
132
+ },
133
+ customValue: blockName,
134
+ path: `${path}.blockName`,
135
+ readOnly: field?.admin?.readOnly
136
+ }), false && /*#__PURE__*/ _react.default.createElement(_components.ErrorPill, {
137
+ count: 0,
138
+ withMessage: true
139
+ })),
140
+ key: 0,
141
+ onToggle: (collapsed)=>{
142
+ setCollapsed(collapsed);
143
+ onCollapsedOrBlockNameChange();
144
+ }
145
+ }, /*#__PURE__*/ _react.default.createElement(_forms.HiddenInput, {
146
+ name: `${path}.id`,
147
+ value: 0
148
+ }), /*#__PURE__*/ _react.default.createElement(_forms.RenderFields, {
149
+ className: `${baseClass}__fields`,
150
+ fieldSchema: block.fields.map((field)=>({
151
+ ...field,
152
+ path: (0, _forms.createNestedFieldPath)(null, field)
153
+ })),
154
+ fieldTypes: field.fieldTypes,
155
+ margins: "small",
156
+ permissions: field.permissions?.blocks?.[fields?.type]?.fields,
157
+ readOnly: field.admin.readOnly
158
+ }))), /*#__PURE__*/ _react.default.createElement(_FormSavePlugin.FormSavePlugin, {
159
+ fieldSchema: block.fields.map((field)=>({
160
+ ...field,
161
+ path: (0, _forms.createNestedFieldPath)(null, field)
162
+ })),
163
+ onChange: onFormChange
164
+ }));
165
+ }, [
166
+ block,
167
+ onFormChange,
168
+ field.fieldTypes,
169
+ field.admin.readOnly
170
+ ]);
171
+ return /*#__PURE__*/ _react.default.createElement("div", {
172
+ className: baseClass
173
+ }, formContent);
174
+ };
175
+
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvY29tcG9uZW50L2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyAkZ2V0Tm9kZUJ5S2V5LCB0eXBlIEVsZW1lbnRGb3JtYXRUeXBlIH0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2VsZW1lbnRzJ1xuaW1wb3J0IHtcbiAgRm9ybSxcbiAgSGlkZGVuSW5wdXQsXG4gIFJlbmRlckZpZWxkcyxcbiAgYnVpbGRJbml0aWFsU3RhdGUsXG4gIGNyZWF0ZU5lc3RlZEZpZWxkUGF0aCxcbn0gZnJvbSAncGF5bG9hZC9jb21wb25lbnRzL2Zvcm1zJ1xuaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB0eXBlIHsgQmxvY2tOb2RlIH0gZnJvbSAnLi4vbm9kZXMvQmxvY2tzTm9kZSdcblxuaW1wb3J0IHsgJGNyZWF0ZUJsb2NrTm9kZSwgdHlwZSBCbG9ja0ZpZWxkcyB9IGZyb20gJy4uL25vZGVzL0Jsb2Nrc05vZGUnXG5jb25zdCBiYXNlQ2xhc3MgPSAnbGV4aWNhbC1ibG9jaydcblxuaW1wb3J0IHR5cGUgeyBEYXRhIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCB9IGZyb20gJ0BsZXhpY2FsL3JlYWN0L0xleGljYWxDb21wb3NlckNvbnRleHQnXG5pbXBvcnQgeyBFcnJvclBpbGwsIFBpbGwgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMnXG5pbXBvcnQgeyBSb3dBY3Rpb25zLCBTZWN0aW9uVGl0bGUgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMvZmllbGRzL0Jsb2NrcydcbmltcG9ydCB7IGdldFRyYW5zbGF0aW9uIH0gZnJvbSAncGF5bG9hZC91dGlsaXRpZXMnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5cbmltcG9ydCB0eXBlIHsgQmxvY2tzRmVhdHVyZVByb3BzIH0gZnJvbSAnLi4nXG5cbmltcG9ydCB7IHVzZUVkaXRvckNvbmZpZ0NvbnRleHQgfSBmcm9tICcuLi8uLi8uLi9sZXhpY2FsL2NvbmZpZy9FZGl0b3JDb25maWdQcm92aWRlcidcbmltcG9ydCB7IEZvcm1TYXZlUGx1Z2luIH0gZnJvbSAnLi9Gb3JtU2F2ZVBsdWdpbidcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuXG50eXBlIFByb3BzID0ge1xuICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZVxuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgZmllbGRzOiBCbG9ja0ZpZWxkc1xuICBmb3JtYXQ/OiBFbGVtZW50Rm9ybWF0VHlwZVxuICBub2RlS2V5Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCBCbG9ja0NvbXBvbmVudDogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGNsYXNzTmFtZSwgZmllbGRzLCBmb3JtYXQsIG5vZGVLZXkgfSA9IHByb3BzXG4gIGNvbnN0IFtlZGl0b3JdID0gdXNlTGV4aWNhbENvbXBvc2VyQ29udGV4dCgpXG4gIGNvbnN0IHsgZWRpdG9yQ29uZmlnLCBmaWVsZCB9ID0gdXNlRWRpdG9yQ29uZmlnQ29udGV4dCgpXG4gIGNvbnN0IHsgaTE4biB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCBbY29sbGFwc2VkLCBzZXRDb2xsYXBzZWRdID0gUmVhY3QudXNlU3RhdGU8Ym9vbGVhbj4oZmllbGRzLmNvbGxhcHNlZClcbiAgY29uc3QgW2Jsb2NrTmFtZSwgc2V0QmxvY2tOYW1lXSA9IFJlYWN0LnVzZVN0YXRlPHN0cmluZz4oZmllbGRzLmJsb2NrTmFtZSlcblxuICBjb25zdCBwYXRoID0gYCR7ZmllbGQucGF0aH0uJHswfWBcblxuICBjb25zdCBibG9jayA9IChcbiAgICBlZGl0b3JDb25maWc/LnJlc29sdmVkRmVhdHVyZU1hcD8uZ2V0KCdibG9ja3MnKT8ucHJvcHMgYXMgQmxvY2tzRmVhdHVyZVByb3BzXG4gICk/LmJsb2Nrcz8uZmluZCgoYmxvY2spID0+IGJsb2NrLnNsdWcgPT09IGZpZWxkcz8udHlwZSlcblxuICBjb25zdCBvbkZvcm1DaGFuZ2UgPSB1c2VDYWxsYmFjayhcbiAgICAoeyBmb3JtRGF0YSB9OiB7IGZvcm1EYXRhOiBEYXRhIH0pID0+IHtcbiAgICAgIGVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgICBjb25zdCBub2RlOiBCbG9ja05vZGUgPSAkZ2V0Tm9kZUJ5S2V5KG5vZGVLZXkpXG4gICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgbm9kZS5zZXRGaWVsZHMoe1xuICAgICAgICAgICAgYmxvY2tOYW1lOiBibG9ja05hbWUsXG4gICAgICAgICAgICBjb2xsYXBzZWQ6IGNvbGxhcHNlZCxcbiAgICAgICAgICAgIGRhdGE6IGZvcm1EYXRhLFxuICAgICAgICAgICAgdHlwZTogYmxvY2suc2x1ZyxcbiAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgW2Jsb2NrPy5zbHVnLCBlZGl0b3IsIG5vZGVLZXksIGNvbGxhcHNlZCwgYmxvY2tOYW1lXSxcbiAgKVxuXG4gIGNvbnN0IG9uQ29sbGFwc2VkT3JCbG9ja05hbWVDaGFuZ2UgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgZWRpdG9yLnVwZGF0ZSgoKSA9PiB7XG4gICAgICBjb25zdCBub2RlOiBCbG9ja05vZGUgPSAkZ2V0Tm9kZUJ5S2V5KG5vZGVLZXkpXG4gICAgICBpZiAobm9kZSkge1xuICAgICAgICBub2RlLnNldEZpZWxkcyh7XG4gICAgICAgICAgLi4ubm9kZS5nZXRGaWVsZHMoKSxcbiAgICAgICAgICBibG9ja05hbWU6IGJsb2NrTmFtZSxcbiAgICAgICAgICBjb2xsYXBzZWQ6IGNvbGxhcHNlZCxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KVxuICB9LCBbZWRpdG9yLCBub2RlS2V5LCBjb2xsYXBzZWQsIGJsb2NrTmFtZV0pXG5cbiAgY29uc3QgaW5pdGlhbERhdGFSZWYgPSBSZWFjdC51c2VSZWY8RGF0YT4oYnVpbGRJbml0aWFsU3RhdGUoZmllbGRzLmRhdGEgfHwge30pKSAvLyBTdG9yZSBpbml0aWFsIHZhbHVlIGluIGEgcmVmLCBzbyBpdCBkb2Vzbid0IGNoYW5nZSBvbiByZS1yZW5kZXIgYW5kIG9ubHkgZ2V0cyBpbml0aWFsaXplZCBvbmNlXG5cbiAgLy8gTWVtb2l6ZWQgRm9ybSBKU1hcbiAgY29uc3QgZm9ybUNvbnRlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYmxvY2sgJiYgKFxuICAgICAgICA8Rm9ybSBpbml0aWFsU3RhdGU9e2luaXRpYWxEYXRhUmVmPy5jdXJyZW50fT5cbiAgICAgICAgICA8ZGl2IGlkPXtgcm93LSR7MH1gfSBrZXk9e2Akcm93LSR7MH1gfT5cbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJcIlxuICAgICAgICAgICAgICBjb2xsYXBzZWQ9e2NvbGxhcHNlZH1cbiAgICAgICAgICAgICAgY29sbGFwc2libGVTdHlsZT17ZmFsc2UgPyAnZXJyb3InIDogJ2RlZmF1bHQnfVxuICAgICAgICAgICAgICBoZWFkZXI9e1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19ibG9jay1oZWFkZXJgfT5cbiAgICAgICAgICAgICAgICAgIDxQaWxsXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fYmxvY2stcGlsbCAke2Jhc2VDbGFzc31fX2Jsb2NrLXBpbGwtJHtmaWVsZHMudHlwZX1gfVxuICAgICAgICAgICAgICAgICAgICBwaWxsU3R5bGU9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtnZXRUcmFuc2xhdGlvbihibG9jay5sYWJlbHMuc2luZ3VsYXIsIGkxOG4pfVxuICAgICAgICAgICAgICAgICAgPC9QaWxsPlxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb25UaXRsZVxuICAgICAgICAgICAgICAgICAgICBjdXN0b21PbkNoYW5nZT17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgICAgICAgICAgICAgICAgc2V0QmxvY2tOYW1lKGUudGFyZ2V0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgIG9uQ29sbGFwc2VkT3JCbG9ja05hbWVDaGFuZ2UoKVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICBjdXN0b21WYWx1ZT17YmxvY2tOYW1lfVxuICAgICAgICAgICAgICAgICAgICBwYXRoPXtgJHtwYXRofS5ibG9ja05hbWVgfVxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17ZmllbGQ/LmFkbWluPy5yZWFkT25seX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICB7ZmFsc2UgJiYgPEVycm9yUGlsbCBjb3VudD17MH0gd2l0aE1lc3NhZ2UgLz59XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAga2V5PXswfVxuICAgICAgICAgICAgICBvblRvZ2dsZT17KGNvbGxhcHNlZCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldENvbGxhcHNlZChjb2xsYXBzZWQpXG4gICAgICAgICAgICAgICAgb25Db2xsYXBzZWRPckJsb2NrTmFtZUNoYW5nZSgpXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxIaWRkZW5JbnB1dCBuYW1lPXtgJHtwYXRofS5pZGB9IHZhbHVlPXswfSAvPlxuXG4gICAgICAgICAgICAgIDxSZW5kZXJGaWVsZHNcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2ZpZWxkc2B9XG4gICAgICAgICAgICAgICAgZmllbGRTY2hlbWE9e2Jsb2NrLmZpZWxkcy5tYXAoKGZpZWxkKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgLi4uZmllbGQsXG4gICAgICAgICAgICAgICAgICBwYXRoOiBjcmVhdGVOZXN0ZWRGaWVsZFBhdGgobnVsbCwgZmllbGQpLFxuICAgICAgICAgICAgICAgIH0pKX1cbiAgICAgICAgICAgICAgICBmaWVsZFR5cGVzPXtmaWVsZC5maWVsZFR5cGVzfVxuICAgICAgICAgICAgICAgIG1hcmdpbnM9XCJzbWFsbFwiXG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbnM9e2ZpZWxkLnBlcm1pc3Npb25zPy5ibG9ja3M/LltmaWVsZHM/LnR5cGVdPy5maWVsZHN9XG4gICAgICAgICAgICAgICAgcmVhZE9ubHk9e2ZpZWxkLmFkbWluLnJlYWRPbmx5fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxGb3JtU2F2ZVBsdWdpblxuICAgICAgICAgICAgZmllbGRTY2hlbWE9e2Jsb2NrLmZpZWxkcy5tYXAoKGZpZWxkKSA9PiAoe1xuICAgICAgICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgICAgICAgcGF0aDogY3JlYXRlTmVzdGVkRmllbGRQYXRoKG51bGwsIGZpZWxkKSxcbiAgICAgICAgICAgIH0pKX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkZvcm1DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Gb3JtPlxuICAgICAgKVxuICAgIClcbiAgfSwgW2Jsb2NrLCBvbkZvcm1DaGFuZ2UsIGZpZWxkLmZpZWxkVHlwZXMsIGZpZWxkLmFkbWluLnJlYWRPbmx5XSlcblxuICByZXR1cm4gPGRpdiBjbGFzc05hbWU9e2Jhc2VDbGFzc30+e2Zvcm1Db250ZW50fTwvZGl2PlxufVxuIl0sIm5hbWVzIjpbIkJsb2NrQ29tcG9uZW50IiwiYmFzZUNsYXNzIiwicHJvcHMiLCJjaGlsZHJlbiIsImNsYXNzTmFtZSIsImZpZWxkcyIsImZvcm1hdCIsIm5vZGVLZXkiLCJlZGl0b3IiLCJ1c2VMZXhpY2FsQ29tcG9zZXJDb250ZXh0IiwiZWRpdG9yQ29uZmlnIiwiZmllbGQiLCJ1c2VFZGl0b3JDb25maWdDb250ZXh0IiwiaTE4biIsInVzZVRyYW5zbGF0aW9uIiwiY29sbGFwc2VkIiwic2V0Q29sbGFwc2VkIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsImJsb2NrTmFtZSIsInNldEJsb2NrTmFtZSIsInBhdGgiLCJibG9jayIsInJlc29sdmVkRmVhdHVyZU1hcCIsImdldCIsImJsb2NrcyIsImZpbmQiLCJzbHVnIiwidHlwZSIsIm9uRm9ybUNoYW5nZSIsInVzZUNhbGxiYWNrIiwiZm9ybURhdGEiLCJ1cGRhdGUiLCJub2RlIiwiJGdldE5vZGVCeUtleSIsInNldEZpZWxkcyIsImRhdGEiLCJvbkNvbGxhcHNlZE9yQmxvY2tOYW1lQ2hhbmdlIiwiZ2V0RmllbGRzIiwiaW5pdGlhbERhdGFSZWYiLCJ1c2VSZWYiLCJidWlsZEluaXRpYWxTdGF0ZSIsImZvcm1Db250ZW50IiwidXNlTWVtbyIsIkZvcm0iLCJpbml0aWFsU3RhdGUiLCJjdXJyZW50IiwiZGl2IiwiaWQiLCJrZXkiLCJDb2xsYXBzaWJsZSIsImNvbGxhcHNpYmxlU3R5bGUiLCJoZWFkZXIiLCJQaWxsIiwicGlsbFN0eWxlIiwiZ2V0VHJhbnNsYXRpb24iLCJsYWJlbHMiLCJzaW5ndWxhciIsIlNlY3Rpb25UaXRsZSIsImN1c3RvbU9uQ2hhbmdlIiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsInByZXZlbnREZWZhdWx0IiwidGFyZ2V0IiwidmFsdWUiLCJjdXN0b21WYWx1ZSIsInJlYWRPbmx5IiwiYWRtaW4iLCJFcnJvclBpbGwiLCJjb3VudCIsIndpdGhNZXNzYWdlIiwib25Ub2dnbGUiLCJIaWRkZW5JbnB1dCIsIm5hbWUiLCJSZW5kZXJGaWVsZHMiLCJmaWVsZFNjaGVtYSIsIm1hcCIsImNyZWF0ZU5lc3RlZEZpZWxkUGF0aCIsImZpZWxkVHlwZXMiLCJtYXJnaW5zIiwicGVybWlzc2lvbnMiLCJGb3JtU2F2ZVBsdWdpbiIsIm9uQ2hhbmdlIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNDYUE7OztlQUFBQTs7O3lCQXRDeUM7MEJBQzFCO3VCQU9yQjsrREFDcUM7d0NBU0Y7NEJBQ1Y7d0JBQ1M7MkJBQ1Y7OEJBQ0E7c0NBSVE7Z0NBQ1I7UUFDeEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFkUCxNQUFNQyxZQUFZO0FBd0JYLE1BQU1ELGlCQUFrQyxDQUFDRTtJQUM5QyxNQUFNLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxNQUFNLEVBQUVDLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEdBQUdMO0lBQ3pELE1BQU0sQ0FBQ00sT0FBTyxHQUFHQyxJQUFBQSxpREFBeUI7SUFDMUMsTUFBTSxFQUFFQyxZQUFZLEVBQUVDLEtBQUssRUFBRSxHQUFHQyxJQUFBQSw0Q0FBc0I7SUFDdEQsTUFBTSxFQUFFQyxJQUFJLEVBQUUsR0FBR0MsSUFBQUEsNEJBQWM7SUFDL0IsTUFBTSxDQUFDQyxXQUFXQyxhQUFhLEdBQUdDLGNBQUssQ0FBQ0MsUUFBUSxDQUFVYixPQUFPVSxTQUFTO0lBQzFFLE1BQU0sQ0FBQ0ksV0FBV0MsYUFBYSxHQUFHSCxjQUFLLENBQUNDLFFBQVEsQ0FBU2IsT0FBT2MsU0FBUztJQUV6RSxNQUFNRSxPQUFPLENBQUMsRUFBRVYsTUFBTVUsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFFakMsTUFBTUMsUUFBUSxDQUNaWixjQUFjYSxvQkFBb0JDLElBQUksV0FBV3RCLEtBQ25ELEdBQUd1QixRQUFRQyxLQUFLLENBQUNKLFFBQVVBLE1BQU1LLElBQUksS0FBS3RCLFFBQVF1QjtJQUVsRCxNQUFNQyxlQUFlQyxJQUFBQSxrQkFBVyxFQUM5QixDQUFDLEVBQUVDLFFBQVEsRUFBc0I7UUFDL0J2QixPQUFPd0IsTUFBTSxDQUFDO1lBQ1osTUFBTUMsT0FBa0JDLElBQUFBLHNCQUFhLEVBQUMzQjtZQUN0QyxJQUFJMEIsTUFBTTtnQkFDUkEsS0FBS0UsU0FBUyxDQUFDO29CQUNiaEIsV0FBV0E7b0JBQ1hKLFdBQVdBO29CQUNYcUIsTUFBTUw7b0JBQ05ILE1BQU1OLE1BQU1LLElBQUk7Z0JBQ2xCO1lBQ0Y7UUFDRjtJQUNGLEdBQ0E7UUFBQ0wsT0FBT0s7UUFBTW5CO1FBQVFEO1FBQVNRO1FBQVdJO0tBQVU7SUFHdEQsTUFBTWtCLCtCQUErQlAsSUFBQUEsa0JBQVcsRUFBQztRQUMvQ3RCLE9BQU93QixNQUFNLENBQUM7WUFDWixNQUFNQyxPQUFrQkMsSUFBQUEsc0JBQWEsRUFBQzNCO1lBQ3RDLElBQUkwQixNQUFNO2dCQUNSQSxLQUFLRSxTQUFTLENBQUM7b0JBQ2IsR0FBR0YsS0FBS0ssU0FBUyxFQUFFO29CQUNuQm5CLFdBQVdBO29CQUNYSixXQUFXQTtnQkFDYjtZQUNGO1FBQ0Y7SUFDRixHQUFHO1FBQUNQO1FBQVFEO1FBQVNRO1FBQVdJO0tBQVU7SUFFMUMsTUFBTW9CLGlCQUFpQnRCLGNBQUssQ0FBQ3VCLE1BQU0sQ0FBT0MsSUFBQUEsd0JBQWlCLEVBQUNwQyxPQUFPK0IsSUFBSSxJQUFJLENBQUMsSUFBSSxpR0FBaUc7O0lBRWpMLG9CQUFvQjtJQUNwQixNQUFNTSxjQUFjQyxJQUFBQSxjQUFPLEVBQUM7UUFDMUIsT0FDRXJCLHVCQUNFLDZCQUFDc0IsV0FBSTtZQUFDQyxjQUFjTixnQkFBZ0JPO3lCQUNsQyw2QkFBQ0M7WUFBSUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFBRUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7eUJBQ25DLDZCQUFDQyxxQkFBVztZQUNWOUMsV0FBVTtZQUNWVyxXQUFXQTtZQUNYb0Msa0JBQWtCLFFBQVEsVUFBVTtZQUNwQ0Msc0JBQ0UsNkJBQUNMO2dCQUFJM0MsV0FBVyxDQUFDLEVBQUVILFVBQVUsY0FBYyxDQUFDOzZCQUMxQyw2QkFBQ29ELGdCQUFJO2dCQUNIakQsV0FBVyxDQUFDLEVBQUVILFVBQVUsYUFBYSxFQUFFQSxVQUFVLGFBQWEsRUFBRUksT0FBT3VCLElBQUksQ0FBQyxDQUFDO2dCQUM3RTBCLFdBQVU7ZUFFVEMsSUFBQUEseUJBQWMsRUFBQ2pDLE1BQU1rQyxNQUFNLENBQUNDLFFBQVEsRUFBRTVDLHNCQUV6Qyw2QkFBQzZDLG9CQUFZO2dCQUNYQyxnQkFBZ0IsQ0FBQ0M7b0JBQ2ZBLEVBQUVDLGVBQWU7b0JBQ2pCRCxFQUFFRSxjQUFjO29CQUNoQjFDLGFBQWF3QyxFQUFFRyxNQUFNLENBQUNDLEtBQUs7b0JBQzNCM0I7Z0JBQ0Y7Z0JBQ0E0QixhQUFhOUM7Z0JBQ2JFLE1BQU0sQ0FBQyxFQUFFQSxLQUFLLFVBQVUsQ0FBQztnQkFDekI2QyxVQUFVdkQsT0FBT3dELE9BQU9EO2dCQUV6Qix1QkFBUyw2QkFBQ0UscUJBQVM7Z0JBQUNDLE9BQU87Z0JBQUdDLGFBQUFBOztZQUduQ3JCLEtBQUs7WUFDTHNCLFVBQVUsQ0FBQ3hEO2dCQUNUQyxhQUFhRDtnQkFDYnNCO1lBQ0Y7eUJBRUEsNkJBQUNtQyxrQkFBVztZQUFDQyxNQUFNLENBQUMsRUFBRXBELEtBQUssR0FBRyxDQUFDO1lBQUUyQyxPQUFPOzBCQUV4Qyw2QkFBQ1UsbUJBQVk7WUFDWHRFLFdBQVcsQ0FBQyxFQUFFSCxVQUFVLFFBQVEsQ0FBQztZQUNqQzBFLGFBQWFyRCxNQUFNakIsTUFBTSxDQUFDdUUsR0FBRyxDQUFDLENBQUNqRSxRQUFXLENBQUE7b0JBQ3hDLEdBQUdBLEtBQUs7b0JBQ1JVLE1BQU13RCxJQUFBQSw0QkFBcUIsRUFBQyxNQUFNbEU7Z0JBQ3BDLENBQUE7WUFDQW1FLFlBQVluRSxNQUFNbUUsVUFBVTtZQUM1QkMsU0FBUTtZQUNSQyxhQUFhckUsTUFBTXFFLFdBQVcsRUFBRXZELFFBQVEsQ0FBQ3BCLFFBQVF1QixLQUFLLEVBQUV2QjtZQUN4RDZELFVBQVV2RCxNQUFNd0QsS0FBSyxDQUFDRCxRQUFROzRCQUtwQyw2QkFBQ2UsOEJBQWM7WUFDYk4sYUFBYXJELE1BQU1qQixNQUFNLENBQUN1RSxHQUFHLENBQUMsQ0FBQ2pFLFFBQVcsQ0FBQTtvQkFDeEMsR0FBR0EsS0FBSztvQkFDUlUsTUFBTXdELElBQUFBLDRCQUFxQixFQUFDLE1BQU1sRTtnQkFDcEMsQ0FBQTtZQUNBdUUsVUFBVXJEOztJQUtwQixHQUFHO1FBQUNQO1FBQU9PO1FBQWNsQixNQUFNbUUsVUFBVTtRQUFFbkUsTUFBTXdELEtBQUssQ0FBQ0QsUUFBUTtLQUFDO0lBRWhFLHFCQUFPLDZCQUFDbkI7UUFBSTNDLFdBQVdIO09BQVl5QztBQUNyQyJ9
@@ -0,0 +1,10 @@
1
+ import { type LexicalCommand } from 'lexical';
2
+ import React from 'react';
3
+ import './index.scss';
4
+ export declare const INSERT_BLOCK_WITH_DRAWER_COMMAND: LexicalCommand<{
5
+ replace: {
6
+ nodeKey: string;
7
+ } | false;
8
+ }>;
9
+ export declare const BlocksDrawerComponent: React.FC;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/drawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAA2C,MAAM,OAAO,CAAA;AAQ/D,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,gCAAgC,EAAE,cAAc,CAAC;IAC5D,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAA;CACrC,CAAqD,CAAA;AAmCtD,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAwDzC,CAAA"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ INSERT_BLOCK_WITH_DRAWER_COMMAND: function() {
13
+ return INSERT_BLOCK_WITH_DRAWER_COMMAND;
14
+ },
15
+ BlocksDrawerComponent: function() {
16
+ return BlocksDrawerComponent;
17
+ }
18
+ });
19
+ const _modal = require("@faceless-ui/modal");
20
+ const _LexicalComposerContext = require("@lexical/react/LexicalComposerContext");
21
+ const _lexical = require("lexical");
22
+ const _elements = require("payload/components/elements");
23
+ const _Blocks = require("payload/components/fields/Blocks");
24
+ const _utilities = require("payload/components/utilities");
25
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
26
+ const _reacti18next = require("react-i18next");
27
+ const _EditorConfigProvider = require("../../../lexical/config/EditorConfigProvider");
28
+ const _BlocksNode = require("../nodes/BlocksNode");
29
+ const _plugin = require("../plugin");
30
+ require("./index.scss");
31
+ function _getRequireWildcardCache(nodeInterop) {
32
+ if (typeof WeakMap !== "function") return null;
33
+ var cacheBabelInterop = new WeakMap();
34
+ var cacheNodeInterop = new WeakMap();
35
+ return (_getRequireWildcardCache = function(nodeInterop) {
36
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
37
+ })(nodeInterop);
38
+ }
39
+ function _interop_require_wildcard(obj, nodeInterop) {
40
+ if (!nodeInterop && obj && obj.__esModule) {
41
+ return obj;
42
+ }
43
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
44
+ return {
45
+ default: obj
46
+ };
47
+ }
48
+ var cache = _getRequireWildcardCache(nodeInterop);
49
+ if (cache && cache.has(obj)) {
50
+ return cache.get(obj);
51
+ }
52
+ var newObj = {};
53
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
54
+ for(var key in obj){
55
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
56
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
57
+ if (desc && (desc.get || desc.set)) {
58
+ Object.defineProperty(newObj, key, desc);
59
+ } else {
60
+ newObj[key] = obj[key];
61
+ }
62
+ }
63
+ }
64
+ newObj.default = obj;
65
+ if (cache) {
66
+ cache.set(obj, newObj);
67
+ }
68
+ return newObj;
69
+ }
70
+ const baseClass = 'lexical-blocks-drawer';
71
+ const INSERT_BLOCK_WITH_DRAWER_COMMAND = (0, _lexical.createCommand)('INSERT_BLOCK_WITH_DRAWER_COMMAND');
72
+ const insertBlock = ({ blockType, editor, replaceNodeKey })=>{
73
+ if (!replaceNodeKey) {
74
+ editor.dispatchCommand(_plugin.INSERT_BLOCK_COMMAND, {
75
+ blockName: '',
76
+ collapsed: false,
77
+ data: null,
78
+ type: blockType
79
+ });
80
+ } else {
81
+ editor.update(()=>{
82
+ const node = (0, _lexical.$getNodeByKey)(replaceNodeKey);
83
+ if (node) {
84
+ node.replace((0, _BlocksNode.$createBlockNode)({
85
+ blockName: '',
86
+ collapsed: false,
87
+ data: null,
88
+ type: blockType
89
+ }));
90
+ }
91
+ });
92
+ }
93
+ };
94
+ const BlocksDrawerComponent = ()=>{
95
+ const [editor] = (0, _LexicalComposerContext.useLexicalComposerContext)();
96
+ const { editorConfig, uuid } = (0, _EditorConfigProvider.useEditorConfigContext)();
97
+ const [replaceNodeKey, setReplaceNodeKey] = (0, _react.useState)(null);
98
+ const editDepth = (0, _utilities.useEditDepth)();
99
+ const { t } = (0, _reacti18next.useTranslation)('fields');
100
+ const { closeModal, openModal } = (0, _modal.useModal)();
101
+ const labels = {
102
+ plural: t('blocks') || 'Blocks',
103
+ singular: t('block') || 'Block'
104
+ };
105
+ const addRow = (0, _react.useCallback)(async (rowIndex, blockType)=>{
106
+ insertBlock({
107
+ blockType: blockType,
108
+ editor,
109
+ replaceNodeKey
110
+ });
111
+ }, [
112
+ editor,
113
+ replaceNodeKey
114
+ ]);
115
+ const drawerSlug = (0, _elements.formatDrawerSlug)({
116
+ depth: editDepth,
117
+ slug: `lexical-rich-text-blocks-` + uuid
118
+ });
119
+ const blocks = (editorConfig?.resolvedFeatureMap?.get('blocks')?.props)?.blocks;
120
+ (0, _react.useEffect)(()=>{
121
+ return editor.registerCommand(INSERT_BLOCK_WITH_DRAWER_COMMAND, (payload)=>{
122
+ setReplaceNodeKey(payload?.replace ? payload?.replace.nodeKey : null);
123
+ openModal(drawerSlug);
124
+ return true;
125
+ }, _lexical.COMMAND_PRIORITY_EDITOR);
126
+ }, [
127
+ editor,
128
+ drawerSlug,
129
+ openModal
130
+ ]);
131
+ return /*#__PURE__*/ _react.default.createElement(_Blocks.BlocksDrawer, {
132
+ addRow: addRow,
133
+ addRowIndex: 0,
134
+ blocks: blocks,
135
+ drawerSlug: drawerSlug,
136
+ labels: labels
137
+ });
138
+ };
139
+
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvZHJhd2VyL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNb2RhbCB9IGZyb20gJ0BmYWNlbGVzcy11aS9tb2RhbCdcbmltcG9ydCB7IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQgfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsQ29tcG9zZXJDb250ZXh0J1xuaW1wb3J0IHtcbiAgJGdldE5vZGVCeUtleSxcbiAgQ09NTUFORF9QUklPUklUWV9FRElUT1IsXG4gIHR5cGUgTGV4aWNhbENvbW1hbmQsXG4gIHR5cGUgTGV4aWNhbEVkaXRvcixcbiAgY3JlYXRlQ29tbWFuZCxcbn0gZnJvbSAnbGV4aWNhbCdcbmltcG9ydCB7IGZvcm1hdERyYXdlclNsdWcgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMvZWxlbWVudHMnXG5pbXBvcnQgeyBCbG9ja3NEcmF3ZXIgfSBmcm9tICdwYXlsb2FkL2NvbXBvbmVudHMvZmllbGRzL0Jsb2NrcydcbmltcG9ydCB7IHVzZUVkaXREZXB0aCB9IGZyb20gJ3BheWxvYWQvY29tcG9uZW50cy91dGlsaXRpZXMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcblxuaW1wb3J0IHR5cGUgeyBCbG9ja3NGZWF0dXJlUHJvcHMgfSBmcm9tICcuLidcblxuaW1wb3J0IHsgdXNlRWRpdG9yQ29uZmlnQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2xleGljYWwvY29uZmlnL0VkaXRvckNvbmZpZ1Byb3ZpZGVyJ1xuaW1wb3J0IHsgJGNyZWF0ZUJsb2NrTm9kZSB9IGZyb20gJy4uL25vZGVzL0Jsb2Nrc05vZGUnXG5pbXBvcnQgeyBJTlNFUlRfQkxPQ0tfQ09NTUFORCB9IGZyb20gJy4uL3BsdWdpbidcbmltcG9ydCAnLi9pbmRleC5zY3NzJ1xuY29uc3QgYmFzZUNsYXNzID0gJ2xleGljYWwtYmxvY2tzLWRyYXdlcidcblxuZXhwb3J0IGNvbnN0IElOU0VSVF9CTE9DS19XSVRIX0RSQVdFUl9DT01NQU5EOiBMZXhpY2FsQ29tbWFuZDx7XG4gIHJlcGxhY2U6IHsgbm9kZUtleTogc3RyaW5nIH0gfCBmYWxzZVxufT4gPSBjcmVhdGVDb21tYW5kKCdJTlNFUlRfQkxPQ0tfV0lUSF9EUkFXRVJfQ09NTUFORCcpXG5cbmNvbnN0IGluc2VydEJsb2NrID0gKHtcbiAgYmxvY2tUeXBlLFxuICBlZGl0b3IsXG4gIHJlcGxhY2VOb2RlS2V5LFxufToge1xuICBibG9ja1R5cGU6IHN0cmluZ1xuICBlZGl0b3I6IExleGljYWxFZGl0b3JcbiAgcmVwbGFjZU5vZGVLZXk6IG51bGwgfCBzdHJpbmdcbn0pID0+IHtcbiAgaWYgKCFyZXBsYWNlTm9kZUtleSkge1xuICAgIGVkaXRvci5kaXNwYXRjaENvbW1hbmQoSU5TRVJUX0JMT0NLX0NPTU1BTkQsIHtcbiAgICAgIGJsb2NrTmFtZTogJycsXG4gICAgICBjb2xsYXBzZWQ6IGZhbHNlLFxuICAgICAgZGF0YTogbnVsbCxcbiAgICAgIHR5cGU6IGJsb2NrVHlwZSxcbiAgICB9KVxuICB9IGVsc2Uge1xuICAgIGVkaXRvci51cGRhdGUoKCkgPT4ge1xuICAgICAgY29uc3Qgbm9kZSA9ICRnZXROb2RlQnlLZXkocmVwbGFjZU5vZGVLZXkpXG4gICAgICBpZiAobm9kZSkge1xuICAgICAgICBub2RlLnJlcGxhY2UoXG4gICAgICAgICAgJGNyZWF0ZUJsb2NrTm9kZSh7XG4gICAgICAgICAgICBibG9ja05hbWU6ICcnLFxuICAgICAgICAgICAgY29sbGFwc2VkOiBmYWxzZSxcbiAgICAgICAgICAgIGRhdGE6IG51bGwsXG4gICAgICAgICAgICB0eXBlOiBibG9ja1R5cGUsXG4gICAgICAgICAgfSksXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBCbG9ja3NEcmF3ZXJDb21wb25lbnQ6IFJlYWN0LkZDID0gKCkgPT4ge1xuICBjb25zdCBbZWRpdG9yXSA9IHVzZUxleGljYWxDb21wb3NlckNvbnRleHQoKVxuICBjb25zdCB7IGVkaXRvckNvbmZpZywgdXVpZCB9ID0gdXNlRWRpdG9yQ29uZmlnQ29udGV4dCgpXG5cbiAgY29uc3QgW3JlcGxhY2VOb2RlS2V5LCBzZXRSZXBsYWNlTm9kZUtleV0gPSB1c2VTdGF0ZTxudWxsIHwgc3RyaW5nPihudWxsKVxuICBjb25zdCBlZGl0RGVwdGggPSB1c2VFZGl0RGVwdGgoKVxuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKCdmaWVsZHMnKVxuICBjb25zdCB7IGNsb3NlTW9kYWwsIG9wZW5Nb2RhbCB9ID0gdXNlTW9kYWwoKVxuXG4gIGNvbnN0IGxhYmVscyA9IHtcbiAgICBwbHVyYWw6IHQoJ2Jsb2NrcycpIHx8ICdCbG9ja3MnLFxuICAgIHNpbmd1bGFyOiB0KCdibG9jaycpIHx8ICdCbG9jaycsXG4gIH1cblxuICBjb25zdCBhZGRSb3cgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocm93SW5kZXg6IG51bWJlciwgYmxvY2tUeXBlOiBzdHJpbmcpID0+IHtcbiAgICAgIGluc2VydEJsb2NrKHtcbiAgICAgICAgYmxvY2tUeXBlOiBibG9ja1R5cGUsXG4gICAgICAgIGVkaXRvcixcbiAgICAgICAgcmVwbGFjZU5vZGVLZXksXG4gICAgICB9KVxuICAgIH0sXG4gICAgW2VkaXRvciwgcmVwbGFjZU5vZGVLZXldLFxuICApXG5cbiAgY29uc3QgZHJhd2VyU2x1ZyA9IGZvcm1hdERyYXdlclNsdWcoe1xuICAgIGRlcHRoOiBlZGl0RGVwdGgsXG4gICAgc2x1ZzogYGxleGljYWwtcmljaC10ZXh0LWJsb2Nrcy1gICsgdXVpZCxcbiAgfSlcblxuICBjb25zdCBibG9ja3MgPSAoZWRpdG9yQ29uZmlnPy5yZXNvbHZlZEZlYXR1cmVNYXA/LmdldCgnYmxvY2tzJyk/LnByb3BzIGFzIEJsb2Nrc0ZlYXR1cmVQcm9wcylcbiAgICA/LmJsb2Nrc1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuIGVkaXRvci5yZWdpc3RlckNvbW1hbmQ8e1xuICAgICAgcmVwbGFjZTogeyBub2RlS2V5OiBzdHJpbmcgfSB8IGZhbHNlXG4gICAgfT4oXG4gICAgICBJTlNFUlRfQkxPQ0tfV0lUSF9EUkFXRVJfQ09NTUFORCxcbiAgICAgIChwYXlsb2FkKSA9PiB7XG4gICAgICAgIHNldFJlcGxhY2VOb2RlS2V5KHBheWxvYWQ/LnJlcGxhY2UgPyBwYXlsb2FkPy5yZXBsYWNlLm5vZGVLZXkgOiBudWxsKVxuICAgICAgICBvcGVuTW9kYWwoZHJhd2VyU2x1ZylcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0sXG4gICAgICBDT01NQU5EX1BSSU9SSVRZX0VESVRPUixcbiAgICApXG4gIH0sIFtlZGl0b3IsIGRyYXdlclNsdWcsIG9wZW5Nb2RhbF0pXG5cbiAgcmV0dXJuIChcbiAgICA8QmxvY2tzRHJhd2VyXG4gICAgICBhZGRSb3c9e2FkZFJvd31cbiAgICAgIGFkZFJvd0luZGV4PXswfVxuICAgICAgYmxvY2tzPXtibG9ja3N9XG4gICAgICBkcmF3ZXJTbHVnPXtkcmF3ZXJTbHVnfVxuICAgICAgbGFiZWxzPXtsYWJlbHN9XG4gICAgLz5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIklOU0VSVF9CTE9DS19XSVRIX0RSQVdFUl9DT01NQU5EIiwiQmxvY2tzRHJhd2VyQ29tcG9uZW50IiwiYmFzZUNsYXNzIiwiY3JlYXRlQ29tbWFuZCIsImluc2VydEJsb2NrIiwiYmxvY2tUeXBlIiwiZWRpdG9yIiwicmVwbGFjZU5vZGVLZXkiLCJkaXNwYXRjaENvbW1hbmQiLCJJTlNFUlRfQkxPQ0tfQ09NTUFORCIsImJsb2NrTmFtZSIsImNvbGxhcHNlZCIsImRhdGEiLCJ0eXBlIiwidXBkYXRlIiwibm9kZSIsIiRnZXROb2RlQnlLZXkiLCJyZXBsYWNlIiwiJGNyZWF0ZUJsb2NrTm9kZSIsInVzZUxleGljYWxDb21wb3NlckNvbnRleHQiLCJlZGl0b3JDb25maWciLCJ1dWlkIiwidXNlRWRpdG9yQ29uZmlnQ29udGV4dCIsInNldFJlcGxhY2VOb2RlS2V5IiwidXNlU3RhdGUiLCJlZGl0RGVwdGgiLCJ1c2VFZGl0RGVwdGgiLCJ0IiwidXNlVHJhbnNsYXRpb24iLCJjbG9zZU1vZGFsIiwib3Blbk1vZGFsIiwidXNlTW9kYWwiLCJsYWJlbHMiLCJwbHVyYWwiLCJzaW5ndWxhciIsImFkZFJvdyIsInVzZUNhbGxiYWNrIiwicm93SW5kZXgiLCJkcmF3ZXJTbHVnIiwiZm9ybWF0RHJhd2VyU2x1ZyIsImRlcHRoIiwic2x1ZyIsImJsb2NrcyIsInJlc29sdmVkRmVhdHVyZU1hcCIsImdldCIsInByb3BzIiwidXNlRWZmZWN0IiwicmVnaXN0ZXJDb21tYW5kIiwicGF5bG9hZCIsIm5vZGVLZXkiLCJDT01NQU5EX1BSSU9SSVRZX0VESVRPUiIsIkJsb2Nrc0RyYXdlciIsImFkZFJvd0luZGV4Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQXVCYUEsZ0NBQWdDO2VBQWhDQTs7SUFxQ0FDLHFCQUFxQjtlQUFyQkE7Ozt1QkE1RFk7d0NBQ2lCO3lCQU9uQzswQkFDMEI7d0JBQ0o7MkJBQ0E7K0RBQzJCOzhCQUN6QjtzQ0FJUTs0QkFDTjt3QkFDSTtRQUM5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNQLE1BQU1DLFlBQVk7QUFFWCxNQUFNRixtQ0FFUkcsSUFBQUEsc0JBQWEsRUFBQztBQUVuQixNQUFNQyxjQUFjLENBQUMsRUFDbkJDLFNBQVMsRUFDVEMsTUFBTSxFQUNOQyxjQUFjLEVBS2Y7SUFDQyxJQUFJLENBQUNBLGdCQUFnQjtRQUNuQkQsT0FBT0UsZUFBZSxDQUFDQyw0QkFBb0IsRUFBRTtZQUMzQ0MsV0FBVztZQUNYQyxXQUFXO1lBQ1hDLE1BQU07WUFDTkMsTUFBTVI7UUFDUjtJQUNGLE9BQU87UUFDTEMsT0FBT1EsTUFBTSxDQUFDO1lBQ1osTUFBTUMsT0FBT0MsSUFBQUEsc0JBQWEsRUFBQ1Q7WUFDM0IsSUFBSVEsTUFBTTtnQkFDUkEsS0FBS0UsT0FBTyxDQUNWQyxJQUFBQSw0QkFBZ0IsRUFBQztvQkFDZlIsV0FBVztvQkFDWEMsV0FBVztvQkFDWEMsTUFBTTtvQkFDTkMsTUFBTVI7Z0JBQ1I7WUFFSjtRQUNGO0lBQ0Y7QUFDRjtBQUVPLE1BQU1KLHdCQUFrQztJQUM3QyxNQUFNLENBQUNLLE9BQU8sR0FBR2EsSUFBQUEsaURBQXlCO0lBQzFDLE1BQU0sRUFBRUMsWUFBWSxFQUFFQyxJQUFJLEVBQUUsR0FBR0MsSUFBQUEsNENBQXNCO0lBRXJELE1BQU0sQ0FBQ2YsZ0JBQWdCZ0Isa0JBQWtCLEdBQUdDLElBQUFBLGVBQVEsRUFBZ0I7SUFDcEUsTUFBTUMsWUFBWUMsSUFBQUEsdUJBQVk7SUFDOUIsTUFBTSxFQUFFQyxDQUFDLEVBQUUsR0FBR0MsSUFBQUEsNEJBQWMsRUFBQztJQUM3QixNQUFNLEVBQUVDLFVBQVUsRUFBRUMsU0FBUyxFQUFFLEdBQUdDLElBQUFBLGVBQVE7SUFFMUMsTUFBTUMsU0FBUztRQUNiQyxRQUFRTixFQUFFLGFBQWE7UUFDdkJPLFVBQVVQLEVBQUUsWUFBWTtJQUMxQjtJQUVBLE1BQU1RLFNBQVNDLElBQUFBLGtCQUFXLEVBQ3hCLE9BQU9DLFVBQWtCaEM7UUFDdkJELFlBQVk7WUFDVkMsV0FBV0E7WUFDWEM7WUFDQUM7UUFDRjtJQUNGLEdBQ0E7UUFBQ0Q7UUFBUUM7S0FBZTtJQUcxQixNQUFNK0IsYUFBYUMsSUFBQUEsMEJBQWdCLEVBQUM7UUFDbENDLE9BQU9mO1FBQ1BnQixNQUFNLENBQUMseUJBQXlCLENBQUMsR0FBR3BCO0lBQ3RDO0lBRUEsTUFBTXFCLFNBQVMsQ0FBQ3RCLGNBQWN1QixvQkFBb0JDLElBQUksV0FBV0MsS0FBMkIsR0FDeEZIO0lBRUpJLElBQUFBLGdCQUFTLEVBQUM7UUFDUixPQUFPeEMsT0FBT3lDLGVBQWUsQ0FHM0IvQyxrQ0FDQSxDQUFDZ0Q7WUFDQ3pCLGtCQUFrQnlCLFNBQVMvQixVQUFVK0IsU0FBUy9CLFFBQVFnQyxVQUFVO1lBQ2hFbkIsVUFBVVE7WUFDVixPQUFPO1FBQ1QsR0FDQVksZ0NBQXVCO0lBRTNCLEdBQUc7UUFBQzVDO1FBQVFnQztRQUFZUjtLQUFVO0lBRWxDLHFCQUNFLDZCQUFDcUIsb0JBQVk7UUFDWGhCLFFBQVFBO1FBQ1JpQixhQUFhO1FBQ2JWLFFBQVFBO1FBQ1JKLFlBQVlBO1FBQ1pOLFFBQVFBOztBQUdkIn0=
@@ -0,0 +1,8 @@
1
+ import type { Block } from 'payload/types';
2
+ import type { FeatureProvider } from '../types';
3
+ import './index.scss';
4
+ export type BlocksFeatureProps = {
5
+ blocks: Block[];
6
+ };
7
+ export declare const BlocksFeature: (props?: BlocksFeatureProps) => FeatureProvider;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/field/features/Blocks/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAK1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAK/C,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,aAAa,WAAY,kBAAkB,KAAG,eA4D1D,CAAA"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "BlocksFeature", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return BlocksFeature;
9
+ }
10
+ });
11
+ const _config = require("payload/config");
12
+ const _utilities = require("payload/utilities");
13
+ const _LexicalMenu = require("../../lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu");
14
+ const _Block = require("../../lexical/ui/icons/Block");
15
+ const _drawer = require("./drawer");
16
+ require("./index.scss");
17
+ const _BlocksNode = require("./nodes/BlocksNode");
18
+ const _plugin = require("./plugin");
19
+ const BlocksFeature = (props)=>{
20
+ // Sanitization taken from payload/src/fields/config/sanitize.ts
21
+ if (props?.blocks?.length) {
22
+ props.blocks = props.blocks.map((block)=>({
23
+ ...block,
24
+ fields: block.fields.concat(_config.baseBlockFields)
25
+ }));
26
+ props.blocks = props.blocks.map((block)=>{
27
+ const unsanitizedBlock = {
28
+ ...block
29
+ };
30
+ unsanitizedBlock.labels = !unsanitizedBlock.labels ? (0, _utilities.formatLabels)(unsanitizedBlock.slug) : unsanitizedBlock.labels;
31
+ // TODO
32
+ /*unsanitizedBlock.fields = sanitizeFields({
33
+ config,
34
+ fields: block.fields,
35
+ validRelationships,
36
+ })*/ return unsanitizedBlock;
37
+ });
38
+ }
39
+ return {
40
+ feature: ({ resolvedFeatures, unsanitizedEditorConfig })=>{
41
+ return {
42
+ nodes: [
43
+ {
44
+ node: _BlocksNode.BlockNode,
45
+ type: _BlocksNode.BlockNode.getType()
46
+ }
47
+ ],
48
+ plugins: [
49
+ {
50
+ Component: _plugin.BlocksPlugin,
51
+ position: 'normal'
52
+ }
53
+ ],
54
+ props: props,
55
+ slashMenu: {
56
+ options: [
57
+ {
58
+ options: [
59
+ new _LexicalMenu.SlashMenuOption('Block', {
60
+ Icon: _Block.BlockIcon,
61
+ keywords: [
62
+ 'block',
63
+ 'blocks'
64
+ ],
65
+ onSelect: ({ editor })=>{
66
+ editor.dispatchCommand(_drawer.INSERT_BLOCK_WITH_DRAWER_COMMAND, null);
67
+ }
68
+ })
69
+ ],
70
+ title: 'Basic'
71
+ }
72
+ ]
73
+ }
74
+ };
75
+ },
76
+ key: 'blocks'
77
+ };
78
+ };
79
+
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3MvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmxvY2sgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgeyBiYXNlQmxvY2tGaWVsZHMgfSBmcm9tICdwYXlsb2FkL2NvbmZpZydcbmltcG9ydCB7IGZvcm1hdExhYmVscyB9IGZyb20gJ3BheWxvYWQvdXRpbGl0aWVzJ1xuXG5pbXBvcnQgdHlwZSB7IEZlYXR1cmVQcm92aWRlciB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBTbGFzaE1lbnVPcHRpb24gfSBmcm9tICcuLi8uLi9sZXhpY2FsL3BsdWdpbnMvU2xhc2hNZW51L0xleGljYWxUeXBlYWhlYWRNZW51UGx1Z2luL0xleGljYWxNZW51J1xuaW1wb3J0IHsgQmxvY2tJY29uIH0gZnJvbSAnLi4vLi4vbGV4aWNhbC91aS9pY29ucy9CbG9jaydcbmltcG9ydCB7IElOU0VSVF9CTE9DS19XSVRIX0RSQVdFUl9DT01NQU5EIH0gZnJvbSAnLi9kcmF3ZXInXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcbmltcG9ydCB7IEJsb2NrTm9kZSB9IGZyb20gJy4vbm9kZXMvQmxvY2tzTm9kZSdcbmltcG9ydCB7IEJsb2Nrc1BsdWdpbiB9IGZyb20gJy4vcGx1Z2luJ1xuXG5leHBvcnQgdHlwZSBCbG9ja3NGZWF0dXJlUHJvcHMgPSB7XG4gIGJsb2NrczogQmxvY2tbXVxufVxuXG5leHBvcnQgY29uc3QgQmxvY2tzRmVhdHVyZSA9IChwcm9wcz86IEJsb2Nrc0ZlYXR1cmVQcm9wcyk6IEZlYXR1cmVQcm92aWRlciA9PiB7XG4gIC8vIFNhbml0aXphdGlvbiB0YWtlbiBmcm9tIHBheWxvYWQvc3JjL2ZpZWxkcy9jb25maWcvc2FuaXRpemUudHNcbiAgaWYgKHByb3BzPy5ibG9ja3M/Lmxlbmd0aCkge1xuICAgIHByb3BzLmJsb2NrcyA9IHByb3BzLmJsb2Nrcy5tYXAoKGJsb2NrKSA9PiAoe1xuICAgICAgLi4uYmxvY2ssXG4gICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcy5jb25jYXQoYmFzZUJsb2NrRmllbGRzKSxcbiAgICB9KSlcblxuICAgIHByb3BzLmJsb2NrcyA9IHByb3BzLmJsb2Nrcy5tYXAoKGJsb2NrKSA9PiB7XG4gICAgICBjb25zdCB1bnNhbml0aXplZEJsb2NrID0geyAuLi5ibG9jayB9XG4gICAgICB1bnNhbml0aXplZEJsb2NrLmxhYmVscyA9ICF1bnNhbml0aXplZEJsb2NrLmxhYmVsc1xuICAgICAgICA/IGZvcm1hdExhYmVscyh1bnNhbml0aXplZEJsb2NrLnNsdWcpXG4gICAgICAgIDogdW5zYW5pdGl6ZWRCbG9jay5sYWJlbHNcblxuICAgICAgLy8gVE9ET1xuICAgICAgLyp1bnNhbml0aXplZEJsb2NrLmZpZWxkcyA9IHNhbml0aXplRmllbGRzKHtcbiAgICAgICAgY29uZmlnLFxuICAgICAgICBmaWVsZHM6IGJsb2NrLmZpZWxkcyxcbiAgICAgICAgdmFsaWRSZWxhdGlvbnNoaXBzLFxuICAgICAgfSkqL1xuXG4gICAgICByZXR1cm4gdW5zYW5pdGl6ZWRCbG9ja1xuICAgIH0pXG4gIH1cbiAgcmV0dXJuIHtcbiAgICBmZWF0dXJlOiAoeyByZXNvbHZlZEZlYXR1cmVzLCB1bnNhbml0aXplZEVkaXRvckNvbmZpZyB9KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBub2RlczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5vZGU6IEJsb2NrTm9kZSxcbiAgICAgICAgICAgIHR5cGU6IEJsb2NrTm9kZS5nZXRUeXBlKCksXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIENvbXBvbmVudDogQmxvY2tzUGx1Z2luLFxuICAgICAgICAgICAgcG9zaXRpb246ICdub3JtYWwnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHByb3BzOiBwcm9wcyxcbiAgICAgICAgc2xhc2hNZW51OiB7XG4gICAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBvcHRpb25zOiBbXG4gICAgICAgICAgICAgICAgbmV3IFNsYXNoTWVudU9wdGlvbignQmxvY2snLCB7XG4gICAgICAgICAgICAgICAgICBJY29uOiBCbG9ja0ljb24sXG4gICAgICAgICAgICAgICAgICBrZXl3b3JkczogWydibG9jaycsICdibG9ja3MnXSxcbiAgICAgICAgICAgICAgICAgIG9uU2VsZWN0OiAoeyBlZGl0b3IgfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBlZGl0b3IuZGlzcGF0Y2hDb21tYW5kKElOU0VSVF9CTE9DS19XSVRIX0RSQVdFUl9DT01NQU5ELCBudWxsKVxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdGl0bGU6ICdCYXNpYycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfSxcbiAgICBrZXk6ICdibG9ja3MnLFxuICB9XG59XG4iXSwibmFtZXMiOlsiQmxvY2tzRmVhdHVyZSIsInByb3BzIiwiYmxvY2tzIiwibGVuZ3RoIiwibWFwIiwiYmxvY2siLCJmaWVsZHMiLCJjb25jYXQiLCJiYXNlQmxvY2tGaWVsZHMiLCJ1bnNhbml0aXplZEJsb2NrIiwibGFiZWxzIiwiZm9ybWF0TGFiZWxzIiwic2x1ZyIsImZlYXR1cmUiLCJyZXNvbHZlZEZlYXR1cmVzIiwidW5zYW5pdGl6ZWRFZGl0b3JDb25maWciLCJub2RlcyIsIm5vZGUiLCJCbG9ja05vZGUiLCJ0eXBlIiwiZ2V0VHlwZSIsInBsdWdpbnMiLCJDb21wb25lbnQiLCJCbG9ja3NQbHVnaW4iLCJwb3NpdGlvbiIsInNsYXNoTWVudSIsIm9wdGlvbnMiLCJTbGFzaE1lbnVPcHRpb24iLCJJY29uIiwiQmxvY2tJY29uIiwia2V5d29yZHMiLCJvblNlbGVjdCIsImVkaXRvciIsImRpc3BhdGNoQ29tbWFuZCIsIklOU0VSVF9CTE9DS19XSVRIX0RSQVdFUl9DT01NQU5EIiwidGl0bGUiLCJrZXkiXSwibWFwcGluZ3MiOiI7Ozs7K0JBa0JhQTs7O2VBQUFBOzs7d0JBaEJtQjsyQkFDSDs2QkFJRzt1QkFDTjt3QkFDdUI7UUFDMUM7NEJBQ21CO3dCQUNHO0FBTXRCLE1BQU1BLGdCQUFnQixDQUFDQztJQUM1QixnRUFBZ0U7SUFDaEUsSUFBSUEsT0FBT0MsUUFBUUMsUUFBUTtRQUN6QkYsTUFBTUMsTUFBTSxHQUFHRCxNQUFNQyxNQUFNLENBQUNFLEdBQUcsQ0FBQyxDQUFDQyxRQUFXLENBQUE7Z0JBQzFDLEdBQUdBLEtBQUs7Z0JBQ1JDLFFBQVFELE1BQU1DLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDQyx1QkFBZTtZQUM3QyxDQUFBO1FBRUFQLE1BQU1DLE1BQU0sR0FBR0QsTUFBTUMsTUFBTSxDQUFDRSxHQUFHLENBQUMsQ0FBQ0M7WUFDL0IsTUFBTUksbUJBQW1CO2dCQUFFLEdBQUdKLEtBQUs7WUFBQztZQUNwQ0ksaUJBQWlCQyxNQUFNLEdBQUcsQ0FBQ0QsaUJBQWlCQyxNQUFNLEdBQzlDQyxJQUFBQSx1QkFBWSxFQUFDRixpQkFBaUJHLElBQUksSUFDbENILGlCQUFpQkMsTUFBTTtZQUUzQixPQUFPO1lBQ1A7Ozs7UUFJRSxHQUVGLE9BQU9EO1FBQ1Q7SUFDRjtJQUNBLE9BQU87UUFDTEksU0FBUyxDQUFDLEVBQUVDLGdCQUFnQixFQUFFQyx1QkFBdUIsRUFBRTtZQUNyRCxPQUFPO2dCQUNMQyxPQUFPO29CQUNMO3dCQUNFQyxNQUFNQyxxQkFBUzt3QkFDZkMsTUFBTUQscUJBQVMsQ0FBQ0UsT0FBTztvQkFDekI7aUJBQ0Q7Z0JBQ0RDLFNBQVM7b0JBQ1A7d0JBQ0VDLFdBQVdDLG9CQUFZO3dCQUN2QkMsVUFBVTtvQkFDWjtpQkFDRDtnQkFDRHZCLE9BQU9BO2dCQUNQd0IsV0FBVztvQkFDVEMsU0FBUzt3QkFDUDs0QkFDRUEsU0FBUztnQ0FDUCxJQUFJQyw0QkFBZSxDQUFDLFNBQVM7b0NBQzNCQyxNQUFNQyxnQkFBUztvQ0FDZkMsVUFBVTt3Q0FBQzt3Q0FBUztxQ0FBUztvQ0FDN0JDLFVBQVUsQ0FBQyxFQUFFQyxNQUFNLEVBQUU7d0NBQ25CQSxPQUFPQyxlQUFlLENBQUNDLHdDQUFnQyxFQUFFO29DQUMzRDtnQ0FDRjs2QkFDRDs0QkFDREMsT0FBTzt3QkFDVDtxQkFDRDtnQkFDSDtZQUNGO1FBQ0Y7UUFDQUMsS0FBSztJQUNQO0FBQ0YifQ==
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ import type { SerializedDecoratorBlockNode } from '@lexical/react/LexicalDecoratorBlockNode';
3
+ import type { DOMConversionMap, DOMExportOutput, EditorConfig, ElementFormatType, LexicalEditor, LexicalNode, NodeKey, Spread } from 'lexical';
4
+ import { DecoratorBlockNode } from '@lexical/react/LexicalDecoratorBlockNode';
5
+ export type BlockFields = {
6
+ blockName: string;
7
+ collapsed: boolean;
8
+ /** Block data */
9
+ data: null | unknown;
10
+ /** Block type. This is the slug of the block added to the Blocks Feature */
11
+ type: string;
12
+ };
13
+ export type SerializedBlockNode = Spread<{
14
+ fields: BlockFields;
15
+ }, SerializedDecoratorBlockNode>;
16
+ export declare class BlockNode extends DecoratorBlockNode {
17
+ __fields: BlockFields;
18
+ constructor({ fields, format, key, }: {
19
+ fields: BlockFields;
20
+ format?: ElementFormatType;
21
+ key?: NodeKey;
22
+ });
23
+ static clone(node: BlockNode): BlockNode;
24
+ static getType(): string;
25
+ static importDOM(): DOMConversionMap<HTMLDivElement> | null;
26
+ static importJSON(serializedNode: SerializedBlockNode): BlockNode;
27
+ static isInline(): false;
28
+ decorate(editor: LexicalEditor, config: EditorConfig): JSX.Element;
29
+ exportDOM(): DOMExportOutput;
30
+ exportJSON(): SerializedBlockNode;
31
+ getFields(): BlockFields;
32
+ getId(): string;
33
+ getTextContent(): string;
34
+ setFields(fields: BlockFields): void;
35
+ }
36
+ export declare function $createBlockNode(fields: BlockFields): BlockNode;
37
+ export declare function $isBlockNode(node: BlockNode | LexicalNode | null | undefined): node is BlockNode;
38
+ //# sourceMappingURL=BlocksNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlocksNode.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/nodes/BlocksNode.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0CAA0C,CAAA;AAC5F,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,OAAO,EACP,MAAM,EACP,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAK7E,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB;IACjB,IAAI,EAAE,IAAI,GAAG,OAAO,CAAA;IACpB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,CACtC;IACE,MAAM,EAAE,WAAW,CAAA;CACpB,EACD,4BAA4B,CAC7B,CAAA;AAED,qBAAa,SAAU,SAAQ,kBAAkB;IAC/C,QAAQ,EAAE,WAAW,CAAA;gBAET,EACV,MAAM,EACN,MAAM,EACN,GAAG,GACJ,EAAE;QACD,MAAM,EAAE,WAAW,CAAA;QACnB,MAAM,CAAC,EAAE,iBAAiB,CAAA;QAC1B,GAAG,CAAC,EAAE,OAAO,CAAA;KACd;IAKD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQxC,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,SAAS,IAAI,gBAAgB,CAAC,cAAc,CAAC,GAAG,IAAI;IAI3D,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,mBAAmB,GAAG,SAAS;IAMjE,MAAM,CAAC,QAAQ,IAAI,KAAK;IAGxB,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO;IAWlE,SAAS,IAAI,eAAe;IAQ5B,UAAU,IAAI,mBAAmB;IASjC,SAAS,IAAI,WAAW;IAGxB,KAAK,IAAI,MAAM;IAIf,cAAc,IAAI,MAAM;IAIxB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAIrC;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAI/D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,IAAI,SAAS,CAEhG"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ BlockNode: function() {
13
+ return BlockNode;
14
+ },
15
+ $createBlockNode: function() {
16
+ return $createBlockNode;
17
+ },
18
+ $isBlockNode: function() {
19
+ return $isBlockNode;
20
+ }
21
+ });
22
+ const _LexicalDecoratorBlockNode = require("@lexical/react/LexicalDecoratorBlockNode");
23
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
24
+ const _component = require("../component");
25
+ function _interop_require_default(obj) {
26
+ return obj && obj.__esModule ? obj : {
27
+ default: obj
28
+ };
29
+ }
30
+ class BlockNode extends _LexicalDecoratorBlockNode.DecoratorBlockNode {
31
+ __fields;
32
+ constructor({ fields, format, key }){
33
+ super(format, key);
34
+ this.__fields = fields;
35
+ }
36
+ static clone(node) {
37
+ return new BlockNode({
38
+ fields: node.__fields,
39
+ format: node.__format,
40
+ key: node.__key
41
+ });
42
+ }
43
+ static getType() {
44
+ return 'block';
45
+ }
46
+ static importDOM() {
47
+ return {};
48
+ }
49
+ static importJSON(serializedNode) {
50
+ const node = $createBlockNode(serializedNode.fields);
51
+ node.setFormat(serializedNode.format);
52
+ return node;
53
+ }
54
+ static isInline() {
55
+ return false;
56
+ }
57
+ decorate(editor, config) {
58
+ return /*#__PURE__*/ _react.default.createElement(_component.BlockComponent, {
59
+ className: config.theme.block ?? 'LexicalEditorTheme__block',
60
+ fields: this.__fields,
61
+ format: this.__format,
62
+ nodeKey: this.getKey()
63
+ });
64
+ }
65
+ exportDOM() {
66
+ const element = document.createElement('div');
67
+ const text = document.createTextNode(this.getTextContent());
68
+ element.append(text);
69
+ return {
70
+ element
71
+ };
72
+ }
73
+ exportJSON() {
74
+ return {
75
+ ...super.exportJSON(),
76
+ fields: this.getFields(),
77
+ type: this.getType(),
78
+ version: 1
79
+ };
80
+ }
81
+ getFields() {
82
+ return this.getLatest().__fields;
83
+ }
84
+ getId() {
85
+ return this.__id;
86
+ }
87
+ getTextContent() {
88
+ return `Block Field`;
89
+ }
90
+ setFields(fields) {
91
+ const writable = this.getWritable();
92
+ writable.__fields = fields;
93
+ }
94
+ }
95
+ function $createBlockNode(fields) {
96
+ return new BlockNode({
97
+ fields
98
+ });
99
+ }
100
+ function $isBlockNode(node) {
101
+ return node instanceof BlockNode;
102
+ }
103
+
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9maWVsZC9mZWF0dXJlcy9CbG9ja3Mvbm9kZXMvQmxvY2tzTm9kZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTZXJpYWxpemVkRGVjb3JhdG9yQmxvY2tOb2RlIH0gZnJvbSAnQGxleGljYWwvcmVhY3QvTGV4aWNhbERlY29yYXRvckJsb2NrTm9kZSdcbmltcG9ydCB0eXBlIHtcbiAgRE9NQ29udmVyc2lvbk1hcCxcbiAgRE9NRXhwb3J0T3V0cHV0LFxuICBFZGl0b3JDb25maWcsXG4gIEVsZW1lbnRGb3JtYXRUeXBlLFxuICBMZXhpY2FsRWRpdG9yLFxuICBMZXhpY2FsTm9kZSxcbiAgTm9kZUtleSxcbiAgU3ByZWFkLFxufSBmcm9tICdsZXhpY2FsJ1xuXG5pbXBvcnQgeyBEZWNvcmF0b3JCbG9ja05vZGUgfSBmcm9tICdAbGV4aWNhbC9yZWFjdC9MZXhpY2FsRGVjb3JhdG9yQmxvY2tOb2RlJ1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgeyBCbG9ja0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudCdcblxuZXhwb3J0IHR5cGUgQmxvY2tGaWVsZHMgPSB7XG4gIGJsb2NrTmFtZTogc3RyaW5nXG4gIGNvbGxhcHNlZDogYm9vbGVhblxuICAvKiogQmxvY2sgZGF0YSAqL1xuICBkYXRhOiBudWxsIHwgdW5rbm93blxuICAvKiogQmxvY2sgdHlwZS4gVGhpcyBpcyB0aGUgc2x1ZyBvZiB0aGUgYmxvY2sgYWRkZWQgdG8gdGhlIEJsb2NrcyBGZWF0dXJlICovXG4gIHR5cGU6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkQmxvY2tOb2RlID0gU3ByZWFkPFxuICB7XG4gICAgZmllbGRzOiBCbG9ja0ZpZWxkc1xuICB9LFxuICBTZXJpYWxpemVkRGVjb3JhdG9yQmxvY2tOb2RlXG4+XG5cbmV4cG9ydCBjbGFzcyBCbG9ja05vZGUgZXh0ZW5kcyBEZWNvcmF0b3JCbG9ja05vZGUge1xuICBfX2ZpZWxkczogQmxvY2tGaWVsZHNcblxuICBjb25zdHJ1Y3Rvcih7XG4gICAgZmllbGRzLFxuICAgIGZvcm1hdCxcbiAgICBrZXksXG4gIH06IHtcbiAgICBmaWVsZHM6IEJsb2NrRmllbGRzXG4gICAgZm9ybWF0PzogRWxlbWVudEZvcm1hdFR5cGVcbiAgICBrZXk/OiBOb2RlS2V5XG4gIH0pIHtcbiAgICBzdXBlcihmb3JtYXQsIGtleSlcbiAgICB0aGlzLl9fZmllbGRzID0gZmllbGRzXG4gIH1cblxuICBzdGF0aWMgY2xvbmUobm9kZTogQmxvY2tOb2RlKTogQmxvY2tOb2RlIHtcbiAgICByZXR1cm4gbmV3IEJsb2NrTm9kZSh7XG4gICAgICBmaWVsZHM6IG5vZGUuX19maWVsZHMsXG4gICAgICBmb3JtYXQ6IG5vZGUuX19mb3JtYXQsXG4gICAgICBrZXk6IG5vZGUuX19rZXksXG4gICAgfSlcbiAgfVxuXG4gIHN0YXRpYyBnZXRUeXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdibG9jaydcbiAgfVxuXG4gIHN0YXRpYyBpbXBvcnRET00oKTogRE9NQ29udmVyc2lvbk1hcDxIVE1MRGl2RWxlbWVudD4gfCBudWxsIHtcbiAgICByZXR1cm4ge31cbiAgfVxuXG4gIHN0YXRpYyBpbXBvcnRKU09OKHNlcmlhbGl6ZWROb2RlOiBTZXJpYWxpemVkQmxvY2tOb2RlKTogQmxvY2tOb2RlIHtcbiAgICBjb25zdCBub2RlID0gJGNyZWF0ZUJsb2NrTm9kZShzZXJpYWxpemVkTm9kZS5maWVsZHMpXG4gICAgbm9kZS5zZXRGb3JtYXQoc2VyaWFsaXplZE5vZGUuZm9ybWF0KVxuICAgIHJldHVybiBub2RlXG4gIH1cblxuICBzdGF0aWMgaXNJbmxpbmUoKTogZmFsc2Uge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG4gIGRlY29yYXRlKGVkaXRvcjogTGV4aWNhbEVkaXRvciwgY29uZmlnOiBFZGl0b3JDb25maWcpOiBKU1guRWxlbWVudCB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxCbG9ja0NvbXBvbmVudFxuICAgICAgICBjbGFzc05hbWU9e2NvbmZpZy50aGVtZS5ibG9jayA/PyAnTGV4aWNhbEVkaXRvclRoZW1lX19ibG9jayd9XG4gICAgICAgIGZpZWxkcz17dGhpcy5fX2ZpZWxkc31cbiAgICAgICAgZm9ybWF0PXt0aGlzLl9fZm9ybWF0fVxuICAgICAgICBub2RlS2V5PXt0aGlzLmdldEtleSgpfVxuICAgICAgLz5cbiAgICApXG4gIH1cblxuICBleHBvcnRET00oKTogRE9NRXhwb3J0T3V0cHV0IHtcbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcblxuICAgIGNvbnN0IHRleHQgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0aGlzLmdldFRleHRDb250ZW50KCkpXG4gICAgZWxlbWVudC5hcHBlbmQodGV4dClcbiAgICByZXR1cm4geyBlbGVtZW50IH1cbiAgfVxuXG4gIGV4cG9ydEpTT04oKTogU2VyaWFsaXplZEJsb2NrTm9kZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN1cGVyLmV4cG9ydEpTT04oKSxcbiAgICAgIGZpZWxkczogdGhpcy5nZXRGaWVsZHMoKSxcbiAgICAgIHR5cGU6IHRoaXMuZ2V0VHlwZSgpLFxuICAgICAgdmVyc2lvbjogMSxcbiAgICB9XG4gIH1cblxuICBnZXRGaWVsZHMoKTogQmxvY2tGaWVsZHMge1xuICAgIHJldHVybiB0aGlzLmdldExhdGVzdCgpLl9fZmllbGRzXG4gIH1cbiAgZ2V0SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fX2lkXG4gIH1cblxuICBnZXRUZXh0Q29udGVudCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgQmxvY2sgRmllbGRgXG4gIH1cblxuICBzZXRGaWVsZHMoZmllbGRzOiBCbG9ja0ZpZWxkcyk6IHZvaWQge1xuICAgIGNvbnN0IHdyaXRhYmxlID0gdGhpcy5nZXRXcml0YWJsZSgpXG4gICAgd3JpdGFibGUuX19maWVsZHMgPSBmaWVsZHNcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gJGNyZWF0ZUJsb2NrTm9kZShmaWVsZHM6IEJsb2NrRmllbGRzKTogQmxvY2tOb2RlIHtcbiAgcmV0dXJuIG5ldyBCbG9ja05vZGUoe1xuICAgIGZpZWxkcyxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uICRpc0Jsb2NrTm9kZShub2RlOiBCbG9ja05vZGUgfCBMZXhpY2FsTm9kZSB8IG51bGwgfCB1bmRlZmluZWQpOiBub2RlIGlzIEJsb2NrTm9kZSB7XG4gIHJldHVybiBub2RlIGluc3RhbmNlb2YgQmxvY2tOb2RlXG59XG4iXSwibmFtZXMiOlsiQmxvY2tOb2RlIiwiJGNyZWF0ZUJsb2NrTm9kZSIsIiRpc0Jsb2NrTm9kZSIsIkRlY29yYXRvckJsb2NrTm9kZSIsIl9fZmllbGRzIiwiY29uc3RydWN0b3IiLCJmaWVsZHMiLCJmb3JtYXQiLCJrZXkiLCJjbG9uZSIsIm5vZGUiLCJfX2Zvcm1hdCIsIl9fa2V5IiwiZ2V0VHlwZSIsImltcG9ydERPTSIsImltcG9ydEpTT04iLCJzZXJpYWxpemVkTm9kZSIsInNldEZvcm1hdCIsImlzSW5saW5lIiwiZGVjb3JhdGUiLCJlZGl0b3IiLCJjb25maWciLCJCbG9ja0NvbXBvbmVudCIsImNsYXNzTmFtZSIsInRoZW1lIiwiYmxvY2siLCJub2RlS2V5IiwiZ2V0S2V5IiwiZXhwb3J0RE9NIiwiZWxlbWVudCIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsInRleHQiLCJjcmVhdGVUZXh0Tm9kZSIsImdldFRleHRDb250ZW50IiwiYXBwZW5kIiwiZXhwb3J0SlNPTiIsImdldEZpZWxkcyIsInR5cGUiLCJ2ZXJzaW9uIiwiZ2V0TGF0ZXN0IiwiZ2V0SWQiLCJfX2lkIiwic2V0RmllbGRzIiwid3JpdGFibGUiLCJnZXRXcml0YWJsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFpQ2FBLFNBQVM7ZUFBVEE7O0lBc0ZHQyxnQkFBZ0I7ZUFBaEJBOztJQU1BQyxZQUFZO2VBQVpBOzs7MkNBakhtQjs4REFDakI7MkJBRWE7Ozs7OztBQWtCeEIsTUFBTUYsa0JBQWtCRyw2Q0FBa0I7SUFDL0NDLFNBQXFCO0lBRXJCQyxZQUFZLEVBQ1ZDLE1BQU0sRUFDTkMsTUFBTSxFQUNOQyxHQUFHLEVBS0osQ0FBRTtRQUNELEtBQUssQ0FBQ0QsUUFBUUM7UUFDZCxJQUFJLENBQUNKLFFBQVEsR0FBR0U7SUFDbEI7SUFFQSxPQUFPRyxNQUFNQyxJQUFlLEVBQWE7UUFDdkMsT0FBTyxJQUFJVixVQUFVO1lBQ25CTSxRQUFRSSxLQUFLTixRQUFRO1lBQ3JCRyxRQUFRRyxLQUFLQyxRQUFRO1lBQ3JCSCxLQUFLRSxLQUFLRSxLQUFLO1FBQ2pCO0lBQ0Y7SUFFQSxPQUFPQyxVQUFrQjtRQUN2QixPQUFPO0lBQ1Q7SUFFQSxPQUFPQyxZQUFxRDtRQUMxRCxPQUFPLENBQUM7SUFDVjtJQUVBLE9BQU9DLFdBQVdDLGNBQW1DLEVBQWE7UUFDaEUsTUFBTU4sT0FBT1QsaUJBQWlCZSxlQUFlVixNQUFNO1FBQ25ESSxLQUFLTyxTQUFTLENBQUNELGVBQWVULE1BQU07UUFDcEMsT0FBT0c7SUFDVDtJQUVBLE9BQU9RLFdBQWtCO1FBQ3ZCLE9BQU87SUFDVDtJQUNBQyxTQUFTQyxNQUFxQixFQUFFQyxNQUFvQixFQUFlO1FBQ2pFLHFCQUNFLDZCQUFDQyx5QkFBYztZQUNiQyxXQUFXRixPQUFPRyxLQUFLLENBQUNDLEtBQUssSUFBSTtZQUNqQ25CLFFBQVEsSUFBSSxDQUFDRixRQUFRO1lBQ3JCRyxRQUFRLElBQUksQ0FBQ0ksUUFBUTtZQUNyQmUsU0FBUyxJQUFJLENBQUNDLE1BQU07O0lBRzFCO0lBRUFDLFlBQTZCO1FBQzNCLE1BQU1DLFVBQVVDLFNBQVNDLGFBQWEsQ0FBQztRQUV2QyxNQUFNQyxPQUFPRixTQUFTRyxjQUFjLENBQUMsSUFBSSxDQUFDQyxjQUFjO1FBQ3hETCxRQUFRTSxNQUFNLENBQUNIO1FBQ2YsT0FBTztZQUFFSDtRQUFRO0lBQ25CO0lBRUFPLGFBQWtDO1FBQ2hDLE9BQU87WUFDTCxHQUFHLEtBQUssQ0FBQ0EsWUFBWTtZQUNyQjlCLFFBQVEsSUFBSSxDQUFDK0IsU0FBUztZQUN0QkMsTUFBTSxJQUFJLENBQUN6QixPQUFPO1lBQ2xCMEIsU0FBUztRQUNYO0lBQ0Y7SUFFQUYsWUFBeUI7UUFDdkIsT0FBTyxJQUFJLENBQUNHLFNBQVMsR0FBR3BDLFFBQVE7SUFDbEM7SUFDQXFDLFFBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNDLElBQUk7SUFDbEI7SUFFQVIsaUJBQXlCO1FBQ3ZCLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDdEI7SUFFQVMsVUFBVXJDLE1BQW1CLEVBQVE7UUFDbkMsTUFBTXNDLFdBQVcsSUFBSSxDQUFDQyxXQUFXO1FBQ2pDRCxTQUFTeEMsUUFBUSxHQUFHRTtJQUN0QjtBQUNGO0FBRU8sU0FBU0wsaUJBQWlCSyxNQUFtQjtJQUNsRCxPQUFPLElBQUlOLFVBQVU7UUFDbkJNO0lBQ0Y7QUFDRjtBQUVPLFNBQVNKLGFBQWFRLElBQWdEO0lBQzNFLE9BQU9BLGdCQUFnQlY7QUFDekIifQ==
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { type LexicalCommand } from 'lexical';
3
+ import type { BlockFields } from '../nodes/BlocksNode';
4
+ export type InsertBlockPayload = BlockFields;
5
+ export declare const INSERT_BLOCK_COMMAND: LexicalCommand<InsertBlockPayload>;
6
+ export declare function BlocksPlugin(): JSX.Element | null;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/field/features/Blocks/plugin/index.tsx"],"names":[],"mappings":";AAEA,OAAO,EAA2B,KAAK,cAAc,EAAiB,MAAM,SAAS,CAAA;AAGrF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAKtD,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAA;AAE5C,eAAO,MAAM,oBAAoB,EAAE,cAAc,CAAC,kBAAkB,CAC7B,CAAA;AAEvC,wBAAgB,YAAY,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,CA0BjD"}