@payloadcms/richtext-lexical 4.0.0-internal.f11981a → 4.0.0-internal.f2a04f7

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 (371) hide show
  1. package/dist/exports/client/Field-W2ABOM7M.js +2 -0
  2. package/dist/exports/client/Field-W2ABOM7M.js.map +7 -0
  3. package/dist/exports/client/chunk-3LRZDIIG.js +2 -0
  4. package/dist/exports/client/{chunk-LN6VX25I.js.map → chunk-3LRZDIIG.js.map} +2 -2
  5. package/dist/exports/client/chunk-E6LSRRP2.js +2 -0
  6. package/dist/exports/client/chunk-E6LSRRP2.js.map +7 -0
  7. package/dist/exports/client/chunk-ZQX5HXUL.js +2 -0
  8. package/dist/exports/client/{chunk-43E5QYAA.js.map → chunk-ZQX5HXUL.js.map} +3 -3
  9. package/dist/exports/client/{component-D5QLYS7W.js → component-6DQLENIE.js} +2 -2
  10. package/dist/exports/client/componentInline-HNE5G4TE.js +2 -0
  11. package/dist/exports/client/index.js +28 -28
  12. package/dist/exports/client/index.js.map +4 -4
  13. package/dist/features/blocks/client/component/BlockReordering/index.d.ts +11 -0
  14. package/dist/features/blocks/client/component/BlockReordering/index.d.ts.map +1 -0
  15. package/dist/features/blocks/client/component/BlockReordering/index.js +18 -0
  16. package/dist/features/blocks/client/component/BlockReordering/index.js.map +1 -0
  17. package/dist/features/blocks/client/component/index.d.ts +0 -6
  18. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  19. package/dist/features/blocks/client/component/index.js +196 -101
  20. package/dist/features/blocks/client/component/index.js.map +1 -1
  21. package/dist/features/blocks/client/component/useBlockReordering.d.ts +16 -0
  22. package/dist/features/blocks/client/component/useBlockReordering.d.ts.map +1 -0
  23. package/dist/features/blocks/client/component/useBlockReordering.js +178 -0
  24. package/dist/features/blocks/client/component/useBlockReordering.js.map +1 -0
  25. package/dist/features/blocks/client/componentInline/index.css +0 -1
  26. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  27. package/dist/features/blocks/client/componentInline/index.js +30 -22
  28. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  29. package/dist/features/blocks/client/getCachedFormStateIfDataMatches.d.ts +9 -0
  30. package/dist/features/blocks/client/getCachedFormStateIfDataMatches.d.ts.map +1 -0
  31. package/dist/features/blocks/client/getCachedFormStateIfDataMatches.js +95 -0
  32. package/dist/features/blocks/client/getCachedFormStateIfDataMatches.js.map +1 -0
  33. package/dist/features/blocks/client/nodes/BlocksNode.d.ts.map +1 -1
  34. package/dist/features/blocks/client/nodes/BlocksNode.js +0 -10
  35. package/dist/features/blocks/client/nodes/BlocksNode.js.map +1 -1
  36. package/dist/features/blocks/server/nodes/BlocksNode.d.ts.map +1 -1
  37. package/dist/features/blocks/server/nodes/BlocksNode.js +1 -12
  38. package/dist/features/blocks/server/nodes/BlocksNode.js.map +1 -1
  39. package/dist/features/blocks/server/nodes/InlineBlocksNode.js +2 -2
  40. package/dist/features/blocks/server/nodes/InlineBlocksNode.js.map +1 -1
  41. package/dist/features/blocks/server/schema.d.ts +2 -0
  42. package/dist/features/blocks/server/schema.d.ts.map +1 -1
  43. package/dist/features/blocks/server/schema.js +7 -9
  44. package/dist/features/blocks/server/schema.js.map +1 -1
  45. package/dist/features/blocks/server/validate.js +1 -1
  46. package/dist/features/blocks/server/validate.js.map +1 -1
  47. package/dist/features/converters/lexicalToHtml/async/converters/heading.js +1 -1
  48. package/dist/features/converters/lexicalToHtml/async/converters/heading.js.map +1 -1
  49. package/dist/features/converters/lexicalToHtml/async/converters/list.d.ts.map +1 -1
  50. package/dist/features/converters/lexicalToHtml/async/converters/list.js +4 -3
  51. package/dist/features/converters/lexicalToHtml/async/converters/list.js.map +1 -1
  52. package/dist/features/converters/lexicalToHtml/async/converters/upload.js +3 -3
  53. package/dist/features/converters/lexicalToHtml/async/converters/upload.js.map +1 -1
  54. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.d.ts.map +1 -1
  55. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js +3 -2
  56. package/dist/features/converters/lexicalToHtml/shared/findConverterForNode.js.map +1 -1
  57. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js +1 -1
  58. package/dist/features/converters/lexicalToHtml/sync/converters/heading.js.map +1 -1
  59. package/dist/features/converters/lexicalToHtml/sync/converters/list.d.ts.map +1 -1
  60. package/dist/features/converters/lexicalToHtml/sync/converters/list.js +4 -3
  61. package/dist/features/converters/lexicalToHtml/sync/converters/list.js.map +1 -1
  62. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js +3 -3
  63. package/dist/features/converters/lexicalToHtml/sync/converters/upload.js.map +1 -1
  64. package/dist/features/converters/lexicalToHtml/sync/types.d.ts.map +1 -1
  65. package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
  66. package/dist/features/converters/lexicalToJSX/converter/converters/heading.d.ts.map +1 -1
  67. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js +2 -1
  68. package/dist/features/converters/lexicalToJSX/converter/converters/heading.js.map +1 -1
  69. package/dist/features/converters/lexicalToJSX/converter/converters/list.d.ts.map +1 -1
  70. package/dist/features/converters/lexicalToJSX/converter/converters/list.js +2 -1
  71. package/dist/features/converters/lexicalToJSX/converter/converters/list.js.map +1 -1
  72. package/dist/features/converters/lexicalToJSX/converter/converters/upload.d.ts.map +1 -1
  73. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js +4 -5
  74. package/dist/features/converters/lexicalToJSX/converter/converters/upload.js.map +1 -1
  75. package/dist/features/converters/utilities/payloadPopulateFn.d.ts.map +1 -1
  76. package/dist/features/converters/utilities/payloadPopulateFn.js +4 -2
  77. package/dist/features/converters/utilities/payloadPopulateFn.js.map +1 -1
  78. package/dist/features/heading/constants.d.ts +2 -0
  79. package/dist/features/heading/constants.d.ts.map +1 -0
  80. package/dist/features/heading/constants.js +2 -0
  81. package/dist/features/heading/constants.js.map +1 -0
  82. package/dist/features/heading/server/index.d.ts.map +1 -1
  83. package/dist/features/heading/server/index.js +5 -1
  84. package/dist/features/heading/server/index.js.map +1 -1
  85. package/dist/features/heading/server/validate.d.ts +6 -0
  86. package/dist/features/heading/server/validate.d.ts.map +1 -0
  87. package/dist/features/heading/server/validate.js +15 -0
  88. package/dist/features/heading/server/validate.js.map +1 -0
  89. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts +11 -1
  90. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.d.ts.map +1 -1
  91. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js +17 -0
  92. package/dist/features/horizontalRule/client/nodes/HorizontalRuleNode.js.map +1 -1
  93. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js +2 -2
  94. package/dist/features/horizontalRule/server/nodes/HorizontalRuleNode.js.map +1 -1
  95. package/dist/features/horizontalRule/server/schema.d.ts +1 -0
  96. package/dist/features/horizontalRule/server/schema.d.ts.map +1 -1
  97. package/dist/features/horizontalRule/server/schema.js +6 -5
  98. package/dist/features/horizontalRule/server/schema.js.map +1 -1
  99. package/dist/features/indent/client/IndentPlugin.d.ts.map +1 -1
  100. package/dist/features/indent/client/IndentPlugin.js +122 -1
  101. package/dist/features/indent/client/IndentPlugin.js.map +1 -1
  102. package/dist/features/indent/server/i18n.d.ts.map +1 -1
  103. package/dist/features/indent/server/i18n.js +74 -37
  104. package/dist/features/indent/server/i18n.js.map +1 -1
  105. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  106. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +8 -5
  107. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  108. package/dist/features/link/client/plugins/floatingLinkEditor/index.css +0 -1
  109. package/dist/features/link/nodes/AutoLinkNode.d.ts.map +1 -1
  110. package/dist/features/link/nodes/AutoLinkNode.js +2 -10
  111. package/dist/features/link/nodes/AutoLinkNode.js.map +1 -1
  112. package/dist/features/link/nodes/LinkNode.d.ts.map +1 -1
  113. package/dist/features/link/nodes/LinkNode.js +2 -15
  114. package/dist/features/link/nodes/LinkNode.js.map +1 -1
  115. package/dist/features/link/server/validate.js +1 -1
  116. package/dist/features/link/server/validate.js.map +1 -1
  117. package/dist/features/lists/checklist/server/index.d.ts.map +1 -1
  118. package/dist/features/lists/checklist/server/index.js +5 -2
  119. package/dist/features/lists/checklist/server/index.js.map +1 -1
  120. package/dist/features/lists/orderedList/server/index.d.ts.map +1 -1
  121. package/dist/features/lists/orderedList/server/index.js +5 -2
  122. package/dist/features/lists/orderedList/server/index.js.map +1 -1
  123. package/dist/features/lists/shared/constants.d.ts +2 -0
  124. package/dist/features/lists/shared/constants.d.ts.map +1 -0
  125. package/dist/features/lists/shared/constants.js +2 -0
  126. package/dist/features/lists/shared/constants.js.map +1 -0
  127. package/dist/features/lists/shared/schema.d.ts.map +1 -1
  128. package/dist/features/lists/shared/schema.js.map +1 -1
  129. package/dist/features/lists/shared/validate.d.ts +5 -0
  130. package/dist/features/lists/shared/validate.d.ts.map +1 -0
  131. package/dist/features/lists/shared/validate.js +15 -0
  132. package/dist/features/lists/shared/validate.js.map +1 -0
  133. package/dist/features/lists/unorderedList/server/index.d.ts.map +1 -1
  134. package/dist/features/lists/unorderedList/server/index.js +5 -2
  135. package/dist/features/lists/unorderedList/server/index.js.map +1 -1
  136. package/dist/features/relationship/client/components/index.css +3 -6
  137. package/dist/features/relationship/client/index.d.ts +2 -2
  138. package/dist/features/relationship/client/index.d.ts.map +1 -1
  139. package/dist/features/relationship/client/index.js.map +1 -1
  140. package/dist/features/relationship/client/nodes/RelationshipNode.d.ts.map +1 -1
  141. package/dist/features/relationship/client/nodes/RelationshipNode.js +0 -3
  142. package/dist/features/relationship/client/nodes/RelationshipNode.js.map +1 -1
  143. package/dist/features/relationship/client/plugins/index.d.ts +2 -2
  144. package/dist/features/relationship/client/plugins/index.d.ts.map +1 -1
  145. package/dist/features/relationship/client/plugins/index.js +27 -31
  146. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  147. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts +2 -4
  148. package/dist/features/relationship/client/utils/useEnabledRelationships.d.ts.map +1 -1
  149. package/dist/features/relationship/client/utils/useEnabledRelationships.js +53 -20
  150. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  151. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts +2 -2
  152. package/dist/features/relationship/server/graphQLPopulationPromise.d.ts.map +1 -1
  153. package/dist/features/relationship/server/graphQLPopulationPromise.js +2 -2
  154. package/dist/features/relationship/server/graphQLPopulationPromise.js.map +1 -1
  155. package/dist/features/relationship/server/index.d.ts +8 -1
  156. package/dist/features/relationship/server/index.d.ts.map +1 -1
  157. package/dist/features/relationship/server/index.js +28 -11
  158. package/dist/features/relationship/server/index.js.map +1 -1
  159. package/dist/features/relationship/server/nodes/RelationshipNode.d.ts.map +1 -1
  160. package/dist/features/relationship/server/nodes/RelationshipNode.js +1 -5
  161. package/dist/features/relationship/server/nodes/RelationshipNode.js.map +1 -1
  162. package/dist/features/relationship/server/schema.d.ts +3 -2
  163. package/dist/features/relationship/server/schema.d.ts.map +1 -1
  164. package/dist/features/relationship/server/schema.js +9 -12
  165. package/dist/features/relationship/server/schema.js.map +1 -1
  166. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts +1 -6
  167. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.d.ts.map +1 -1
  168. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js +1 -5
  169. package/dist/features/relationship/shared/filterEnabledRelationshipCollections.js.map +1 -1
  170. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts +8 -0
  171. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.d.ts.map +1 -0
  172. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js +19 -0
  173. package/dist/features/table/client/plugins/TableActionMenuPlugin/computeSelectionCount.js.map +1 -0
  174. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.css +0 -1
  175. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.d.ts.map +1 -1
  176. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js +17 -44
  177. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  178. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.d.ts.map +1 -1
  179. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js +41 -18
  180. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  181. package/dist/features/table/client/plugins/TablePlugin/TableGridPopup/index.css +0 -3
  182. package/dist/features/textState/defaultColors.js +1 -1
  183. package/dist/features/textState/defaultColors.js.map +1 -1
  184. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts +8 -0
  185. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.d.ts.map +1 -0
  186. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js +80 -0
  187. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js.map +1 -0
  188. package/dist/features/toolbars/fixed/client/Toolbar/index.css +77 -3
  189. package/dist/features/toolbars/fixed/client/Toolbar/index.d.ts.map +1 -1
  190. package/dist/features/toolbars/fixed/client/Toolbar/index.js +19 -1
  191. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  192. package/dist/features/toolbars/inline/client/Toolbar/index.d.ts.map +1 -1
  193. package/dist/features/toolbars/inline/client/Toolbar/index.js +17 -2
  194. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  195. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  196. package/dist/features/toolbars/shared/ToolbarButton/index.js +1 -0
  197. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  198. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.d.ts.map +1 -1
  199. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +85 -32
  200. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  201. package/dist/features/toolbars/shared/ToolbarDropdown/index.css +16 -12
  202. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.d.ts +5 -0
  203. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.d.ts.map +1 -0
  204. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js +79 -0
  205. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js.map +1 -0
  206. package/dist/features/typesServer.d.ts +16 -11
  207. package/dist/features/typesServer.d.ts.map +1 -1
  208. package/dist/features/typesServer.js.map +1 -1
  209. package/dist/features/upload/client/component/index.css +0 -2
  210. package/dist/features/upload/client/index.d.ts +3 -2
  211. package/dist/features/upload/client/index.d.ts.map +1 -1
  212. package/dist/features/upload/client/index.js.map +1 -1
  213. package/dist/features/upload/client/nodes/UploadNode.d.ts.map +1 -1
  214. package/dist/features/upload/client/nodes/UploadNode.js +0 -7
  215. package/dist/features/upload/client/nodes/UploadNode.js.map +1 -1
  216. package/dist/features/upload/client/plugin/index.d.ts.map +1 -1
  217. package/dist/features/upload/client/plugin/index.js +50 -53
  218. package/dist/features/upload/client/plugin/index.js.map +1 -1
  219. package/dist/features/upload/server/graphQLPopulationPromise.d.ts +2 -2
  220. package/dist/features/upload/server/graphQLPopulationPromise.d.ts.map +1 -1
  221. package/dist/features/upload/server/graphQLPopulationPromise.js +1 -1
  222. package/dist/features/upload/server/graphQLPopulationPromise.js.map +1 -1
  223. package/dist/features/upload/server/index.d.ts +7 -3
  224. package/dist/features/upload/server/index.d.ts.map +1 -1
  225. package/dist/features/upload/server/index.js +18 -14
  226. package/dist/features/upload/server/index.js.map +1 -1
  227. package/dist/features/upload/server/nodes/UploadNode.d.ts.map +1 -1
  228. package/dist/features/upload/server/nodes/UploadNode.js +1 -9
  229. package/dist/features/upload/server/nodes/UploadNode.js.map +1 -1
  230. package/dist/features/upload/server/schema.d.ts +4 -16
  231. package/dist/features/upload/server/schema.d.ts.map +1 -1
  232. package/dist/features/upload/server/schema.js +8 -10
  233. package/dist/features/upload/server/schema.js.map +1 -1
  234. package/dist/features/upload/server/validate.d.ts +2 -2
  235. package/dist/features/upload/server/validate.d.ts.map +1 -1
  236. package/dist/features/upload/server/validate.js +4 -1
  237. package/dist/features/upload/server/validate.js.map +1 -1
  238. package/dist/field/Diff/converters/listitem/index.d.ts.map +1 -1
  239. package/dist/field/Diff/converters/listitem/index.js +2 -1
  240. package/dist/field/Diff/converters/listitem/index.js.map +1 -1
  241. package/dist/field/Diff/converters/relationship/index.css +0 -1
  242. package/dist/field/Diff/converters/unknown/index.css +0 -1
  243. package/dist/field/Diff/converters/upload/index.css +0 -1
  244. package/dist/field/Diff/converters/upload/index.js.map +1 -1
  245. package/dist/field/Diff/index.css +0 -2
  246. package/dist/field/Diff/index.d.ts +3 -2
  247. package/dist/field/Diff/index.d.ts.map +1 -1
  248. package/dist/field/Diff/index.js +3 -2
  249. package/dist/field/Diff/index.js.map +1 -1
  250. package/dist/field/Field.d.ts.map +1 -1
  251. package/dist/field/Field.js +8 -1
  252. package/dist/field/Field.js.map +1 -1
  253. package/dist/field/RenderLexical/index.d.ts +3 -1
  254. package/dist/field/RenderLexical/index.d.ts.map +1 -1
  255. package/dist/field/RenderLexical/index.js +23 -23
  256. package/dist/field/RenderLexical/index.js.map +1 -1
  257. package/dist/field/ViewSelector.d.ts.map +1 -1
  258. package/dist/field/ViewSelector.js +1 -0
  259. package/dist/field/ViewSelector.js.map +1 -1
  260. package/dist/field/bundled.css +1 -1
  261. package/dist/field/index.css +10 -11
  262. package/dist/field/rscEntry.d.ts +2 -2
  263. package/dist/field/rscEntry.d.ts.map +1 -1
  264. package/dist/field/rscEntry.js.map +1 -1
  265. package/dist/index.d.ts +4 -4
  266. package/dist/index.d.ts.map +1 -1
  267. package/dist/index.js +23 -1
  268. package/dist/index.js.map +1 -1
  269. package/dist/lexical/LexicalEditor.css +21 -10
  270. package/dist/lexical/LexicalEditor.d.ts.map +1 -1
  271. package/dist/lexical/LexicalEditor.js +61 -64
  272. package/dist/lexical/LexicalEditor.js.map +1 -1
  273. package/dist/lexical/plugins/DecoratorPlugin/index.d.ts.map +1 -1
  274. package/dist/lexical/plugins/DecoratorPlugin/index.js +24 -21
  275. package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
  276. package/dist/lexical/plugins/InsertParagraphAtEnd/index.css +2 -1
  277. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +1 -1
  278. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  279. package/dist/lexical/plugins/SlashMenu/index.css +0 -1
  280. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.css +1 -0
  281. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js +2 -2
  282. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  283. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +1 -0
  284. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
  285. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +16 -2
  286. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  287. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.d.ts +7 -0
  288. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.d.ts.map +1 -0
  289. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js +65 -0
  290. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js.map +1 -0
  291. package/dist/lexical/plugins/handles/utils/setHandlePosition.d.ts.map +1 -1
  292. package/dist/lexical/plugins/handles/utils/setHandlePosition.js +2 -0
  293. package/dist/lexical/plugins/handles/utils/setHandlePosition.js.map +1 -1
  294. package/dist/lexical/theme/EditorTheme.css +0 -2
  295. package/dist/lexical/ui/ContentEditable.d.ts +2 -1
  296. package/dist/lexical/ui/ContentEditable.d.ts.map +1 -1
  297. package/dist/lexical/ui/ContentEditable.js +32 -11
  298. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  299. package/dist/lexical/ui/icons/H3/index.d.ts.map +1 -1
  300. package/dist/lexical/ui/icons/H3/index.js +13 -6
  301. package/dist/lexical/ui/icons/H3/index.js.map +1 -1
  302. package/dist/lexical/ui/icons/H4/index.d.ts.map +1 -1
  303. package/dist/lexical/ui/icons/H4/index.js +13 -6
  304. package/dist/lexical/ui/icons/H4/index.js.map +1 -1
  305. package/dist/lexical/ui/icons/H5/index.d.ts.map +1 -1
  306. package/dist/lexical/ui/icons/H5/index.js +13 -6
  307. package/dist/lexical/ui/icons/H5/index.js.map +1 -1
  308. package/dist/lexical/ui/icons/H6/index.d.ts.map +1 -1
  309. package/dist/lexical/ui/icons/H6/index.js +13 -6
  310. package/dist/lexical/ui/icons/H6/index.js.map +1 -1
  311. package/dist/presets/llmInstructions.d.ts +2 -0
  312. package/dist/presets/llmInstructions.d.ts.map +1 -0
  313. package/dist/presets/llmInstructions.js +13 -0
  314. package/dist/presets/llmInstructions.js.map +1 -0
  315. package/dist/types/builtInNodes.d.ts +1 -1
  316. package/dist/types/builtInNodes.d.ts.map +1 -1
  317. package/dist/types/builtInNodes.js +8 -3
  318. package/dist/types/builtInNodes.js.map +1 -1
  319. package/dist/types/index.d.ts +3 -6
  320. package/dist/types/index.d.ts.map +1 -1
  321. package/dist/types/index.js.map +1 -1
  322. package/dist/types/jsonSchemaHelpers.d.ts +5 -1
  323. package/dist/types/jsonSchemaHelpers.d.ts.map +1 -1
  324. package/dist/types/jsonSchemaHelpers.js +7 -2
  325. package/dist/types/jsonSchemaHelpers.js.map +1 -1
  326. package/dist/types/nodeTypes.d.ts +5 -0
  327. package/dist/types/nodeTypes.d.ts.map +1 -1
  328. package/dist/types/nodeTypes.js.map +1 -1
  329. package/dist/utilities/buildEditorState.d.ts.map +1 -1
  330. package/dist/utilities/buildEditorState.js.map +1 -1
  331. package/dist/utilities/buildInitialState.d.ts +3 -2
  332. package/dist/utilities/buildInitialState.d.ts.map +1 -1
  333. package/dist/utilities/buildInitialState.js +1 -0
  334. package/dist/utilities/buildInitialState.js.map +1 -1
  335. package/dist/utilities/generateImportMap.d.ts +2 -2
  336. package/dist/utilities/generateImportMap.d.ts.map +1 -1
  337. package/dist/utilities/generateImportMap.js.map +1 -1
  338. package/dist/utilities/upgradeLexicalData/index.js +6 -3
  339. package/dist/utilities/upgradeLexicalData/index.js.map +1 -1
  340. package/dist/validate/hasText.d.ts +2 -2
  341. package/dist/validate/hasText.d.ts.map +1 -1
  342. package/dist/validate/hasText.js.map +1 -1
  343. package/dist/validate/index.d.ts +1 -1
  344. package/dist/validate/index.d.ts.map +1 -1
  345. package/package.json +45 -45
  346. package/dist/dependencyChecker.spec.js +0 -16
  347. package/dist/dependencyChecker.spec.js.map +0 -1
  348. package/dist/exports/client/Field-F22V5L4V.js +0 -2
  349. package/dist/exports/client/Field-F22V5L4V.js.map +0 -7
  350. package/dist/exports/client/bundled.css +0 -1
  351. package/dist/exports/client/chunk-43E5QYAA.js +0 -2
  352. package/dist/exports/client/chunk-ESITTE3C.js +0 -2
  353. package/dist/exports/client/chunk-ESITTE3C.js.map +0 -7
  354. package/dist/exports/client/chunk-LN6VX25I.js +0 -2
  355. package/dist/exports/client/componentInline-H24N7GUG.js +0 -2
  356. package/dist/features/blocks/client/component/removeEmptyArrayValues.d.ts +0 -11
  357. package/dist/features/blocks/client/component/removeEmptyArrayValues.d.ts.map +0 -1
  358. package/dist/features/blocks/client/component/removeEmptyArrayValues.js +0 -20
  359. package/dist/features/blocks/client/component/removeEmptyArrayValues.js.map +0 -1
  360. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js +0 -180
  361. package/dist/features/converters/lexicalToPlaintext/convertLexicalToPlaintext.spec.js.map +0 -1
  362. package/dist/features/link/markdownTransformer.spec.js +0 -195
  363. package/dist/features/link/markdownTransformer.spec.js.map +0 -1
  364. package/dist/lexical/utils/markdown/convertFromMarkdownString.spec.js +0 -88
  365. package/dist/lexical/utils/markdown/convertFromMarkdownString.spec.js.map +0 -1
  366. package/dist/lexical/utils/url.spec.js +0 -114
  367. package/dist/lexical/utils/url.spec.js.map +0 -1
  368. package/dist/utilities/jsx/jsx.spec.js +0 -178
  369. package/dist/utilities/jsx/jsx.spec.js.map +0 -1
  370. /package/dist/exports/client/{component-D5QLYS7W.js.map → component-6DQLENIE.js.map} +0 -0
  371. /package/dist/exports/client/{componentInline-H24N7GUG.js.map → componentInline-HNE5G4TE.js.map} +0 -0
