@payloadcms/richtext-lexical 3.0.0-beta.106 → 3.0.0-beta.108

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 (259) hide show
  1. package/dist/cell/index.js +1 -1
  2. package/dist/cell/index.js.map +1 -1
  3. package/dist/exports/client/Field-ETCEVZLL.js +2 -0
  4. package/dist/exports/client/Field-ETCEVZLL.js.map +7 -0
  5. package/dist/exports/client/RelationshipComponent-F6JI75HS.js +2 -0
  6. package/dist/exports/client/{RelationshipComponent-Z5SZ5FFT.js.map → RelationshipComponent-F6JI75HS.js.map} +2 -2
  7. package/dist/exports/client/bundled.css +1 -1
  8. package/dist/exports/client/chunk-76MVRKRT.js +2 -0
  9. package/dist/exports/client/chunk-76MVRKRT.js.map +7 -0
  10. package/dist/exports/client/{chunk-TXEIKM77.js → chunk-GD6LBQBJ.js} +2 -2
  11. package/dist/exports/client/chunk-GD6LBQBJ.js.map +7 -0
  12. package/dist/exports/client/chunk-HIGLONP6.js +2 -0
  13. package/dist/exports/client/chunk-HIGLONP6.js.map +7 -0
  14. package/dist/exports/client/{chunk-GK7ZKYHL.js → chunk-IIWHHN4J.js} +2 -2
  15. package/dist/exports/client/chunk-IIWHHN4J.js.map +7 -0
  16. package/dist/exports/client/{chunk-PY6JO5OH.js → chunk-JYCJEIVA.js} +2 -2
  17. package/dist/exports/client/{chunk-PY6JO5OH.js.map → chunk-JYCJEIVA.js.map} +2 -2
  18. package/dist/exports/client/{chunk-GTKNWSQW.js → chunk-N2PXHNGO.js} +2 -2
  19. package/dist/exports/client/{chunk-GTKNWSQW.js.map → chunk-N2PXHNGO.js.map} +2 -2
  20. package/dist/exports/client/{chunk-PECDZEZY.js → chunk-YREZUOA6.js} +2 -2
  21. package/dist/exports/client/{chunk-PECDZEZY.js.map → chunk-YREZUOA6.js.map} +2 -2
  22. package/dist/exports/client/component-4IBTSHL5.js +2 -0
  23. package/dist/exports/client/component-4IBTSHL5.js.map +7 -0
  24. package/dist/exports/client/{component-GAX6BHKZ.js → component-GQ5M6NF6.js} +2 -2
  25. package/dist/exports/client/component-P34B4EPY.js +2 -0
  26. package/dist/exports/client/component-P34B4EPY.js.map +7 -0
  27. package/dist/exports/client/componentInline-XX7FVAIV.js +2 -0
  28. package/dist/exports/client/{componentInline-HAGGWKA7.js.map → componentInline-XX7FVAIV.js.map} +2 -2
  29. package/dist/exports/client/index.js +7 -7
  30. package/dist/exports/client/index.js.map +4 -4
  31. package/dist/features/blockquote/markdownTransformer.js.map +1 -1
  32. package/dist/features/blockquote/server/index.d.ts +1 -1
  33. package/dist/features/blockquote/server/index.d.ts.map +1 -1
  34. package/dist/features/blocks/client/component/BlockContent.js +5 -4
  35. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  36. package/dist/features/blocks/client/component/index.d.ts +1 -1
  37. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  38. package/dist/features/blocks/client/component/index.js +15 -5
  39. package/dist/features/blocks/client/component/index.js.map +1 -1
  40. package/dist/features/blocks/client/componentInline/index.d.ts +1 -1
  41. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  42. package/dist/features/blocks/client/componentInline/index.js +4 -4
  43. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  44. package/dist/features/blocks/client/index.d.ts +1 -1
  45. package/dist/features/blocks/client/index.d.ts.map +1 -1
  46. package/dist/features/blocks/client/index.js +21 -11
  47. package/dist/features/blocks/client/index.js.map +1 -1
  48. package/dist/features/blocks/client/nodes/BlocksNode.d.ts +2 -2
  49. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  50. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  51. package/dist/features/blocks/client/plugin/index.d.ts +2 -2
  52. package/dist/features/blocks/client/plugin/index.d.ts.map +1 -1
  53. package/dist/features/blocks/client/plugin/index.js +4 -4
  54. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  55. package/dist/features/blocks/server/index.d.ts.map +1 -1
  56. package/dist/features/blocks/server/index.js +4 -2
  57. package/dist/features/blocks/server/index.js.map +1 -1
  58. package/dist/features/blocks/server/nodes/BlocksNode.d.ts +10 -4
  59. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  60. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  61. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts +2 -2
  62. package/dist/features/blocks/server/nodes/InlineBlocksNode.d.ts.map +1 -1
  63. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  64. package/dist/features/blocks/server/validate.js.map +1 -1
  65. package/dist/features/converters/html/converter/index.js +2 -2
  66. package/dist/features/converters/html/converter/index.js.map +1 -1
  67. package/dist/features/converters/html/field/index.js.map +1 -1
  68. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  69. package/dist/features/experimental_table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  70. package/dist/features/experimental_table/server/index.js +2 -2
  71. package/dist/features/experimental_table/server/index.js.map +1 -1
  72. package/dist/features/horizontalRule/client/component/index.d.ts +1 -1
  73. package/dist/features/horizontalRule/client/component/index.d.ts.map +1 -1
  74. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts +2 -2
  75. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.d.ts.map +1 -1
  76. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  77. package/dist/features/indent/client/index.d.ts.map +1 -1
  78. package/dist/features/indent/client/index.js +2 -1
  79. package/dist/features/indent/client/index.js.map +1 -1
  80. package/dist/features/link/client/index.js +1 -1
  81. package/dist/features/link/client/index.js.map +1 -1
  82. package/dist/features/link/client/plugins/autoLink/index.d.ts +1 -1
  83. package/dist/features/link/client/plugins/autoLink/index.d.ts.map +1 -1
  84. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  85. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  86. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +3 -7
  87. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  88. package/dist/features/link/nodes/AutoLinkNode.js +2 -2
  89. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  90. package/dist/features/link/nodes/LinkNode.js +11 -6
  91. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  92. package/dist/features/link/nodes/types.d.ts +3 -3
  93. package/dist/features/link/nodes/types.d.ts.map +1 -1
  94. package/dist/features/link/nodes/types.js.map +1 -1
  95. package/dist/features/link/server/baseFields.d.ts +1 -1
  96. package/dist/features/link/server/baseFields.d.ts.map +1 -1
  97. package/dist/features/link/server/baseFields.js +3 -1
  98. package/dist/features/link/server/baseFields.js.map +1 -1
  99. package/dist/features/link/server/index.d.ts.map +1 -1
  100. package/dist/features/link/server/index.js +2 -2
  101. package/dist/features/link/server/index.js.map +1 -1
  102. package/dist/features/link/server/transformExtraFields.d.ts +1 -1
  103. package/dist/features/link/server/transformExtraFields.d.ts.map +1 -1
  104. package/dist/features/link/server/transformExtraFields.js.map +1 -1
  105. package/dist/features/link/server/validate.js.map +1 -1
  106. package/dist/features/lists/shared/markdown.js.map +1 -1
  107. package/dist/features/migrations/lexicalPluginToLexical/converter/index.d.ts.map +1 -1
  108. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js +1 -0
  109. package/dist/features/migrations/lexicalPluginToLexical/converter/index.js.map +1 -1
  110. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts +1 -1
  111. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -1
  112. package/dist/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  113. package/dist/features/migrations/slateToLexical/converter/converters/blockquote/converter.js.map +1 -1
  114. package/dist/features/migrations/slateToLexical/converter/converters/heading/converter.js.map +1 -1
  115. package/dist/features/migrations/slateToLexical/converter/converters/link/converter.js.map +1 -1
  116. package/dist/features/migrations/slateToLexical/converter/converters/listItem/converter.js.map +1 -1
  117. package/dist/features/migrations/slateToLexical/converter/converters/orderedList/converter.js.map +1 -1
  118. package/dist/features/migrations/slateToLexical/converter/converters/unknown/converter.js.map +1 -1
  119. package/dist/features/migrations/slateToLexical/converter/converters/unorderedList/converter.js.map +1 -1
  120. package/dist/features/migrations/slateToLexical/converter/index.d.ts.map +1 -1
  121. package/dist/features/migrations/slateToLexical/converter/index.js +1 -0
  122. package/dist/features/migrations/slateToLexical/converter/index.js.map +1 -1
  123. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.d.ts +1 -1
  124. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.d.ts.map +1 -1
  125. package/dist/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.js.map +1 -1
  126. package/dist/features/paragraph/server/index.d.ts +1 -1
  127. package/dist/features/paragraph/server/index.d.ts.map +1 -1
  128. package/dist/features/relationship/client/components/RelationshipComponent.d.ts.map +1 -1
  129. package/dist/features/relationship/client/components/RelationshipComponent.js +8 -6
  130. package/dist/features/relationship/client/components/RelationshipComponent.js.map +1 -1
  131. package/dist/features/relationship/client/drawer/index.js +3 -3
  132. package/dist/features/relationship/client/drawer/index.js.map +1 -1
  133. package/dist/features/relationship/client/plugins/index.js +1 -1
  134. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  135. package/dist/features/relationship/client/utils/EnabledRelationshipsCondition.js +1 -1
  136. package/dist/features/relationship/client/utils/EnabledRelationshipsCondition.js.map +1 -1
  137. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts +1 -1
  138. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  139. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  140. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
  141. package/dist/features/toolbars/fixed/client/Toolbar/index.js +40 -41
  142. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  143. package/dist/features/toolbars/inline/client/Toolbar/index.d.ts.map +1 -1
  144. package/dist/features/toolbars/inline/client/Toolbar/index.js +33 -34
  145. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  146. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  147. package/dist/features/toolbars/shared/ToolbarButton/index.js +4 -1
  148. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  149. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +1 -1
  150. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  151. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts +3 -4
  152. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  153. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +82 -64
  154. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  155. package/dist/features/toolbars/types.d.ts +21 -11
  156. package/dist/features/toolbars/types.d.ts.map +1 -1
  157. package/dist/features/toolbars/types.js.map +1 -1
  158. package/dist/features/typesServer.d.ts.map +1 -1
  159. package/dist/features/typesServer.js.map +1 -1
  160. package/dist/features/upload/client/component/index.js +1 -1
  161. package/dist/features/upload/client/component/index.js.map +1 -1
  162. package/dist/features/upload/client/drawer/index.d.ts.map +1 -1
  163. package/dist/features/upload/client/drawer/index.js +2 -0
  164. package/dist/features/upload/client/drawer/index.js.map +1 -1
  165. package/dist/features/upload/client/plugin/index.js +1 -1
  166. package/dist/features/upload/client/plugin/index.js.map +1 -1
  167. package/dist/features/upload/server/feature.server.js +3 -4
  168. package/dist/features/upload/server/feature.server.js.map +1 -1
  169. package/dist/features/upload/server/validate.js.map +1 -1
  170. package/dist/field/Field.d.ts.map +1 -1
  171. package/dist/field/Field.js +11 -11
  172. package/dist/field/Field.js.map +1 -1
  173. package/dist/field/bundled.css +1 -1
  174. package/dist/field/index.js +1 -1
  175. package/dist/field/index.js.map +1 -1
  176. package/dist/index.d.ts.map +1 -1
  177. package/dist/index.js +69 -63
  178. package/dist/index.js.map +1 -1
  179. package/dist/lexical/EditorPlugin.d.ts.map +1 -1
  180. package/dist/lexical/EditorPlugin.js +2 -1
  181. package/dist/lexical/EditorPlugin.js.map +1 -1
  182. package/dist/lexical/LexicalEditor.d.ts +1 -1
  183. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  184. package/dist/lexical/LexicalEditor.js +5 -5
  185. package/dist/lexical/LexicalEditor.js.map +1 -1
  186. package/dist/lexical/config/client/EditorConfigProvider.d.ts +1 -1
  187. package/dist/lexical/config/client/EditorConfigProvider.d.ts.map +1 -1
  188. package/dist/lexical/config/client/EditorConfigProvider.js +8 -7
  189. package/dist/lexical/config/client/EditorConfigProvider.js.map +1 -1
  190. package/dist/lexical/config/client/sanitize.js +2 -2
  191. package/dist/lexical/config/client/sanitize.js.map +1 -1
  192. package/dist/lexical/config/server/loader.js.map +1 -1
  193. package/dist/lexical/config/server/sanitize.d.ts.map +1 -1
  194. package/dist/lexical/config/server/sanitize.js +11 -11
  195. package/dist/lexical/config/server/sanitize.js.map +1 -1
  196. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js +2 -2
  197. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/index.js.map +1 -1
  198. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts +1 -1
  199. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.d.ts.map +1 -1
  200. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/types.js.map +1 -1
  201. package/dist/lexical/plugins/SlashMenu/index.d.ts.map +1 -1
  202. package/dist/lexical/plugins/SlashMenu/index.js +9 -6
  203. package/dist/lexical/plugins/SlashMenu/index.js.map +1 -1
  204. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.d.ts.map +1 -1
  205. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +5 -5
  206. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  207. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts +1 -1
  208. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.d.ts.map +1 -1
  209. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js +1 -1
  210. package/dist/lexical/plugins/handles/DraggableBlockPlugin/debounce.js.map +1 -1
  211. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js +1 -1
  212. package/dist/lexical/plugins/handles/DraggableBlockPlugin/getBoundingRectWithoutTransform.js.map +1 -1
  213. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
  214. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +9 -4
  215. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  216. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.d.ts.map +1 -1
  217. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js +3 -4
  218. package/dist/lexical/plugins/handles/utils/getNodeCloseToPoint.js.map +1 -1
  219. package/dist/lexical/utils/rect.d.ts +4 -4
  220. package/dist/lexical/utils/setFloatingElemPosition.d.ts +1 -1
  221. package/dist/lexical/utils/setFloatingElemPosition.d.ts.map +1 -1
  222. package/dist/lexical/utils/setFloatingElemPosition.js.map +1 -1
  223. package/dist/populateGraphQL/populate.js +1 -1
  224. package/dist/populateGraphQL/populate.js.map +1 -1
  225. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts +1 -1
  226. package/dist/populateGraphQL/populateLexicalPopulationPromises.d.ts.map +1 -1
  227. package/dist/populateGraphQL/populateLexicalPopulationPromises.js +5 -4
  228. package/dist/populateGraphQL/populateLexicalPopulationPromises.js.map +1 -1
  229. package/dist/populateGraphQL/recursivelyPopulateFieldsForGraphQL.js.map +1 -1
  230. package/dist/utilities/fieldsDrawer/DrawerContent.d.ts.map +1 -1
  231. package/dist/utilities/fieldsDrawer/DrawerContent.js +8 -3
  232. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  233. package/dist/utilities/generateComponentMap.d.ts.map +1 -1
  234. package/dist/utilities/generateComponentMap.js +1 -0
  235. package/dist/utilities/generateComponentMap.js.map +1 -1
  236. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.d.ts +1 -1
  237. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.d.ts.map +1 -1
  238. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js +1 -1
  239. package/dist/utilities/migrateSlateToLexical/migrateDocumentFieldsRecursively.js.map +1 -1
  240. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts +1 -1
  241. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.d.ts.map +1 -1
  242. package/dist/utilities/upgradeLexicalData/upgradeDocumentFieldsRecursively.js.map +1 -1
  243. package/dist/validate/validateNodes.d.ts.map +1 -1
  244. package/dist/validate/validateNodes.js +2 -2
  245. package/dist/validate/validateNodes.js.map +1 -1
  246. package/package.json +13 -13
  247. package/dist/exports/client/Field-EL5TNVZW.js +0 -2
  248. package/dist/exports/client/Field-EL5TNVZW.js.map +0 -7
  249. package/dist/exports/client/RelationshipComponent-Z5SZ5FFT.js +0 -2
  250. package/dist/exports/client/chunk-366OGJYE.js +0 -2
  251. package/dist/exports/client/chunk-366OGJYE.js.map +0 -7
  252. package/dist/exports/client/chunk-GK7ZKYHL.js.map +0 -7
  253. package/dist/exports/client/chunk-TXEIKM77.js.map +0 -7
  254. package/dist/exports/client/component-OVIYSCND.js +0 -2
  255. package/dist/exports/client/component-OVIYSCND.js.map +0 -7
  256. package/dist/exports/client/component-UJILB3MH.js +0 -2
  257. package/dist/exports/client/component-UJILB3MH.js.map +0 -7
  258. package/dist/exports/client/componentInline-HAGGWKA7.js +0 -2
  259. /package/dist/exports/client/{component-GAX6BHKZ.js.map → component-GQ5M6NF6.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"baseFields.js","names":["validateUrl","validateUrlMinimal","getBaseFields","config","enabledCollections","disabledCollections","maxDepth","enabledRelations","collections","filter","slug","includes","map","admin","enableRichTextLink","hidden","baseFields","name","type","label","t","required","description","defaultValue","options","value","hooks","beforeChange","encodeURIComponent","validate","length","push","condition","linkType","filterOptions","relationTo","user","find"],"sources":["../../../../src/features/link/server/baseFields.ts"],"sourcesContent":["import type {\n CollectionSlug,\n FieldAffectingData,\n RadioField,\n SanitizedConfig,\n TextField,\n User,\n} from 'payload'\n\nimport { validateUrl, validateUrlMinimal } from '../../../lexical/utils/url.js'\n\nexport const getBaseFields = (\n config: SanitizedConfig,\n enabledCollections: CollectionSlug[],\n disabledCollections: CollectionSlug[],\n maxDepth?: number,\n): FieldAffectingData[] => {\n let enabledRelations: CollectionSlug[]\n\n /**\n * Figure out which relations should be enabled (enabledRelations) based on a collection's admin.enableRichTextLink property,\n * or the Link Feature's enabledCollections and disabledCollections properties which override it.\n */\n if (enabledCollections) {\n enabledRelations = enabledCollections\n } else if (disabledCollections) {\n enabledRelations = config.collections\n .filter(({ slug }) => !disabledCollections.includes(slug))\n .map(({ slug }) => slug)\n } else {\n enabledRelations = config.collections\n .filter(({ admin: { enableRichTextLink, hidden } }) => {\n if (typeof hidden !== 'function' && hidden) {\n return false\n }\n return enableRichTextLink\n })\n .map(({ slug }) => slug)\n }\n\n const baseFields: FieldAffectingData[] = [\n {\n name: 'text',\n type: 'text',\n label: ({ t }) => t('fields:textToDisplay'),\n required: true,\n },\n {\n name: 'linkType',\n type: 'radio',\n admin: {\n description: ({ t }) => t('fields:chooseBetweenCustomTextOrDocument'),\n },\n defaultValue: 'custom',\n label: ({ t }) => t('fields:linkType'),\n options: [\n {\n label: ({ t }) => t('fields:customURL'),\n value: 'custom',\n },\n ],\n required: true,\n } as RadioField,\n {\n name: 'url',\n type: 'text',\n hooks: {\n beforeChange: [\n ({ value }) => {\n if (!validateUrl(value)) {\n return encodeURIComponent(value)\n }\n return value\n },\n ],\n },\n label: ({ t }) => t('fields:enterURL'),\n required: true,\n validate: (value: string) => {\n if (!validateUrlMinimal(value)) {\n return 'Invalid URL'\n }\n },\n },\n ]\n\n // Only display internal link-specific fields / options / conditions if there are enabled relations\n if (enabledRelations?.length) {\n ;(baseFields[1] as RadioField).options.push({\n label: ({ t }) => t('fields:internalLink'),\n value: 'internal',\n })\n ;(baseFields[2] as TextField).admin = {\n condition: ({ linkType }) => linkType !== 'internal',\n }\n\n baseFields.push({\n name: 'doc',\n admin: {\n condition: ({ linkType }) => {\n return linkType === 'internal'\n },\n },\n // when admin.hidden is a function we need to dynamically call hidden with the user to know if the collection should be shown\n type: 'relationship',\n filterOptions:\n !enabledCollections && !disabledCollections\n ? ({ relationTo, user }) => {\n const hidden = config.collections.find(({ slug }) => slug === relationTo).admin.hidden\n if (typeof hidden === 'function' && hidden({ user } as { user: User })) {\n return false\n }\n }\n : null,\n label: ({ t }) => t('fields:chooseDocumentToLink'),\n maxDepth,\n relationTo: enabledRelations,\n required: true,\n })\n }\n\n baseFields.push({\n name: 'newTab',\n type: 'checkbox',\n label: ({ t }) => t('fields:openInNewTab'),\n })\n\n return baseFields\n}\n"],"mappings":"AASA,SAASA,WAAW,EAAEC,kBAAkB,QAAQ;AAEhD,OAAO,MAAMC,aAAA,GAAgBA,CAC3BC,MAAA,EACAC,kBAAA,EACAC,mBAAA,EACAC,QAAA;EAEA,IAAIC,gBAAA;EAEJ;;;;EAIA,IAAIH,kBAAA,EAAoB;IACtBG,gBAAA,GAAmBH,kBAAA;EACrB,OAAO,IAAIC,mBAAA,EAAqB;IAC9BE,gBAAA,GAAmBJ,MAAA,CAAOK,WAAW,CAClCC,MAAM,CAAC,CAAC;MAAEC;IAAI,CAAE,KAAK,CAACL,mBAAA,CAAoBM,QAAQ,CAACD,IAAA,GACnDE,GAAG,CAAC,CAAC;MAAEF;IAAI,CAAE,KAAKA,IAAA;EACvB,OAAO;IACLH,gBAAA,GAAmBJ,MAAA,CAAOK,WAAW,CAClCC,MAAM,CAAC,CAAC;MAAEI,KAAA,EAAO;QAAEC,kBAAkB;QAAEC;MAAM;IAAE,CAAE;MAChD,IAAI,OAAOA,MAAA,KAAW,cAAcA,MAAA,EAAQ;QAC1C,OAAO;MACT;MACA,OAAOD,kBAAA;IACT,GACCF,GAAG,CAAC,CAAC;MAAEF;IAAI,CAAE,KAAKA,IAAA;EACvB;EAEA,MAAMM,UAAA,GAAmC,CACvC;IACEC,IAAA,EAAM;IACNC,IAAA,EAAM;IACNC,KAAA,EAAOA,CAAC;MAAEC;IAAC,CAAE,KAAKA,CAAA,CAAE;IACpBC,QAAA,EAAU;EACZ,GACA;IACEJ,IAAA,EAAM;IACNC,IAAA,EAAM;IACNL,KAAA,EAAO;MACLS,WAAA,EAAaA,CAAC;QAAEF;MAAC,CAAE,KAAKA,CAAA,CAAE;IAC5B;IACAG,YAAA,EAAc;IACdJ,KAAA,EAAOA,CAAC;MAAEC;IAAC,CAAE,KAAKA,CAAA,CAAE;IACpBI,OAAA,EAAS,CACP;MACEL,KAAA,EAAOA,CAAC;QAAEC;MAAC,CAAE,KAAKA,CAAA,CAAE;MACpBK,KAAA,EAAO;IACT,EACD;IACDJ,QAAA,EAAU;EACZ,GACA;IACEJ,IAAA,EAAM;IACNC,IAAA,EAAM;IACNQ,KAAA,EAAO;MACLC,YAAA,EAAc,CACZ,CAAC;QAAEF;MAAK,CAAE;QACR,IAAI,CAACzB,WAAA,CAAYyB,KAAA,GAAQ;UACvB,OAAOG,kBAAA,CAAmBH,KAAA;QAC5B;QACA,OAAOA,KAAA;MACT;IAEJ;IACAN,KAAA,EAAOA,CAAC;MAAEC;IAAC,CAAE,KAAKA,CAAA,CAAE;IACpBC,QAAA,EAAU;IACVQ,QAAA,EAAWJ,KAAA;MACT,IAAI,CAACxB,kBAAA,CAAmBwB,KAAA,GAAQ;QAC9B,OAAO;MACT;IACF;EACF,EACD;EAED;EACA,IAAIlB,gBAAA,EAAkBuB,MAAA,EAAQ;IAC1Bd,UAAU,CAAC,EAAE,CAAgBQ,OAAO,CAACO,IAAI,CAAC;MAC1CZ,KAAA,EAAOA,CAAC;QAAEC;MAAC,CAAE,KAAKA,CAAA,CAAE;MACpBK,KAAA,EAAO;IACT;IACET,UAAU,CAAC,EAAE,CAAeH,KAAK,GAAG;MACpCmB,SAAA,EAAWA,CAAC;QAAEC;MAAQ,CAAE,KAAKA,QAAA,KAAa;IAC5C;IAEAjB,UAAA,CAAWe,IAAI,CAAC;MACdd,IAAA,EAAM;MACNJ,KAAA,EAAO;QACLmB,SAAA,EAAWA,CAAC;UAAEC;QAAQ,CAAE;UACtB,OAAOA,QAAA,KAAa;QACtB;MACF;MACA;MACAf,IAAA,EAAM;MACNgB,aAAA,EACE,CAAC9B,kBAAA,IAAsB,CAACC,mBAAA,GACpB,CAAC;QAAE8B,UAAU;QAAEC;MAAI,CAAE;QACnB,MAAMrB,MAAA,GAASZ,MAAA,CAAOK,WAAW,CAAC6B,IAAI,CAAC,CAAC;UAAE3B;QAAI,CAAE,KAAKA,IAAA,KAASyB,UAAA,EAAYtB,KAAK,CAACE,MAAM;QACtF,IAAI,OAAOA,MAAA,KAAW,cAAcA,MAAA,CAAO;UAAEqB;QAAK,IAAsB;UACtE,OAAO;QACT;MACF,IACA;MACNjB,KAAA,EAAOA,CAAC;QAAEC;MAAC,CAAE,KAAKA,CAAA,CAAE;MACpBd,QAAA;MACA6B,UAAA,EAAY5B,gBAAA;MACZc,QAAA,EAAU;IACZ;EACF;EAEAL,UAAA,CAAWe,IAAI,CAAC;IACdd,IAAA,EAAM;IACNC,IAAA,EAAM;IACNC,KAAA,EAAOA,CAAC;MAAEC;IAAC,CAAE,KAAKA,CAAA,CAAE;EACtB;EAEA,OAAOJ,UAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"baseFields.js","names":["validateUrl","validateUrlMinimal","getBaseFields","config","enabledCollections","disabledCollections","maxDepth","enabledRelations","collections","filter","slug","includes","map","admin","enableRichTextLink","hidden","baseFields","name","type","label","t","required","description","defaultValue","options","value","hooks","beforeChange","encodeURIComponent","validate","length","push","condition","linkType","filterOptions","relationTo","user","find"],"sources":["../../../../src/features/link/server/baseFields.ts"],"sourcesContent":["import type {\n CollectionSlug,\n FieldAffectingData,\n RadioField,\n SanitizedConfig,\n TextField,\n User,\n} from 'payload'\n\nimport { validateUrl, validateUrlMinimal } from '../../../lexical/utils/url.js'\n\nexport const getBaseFields = (\n config: SanitizedConfig,\n enabledCollections?: CollectionSlug[],\n disabledCollections?: CollectionSlug[],\n maxDepth?: number,\n): FieldAffectingData[] => {\n let enabledRelations: CollectionSlug[]\n\n /**\n * Figure out which relations should be enabled (enabledRelations) based on a collection's admin.enableRichTextLink property,\n * or the Link Feature's enabledCollections and disabledCollections properties which override it.\n */\n if (enabledCollections) {\n enabledRelations = enabledCollections\n } else if (disabledCollections) {\n enabledRelations = config.collections\n .filter(({ slug }) => !disabledCollections.includes(slug))\n .map(({ slug }) => slug)\n } else {\n enabledRelations = config.collections\n .filter(({ admin: { enableRichTextLink, hidden } }) => {\n if (typeof hidden !== 'function' && hidden) {\n return false\n }\n return enableRichTextLink\n })\n .map(({ slug }) => slug)\n }\n\n const baseFields: FieldAffectingData[] = [\n {\n name: 'text',\n type: 'text',\n label: ({ t }) => t('fields:textToDisplay'),\n required: true,\n },\n {\n name: 'linkType',\n type: 'radio',\n admin: {\n description: ({ t }) => t('fields:chooseBetweenCustomTextOrDocument'),\n },\n defaultValue: 'custom',\n label: ({ t }) => t('fields:linkType'),\n options: [\n {\n label: ({ t }) => t('fields:customURL'),\n value: 'custom',\n },\n ],\n required: true,\n } as RadioField,\n {\n name: 'url',\n type: 'text',\n hooks: {\n beforeChange: [\n ({ value }) => {\n if (!validateUrl(value)) {\n return encodeURIComponent(value)\n }\n return value\n },\n ],\n },\n label: ({ t }) => t('fields:enterURL'),\n required: true,\n // @ts-expect-error - TODO: fix this\n validate: (value: string) => {\n if (!validateUrlMinimal(value)) {\n return 'Invalid URL'\n }\n },\n },\n ]\n\n // Only display internal link-specific fields / options / conditions if there are enabled relations\n if (enabledRelations?.length) {\n ;(baseFields[1] as RadioField).options.push({\n label: ({ t }) => t('fields:internalLink'),\n value: 'internal',\n })\n ;(baseFields[2] as TextField).admin = {\n condition: ({ linkType }) => linkType !== 'internal',\n }\n\n baseFields.push({\n name: 'doc',\n admin: {\n condition: ({ linkType }) => {\n return linkType === 'internal'\n },\n },\n // when admin.hidden is a function we need to dynamically call hidden with the user to know if the collection should be shown\n type: 'relationship',\n filterOptions:\n !enabledCollections && !disabledCollections\n ? ({ relationTo, user }) => {\n const hidden = config.collections.find(({ slug }) => slug === relationTo)?.admin\n .hidden\n if (typeof hidden === 'function' && hidden({ user } as { user: User })) {\n return false\n }\n return true\n }\n : null,\n label: ({ t }) => t('fields:chooseDocumentToLink'),\n maxDepth,\n relationTo: enabledRelations,\n required: true,\n })\n }\n\n baseFields.push({\n name: 'newTab',\n type: 'checkbox',\n label: ({ t }) => t('fields:openInNewTab'),\n })\n\n return baseFields\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/link/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAU,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAmBjG,MAAM,MAAM,6BAA6B,GACrC;IACE;;;QAGI;IACJ,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAA;IAGtC,kBAAkB,CAAC,EAAE,KAAK,CAAA;CAC3B,GACD;IAEE,mBAAmB,CAAC,EAAE,KAAK,CAAA;IAE3B;;;QAGI;IACJ,kBAAkB,CAAC,EAAE,cAAc,EAAE,CAAA;CACtC,CAAA;AAEL,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,IAAI,EAAE;QACN,MAAM,EAAE,eAAe,CAAA;QACvB,aAAa,EAAE,kBAAkB,EAAE,CAAA;KACpC,KAAK,CAAC,KAAK,GAAG,kBAAkB,CAAC,EAAE,CAAC,GACrC,KAAK,EAAE,CAAA;IACX;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,6BAA6B,CAAA;AAEjC,eAAO,MAAM,WAAW,6IAgKtB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/link/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAGd,KAAK,EACL,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAA;AAmBhB,MAAM,MAAM,6BAA6B,GACrC;IACE;;;QAGI;IACJ,mBAAmB,CAAC,EAAE,cAAc,EAAE,CAAA;IAGtC,kBAAkB,CAAC,EAAE,KAAK,CAAA;CAC3B,GACD;IAEE,mBAAmB,CAAC,EAAE,KAAK,CAAA;IAE3B;;;QAGI;IACJ,kBAAkB,CAAC,EAAE,cAAc,EAAE,CAAA;CACtC,CAAA;AAEL,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,IAAI,EAAE;QACN,MAAM,EAAE,eAAe,CAAA;QACvB,aAAa,EAAE,kBAAkB,EAAE,CAAA;KACpC,KAAK,CAAC,KAAK,GAAG,kBAAkB,CAAC,EAAE,CAAC,GACrC,KAAK,EAAE,CAAA;IACX;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,6BAA6B,CAAA;AAEjC,eAAO,MAAM,WAAW,6IAgKtB,CAAA"}
@@ -22,7 +22,7 @@ export const LinkFeature = createServerFeature({
22
22
  props = {};
23
23
  }
24
24
  const validRelationships = _config.collections.map(c => c.slug) || [];
25
- const _transformedFields = transformExtraFields(deepCopyObject(props.fields), _config, props.enabledCollections, props.disabledCollections, props.maxDepth);
25
+ const _transformedFields = transformExtraFields(props.fields ? deepCopyObject(props.fields) : null, _config, props.enabledCollections, props.disabledCollections, props.maxDepth);
26
26
  const sanitizedFields = await sanitizeFields({
27
27
  config: _config,
28
28
  fields: _transformedFields,
@@ -83,7 +83,7 @@ export const LinkFeature = createServerFeature({
83
83
  const target = node.fields.newTab ? ' target="_blank"' : '';
84
84
  let href = node.fields.url;
85
85
  if (node.fields.linkType === 'internal') {
86
- href = typeof node.fields.doc?.value === 'string' ? node.fields.doc?.value : node.fields.doc?.value?.id;
86
+ href = typeof node.fields.doc?.value !== 'object' ? String(node.fields.doc?.value) : String(node.fields.doc?.value?.id);
87
87
  }
88
88
  return `<a href="${href}"${target}${rel}>${childrenText}</a>`;
89
89
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["escapeHTML","sanitizeFields","deepCopyObject","createServerFeature","convertLexicalNodesToHTML","createNode","LinkMarkdownTransformer","AutoLinkNode","LinkNode","linkPopulationPromiseHOC","i18n","transformExtraFields","linkValidation","LinkFeature","feature","config","_config","isRoot","parentIsLocalized","props","validRelationships","collections","map","c","slug","_transformedFields","fields","enabledCollections","disabledCollections","maxDepth","sanitizedFields","requireFieldLevelRichTextEditor","sanitizedFieldsWithoutText","filter","field","name","ClientFeature","clientFeatureProps","generateSchemaMap","Array","isArray","length","schemaMap","Map","set","markdownTransformers","nodes","converters","html","converter","currentDepth","depth","draft","node","overrideAccess","parent","req","showHiddenFields","childrenText","lexicalNodes","children","rel","newTab","target","href","url","linkType","doc","value","id","nodeTypes","getType","validations","getSubFields","getSubFieldsData","graphQLPopulationPromises","sanitizedServerFeatureProps","key"],"sources":["../../../../src/features/link/server/index.ts"],"sourcesContent":["import type { CollectionSlug, Config, Field, FieldAffectingData, SanitizedConfig } from 'payload'\n\nimport escapeHTML from 'escape-html'\nimport { sanitizeFields } from 'payload'\nimport { deepCopyObject } from 'payload/shared'\n\nimport type { ClientProps } from '../client/index.js'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\nimport { convertLexicalNodesToHTML } from '../../converters/html/converter/index.js'\nimport { createNode } from '../../typeUtilities.js'\nimport { LinkMarkdownTransformer } from '../markdownTransformer.js'\nimport { AutoLinkNode } from '../nodes/AutoLinkNode.js'\nimport { LinkNode } from '../nodes/LinkNode.js'\nimport { linkPopulationPromiseHOC } from './graphQLPopulationPromise.js'\nimport { i18n } from './i18n.js'\nimport { transformExtraFields } from './transformExtraFields.js'\nimport { linkValidation } from './validate.js'\n\nexport type ExclusiveLinkCollectionsProps =\n | {\n /**\n * The collections that should be disabled for internal linking. Overrides the `enableRichTextLink` property in the collection config.\n * When this property is set, `enabledCollections` will not be available.\n **/\n disabledCollections?: CollectionSlug[]\n\n // Ensures that enabledCollections is not available when disabledCollections is set\n enabledCollections?: never\n }\n | {\n // Ensures that disabledCollections is not available when enabledCollections is set\n disabledCollections?: never\n\n /**\n * The collections that should be enabled for internal linking. Overrides the `enableRichTextLink` property in the collection config\n * When this property is set, `disabledCollections` will not be available.\n **/\n enabledCollections?: CollectionSlug[]\n }\n\nexport type LinkFeatureServerProps = {\n /**\n * A function or array defining additional fields for the link feature. These will be\n * displayed in the link editor drawer.\n */\n fields?:\n | ((args: {\n config: SanitizedConfig\n defaultFields: FieldAffectingData[]\n }) => (Field | FieldAffectingData)[])\n | Field[]\n /**\n * Sets a maximum population depth for the internal doc default field of link, regardless of the remaining depth when the field is reached.\n * This behaves exactly like the maxDepth properties of relationship and upload fields.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n} & ExclusiveLinkCollectionsProps\n\nexport const LinkFeature = createServerFeature<\n LinkFeatureServerProps,\n LinkFeatureServerProps,\n ClientProps\n>({\n feature: async ({ config: _config, isRoot, parentIsLocalized, props }) => {\n if (!props) {\n props = {}\n }\n const validRelationships = _config.collections.map((c) => c.slug) || []\n\n const _transformedFields = transformExtraFields(\n deepCopyObject(props.fields),\n _config,\n props.enabledCollections,\n props.disabledCollections,\n props.maxDepth,\n )\n\n const sanitizedFields = await sanitizeFields({\n config: _config as unknown as Config,\n fields: _transformedFields,\n parentIsLocalized,\n requireFieldLevelRichTextEditor: isRoot,\n validRelationships,\n })\n props.fields = sanitizedFields\n\n // the text field is not included in the node data.\n // Thus, for tasks like validation, we do not want to pass it a text field in the schema which will never have data.\n // Otherwise, it will cause a validation error (field is required).\n const sanitizedFieldsWithoutText = deepCopyObject(sanitizedFields).filter(\n (field) => !('name' in field) || field.name !== 'text',\n )\n\n return {\n ClientFeature: '@payloadcms/richtext-lexical/client#LinkFeatureClient',\n clientFeatureProps: {\n disabledCollections: props.disabledCollections,\n enabledCollections: props.enabledCollections,\n } as ExclusiveLinkCollectionsProps,\n generateSchemaMap: () => {\n if (!sanitizedFields || !Array.isArray(sanitizedFields) || sanitizedFields.length === 0) {\n return null\n }\n\n const schemaMap = new Map<string, Field[]>()\n schemaMap.set('fields', sanitizedFields)\n\n return schemaMap\n },\n i18n,\n markdownTransformers: [LinkMarkdownTransformer],\n nodes: [\n createNode({\n converters: {\n html: {\n converter: async ({\n converters,\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n parent,\n req,\n showHiddenFields,\n }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n currentDepth,\n depth,\n draft,\n lexicalNodes: node.children,\n overrideAccess,\n parent: {\n ...node,\n parent,\n },\n req,\n showHiddenFields,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n let href: string = node.fields.url\n if (node.fields.linkType === 'internal') {\n href =\n typeof node.fields.doc?.value === 'string'\n ? node.fields.doc?.value\n : node.fields.doc?.value?.id\n }\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: [AutoLinkNode.getType()],\n },\n },\n node: AutoLinkNode,\n // Since AutoLinkNodes are just internal links, they need no hooks or graphQL population promises\n validations: [linkValidation(props, sanitizedFieldsWithoutText)],\n }),\n createNode({\n converters: {\n html: {\n converter: async ({\n converters,\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n parent,\n req,\n showHiddenFields,\n }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n currentDepth,\n depth,\n draft,\n lexicalNodes: node.children,\n overrideAccess,\n parent: {\n ...node,\n parent,\n },\n req,\n showHiddenFields,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n const href: string =\n node.fields.linkType === 'custom'\n ? escapeHTML(node.fields.url)\n : (node.fields.doc?.value as string)\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: [LinkNode.getType()],\n },\n },\n getSubFields: () => {\n return sanitizedFieldsWithoutText\n },\n getSubFieldsData: ({ node }) => {\n return node?.fields\n },\n graphQLPopulationPromises: [linkPopulationPromiseHOC(props)],\n node: LinkNode,\n validations: [linkValidation(props, sanitizedFieldsWithoutText)],\n }),\n ],\n sanitizedServerFeatureProps: props,\n }\n },\n key: 'link',\n})\n"],"mappings":"AAEA,OAAOA,UAAA,MAAgB;AACvB,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAI/B,SAASC,mBAAmB,QAAQ;AACpC,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,UAAU,QAAQ;AAC3B,SAASC,uBAAuB,QAAQ;AACxC,SAASC,YAAY,QAAQ;AAC7B,SAASC,QAAQ,QAAQ;AACzB,SAASC,wBAAwB,QAAQ;AACzC,SAASC,IAAI,QAAQ;AACrB,SAASC,oBAAoB,QAAQ;AACrC,SAASC,cAAc,QAAQ;AA4C/B,OAAO,MAAMC,WAAA,GAAcV,mBAAA,CAIzB;EACAW,OAAA,EAAS,MAAAA,CAAO;IAAEC,MAAA,EAAQC,OAAO;IAAEC,MAAM;IAAEC,iBAAiB;IAAEC;EAAK,CAAE;IACnE,IAAI,CAACA,KAAA,EAAO;MACVA,KAAA,GAAQ,CAAC;IACX;IACA,MAAMC,kBAAA,GAAqBJ,OAAA,CAAQK,WAAW,CAACC,GAAG,CAAEC,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAK,EAAE;IAEvE,MAAMC,kBAAA,GAAqBd,oBAAA,CACzBT,cAAA,CAAeiB,KAAA,CAAMO,MAAM,GAC3BV,OAAA,EACAG,KAAA,CAAMQ,kBAAkB,EACxBR,KAAA,CAAMS,mBAAmB,EACzBT,KAAA,CAAMU,QAAQ;IAGhB,MAAMC,eAAA,GAAkB,MAAM7B,cAAA,CAAe;MAC3Cc,MAAA,EAAQC,OAAA;MACRU,MAAA,EAAQD,kBAAA;MACRP,iBAAA;MACAa,+BAAA,EAAiCd,MAAA;MACjCG;IACF;IACAD,KAAA,CAAMO,MAAM,GAAGI,eAAA;IAEf;IACA;IACA;IACA,MAAME,0BAAA,GAA6B9B,cAAA,CAAe4B,eAAA,EAAiBG,MAAM,CACtEC,KAAA,IAAU,EAAE,UAAUA,KAAI,KAAMA,KAAA,CAAMC,IAAI,KAAK;IAGlD,OAAO;MACLC,aAAA,EAAe;MACfC,kBAAA,EAAoB;QAClBT,mBAAA,EAAqBT,KAAA,CAAMS,mBAAmB;QAC9CD,kBAAA,EAAoBR,KAAA,CAAMQ;MAC5B;MACAW,iBAAA,EAAmBA,CAAA;QACjB,IAAI,CAACR,eAAA,IAAmB,CAACS,KAAA,CAAMC,OAAO,CAACV,eAAA,KAAoBA,eAAA,CAAgBW,MAAM,KAAK,GAAG;UACvF,OAAO;QACT;QAEA,MAAMC,SAAA,GAAY,IAAIC,GAAA;QACtBD,SAAA,CAAUE,GAAG,CAAC,UAAUd,eAAA;QAExB,OAAOY,SAAA;MACT;MACAhC,IAAA;MACAmC,oBAAA,EAAsB,CAACvC,uBAAA,CAAwB;MAC/CwC,KAAA,EAAO,CACLzC,UAAA,CAAW;QACT0C,UAAA,EAAY;UACVC,IAAA,EAAM;YACJC,SAAA,EAAW,MAAAA,CAAO;cAChBF,UAAU;cACVG,YAAY;cACZC,KAAK;cACLC,KAAK;cACLC,IAAI;cACJC,cAAc;cACdC,MAAM;cACNC,GAAG;cACHC;YAAgB,CACjB;cACC,MAAMC,YAAA,GAAe,MAAMtD,yBAAA,CAA0B;gBACnD2C,UAAA;gBACAG,YAAA;gBACAC,KAAA;gBACAC,KAAA;gBACAO,YAAA,EAAcN,IAAA,CAAKO,QAAQ;gBAC3BN,cAAA;gBACAC,MAAA,EAAQ;kBACN,GAAGF,IAAI;kBACPE;gBACF;gBACAC,GAAA;gBACAC;cACF;cAEA,MAAMI,GAAA,GAAcR,IAAA,CAAK3B,MAAM,CAACoC,MAAM,GAAG,+BAA+B;cACxE,MAAMC,MAAA,GAAiBV,IAAA,CAAK3B,MAAM,CAACoC,MAAM,GAAG,qBAAqB;cAEjE,IAAIE,IAAA,GAAeX,IAAA,CAAK3B,MAAM,CAACuC,GAAG;cAClC,IAAIZ,IAAA,CAAK3B,MAAM,CAACwC,QAAQ,KAAK,YAAY;gBACvCF,IAAA,GACE,OAAOX,IAAA,CAAK3B,MAAM,CAACyC,GAAG,EAAEC,KAAA,KAAU,WAC9Bf,IAAA,CAAK3B,MAAM,CAACyC,GAAG,EAAEC,KAAA,GACjBf,IAAA,CAAK3B,MAAM,CAACyC,GAAG,EAAEC,KAAA,EAAOC,EAAA;cAChC;cAEA,OAAO,YAAYL,IAAA,IAAQD,MAAA,GAASF,GAAA,IAAOH,YAAA,MAAkB;YAC/D;YACAY,SAAA,EAAW,CAAC/D,YAAA,CAAagE,OAAO;UAClC;QACF;QACAlB,IAAA,EAAM9C,YAAA;QACN;QACAiE,WAAA,EAAa,CAAC5D,cAAA,CAAeO,KAAA,EAAOa,0BAAA;MACtC,IACA3B,UAAA,CAAW;QACT0C,UAAA,EAAY;UACVC,IAAA,EAAM;YACJC,SAAA,EAAW,MAAAA,CAAO;cAChBF,UAAU;cACVG,YAAY;cACZC,KAAK;cACLC,KAAK;cACLC,IAAI;cACJC,cAAc;cACdC,MAAM;cACNC,GAAG;cACHC;YAAgB,CACjB;cACC,MAAMC,YAAA,GAAe,MAAMtD,yBAAA,CAA0B;gBACnD2C,UAAA;gBACAG,YAAA;gBACAC,KAAA;gBACAC,KAAA;gBACAO,YAAA,EAAcN,IAAA,CAAKO,QAAQ;gBAC3BN,cAAA;gBACAC,MAAA,EAAQ;kBACN,GAAGF,IAAI;kBACPE;gBACF;gBACAC,GAAA;gBACAC;cACF;cAEA,MAAMI,GAAA,GAAcR,IAAA,CAAK3B,MAAM,CAACoC,MAAM,GAAG,+BAA+B;cACxE,MAAMC,MAAA,GAAiBV,IAAA,CAAK3B,MAAM,CAACoC,MAAM,GAAG,qBAAqB;cAEjE,MAAME,IAAA,GACJX,IAAA,CAAK3B,MAAM,CAACwC,QAAQ,KAAK,WACrBlE,UAAA,CAAWqD,IAAA,CAAK3B,MAAM,CAACuC,GAAG,IACzBZ,IAAA,CAAK3B,MAAM,CAACyC,GAAG,EAAEC,KAAA;cAExB,OAAO,YAAYJ,IAAA,IAAQD,MAAA,GAASF,GAAA,IAAOH,YAAA,MAAkB;YAC/D;YACAY,SAAA,EAAW,CAAC9D,QAAA,CAAS+D,OAAO;UAC9B;QACF;QACAE,YAAA,EAAcA,CAAA;UACZ,OAAOzC,0BAAA;QACT;QACA0C,gBAAA,EAAkBA,CAAC;UAAErB;QAAI,CAAE;UACzB,OAAOA,IAAA,EAAM3B,MAAA;QACf;QACAiD,yBAAA,EAA2B,CAAClE,wBAAA,CAAyBU,KAAA,EAAO;QAC5DkC,IAAA,EAAM7C,QAAA;QACNgE,WAAA,EAAa,CAAC5D,cAAA,CAAeO,KAAA,EAAOa,0BAAA;MACtC,GACD;MACD4C,2BAAA,EAA6BzD;IAC/B;EACF;EACA0D,GAAA,EAAK;AACP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["escapeHTML","sanitizeFields","deepCopyObject","createServerFeature","convertLexicalNodesToHTML","createNode","LinkMarkdownTransformer","AutoLinkNode","LinkNode","linkPopulationPromiseHOC","i18n","transformExtraFields","linkValidation","LinkFeature","feature","config","_config","isRoot","parentIsLocalized","props","validRelationships","collections","map","c","slug","_transformedFields","fields","enabledCollections","disabledCollections","maxDepth","sanitizedFields","requireFieldLevelRichTextEditor","sanitizedFieldsWithoutText","filter","field","name","ClientFeature","clientFeatureProps","generateSchemaMap","Array","isArray","length","schemaMap","Map","set","markdownTransformers","nodes","converters","html","converter","currentDepth","depth","draft","node","overrideAccess","parent","req","showHiddenFields","childrenText","lexicalNodes","children","rel","newTab","target","href","url","linkType","doc","value","String","id","nodeTypes","getType","validations","getSubFields","getSubFieldsData","graphQLPopulationPromises","sanitizedServerFeatureProps","key"],"sources":["../../../../src/features/link/server/index.ts"],"sourcesContent":["import type {\n CollectionSlug,\n Config,\n DefaultDocumentIDType,\n Field,\n FieldAffectingData,\n SanitizedConfig,\n} from 'payload'\n\nimport escapeHTML from 'escape-html'\nimport { sanitizeFields } from 'payload'\nimport { deepCopyObject } from 'payload/shared'\n\nimport type { ClientProps } from '../client/index.js'\n\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\nimport { convertLexicalNodesToHTML } from '../../converters/html/converter/index.js'\nimport { createNode } from '../../typeUtilities.js'\nimport { LinkMarkdownTransformer } from '../markdownTransformer.js'\nimport { AutoLinkNode } from '../nodes/AutoLinkNode.js'\nimport { LinkNode } from '../nodes/LinkNode.js'\nimport { linkPopulationPromiseHOC } from './graphQLPopulationPromise.js'\nimport { i18n } from './i18n.js'\nimport { transformExtraFields } from './transformExtraFields.js'\nimport { linkValidation } from './validate.js'\n\nexport type ExclusiveLinkCollectionsProps =\n | {\n /**\n * The collections that should be disabled for internal linking. Overrides the `enableRichTextLink` property in the collection config.\n * When this property is set, `enabledCollections` will not be available.\n **/\n disabledCollections?: CollectionSlug[]\n\n // Ensures that enabledCollections is not available when disabledCollections is set\n enabledCollections?: never\n }\n | {\n // Ensures that disabledCollections is not available when enabledCollections is set\n disabledCollections?: never\n\n /**\n * The collections that should be enabled for internal linking. Overrides the `enableRichTextLink` property in the collection config\n * When this property is set, `disabledCollections` will not be available.\n **/\n enabledCollections?: CollectionSlug[]\n }\n\nexport type LinkFeatureServerProps = {\n /**\n * A function or array defining additional fields for the link feature. These will be\n * displayed in the link editor drawer.\n */\n fields?:\n | ((args: {\n config: SanitizedConfig\n defaultFields: FieldAffectingData[]\n }) => (Field | FieldAffectingData)[])\n | Field[]\n /**\n * Sets a maximum population depth for the internal doc default field of link, regardless of the remaining depth when the field is reached.\n * This behaves exactly like the maxDepth properties of relationship and upload fields.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n} & ExclusiveLinkCollectionsProps\n\nexport const LinkFeature = createServerFeature<\n LinkFeatureServerProps,\n LinkFeatureServerProps,\n ClientProps\n>({\n feature: async ({ config: _config, isRoot, parentIsLocalized, props }) => {\n if (!props) {\n props = {}\n }\n const validRelationships = _config.collections.map((c) => c.slug) || []\n\n const _transformedFields = transformExtraFields(\n props.fields ? deepCopyObject(props.fields) : null,\n _config,\n props.enabledCollections,\n props.disabledCollections,\n props.maxDepth,\n )\n\n const sanitizedFields = await sanitizeFields({\n config: _config as unknown as Config,\n fields: _transformedFields,\n parentIsLocalized,\n requireFieldLevelRichTextEditor: isRoot,\n validRelationships,\n })\n props.fields = sanitizedFields\n\n // the text field is not included in the node data.\n // Thus, for tasks like validation, we do not want to pass it a text field in the schema which will never have data.\n // Otherwise, it will cause a validation error (field is required).\n const sanitizedFieldsWithoutText = deepCopyObject(sanitizedFields).filter(\n (field) => !('name' in field) || field.name !== 'text',\n )\n\n return {\n ClientFeature: '@payloadcms/richtext-lexical/client#LinkFeatureClient',\n clientFeatureProps: {\n disabledCollections: props.disabledCollections,\n enabledCollections: props.enabledCollections,\n } as ExclusiveLinkCollectionsProps,\n generateSchemaMap: () => {\n if (!sanitizedFields || !Array.isArray(sanitizedFields) || sanitizedFields.length === 0) {\n return null\n }\n\n const schemaMap = new Map<string, Field[]>()\n schemaMap.set('fields', sanitizedFields)\n\n return schemaMap\n },\n i18n,\n markdownTransformers: [LinkMarkdownTransformer],\n nodes: [\n createNode({\n converters: {\n html: {\n converter: async ({\n converters,\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n parent,\n req,\n showHiddenFields,\n }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n currentDepth,\n depth,\n draft,\n lexicalNodes: node.children,\n overrideAccess,\n parent: {\n ...node,\n parent,\n },\n req,\n showHiddenFields,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n let href: string = node.fields.url\n if (node.fields.linkType === 'internal') {\n href =\n typeof node.fields.doc?.value !== 'object'\n ? String(node.fields.doc?.value)\n : String(node.fields.doc?.value?.id)\n }\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: [AutoLinkNode.getType()],\n },\n },\n node: AutoLinkNode,\n // Since AutoLinkNodes are just internal links, they need no hooks or graphQL population promises\n validations: [linkValidation(props, sanitizedFieldsWithoutText)],\n }),\n createNode({\n converters: {\n html: {\n converter: async ({\n converters,\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n parent,\n req,\n showHiddenFields,\n }) => {\n const childrenText = await convertLexicalNodesToHTML({\n converters,\n currentDepth,\n depth,\n draft,\n lexicalNodes: node.children,\n overrideAccess,\n parent: {\n ...node,\n parent,\n },\n req,\n showHiddenFields,\n })\n\n const rel: string = node.fields.newTab ? ' rel=\"noopener noreferrer\"' : ''\n const target: string = node.fields.newTab ? ' target=\"_blank\"' : ''\n\n const href: string =\n node.fields.linkType === 'custom'\n ? escapeHTML(node.fields.url)\n : (node.fields.doc?.value as string)\n\n return `<a href=\"${href}\"${target}${rel}>${childrenText}</a>`\n },\n nodeTypes: [LinkNode.getType()],\n },\n },\n getSubFields: () => {\n return sanitizedFieldsWithoutText\n },\n getSubFieldsData: ({ node }) => {\n return node?.fields\n },\n graphQLPopulationPromises: [linkPopulationPromiseHOC(props)],\n node: LinkNode,\n validations: [linkValidation(props, sanitizedFieldsWithoutText)],\n }),\n ],\n sanitizedServerFeatureProps: props,\n }\n },\n key: 'link',\n})\n"],"mappings":"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","ignoreList":[]}
@@ -5,5 +5,5 @@ import type { CollectionSlug, Field, FieldAffectingData, SanitizedConfig } from
5
5
  export declare function transformExtraFields(customFieldSchema: ((args: {
6
6
  config: SanitizedConfig;
7
7
  defaultFields: FieldAffectingData[];
8
- }) => (Field | FieldAffectingData)[]) | Field[], config: SanitizedConfig, enabledCollections?: CollectionSlug[], disabledCollections?: CollectionSlug[], maxDepth?: number): Field[];
8
+ }) => (Field | FieldAffectingData)[]) | Field[] | null, config: SanitizedConfig, enabledCollections?: CollectionSlug[], disabledCollections?: CollectionSlug[], maxDepth?: number): Field[];
9
9
  //# sourceMappingURL=transformExtraFields.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transformExtraFields.d.ts","sourceRoot":"","sources":["../../../../src/features/link/server/transformExtraFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAIzF;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,iBAAiB,EACb,CAAC,CAAC,IAAI,EAAE;IACN,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,kBAAkB,EAAE,CAAA;CACpC,KAAK,CAAC,KAAK,GAAG,kBAAkB,CAAC,EAAE,CAAC,GACrC,KAAK,EAAE,EACX,MAAM,EAAE,eAAe,EACvB,kBAAkB,CAAC,EAAE,cAAc,EAAE,EACrC,mBAAmB,CAAC,EAAE,cAAc,EAAE,EACtC,QAAQ,CAAC,EAAE,MAAM,GAChB,KAAK,EAAE,CAmBT"}
1
+ {"version":3,"file":"transformExtraFields.d.ts","sourceRoot":"","sources":["../../../../src/features/link/server/transformExtraFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAIzF;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,iBAAiB,EACb,CAAC,CAAC,IAAI,EAAE;IACN,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,kBAAkB,EAAE,CAAA;CACpC,KAAK,CAAC,KAAK,GAAG,kBAAkB,CAAC,EAAE,CAAC,GACrC,KAAK,EAAE,GACP,IAAI,EACR,MAAM,EAAE,eAAe,EACvB,kBAAkB,CAAC,EAAE,cAAc,EAAE,EACrC,mBAAmB,CAAC,EAAE,cAAc,EAAE,EACtC,QAAQ,CAAC,EAAE,MAAM,GAChB,KAAK,EAAE,CAmBT"}
@@ -1 +1 @@
1
- {"version":3,"file":"transformExtraFields.js","names":["getBaseFields","transformExtraFields","customFieldSchema","config","enabledCollections","disabledCollections","maxDepth","baseFields","fields","defaultFields","Array","isArray"],"sources":["../../../../src/features/link/server/transformExtraFields.ts"],"sourcesContent":["import type { CollectionSlug, Field, FieldAffectingData, SanitizedConfig } from 'payload'\n\nimport { getBaseFields } from './baseFields.js'\n\n/**\n * This function is run to enrich the basefields which every link has with potential, custom user-added fields.\n */\nexport function transformExtraFields(\n customFieldSchema:\n | ((args: {\n config: SanitizedConfig\n defaultFields: FieldAffectingData[]\n }) => (Field | FieldAffectingData)[])\n | Field[],\n config: SanitizedConfig,\n enabledCollections?: CollectionSlug[],\n disabledCollections?: CollectionSlug[],\n maxDepth?: number,\n): Field[] {\n const baseFields: FieldAffectingData[] = getBaseFields(\n config,\n enabledCollections,\n disabledCollections,\n maxDepth,\n )\n\n let fields: (Field | FieldAffectingData)[]\n\n if (typeof customFieldSchema === 'function') {\n fields = customFieldSchema({ config, defaultFields: baseFields })\n } else if (Array.isArray(customFieldSchema)) {\n fields = customFieldSchema\n } else {\n fields = baseFields\n }\n\n return fields as Field[]\n}\n"],"mappings":"AAEA,SAASA,aAAa,QAAQ;AAE9B;;;AAGA,OAAO,SAASC,qBACdC,iBAKW,EACXC,MAAuB,EACvBC,kBAAqC,EACrCC,mBAAsC,EACtCC,QAAiB;EAEjB,MAAMC,UAAA,GAAmCP,aAAA,CACvCG,MAAA,EACAC,kBAAA,EACAC,mBAAA,EACAC,QAAA;EAGF,IAAIE,MAAA;EAEJ,IAAI,OAAON,iBAAA,KAAsB,YAAY;IAC3CM,MAAA,GAASN,iBAAA,CAAkB;MAAEC,MAAA;MAAQM,aAAA,EAAeF;IAAW;EACjE,OAAO,IAAIG,KAAA,CAAMC,OAAO,CAACT,iBAAA,GAAoB;IAC3CM,MAAA,GAASN,iBAAA;EACX,OAAO;IACLM,MAAA,GAASD,UAAA;EACX;EAEA,OAAOC,MAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"transformExtraFields.js","names":["getBaseFields","transformExtraFields","customFieldSchema","config","enabledCollections","disabledCollections","maxDepth","baseFields","fields","defaultFields","Array","isArray"],"sources":["../../../../src/features/link/server/transformExtraFields.ts"],"sourcesContent":["import type { CollectionSlug, Field, FieldAffectingData, SanitizedConfig } from 'payload'\n\nimport { getBaseFields } from './baseFields.js'\n\n/**\n * This function is run to enrich the basefields which every link has with potential, custom user-added fields.\n */\nexport function transformExtraFields(\n customFieldSchema:\n | ((args: {\n config: SanitizedConfig\n defaultFields: FieldAffectingData[]\n }) => (Field | FieldAffectingData)[])\n | Field[]\n | null,\n config: SanitizedConfig,\n enabledCollections?: CollectionSlug[],\n disabledCollections?: CollectionSlug[],\n maxDepth?: number,\n): Field[] {\n const baseFields: FieldAffectingData[] = getBaseFields(\n config,\n enabledCollections,\n disabledCollections,\n maxDepth,\n )\n\n let fields: (Field | FieldAffectingData)[]\n\n if (typeof customFieldSchema === 'function') {\n fields = customFieldSchema({ config, defaultFields: baseFields })\n } else if (Array.isArray(customFieldSchema)) {\n fields = customFieldSchema\n } else {\n fields = baseFields\n }\n\n return fields as Field[]\n}\n"],"mappings":"AAEA,SAASA,aAAa,QAAQ;AAE9B;;;AAGA,OAAO,SAASC,qBACdC,iBAMQ,EACRC,MAAuB,EACvBC,kBAAqC,EACrCC,mBAAsC,EACtCC,QAAiB;EAEjB,MAAMC,UAAA,GAAmCP,aAAA,CACvCG,MAAA,EACAC,kBAAA,EACAC,mBAAA,EACAC,QAAA;EAGF,IAAIE,MAAA;EAEJ,IAAI,OAAON,iBAAA,KAAsB,YAAY;IAC3CM,MAAA,GAASN,iBAAA,CAAkB;MAAEC,MAAA;MAAQM,aAAA,EAAeF;IAAW;EACjE,OAAO,IAAIG,KAAA,CAAMC,OAAO,CAACT,iBAAA,GAAoB;IAC3CM,MAAA,GAASN,iBAAA;EACX,OAAO;IACLM,MAAA,GAASD,UAAA;EACX;EAEA,OAAOC,MAAA;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","names":["buildStateFromSchema","linkValidation","props","sanitizedFieldsWithoutText","node","validation","options","id","collectionSlug","operation","preferences","req","result","data","fields","fieldSchema","siblingData","errorPaths","fieldKey","concat","length","join"],"sources":["../../../../src/features/link/server/validate.ts"],"sourcesContent":["import type { Field } from 'payload'\n\nimport { buildStateFromSchema } from '@payloadcms/ui/forms/buildStateFromSchema'\n\nimport type { NodeValidation } from '../../typesServer.js'\nimport type { SerializedAutoLinkNode, SerializedLinkNode } from '../nodes/types.js'\nimport type { LinkFeatureServerProps } from './index.js'\n\nexport const linkValidation = (\n props: LinkFeatureServerProps,\n sanitizedFieldsWithoutText: Field[],\n): NodeValidation<SerializedAutoLinkNode | SerializedLinkNode> => {\n return async ({\n node,\n validation: {\n options: { id, collectionSlug, operation, preferences, req },\n },\n }) => {\n /**\n * Run buildStateFromSchema as that properly validates link fields and link sub-fields\n */\n\n const result = await buildStateFromSchema({\n id,\n collectionSlug,\n data: node.fields,\n fieldSchema: sanitizedFieldsWithoutText, // Sanitized in feature.server.ts\n operation: operation === 'create' || operation === 'update' ? operation : 'update',\n preferences,\n req,\n siblingData: node.fields,\n })\n\n let errorPaths = []\n for (const fieldKey in result) {\n if (result[fieldKey].errorPaths) {\n errorPaths = errorPaths.concat(result[fieldKey].errorPaths)\n }\n }\n\n if (errorPaths.length) {\n return 'The following fields are invalid: ' + errorPaths.join(', ')\n }\n\n return true\n }\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ;AAMrC,OAAO,MAAMC,cAAA,GAAiBA,CAC5BC,KAAA,EACAC,0BAAA;EAEA,OAAO,OAAO;IACZC,IAAI;IACJC,UAAA,EAAY;MACVC,OAAA,EAAS;QAAEC,EAAE;QAAEC,cAAc;QAAEC,SAAS;QAAEC,WAAW;QAAEC;MAAG;IAAE;EAC7D,CACF;IACC;;;IAIA,MAAMC,MAAA,GAAS,MAAMZ,oBAAA,CAAqB;MACxCO,EAAA;MACAC,cAAA;MACAK,IAAA,EAAMT,IAAA,CAAKU,MAAM;MACjBC,WAAA,EAAaZ,0BAAA;MACbM,SAAA,EAAWA,SAAA,KAAc,YAAYA,SAAA,KAAc,WAAWA,SAAA,GAAY;MAC1EC,WAAA;MACAC,GAAA;MACAK,WAAA,EAAaZ,IAAA,CAAKU;IACpB;IAEA,IAAIG,UAAA,GAAa,EAAE;IACnB,KAAK,MAAMC,QAAA,IAAYN,MAAA,EAAQ;MAC7B,IAAIA,MAAM,CAACM,QAAA,CAAS,CAACD,UAAU,EAAE;QAC/BA,UAAA,GAAaA,UAAA,CAAWE,MAAM,CAACP,MAAM,CAACM,QAAA,CAAS,CAACD,UAAU;MAC5D;IACF;IAEA,IAAIA,UAAA,CAAWG,MAAM,EAAE;MACrB,OAAO,uCAAuCH,UAAA,CAAWI,IAAI,CAAC;IAChE;IAEA,OAAO;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"file":"validate.js","names":["buildStateFromSchema","linkValidation","props","sanitizedFieldsWithoutText","node","validation","options","id","collectionSlug","operation","preferences","req","result","data","fields","fieldSchema","siblingData","errorPaths","fieldKey","concat","length","join"],"sources":["../../../../src/features/link/server/validate.ts"],"sourcesContent":["import type { Field } from 'payload'\n\nimport { buildStateFromSchema } from '@payloadcms/ui/forms/buildStateFromSchema'\n\nimport type { NodeValidation } from '../../typesServer.js'\nimport type { SerializedAutoLinkNode, SerializedLinkNode } from '../nodes/types.js'\nimport type { LinkFeatureServerProps } from './index.js'\n\nexport const linkValidation = (\n props: LinkFeatureServerProps,\n sanitizedFieldsWithoutText: Field[],\n): NodeValidation<SerializedAutoLinkNode | SerializedLinkNode> => {\n return async ({\n node,\n validation: {\n options: { id, collectionSlug, operation, preferences, req },\n },\n }) => {\n /**\n * Run buildStateFromSchema as that properly validates link fields and link sub-fields\n */\n\n const result = await buildStateFromSchema({\n id,\n collectionSlug,\n data: node.fields,\n fieldSchema: sanitizedFieldsWithoutText, // Sanitized in feature.server.ts\n operation: operation === 'create' || operation === 'update' ? operation : 'update',\n preferences,\n req,\n siblingData: node.fields,\n })\n\n let errorPaths: string[] = []\n for (const fieldKey in result) {\n if (result[fieldKey].errorPaths) {\n errorPaths = errorPaths.concat(result[fieldKey].errorPaths)\n }\n }\n\n if (errorPaths.length) {\n return 'The following fields are invalid: ' + errorPaths.join(', ')\n }\n\n return true\n }\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ;AAMrC,OAAO,MAAMC,cAAA,GAAiBA,CAC5BC,KAAA,EACAC,0BAAA;EAEA,OAAO,OAAO;IACZC,IAAI;IACJC,UAAA,EAAY;MACVC,OAAA,EAAS;QAAEC,EAAE;QAAEC,cAAc;QAAEC,SAAS;QAAEC,WAAW;QAAEC;MAAG;IAAE;EAC7D,CACF;IACC;;;IAIA,MAAMC,MAAA,GAAS,MAAMZ,oBAAA,CAAqB;MACxCO,EAAA;MACAC,cAAA;MACAK,IAAA,EAAMT,IAAA,CAAKU,MAAM;MACjBC,WAAA,EAAaZ,0BAAA;MACbM,SAAA,EAAWA,SAAA,KAAc,YAAYA,SAAA,KAAc,WAAWA,SAAA,GAAY;MAC1EC,WAAA;MACAC,GAAA;MACAK,WAAA,EAAaZ,IAAA,CAAKU;IACpB;IAEA,IAAIG,UAAA,GAAuB,EAAE;IAC7B,KAAK,MAAMC,QAAA,IAAYN,MAAA,EAAQ;MAC7B,IAAIA,MAAM,CAACM,QAAA,CAAS,CAACD,UAAU,EAAE;QAC/BA,UAAA,GAAaA,UAAA,CAAWE,MAAM,CAACP,MAAM,CAACM,QAAA,CAAS,CAACD,UAAU;MAC5D;IACF;IAEA,IAAIA,UAAA,CAAWG,MAAM,EAAE;MACrB,OAAO,uCAAuCH,UAAA,CAAWI,IAAI,CAAC;IAChE;IAEA,OAAO;EACT;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","names":["$createListItemNode","$createListNode","$isListItemNode","$isListNode","LIST_INDENT_SIZE","listReplace","listType","parentNode","children","match","previousNode","getPreviousSibling","nextNode","getNextSibling","listItem","undefined","getListType","firstChild","getFirstChild","insertBefore","append","remove","list","Number","replace","select","indent","Math","floor","length","setIndent","listExport","listNode","exportChildren","depth","output","getChildren","index","listItemNode","getChildrenSize","push","repeat","prefix","getStart","getChecked","join"],"sources":["../../../../src/features/lists/shared/markdown.ts"],"sourcesContent":["// Copied from https://github.com/facebook/lexical/blob/176b8cf16ecb332ee5efe2c75219e223b7b019f2/packages/lexical-markdown/src/MarkdownTransformers.ts#L97C1-L172C1\n\nimport type { ListNode, ListType } from '@lexical/list'\nimport type { ElementTransformer } from '@lexical/markdown'\nimport type { ElementNode } from 'lexical'\n\nimport { $createListItemNode, $createListNode, $isListItemNode, $isListNode } from '@lexical/list'\n\n// Amount of spaces that define indentation level\nconst LIST_INDENT_SIZE = 4\n\nexport const listReplace = (listType: ListType): ElementTransformer['replace'] => {\n return (parentNode, children, match) => {\n const previousNode = parentNode.getPreviousSibling()\n const nextNode = parentNode.getNextSibling()\n const listItem = $createListItemNode(listType === 'check' ? match[3] === 'x' : undefined)\n if ($isListNode(nextNode) && nextNode.getListType() === listType) {\n const firstChild = nextNode.getFirstChild()\n if (firstChild !== null) {\n firstChild.insertBefore(listItem)\n } else {\n // should never happen, but let's handle gracefully, just in case.\n nextNode.append(listItem)\n }\n parentNode.remove()\n } else if ($isListNode(previousNode) && previousNode.getListType() === listType) {\n previousNode.append(listItem)\n parentNode.remove()\n } else {\n const list = $createListNode(listType, listType === 'number' ? Number(match[2]) : undefined)\n list.append(listItem)\n parentNode.replace(list)\n }\n listItem.append(...children)\n listItem.select(0, 0)\n const indent = Math.floor(match[1].length / LIST_INDENT_SIZE)\n if (indent) {\n listItem.setIndent(indent)\n }\n }\n}\n\nexport const listExport = (\n listNode: ListNode,\n exportChildren: (node: ElementNode) => string,\n depth: number,\n): string => {\n const output = []\n const children = listNode.getChildren()\n let index = 0\n for (const listItemNode of children) {\n if ($isListItemNode(listItemNode)) {\n if (listItemNode.getChildrenSize() === 1) {\n const firstChild = listItemNode.getFirstChild()\n if ($isListNode(firstChild)) {\n output.push(listExport(firstChild, exportChildren, depth + 1))\n continue\n }\n }\n const indent = ' '.repeat(depth * LIST_INDENT_SIZE)\n const listType = listNode.getListType()\n const prefix =\n listType === 'number'\n ? `${listNode.getStart() + index}. `\n : listType === 'check'\n ? `- [${listItemNode.getChecked() ? 'x' : ' '}] `\n : '- '\n output.push(indent + prefix + exportChildren(listItemNode))\n index++\n }\n }\n\n return output.join('\\n')\n}\n"],"mappings":"AAAA;AAMA,SAASA,mBAAmB,EAAEC,eAAe,EAAEC,eAAe,EAAEC,WAAW,QAAQ;AAEnF;AACA,MAAMC,gBAAA,GAAmB;AAEzB,OAAO,MAAMC,WAAA,GAAeC,QAAA;EAC1B,OAAO,CAACC,UAAA,EAAYC,QAAA,EAAUC,KAAA;IAC5B,MAAMC,YAAA,GAAeH,UAAA,CAAWI,kBAAkB;IAClD,MAAMC,QAAA,GAAWL,UAAA,CAAWM,cAAc;IAC1C,MAAMC,QAAA,GAAWd,mBAAA,CAAoBM,QAAA,KAAa,UAAUG,KAAK,CAAC,EAAE,KAAK,MAAMM,SAAA;IAC/E,IAAIZ,WAAA,CAAYS,QAAA,KAAaA,QAAA,CAASI,WAAW,OAAOV,QAAA,EAAU;MAChE,MAAMW,UAAA,GAAaL,QAAA,CAASM,aAAa;MACzC,IAAID,UAAA,KAAe,MAAM;QACvBA,UAAA,CAAWE,YAAY,CAACL,QAAA;MAC1B,OAAO;QACL;QACAF,QAAA,CAASQ,MAAM,CAACN,QAAA;MAClB;MACAP,UAAA,CAAWc,MAAM;IACnB,OAAO,IAAIlB,WAAA,CAAYO,YAAA,KAAiBA,YAAA,CAAaM,WAAW,OAAOV,QAAA,EAAU;MAC/EI,YAAA,CAAaU,MAAM,CAACN,QAAA;MACpBP,UAAA,CAAWc,MAAM;IACnB,OAAO;MACL,MAAMC,IAAA,GAAOrB,eAAA,CAAgBK,QAAA,EAAUA,QAAA,KAAa,WAAWiB,MAAA,CAAOd,KAAK,CAAC,EAAE,IAAIM,SAAA;MAClFO,IAAA,CAAKF,MAAM,CAACN,QAAA;MACZP,UAAA,CAAWiB,OAAO,CAACF,IAAA;IACrB;IACAR,QAAA,CAASM,MAAM,IAAIZ,QAAA;IACnBM,QAAA,CAASW,MAAM,CAAC,GAAG;IACnB,MAAMC,MAAA,GAASC,IAAA,CAAKC,KAAK,CAACnB,KAAK,CAAC,EAAE,CAACoB,MAAM,GAAGzB,gBAAA;IAC5C,IAAIsB,MAAA,EAAQ;MACVZ,QAAA,CAASgB,SAAS,CAACJ,MAAA;IACrB;EACF;AACF;AAEA,OAAO,MAAMK,UAAA,GAAaA,CACxBC,QAAA,EACAC,cAAA,EACAC,KAAA;EAEA,MAAMC,MAAA,GAAS,EAAE;EACjB,MAAM3B,QAAA,GAAWwB,QAAA,CAASI,WAAW;EACrC,IAAIC,KAAA,GAAQ;EACZ,KAAK,MAAMC,YAAA,IAAgB9B,QAAA,EAAU;IACnC,IAAIN,eAAA,CAAgBoC,YAAA,GAAe;MACjC,IAAIA,YAAA,CAAaC,eAAe,OAAO,GAAG;QACxC,MAAMtB,UAAA,GAAaqB,YAAA,CAAapB,aAAa;QAC7C,IAAIf,WAAA,CAAYc,UAAA,GAAa;UAC3BkB,MAAA,CAAOK,IAAI,CAACT,UAAA,CAAWd,UAAA,EAAYgB,cAAA,EAAgBC,KAAA,GAAQ;UAC3D;QACF;MACF;MACA,MAAMR,MAAA,GAAS,IAAIe,MAAM,CAACP,KAAA,GAAQ9B,gBAAA;MAClC,MAAME,QAAA,GAAW0B,QAAA,CAAShB,WAAW;MACrC,MAAM0B,MAAA,GACJpC,QAAA,KAAa,WACT,GAAG0B,QAAA,CAASW,QAAQ,KAAKN,KAAA,IAAS,GAClC/B,QAAA,KAAa,UACX,MAAMgC,YAAA,CAAaM,UAAU,KAAK,MAAM,OAAO,GAC/C;MACRT,MAAA,CAAOK,IAAI,CAACd,MAAA,GAASgB,MAAA,GAAST,cAAA,CAAeK,YAAA;MAC7CD,KAAA;IACF;EACF;EAEA,OAAOF,MAAA,CAAOU,IAAI,CAAC;AACrB","ignoreList":[]}
1
+ {"version":3,"file":"markdown.js","names":["$createListItemNode","$createListNode","$isListItemNode","$isListNode","LIST_INDENT_SIZE","listReplace","listType","parentNode","children","match","previousNode","getPreviousSibling","nextNode","getNextSibling","listItem","undefined","getListType","firstChild","getFirstChild","insertBefore","append","remove","list","Number","replace","select","indent","Math","floor","length","setIndent","listExport","listNode","exportChildren","depth","output","getChildren","index","listItemNode","getChildrenSize","push","repeat","prefix","getStart","getChecked","join"],"sources":["../../../../src/features/lists/shared/markdown.ts"],"sourcesContent":["// Copied from https://github.com/facebook/lexical/blob/176b8cf16ecb332ee5efe2c75219e223b7b019f2/packages/lexical-markdown/src/MarkdownTransformers.ts#L97C1-L172C1\n\nimport type { ListNode, ListType } from '@lexical/list'\nimport type { ElementTransformer } from '@lexical/markdown'\nimport type { ElementNode } from 'lexical'\n\nimport { $createListItemNode, $createListNode, $isListItemNode, $isListNode } from '@lexical/list'\n\n// Amount of spaces that define indentation level\nconst LIST_INDENT_SIZE = 4\n\nexport const listReplace = (listType: ListType): ElementTransformer['replace'] => {\n return (parentNode, children, match) => {\n const previousNode = parentNode.getPreviousSibling()\n const nextNode = parentNode.getNextSibling()\n const listItem = $createListItemNode(listType === 'check' ? match[3] === 'x' : undefined)\n if ($isListNode(nextNode) && nextNode.getListType() === listType) {\n const firstChild = nextNode.getFirstChild()\n if (firstChild !== null) {\n firstChild.insertBefore(listItem)\n } else {\n // should never happen, but let's handle gracefully, just in case.\n nextNode.append(listItem)\n }\n parentNode.remove()\n } else if ($isListNode(previousNode) && previousNode.getListType() === listType) {\n previousNode.append(listItem)\n parentNode.remove()\n } else {\n const list = $createListNode(listType, listType === 'number' ? Number(match[2]) : undefined)\n list.append(listItem)\n parentNode.replace(list)\n }\n listItem.append(...children)\n listItem.select(0, 0)\n const indent = Math.floor(match[1].length / LIST_INDENT_SIZE)\n if (indent) {\n listItem.setIndent(indent)\n }\n }\n}\n\nexport const listExport = (\n listNode: ListNode,\n exportChildren: (node: ElementNode) => string,\n depth: number,\n): string => {\n const output: string[] = []\n const children = listNode.getChildren()\n let index = 0\n for (const listItemNode of children) {\n if ($isListItemNode(listItemNode)) {\n if (listItemNode.getChildrenSize() === 1) {\n const firstChild = listItemNode.getFirstChild()\n if ($isListNode(firstChild)) {\n output.push(listExport(firstChild, exportChildren, depth + 1))\n continue\n }\n }\n const indent = ' '.repeat(depth * LIST_INDENT_SIZE)\n const listType = listNode.getListType()\n const prefix =\n listType === 'number'\n ? `${listNode.getStart() + index}. `\n : listType === 'check'\n ? `- [${listItemNode.getChecked() ? 'x' : ' '}] `\n : '- '\n output.push(indent + prefix + exportChildren(listItemNode))\n index++\n }\n }\n\n return output.join('\\n')\n}\n"],"mappings":"AAAA;AAMA,SAASA,mBAAmB,EAAEC,eAAe,EAAEC,eAAe,EAAEC,WAAW,QAAQ;AAEnF;AACA,MAAMC,gBAAA,GAAmB;AAEzB,OAAO,MAAMC,WAAA,GAAeC,QAAA;EAC1B,OAAO,CAACC,UAAA,EAAYC,QAAA,EAAUC,KAAA;IAC5B,MAAMC,YAAA,GAAeH,UAAA,CAAWI,kBAAkB;IAClD,MAAMC,QAAA,GAAWL,UAAA,CAAWM,cAAc;IAC1C,MAAMC,QAAA,GAAWd,mBAAA,CAAoBM,QAAA,KAAa,UAAUG,KAAK,CAAC,EAAE,KAAK,MAAMM,SAAA;IAC/E,IAAIZ,WAAA,CAAYS,QAAA,KAAaA,QAAA,CAASI,WAAW,OAAOV,QAAA,EAAU;MAChE,MAAMW,UAAA,GAAaL,QAAA,CAASM,aAAa;MACzC,IAAID,UAAA,KAAe,MAAM;QACvBA,UAAA,CAAWE,YAAY,CAACL,QAAA;MAC1B,OAAO;QACL;QACAF,QAAA,CAASQ,MAAM,CAACN,QAAA;MAClB;MACAP,UAAA,CAAWc,MAAM;IACnB,OAAO,IAAIlB,WAAA,CAAYO,YAAA,KAAiBA,YAAA,CAAaM,WAAW,OAAOV,QAAA,EAAU;MAC/EI,YAAA,CAAaU,MAAM,CAACN,QAAA;MACpBP,UAAA,CAAWc,MAAM;IACnB,OAAO;MACL,MAAMC,IAAA,GAAOrB,eAAA,CAAgBK,QAAA,EAAUA,QAAA,KAAa,WAAWiB,MAAA,CAAOd,KAAK,CAAC,EAAE,IAAIM,SAAA;MAClFO,IAAA,CAAKF,MAAM,CAACN,QAAA;MACZP,UAAA,CAAWiB,OAAO,CAACF,IAAA;IACrB;IACAR,QAAA,CAASM,MAAM,IAAIZ,QAAA;IACnBM,QAAA,CAASW,MAAM,CAAC,GAAG;IACnB,MAAMC,MAAA,GAASC,IAAA,CAAKC,KAAK,CAACnB,KAAK,CAAC,EAAE,CAACoB,MAAM,GAAGzB,gBAAA;IAC5C,IAAIsB,MAAA,EAAQ;MACVZ,QAAA,CAASgB,SAAS,CAACJ,MAAA;IACrB;EACF;AACF;AAEA,OAAO,MAAMK,UAAA,GAAaA,CACxBC,QAAA,EACAC,cAAA,EACAC,KAAA;EAEA,MAAMC,MAAA,GAAmB,EAAE;EAC3B,MAAM3B,QAAA,GAAWwB,QAAA,CAASI,WAAW;EACrC,IAAIC,KAAA,GAAQ;EACZ,KAAK,MAAMC,YAAA,IAAgB9B,QAAA,EAAU;IACnC,IAAIN,eAAA,CAAgBoC,YAAA,GAAe;MACjC,IAAIA,YAAA,CAAaC,eAAe,OAAO,GAAG;QACxC,MAAMtB,UAAA,GAAaqB,YAAA,CAAapB,aAAa;QAC7C,IAAIf,WAAA,CAAYc,UAAA,GAAa;UAC3BkB,MAAA,CAAOK,IAAI,CAACT,UAAA,CAAWd,UAAA,EAAYgB,cAAA,EAAgBC,KAAA,GAAQ;UAC3D;QACF;MACF;MACA,MAAMR,MAAA,GAAS,IAAIe,MAAM,CAACP,KAAA,GAAQ9B,gBAAA;MAClC,MAAME,QAAA,GAAW0B,QAAA,CAAShB,WAAW;MACrC,MAAM0B,MAAA,GACJpC,QAAA,KAAa,WACT,GAAG0B,QAAA,CAASW,QAAQ,KAAKN,KAAA,IAAS,GAClC/B,QAAA,KAAa,UACX,MAAMgC,YAAA,CAAaM,UAAU,KAAK,MAAM,OAAO,GAC/C;MACRT,MAAA,CAAOK,IAAI,CAACd,MAAA,GAASgB,MAAA,GAAST,cAAA,CAAeK,YAAA;MAC7CD,KAAA;IACF;EACF;EAEA,OAAOF,MAAA,CAAOU,IAAI,CAAC;AACrB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/migrations/lexicalPluginToLexical/converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAEtF,wBAAgB,6BAA6B,CAAC,EAC5C,UAAU,EACV,iBAAiB,EACjB,KAAK,GACN,EAAE;IACD,UAAU,EAAE,0BAA0B,EAAE,CAAA;IACxC,iBAAiB,EAAE,wBAAwB,CAAA;IAC3C,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,qBAAqB,CAgBxB;AAED,wBAAgB,kCAAkC,CAAC,EACjD,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,KAAK,GACN,EAAE;IACD,UAAU,EAAE,0BAA0B,EAAE,CAAA;IACxC,kBAAkB,EAAE,qBAAqB,EAAE,GAAG,SAAS,CAAA;IACvD;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,qBAAqB,EAAE,CA2C1B;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,0BAA0B,EAAE,EACxC,IAAI,EAAE,qBAAqB,EAC3B,KAAK,CAAC,EAAE,OAAO,GACd,uBAAuB,CAazB;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,qBAAqB,GAAG,kBAAkB,CAE/E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/migrations/lexicalPluginToLexical/converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAEtF,wBAAgB,6BAA6B,CAAC,EAC5C,UAAU,EACV,iBAAiB,EACjB,KAAK,GACN,EAAE;IACD,UAAU,EAAE,0BAA0B,EAAE,CAAA;IACxC,iBAAiB,EAAE,wBAAwB,CAAA;IAC3C,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,qBAAqB,CAgBxB;AAED,wBAAgB,kCAAkC,CAAC,EACjD,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,KAAK,GACN,EAAE;IACD,UAAU,EAAE,0BAA0B,EAAE,CAAA;IACxC,kBAAkB,EAAE,qBAAqB,EAAE,GAAG,SAAS,CAAA;IACvD;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,GAAG,qBAAqB,EAAE,CA4C1B;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,0BAA0B,EAAE,EACxC,IAAI,EAAE,qBAAqB,EAC3B,KAAK,CAAC,EAAE,OAAO,GACd,uBAAuB,CAazB;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,qBAAqB,GAAG,kBAAkB,CAE/E"}
@@ -29,6 +29,7 @@ export function convertLexicalPluginNodesToLexical({
29
29
  return [];
30
30
  }
31
31
  const unknownConverter = converters.find(converter => converter.nodeTypes.includes('unknown'));
32
+ // @ts-expect-error - vestiges of the migration to strict mode. Probably not important enough in this file to fix
32
33
  return lexicalPluginNodes.map((lexicalPluginNode, i) => {
33
34
  if (lexicalPluginNode.type === 'paragraph') {
34
35
  return convertParagraphNode(converters, lexicalPluginNode, quiet);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["convertLexicalPluginToLexical","converters","lexicalPluginData","quiet","root","type","children","convertLexicalPluginNodesToLexical","lexicalPluginNodes","jsonContent","parentNodeType","direction","format","indent","version","length","unknownConverter","find","converter","nodeTypes","includes","map","lexicalPluginNode","i","convertParagraphNode","convertTextNode","childIndex","console","warn","node"],"sources":["../../../../../src/features/migrations/lexicalPluginToLexical/converter/index.ts"],"sourcesContent":["import type {\n SerializedEditorState,\n SerializedLexicalNode,\n SerializedParagraphNode,\n SerializedTextNode,\n} from 'lexical'\n\nimport type { LexicalPluginNodeConverter, PayloadPluginLexicalData } from './types.js'\n\nexport function convertLexicalPluginToLexical({\n converters,\n lexicalPluginData,\n quiet,\n}: {\n converters: LexicalPluginNodeConverter[]\n lexicalPluginData: PayloadPluginLexicalData\n quiet?: boolean\n}): SerializedEditorState {\n return {\n root: {\n type: 'root',\n children: convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes: lexicalPluginData?.jsonContent?.root?.children || [],\n parentNodeType: 'root',\n quiet,\n }),\n direction: lexicalPluginData?.jsonContent?.root?.direction || 'ltr',\n format: lexicalPluginData?.jsonContent?.root?.format || '',\n indent: lexicalPluginData?.jsonContent?.root?.indent || 0,\n version: 1,\n },\n }\n}\n\nexport function convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes,\n parentNodeType,\n quiet,\n}: {\n converters: LexicalPluginNodeConverter[]\n lexicalPluginNodes: SerializedLexicalNode[] | undefined\n /**\n * Type of the parent lexical node (not the type of the original, parent payload-plugin-lexical type)\n */\n parentNodeType: string\n quiet?: boolean\n}): SerializedLexicalNode[] {\n if (!lexicalPluginNodes?.length || !converters?.length) {\n return []\n }\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n return (\n lexicalPluginNodes.map((lexicalPluginNode, i) => {\n if (lexicalPluginNode.type === 'paragraph') {\n return convertParagraphNode(converters, lexicalPluginNode, quiet)\n }\n if (lexicalPluginNode.type === 'text' || !lexicalPluginNode.type) {\n return convertTextNode(lexicalPluginNode)\n }\n\n const converter = converters.find((converter) =>\n converter.nodeTypes.includes(lexicalPluginNode.type),\n )\n\n if (converter) {\n return converter.converter({\n childIndex: i,\n converters,\n lexicalPluginNode,\n parentNodeType,\n quiet,\n })\n }\n\n if (!quiet) {\n console.warn(\n 'lexicalPluginToLexical > No converter found for node type: ' + lexicalPluginNode.type,\n )\n }\n\n return unknownConverter?.converter({\n childIndex: i,\n converters,\n lexicalPluginNode,\n parentNodeType,\n quiet,\n })\n }) || []\n )\n}\n\nexport function convertParagraphNode(\n converters: LexicalPluginNodeConverter[],\n node: SerializedLexicalNode,\n quiet?: boolean,\n): SerializedParagraphNode {\n return {\n ...node,\n type: 'paragraph',\n\n children: convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes: (node as any).children || [],\n parentNodeType: 'paragraph',\n quiet,\n }),\n version: 1,\n } as SerializedParagraphNode\n}\nexport function convertTextNode(node: SerializedLexicalNode): SerializedTextNode {\n return node as SerializedTextNode\n}\n"],"mappings":"AASA,OAAO,SAASA,8BAA8B;EAC5CC,UAAU;EACVC,iBAAiB;EACjBC;AAAK,CAKN;EACC,OAAO;IACLC,IAAA,EAAM;MACJC,IAAA,EAAM;MACNC,QAAA,EAAUC,kCAAA,CAAmC;QAC3CN,UAAA;QACAO,kBAAA,EAAoBN,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAME,QAAA,IAAY,EAAE;QACxEI,cAAA,EAAgB;QAChBP;MACF;MACAQ,SAAA,EAAWT,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMO,SAAA,IAAa;MAC9DC,MAAA,EAAQV,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMQ,MAAA,IAAU;MACxDC,MAAA,EAAQX,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMS,MAAA,IAAU;MACxDC,OAAA,EAAS;IACX;EACF;AACF;AAEA,OAAO,SAASP,mCAAmC;EACjDN,UAAU;EACVO,kBAAkB;EAClBE,cAAc;EACdP;AAAK,CASN;EACC,IAAI,CAACK,kBAAA,EAAoBO,MAAA,IAAU,CAACd,UAAA,EAAYc,MAAA,EAAQ;IACtD,OAAO,EAAE;EACX;EACA,MAAMC,gBAAA,GAAmBf,UAAA,CAAWgB,IAAI,CAAEC,SAAA,IAAcA,SAAA,CAAUC,SAAS,CAACC,QAAQ,CAAC;EACrF,OACEZ,kBAAA,CAAmBa,GAAG,CAAC,CAACC,iBAAA,EAAmBC,CAAA;IACzC,IAAID,iBAAA,CAAkBjB,IAAI,KAAK,aAAa;MAC1C,OAAOmB,oBAAA,CAAqBvB,UAAA,EAAYqB,iBAAA,EAAmBnB,KAAA;IAC7D;IACA,IAAImB,iBAAA,CAAkBjB,IAAI,KAAK,UAAU,CAACiB,iBAAA,CAAkBjB,IAAI,EAAE;MAChE,OAAOoB,eAAA,CAAgBH,iBAAA;IACzB;IAEA,MAAMJ,SAAA,GAAYjB,UAAA,CAAWgB,IAAI,CAAEC,SAAA,IACjCA,SAAA,CAAUC,SAAS,CAACC,QAAQ,CAACE,iBAAA,CAAkBjB,IAAI;IAGrD,IAAIa,SAAA,EAAW;MACb,OAAOA,SAAA,CAAUA,SAAS,CAAC;QACzBQ,UAAA,EAAYH,CAAA;QACZtB,UAAA;QACAqB,iBAAA;QACAZ,cAAA;QACAP;MACF;IACF;IAEA,IAAI,CAACA,KAAA,EAAO;MACVwB,OAAA,CAAQC,IAAI,CACV,gEAAgEN,iBAAA,CAAkBjB,IAAI;IAE1F;IAEA,OAAOW,gBAAA,EAAkBE,SAAA,CAAU;MACjCQ,UAAA,EAAYH,CAAA;MACZtB,UAAA;MACAqB,iBAAA;MACAZ,cAAA;MACAP;IACF;EACF,MAAM,EAAE;AAEZ;AAEA,OAAO,SAASqB,qBACdvB,UAAwC,EACxC4B,IAA2B,EAC3B1B,KAAe;EAEf,OAAO;IACL,GAAG0B,IAAI;IACPxB,IAAA,EAAM;IAENC,QAAA,EAAUC,kCAAA,CAAmC;MAC3CN,UAAA;MACAO,kBAAA,EAAoBqB,IAAC,CAAavB,QAAQ,IAAI,EAAE;MAChDI,cAAA,EAAgB;MAChBP;IACF;IACAW,OAAA,EAAS;EACX;AACF;AACA,OAAO,SAASW,gBAAgBI,IAA2B;EACzD,OAAOA,IAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["convertLexicalPluginToLexical","converters","lexicalPluginData","quiet","root","type","children","convertLexicalPluginNodesToLexical","lexicalPluginNodes","jsonContent","parentNodeType","direction","format","indent","version","length","unknownConverter","find","converter","nodeTypes","includes","map","lexicalPluginNode","i","convertParagraphNode","convertTextNode","childIndex","console","warn","node"],"sources":["../../../../../src/features/migrations/lexicalPluginToLexical/converter/index.ts"],"sourcesContent":["import type {\n SerializedEditorState,\n SerializedLexicalNode,\n SerializedParagraphNode,\n SerializedTextNode,\n} from 'lexical'\n\nimport type { LexicalPluginNodeConverter, PayloadPluginLexicalData } from './types.js'\n\nexport function convertLexicalPluginToLexical({\n converters,\n lexicalPluginData,\n quiet,\n}: {\n converters: LexicalPluginNodeConverter[]\n lexicalPluginData: PayloadPluginLexicalData\n quiet?: boolean\n}): SerializedEditorState {\n return {\n root: {\n type: 'root',\n children: convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes: lexicalPluginData?.jsonContent?.root?.children || [],\n parentNodeType: 'root',\n quiet,\n }),\n direction: lexicalPluginData?.jsonContent?.root?.direction || 'ltr',\n format: lexicalPluginData?.jsonContent?.root?.format || '',\n indent: lexicalPluginData?.jsonContent?.root?.indent || 0,\n version: 1,\n },\n }\n}\n\nexport function convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes,\n parentNodeType,\n quiet,\n}: {\n converters: LexicalPluginNodeConverter[]\n lexicalPluginNodes: SerializedLexicalNode[] | undefined\n /**\n * Type of the parent lexical node (not the type of the original, parent payload-plugin-lexical type)\n */\n parentNodeType: string\n quiet?: boolean\n}): SerializedLexicalNode[] {\n if (!lexicalPluginNodes?.length || !converters?.length) {\n return []\n }\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n // @ts-expect-error - vestiges of the migration to strict mode. Probably not important enough in this file to fix\n return (\n lexicalPluginNodes.map((lexicalPluginNode, i) => {\n if (lexicalPluginNode.type === 'paragraph') {\n return convertParagraphNode(converters, lexicalPluginNode, quiet)\n }\n if (lexicalPluginNode.type === 'text' || !lexicalPluginNode.type) {\n return convertTextNode(lexicalPluginNode)\n }\n\n const converter = converters.find((converter) =>\n converter.nodeTypes.includes(lexicalPluginNode.type),\n )\n\n if (converter) {\n return converter.converter({\n childIndex: i,\n converters,\n lexicalPluginNode,\n parentNodeType,\n quiet,\n })\n }\n\n if (!quiet) {\n console.warn(\n 'lexicalPluginToLexical > No converter found for node type: ' + lexicalPluginNode.type,\n )\n }\n\n return unknownConverter?.converter({\n childIndex: i,\n converters,\n lexicalPluginNode,\n parentNodeType,\n quiet,\n })\n }) || []\n )\n}\n\nexport function convertParagraphNode(\n converters: LexicalPluginNodeConverter[],\n node: SerializedLexicalNode,\n quiet?: boolean,\n): SerializedParagraphNode {\n return {\n ...node,\n type: 'paragraph',\n\n children: convertLexicalPluginNodesToLexical({\n converters,\n lexicalPluginNodes: (node as any).children || [],\n parentNodeType: 'paragraph',\n quiet,\n }),\n version: 1,\n } as SerializedParagraphNode\n}\nexport function convertTextNode(node: SerializedLexicalNode): SerializedTextNode {\n return node as SerializedTextNode\n}\n"],"mappings":"AASA,OAAO,SAASA,8BAA8B;EAC5CC,UAAU;EACVC,iBAAiB;EACjBC;AAAK,CAKN;EACC,OAAO;IACLC,IAAA,EAAM;MACJC,IAAA,EAAM;MACNC,QAAA,EAAUC,kCAAA,CAAmC;QAC3CN,UAAA;QACAO,kBAAA,EAAoBN,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAME,QAAA,IAAY,EAAE;QACxEI,cAAA,EAAgB;QAChBP;MACF;MACAQ,SAAA,EAAWT,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMO,SAAA,IAAa;MAC9DC,MAAA,EAAQV,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMQ,MAAA,IAAU;MACxDC,MAAA,EAAQX,iBAAA,EAAmBO,WAAA,EAAaL,IAAA,EAAMS,MAAA,IAAU;MACxDC,OAAA,EAAS;IACX;EACF;AACF;AAEA,OAAO,SAASP,mCAAmC;EACjDN,UAAU;EACVO,kBAAkB;EAClBE,cAAc;EACdP;AAAK,CASN;EACC,IAAI,CAACK,kBAAA,EAAoBO,MAAA,IAAU,CAACd,UAAA,EAAYc,MAAA,EAAQ;IACtD,OAAO,EAAE;EACX;EACA,MAAMC,gBAAA,GAAmBf,UAAA,CAAWgB,IAAI,CAAEC,SAAA,IAAcA,SAAA,CAAUC,SAAS,CAACC,QAAQ,CAAC;EACrF;EACA,OACEZ,kBAAA,CAAmBa,GAAG,CAAC,CAACC,iBAAA,EAAmBC,CAAA;IACzC,IAAID,iBAAA,CAAkBjB,IAAI,KAAK,aAAa;MAC1C,OAAOmB,oBAAA,CAAqBvB,UAAA,EAAYqB,iBAAA,EAAmBnB,KAAA;IAC7D;IACA,IAAImB,iBAAA,CAAkBjB,IAAI,KAAK,UAAU,CAACiB,iBAAA,CAAkBjB,IAAI,EAAE;MAChE,OAAOoB,eAAA,CAAgBH,iBAAA;IACzB;IAEA,MAAMJ,SAAA,GAAYjB,UAAA,CAAWgB,IAAI,CAAEC,SAAA,IACjCA,SAAA,CAAUC,SAAS,CAACC,QAAQ,CAACE,iBAAA,CAAkBjB,IAAI;IAGrD,IAAIa,SAAA,EAAW;MACb,OAAOA,SAAA,CAAUA,SAAS,CAAC;QACzBQ,UAAA,EAAYH,CAAA;QACZtB,UAAA;QACAqB,iBAAA;QACAZ,cAAA;QACAP;MACF;IACF;IAEA,IAAI,CAACA,KAAA,EAAO;MACVwB,OAAA,CAAQC,IAAI,CACV,gEAAgEN,iBAAA,CAAkBjB,IAAI;IAE1F;IAEA,OAAOW,gBAAA,EAAkBE,SAAA,CAAU;MACjCQ,UAAA,EAAYH,CAAA;MACZtB,UAAA;MACAqB,iBAAA;MACAZ,cAAA;MACAP;IACF;EACF,MAAM,EAAE;AAEZ;AAEA,OAAO,SAASqB,qBACdvB,UAAwC,EACxC4B,IAA2B,EAC3B1B,KAAe;EAEf,OAAO;IACL,GAAG0B,IAAI;IACPxB,IAAA,EAAM;IAENC,QAAA,EAAUC,kCAAA,CAAmC;MAC3CN,UAAA;MACAO,kBAAA,EAAoBqB,IAAC,CAAavB,QAAQ,IAAI,EAAE;MAChDI,cAAA,EAAgB;MAChBP;IACF;IACAW,OAAA,EAAS;EACX;AACF;AACA,OAAO,SAASW,gBAAgBI,IAA2B;EACzD,OAAOA,IAAA;AACT","ignoreList":[]}
@@ -21,7 +21,7 @@ export declare class UnknownConvertedNode extends DecoratorNode<JSX.Element> {
21
21
  canInsertTextAfter(): true;
22
22
  canInsertTextBefore(): true;
23
23
  createDOM(config: EditorConfig): HTMLElement;
24
- decorate(): JSX.Element | null;
24
+ decorate(): JSX.Element;
25
25
  exportJSON(): SerializedUnknownConvertedNode;
26
26
  isInline(): boolean;
27
27
  updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD;IACE,IAAI,EAAE,wBAAwB,CAAA;CAC/B,EACD,qBAAqB,CACtB,CAAA;AAQD,oBAAoB;AACpB,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;IAClE,MAAM,EAAE,wBAAwB,CAAA;gBAEpB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAAE,IAAI,EAAE,wBAAwB,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE;IAK5E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,GAAG,oBAAoB;IAO9D,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,8BAA8B,GAAG,oBAAoB;IAKvF,kBAAkB,IAAI,IAAI;IAI1B,mBAAmB,IAAI,IAAI;IAI3B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW;IAM5C,QAAQ,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI;IAI9B,UAAU,IAAI,8BAA8B;IAU5C,QAAQ,IAAI,OAAO;IAInB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO;CAGrE;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,GACL,EAAE;IACD,IAAI,EAAE,wBAAwB,CAAA;CAC/B,GAAG,oBAAoB,CAIvB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,oBAAoB,CAE9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD;IACE,IAAI,EAAE,wBAAwB,CAAA;CAC/B,EACD,qBAAqB,CACtB,CAAA;AAQD,oBAAoB;AACpB,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;IAClE,MAAM,EAAE,wBAAwB,CAAA;gBAEpB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAAE,IAAI,EAAE,wBAAwB,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE;IAK5E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,GAAG,oBAAoB;IAO9D,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,8BAA8B,GAAG,oBAAoB;IAKvF,kBAAkB,IAAI,IAAI;IAI1B,mBAAmB,IAAI,IAAI;IAI3B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW;IAM5C,QAAQ,IAAI,GAAG,CAAC,OAAO;IAIvB,UAAU,IAAI,8BAA8B;IAU5C,QAAQ,IAAI,OAAO;IAInB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO;CAGrE;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,GACL,EAAE;IACD,IAAI,EAAE,wBAAwB,CAAA;CAC/B,GAAG,oBAAoB,CAIvB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,oBAAoB,CAE9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["addClassNamesToElement","DecoratorNode","React","Component","lazy","then","module","default","UnknownConvertedNodeComponent","UnknownConvertedNode","__data","constructor","data","key","clone","node","__key","getType","importJSON","serializedNode","$createUnknownConvertedNode","canInsertTextAfter","canInsertTextBefore","createDOM","config","element","document","createElement","decorate","_jsx","exportJSON","type","version","isInline","updateDOM","prevNode","dom","$isUnknownConvertedNode"],"sources":["../../../../../../src/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.tsx"],"sourcesContent":["import type { EditorConfig, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical'\nimport type { JSX } from 'react'\n\nimport { addClassNamesToElement } from '@lexical/utils'\nimport { DecoratorNode } from 'lexical'\nimport * as React from 'react'\n\nexport type UnknownConvertedNodeData = {\n nodeData: unknown\n nodeType: string\n}\n\nexport type SerializedUnknownConvertedNode = Spread<\n {\n data: UnknownConvertedNodeData\n },\n SerializedLexicalNode\n>\n\nconst Component = React.lazy(() =>\n import('./Component.js').then((module) => ({\n default: module.UnknownConvertedNodeComponent,\n })),\n)\n\n/** @noInheritDoc */\nexport class UnknownConvertedNode extends DecoratorNode<JSX.Element> {\n __data: UnknownConvertedNodeData\n\n constructor({ data, key }: { data: UnknownConvertedNodeData; key?: NodeKey }) {\n super(key)\n this.__data = data\n }\n\n static clone(node: UnknownConvertedNode): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data: node.__data,\n key: node.__key,\n })\n }\n\n static getType(): string {\n return 'unknownConverted'\n }\n\n static importJSON(serializedNode: SerializedUnknownConvertedNode): UnknownConvertedNode {\n const node = $createUnknownConvertedNode({ data: serializedNode.data })\n return node\n }\n\n canInsertTextAfter(): true {\n return true\n }\n\n canInsertTextBefore(): true {\n return true\n }\n\n createDOM(config: EditorConfig): HTMLElement {\n const element = document.createElement('span')\n addClassNamesToElement(element, 'unknownConverted')\n return element\n }\n\n decorate(): JSX.Element | null {\n return <Component data={this.__data} />\n }\n\n exportJSON(): SerializedUnknownConvertedNode {\n return {\n type: this.getType(),\n data: this.__data,\n version: 1,\n }\n }\n\n // Mutation\n\n isInline(): boolean {\n return true\n }\n\n updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean {\n return false\n }\n}\n\nexport function $createUnknownConvertedNode({\n data,\n}: {\n data: UnknownConvertedNodeData\n}): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data,\n })\n}\n\nexport function $isUnknownConvertedNode(\n node: LexicalNode | null | undefined,\n): node is UnknownConvertedNode {\n return node instanceof UnknownConvertedNode\n}\n"],"mappings":";AAGA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AAC9B,YAAYC,KAAA,MAAW;AAcvB,MAAMC,SAAA,gBAAYD,KAAA,CAAME,IAAI,CAAC,MAC3B,MAAM,CAAC,kBAAkBC,IAAI,CAAEC,MAAA,KAAY;EACzCC,OAAA,EAASD,MAAA,CAAOE;AAClB;AAGF;AACA,OAAO,MAAMC,oBAAA,SAA6BR,aAAA;EACxCS,MAAA;EAEAC,YAAY;IAAEC,IAAI;IAAEC;EAAG,CAAqD,EAAE;IAC5E,KAAK,CAACA,GAAA;IACN,IAAI,CAACH,MAAM,GAAGE,IAAA;EAChB;EAEA,OAAOE,MAAMC,IAA0B,EAAwB;IAC7D,OAAO,IAAIN,oBAAA,CAAqB;MAC9BG,IAAA,EAAMG,IAAA,CAAKL,MAAM;MACjBG,GAAA,EAAKE,IAAA,CAAKC;IACZ;EACF;EAEA,OAAOC,QAAA,EAAkB;IACvB,OAAO;EACT;EAEA,OAAOC,WAAWC,cAA8C,EAAwB;IACtF,MAAMJ,IAAA,GAAOK,2BAAA,CAA4B;MAAER,IAAA,EAAMO,cAAA,CAAeP;IAAK;IACrE,OAAOG,IAAA;EACT;EAEAM,mBAAA,EAA2B;IACzB,OAAO;EACT;EAEAC,oBAAA,EAA4B;IAC1B,OAAO;EACT;EAEAC,UAAUC,MAAoB,EAAe;IAC3C,MAAMC,OAAA,GAAUC,QAAA,CAASC,aAAa,CAAC;IACvC3B,sBAAA,CAAuByB,OAAA,EAAS;IAChC,OAAOA,OAAA;EACT;EAEAG,SAAA,EAA+B;IAC7B,oBAAOC,IAAA,CAAC1B,SAAA;MAAUS,IAAA,EAAM,IAAI,CAACF;;EAC/B;EAEAoB,WAAA,EAA6C;IAC3C,OAAO;MACLC,IAAA,EAAM,IAAI,CAACd,OAAO;MAClBL,IAAA,EAAM,IAAI,CAACF,MAAM;MACjBsB,OAAA,EAAS;IACX;EACF;EAEA;EAEAC,SAAA,EAAoB;IAClB,OAAO;EACT;EAEAC,UAAUC,QAA8B,EAAEC,GAAgB,EAAW;IACnE,OAAO;EACT;AACF;AAEA,OAAO,SAAShB,4BAA4B;EAC1CR;AAAI,CAGL;EACC,OAAO,IAAIH,oBAAA,CAAqB;IAC9BG;EACF;AACF;AAEA,OAAO,SAASyB,wBACdtB,IAAoC;EAEpC,OAAOA,IAAA,YAAgBN,oBAAA;AACzB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["addClassNamesToElement","DecoratorNode","React","Component","lazy","then","module","default","UnknownConvertedNodeComponent","UnknownConvertedNode","__data","constructor","data","key","clone","node","__key","getType","importJSON","serializedNode","$createUnknownConvertedNode","canInsertTextAfter","canInsertTextBefore","createDOM","config","element","document","createElement","decorate","_jsx","exportJSON","type","version","isInline","updateDOM","prevNode","dom","$isUnknownConvertedNode"],"sources":["../../../../../../src/features/migrations/lexicalPluginToLexical/nodes/unknownConvertedNode/index.tsx"],"sourcesContent":["import type { EditorConfig, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical'\nimport type { JSX } from 'react'\n\nimport { addClassNamesToElement } from '@lexical/utils'\nimport { DecoratorNode } from 'lexical'\nimport * as React from 'react'\n\nexport type UnknownConvertedNodeData = {\n nodeData: unknown\n nodeType: string\n}\n\nexport type SerializedUnknownConvertedNode = Spread<\n {\n data: UnknownConvertedNodeData\n },\n SerializedLexicalNode\n>\n\nconst Component = React.lazy(() =>\n import('./Component.js').then((module) => ({\n default: module.UnknownConvertedNodeComponent,\n })),\n)\n\n/** @noInheritDoc */\nexport class UnknownConvertedNode extends DecoratorNode<JSX.Element> {\n __data: UnknownConvertedNodeData\n\n constructor({ data, key }: { data: UnknownConvertedNodeData; key?: NodeKey }) {\n super(key)\n this.__data = data\n }\n\n static clone(node: UnknownConvertedNode): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data: node.__data,\n key: node.__key,\n })\n }\n\n static getType(): string {\n return 'unknownConverted'\n }\n\n static importJSON(serializedNode: SerializedUnknownConvertedNode): UnknownConvertedNode {\n const node = $createUnknownConvertedNode({ data: serializedNode.data })\n return node\n }\n\n canInsertTextAfter(): true {\n return true\n }\n\n canInsertTextBefore(): true {\n return true\n }\n\n createDOM(config: EditorConfig): HTMLElement {\n const element = document.createElement('span')\n addClassNamesToElement(element, 'unknownConverted')\n return element\n }\n\n decorate(): JSX.Element {\n return <Component data={this.__data} />\n }\n\n exportJSON(): SerializedUnknownConvertedNode {\n return {\n type: this.getType(),\n data: this.__data,\n version: 1,\n }\n }\n\n // Mutation\n\n isInline(): boolean {\n return true\n }\n\n updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean {\n return false\n }\n}\n\nexport function $createUnknownConvertedNode({\n data,\n}: {\n data: UnknownConvertedNodeData\n}): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data,\n })\n}\n\nexport function $isUnknownConvertedNode(\n node: LexicalNode | null | undefined,\n): node is UnknownConvertedNode {\n return node instanceof UnknownConvertedNode\n}\n"],"mappings":";AAGA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AAC9B,YAAYC,KAAA,MAAW;AAcvB,MAAMC,SAAA,gBAAYD,KAAA,CAAME,IAAI,CAAC,MAC3B,MAAM,CAAC,kBAAkBC,IAAI,CAAEC,MAAA,KAAY;EACzCC,OAAA,EAASD,MAAA,CAAOE;AAClB;AAGF;AACA,OAAO,MAAMC,oBAAA,SAA6BR,aAAA;EACxCS,MAAA;EAEAC,YAAY;IAAEC,IAAI;IAAEC;EAAG,CAAqD,EAAE;IAC5E,KAAK,CAACA,GAAA;IACN,IAAI,CAACH,MAAM,GAAGE,IAAA;EAChB;EAEA,OAAOE,MAAMC,IAA0B,EAAwB;IAC7D,OAAO,IAAIN,oBAAA,CAAqB;MAC9BG,IAAA,EAAMG,IAAA,CAAKL,MAAM;MACjBG,GAAA,EAAKE,IAAA,CAAKC;IACZ;EACF;EAEA,OAAOC,QAAA,EAAkB;IACvB,OAAO;EACT;EAEA,OAAOC,WAAWC,cAA8C,EAAwB;IACtF,MAAMJ,IAAA,GAAOK,2BAAA,CAA4B;MAAER,IAAA,EAAMO,cAAA,CAAeP;IAAK;IACrE,OAAOG,IAAA;EACT;EAEAM,mBAAA,EAA2B;IACzB,OAAO;EACT;EAEAC,oBAAA,EAA4B;IAC1B,OAAO;EACT;EAEAC,UAAUC,MAAoB,EAAe;IAC3C,MAAMC,OAAA,GAAUC,QAAA,CAASC,aAAa,CAAC;IACvC3B,sBAAA,CAAuByB,OAAA,EAAS;IAChC,OAAOA,OAAA;EACT;EAEAG,SAAA,EAAwB;IACtB,oBAAOC,IAAA,CAAC1B,SAAA;MAAUS,IAAA,EAAM,IAAI,CAACF;;EAC/B;EAEAoB,WAAA,EAA6C;IAC3C,OAAO;MACLC,IAAA,EAAM,IAAI,CAACd,OAAO;MAClBL,IAAA,EAAM,IAAI,CAACF,MAAM;MACjBsB,OAAA,EAAS;IACX;EACF;EAEA;EAEAC,SAAA,EAAoB;IAClB,OAAO;EACT;EAEAC,UAAUC,QAA8B,EAAEC,GAAgB,EAAW;IACnE,OAAO;EACT;AACF;AAEA,OAAO,SAAShB,4BAA4B;EAC1CR;AAAI,CAGL;EACC,OAAO,IAAIH,oBAAA,CAAqB;IAC9BG;EACF;AACF;AAEA,OAAO,SAASyB,wBACdtB,IAAoC;EAEpC,OAAOA,IAAA,YAAgBN,oBAAA;AACzB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateBlockquoteConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/blockquote/converter.ts"],"sourcesContent":["import type { SerializedQuoteNode } from '../../../../../blockquote/server/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateBlockquoteConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'quote',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'quote',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n } as const as SerializedQuoteNode\n },\n nodeTypes: ['blockquote'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,wBAAA,GAA+C;EAC1DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateBlockquoteConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/blockquote/converter.ts"],"sourcesContent":["import type { SerializedQuoteNode } from '../../../../../blockquote/server/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateBlockquoteConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'quote',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'quote',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n } as const as SerializedQuoteNode\n },\n nodeTypes: ['blockquote'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,wBAAA,GAA+C;EAC1DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateHeadingConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/heading/converter.ts"],"sourcesContent":["import type { SerializedHeadingNode } from '../../../../../heading/server/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateHeadingConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'heading',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'heading',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n tag: slateNode.type as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6', // Slate puts the tag (h1 / h2 / ...) inside of node.type\n version: 1,\n } as const as SerializedHeadingNode\n },\n nodeTypes: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,qBAAA,GAA4C;EACvDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,GAAA,EAAKT,SAAA,CAAUC,IAAI;MACnBS,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM;AAC5C","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateHeadingConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/heading/converter.ts"],"sourcesContent":["import type { SerializedHeadingNode } from '../../../../../heading/server/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateHeadingConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'heading',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'heading',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n tag: slateNode.type as 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6', // Slate puts the tag (h1 / h2 / ...) inside of node.type\n version: 1,\n } as const as SerializedHeadingNode\n },\n nodeTypes: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,qBAAA,GAA4C;EACvDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,GAAA,EAAKT,SAAA,CAAUC,IAAI;MACnBS,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM;AAC5C","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateLinkConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","fields","doc","linkType","newTab","url","undefined","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/link/converter.ts"],"sourcesContent":["import type { SerializedLinkNode } from '../../../../../link/nodes/types.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateLinkConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'link',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'link',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n fields: {\n ...(slateNode.fields || {}),\n doc: slateNode.doc || null,\n linkType: slateNode.linkType || 'custom',\n newTab: slateNode.newTab || false,\n url: (slateNode.linkType || 'custom') === 'custom' ? slateNode.url || 'https' : undefined, // can be undefined only if linkType is not custom, otherwise: validation error\n },\n format: '',\n indent: 0,\n version: 2,\n } as const as SerializedLinkNode\n },\n nodeTypes: ['link'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,kBAAA,GAAyC;EACpDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;QACN,IAAIP,SAAA,CAAUO,MAAM,IAAI,CAAC,CAAC;QAC1BC,GAAA,EAAKR,SAAA,CAAUQ,GAAG,IAAI;QACtBC,QAAA,EAAUT,SAAA,CAAUS,QAAQ,IAAI;QAChCC,MAAA,EAAQV,SAAA,CAAUU,MAAM,IAAI;QAC5BC,GAAA,EAAK,CAACX,SAAA,CAAUS,QAAQ,IAAI,QAAO,MAAO,WAAWT,SAAA,CAAUW,GAAG,IAAI,UAAUC;MAClF;MACAC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateLinkConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","fields","doc","linkType","newTab","url","undefined","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/link/converter.ts"],"sourcesContent":["import type { SerializedLinkNode } from '../../../../../link/nodes/types.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateLinkConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'link',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'link',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n fields: {\n ...(slateNode.fields || {}),\n doc: slateNode.doc || null,\n linkType: slateNode.linkType || 'custom',\n newTab: slateNode.newTab || false,\n url: (slateNode.linkType || 'custom') === 'custom' ? slateNode.url || 'https' : undefined, // can be undefined only if linkType is not custom, otherwise: validation error\n },\n format: '',\n indent: 0,\n version: 2,\n } as const as SerializedLinkNode\n },\n nodeTypes: ['link'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,kBAAA,GAAyC;EACpDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;QACN,IAAIP,SAAA,CAAUO,MAAM,IAAI,CAAC,CAAC;QAC1BC,GAAA,EAAKR,SAAA,CAAUQ,GAAG,IAAI;QACtBC,QAAA,EAAUT,SAAA,CAAUS,QAAQ,IAAI;QAChCC,MAAA,EAAQV,SAAA,CAAUU,MAAM,IAAI;QAC5BC,GAAA,EAAK,CAACX,SAAA,CAAUS,QAAQ,IAAI,QAAO,MAAO,WAAWT,SAAA,CAAUW,GAAG,IAAI,UAAUC;MAClF;MACAC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateListItemConverter","converter","childIndex","converters","slateNode","type","checked","undefined","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","value","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/listItem/converter.ts"],"sourcesContent":["import type { SerializedListItemNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateListItemConverter: SlateNodeConverter = {\n converter({ childIndex, converters, slateNode }) {\n return {\n type: 'listitem',\n checked: undefined,\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'listitem',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n value: childIndex + 1,\n version: 1,\n } as const as SerializedListItemNode\n },\n nodeTypes: ['li'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,sBAAA,GAA6C;EACxDC,UAAU;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IAC7C,OAAO;MACLC,IAAA,EAAM;MACNC,OAAA,EAASC,SAAA;MACTC,QAAA,EAAUT,0BAAA,CAA2B;QACnCU,oBAAA,EAAsB;QACtBN,UAAA;QACAO,cAAA,EAAgB;QAChBC,UAAA,EAAYP,SAAA,CAAUI;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,KAAA,EAAOb,UAAA,GAAa;MACpBc,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateListItemConverter","converter","childIndex","converters","slateNode","type","checked","undefined","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","value","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/listItem/converter.ts"],"sourcesContent":["import type { SerializedListItemNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateListItemConverter: SlateNodeConverter = {\n converter({ childIndex, converters, slateNode }) {\n return {\n type: 'listitem',\n checked: undefined,\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'listitem',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n value: childIndex + 1,\n version: 1,\n } as const as SerializedListItemNode\n },\n nodeTypes: ['li'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,sBAAA,GAA6C;EACxDC,UAAU;IAAEC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IAC7C,OAAO;MACLC,IAAA,EAAM;MACNC,OAAA,EAASC,SAAA;MACTC,QAAA,EAAUT,0BAAA,CAA2B;QACnCU,oBAAA,EAAsB;QACtBN,UAAA;QACAO,cAAA,EAAgB;QAChBC,UAAA,EAAYP,SAAA,CAAUI;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,KAAA,EAAOb,UAAA,GAAa;MACpBc,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateOrderedListConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","listType","start","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/orderedList/converter.ts"],"sourcesContent":["import type { SerializedListNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateOrderedListConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'list',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'list',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n listType: 'number',\n start: 1,\n tag: 'ol',\n version: 1,\n } as const as SerializedListNode\n },\n nodeTypes: ['ol'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,yBAAA,GAAgD;EAC3DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,QAAA,EAAU;MACVC,KAAA,EAAO;MACPC,GAAA,EAAK;MACLC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateOrderedListConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","listType","start","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/orderedList/converter.ts"],"sourcesContent":["import type { SerializedListNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateOrderedListConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'list',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'list',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n listType: 'number',\n start: 1,\n tag: 'ol',\n version: 1,\n } as const as SerializedListNode\n },\n nodeTypes: ['ol'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,yBAAA,GAAgD;EAC3DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,QAAA,EAAU;MACVC,KAAA,EAAO;MACPC,GAAA,EAAK;MACLC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateUnknownConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","data","nodeData","nodeType","direction","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/unknown/converter.ts"],"sourcesContent":["import type { SerializedUnknownConvertedNode } from '../../../nodes/unknownConvertedNode/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateUnknownConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'unknownConverted',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'unknownConverted',\n slateNodes: slateNode.children,\n }),\n data: {\n nodeData: slateNode,\n nodeType: slateNode.type,\n },\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n } as const as SerializedUnknownConvertedNode\n },\n nodeTypes: ['unknown'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,qBAAA,GAA4C;EACvDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,IAAA,EAAM;QACJC,QAAA,EAAUP,SAAA;QACVQ,QAAA,EAAUR,SAAA,CAAUC;MACtB;MACAQ,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateUnknownConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","data","nodeData","nodeType","direction","format","indent","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/unknown/converter.ts"],"sourcesContent":["import type { SerializedUnknownConvertedNode } from '../../../nodes/unknownConvertedNode/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateUnknownConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'unknownConverted',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'unknownConverted',\n slateNodes: slateNode.children!,\n }),\n data: {\n nodeData: slateNode,\n nodeType: slateNode.type,\n },\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n } as const as SerializedUnknownConvertedNode\n },\n nodeTypes: ['unknown'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,qBAAA,GAA4C;EACvDC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,IAAA,EAAM;QACJC,QAAA,EAAUP,SAAA;QACVQ,QAAA,EAAUR,SAAA,CAAUC;MACtB;MACAQ,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateUnorderedListConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","listType","start","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/unorderedList/converter.ts"],"sourcesContent":["import type { SerializedListNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateUnorderedListConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'list',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'list',\n slateNodes: slateNode.children,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n listType: 'bullet',\n start: 1,\n tag: 'ul',\n version: 1,\n } as const as SerializedListNode\n },\n nodeTypes: ['ul'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,2BAAA,GAAkD;EAC7DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,QAAA,EAAU;MACVC,KAAA,EAAO;MACPC,GAAA,EAAK;MACLC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
1
+ {"version":3,"file":"converter.js","names":["convertSlateNodesToLexical","SlateUnorderedListConverter","converter","converters","slateNode","type","children","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","listType","start","tag","version","nodeTypes"],"sources":["../../../../../../../src/features/migrations/slateToLexical/converter/converters/unorderedList/converter.ts"],"sourcesContent":["import type { SerializedListNode } from '../../../../../lists/plugin/index.js'\nimport type { SlateNodeConverter } from '../../types.js'\n\nimport { convertSlateNodesToLexical } from '../../index.js'\n\nexport const SlateUnorderedListConverter: SlateNodeConverter = {\n converter({ converters, slateNode }) {\n return {\n type: 'list',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'list',\n slateNodes: slateNode.children!,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n listType: 'bullet',\n start: 1,\n tag: 'ul',\n version: 1,\n } as const as SerializedListNode\n },\n nodeTypes: ['ul'],\n}\n"],"mappings":"AAGA,SAASA,0BAA0B,QAAQ;AAE3C,OAAO,MAAMC,2BAAA,GAAkD;EAC7DC,UAAU;IAAEC,UAAU;IAAEC;EAAS,CAAE;IACjC,OAAO;MACLC,IAAA,EAAM;MACNC,QAAA,EAAUN,0BAAA,CAA2B;QACnCO,oBAAA,EAAsB;QACtBJ,UAAA;QACAK,cAAA,EAAgB;QAChBC,UAAA,EAAYL,SAAA,CAAUE;MACxB;MACAI,SAAA,EAAW;MACXC,MAAA,EAAQ;MACRC,MAAA,EAAQ;MACRC,QAAA,EAAU;MACVC,KAAA,EAAO;MACPC,GAAA,EAAK;MACLC,OAAA,EAAS;IACX;EACF;EACAC,SAAA,EAAW,CAAC;AACd","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/migrations/slateToLexical/converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAI/D,wBAAgB,qBAAqB,CAAC,EACpC,UAAU,EACV,SAAS,GACV,EAAE;IACD,UAAU,EAAE,kBAAkB,EAAE,CAAA;IAChC,SAAS,EAAE,SAAS,EAAE,CAAA;CACvB,GAAG,qBAAqB,CAgBxB;AAED,wBAAgB,0BAA0B,CAAC,EACzC,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,UAAU,GACX,EAAE;IACD,oBAAoB,EAAE,OAAO,CAAA;IAC7B,UAAU,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;IAC5C;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB,GAAG,qBAAqB,EAAE,CAmC1B;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,kBAAkB,EAAE,EAChC,IAAI,EAAE,SAAS,GACd,uBAAuB,CAgBzB;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAUnE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAwB3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/migrations/slateToLexical/converter/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAI/D,wBAAgB,qBAAqB,CAAC,EACpC,UAAU,EACV,SAAS,GACV,EAAE;IACD,UAAU,EAAE,kBAAkB,EAAE,CAAA;IAChC,SAAS,EAAE,SAAS,EAAE,CAAA;CACvB,GAAG,qBAAqB,CAgBxB;AAED,wBAAgB,0BAA0B,CAAC,EACzC,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,UAAU,GACX,EAAE;IACD,oBAAoB,EAAE,OAAO,CAAA;IAC7B,UAAU,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;IAC5C;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,SAAS,EAAE,CAAA;CACxB,GAAG,qBAAqB,EAAE,CAsC1B;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,kBAAkB,EAAE,EAChC,IAAI,EAAE,SAAS,GACd,uBAAuB,CAgBzB;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAUnE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAwB3D"}
@@ -29,6 +29,7 @@ export function convertSlateNodesToLexical({
29
29
  return [];
30
30
  }
31
31
  const unknownConverter = converters.find(converter => converter.nodeTypes.includes('unknown'));
32
+ // @ts-expect-error - vestiges of the migration to strict mode. Probably not important enough in this file to fix
32
33
  return slateNodes.map((slateNode, i) => {
33
34
  if (!('type' in slateNode)) {
34
35
  if (canContainParagraphs) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["NodeFormat","convertSlateToLexical","converters","slateData","root","type","children","convertSlateNodesToLexical","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","version","length","unknownConverter","find","converter","nodeTypes","includes","map","slateNode","i","convertParagraphNode","convertTextNode","childIndex","console","warn","node","textFormat","textStyle","detail","convertNodeToFormat","mode","style","text","bold","IS_BOLD","italic","IS_ITALIC","strikethrough","IS_STRIKETHROUGH","underline","IS_UNDERLINE","subscript","IS_SUBSCRIPT","superscript","IS_SUPERSCRIPT","code","IS_CODE"],"sources":["../../../../../src/features/migrations/slateToLexical/converter/index.ts"],"sourcesContent":["import type {\n SerializedEditorState,\n SerializedLexicalNode,\n SerializedParagraphNode,\n SerializedTextNode,\n} from 'lexical'\n\nimport type { SlateNode, SlateNodeConverter } from './types.js'\n\nimport { NodeFormat } from '../../../../lexical/utils/nodeFormat.js'\n\nexport function convertSlateToLexical({\n converters,\n slateData,\n}: {\n converters: SlateNodeConverter[]\n slateData: SlateNode[]\n}): SerializedEditorState {\n return {\n root: {\n type: 'root',\n children: convertSlateNodesToLexical({\n canContainParagraphs: true,\n converters,\n parentNodeType: 'root',\n slateNodes: slateData,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n },\n }\n}\n\nexport function convertSlateNodesToLexical({\n canContainParagraphs,\n converters,\n parentNodeType,\n slateNodes,\n}: {\n canContainParagraphs: boolean\n converters: SlateNodeConverter[] | undefined\n /**\n * Type of the parent lexical node (not the type of the original, parent slate type)\n */\n parentNodeType: string\n slateNodes: SlateNode[]\n}): SerializedLexicalNode[] {\n if (!converters?.length || !slateNodes?.length) {\n return []\n }\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n return (\n slateNodes.map((slateNode, i) => {\n if (!('type' in slateNode)) {\n if (canContainParagraphs) {\n // This is a paragraph node. They do not have a type property in Slate\n return convertParagraphNode(converters, slateNode)\n } else {\n // This is a simple text node. canContainParagraphs may be false if this is nested inside a paragraph already, since paragraphs cannot contain paragraphs\n return convertTextNode(slateNode)\n }\n }\n if (slateNode.type === 'p') {\n return convertParagraphNode(converters, slateNode)\n }\n\n const converter = converters.find((converter) => converter.nodeTypes.includes(slateNode.type))\n\n if (converter) {\n return converter.converter({ childIndex: i, converters, parentNodeType, slateNode })\n }\n\n console.warn('slateToLexical > No converter found for node type: ' + slateNode.type)\n return unknownConverter?.converter({\n childIndex: i,\n converters,\n parentNodeType,\n slateNode,\n })\n }) || []\n )\n}\n\nexport function convertParagraphNode(\n converters: SlateNodeConverter[],\n node: SlateNode,\n): SerializedParagraphNode {\n return {\n type: 'paragraph',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'paragraph',\n slateNodes: node.children || [],\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n textFormat: 0,\n textStyle: '',\n version: 1,\n }\n}\nexport function convertTextNode(node: SlateNode): SerializedTextNode {\n return {\n type: 'text',\n detail: 0,\n format: convertNodeToFormat(node),\n mode: 'normal',\n style: '',\n text: node.text,\n version: 1,\n }\n}\n\nexport function convertNodeToFormat(node: SlateNode): number {\n let format = 0\n if (node.bold) {\n format = format | NodeFormat.IS_BOLD\n }\n if (node.italic) {\n format = format | NodeFormat.IS_ITALIC\n }\n if (node.strikethrough) {\n format = format | NodeFormat.IS_STRIKETHROUGH\n }\n if (node.underline) {\n format = format | NodeFormat.IS_UNDERLINE\n }\n if (node.subscript) {\n format = format | NodeFormat.IS_SUBSCRIPT\n }\n if (node.superscript) {\n format = format | NodeFormat.IS_SUPERSCRIPT\n }\n if (node.code) {\n format = format | NodeFormat.IS_CODE\n }\n return format\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["NodeFormat","convertSlateToLexical","converters","slateData","root","type","children","convertSlateNodesToLexical","canContainParagraphs","parentNodeType","slateNodes","direction","format","indent","version","length","unknownConverter","find","converter","nodeTypes","includes","map","slateNode","i","convertParagraphNode","convertTextNode","childIndex","console","warn","node","textFormat","textStyle","detail","convertNodeToFormat","mode","style","text","bold","IS_BOLD","italic","IS_ITALIC","strikethrough","IS_STRIKETHROUGH","underline","IS_UNDERLINE","subscript","IS_SUBSCRIPT","superscript","IS_SUPERSCRIPT","code","IS_CODE"],"sources":["../../../../../src/features/migrations/slateToLexical/converter/index.ts"],"sourcesContent":["import type {\n SerializedEditorState,\n SerializedLexicalNode,\n SerializedParagraphNode,\n SerializedTextNode,\n} from 'lexical'\n\nimport type { SlateNode, SlateNodeConverter } from './types.js'\n\nimport { NodeFormat } from '../../../../lexical/utils/nodeFormat.js'\n\nexport function convertSlateToLexical({\n converters,\n slateData,\n}: {\n converters: SlateNodeConverter[]\n slateData: SlateNode[]\n}): SerializedEditorState {\n return {\n root: {\n type: 'root',\n children: convertSlateNodesToLexical({\n canContainParagraphs: true,\n converters,\n parentNodeType: 'root',\n slateNodes: slateData,\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n version: 1,\n },\n }\n}\n\nexport function convertSlateNodesToLexical({\n canContainParagraphs,\n converters,\n parentNodeType,\n slateNodes,\n}: {\n canContainParagraphs: boolean\n converters: SlateNodeConverter[] | undefined\n /**\n * Type of the parent lexical node (not the type of the original, parent slate type)\n */\n parentNodeType: string\n slateNodes: SlateNode[]\n}): SerializedLexicalNode[] {\n if (!converters?.length || !slateNodes?.length) {\n return []\n }\n const unknownConverter = converters.find((converter) => converter.nodeTypes.includes('unknown'))\n // @ts-expect-error - vestiges of the migration to strict mode. Probably not important enough in this file to fix\n return (\n slateNodes.map((slateNode, i) => {\n if (!('type' in slateNode)) {\n if (canContainParagraphs) {\n // This is a paragraph node. They do not have a type property in Slate\n return convertParagraphNode(converters, slateNode)\n } else {\n // This is a simple text node. canContainParagraphs may be false if this is nested inside a paragraph already, since paragraphs cannot contain paragraphs\n return convertTextNode(slateNode)\n }\n }\n if (slateNode.type === 'p') {\n return convertParagraphNode(converters, slateNode)\n }\n\n const converter = converters.find((converter) =>\n converter.nodeTypes.includes(slateNode.type!),\n )\n\n if (converter) {\n return converter.converter({ childIndex: i, converters, parentNodeType, slateNode })\n }\n\n console.warn('slateToLexical > No converter found for node type: ' + slateNode.type)\n return unknownConverter?.converter({\n childIndex: i,\n converters,\n parentNodeType,\n slateNode,\n })\n }) || []\n )\n}\n\nexport function convertParagraphNode(\n converters: SlateNodeConverter[],\n node: SlateNode,\n): SerializedParagraphNode {\n return {\n type: 'paragraph',\n children: convertSlateNodesToLexical({\n canContainParagraphs: false,\n converters,\n parentNodeType: 'paragraph',\n slateNodes: node.children || [],\n }),\n direction: 'ltr',\n format: '',\n indent: 0,\n textFormat: 0,\n textStyle: '',\n version: 1,\n }\n}\nexport function convertTextNode(node: SlateNode): SerializedTextNode {\n return {\n type: 'text',\n detail: 0,\n format: convertNodeToFormat(node),\n mode: 'normal',\n style: '',\n text: node.text,\n version: 1,\n }\n}\n\nexport function convertNodeToFormat(node: SlateNode): number {\n let format = 0\n if (node.bold) {\n format = format | NodeFormat.IS_BOLD\n }\n if (node.italic) {\n format = format | NodeFormat.IS_ITALIC\n }\n if (node.strikethrough) {\n format = format | NodeFormat.IS_STRIKETHROUGH\n }\n if (node.underline) {\n format = format | NodeFormat.IS_UNDERLINE\n }\n if (node.subscript) {\n format = format | NodeFormat.IS_SUBSCRIPT\n }\n if (node.superscript) {\n format = format | NodeFormat.IS_SUPERSCRIPT\n }\n if (node.code) {\n format = format | NodeFormat.IS_CODE\n }\n return format\n}\n"],"mappings":"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","ignoreList":[]}
@@ -21,7 +21,7 @@ export declare class UnknownConvertedNode extends DecoratorNode<JSX.Element> {
21
21
  canInsertTextAfter(): true;
22
22
  canInsertTextBefore(): true;
23
23
  createDOM(config: EditorConfig): HTMLElement;
24
- decorate(): JSX.Element | null;
24
+ decorate(): JSX.Element;
25
25
  exportJSON(): SerializedUnknownConvertedNode;
26
26
  isInline(): boolean;
27
27
  updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD;IACE,IAAI,EAAE,wBAAwB,CAAA;CAC/B,EACD,qBAAqB,CACtB,CAAA;AAQD,oBAAoB;AACpB,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;IAClE,MAAM,EAAE,wBAAwB,CAAA;gBAEpB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAAE,IAAI,EAAE,wBAAwB,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE;IAK5E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,GAAG,oBAAoB;IAO9D,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,8BAA8B,GAAG,oBAAoB;IAKvF,kBAAkB,IAAI,IAAI;IAI1B,mBAAmB,IAAI,IAAI;IAI3B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW;IAM5C,QAAQ,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI;IAI9B,UAAU,IAAI,8BAA8B;IAU5C,QAAQ,IAAI,OAAO;IAInB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO;CAGrE;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,GACL,EAAE;IACD,IAAI,EAAE,wBAAwB,CAAA;CAC/B,GAAG,oBAAoB,CAIvB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,oBAAoB,CAE9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,MAAM,CACjD;IACE,IAAI,EAAE,wBAAwB,CAAA;CAC/B,EACD,qBAAqB,CACtB,CAAA;AAQD,oBAAoB;AACpB,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;IAClE,MAAM,EAAE,wBAAwB,CAAA;gBAEpB,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAAE,IAAI,EAAE,wBAAwB,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE;IAK5E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,GAAG,oBAAoB;IAO9D,MAAM,CAAC,OAAO,IAAI,MAAM;IAIxB,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,8BAA8B,GAAG,oBAAoB;IAKvF,kBAAkB,IAAI,IAAI;IAI1B,mBAAmB,IAAI,IAAI;IAI3B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,WAAW;IAM5C,QAAQ,IAAI,GAAG,CAAC,OAAO;IAIvB,UAAU,IAAI,8BAA8B;IAU5C,QAAQ,IAAI,OAAO;IAInB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO;CAGrE;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,IAAI,GACL,EAAE;IACD,IAAI,EAAE,wBAAwB,CAAA;CAC/B,GAAG,oBAAoB,CAIvB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GACnC,IAAI,IAAI,oBAAoB,CAE9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["addClassNamesToElement","DecoratorNode","React","Component","lazy","then","module","default","UnknownConvertedNodeComponent","UnknownConvertedNode","__data","constructor","data","key","clone","node","__key","getType","importJSON","serializedNode","$createUnknownConvertedNode","canInsertTextAfter","canInsertTextBefore","createDOM","config","element","document","createElement","decorate","_jsx","exportJSON","type","version","isInline","updateDOM","prevNode","dom","$isUnknownConvertedNode"],"sources":["../../../../../../src/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.tsx"],"sourcesContent":["import type { EditorConfig, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical'\nimport type { JSX } from 'react'\n\nimport { addClassNamesToElement } from '@lexical/utils'\nimport { DecoratorNode } from 'lexical'\nimport * as React from 'react'\n\nexport type UnknownConvertedNodeData = {\n nodeData: unknown\n nodeType: string\n}\n\nexport type SerializedUnknownConvertedNode = Spread<\n {\n data: UnknownConvertedNodeData\n },\n SerializedLexicalNode\n>\n\nconst Component = React.lazy(() =>\n import('./Component.js').then((module) => ({\n default: module.UnknownConvertedNodeComponent,\n })),\n)\n\n/** @noInheritDoc */\nexport class UnknownConvertedNode extends DecoratorNode<JSX.Element> {\n __data: UnknownConvertedNodeData\n\n constructor({ data, key }: { data: UnknownConvertedNodeData; key?: NodeKey }) {\n super(key)\n this.__data = data\n }\n\n static clone(node: UnknownConvertedNode): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data: node.__data,\n key: node.__key,\n })\n }\n\n static getType(): string {\n return 'unknownConverted'\n }\n\n static importJSON(serializedNode: SerializedUnknownConvertedNode): UnknownConvertedNode {\n const node = $createUnknownConvertedNode({ data: serializedNode.data })\n return node\n }\n\n canInsertTextAfter(): true {\n return true\n }\n\n canInsertTextBefore(): true {\n return true\n }\n\n createDOM(config: EditorConfig): HTMLElement {\n const element = document.createElement('span')\n addClassNamesToElement(element, 'unknownConverted')\n return element\n }\n\n decorate(): JSX.Element | null {\n return <Component data={this.__data} />\n }\n\n exportJSON(): SerializedUnknownConvertedNode {\n return {\n type: this.getType(),\n data: this.__data,\n version: 1,\n }\n }\n\n // Mutation\n\n isInline(): boolean {\n return true\n }\n\n updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean {\n return false\n }\n}\n\nexport function $createUnknownConvertedNode({\n data,\n}: {\n data: UnknownConvertedNodeData\n}): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data,\n })\n}\n\nexport function $isUnknownConvertedNode(\n node: LexicalNode | null | undefined,\n): node is UnknownConvertedNode {\n return node instanceof UnknownConvertedNode\n}\n"],"mappings":";AAGA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AAC9B,YAAYC,KAAA,MAAW;AAcvB,MAAMC,SAAA,gBAAYD,KAAA,CAAME,IAAI,CAAC,MAC3B,MAAM,CAAC,kBAAkBC,IAAI,CAAEC,MAAA,KAAY;EACzCC,OAAA,EAASD,MAAA,CAAOE;AAClB;AAGF;AACA,OAAO,MAAMC,oBAAA,SAA6BR,aAAA;EACxCS,MAAA;EAEAC,YAAY;IAAEC,IAAI;IAAEC;EAAG,CAAqD,EAAE;IAC5E,KAAK,CAACA,GAAA;IACN,IAAI,CAACH,MAAM,GAAGE,IAAA;EAChB;EAEA,OAAOE,MAAMC,IAA0B,EAAwB;IAC7D,OAAO,IAAIN,oBAAA,CAAqB;MAC9BG,IAAA,EAAMG,IAAA,CAAKL,MAAM;MACjBG,GAAA,EAAKE,IAAA,CAAKC;IACZ;EACF;EAEA,OAAOC,QAAA,EAAkB;IACvB,OAAO;EACT;EAEA,OAAOC,WAAWC,cAA8C,EAAwB;IACtF,MAAMJ,IAAA,GAAOK,2BAAA,CAA4B;MAAER,IAAA,EAAMO,cAAA,CAAeP;IAAK;IACrE,OAAOG,IAAA;EACT;EAEAM,mBAAA,EAA2B;IACzB,OAAO;EACT;EAEAC,oBAAA,EAA4B;IAC1B,OAAO;EACT;EAEAC,UAAUC,MAAoB,EAAe;IAC3C,MAAMC,OAAA,GAAUC,QAAA,CAASC,aAAa,CAAC;IACvC3B,sBAAA,CAAuByB,OAAA,EAAS;IAChC,OAAOA,OAAA;EACT;EAEAG,SAAA,EAA+B;IAC7B,oBAAOC,IAAA,CAAC1B,SAAA;MAAUS,IAAA,EAAM,IAAI,CAACF;;EAC/B;EAEAoB,WAAA,EAA6C;IAC3C,OAAO;MACLC,IAAA,EAAM,IAAI,CAACd,OAAO;MAClBL,IAAA,EAAM,IAAI,CAACF,MAAM;MACjBsB,OAAA,EAAS;IACX;EACF;EAEA;EAEAC,SAAA,EAAoB;IAClB,OAAO;EACT;EAEAC,UAAUC,QAA8B,EAAEC,GAAgB,EAAW;IACnE,OAAO;EACT;AACF;AAEA,OAAO,SAAShB,4BAA4B;EAC1CR;AAAI,CAGL;EACC,OAAO,IAAIH,oBAAA,CAAqB;IAC9BG;EACF;AACF;AAEA,OAAO,SAASyB,wBACdtB,IAAoC;EAEpC,OAAOA,IAAA,YAAgBN,oBAAA;AACzB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["addClassNamesToElement","DecoratorNode","React","Component","lazy","then","module","default","UnknownConvertedNodeComponent","UnknownConvertedNode","__data","constructor","data","key","clone","node","__key","getType","importJSON","serializedNode","$createUnknownConvertedNode","canInsertTextAfter","canInsertTextBefore","createDOM","config","element","document","createElement","decorate","_jsx","exportJSON","type","version","isInline","updateDOM","prevNode","dom","$isUnknownConvertedNode"],"sources":["../../../../../../src/features/migrations/slateToLexical/nodes/unknownConvertedNode/index.tsx"],"sourcesContent":["import type { EditorConfig, LexicalNode, NodeKey, SerializedLexicalNode, Spread } from 'lexical'\nimport type { JSX } from 'react'\n\nimport { addClassNamesToElement } from '@lexical/utils'\nimport { DecoratorNode } from 'lexical'\nimport * as React from 'react'\n\nexport type UnknownConvertedNodeData = {\n nodeData: unknown\n nodeType: string\n}\n\nexport type SerializedUnknownConvertedNode = Spread<\n {\n data: UnknownConvertedNodeData\n },\n SerializedLexicalNode\n>\n\nconst Component = React.lazy(() =>\n import('./Component.js').then((module) => ({\n default: module.UnknownConvertedNodeComponent,\n })),\n)\n\n/** @noInheritDoc */\nexport class UnknownConvertedNode extends DecoratorNode<JSX.Element> {\n __data: UnknownConvertedNodeData\n\n constructor({ data, key }: { data: UnknownConvertedNodeData; key?: NodeKey }) {\n super(key)\n this.__data = data\n }\n\n static clone(node: UnknownConvertedNode): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data: node.__data,\n key: node.__key,\n })\n }\n\n static getType(): string {\n return 'unknownConverted'\n }\n\n static importJSON(serializedNode: SerializedUnknownConvertedNode): UnknownConvertedNode {\n const node = $createUnknownConvertedNode({ data: serializedNode.data })\n return node\n }\n\n canInsertTextAfter(): true {\n return true\n }\n\n canInsertTextBefore(): true {\n return true\n }\n\n createDOM(config: EditorConfig): HTMLElement {\n const element = document.createElement('span')\n addClassNamesToElement(element, 'unknownConverted')\n return element\n }\n\n decorate(): JSX.Element {\n return <Component data={this.__data} />\n }\n\n exportJSON(): SerializedUnknownConvertedNode {\n return {\n type: this.getType(),\n data: this.__data,\n version: 1,\n }\n }\n\n // Mutation\n\n isInline(): boolean {\n return true\n }\n\n updateDOM(prevNode: UnknownConvertedNode, dom: HTMLElement): boolean {\n return false\n }\n}\n\nexport function $createUnknownConvertedNode({\n data,\n}: {\n data: UnknownConvertedNodeData\n}): UnknownConvertedNode {\n return new UnknownConvertedNode({\n data,\n })\n}\n\nexport function $isUnknownConvertedNode(\n node: LexicalNode | null | undefined,\n): node is UnknownConvertedNode {\n return node instanceof UnknownConvertedNode\n}\n"],"mappings":";AAGA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AAC9B,YAAYC,KAAA,MAAW;AAcvB,MAAMC,SAAA,gBAAYD,KAAA,CAAME,IAAI,CAAC,MAC3B,MAAM,CAAC,kBAAkBC,IAAI,CAAEC,MAAA,KAAY;EACzCC,OAAA,EAASD,MAAA,CAAOE;AAClB;AAGF;AACA,OAAO,MAAMC,oBAAA,SAA6BR,aAAA;EACxCS,MAAA;EAEAC,YAAY;IAAEC,IAAI;IAAEC;EAAG,CAAqD,EAAE;IAC5E,KAAK,CAACA,GAAA;IACN,IAAI,CAACH,MAAM,GAAGE,IAAA;EAChB;EAEA,OAAOE,MAAMC,IAA0B,EAAwB;IAC7D,OAAO,IAAIN,oBAAA,CAAqB;MAC9BG,IAAA,EAAMG,IAAA,CAAKL,MAAM;MACjBG,GAAA,EAAKE,IAAA,CAAKC;IACZ;EACF;EAEA,OAAOC,QAAA,EAAkB;IACvB,OAAO;EACT;EAEA,OAAOC,WAAWC,cAA8C,EAAwB;IACtF,MAAMJ,IAAA,GAAOK,2BAAA,CAA4B;MAAER,IAAA,EAAMO,cAAA,CAAeP;IAAK;IACrE,OAAOG,IAAA;EACT;EAEAM,mBAAA,EAA2B;IACzB,OAAO;EACT;EAEAC,oBAAA,EAA4B;IAC1B,OAAO;EACT;EAEAC,UAAUC,MAAoB,EAAe;IAC3C,MAAMC,OAAA,GAAUC,QAAA,CAASC,aAAa,CAAC;IACvC3B,sBAAA,CAAuByB,OAAA,EAAS;IAChC,OAAOA,OAAA;EACT;EAEAG,SAAA,EAAwB;IACtB,oBAAOC,IAAA,CAAC1B,SAAA;MAAUS,IAAA,EAAM,IAAI,CAACF;;EAC/B;EAEAoB,WAAA,EAA6C;IAC3C,OAAO;MACLC,IAAA,EAAM,IAAI,CAACd,OAAO;MAClBL,IAAA,EAAM,IAAI,CAACF,MAAM;MACjBsB,OAAA,EAAS;IACX;EACF;EAEA;EAEAC,SAAA,EAAoB;IAClB,OAAO;EACT;EAEAC,UAAUC,QAA8B,EAAEC,GAAgB,EAAW;IACnE,OAAO;EACT;AACF;AAEA,OAAO,SAAShB,4BAA4B;EAC1CR;AAAI,CAGL;EACC,OAAO,IAAIH,oBAAA,CAAqB;IAC9BG;EACF;AACF;AAEA,OAAO,SAASyB,wBACdtB,IAAoC;EAEpC,OAAOA,IAAA,YAAgBN,oBAAA;AACzB","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export declare const ParagraphFeature: import("../../typesServer.js").FeatureProviderProviderServer<undefined, undefined, any>;
1
+ export declare const ParagraphFeature: import("../../typesServer.js").FeatureProviderProviderServer<undefined, undefined, null>;
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/paragraph/server/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,yFAO3B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/paragraph/server/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,0FAO3B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipComponent.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/client/components/RelationshipComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAgBhD,OAAO,KAA+D,MAAM,OAAO,CAAA;AAEnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAK9E,OAAO,cAAc,CAAA;AAQrB,KAAK,KAAK,GAAG;IACX,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,gBAAgB,CAAA;IACtB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAoKD,eAAO,MAAM,qBAAqB,UAAW,KAAK,KAAG,KAAK,CAAC,SAE1D,CAAA"}
1
+ {"version":3,"file":"RelationshipComponent.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/client/components/RelationshipComponent.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAgBhD,OAAO,KAA+D,MAAM,OAAO,CAAA;AAEnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAK9E,OAAO,cAAc,CAAA;AAQrB,KAAK,KAAK,GAAG;IACX,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,gBAAgB,CAAA;IACtB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAsKD,eAAO,MAAM,qBAAqB,UAAW,KAAK,KAAG,KAAK,CAAC,SAE1D,CAAA"}
@@ -62,7 +62,7 @@ const Component = props => {
62
62
  });
63
63
  const removeRelationship = useCallback(() => {
64
64
  editor.update(() => {
65
- $getNodeByKey(nodeKey).remove();
65
+ $getNodeByKey(nodeKey)?.remove();
66
66
  });
67
67
  }, [editor, nodeKey]);
68
68
  const updateRelationship = React.useCallback(({
@@ -133,11 +133,13 @@ const Component = props => {
133
133
  el: "div",
134
134
  icon: "swap",
135
135
  onClick: () => {
136
- editor.dispatchCommand(INSERT_RELATIONSHIP_WITH_DRAWER_COMMAND, {
137
- replace: {
138
- nodeKey
139
- }
140
- });
136
+ if (nodeKey) {
137
+ editor.dispatchCommand(INSERT_RELATIONSHIP_WITH_DRAWER_COMMAND, {
138
+ replace: {
139
+ nodeKey
140
+ }
141
+ });
142
+ }
141
143
  },
142
144
  round: true,
143
145
  tooltip: t('fields:swapRelationship')