@@ -11,57 +11,53 @@ import { $createRelationshipNode, RelationshipNode } from '../nodes/Relationship
11
11
  import { useEnabledRelationships } from '../utils/useEnabledRelationships.js';
12
12
  export const INSERT_RELATIONSHIP_COMMAND = createCommand('INSERT_RELATIONSHIP_COMMAND');
13
13
  export const RelationshipPlugin = t0 => {
14
- const $ = _c(8);
14
+ const $ = _c(7);
15
15
  const {
16
16
  clientProps
17
17
  } = t0;
18
18
  const [editor] = useLexicalComposerContext();
19
- const t1 = clientProps?.disabledCollections;
20
- const t2 = clientProps?.enabledCollections;
21
- let t3;
22
- if ($[0] !== t1 || $[1] !== t2) {
23
- t3 = {
24
- collectionSlugsBlacklist: t1,
25
- collectionSlugsWhitelist: t2
19
+ let t1;
20
+ if ($[0] !== clientProps.enabledCollectionSlugs) {
21
+ t1 = {
22
+ enabledCollectionSlugs: clientProps.enabledCollectionSlugs
26
23
  };
27
- $[0] = t1;
28
- $[1] = t2;
29
- $[2] = t3;
24
+ $[0] = clientProps.enabledCollectionSlugs;
25
+ $[1] = t1;
30
26
  } else {
31
- t3 = $[2];
27
+ t1 = $[1];
32
28
  }
33
29
  const {
34
30
  enabledCollectionSlugs
35
- } = useEnabledRelationships(t3);
36
- let t4;
37
- let t5;
38
- if ($[3] !== editor) {
39
- t4 = () => {
31
+ } = useEnabledRelationships(t1);
32
+ let t2;
33
+ let t3;
34
+ if ($[2] !== editor) {
35
+ t2 = () => {
40
36
  if (!editor.hasNodes([RelationshipNode])) {
41
37
  throw new Error("RelationshipPlugin: RelationshipNode not registered on editor");
42
38
  }
43
39
  return editor.registerCommand(INSERT_RELATIONSHIP_COMMAND, _temp, COMMAND_PRIORITY_EDITOR);
44
40
  };
45
- t5 = [editor];
46
- $[3] = editor;
47
- $[4] = t4;
48
- $[5] = t5;
41
+ t3 = [editor];
42
+ $[2] = editor;
43
+ $[3] = t2;
44
+ $[4] = t3;
49
45
  } else {
50
- t4 = $[4];
51
- t5 = $[5];
46
+ t2 = $[3];
47
+ t3 = $[4];
52
48
  }
53
- useEffect(t4, t5);
54
- let t6;
55
- if ($[6] !== enabledCollectionSlugs) {
56
- t6 = _jsx(RelationshipDrawer, {
49
+ useEffect(t2, t3);
50
+ let t4;
51
+ if ($[5] !== enabledCollectionSlugs) {
52
+ t4 = _jsx(RelationshipDrawer, {
57
53
  enabledCollectionSlugs
58
54
  });
59
- $[6] = enabledCollectionSlugs;
60
- $[7] = t6;
55
+ $[5] = enabledCollectionSlugs;
56
+ $[6] = t4;
61
57
  } else {
62
- t6 = $[7];
58
+ t4 = $[6];
63
59
  }
64
- return t6;
60
+ return t4;
65
61
  };
66
62
  function _temp(payload) {
67
63
  const selection = $getSelection() || $getPreviousSelection();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$insertNodeToNearestRoot","$getPreviousSelection","$getSelection","$isParagraphNode","$isRangeSelection","COMMAND_PRIORITY_EDITOR","createCommand","useEffect","RelationshipDrawer","$createRelationshipNode","RelationshipNode","useEnabledRelationships","INSERT_RELATIONSHIP_COMMAND","RelationshipPlugin","t0","$","clientProps","editor","t1","disabledCollections","t2","enabledCollections","t3","collectionSlugsBlacklist","collectionSlugsWhitelist","enabledCollectionSlugs","t4","t5","hasNodes","Error","registerCommand","_temp","t6","_jsx","payload","selection","relationshipNode","focus","focusNode","getNode","__first","remove"],"sources":["../../../../../src/features/relationship/client/plugins/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalCommand } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $insertNodeToNearestRoot } from '@lexical/utils'\nimport {\n $getPreviousSelection,\n $getSelection,\n $isParagraphNode,\n $isRangeSelection,\n COMMAND_PRIORITY_EDITOR,\n createCommand,\n} from 'lexical'\nimport { useEffect } from 'react'\n\nimport type { PluginComponent } from '../../../typesClient.js'\nimport type { RelationshipFeatureProps } from '../../server/index.js'\nimport type { RelationshipData } from '../../server/schema.js'\n\nimport { RelationshipDrawer } from '../drawer/index.js'\nimport { $createRelationshipNode, RelationshipNode } from '../nodes/RelationshipNode.js'\nimport { useEnabledRelationships } from '../utils/useEnabledRelationships.js'\n\nexport const INSERT_RELATIONSHIP_COMMAND: LexicalCommand<RelationshipData> = createCommand(\n 'INSERT_RELATIONSHIP_COMMAND',\n)\n\nexport const RelationshipPlugin: PluginComponent<RelationshipFeatureProps> = ({ clientProps }) => {\n const [editor] = useLexicalComposerContext()\n\n const { enabledCollectionSlugs } = useEnabledRelationships({\n collectionSlugsBlacklist: clientProps?.disabledCollections,\n collectionSlugsWhitelist: clientProps?.enabledCollections,\n })\n\n useEffect(() => {\n if (!editor.hasNodes([RelationshipNode])) {\n throw new Error('RelationshipPlugin: RelationshipNode not registered on editor')\n }\n\n return editor.registerCommand<RelationshipData>(\n INSERT_RELATIONSHIP_COMMAND,\n (payload) => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n const relationshipNode = $createRelationshipNode(payload)\n // we need to get the focus node before inserting the block node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert relationship node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(relationshipNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n\n return true\n },\n COMMAND_PRIORITY_EDITOR,\n )\n }, [editor])\n\n return <RelationshipDrawer enabledCollectionSlugs={enabledCollectionSlugs} />\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,wBAAwB,QAAQ;AACzC,SACEC,qBAAqB,EACrBC,aAAa,EACbC,gBAAgB,EAChBC,iBAAiB,EACjBC,uBAAuB,EACvBC,aAAa,QACR;AACP,SAASC,SAAS,QAAQ;AAM1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,uBAAuB,EAAEC,gBAAgB,QAAQ;AAC1D,SAASC,uBAAuB,QAAQ;AAExC,OAAO,MAAMC,2BAAA,GAAgEN,aAAA,CAC3E;AAGF,OAAO,MAAMO,kBAAA,GAAgEC,EAAA;EAAA,MAAAC,CAAA,GAAAjB,EAAA;EAAC;IAAAkB;EAAA,IAAAF,EAAe;EAC3F,OAAAG,MAAA,IAAiBlB,yBAAA;EAGW,MAAAmB,EAAA,GAAAF,WAAA,EAAAG,mBAAA;EACA,MAAAC,EAAA,GAAAJ,WAAA,EAAAK,kBAAA;EAAa,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAG,EAAA,IAAAH,CAAA,QAAAK,EAAA;IAFkBE,EAAA;MAAAC,wBAAA,EAC/BL,EAAa;MAAAM,wBAAA,EACbJ;IAAa;IACzCL,CAAA,MAAAG,EAAA;IAAAH,CAAA,MAAAK,EAAA;IAAAL,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAHA;IAAAU;EAAA,IAAmCd,uBAAA,CAAwBW,EAG3D;EAAA,IAAAI,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAZ,CAAA,QAAAE,MAAA;IAEUS,EAAA,GAAAA,CAAA;MAAA,KACHT,MAAA,CAAAW,QAAA,EAAAlB,gBAAA,CAAkC;QAAA,UAAAmB,KAAA,CACrB;MAAA;MAAA,OAGXZ,MAAA,CAAAa,eAAA,CAAAlB,2BAAA,EAAAmB,KAAA,EAAA1B,uBAqBL;IAAA;IAEDsB,EAAA,IAACV,MAAA;IAAOF,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAW,EAAA;IAAAX,CAAA,MAAAY,EAAA;EAAA;IAAAD,EAAA,GAAAX,CAAA;IAAAY,EAAA,GAAAZ,CAAA;EAAA;EA5BXR,SAAA,CAAUmB,EA4BV,EAAGC,EAAQ;EAAA,IAAAK,EAAA;EAAA,IAAAjB,CAAA,QAAAU,sBAAA;IAEJO,EAAA,GAAAC,IAAA,CAAAzB,kBAAA;MAAAiB;IAAA,C;;;;;;SAAAO,E;CACT;AAvC6E,SAAAD,MAAAG,OAAA;EAgBrE,MAAAC,SAAA,GAAkBjC,aAAA,MAAmBD,qBAAA;EAAA,IAEjCG,iBAAA,CAAkB+B,SAAA;IACpB,MAAAC,gBAAA,GAAyB3B,uBAAA,CAAwByB,OAAA;IAEjD;MAAAG;IAAA,IAAkBF,SAAA;IAClB,MAAAG,SAAA,GAAkBD,KAAA,CAAAE,OAAA,CAAa;IAE/BvC,wBAAA,CAAyBoC,gBAAA;IAAA,IAGrBjC,gBAAA,CAAiBmC,SAAA,MAAeA,SAAA,CAAAE,OAAiB;MACnDF,SAAA,CAAAG,MAAA,CAAgB;IAAA;EAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useLexicalComposerContext","$insertNodeToNearestRoot","$getPreviousSelection","$getSelection","$isParagraphNode","$isRangeSelection","COMMAND_PRIORITY_EDITOR","createCommand","useEffect","RelationshipDrawer","$createRelationshipNode","RelationshipNode","useEnabledRelationships","INSERT_RELATIONSHIP_COMMAND","RelationshipPlugin","t0","$","clientProps","editor","t1","enabledCollectionSlugs","t2","t3","hasNodes","Error","registerCommand","_temp","t4","_jsx","payload","selection","relationshipNode","focus","focusNode","getNode","__first","remove"],"sources":["../../../../../src/features/relationship/client/plugins/index.tsx"],"sourcesContent":["'use client'\nimport type { LexicalCommand } from 'lexical'\n\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { $insertNodeToNearestRoot } from '@lexical/utils'\nimport {\n $getPreviousSelection,\n $getSelection,\n $isParagraphNode,\n $isRangeSelection,\n COMMAND_PRIORITY_EDITOR,\n createCommand,\n} from 'lexical'\nimport { useEffect } from 'react'\n\nimport type { PluginComponent } from '../../../typesClient.js'\nimport type { RelationshipFeatureClientProps } from '../../server/index.js'\nimport type { RelationshipData } from '../../server/schema.js'\n\nimport { RelationshipDrawer } from '../drawer/index.js'\nimport { $createRelationshipNode, RelationshipNode } from '../nodes/RelationshipNode.js'\nimport { useEnabledRelationships } from '../utils/useEnabledRelationships.js'\n\nexport const INSERT_RELATIONSHIP_COMMAND: LexicalCommand<RelationshipData> = createCommand(\n 'INSERT_RELATIONSHIP_COMMAND',\n)\n\nexport const RelationshipPlugin: PluginComponent<RelationshipFeatureClientProps> = ({\n clientProps,\n}) => {\n const [editor] = useLexicalComposerContext()\n\n const { enabledCollectionSlugs } = useEnabledRelationships({\n enabledCollectionSlugs: clientProps.enabledCollectionSlugs,\n })\n\n useEffect(() => {\n if (!editor.hasNodes([RelationshipNode])) {\n throw new Error('RelationshipPlugin: RelationshipNode not registered on editor')\n }\n\n return editor.registerCommand<RelationshipData>(\n INSERT_RELATIONSHIP_COMMAND,\n (payload) => {\n const selection = $getSelection() || $getPreviousSelection()\n\n if ($isRangeSelection(selection)) {\n const relationshipNode = $createRelationshipNode(payload)\n // we need to get the focus node before inserting the block node, as $insertNodeToNearestRoot can change the focus node\n const { focus } = selection\n const focusNode = focus.getNode()\n // Insert relationship node BEFORE potentially removing focusNode, as $insertNodeToNearestRoot errors if the focusNode doesn't exist\n $insertNodeToNearestRoot(relationshipNode)\n\n // Delete the node it it's an empty paragraph\n if ($isParagraphNode(focusNode) && !focusNode.__first) {\n focusNode.remove()\n }\n }\n\n return true\n },\n COMMAND_PRIORITY_EDITOR,\n )\n }, [editor])\n\n return <RelationshipDrawer enabledCollectionSlugs={enabledCollectionSlugs} />\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,wBAAwB,QAAQ;AACzC,SACEC,qBAAqB,EACrBC,aAAa,EACbC,gBAAgB,EAChBC,iBAAiB,EACjBC,uBAAuB,EACvBC,aAAa,QACR;AACP,SAASC,SAAS,QAAQ;AAM1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,uBAAuB,EAAEC,gBAAgB,QAAQ;AAC1D,SAASC,uBAAuB,QAAQ;AAExC,OAAO,MAAMC,2BAAA,GAAgEN,aAAA,CAC3E;AAGF,OAAO,MAAMO,kBAAA,GAAsEC,EAAA;EAAA,MAAAC,CAAA,GAAAjB,EAAA;EAAC;IAAAkB;EAAA,IAAAF,EAEnF;EACC,OAAAG,MAAA,IAAiBlB,yBAAA;EAAA,IAAAmB,EAAA;EAAA,IAAAH,CAAA,QAAAC,WAAA,CAAAG,sBAAA;IAE0CD,EAAA;MAAAC,sBAAA,EACjCH,WAAA,CAAAG;IAAA;IAC1BJ,CAAA,MAAAC,WAAA,CAAAG,sBAAA;IAAAJ,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAFA;IAAAI;EAAA,IAAmCR,uBAAA,CAAwBO,EAE3D;EAAA,IAAAE,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAN,CAAA,QAAAE,MAAA;IAEUG,EAAA,GAAAA,CAAA;MAAA,KACHH,MAAA,CAAAK,QAAA,EAAAZ,gBAAA,CAAkC;QAAA,UAAAa,KAAA,CACrB;MAAA;MAAA,OAGXN,MAAA,CAAAO,eAAA,CAAAZ,2BAAA,EAAAa,KAAA,EAAApB,uBAqBL;IAAA;IAEDgB,EAAA,IAACJ,MAAA;IAAOF,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAK,EAAA;IAAAL,CAAA,MAAAM,EAAA;EAAA;IAAAD,EAAA,GAAAL,CAAA;IAAAM,EAAA,GAAAN,CAAA;EAAA;EA5BXR,SAAA,CAAUa,EA4BV,EAAGC,EAAQ;EAAA,IAAAK,EAAA;EAAA,IAAAX,CAAA,QAAAI,sBAAA;IAEJO,EAAA,GAAAC,IAAA,CAAAnB,kBAAA;MAAAW;IAAA,C;;;;;;SAAAO,E;CACT;AAxCmF,SAAAD,MAAAG,OAAA;EAiB3E,MAAAC,SAAA,GAAkB3B,aAAA,MAAmBD,qBAAA;EAAA,IAEjCG,iBAAA,CAAkByB,SAAA;IACpB,MAAAC,gBAAA,GAAyBrB,uBAAA,CAAwBmB,OAAA;IAEjD;MAAAG;IAAA,IAAkBF,SAAA;IAClB,MAAAG,SAAA,GAAkBD,KAAA,CAAAE,OAAA,CAAa;IAE/BjC,wBAAA,CAAyB8B,gBAAA;IAAA,IAGrB3B,gBAAA,CAAiB6B,SAAA,MAAeA,SAAA,CAAAE,OAAiB;MACnDF,SAAA,CAAAG,MAAA,CAAgB;IAAA;EAAA;EAAA;AAAA","ignoreList":[]}
@@ -1,13 +1,11 @@
1
1
  import type { ClientCollectionConfig, CollectionSlug } from 'payload';
2
2
  type UseEnabledRelationshipsOptions = {
3
- collectionSlugsBlacklist?: string[];
4
- collectionSlugsWhitelist?: string[];
5
- uploads?: boolean;
3
+ enabledCollectionSlugs: CollectionSlug[];
6
4
  };
7
5
  type UseEnabledRelationshipsResult = {
8
6
  enabledCollections: ClientCollectionConfig[];
9
7
  enabledCollectionSlugs: CollectionSlug[];
10
8
  };
11
- export declare const useEnabledRelationships: (options?: UseEnabledRelationshipsOptions) => UseEnabledRelationshipsResult;
9
+ export declare const useEnabledRelationships: ({ enabledCollectionSlugs, }: UseEnabledRelationshipsOptions) => UseEnabledRelationshipsResult;
12
10
  export {};
13
11
  //# sourceMappingURL=useEnabledRelationships.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useEnabledRelationships.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/client/utils/useEnabledRelationships.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAOrE,KAAK,8BAA8B,GAAG;IACpC,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,6BAA6B,GAAG;IACnC,kBAAkB,EAAE,sBAAsB,EAAE,CAAA;IAC5C,sBAAsB,EAAE,cAAc,EAAE,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,uBAAuB,aACxB,8BAA8B,KACvC,6BAmBF,CAAA"}
1
+ {"version":3,"file":"useEnabledRelationships.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/client/utils/useEnabledRelationships.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAKrE,KAAK,8BAA8B,GAAG;IACpC,sBAAsB,EAAE,cAAc,EAAE,CAAA;CACzC,CAAA;AAED,KAAK,6BAA6B,GAAG;IACnC,kBAAkB,EAAE,sBAAsB,EAAE,CAAA;IAC5C,sBAAsB,EAAE,cAAc,EAAE,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,uBAAuB,gCAEjC,8BAA8B,KAAG,6BAiBnC,CAAA"}
@@ -1,33 +1,66 @@
1
1
  'use client';
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { useConfig, useEntityVisibility } from '@payloadcms/ui';
4
5
  import * as React from 'react';
5
- import { filterEnabledRelationshipCollections } from '../../shared/filterEnabledRelationshipCollections.js';
6
- export const useEnabledRelationships = options => {
6
+ export const useEnabledRelationships = t0 => {
7
+ const $ = _c(11);
7
8
  const {
8
- collectionSlugsBlacklist,
9
- collectionSlugsWhitelist,
10
- uploads = false
11
- } = options || {};
9
+ enabledCollectionSlugs
10
+ } = t0;
12
11
  const {
13
- config: {
14
- collections
15
- }
12
+ config: t1
16
13
  } = useConfig();
14
+ const {
15
+ collections
16
+ } = t1;
17
17
  const {
18
18
  visibleEntities
19
19
  } = useEntityVisibility();
20
- return React.useMemo(() => {
21
- const enabledCollections = filterEnabledRelationshipCollections(collections, {
22
- disabledCollections: collectionSlugsBlacklist,
23
- enabledCollections: collectionSlugsWhitelist,
24
- uploads,
25
- visibleSlugs: visibleEntities?.collections
26
- });
27
- return {
28
- enabledCollections,
29
- enabledCollectionSlugs: enabledCollections.map(c => c.slug)
20
+ let t2;
21
+ let t3;
22
+ if ($[0] !== collections || $[1] !== enabledCollectionSlugs || $[2] !== visibleEntities) {
23
+ let t4;
24
+ if ($[5] !== enabledCollectionSlugs || $[6] !== visibleEntities) {
25
+ t4 = t5 => {
26
+ const {
27
+ slug
28
+ } = t5;
29
+ return enabledCollectionSlugs.includes(slug) && (!visibleEntities?.collections || visibleEntities.collections.includes(slug));
30
+ };
31
+ $[5] = enabledCollectionSlugs;
32
+ $[6] = visibleEntities;
33
+ $[7] = t4;
34
+ } else {
35
+ t4 = $[7];
36
+ }
37
+ const enabledCollections = collections.filter(t4);
38
+ t2 = enabledCollections;
39
+ t3 = enabledCollections.map(_temp);
40
+ $[0] = collections;
41
+ $[1] = enabledCollectionSlugs;
42
+ $[2] = visibleEntities;
43
+ $[3] = t2;
44
+ $[4] = t3;
45
+ } else {
46
+ t2 = $[3];
47
+ t3 = $[4];
48
+ }
49
+ let t4;
50
+ if ($[8] !== t2 || $[9] !== t3) {
51
+ t4 = {
52
+ enabledCollections: t2,
53
+ enabledCollectionSlugs: t3
30
54
  };
31
- }, [collections, visibleEntities, uploads, collectionSlugsWhitelist, collectionSlugsBlacklist]);
55
+ $[8] = t2;
56
+ $[9] = t3;
57
+ $[10] = t4;
58
+ } else {
59
+ t4 = $[10];
60
+ }
61
+ return t4;
32
62
  };
63
+ function _temp(c) {
64
+ return c.slug;
65
+ }
33
66
  //# sourceMappingURL=useEnabledRelationships.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useEnabledRelationships.js","names":["useConfig","useEntityVisibility","React","filterEnabledRelationshipCollections","useEnabledRelationships","options","collectionSlugsBlacklist","collectionSlugsWhitelist","uploads","config","collections","visibleEntities","useMemo","enabledCollections","disabledCollections","visibleSlugs","enabledCollectionSlugs","map","c","slug"],"sources":["../../../../../src/features/relationship/client/utils/useEnabledRelationships.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, CollectionSlug } from 'payload'\n\nimport { useConfig, useEntityVisibility } from '@payloadcms/ui'\nimport * as React from 'react'\n\nimport { filterEnabledRelationshipCollections } from '../../shared/filterEnabledRelationshipCollections.js'\n\ntype UseEnabledRelationshipsOptions = {\n collectionSlugsBlacklist?: string[]\n collectionSlugsWhitelist?: string[]\n uploads?: boolean\n}\n\ntype UseEnabledRelationshipsResult = {\n enabledCollections: ClientCollectionConfig[]\n enabledCollectionSlugs: CollectionSlug[]\n}\n\nexport const useEnabledRelationships = (\n options?: UseEnabledRelationshipsOptions,\n): UseEnabledRelationshipsResult => {\n const { collectionSlugsBlacklist, collectionSlugsWhitelist, uploads = false } = options || {}\n const {\n config: { collections },\n } = useConfig()\n const { visibleEntities } = useEntityVisibility()\n\n return React.useMemo(() => {\n const enabledCollections = filterEnabledRelationshipCollections(collections, {\n disabledCollections: collectionSlugsBlacklist,\n enabledCollections: collectionSlugsWhitelist,\n uploads,\n visibleSlugs: visibleEntities?.collections,\n })\n return {\n enabledCollections,\n enabledCollectionSlugs: enabledCollections.map((c) => c.slug),\n }\n }, [collections, visibleEntities, uploads, collectionSlugsWhitelist, collectionSlugsBlacklist])\n}\n"],"mappings":"AAAA;;AAGA,SAASA,SAAS,EAAEC,mBAAmB,QAAQ;AAC/C,YAAYC,KAAA,MAAW;AAEvB,SAASC,oCAAoC,QAAQ;AAarD,OAAO,MAAMC,uBAAA,GACXC,OAAA;EAEA,MAAM;IAAEC,wBAAwB;IAAEC,wBAAwB;IAAEC,OAAA,GAAU;EAAK,CAAE,GAAGH,OAAA,IAAW,CAAC;EAC5F,MAAM;IACJI,MAAA,EAAQ;MAAEC;IAAW;EAAE,CACxB,GAAGV,SAAA;EACJ,MAAM;IAAEW;EAAe,CAAE,GAAGV,mBAAA;EAE5B,OAAOC,KAAA,CAAMU,OAAO,CAAC;IACnB,MAAMC,kBAAA,GAAqBV,oCAAA,CAAqCO,WAAA,EAAa;MAC3EI,mBAAA,EAAqBR,wBAAA;MACrBO,kBAAA,EAAoBN,wBAAA;MACpBC,OAAA;MACAO,YAAA,EAAcJ,eAAA,EAAiBD;IACjC;IACA,OAAO;MACLG,kBAAA;MACAG,sBAAA,EAAwBH,kBAAA,CAAmBI,GAAG,CAAEC,CAAA,IAAMA,CAAA,CAAEC,IAAI;IAC9D;EACF,GAAG,CAACT,WAAA,EAAaC,eAAA,EAAiBH,OAAA,EAASD,wBAAA,EAA0BD,wBAAA,CAAyB;AAChG","ignoreList":[]}
1
+ {"version":3,"file":"useEnabledRelationships.js","names":["c","_c","useConfig","useEntityVisibility","React","useEnabledRelationships","t0","$","enabledCollectionSlugs","config","t1","collections","visibleEntities","t2","t3","t4","t5","slug","includes","enabledCollections","filter","map","_temp"],"sources":["../../../../../src/features/relationship/client/utils/useEnabledRelationships.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, CollectionSlug } from 'payload'\n\nimport { useConfig, useEntityVisibility } from '@payloadcms/ui'\nimport * as React from 'react'\n\ntype UseEnabledRelationshipsOptions = {\n enabledCollectionSlugs: CollectionSlug[]\n}\n\ntype UseEnabledRelationshipsResult = {\n enabledCollections: ClientCollectionConfig[]\n enabledCollectionSlugs: CollectionSlug[]\n}\n\nexport const useEnabledRelationships = ({\n enabledCollectionSlugs,\n}: UseEnabledRelationshipsOptions): UseEnabledRelationshipsResult => {\n const {\n config: { collections },\n } = useConfig()\n const { visibleEntities } = useEntityVisibility()\n\n return React.useMemo(() => {\n const enabledCollections = collections.filter(\n ({ slug }) =>\n enabledCollectionSlugs.includes(slug) &&\n (!visibleEntities?.collections || visibleEntities.collections.includes(slug)),\n )\n return {\n enabledCollections,\n enabledCollectionSlugs: enabledCollections.map((c) => c.slug),\n }\n }, [collections, enabledCollectionSlugs, visibleEntities])\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;AAGA,SAASC,SAAS,EAAEC,mBAAmB,QAAQ;AAC/C,YAAYC,KAAA,MAAW;AAWvB,OAAO,MAAMC,uBAAA,GAA0BC,EAAA;EAAA,MAAAC,CAAA,GAAAN,EAAA;EAAC;IAAAO;EAAA,IAAAF,EAEP;EAC/B;IAAAG,MAAA,EAAAC;EAAA,IAEIR,SAAA;EADM;IAAAS;EAAA,IAAAD,EAAe;EAEzB;IAAAE;EAAA,IAA4BT,mBAAA;EAAA,IAAAU,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAI,WAAA,IAAAJ,CAAA,QAAAC,sBAAA,IAAAD,CAAA,QAAAK,eAAA;IAAA,IAAAG,EAAA;IAAA,IAAAR,CAAA,QAAAC,sBAAA,IAAAD,CAAA,QAAAK,eAAA;MAIxBG,EAAA,GAAAC,EAAA;QAAC;UAAAC;QAAA,IAAAD,EAAQ;QAAA,OACPR,sBAAA,CAAAU,QAAA,CAAgCD,IAAA,MAC/B,CAACL,eAAA,EAAAD,WAAA,IAAgCC,eAAA,CAAAD,WAAA,CAAAO,QAAA,CAAqCD,IAAA,CAAI;MAAA;MAAAV,CAAA,MAAAC,sBAAA;MAAAD,CAAA,MAAAK,eAAA;MAAAL,CAAA,MAAAQ,EAAA;IAAA;MAAAA,EAAA,GAAAR,CAAA;IAAA;IAH/E,MAAAY,kBAAA,GAA2BR,WAAA,CAAAS,MAAA,CACzBL,EAE6E;IAG7EI,EAAA,CAAAA,CAAA,CAAAA,kBAAA;IACwBL,EAAA,GAAAK,kBAAA,CAAAE,GAAA,CAAAC,KAAoC;IAAAf,CAAA,MAAAI,WAAA;IAAAJ,CAAA,MAAAC,sBAAA;IAAAD,CAAA,MAAAK,eAAA;IAAAL,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;EAAA;IAAAD,EAAA,GAAAN,CAAA;IAAAO,EAAA,GAAAP,CAAA;EAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAR,CAAA,QAAAM,EAAA,IAAAN,CAAA,QAAAO,EAAA;IAFvDC,EAAA;MAAAI,kBAAA,EACLA,EAAA;MAAAX,sBAAA,EACwBM;IAAoC;IAC9DP,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;IAAAP,CAAA,OAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAAA,OAHOQ,EAGP;AAAA,CAEJ;AAnBuC,SAAAO,MAAAtB,CAAA;EAAA,OAgBqBA,CAAA,CAAAiB,IAAA;AAAA","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import type { PopulationPromise } from '../../typesServer.js';
2
- import type { RelationshipFeatureProps } from './index.js';
2
+ import type { RelationshipFeatureServerProps } from './index.js';
3
3
  import type { SerializedRelationshipNode } from './schema.js';
4
- export declare const relationshipPopulationPromiseHOC: (props: RelationshipFeatureProps) => PopulationPromise<SerializedRelationshipNode>;
4
+ export declare const relationshipPopulationPromiseHOC: (props: RelationshipFeatureServerProps) => PopulationPromise<SerializedRelationshipNode>;
5
5
  //# sourceMappingURL=graphQLPopulationPromise.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAI7D,eAAO,MAAM,gCAAgC,UACpC,wBAAwB,KAC9B,iBAAiB,CAAC,0BAA0B,CAwC9C,CAAA"}
1
+ {"version":3,"file":"graphQLPopulationPromise.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/graphQLPopulationPromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAI7D,eAAO,MAAM,gCAAgC,UACpC,8BAA8B,KACpC,iBAAiB,CAAC,0BAA0B,CAwC9C,CAAA"}
@@ -10,13 +10,13 @@ export const relationshipPopulationPromiseHOC = props => {
10
10
  req,
11
11
  showHiddenFields
12
12
  }) => {
13
- if (node?.value) {
13
+ if (node?.value && props.enabledCollectionSlugs.includes(node.relationTo)) {
14
14
  // @ts-expect-error
15
15
  const id = node?.value?.id || node?.value // for backwards-compatibility
16
16
  ;
17
17
  const collection = req.payload.collections[node?.relationTo];
18
18
  if (collection) {
19
- const populateDepth = props?.maxDepth !== undefined && props?.maxDepth < depth ? props?.maxDepth : depth;
19
+ const populateDepth = props.maxDepth !== undefined && props.maxDepth < depth ? props.maxDepth : depth;
20
20
  populationPromises.push(populate({
21
21
  id,
22
22
  collectionSlug: collection.config.slug,
@@ -1 +1 @@
1
- {"version":3,"file":"graphQLPopulationPromise.js","names":["populate","relationshipPopulationPromiseHOC","props","relationshipPopulationPromise","currentDepth","depth","draft","node","overrideAccess","populationPromises","req","showHiddenFields","value","id","collection","payload","collections","relationTo","populateDepth","maxDepth","undefined","push","collectionSlug","config","slug","data","key"],"sources":["../../../../src/features/relationship/server/graphQLPopulationPromise.ts"],"sourcesContent":["import type { PopulationPromise } from '../../typesServer.js'\nimport type { RelationshipFeatureProps } from './index.js'\nimport type { SerializedRelationshipNode } from './schema.js'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\n\nexport const relationshipPopulationPromiseHOC = (\n props: RelationshipFeatureProps,\n): PopulationPromise<SerializedRelationshipNode> => {\n const relationshipPopulationPromise: PopulationPromise<SerializedRelationshipNode> = ({\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (node?.value) {\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const collection = req.payload.collections[node?.relationTo]\n\n if (collection) {\n const populateDepth =\n props?.maxDepth !== undefined && props?.maxDepth < depth ? props?.maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n showHiddenFields,\n }),\n )\n }\n }\n }\n\n return relationshipPopulationPromise\n}\n"],"mappings":"AAIA,SAASA,QAAQ,QAAQ;AAEzB,OAAO,MAAMC,gCAAA,GACXC,KAAA;EAEA,MAAMC,6BAAA,GAA+EA,CAAC;IACpFC,YAAY;IACZC,KAAK;IACLC,KAAK;IACLC,IAAI;IACJC,cAAc;IACdC,kBAAkB;IAClBC,GAAG;IACHC;EAAgB,CACjB;IACC,IAAIJ,IAAA,EAAMK,KAAA,EAAO;MACf;MACA,MAAMC,EAAA,GAAKN,IAAA,EAAMK,KAAA,EAAOC,EAAA,IAAMN,IAAA,EAAMK,KAAA,CAAM;AAAA;MAE1C,MAAME,UAAA,GAAaJ,GAAA,CAAIK,OAAO,CAACC,WAAW,CAACT,IAAA,EAAMU,UAAA,CAAW;MAE5D,IAAIH,UAAA,EAAY;QACd,MAAMI,aAAA,GACJhB,KAAA,EAAOiB,QAAA,KAAaC,SAAA,IAAalB,KAAA,EAAOiB,QAAA,GAAWd,KAAA,GAAQH,KAAA,EAAOiB,QAAA,GAAWd,KAAA;QAE/EI,kBAAA,CAAmBY,IAAI,CACrBrB,QAAA,CAAS;UACPa,EAAA;UACAS,cAAA,EAAgBR,UAAA,CAAWS,MAAM,CAACC,IAAI;UACtCpB,YAAA;UACAqB,IAAA,EAAMlB,IAAA;UACNF,KAAA,EAAOa,aAAA;UACPZ,KAAA;UACAoB,GAAA,EAAK;UACLlB,cAAA;UACAE,GAAA;UACAC;QACF;MAEJ;IACF;EACF;EAEA,OAAOR,6BAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"graphQLPopulationPromise.js","names":["populate","relationshipPopulationPromiseHOC","props","relationshipPopulationPromise","currentDepth","depth","draft","node","overrideAccess","populationPromises","req","showHiddenFields","value","enabledCollectionSlugs","includes","relationTo","id","collection","payload","collections","populateDepth","maxDepth","undefined","push","collectionSlug","config","slug","data","key"],"sources":["../../../../src/features/relationship/server/graphQLPopulationPromise.ts"],"sourcesContent":["import type { PopulationPromise } from '../../typesServer.js'\nimport type { RelationshipFeatureServerProps } from './index.js'\nimport type { SerializedRelationshipNode } from './schema.js'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\n\nexport const relationshipPopulationPromiseHOC = (\n props: RelationshipFeatureServerProps,\n): PopulationPromise<SerializedRelationshipNode> => {\n const relationshipPopulationPromise: PopulationPromise<SerializedRelationshipNode> = ({\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (node?.value && props.enabledCollectionSlugs.includes(node.relationTo)) {\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const collection = req.payload.collections[node?.relationTo]\n\n if (collection) {\n const populateDepth =\n props.maxDepth !== undefined && props.maxDepth < depth ? props.maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n showHiddenFields,\n }),\n )\n }\n }\n }\n\n return relationshipPopulationPromise\n}\n"],"mappings":"AAIA,SAASA,QAAQ,QAAQ;AAEzB,OAAO,MAAMC,gCAAA,GACXC,KAAA;EAEA,MAAMC,6BAAA,GAA+EA,CAAC;IACpFC,YAAY;IACZC,KAAK;IACLC,KAAK;IACLC,IAAI;IACJC,cAAc;IACdC,kBAAkB;IAClBC,GAAG;IACHC;EAAgB,CACjB;IACC,IAAIJ,IAAA,EAAMK,KAAA,IAASV,KAAA,CAAMW,sBAAsB,CAACC,QAAQ,CAACP,IAAA,CAAKQ,UAAU,GAAG;MACzE;MACA,MAAMC,EAAA,GAAKT,IAAA,EAAMK,KAAA,EAAOI,EAAA,IAAMT,IAAA,EAAMK,KAAA,CAAM;AAAA;MAE1C,MAAMK,UAAA,GAAaP,GAAA,CAAIQ,OAAO,CAACC,WAAW,CAACZ,IAAA,EAAMQ,UAAA,CAAW;MAE5D,IAAIE,UAAA,EAAY;QACd,MAAMG,aAAA,GACJlB,KAAA,CAAMmB,QAAQ,KAAKC,SAAA,IAAapB,KAAA,CAAMmB,QAAQ,GAAGhB,KAAA,GAAQH,KAAA,CAAMmB,QAAQ,GAAGhB,KAAA;QAE5EI,kBAAA,CAAmBc,IAAI,CACrBvB,QAAA,CAAS;UACPgB,EAAA;UACAQ,cAAA,EAAgBP,UAAA,CAAWQ,MAAM,CAACC,IAAI;UACtCtB,YAAA;UACAuB,IAAA,EAAMpB,IAAA;UACNF,KAAA,EAAOe,aAAA;UACPd,KAAA;UACAsB,GAAA,EAAK;UACLpB,cAAA;UACAE,GAAA;UACAC;QACF;MAEJ;IACF;EACF;EAEA,OAAOR,6BAAA;AACT","ignoreList":[]}
@@ -24,5 +24,12 @@ export type RelationshipFeatureProps = {
24
24
  */
25
25
  maxDepth?: number;
26
26
  } & ExclusiveRelationshipFeatureProps;
27
- export declare const RelationshipFeature: import("../../typesServer.js").FeatureProviderProviderServer<RelationshipFeatureProps, RelationshipFeatureProps, ExclusiveRelationshipFeatureProps>;
27
+ export type RelationshipFeatureServerProps = {
28
+ /** Collection policy resolved during feature initialization. */
29
+ enabledCollectionSlugs: CollectionSlug[];
30
+ } & RelationshipFeatureProps;
31
+ export type RelationshipFeatureClientProps = {
32
+ enabledCollectionSlugs: CollectionSlug[];
33
+ };
34
+ export declare const RelationshipFeature: import("../../typesServer.js").FeatureProviderProviderServer<RelationshipFeatureProps, RelationshipFeatureServerProps, RelationshipFeatureClientProps>;
28
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAU7C,YAAY,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAE/E,MAAM,MAAM,iCAAiC,GACzC;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,wBAAwB,GAAG;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,iCAAiC,CAAA;AAErC,eAAO,MAAM,mBAAmB,qJAqE9B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAW7C,YAAY,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAE/E,MAAM,MAAM,iCAAiC,GACzC;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,wBAAwB,GAAG;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,GAAG,iCAAiC,CAAA;AAErC,MAAM,MAAM,8BAA8B,GAAG;IAC3C,gEAAgE;IAChE,sBAAsB,EAAE,cAAc,EAAE,CAAA;CACzC,GAAG,wBAAwB,CAAA;AAE5B,MAAM,MAAM,8BAA8B,GAAG;IAC3C,sBAAsB,EAAE,cAAc,EAAE,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,mBAAmB,wJA0F9B,CAAA"}
@@ -1,22 +1,30 @@
1
1
  import { populate } from '../../../populateGraphQL/populate.js';
2
2
  import { createServerFeature } from '../../../utilities/createServerFeature.js';
3
3
  import { createNode } from '../../typeUtilities.js';
4
+ import { filterEnabledRelationshipCollections } from '../shared/filterEnabledRelationshipCollections.js';
4
5
  import { relationshipPopulationPromiseHOC } from './graphQLPopulationPromise.js';
5
6
  import { i18n } from './i18n.js';
6
7
  import { RelationshipServerNode } from './nodes/RelationshipNode.js';
7
8
  import { createRelationshipNodeJSONSchema } from './schema.js';
8
9
  export const RelationshipFeature = createServerFeature({
9
10
  feature: ({
10
- props
11
+ config,
12
+ props: unsanitizedProps
11
13
  }) => {
12
- // we don't need to pass maxDepth to the client, it's only used on the server
13
- const {
14
- maxDepth,
15
- ...clientFeatureProps
16
- } = props ?? {};
14
+ const props = {
15
+ ...unsanitizedProps,
16
+ enabledCollectionSlugs: filterEnabledRelationshipCollections(config.collections, {
17
+ ...unsanitizedProps,
18
+ uploads: false
19
+ }).map(({
20
+ slug
21
+ }) => slug)
22
+ };
17
23
  return {
18
24
  ClientFeature: '@payloadcms/richtext-lexical/client#RelationshipFeatureClient',
19
- clientFeatureProps,
25
+ clientFeatureProps: {
26
+ enabledCollectionSlugs: props.enabledCollectionSlugs
27
+ },
20
28
  i18n,
21
29
  nodes: [createNode({
22
30
  graphQLPopulationPromises: [relationshipPopulationPromiseHOC(props)],
@@ -32,7 +40,7 @@ export const RelationshipFeature = createServerFeature({
32
40
  req,
33
41
  showHiddenFields
34
42
  }) => {
35
- if (!node?.value) {
43
+ if (!node?.value || !props.enabledCollectionSlugs.includes(node.relationTo)) {
36
44
  return node;
37
45
  }
38
46
  const collection = req.payload.collections[node?.relationTo];
@@ -42,7 +50,7 @@ export const RelationshipFeature = createServerFeature({
42
50
  // @ts-expect-error
43
51
  const id = node?.value?.id || node?.value // for backwards-compatibility
44
52
  ;
45
- const populateDepth = maxDepth !== undefined && maxDepth < depth ? maxDepth : depth;
53
+ const populateDepth = props.maxDepth !== undefined && props.maxDepth < depth ? props.maxDepth : depth;
46
54
  populationPromises.push(populate({
47
55
  id,
48
56
  collectionSlug: collection.config.slug,
@@ -60,8 +68,17 @@ export const RelationshipFeature = createServerFeature({
60
68
  }]
61
69
  },
62
70
  jsonSchema: createRelationshipNodeJSONSchema(props),
63
- node: RelationshipServerNode
64
- })]
71
+ node: RelationshipServerNode,
72
+ validations: [({
73
+ node,
74
+ validation: {
75
+ options: {
76
+ req
77
+ }
78
+ }
79
+ }) => props.enabledCollectionSlugs.includes(node.relationTo) ? true : req.t('validation:invalidSelection')]
80
+ })],
81
+ sanitizedServerFeatureProps: props
65
82
  };
66
83
  },
67
84
  key: 'relationship'
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["populate","createServerFeature","createNode","relationshipPopulationPromiseHOC","i18n","RelationshipServerNode","createRelationshipNodeJSONSchema","RelationshipFeature","feature","props","maxDepth","clientFeatureProps","ClientFeature","nodes","graphQLPopulationPromises","hooks","afterRead","currentDepth","depth","draft","node","overrideAccess","populateArg","populationPromises","req","showHiddenFields","value","collection","payload","collections","relationTo","id","populateDepth","undefined","push","collectionSlug","config","slug","data","key","select","defaultPopulate","jsonSchema"],"sources":["../../../../src/features/relationship/server/index.ts"],"sourcesContent":["import type { CollectionSlug } from 'payload'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\nimport { createNode } from '../../typeUtilities.js'\nimport { relationshipPopulationPromiseHOC } from './graphQLPopulationPromise.js'\nimport { i18n } from './i18n.js'\nimport { RelationshipServerNode } from './nodes/RelationshipNode.js'\nimport { createRelationshipNodeJSONSchema } from './schema.js'\n\nexport type { RelationshipData, SerializedRelationshipNode } from './schema.js'\n\nexport type ExclusiveRelationshipFeatureProps =\n | {\n /**\n * The collections that should be disabled. Overrides the `enableRichTextRelationship` 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. Overrides the `enableRichTextRelationship` property in the collection config\n * When this property is set, `disabledCollections` will not be available.\n **/\n enabledCollections?: CollectionSlug[]\n }\n\nexport type RelationshipFeatureProps = {\n /**\n * Sets a maximum population depth for this relationship, regardless of the remaining depth when the respective 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} & ExclusiveRelationshipFeatureProps\n\nexport const RelationshipFeature = createServerFeature<\n RelationshipFeatureProps,\n RelationshipFeatureProps,\n ExclusiveRelationshipFeatureProps\n>({\n feature: ({ props }) => {\n // we don't need to pass maxDepth to the client, it's only used on the server\n const { maxDepth, ...clientFeatureProps } = props ?? {}\n return {\n ClientFeature: '@payloadcms/richtext-lexical/client#RelationshipFeatureClient',\n clientFeatureProps,\n i18n,\n nodes: [\n createNode({\n graphQLPopulationPromises: [relationshipPopulationPromiseHOC(props)],\n hooks: {\n afterRead: [\n ({\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (!node?.value) {\n return node\n }\n const collection = req.payload.collections[node?.relationTo]\n\n if (!collection) {\n return node\n }\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const populateDepth = maxDepth !== undefined && maxDepth < depth ? maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n\n return node\n },\n ],\n },\n jsonSchema: createRelationshipNodeJSONSchema(props),\n node: RelationshipServerNode,\n }),\n ],\n }\n },\n key: 'relationship',\n})\n"],"mappings":"AAEA,SAASA,QAAQ,QAAQ;AACzB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,UAAU,QAAQ;AAC3B,SAASC,gCAAgC,QAAQ;AACjD,SAASC,IAAI,QAAQ;AACrB,SAASC,sBAAsB,QAAQ;AACvC,SAASC,gCAAgC,QAAQ;AAoCjD,OAAO,MAAMC,mBAAA,GAAsBN,mBAAA,CAIjC;EACAO,OAAA,EAASA,CAAC;IAAEC;EAAK,CAAE;IACjB;IACA,MAAM;MAAEC,QAAQ;MAAE,GAAGC;IAAA,CAAoB,GAAGF,KAAA,IAAS,CAAC;IACtD,OAAO;MACLG,aAAA,EAAe;MACfD,kBAAA;MACAP,IAAA;MACAS,KAAA,EAAO,CACLX,UAAA,CAAW;QACTY,yBAAA,EAA2B,CAACX,gCAAA,CAAiCM,KAAA,EAAO;QACpEM,KAAA,EAAO;UACLC,SAAA,EAAW,CACT,CAAC;YACCC,YAAY;YACZC,KAAK;YACLC,KAAK;YACLC,IAAI;YACJC,cAAc;YACdC,WAAW;YACXC,kBAAkB;YAClBC,GAAG;YACHC;UAAgB,CACjB;YACC,IAAI,CAACL,IAAA,EAAMM,KAAA,EAAO;cAChB,OAAON,IAAA;YACT;YACA,MAAMO,UAAA,GAAaH,GAAA,CAAII,OAAO,CAACC,WAAW,CAACT,IAAA,EAAMU,UAAA,CAAW;YAE5D,IAAI,CAACH,UAAA,EAAY;cACf,OAAOP,IAAA;YACT;YACA;YACA,MAAMW,EAAA,GAAKX,IAAA,EAAMM,KAAA,EAAOK,EAAA,IAAMX,IAAA,EAAMM,KAAA,CAAM;AAAA;YAE1C,MAAMM,aAAA,GAAgBtB,QAAA,KAAauB,SAAA,IAAavB,QAAA,GAAWQ,KAAA,GAAQR,QAAA,GAAWQ,KAAA;YAE9EK,kBAAA,CAAmBW,IAAI,CACrBlC,QAAA,CAAS;cACP+B,EAAA;cACAI,cAAA,EAAgBR,UAAA,CAAWS,MAAM,CAACC,IAAI;cACtCpB,YAAA;cACAqB,IAAA,EAAMlB,IAAA;cACNF,KAAA,EAAOc,aAAA;cACPb,KAAA;cACAoB,GAAA,EAAK;cACLlB,cAAA;cACAG,GAAA;cACAgB,MAAA,EACElB,WAAA,GAAcK,UAAA,CAAWS,MAAM,CAACC,IAAI,CAAC,IAAIV,UAAA,CAAWS,MAAM,CAACK,eAAe;cAC5EhB;YACF;YAGF,OAAOL,IAAA;UACT;QAEJ;QACAsB,UAAA,EAAYpC,gCAAA,CAAiCG,KAAA;QAC7CW,IAAA,EAAMf;MACR;IAEJ;EACF;EACAkC,GAAA,EAAK;AACP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["populate","createServerFeature","createNode","filterEnabledRelationshipCollections","relationshipPopulationPromiseHOC","i18n","RelationshipServerNode","createRelationshipNodeJSONSchema","RelationshipFeature","feature","config","props","unsanitizedProps","enabledCollectionSlugs","collections","uploads","map","slug","ClientFeature","clientFeatureProps","nodes","graphQLPopulationPromises","hooks","afterRead","currentDepth","depth","draft","node","overrideAccess","populateArg","populationPromises","req","showHiddenFields","value","includes","relationTo","collection","payload","id","populateDepth","maxDepth","undefined","push","collectionSlug","data","key","select","defaultPopulate","jsonSchema","validations","validation","options","t","sanitizedServerFeatureProps"],"sources":["../../../../src/features/relationship/server/index.ts"],"sourcesContent":["import type { CollectionSlug } from 'payload'\n\nimport { populate } from '../../../populateGraphQL/populate.js'\nimport { createServerFeature } from '../../../utilities/createServerFeature.js'\nimport { createNode } from '../../typeUtilities.js'\nimport { filterEnabledRelationshipCollections } from '../shared/filterEnabledRelationshipCollections.js'\nimport { relationshipPopulationPromiseHOC } from './graphQLPopulationPromise.js'\nimport { i18n } from './i18n.js'\nimport { RelationshipServerNode } from './nodes/RelationshipNode.js'\nimport { createRelationshipNodeJSONSchema } from './schema.js'\n\nexport type { RelationshipData, SerializedRelationshipNode } from './schema.js'\n\nexport type ExclusiveRelationshipFeatureProps =\n | {\n /**\n * The collections that should be disabled. Overrides the `enableRichTextRelationship` 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. Overrides the `enableRichTextRelationship` property in the collection config\n * When this property is set, `disabledCollections` will not be available.\n **/\n enabledCollections?: CollectionSlug[]\n }\n\nexport type RelationshipFeatureProps = {\n /**\n * Sets a maximum population depth for this relationship, regardless of the remaining depth when the respective 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} & ExclusiveRelationshipFeatureProps\n\nexport type RelationshipFeatureServerProps = {\n /** Collection policy resolved during feature initialization. */\n enabledCollectionSlugs: CollectionSlug[]\n} & RelationshipFeatureProps\n\nexport type RelationshipFeatureClientProps = {\n enabledCollectionSlugs: CollectionSlug[]\n}\n\nexport const RelationshipFeature = createServerFeature<\n RelationshipFeatureProps,\n RelationshipFeatureServerProps,\n RelationshipFeatureClientProps\n>({\n feature: ({ config, props: unsanitizedProps }) => {\n const props: RelationshipFeatureServerProps = {\n ...unsanitizedProps,\n enabledCollectionSlugs: filterEnabledRelationshipCollections(config.collections, {\n ...unsanitizedProps,\n uploads: false,\n }).map(({ slug }) => slug),\n }\n\n return {\n ClientFeature: '@payloadcms/richtext-lexical/client#RelationshipFeatureClient',\n clientFeatureProps: {\n enabledCollectionSlugs: props.enabledCollectionSlugs,\n },\n i18n,\n nodes: [\n createNode({\n graphQLPopulationPromises: [relationshipPopulationPromiseHOC(props)],\n hooks: {\n afterRead: [\n ({\n currentDepth,\n depth,\n draft,\n node,\n overrideAccess,\n populateArg,\n populationPromises,\n req,\n showHiddenFields,\n }) => {\n if (!node?.value || !props.enabledCollectionSlugs.includes(node.relationTo)) {\n return node\n }\n const collection = req.payload.collections[node?.relationTo]\n\n if (!collection) {\n return node\n }\n // @ts-expect-error\n const id = node?.value?.id || node?.value // for backwards-compatibility\n\n const populateDepth =\n props.maxDepth !== undefined && props.maxDepth < depth ? props.maxDepth : depth\n\n populationPromises.push(\n populate({\n id,\n collectionSlug: collection.config.slug,\n currentDepth,\n data: node,\n depth: populateDepth,\n draft,\n key: 'value',\n overrideAccess,\n req,\n select:\n populateArg?.[collection.config.slug] ?? collection.config.defaultPopulate,\n showHiddenFields,\n }),\n )\n\n return node\n },\n ],\n },\n jsonSchema: createRelationshipNodeJSONSchema(props),\n node: RelationshipServerNode,\n validations: [\n ({\n node,\n validation: {\n options: { req },\n },\n }) =>\n props.enabledCollectionSlugs.includes(node.relationTo)\n ? true\n : req.t('validation:invalidSelection'),\n ],\n }),\n ],\n sanitizedServerFeatureProps: props,\n }\n },\n key: 'relationship',\n})\n"],"mappings":"AAEA,SAASA,QAAQ,QAAQ;AACzB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,UAAU,QAAQ;AAC3B,SAASC,oCAAoC,QAAQ;AACrD,SAASC,gCAAgC,QAAQ;AACjD,SAASC,IAAI,QAAQ;AACrB,SAASC,sBAAsB,QAAQ;AACvC,SAASC,gCAAgC,QAAQ;AA6CjD,OAAO,MAAMC,mBAAA,GAAsBP,mBAAA,CAIjC;EACAQ,OAAA,EAASA,CAAC;IAAEC,MAAM;IAAEC,KAAA,EAAOC;EAAgB,CAAE;IAC3C,MAAMD,KAAA,GAAwC;MAC5C,GAAGC,gBAAgB;MACnBC,sBAAA,EAAwBV,oCAAA,CAAqCO,MAAA,CAAOI,WAAW,EAAE;QAC/E,GAAGF,gBAAgB;QACnBG,OAAA,EAAS;MACX,GAAGC,GAAG,CAAC,CAAC;QAAEC;MAAI,CAAE,KAAKA,IAAA;IACvB;IAEA,OAAO;MACLC,aAAA,EAAe;MACfC,kBAAA,EAAoB;QAClBN,sBAAA,EAAwBF,KAAA,CAAME;MAChC;MACAR,IAAA;MACAe,KAAA,EAAO,CACLlB,UAAA,CAAW;QACTmB,yBAAA,EAA2B,CAACjB,gCAAA,CAAiCO,KAAA,EAAO;QACpEW,KAAA,EAAO;UACLC,SAAA,EAAW,CACT,CAAC;YACCC,YAAY;YACZC,KAAK;YACLC,KAAK;YACLC,IAAI;YACJC,cAAc;YACdC,WAAW;YACXC,kBAAkB;YAClBC,GAAG;YACHC;UAAgB,CACjB;YACC,IAAI,CAACL,IAAA,EAAMM,KAAA,IAAS,CAACtB,KAAA,CAAME,sBAAsB,CAACqB,QAAQ,CAACP,IAAA,CAAKQ,UAAU,GAAG;cAC3E,OAAOR,IAAA;YACT;YACA,MAAMS,UAAA,GAAaL,GAAA,CAAIM,OAAO,CAACvB,WAAW,CAACa,IAAA,EAAMQ,UAAA,CAAW;YAE5D,IAAI,CAACC,UAAA,EAAY;cACf,OAAOT,IAAA;YACT;YACA;YACA,MAAMW,EAAA,GAAKX,IAAA,EAAMM,KAAA,EAAOK,EAAA,IAAMX,IAAA,EAAMM,KAAA,CAAM;AAAA;YAE1C,MAAMM,aAAA,GACJ5B,KAAA,CAAM6B,QAAQ,KAAKC,SAAA,IAAa9B,KAAA,CAAM6B,QAAQ,GAAGf,KAAA,GAAQd,KAAA,CAAM6B,QAAQ,GAAGf,KAAA;YAE5EK,kBAAA,CAAmBY,IAAI,CACrB1C,QAAA,CAAS;cACPsC,EAAA;cACAK,cAAA,EAAgBP,UAAA,CAAW1B,MAAM,CAACO,IAAI;cACtCO,YAAA;cACAoB,IAAA,EAAMjB,IAAA;cACNF,KAAA,EAAOc,aAAA;cACPb,KAAA;cACAmB,GAAA,EAAK;cACLjB,cAAA;cACAG,GAAA;cACAe,MAAA,EACEjB,WAAA,GAAcO,UAAA,CAAW1B,MAAM,CAACO,IAAI,CAAC,IAAImB,UAAA,CAAW1B,MAAM,CAACqC,eAAe;cAC5Ef;YACF;YAGF,OAAOL,IAAA;UACT;QAEJ;QACAqB,UAAA,EAAYzC,gCAAA,CAAiCI,KAAA;QAC7CgB,IAAA,EAAMrB,sBAAA;QACN2C,WAAA,EAAa,CACX,CAAC;UACCtB,IAAI;UACJuB,UAAA,EAAY;YACVC,OAAA,EAAS;cAAEpB;YAAG;UAAE;QACjB,CACF,KACCpB,KAAA,CAAME,sBAAsB,CAACqB,QAAQ,CAACP,IAAA,CAAKQ,UAAU,IACjD,OACAJ,GAAA,CAAIqB,CAAC,CAAC;MAEhB,GACD;MACDC,2BAAA,EAA6B1C;IAC/B;EACF;EACAkC,GAAA,EAAK;AACP","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/server/nodes/RelationshipNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAA;AAEhF,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,OAAO,EACb,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAgBhF,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,MAAM,EAAE,gBAAgB,CAAA;IAExB,YAAY,EACV,IAAI,EACJ,MAAM,EACN,GAAG,GACJ,EAAE;QACD,IAAI,EAAE,gBAAgB,CAAA;QACtB,MAAM,CAAC,EAAE,iBAAiB,CAAA;QAC1B,GAAG,CAAC,EAAE,OAAO,CAAA;KACd,EAGA;IAED,OAAgB,KAAK,CAAC,IAAI,EAAE,sBAAsB,GAAG,sBAAsB,CAM1E;IAED,OAAgB,OAAO,IAAI,MAAM,CAEhC;IAED,OAAgB,SAAS,IAAI,gBAAgB,CAAC,cAAc,CAAC,GAAG,IAAI,CAenE;IAED,OAAgB,UAAU,CAAC,cAAc,EAAE,0BAA0B,GAAG,sBAAsB,CAY7F;IAED,MAAM,CAAC,QAAQ,IAAI,KAAK,CAEvB;IAEQ,SAAS,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,CAIrD;IAEQ,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAE5E;IAEQ,SAAS,IAAI,eAAe,CAWpC;IAEQ,UAAU,IAAI,0BAA0B,CAOhD;IAED,OAAO,IAAI,gBAAgB,CAE1B;IAEQ,cAAc,IAAI,MAAM,CAEhC;IAED,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAGpC;CACF;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,gBAAgB,GAAG,sBAAsB,CAM5F;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,sBAAsB,GAAG,SAAS,GAC5D,IAAI,IAAI,sBAAsB,CAEhC"}
1
+ {"version":3,"file":"RelationshipNode.d.ts","sourceRoot":"","sources":["../../../../../src/features/relationship/server/nodes/RelationshipNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAA;AAEhF,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,OAAO,EACb,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAgBhF,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,MAAM,EAAE,gBAAgB,CAAA;IAExB,YAAY,EACV,IAAI,EACJ,MAAM,EACN,GAAG,GACJ,EAAE;QACD,IAAI,EAAE,gBAAgB,CAAA;QACtB,MAAM,CAAC,EAAE,iBAAiB,CAAA;QAC1B,GAAG,CAAC,EAAE,OAAO,CAAA;KACd,EAGA;IAED,OAAgB,KAAK,CAAC,IAAI,EAAE,sBAAsB,GAAG,sBAAsB,CAM1E;IAED,OAAgB,OAAO,IAAI,MAAM,CAEhC;IAED,OAAgB,SAAS,IAAI,gBAAgB,CAAC,cAAc,CAAC,GAAG,IAAI,CAenE;IAED,OAAgB,UAAU,CAAC,cAAc,EAAE,0BAA0B,GAAG,sBAAsB,CAQ7F;IAED,MAAM,CAAC,QAAQ,IAAI,KAAK,CAEvB;IAEQ,SAAS,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,CAIrD;IAEQ,QAAQ,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAE5E;IAEQ,SAAS,IAAI,eAAe,CAWpC;IAEQ,UAAU,IAAI,0BAA0B,CAMhD;IAED,OAAO,IAAI,gBAAgB,CAE1B;IAEQ,cAAc,IAAI,MAAM,CAEhC;IAED,OAAO,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAGpC;CACF;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,gBAAgB,GAAG,sBAAsB,CAM5F;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,WAAW,GAAG,IAAI,GAAG,sBAAsB,GAAG,SAAS,GAC5D,IAAI,IAAI,sBAAsB,CAEhC"}
@@ -49,9 +49,6 @@ export class RelationshipServerNode extends DecoratorBlockNode {
49
49
  };
50
50
  }
51
51
  static importJSON(serializedNode) {
52
- if (serializedNode.version === 1 && serializedNode?.value?.id) {
53
- serializedNode.value = serializedNode.value.id;
54
- }
55
52
  const importedData = {
56
53
  relationTo: serializedNode.relationTo,
57
54
  value: serializedNode.value
@@ -85,8 +82,7 @@ export class RelationshipServerNode extends DecoratorBlockNode {
85
82
  return {
86
83
  ...super.exportJSON(),
87
84
  ...this.getData(),
88
- type: 'relationship',
89
- version: 2
85
+ type: 'relationship'
90
86
  };
91
87
  }
92
88
  getData() {
@@ -1 +1 @@
1
- {"version":3,"file":"RelationshipNode.js","names":["DecoratorBlockNode","addClassNamesToElement","$applyNodeReplacement","$relationshipElementToServerNode","domNode","id","getAttribute","relationTo","node","$createServerRelationshipNode","value","RelationshipServerNode","__data","constructor","data","format","key","clone","__format","__key","getType","importDOM","div","hasAttribute","conversion","priority","importJSON","serializedNode","version","importedData","setFormat","isInline","createDOM","config","element","document","createElement","theme","relationship","decorate","_editor","_config","exportDOM","setAttribute","String","text","createTextNode","getTextContent","append","exportJSON","getData","type","getLatest","setData","writable","getWritable","$isServerRelationshipNode"],"sources":["../../../../../src/features/relationship/server/nodes/RelationshipNode.tsx"],"sourcesContent":["import type { JSX } from 'react'\n\nimport { DecoratorBlockNode } from '@lexical/react/LexicalDecoratorBlockNode.js'\nimport { addClassNamesToElement } from '@lexical/utils'\nimport {\n $applyNodeReplacement,\n type DOMConversionMap,\n type DOMConversionOutput,\n type DOMExportOutput,\n type EditorConfig,\n type ElementFormatType,\n type LexicalEditor,\n type LexicalNode,\n type NodeKey,\n} from 'lexical'\n\nimport type { RelationshipData, SerializedRelationshipNode } from '../schema.js'\n\nfunction $relationshipElementToServerNode(domNode: HTMLDivElement): DOMConversionOutput | null {\n const id = domNode.getAttribute('data-lexical-relationship-id')\n const relationTo = domNode.getAttribute('data-lexical-relationship-relationTo')\n\n if (id != null && relationTo != null) {\n const node = $createServerRelationshipNode({\n relationTo,\n value: id,\n })\n return { node }\n }\n return null\n}\n\nexport class RelationshipServerNode extends DecoratorBlockNode {\n __data: RelationshipData\n\n constructor({\n data,\n format,\n key,\n }: {\n data: RelationshipData\n format?: ElementFormatType\n key?: NodeKey\n }) {\n super(format, key)\n this.__data = data\n }\n\n static override clone(node: RelationshipServerNode): RelationshipServerNode {\n return new this({\n data: node.__data,\n format: node.__format,\n key: node.__key,\n })\n }\n\n static override getType(): string {\n return 'relationship'\n }\n\n static override importDOM(): DOMConversionMap<HTMLDivElement> | null {\n return {\n div: (domNode: HTMLDivElement) => {\n if (\n !domNode.hasAttribute('data-lexical-relationship-relationTo') ||\n !domNode.hasAttribute('data-lexical-relationship-id')\n ) {\n return null\n }\n return {\n conversion: $relationshipElementToServerNode,\n priority: 2,\n }\n },\n }\n }\n\n static override importJSON(serializedNode: SerializedRelationshipNode): RelationshipServerNode {\n if (serializedNode.version === 1 && (serializedNode?.value as unknown as { id: string })?.id) {\n serializedNode.value = (serializedNode.value as unknown as { id: string }).id\n }\n\n const importedData: RelationshipData = {\n relationTo: serializedNode.relationTo,\n value: serializedNode.value,\n }\n const node = $createServerRelationshipNode(importedData)\n node.setFormat(serializedNode.format)\n return node\n }\n\n static isInline(): false {\n return false\n }\n\n override createDOM(config?: EditorConfig): HTMLElement {\n const element = document.createElement('div')\n addClassNamesToElement(element, config?.theme?.relationship)\n return element\n }\n\n override decorate(_editor: LexicalEditor, _config: EditorConfig): JSX.Element {\n return null as unknown as JSX.Element\n }\n\n override exportDOM(): DOMExportOutput {\n const element = document.createElement('div')\n element.setAttribute(\n 'data-lexical-relationship-id',\n String(typeof this.__data?.value === 'object' ? this.__data?.value?.id : this.__data?.value),\n )\n element.setAttribute('data-lexical-relationship-relationTo', this.__data?.relationTo)\n\n const text = document.createTextNode(this.getTextContent())\n element.append(text)\n return { element }\n }\n\n override exportJSON(): SerializedRelationshipNode {\n return {\n ...super.exportJSON(),\n ...this.getData(),\n type: 'relationship',\n version: 2,\n }\n }\n\n getData(): RelationshipData {\n return this.getLatest().__data\n }\n\n override getTextContent(): string {\n return `${this.__data?.relationTo} relation to ${typeof this.__data?.value === 'object' ? this.__data?.value?.id : this.__data?.value}`\n }\n\n setData(data: RelationshipData): void {\n const writable = this.getWritable()\n writable.__data = data\n }\n}\n\nexport function $createServerRelationshipNode(data: RelationshipData): RelationshipServerNode {\n return $applyNodeReplacement(\n new RelationshipServerNode({\n data,\n }),\n )\n}\n\nexport function $isServerRelationshipNode(\n node: LexicalNode | null | RelationshipServerNode | undefined,\n): node is RelationshipServerNode {\n return node instanceof RelationshipServerNode\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RelationshipNode.js","names":["DecoratorBlockNode","addClassNamesToElement","$applyNodeReplacement","$relationshipElementToServerNode","domNode","id","getAttribute","relationTo","node","$createServerRelationshipNode","value","RelationshipServerNode","__data","constructor","data","format","key","clone","__format","__key","getType","importDOM","div","hasAttribute","conversion","priority","importJSON","serializedNode","importedData","setFormat","isInline","createDOM","config","element","document","createElement","theme","relationship","decorate","_editor","_config","exportDOM","setAttribute","String","text","createTextNode","getTextContent","append","exportJSON","getData","type","getLatest","setData","writable","getWritable","$isServerRelationshipNode"],"sources":["../../../../../src/features/relationship/server/nodes/RelationshipNode.tsx"],"sourcesContent":["import type { JSX } from 'react'\n\nimport { DecoratorBlockNode } from '@lexical/react/LexicalDecoratorBlockNode.js'\nimport { addClassNamesToElement } from '@lexical/utils'\nimport {\n $applyNodeReplacement,\n type DOMConversionMap,\n type DOMConversionOutput,\n type DOMExportOutput,\n type EditorConfig,\n type ElementFormatType,\n type LexicalEditor,\n type LexicalNode,\n type NodeKey,\n} from 'lexical'\n\nimport type { RelationshipData, SerializedRelationshipNode } from '../schema.js'\n\nfunction $relationshipElementToServerNode(domNode: HTMLDivElement): DOMConversionOutput | null {\n const id = domNode.getAttribute('data-lexical-relationship-id')\n const relationTo = domNode.getAttribute('data-lexical-relationship-relationTo')\n\n if (id != null && relationTo != null) {\n const node = $createServerRelationshipNode({\n relationTo,\n value: id,\n })\n return { node }\n }\n return null\n}\n\nexport class RelationshipServerNode extends DecoratorBlockNode {\n __data: RelationshipData\n\n constructor({\n data,\n format,\n key,\n }: {\n data: RelationshipData\n format?: ElementFormatType\n key?: NodeKey\n }) {\n super(format, key)\n this.__data = data\n }\n\n static override clone(node: RelationshipServerNode): RelationshipServerNode {\n return new this({\n data: node.__data,\n format: node.__format,\n key: node.__key,\n })\n }\n\n static override getType(): string {\n return 'relationship'\n }\n\n static override importDOM(): DOMConversionMap<HTMLDivElement> | null {\n return {\n div: (domNode: HTMLDivElement) => {\n if (\n !domNode.hasAttribute('data-lexical-relationship-relationTo') ||\n !domNode.hasAttribute('data-lexical-relationship-id')\n ) {\n return null\n }\n return {\n conversion: $relationshipElementToServerNode,\n priority: 2,\n }\n },\n }\n }\n\n static override importJSON(serializedNode: SerializedRelationshipNode): RelationshipServerNode {\n const importedData: RelationshipData = {\n relationTo: serializedNode.relationTo,\n value: serializedNode.value,\n }\n const node = $createServerRelationshipNode(importedData)\n node.setFormat(serializedNode.format)\n return node\n }\n\n static isInline(): false {\n return false\n }\n\n override createDOM(config?: EditorConfig): HTMLElement {\n const element = document.createElement('div')\n addClassNamesToElement(element, config?.theme?.relationship)\n return element\n }\n\n override decorate(_editor: LexicalEditor, _config: EditorConfig): JSX.Element {\n return null as unknown as JSX.Element\n }\n\n override exportDOM(): DOMExportOutput {\n const element = document.createElement('div')\n element.setAttribute(\n 'data-lexical-relationship-id',\n String(typeof this.__data?.value === 'object' ? this.__data?.value?.id : this.__data?.value),\n )\n element.setAttribute('data-lexical-relationship-relationTo', this.__data?.relationTo)\n\n const text = document.createTextNode(this.getTextContent())\n element.append(text)\n return { element }\n }\n\n override exportJSON(): SerializedRelationshipNode {\n return {\n ...super.exportJSON(),\n ...this.getData(),\n type: 'relationship',\n }\n }\n\n getData(): RelationshipData {\n return this.getLatest().__data\n }\n\n override getTextContent(): string {\n return `${this.__data?.relationTo} relation to ${typeof this.__data?.value === 'object' ? this.__data?.value?.id : this.__data?.value}`\n }\n\n setData(data: RelationshipData): void {\n const writable = this.getWritable()\n writable.__data = data\n }\n}\n\nexport function $createServerRelationshipNode(data: RelationshipData): RelationshipServerNode {\n return $applyNodeReplacement(\n new RelationshipServerNode({\n data,\n }),\n )\n}\n\nexport function $isServerRelationshipNode(\n node: LexicalNode | null | RelationshipServerNode | undefined,\n): node is RelationshipServerNode {\n return node instanceof RelationshipServerNode\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import type { CollectionSlug, DataFromCollectionSlug, IDTypeForCollectionSlug, UploadCollectionSlug } from 'payload';
2
2
  import type { LexicalElementFormat } from '../../../types/nodeTypes.js';
3
3
  import type { JSONSchemaFn } from '../../typesServer.js';
4
- import type { RelationshipFeatureProps } from './index.js';
4
+ import type { RelationshipFeatureServerProps } from './index.js';
5
5
  export type RelationshipData = {
6
6
  [TCollectionSlug in CollectionSlug]: {
7
7
  relationTo: TCollectionSlug;
@@ -22,7 +22,8 @@ export type SerializedRelationshipNode<TSlugs extends CollectionSlug = NonUpload
22
22
  }[TSlugs] & {
23
23
  format: LexicalElementFormat;
24
24
  type: 'relationship';
25
+ /** @deprecated Ignored when loading. Typed as required only to match Lexical's types: rich text sent through the API, CLI or MCP may not contain it. */
25
26
  version: number;
26
27
  };
27
- export declare const createRelationshipNodeJSONSchema: (props: RelationshipFeatureProps | undefined) => JSONSchemaFn;
28
+ export declare const createRelationshipNodeJSONSchema: (props: RelationshipFeatureServerProps) => JSONSchemaFn;
28
29
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAK1D,MAAM,MAAM,gBAAgB,GAAG;KAC5B,eAAe,IAAI,cAAc,GAAG;QACnC,UAAU,EAAE,eAAe,CAAA;QAC3B,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;KAC1F;CACF,CAAC,cAAc,CAAC,CAAA;AAEjB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,SAAS;IAC5F,KAAK;CACN,GACG,cAAc,GACd,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;AAEjD,MAAM,MAAM,0BAA0B,CAAC,MAAM,SAAS,cAAc,GAAG,uBAAuB,IAAI;KAC/F,KAAK,IAAI,MAAM,GAAG;QACjB,UAAU,EAAE,KAAK,CAAA;QACjB,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;KACtE;CACF,CAAC,MAAM,CAAC,GAAG;IACV,MAAM,EAAE,oBAAoB,CAAA;IAC5B,IAAI,EAAE,cAAc,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AA0BD,eAAO,MAAM,gCAAgC,UACnC,wBAAwB,GAAG,SAAS,KAAG,YAwD9C,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/features/relationship/server/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAIhE,MAAM,MAAM,gBAAgB,GAAG;KAC5B,eAAe,IAAI,cAAc,GAAG;QACnC,UAAU,EAAE,eAAe,CAAA;QAC3B,KAAK,EAAE,sBAAsB,CAAC,eAAe,CAAC,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAA;KAC1F;CACF,CAAC,cAAc,CAAC,CAAA;AAEjB;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,SAAS;IAC5F,KAAK;CACN,GACG,cAAc,GACd,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;AAEjD,MAAM,MAAM,0BAA0B,CAAC,MAAM,SAAS,cAAc,GAAG,uBAAuB,IAAI;KAC/F,KAAK,IAAI,MAAM,GAAG;QACjB,UAAU,EAAE,KAAK,CAAA;QACjB,KAAK,EAAE,sBAAsB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;KACtE;CACF,CAAC,MAAM,CAAC,GAAG;IACV,MAAM,EAAE,oBAAoB,CAAA;IAC5B,IAAI,EAAE,cAAc,CAAA;IACpB,wJAAwJ;IACxJ,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AA4BD,eAAO,MAAM,gCAAgC,UACnC,8BAA8B,KAAG,YAiDxC,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { formatSchema, versionSchema } from '../../../types/jsonSchemaHelpers.js';
2
- import { filterEnabledRelationshipCollections } from '../shared/filterEnabledRelationshipCollections.js';
3
2
  /** MUST stay byte-for-byte in sync with the runtime `SerializedRelationshipNode` declared above. */
4
3
  const SERIALIZED_RELATIONSHIP_NODE_TS = `export type SerializedRelationshipNode<TSlugs extends keyof Config['collections']> = {
5
4
  type: 'relationship';
6
5
  format: LexicalElementFormat;
6
+ /** @deprecated Ignored when loading. Typed as required only to match Lexical's types: rich text sent through the API, CLI or MCP may not contain it. */
7
7
  version: number;
8
8
  } & {
9
9
  [TSlug in TSlugs]: {
@@ -15,6 +15,7 @@ const SERIALIZED_RELATIONSHIP_NODE_TS = `export type SerializedRelationshipNode<
15
15
  const SERIALIZED_RELATIONSHIP_NODE_INPUT_TS = `export type SerializedRelationshipNodeInput<TSlugs extends keyof Config['collections']> = {
16
16
  type: 'relationship';
17
17
  format: LexicalElementFormat;
18
+ /** @deprecated Ignored when loading. Typed as required only to match Lexical's types: rich text sent through the API, CLI or MCP may not contain it. */
18
19
  version: number;
19
20
  } & {
20
21
  [TSlug in TSlugs]: {
@@ -24,19 +25,15 @@ const SERIALIZED_RELATIONSHIP_NODE_INPUT_TS = `export type SerializedRelationshi
24
25
  }[TSlugs];`;
25
26
  export const createRelationshipNodeJSONSchema = props => ({
26
27
  collectionIDFieldTypes,
27
- config,
28
28
  typeStringDefinitions,
29
29
  variant
30
30
  }) => {
31
31
  const isInput = variant === 'input';
32
32
  typeStringDefinitions.add(isInput ? SERIALIZED_RELATIONSHIP_NODE_INPUT_TS : SERIALIZED_RELATIONSHIP_NODE_TS);
33
- const enabledCollections = config?.collections ? filterEnabledRelationshipCollections(config.collections, {
34
- disabledCollections: props?.disabledCollections,
35
- enabledCollections: props?.enabledCollections,
36
- uploads: false
37
- }) : [];
38
- const variants = enabledCollections.map(collection => {
39
- const slug = collection.slug;
33
+ const {
34
+ enabledCollectionSlugs
35
+ } = props;
36
+ const variants = enabledCollectionSlugs.map(slug => {
40
37
  const idType = collectionIDFieldTypes[slug] ?? 'string';
41
38
  return {
42
39
  type: 'object',
@@ -64,7 +61,7 @@ export const createRelationshipNodeJSONSchema = props => ({
64
61
  },
65
62
  version: versionSchema
66
63
  },
67
- required: ['format', 'relationTo', 'type', 'value', 'version']
64
+ required: ['format', 'relationTo', 'type', 'value']
68
65
  };
69
66
  });
70
67
  let schema;
@@ -79,10 +76,10 @@ export const createRelationshipNodeJSONSchema = props => ({
79
76
  },
80
77
  version: versionSchema
81
78
  },
82
- required: ['type', 'version']
79
+ required: ['type']
83
80
  };
84
81
  } else {
85
- const slugUnion = enabledCollections.map(c => `'${c.slug}'`).join(' | ');
82
+ const slugUnion = enabledCollectionSlugs.map(slug => `'${slug}'`).join(' | ');
86
83
  const baseSchema = variants.length === 1 ? variants[0] : {
87
84
  oneOf: variants
88
85
  };