@delmaredigital/payload-puck 0.1.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/README.md +293 -1237
  2. package/dist/admin/EditWithPuckButton.d.ts +74 -0
  3. package/dist/admin/EditWithPuckButton.d.ts.map +1 -0
  4. package/dist/admin/EditWithPuckButton.js +114 -0
  5. package/dist/admin/EditWithPuckButton.js.map +1 -0
  6. package/dist/admin/EditWithPuckCell.d.ts +43 -0
  7. package/dist/admin/EditWithPuckCell.d.ts.map +1 -0
  8. package/dist/admin/EditWithPuckCell.js +66 -0
  9. package/dist/admin/EditWithPuckCell.js.map +1 -0
  10. package/dist/admin/PuckEditorView.d.ts +85 -0
  11. package/dist/admin/PuckEditorView.d.ts.map +1 -0
  12. package/dist/admin/PuckEditorView.js +135 -0
  13. package/dist/admin/PuckEditorView.js.map +1 -0
  14. package/dist/admin/client.d.ts +8 -104
  15. package/dist/admin/client.d.ts.map +1 -0
  16. package/dist/admin/client.js +14 -176
  17. package/dist/admin/client.js.map +1 -0
  18. package/dist/admin/generateAdminComponents.d.ts +51 -0
  19. package/dist/admin/generateAdminComponents.d.ts.map +1 -0
  20. package/dist/admin/generateAdminComponents.js +42 -0
  21. package/dist/admin/generateAdminComponents.js.map +1 -0
  22. package/dist/admin/index.d.ts +14 -150
  23. package/dist/admin/index.d.ts.map +1 -0
  24. package/dist/admin/index.js +17 -30
  25. package/dist/admin/index.js.map +1 -0
  26. package/dist/api/createPuckApiRoutes.d.ts +31 -0
  27. package/dist/api/createPuckApiRoutes.d.ts.map +1 -0
  28. package/dist/api/createPuckApiRoutes.js +193 -0
  29. package/dist/api/createPuckApiRoutes.js.map +1 -0
  30. package/dist/api/createPuckApiRoutesVersions.d.ts +28 -0
  31. package/dist/api/createPuckApiRoutesVersions.d.ts.map +1 -0
  32. package/dist/api/createPuckApiRoutesVersions.js +144 -0
  33. package/dist/api/createPuckApiRoutesVersions.js.map +1 -0
  34. package/dist/api/createPuckApiRoutesWithId.d.ts +34 -0
  35. package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -0
  36. package/dist/api/createPuckApiRoutesWithId.js +251 -0
  37. package/dist/api/createPuckApiRoutesWithId.js.map +1 -0
  38. package/dist/api/index.d.ts +11 -431
  39. package/dist/api/index.d.ts.map +1 -0
  40. package/dist/api/index.js +40 -587
  41. package/dist/api/index.js.map +1 -0
  42. package/dist/api/types.d.ts +302 -0
  43. package/dist/api/types.d.ts.map +1 -0
  44. package/dist/api/types.js +2 -0
  45. package/dist/api/types.js.map +1 -0
  46. package/dist/api/utils/mapRootProps.d.ts +76 -0
  47. package/dist/api/utils/mapRootProps.d.ts.map +1 -0
  48. package/dist/api/utils/mapRootProps.js +169 -0
  49. package/dist/api/utils/mapRootProps.js.map +1 -0
  50. package/dist/collections/Templates.d.ts +9 -0
  51. package/dist/collections/Templates.d.ts.map +1 -0
  52. package/dist/collections/Templates.js +62 -0
  53. package/dist/collections/Templates.js.map +1 -0
  54. package/dist/components/AccordionClient.d.ts +20 -0
  55. package/dist/components/AccordionClient.d.ts.map +1 -0
  56. package/dist/components/AccordionClient.js +67 -0
  57. package/dist/components/AccordionClient.js.map +1 -0
  58. package/dist/components/AnimatedWrapper.d.ts +33 -0
  59. package/dist/components/AnimatedWrapper.d.ts.map +1 -0
  60. package/dist/components/AnimatedWrapper.js +61 -0
  61. package/dist/components/AnimatedWrapper.js.map +1 -0
  62. package/dist/components/exports.d.ts +54 -0
  63. package/dist/components/exports.d.ts.map +1 -0
  64. package/dist/components/exports.js +71 -0
  65. package/dist/components/exports.js.map +1 -0
  66. package/dist/components/index.d.ts +8 -219
  67. package/dist/components/index.d.ts.map +1 -0
  68. package/dist/components/index.js +15 -9155
  69. package/dist/components/index.js.map +1 -0
  70. package/dist/components/interactive/Accordion.d.ts +28 -0
  71. package/dist/components/interactive/Accordion.d.ts.map +1 -0
  72. package/dist/components/interactive/Accordion.js +159 -0
  73. package/dist/components/interactive/Accordion.js.map +1 -0
  74. package/dist/components/interactive/Accordion.server.d.ts +29 -0
  75. package/dist/components/interactive/Accordion.server.d.ts.map +1 -0
  76. package/dist/components/interactive/Accordion.server.js +30 -0
  77. package/dist/components/interactive/Accordion.server.js.map +1 -0
  78. package/dist/components/interactive/Button.d.ts +26 -0
  79. package/dist/components/interactive/Button.d.ts.map +1 -0
  80. package/dist/components/interactive/Button.js +133 -0
  81. package/dist/components/interactive/Button.js.map +1 -0
  82. package/dist/components/interactive/Button.server.d.ts +28 -0
  83. package/dist/components/interactive/Button.server.d.ts.map +1 -0
  84. package/dist/components/interactive/Button.server.js +96 -0
  85. package/dist/components/interactive/Button.server.js.map +1 -0
  86. package/dist/components/interactive/Card.d.ts +27 -0
  87. package/dist/components/interactive/Card.d.ts.map +1 -0
  88. package/dist/components/interactive/Card.js +128 -0
  89. package/dist/components/interactive/Card.js.map +1 -0
  90. package/dist/components/interactive/Card.server.d.ts +29 -0
  91. package/dist/components/interactive/Card.server.d.ts.map +1 -0
  92. package/dist/components/interactive/Card.server.js +77 -0
  93. package/dist/components/interactive/Card.server.js.map +1 -0
  94. package/dist/components/interactive/Divider.d.ts +18 -0
  95. package/dist/components/interactive/Divider.d.ts.map +1 -0
  96. package/dist/components/interactive/Divider.js +68 -0
  97. package/dist/components/interactive/Divider.js.map +1 -0
  98. package/dist/components/interactive/Divider.server.d.ts +20 -0
  99. package/dist/components/interactive/Divider.server.d.ts.map +1 -0
  100. package/dist/components/interactive/Divider.server.js +50 -0
  101. package/dist/components/interactive/Divider.server.js.map +1 -0
  102. package/dist/components/interactive/index.d.ts +10 -0
  103. package/dist/components/interactive/index.d.ts.map +1 -0
  104. package/dist/components/interactive/index.js +10 -0
  105. package/dist/components/interactive/index.js.map +1 -0
  106. package/dist/components/layout/Container.d.ts +29 -0
  107. package/dist/components/layout/Container.d.ts.map +1 -0
  108. package/dist/components/layout/Container.js +166 -0
  109. package/dist/components/layout/Container.js.map +1 -0
  110. package/dist/components/layout/Container.server.d.ts +32 -0
  111. package/dist/components/layout/Container.server.d.ts.map +1 -0
  112. package/dist/components/layout/Container.server.js +105 -0
  113. package/dist/components/layout/Container.server.js.map +1 -0
  114. package/dist/components/layout/Flex.d.ts +36 -0
  115. package/dist/components/layout/Flex.d.ts.map +1 -0
  116. package/dist/components/layout/Flex.js +183 -0
  117. package/dist/components/layout/Flex.js.map +1 -0
  118. package/dist/components/layout/Flex.server.d.ts +36 -0
  119. package/dist/components/layout/Flex.server.d.ts.map +1 -0
  120. package/dist/components/layout/Flex.server.js +97 -0
  121. package/dist/components/layout/Flex.server.js.map +1 -0
  122. package/dist/components/layout/Grid.d.ts +31 -0
  123. package/dist/components/layout/Grid.d.ts.map +1 -0
  124. package/dist/components/layout/Grid.js +164 -0
  125. package/dist/components/layout/Grid.js.map +1 -0
  126. package/dist/components/layout/Grid.server.d.ts +32 -0
  127. package/dist/components/layout/Grid.server.d.ts.map +1 -0
  128. package/dist/components/layout/Grid.server.js +92 -0
  129. package/dist/components/layout/Grid.server.js.map +1 -0
  130. package/dist/components/layout/Section.d.ts +35 -0
  131. package/dist/components/layout/Section.d.ts.map +1 -0
  132. package/dist/components/layout/Section.js +212 -0
  133. package/dist/components/layout/Section.js.map +1 -0
  134. package/dist/components/layout/Section.server.d.ts +35 -0
  135. package/dist/components/layout/Section.server.d.ts.map +1 -0
  136. package/dist/components/layout/Section.server.js +144 -0
  137. package/dist/components/layout/Section.server.js.map +1 -0
  138. package/dist/components/layout/Spacer.d.ts +18 -0
  139. package/dist/components/layout/Spacer.d.ts.map +1 -0
  140. package/dist/components/layout/Spacer.js +99 -0
  141. package/dist/components/layout/Spacer.js.map +1 -0
  142. package/dist/components/layout/Spacer.server.d.ts +21 -0
  143. package/dist/components/layout/Spacer.server.d.ts.map +1 -0
  144. package/dist/components/layout/Spacer.server.js +61 -0
  145. package/dist/components/layout/Spacer.server.js.map +1 -0
  146. package/dist/components/layout/Template.d.ts +35 -0
  147. package/dist/components/layout/Template.d.ts.map +1 -0
  148. package/dist/components/layout/Template.js +124 -0
  149. package/dist/components/layout/Template.js.map +1 -0
  150. package/dist/components/layout/Template.server.d.ts +32 -0
  151. package/dist/components/layout/Template.server.d.ts.map +1 -0
  152. package/dist/components/layout/Template.server.js +75 -0
  153. package/dist/components/layout/Template.server.js.map +1 -0
  154. package/dist/components/layout/index.d.ts +14 -0
  155. package/dist/components/layout/index.d.ts.map +1 -0
  156. package/dist/components/layout/index.js +13 -0
  157. package/dist/components/layout/index.js.map +1 -0
  158. package/dist/components/media/Image.d.ts +30 -0
  159. package/dist/components/media/Image.d.ts.map +1 -0
  160. package/dist/components/media/Image.js +123 -0
  161. package/dist/components/media/Image.js.map +1 -0
  162. package/dist/components/media/Image.server.d.ts +28 -0
  163. package/dist/components/media/Image.server.d.ts.map +1 -0
  164. package/dist/components/media/Image.server.js +76 -0
  165. package/dist/components/media/Image.server.js.map +1 -0
  166. package/dist/components/media/index.d.ts +7 -0
  167. package/dist/components/media/index.d.ts.map +1 -0
  168. package/dist/components/media/index.js +7 -0
  169. package/dist/components/media/index.js.map +1 -0
  170. package/dist/components/typography/Heading.d.ts +21 -0
  171. package/dist/components/typography/Heading.d.ts.map +1 -0
  172. package/dist/components/typography/Heading.js +71 -0
  173. package/dist/components/typography/Heading.js.map +1 -0
  174. package/dist/components/typography/Heading.server.d.ts +21 -0
  175. package/dist/components/typography/Heading.server.d.ts.map +1 -0
  176. package/dist/components/typography/Heading.server.js +49 -0
  177. package/dist/components/typography/Heading.server.js.map +1 -0
  178. package/dist/components/typography/RichText.d.ts +20 -0
  179. package/dist/components/typography/RichText.d.ts.map +1 -0
  180. package/dist/components/typography/RichText.editor.d.ts +11 -0
  181. package/dist/components/typography/RichText.editor.d.ts.map +1 -0
  182. package/dist/components/typography/RichText.editor.js +67 -0
  183. package/dist/components/typography/RichText.editor.js.map +1 -0
  184. package/dist/components/typography/RichText.js +73 -0
  185. package/dist/components/typography/RichText.js.map +1 -0
  186. package/dist/components/typography/RichText.server.d.ts +22 -0
  187. package/dist/components/typography/RichText.server.d.ts.map +1 -0
  188. package/dist/components/typography/RichText.server.js +52 -0
  189. package/dist/components/typography/RichText.server.js.map +1 -0
  190. package/dist/components/typography/Text.d.ts +20 -0
  191. package/dist/components/typography/Text.d.ts.map +1 -0
  192. package/dist/components/typography/Text.js +61 -0
  193. package/dist/components/typography/Text.js.map +1 -0
  194. package/dist/components/typography/Text.server.d.ts +21 -0
  195. package/dist/components/typography/Text.server.d.ts.map +1 -0
  196. package/dist/components/typography/Text.server.js +39 -0
  197. package/dist/components/typography/Text.server.js.map +1 -0
  198. package/dist/components/typography/index.d.ts +10 -0
  199. package/dist/components/typography/index.d.ts.map +1 -0
  200. package/dist/components/typography/index.js +10 -0
  201. package/dist/components/typography/index.js.map +1 -0
  202. package/dist/config/config.editor.d.ts +15 -56
  203. package/dist/config/config.editor.d.ts.map +1 -0
  204. package/dist/config/config.editor.js +125 -9364
  205. package/dist/config/config.editor.js.map +1 -0
  206. package/dist/config/index.d.ts +7 -33
  207. package/dist/config/index.d.ts.map +1 -0
  208. package/dist/config/index.js +110 -2028
  209. package/dist/config/index.js.map +1 -0
  210. package/dist/config/merge.d.ts +23 -0
  211. package/dist/config/merge.d.ts.map +1 -0
  212. package/dist/config/merge.js +80 -0
  213. package/dist/config/merge.js.map +1 -0
  214. package/dist/config/presets.d.ts +342 -0
  215. package/dist/config/presets.d.ts.map +1 -0
  216. package/dist/config/presets.js +247 -0
  217. package/dist/config/presets.js.map +1 -0
  218. package/dist/editor/PuckEditor.client.d.ts +131 -0
  219. package/dist/editor/PuckEditor.client.d.ts.map +1 -0
  220. package/dist/editor/PuckEditor.client.js +42 -0
  221. package/dist/editor/PuckEditor.client.js.map +1 -0
  222. package/dist/editor/PuckEditorCore.client.d.ts +141 -0
  223. package/dist/editor/PuckEditorCore.client.d.ts.map +1 -0
  224. package/dist/editor/PuckEditorCore.client.js +306 -0
  225. package/dist/editor/PuckEditorCore.client.js.map +1 -0
  226. package/dist/editor/components/HeaderActions.d.ts +109 -0
  227. package/dist/editor/components/HeaderActions.d.ts.map +1 -0
  228. package/dist/editor/components/HeaderActions.js +254 -0
  229. package/dist/editor/components/HeaderActions.js.map +1 -0
  230. package/dist/editor/components/IframeWrapper.d.ts +77 -0
  231. package/dist/editor/components/IframeWrapper.d.ts.map +1 -0
  232. package/dist/editor/components/IframeWrapper.js +257 -0
  233. package/dist/editor/components/IframeWrapper.js.map +1 -0
  234. package/dist/editor/components/LoadingState.d.ts +14 -0
  235. package/dist/editor/components/LoadingState.d.ts.map +1 -0
  236. package/dist/editor/components/LoadingState.js +12 -0
  237. package/dist/editor/components/LoadingState.js.map +1 -0
  238. package/dist/editor/components/PreviewModal.d.ts +54 -0
  239. package/dist/editor/components/PreviewModal.d.ts.map +1 -0
  240. package/dist/editor/components/PreviewModal.js +298 -0
  241. package/dist/editor/components/PreviewModal.js.map +1 -0
  242. package/dist/editor/components/VersionHistory.d.ts +44 -0
  243. package/dist/editor/components/VersionHistory.d.ts.map +1 -0
  244. package/dist/editor/components/VersionHistory.js +308 -0
  245. package/dist/editor/components/VersionHistory.js.map +1 -0
  246. package/dist/editor/hooks/useUnsavedChanges.d.ts +27 -0
  247. package/dist/editor/hooks/useUnsavedChanges.d.ts.map +1 -0
  248. package/dist/editor/hooks/useUnsavedChanges.js +55 -0
  249. package/dist/editor/hooks/useUnsavedChanges.js.map +1 -0
  250. package/dist/editor/index.d.ts +16 -756
  251. package/dist/editor/index.d.ts.map +1 -0
  252. package/dist/editor/index.js +49 -4533
  253. package/dist/editor/index.js.map +1 -0
  254. package/dist/editor/plugins/index.d.ts +12 -0
  255. package/dist/editor/plugins/index.d.ts.map +1 -0
  256. package/dist/editor/plugins/index.js +12 -0
  257. package/dist/editor/plugins/index.js.map +1 -0
  258. package/dist/endpoints/index.d.ts +46 -0
  259. package/dist/endpoints/index.d.ts.map +1 -0
  260. package/dist/endpoints/index.js +204 -0
  261. package/dist/endpoints/index.js.map +1 -0
  262. package/dist/exports/client.d.ts +19 -0
  263. package/dist/exports/client.d.ts.map +1 -0
  264. package/dist/exports/client.js +21 -0
  265. package/dist/exports/client.js.map +1 -0
  266. package/dist/exports/rsc.d.ts +19 -0
  267. package/dist/exports/rsc.d.ts.map +1 -0
  268. package/dist/exports/rsc.js +19 -0
  269. package/dist/exports/rsc.js.map +1 -0
  270. package/dist/fields/AlignmentField.d.ts +36 -0
  271. package/dist/fields/AlignmentField.d.ts.map +1 -0
  272. package/dist/fields/AlignmentField.js +120 -0
  273. package/dist/fields/AlignmentField.js.map +1 -0
  274. package/dist/fields/AnimationField.d.ts +44 -0
  275. package/dist/fields/AnimationField.d.ts.map +1 -0
  276. package/dist/fields/AnimationField.js +329 -0
  277. package/dist/fields/AnimationField.js.map +1 -0
  278. package/dist/fields/BackgroundField.d.ts +40 -0
  279. package/dist/fields/BackgroundField.d.ts.map +1 -0
  280. package/dist/fields/BackgroundField.js +413 -0
  281. package/dist/fields/BackgroundField.js.map +1 -0
  282. package/dist/fields/BorderField.d.ts +29 -0
  283. package/dist/fields/BorderField.d.ts.map +1 -0
  284. package/dist/fields/BorderField.js +264 -0
  285. package/dist/fields/BorderField.js.map +1 -0
  286. package/dist/fields/ColorPickerField.d.ts +43 -0
  287. package/dist/fields/ColorPickerField.d.ts.map +1 -0
  288. package/dist/fields/ColorPickerField.js +285 -0
  289. package/dist/fields/ColorPickerField.js.map +1 -0
  290. package/dist/fields/DimensionsField.d.ts +43 -0
  291. package/dist/fields/DimensionsField.d.ts.map +1 -0
  292. package/dist/fields/DimensionsField.js +532 -0
  293. package/dist/fields/DimensionsField.js.map +1 -0
  294. package/dist/fields/FlexAlignmentField.d.ts +61 -0
  295. package/dist/fields/FlexAlignmentField.d.ts.map +1 -0
  296. package/dist/fields/FlexAlignmentField.js +166 -0
  297. package/dist/fields/FlexAlignmentField.js.map +1 -0
  298. package/dist/fields/FolderPickerField.d.ts +17 -0
  299. package/dist/fields/FolderPickerField.d.ts.map +1 -0
  300. package/dist/fields/FolderPickerField.js +282 -0
  301. package/dist/fields/FolderPickerField.js.map +1 -0
  302. package/dist/fields/GradientEditor.d.ts +22 -0
  303. package/dist/fields/GradientEditor.d.ts.map +1 -0
  304. package/dist/fields/GradientEditor.js +322 -0
  305. package/dist/fields/GradientEditor.js.map +1 -0
  306. package/dist/fields/LockedField.d.ts +67 -0
  307. package/dist/fields/LockedField.d.ts.map +1 -0
  308. package/dist/fields/LockedField.js +170 -0
  309. package/dist/fields/LockedField.js.map +1 -0
  310. package/dist/fields/MarginField.d.ts +31 -0
  311. package/dist/fields/MarginField.d.ts.map +1 -0
  312. package/dist/fields/MarginField.js +233 -0
  313. package/dist/fields/MarginField.js.map +1 -0
  314. package/dist/fields/MediaField.d.ts +33 -0
  315. package/dist/fields/MediaField.d.ts.map +1 -0
  316. package/dist/fields/MediaField.js +677 -0
  317. package/dist/fields/MediaField.js.map +1 -0
  318. package/dist/fields/PaddingField.d.ts +29 -0
  319. package/dist/fields/PaddingField.d.ts.map +1 -0
  320. package/dist/fields/PaddingField.js +232 -0
  321. package/dist/fields/PaddingField.js.map +1 -0
  322. package/dist/fields/PageSegmentField.d.ts +17 -0
  323. package/dist/fields/PageSegmentField.d.ts.map +1 -0
  324. package/dist/fields/PageSegmentField.js +92 -0
  325. package/dist/fields/PageSegmentField.js.map +1 -0
  326. package/dist/fields/ResetField.d.ts +27 -0
  327. package/dist/fields/ResetField.d.ts.map +1 -0
  328. package/dist/fields/ResetField.js +122 -0
  329. package/dist/fields/ResetField.js.map +1 -0
  330. package/dist/fields/ResponsiveField.d.ts +38 -0
  331. package/dist/fields/ResponsiveField.d.ts.map +1 -0
  332. package/dist/fields/ResponsiveField.js +275 -0
  333. package/dist/fields/ResponsiveField.js.map +1 -0
  334. package/dist/fields/ResponsiveVisibilityField.d.ts +34 -0
  335. package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -0
  336. package/dist/fields/ResponsiveVisibilityField.js +145 -0
  337. package/dist/fields/ResponsiveVisibilityField.js.map +1 -0
  338. package/dist/fields/SizeField.d.ts +54 -0
  339. package/dist/fields/SizeField.d.ts.map +1 -0
  340. package/dist/fields/SizeField.js +255 -0
  341. package/dist/fields/SizeField.js.map +1 -0
  342. package/dist/fields/SlugPreviewField.d.ts +16 -0
  343. package/dist/fields/SlugPreviewField.d.ts.map +1 -0
  344. package/dist/fields/SlugPreviewField.js +49 -0
  345. package/dist/fields/SlugPreviewField.js.map +1 -0
  346. package/dist/fields/TemplateField.d.ts +31 -0
  347. package/dist/fields/TemplateField.d.ts.map +1 -0
  348. package/dist/fields/TemplateField.js +428 -0
  349. package/dist/fields/TemplateField.js.map +1 -0
  350. package/dist/fields/TiptapField.d.ts +40 -0
  351. package/dist/fields/TiptapField.d.ts.map +1 -0
  352. package/dist/fields/TiptapField.js +857 -0
  353. package/dist/fields/TiptapField.js.map +1 -0
  354. package/dist/fields/TiptapModal.d.ts +10 -0
  355. package/dist/fields/TiptapModal.d.ts.map +1 -0
  356. package/dist/fields/TiptapModal.js +114 -0
  357. package/dist/fields/TiptapModal.js.map +1 -0
  358. package/dist/fields/TiptapModalField.d.ts +23 -0
  359. package/dist/fields/TiptapModalField.d.ts.map +1 -0
  360. package/dist/fields/TiptapModalField.js +55 -0
  361. package/dist/fields/TiptapModalField.js.map +1 -0
  362. package/dist/fields/TransformField.d.ts +31 -0
  363. package/dist/fields/TransformField.d.ts.map +1 -0
  364. package/dist/fields/TransformField.js +384 -0
  365. package/dist/fields/TransformField.js.map +1 -0
  366. package/dist/fields/VerticalAlignmentField.d.ts +35 -0
  367. package/dist/fields/VerticalAlignmentField.d.ts.map +1 -0
  368. package/dist/fields/VerticalAlignmentField.js +120 -0
  369. package/dist/fields/VerticalAlignmentField.js.map +1 -0
  370. package/dist/fields/WidthField.d.ts +28 -0
  371. package/dist/fields/WidthField.d.ts.map +1 -0
  372. package/dist/fields/WidthField.js +339 -0
  373. package/dist/fields/WidthField.js.map +1 -0
  374. package/dist/fields/index.d.ts +44 -559
  375. package/dist/fields/index.d.ts.map +1 -0
  376. package/dist/fields/index.js +91 -7685
  377. package/dist/fields/index.js.map +1 -0
  378. package/dist/fields/richtext-output.css +219 -0
  379. package/dist/{shared-DeNKN95N.d.mts → fields/shared.d.ts} +114 -133
  380. package/dist/fields/shared.d.ts.map +1 -0
  381. package/dist/fields/shared.js +1542 -0
  382. package/dist/fields/shared.js.map +1 -0
  383. package/dist/fields/{index.css → tiptap-styles.css} +75 -166
  384. package/dist/hooks/index.d.ts +8 -0
  385. package/dist/hooks/index.d.ts.map +1 -0
  386. package/dist/hooks/index.js +8 -0
  387. package/dist/hooks/index.js.map +1 -0
  388. package/dist/hooks/useResponsiveStyles.d.ts +51 -0
  389. package/dist/hooks/useResponsiveStyles.d.ts.map +1 -0
  390. package/dist/hooks/useResponsiveStyles.js +149 -0
  391. package/dist/hooks/useResponsiveStyles.js.map +1 -0
  392. package/dist/hooks/useScrollAnimation.d.ts +56 -0
  393. package/dist/hooks/useScrollAnimation.d.ts.map +1 -0
  394. package/dist/hooks/useScrollAnimation.js +116 -0
  395. package/dist/hooks/useScrollAnimation.js.map +1 -0
  396. package/dist/index.d.ts +66 -6
  397. package/dist/index.d.ts.map +1 -0
  398. package/dist/index.js +67 -568
  399. package/dist/index.js.map +1 -0
  400. package/dist/layouts/LayoutWrapper.d.ts +33 -0
  401. package/dist/layouts/LayoutWrapper.d.ts.map +1 -0
  402. package/dist/layouts/LayoutWrapper.js +112 -0
  403. package/dist/layouts/LayoutWrapper.js.map +1 -0
  404. package/dist/layouts/defaults.d.ts +40 -0
  405. package/dist/layouts/defaults.d.ts.map +1 -0
  406. package/dist/layouts/defaults.js +106 -0
  407. package/dist/layouts/defaults.js.map +1 -0
  408. package/dist/layouts/index.d.ts +27 -94
  409. package/dist/layouts/index.d.ts.map +1 -0
  410. package/dist/layouts/index.js +30 -393
  411. package/dist/layouts/index.js.map +1 -0
  412. package/dist/{types-D7D3rZ1J.d.ts → layouts/types.d.ts} +8 -11
  413. package/dist/layouts/types.d.ts.map +1 -0
  414. package/dist/layouts/types.js +7 -0
  415. package/dist/layouts/types.js.map +1 -0
  416. package/dist/layouts/utils.d.ts +42 -0
  417. package/dist/layouts/utils.d.ts.map +1 -0
  418. package/dist/layouts/utils.js +83 -0
  419. package/dist/layouts/utils.js.map +1 -0
  420. package/dist/plugin/collections/Pages.d.ts +8 -0
  421. package/dist/plugin/collections/Pages.d.ts.map +1 -0
  422. package/dist/plugin/collections/Pages.js +117 -0
  423. package/dist/plugin/collections/Pages.js.map +1 -0
  424. package/dist/plugin/fields/index.d.ts +153 -0
  425. package/dist/plugin/fields/index.d.ts.map +1 -0
  426. package/dist/plugin/fields/index.js +364 -0
  427. package/dist/plugin/fields/index.js.map +1 -0
  428. package/dist/plugin/fields/types.d.ts +108 -0
  429. package/dist/plugin/fields/types.d.ts.map +1 -0
  430. package/dist/plugin/fields/types.js +7 -0
  431. package/dist/plugin/fields/types.js.map +1 -0
  432. package/dist/plugin/index.d.ts +13 -255
  433. package/dist/plugin/index.d.ts.map +1 -0
  434. package/dist/plugin/index.js +276 -553
  435. package/dist/plugin/index.js.map +1 -0
  436. package/dist/render/HybridPageRenderer.d.ts +85 -0
  437. package/dist/render/HybridPageRenderer.d.ts.map +1 -0
  438. package/dist/render/HybridPageRenderer.js +29 -0
  439. package/dist/render/HybridPageRenderer.js.map +1 -0
  440. package/dist/render/PageRenderer.d.ts +51 -0
  441. package/dist/render/PageRenderer.d.ts.map +1 -0
  442. package/dist/render/PageRenderer.js +61 -0
  443. package/dist/render/PageRenderer.js.map +1 -0
  444. package/dist/render/PuckEditor.client.d.ts +66 -0
  445. package/dist/render/PuckEditor.client.d.ts.map +1 -0
  446. package/dist/render/PuckEditor.client.js +66 -0
  447. package/dist/render/PuckEditor.client.js.map +1 -0
  448. package/dist/render/index.d.ts +8 -106
  449. package/dist/render/index.d.ts.map +1 -0
  450. package/dist/render/index.js +10 -2162
  451. package/dist/render/index.js.map +1 -0
  452. package/dist/theme/context.d.ts +59 -0
  453. package/dist/theme/context.d.ts.map +1 -0
  454. package/dist/theme/context.js +73 -0
  455. package/dist/theme/context.js.map +1 -0
  456. package/dist/theme/defaults.d.ts +39 -0
  457. package/dist/theme/defaults.d.ts.map +1 -0
  458. package/dist/theme/defaults.js +72 -0
  459. package/dist/theme/defaults.js.map +1 -0
  460. package/dist/theme/example.d.ts +30 -0
  461. package/dist/theme/example.d.ts.map +1 -0
  462. package/dist/theme/example.js +89 -0
  463. package/dist/theme/example.js.map +1 -0
  464. package/dist/theme/index.d.ts +17 -140
  465. package/dist/theme/index.d.ts.map +1 -0
  466. package/dist/theme/index.js +34 -200
  467. package/dist/theme/index.js.map +1 -0
  468. package/dist/{types-_6MvjyKv.d.ts → theme/types.d.ts} +8 -9
  469. package/dist/theme/types.d.ts.map +1 -0
  470. package/dist/theme/types.js +9 -0
  471. package/dist/theme/types.js.map +1 -0
  472. package/dist/theme/utils.d.ts +30 -0
  473. package/dist/theme/utils.d.ts.map +1 -0
  474. package/dist/theme/utils.js +84 -0
  475. package/dist/theme/utils.js.map +1 -0
  476. package/dist/{index-CQu6SzDg.d.mts → types/index.d.ts} +120 -115
  477. package/dist/types/index.d.ts.map +1 -0
  478. package/dist/types/index.js +2 -0
  479. package/dist/types/index.js.map +1 -0
  480. package/dist/utils/index.d.ts +23 -257
  481. package/dist/utils/index.d.ts.map +1 -0
  482. package/dist/utils/index.js +56 -425
  483. package/dist/utils/index.js.map +1 -0
  484. package/dist/utils/{index.d.mts → migration.d.ts} +16 -112
  485. package/dist/utils/migration.d.ts.map +1 -0
  486. package/dist/utils/migration.js +309 -0
  487. package/dist/utils/migration.js.map +1 -0
  488. package/dist/utils/validation.d.ts +89 -0
  489. package/dist/utils/validation.d.ts.map +1 -0
  490. package/dist/utils/validation.js +247 -0
  491. package/dist/utils/validation.js.map +1 -0
  492. package/dist/views/PuckConfigContext.d.ts +71 -0
  493. package/dist/views/PuckConfigContext.d.ts.map +1 -0
  494. package/dist/views/PuckConfigContext.js +45 -0
  495. package/dist/views/PuckConfigContext.js.map +1 -0
  496. package/dist/views/PuckEditorClient.d.ts +73 -0
  497. package/dist/views/PuckEditorClient.d.ts.map +1 -0
  498. package/dist/views/PuckEditorClient.js +130 -0
  499. package/dist/views/PuckEditorClient.js.map +1 -0
  500. package/dist/views/PuckEditorView.d.ts +19 -0
  501. package/dist/views/PuckEditorView.d.ts.map +1 -0
  502. package/dist/views/PuckEditorView.js +106 -0
  503. package/dist/views/PuckEditorView.js.map +1 -0
  504. package/dist/views/index.d.ts +10 -0
  505. package/dist/views/index.d.ts.map +1 -0
  506. package/dist/views/index.js +10 -0
  507. package/dist/views/index.js.map +1 -0
  508. package/package.json +50 -72
  509. package/dist/AccordionClient.d.mts +0 -24
  510. package/dist/AccordionClient.d.ts +0 -24
  511. package/dist/AccordionClient.js +0 -786
  512. package/dist/AccordionClient.mjs +0 -784
  513. package/dist/AnimatedWrapper.d.mts +0 -30
  514. package/dist/AnimatedWrapper.d.ts +0 -30
  515. package/dist/AnimatedWrapper.js +0 -379
  516. package/dist/AnimatedWrapper.mjs +0 -377
  517. package/dist/admin/client.d.mts +0 -108
  518. package/dist/admin/client.mjs +0 -173
  519. package/dist/admin/index.d.mts +0 -157
  520. package/dist/admin/index.mjs +0 -29
  521. package/dist/api/index.d.mts +0 -460
  522. package/dist/api/index.mjs +0 -578
  523. package/dist/components/index.css +0 -339
  524. package/dist/components/index.d.mts +0 -222
  525. package/dist/components/index.mjs +0 -9109
  526. package/dist/config/config.editor.css +0 -339
  527. package/dist/config/config.editor.d.mts +0 -153
  528. package/dist/config/config.editor.mjs +0 -9347
  529. package/dist/config/index.d.mts +0 -68
  530. package/dist/config/index.mjs +0 -2008
  531. package/dist/editor/index.d.mts +0 -784
  532. package/dist/editor/index.mjs +0 -4500
  533. package/dist/fields/index.d.mts +0 -600
  534. package/dist/fields/index.mjs +0 -7569
  535. package/dist/index-CoUQnyC3.d.ts +0 -327
  536. package/dist/index.d.mts +0 -6
  537. package/dist/index.mjs +0 -555
  538. package/dist/layouts/index.d.mts +0 -96
  539. package/dist/layouts/index.mjs +0 -378
  540. package/dist/plugin/index.d.mts +0 -289
  541. package/dist/plugin/index.mjs +0 -555
  542. package/dist/render/index.d.mts +0 -109
  543. package/dist/render/index.mjs +0 -2140
  544. package/dist/shared-DeNKN95N.d.ts +0 -546
  545. package/dist/theme/index.d.mts +0 -155
  546. package/dist/theme/index.mjs +0 -186
  547. package/dist/types-D7D3rZ1J.d.mts +0 -116
  548. package/dist/types-_6MvjyKv.d.mts +0 -104
  549. package/dist/utils/index.mjs +0 -412
  550. package/dist/utils-DaRs9t0J.d.mts +0 -85
  551. package/dist/utils-gAvt0Vhw.d.ts +0 -85
  552. package/examples/README.md +0 -247
  553. package/examples/api/puck/pages/[id]/route.ts +0 -64
  554. package/examples/api/puck/pages/[id]/versions/route.ts +0 -47
  555. package/examples/api/puck/pages/route.ts +0 -45
  556. package/examples/app/(frontend)/page.tsx +0 -94
  557. package/examples/app/(manage)/layout.tsx +0 -31
  558. package/examples/app/[...slug]/page.tsx +0 -101
  559. package/examples/app/pages/[id]/edit/page.tsx +0 -148
  560. package/examples/components/CustomBanner.tsx +0 -368
  561. package/examples/config/custom-config.ts +0 -223
  562. package/examples/config/payload.config.example.ts +0 -64
  563. package/examples/lib/puck-layouts.ts +0 -258
  564. package/examples/lib/puck-theme.ts +0 -94
  565. package/examples/styles/puck-theme.css +0 -171
@@ -1,157 +0,0 @@
1
- import { Config, Plugin, Data } from '@measured/puck';
2
- import { Field } from 'payload';
3
-
4
- /**
5
- * Props for the PuckEditorView component
6
- */
7
- interface PuckEditorViewProps {
8
- /**
9
- * Puck configuration with components and settings
10
- */
11
- config: Config;
12
- /**
13
- * Collection slug for API endpoints
14
- * @default 'pages'
15
- */
16
- collectionSlug?: string;
17
- /**
18
- * Base API path for Puck operations
19
- * @default '/api/puck'
20
- */
21
- apiBasePath?: string;
22
- /**
23
- * URL to navigate to when back button is clicked
24
- * Falls back to /admin/collections/{collectionSlug}
25
- */
26
- backUrl?: string;
27
- /**
28
- * Preview URL or function to generate preview URL from slug
29
- */
30
- previewUrl?: string | ((slug: string) => string);
31
- /**
32
- * Layout styles for theme-aware preview
33
- */
34
- layoutStyles?: Record<string, {
35
- background: string;
36
- isDark: boolean;
37
- }>;
38
- /**
39
- * Key in root.props to read layout value from
40
- * @default 'pageLayout'
41
- */
42
- layoutKey?: string;
43
- /**
44
- * Additional Puck plugins to use.
45
- * The headingAnalyzer plugin is included by default.
46
- * Set to `false` to disable all default plugins.
47
- */
48
- plugins?: Plugin[] | false;
49
- /**
50
- * Callback on successful save
51
- */
52
- onSaveSuccess?: (data: Data) => void;
53
- /**
54
- * Callback on save error
55
- */
56
- onSaveError?: (error: Error) => void;
57
- }
58
-
59
- /**
60
- * Props for EditWithPuckButton when used standalone
61
- */
62
- interface EditWithPuckButtonProps {
63
- /**
64
- * Document ID to edit
65
- */
66
- id?: string;
67
- /**
68
- * Collection slug
69
- * @default 'pages'
70
- */
71
- collectionSlug?: string;
72
- /**
73
- * Custom path pattern for the Puck editor
74
- * Use {id} as placeholder for the document ID
75
- * @default '/pages/{id}/edit'
76
- */
77
- editorPathPattern?: string;
78
- /**
79
- * Button label
80
- * @default 'Edit with Puck'
81
- */
82
- label?: string;
83
- /**
84
- * Whether to show as icon only
85
- * @default false
86
- */
87
- iconOnly?: boolean;
88
- }
89
-
90
- /**
91
- * Props for configuring the EditWithPuckCell component
92
- */
93
- interface EditWithPuckCellConfig {
94
- /**
95
- * Collection slug for building the editor URL
96
- * @default 'pages'
97
- */
98
- collectionSlug?: string;
99
- /**
100
- * Custom editor path pattern
101
- * Use {id} as placeholder for the document ID
102
- * @default '/admin/puck/{collectionSlug}/{id}/edit'
103
- */
104
- editorPathPattern?: string;
105
- }
106
-
107
- /**
108
- * Configuration for generating the edit button field
109
- */
110
- interface AdminComponentsConfig {
111
- /**
112
- * Collection slug for the pages collection
113
- * @default 'pages'
114
- */
115
- collectionSlug?: string;
116
- /**
117
- * URL pattern for the Puck editor page
118
- * Use {id} as placeholder for document ID
119
- * @default '/pages/{id}/edit'
120
- */
121
- editorPathPattern?: string;
122
- /**
123
- * Button label text
124
- * @default 'Edit with Puck'
125
- */
126
- buttonLabel?: string;
127
- /**
128
- * Position of the edit button in admin
129
- * @default 'sidebar'
130
- */
131
- buttonPosition?: 'sidebar' | 'main';
132
- }
133
- /**
134
- * Generates the UI field configuration for the Edit with Puck button
135
- *
136
- * Use this if you want to manually add the edit button field to your
137
- * collection instead of using the plugin's auto-generation.
138
- *
139
- * @example
140
- * ```ts
141
- * import { generatePuckEditField } from '@delmaredigital/payload-puck/admin'
142
- *
143
- * const Pages: CollectionConfig = {
144
- * slug: 'pages',
145
- * fields: [
146
- * // ... other fields
147
- * generatePuckEditField({
148
- * editorPathPattern: '/pages/{id}/edit',
149
- * buttonLabel: 'Visual Editor',
150
- * }),
151
- * ],
152
- * }
153
- * ```
154
- */
155
- declare function generatePuckEditField(config?: AdminComponentsConfig): Field;
156
-
157
- export { type AdminComponentsConfig, type EditWithPuckButtonProps, type EditWithPuckCellConfig, type PuckEditorViewProps, generatePuckEditField };
@@ -1,29 +0,0 @@
1
- // src/admin/generateAdminComponents.ts
2
- function generatePuckEditField(config = {}) {
3
- const {
4
- collectionSlug = "pages",
5
- editorPathPattern = "/pages/{id}/edit",
6
- buttonLabel = "Edit with Puck",
7
- buttonPosition = "sidebar"
8
- } = config;
9
- return {
10
- name: "puckEdit",
11
- type: "ui",
12
- admin: {
13
- position: buttonPosition,
14
- components: {
15
- Field: "@delmaredigital/payload-puck/admin/client#EditWithPuckButton",
16
- Cell: "@delmaredigital/payload-puck/admin/client#EditWithPuckCell"
17
- },
18
- custom: {
19
- collectionSlug,
20
- editorPathPattern,
21
- label: buttonLabel
22
- }
23
- }
24
- };
25
- }
26
-
27
- export { generatePuckEditField };
28
- //# sourceMappingURL=index.mjs.map
29
- //# sourceMappingURL=index.mjs.map
@@ -1,460 +0,0 @@
1
- import * as payload from 'payload';
2
- import { NextRequest } from 'next/server';
3
- import { Data } from '@measured/puck';
4
-
5
- /**
6
- * Authenticated user from the auth system
7
- */
8
- interface AuthenticatedUser {
9
- id: string;
10
- [key: string]: unknown;
11
- }
12
- /**
13
- * Result of an authentication check
14
- */
15
- interface AuthResult {
16
- authenticated: boolean;
17
- user?: AuthenticatedUser;
18
- error?: string;
19
- }
20
- /**
21
- * Result of a permission check
22
- */
23
- interface PermissionResult {
24
- allowed: boolean;
25
- error?: string;
26
- }
27
- /**
28
- * Authentication and authorization hooks for Puck API routes
29
- *
30
- * These hooks allow you to integrate with any authentication system
31
- * (Better Auth, NextAuth, Payload auth, custom JWT, etc.)
32
- *
33
- * @example
34
- * ```typescript
35
- * // Example with Better Auth
36
- * const authHooks: PuckApiAuthHooks = {
37
- * authenticate: async (request) => {
38
- * const session = await auth.api.getSession({ headers: await headers() })
39
- * if (!session?.user) return { authenticated: false }
40
- * return { authenticated: true, user: session.user }
41
- * },
42
- * canEdit: async (user, pageId) => {
43
- * return { allowed: hasRole(user, 'editor') }
44
- * },
45
- * }
46
- * ```
47
- */
48
- interface PuckApiAuthHooks {
49
- /**
50
- * Authenticate the incoming request
51
- * Should return the authenticated user or authentication failure
52
- */
53
- authenticate: (request: NextRequest) => Promise<AuthResult>;
54
- /**
55
- * Check if user can list pages
56
- * @default Always allowed for authenticated users
57
- */
58
- canList?: (user: AuthenticatedUser) => Promise<PermissionResult> | PermissionResult;
59
- /**
60
- * Check if user can view a specific page
61
- * @default Always allowed for authenticated users
62
- */
63
- canView?: (user: AuthenticatedUser, pageId: string) => Promise<PermissionResult> | PermissionResult;
64
- /**
65
- * Check if user can create new pages
66
- * @default Always allowed for authenticated users
67
- */
68
- canCreate?: (user: AuthenticatedUser) => Promise<PermissionResult> | PermissionResult;
69
- /**
70
- * Check if user can edit a specific page
71
- * @default Always allowed for authenticated users
72
- */
73
- canEdit?: (user: AuthenticatedUser, pageId: string) => Promise<PermissionResult> | PermissionResult;
74
- /**
75
- * Check if user can publish a specific page (change status to published)
76
- * @default Same as canEdit
77
- */
78
- canPublish?: (user: AuthenticatedUser, pageId: string) => Promise<PermissionResult> | PermissionResult;
79
- /**
80
- * Check if user can delete a specific page
81
- * @default Always allowed for authenticated users
82
- */
83
- canDelete?: (user: AuthenticatedUser, pageId: string) => Promise<PermissionResult> | PermissionResult;
84
- }
85
- /**
86
- * Mapping configuration for syncing Puck root.props to Payload fields
87
- *
88
- * @example
89
- * ```typescript
90
- * // Simple mapping
91
- * { from: 'pageLayout', to: 'pageLayout' }
92
- *
93
- * // Nested field mapping (uses official @payloadcms/plugin-seo convention)
94
- * { from: 'title', to: 'meta.title' }
95
- *
96
- * // With transformation
97
- * {
98
- * from: 'publishDate',
99
- * to: 'publishedAt',
100
- * transform: (value) => value ? new Date(value as string).toISOString() : null
101
- * }
102
- * ```
103
- */
104
- interface RootPropsMapping {
105
- /**
106
- * Property name in Puck root.props
107
- */
108
- from: string;
109
- /**
110
- * Field path in Payload document (supports dot notation for nested fields)
111
- */
112
- to: string;
113
- /**
114
- * Optional transformation function
115
- */
116
- transform?: (value: unknown) => unknown;
117
- }
118
- /**
119
- * Error context passed to onError callback
120
- */
121
- interface ErrorContext {
122
- operation: string;
123
- request: NextRequest;
124
- pageId?: string;
125
- }
126
- /**
127
- * Configuration for Puck API routes
128
- *
129
- * @example
130
- * ```typescript
131
- * const config: PuckApiRoutesConfig = {
132
- * collection: 'pages',
133
- * auth: {
134
- * authenticate: async (request) => {
135
- * // Your auth logic here
136
- * },
137
- * canPublish: async (user) => {
138
- * return { allowed: user.role === 'admin' }
139
- * },
140
- * },
141
- * rootPropsMapping: [
142
- * { from: 'title', to: 'meta.title' },
143
- * { from: 'description', to: 'meta.description' },
144
- * ],
145
- * enableDrafts: true,
146
- * }
147
- * ```
148
- */
149
- interface PuckApiRoutesConfig {
150
- /**
151
- * Payload collection slug for pages
152
- * @default 'pages'
153
- */
154
- collection?: string;
155
- /**
156
- * Payload configuration - import from @payload-config
157
- * Required for Turbopack/Next.js 16+ compatibility
158
- *
159
- * @example
160
- * ```typescript
161
- * import config from '@payload-config'
162
- *
163
- * createPuckApiRoutesWithId({
164
- * payloadConfig: config,
165
- * // ...
166
- * })
167
- * ```
168
- */
169
- payloadConfig: Promise<payload.SanitizedConfig>;
170
- /**
171
- * Authentication and authorization hooks
172
- */
173
- auth: PuckApiAuthHooks;
174
- /**
175
- * Custom mappings from Puck root.props to Payload fields
176
- * These are merged with the default mappings
177
- */
178
- rootPropsMapping?: RootPropsMapping[];
179
- /**
180
- * Default Puck data for new pages
181
- */
182
- defaultPuckData?: Data;
183
- /**
184
- * Enable draft mode for page creation/updates
185
- * @default true
186
- */
187
- enableDrafts?: boolean;
188
- /**
189
- * Custom error handler for logging/monitoring
190
- */
191
- onError?: (error: unknown, context: ErrorContext) => void;
192
- }
193
- /**
194
- * Context passed to Next.js App Router route handlers
195
- */
196
- interface RouteHandlerContext {
197
- params: Promise<Record<string, string>>;
198
- }
199
- /**
200
- * Context for route handlers that require an id parameter
201
- */
202
- interface RouteHandlerWithIdContext {
203
- params: Promise<{
204
- id: string;
205
- }>;
206
- }
207
- /**
208
- * Next.js App Router route handler type
209
- */
210
- type RouteHandler = (request: NextRequest, context: RouteHandlerContext) => Promise<Response>;
211
- /**
212
- * Next.js App Router route handler type for [id] routes
213
- */
214
- type RouteHandlerWithId = (request: NextRequest, context: RouteHandlerWithIdContext) => Promise<Response>;
215
- /**
216
- * Route handlers returned by createPuckApiRoutes
217
- */
218
- interface PuckApiRouteHandlers {
219
- GET: RouteHandler;
220
- POST: RouteHandler;
221
- }
222
- /**
223
- * Route handlers returned by createPuckApiRoutesWithId
224
- */
225
- interface PuckApiRouteWithIdHandlers {
226
- GET: RouteHandlerWithId;
227
- PATCH: RouteHandlerWithId;
228
- DELETE: RouteHandlerWithId;
229
- }
230
- /**
231
- * Request body for creating a new page
232
- */
233
- interface CreatePageBody {
234
- title: string;
235
- slug: string;
236
- puckData?: Data;
237
- status?: 'draft' | 'published';
238
- }
239
- /**
240
- * Request body for updating a page
241
- */
242
- interface UpdatePageBody {
243
- puckData?: Data;
244
- title?: string;
245
- slug?: string;
246
- status?: 'draft' | 'published';
247
- /**
248
- * When true, save as draft without publishing.
249
- * Used by Payload's versions.drafts system.
250
- */
251
- draft?: boolean;
252
- }
253
- /**
254
- * Standard API response wrapper
255
- */
256
- interface ApiResponse<T = unknown> {
257
- doc?: T;
258
- docs?: T[];
259
- error?: string;
260
- success?: boolean;
261
- totalDocs?: number;
262
- totalPages?: number;
263
- page?: number;
264
- limit?: number;
265
- hasPrevPage?: boolean;
266
- hasNextPage?: boolean;
267
- }
268
- /**
269
- * A version entry from Payload's versions system
270
- */
271
- interface PageVersion {
272
- id: string;
273
- parent: string;
274
- version: {
275
- title?: string;
276
- slug?: string;
277
- puckData?: Data;
278
- _status?: 'draft' | 'published';
279
- updatedAt: string;
280
- createdAt: string;
281
- };
282
- createdAt: string;
283
- updatedAt: string;
284
- autosave?: boolean;
285
- latest?: boolean;
286
- }
287
- /**
288
- * Route handlers returned by createPuckApiRoutesVersions
289
- */
290
- interface PuckApiVersionsRouteHandlers {
291
- GET: RouteHandlerWithId;
292
- POST: RouteHandlerWithId;
293
- }
294
-
295
- /**
296
- * Create API route handlers for /api/puck/pages
297
- *
298
- * Provides GET (list pages) and POST (create page) handlers
299
- * with configurable authentication and authorization.
300
- *
301
- * @example
302
- * ```typescript
303
- * // src/app/api/puck/pages/route.ts
304
- * import { createPuckApiRoutes } from '@delmaredigital/payload-puck/api'
305
- * import config from '@payload-config'
306
- *
307
- * export const { GET, POST } = createPuckApiRoutes({
308
- * collection: 'pages',
309
- * payloadConfig: config,
310
- * auth: {
311
- * authenticate: async (request) => {
312
- * const session = await getSession(request)
313
- * if (!session?.user) return { authenticated: false }
314
- * return { authenticated: true, user: session.user }
315
- * },
316
- * canCreate: async (user) => {
317
- * return { allowed: user.role === 'admin' || user.role === 'editor' }
318
- * },
319
- * },
320
- * })
321
- * ```
322
- */
323
- declare function createPuckApiRoutes(routeConfig: PuckApiRoutesConfig): PuckApiRouteHandlers;
324
-
325
- /**
326
- * Create API route handlers for /api/puck/pages/[id]
327
- *
328
- * Provides GET (fetch page), PATCH (update page), and DELETE (delete page)
329
- * handlers with configurable authentication and authorization.
330
- *
331
- * @example
332
- * ```typescript
333
- * // src/app/api/puck/pages/[id]/route.ts
334
- * import { createPuckApiRoutesWithId } from '@delmaredigital/payload-puck/api'
335
- * import config from '@payload-config'
336
- *
337
- * export const { GET, PATCH, DELETE } = createPuckApiRoutesWithId({
338
- * collection: 'pages',
339
- * payloadConfig: config,
340
- * auth: {
341
- * authenticate: async (request) => {
342
- * const session = await getSession(request)
343
- * if (!session?.user) return { authenticated: false }
344
- * return { authenticated: true, user: session.user }
345
- * },
346
- * canPublish: async (user) => {
347
- * return { allowed: user.role === 'admin' }
348
- * },
349
- * },
350
- * rootPropsMapping: [
351
- * { from: 'customField', to: 'customPayloadField' },
352
- * ],
353
- * })
354
- * ```
355
- */
356
- declare function createPuckApiRoutesWithId(routeConfig: PuckApiRoutesConfig): PuckApiRouteWithIdHandlers;
357
-
358
- /**
359
- * Create API route handlers for /api/puck/pages/[id]/versions
360
- *
361
- * Provides GET (list versions) and POST (restore version) handlers
362
- * for managing page version history.
363
- *
364
- * @example
365
- * ```typescript
366
- * // src/app/api/puck/pages/[id]/versions/route.ts
367
- * import { createPuckApiRoutesVersions } from '@delmaredigital/payload-puck/api'
368
- * import config from '@payload-config'
369
- *
370
- * export const { GET, POST } = createPuckApiRoutesVersions({
371
- * collection: 'pages',
372
- * payloadConfig: config,
373
- * auth: {
374
- * authenticate: async (request) => {
375
- * const session = await getSession(request)
376
- * if (!session?.user) return { authenticated: false }
377
- * return { authenticated: true, user: session.user }
378
- * },
379
- * },
380
- * })
381
- * ```
382
- */
383
- declare function createPuckApiRoutesVersions(routeConfig: PuckApiRoutesConfig): PuckApiVersionsRouteHandlers;
384
-
385
- /**
386
- * Default mappings from Puck root.props to Payload fields
387
- *
388
- * These mappings sync common page properties from Puck's visual editor
389
- * to the corresponding Payload collection fields.
390
- *
391
- * SEO fields use the official @payloadcms/plugin-seo convention: meta.title, meta.description
392
- */
393
- declare const DEFAULT_ROOT_PROPS_MAPPINGS: RootPropsMapping[];
394
- /**
395
- * Set a nested value in an object using dot notation path
396
- *
397
- * @example
398
- * ```typescript
399
- * const obj = {}
400
- * setNestedValue(obj, 'meta.title', 'My Title')
401
- * // Result: { meta: { title: 'My Title' } }
402
- * ```
403
- */
404
- declare function setNestedValue(obj: Record<string, unknown>, path: string, value: unknown): void;
405
- /**
406
- * Get a nested value from an object using dot notation path
407
- *
408
- * @example
409
- * ```typescript
410
- * const obj = { meta: { title: 'My Title' } }
411
- * getNestedValue(obj, 'meta.title') // 'My Title'
412
- * ```
413
- */
414
- declare function getNestedValue(obj: Record<string, unknown>, path: string): unknown;
415
- /**
416
- * Merge mappings, with custom mappings taking precedence over defaults
417
- *
418
- * @param customMappings - Custom mappings to merge with defaults
419
- * @returns Merged array of mappings with duplicates resolved (custom wins)
420
- */
421
- declare function mergeMappings(customMappings?: RootPropsMapping[]): RootPropsMapping[];
422
- /**
423
- * Map Puck root.props to Payload field update data
424
- *
425
- * Takes the root.props from Puck data and maps them to the appropriate
426
- * Payload fields based on the provided mappings.
427
- *
428
- * @param rootProps - The root.props object from Puck data
429
- * @param customMappings - Optional custom mappings to merge with defaults
430
- * @returns Object ready to be spread into Payload update data
431
- *
432
- * @example
433
- * ```typescript
434
- * const rootProps = {
435
- * title: 'My Page',
436
- * metaTitle: 'My Page | Site Name',
437
- * metaDescription: 'Description here',
438
- * }
439
- *
440
- * const updateData = mapRootPropsToPayloadFields(rootProps)
441
- * // Result: {
442
- * // title: 'My Page',
443
- * // meta: {
444
- * // title: 'My Page | Site Name',
445
- * // description: 'Description here',
446
- * // },
447
- * // }
448
- * ```
449
- */
450
- declare function mapRootPropsToPayloadFields(rootProps: Record<string, unknown>, customMappings?: RootPropsMapping[]): Record<string, unknown>;
451
- /**
452
- * Deep merge objects, with source values overwriting target values
453
- *
454
- * @param target - The target object to merge into
455
- * @param source - The source object to merge from
456
- * @returns The merged object (target is modified in place)
457
- */
458
- declare function deepMerge(target: Record<string, unknown>, source: Record<string, unknown>): Record<string, unknown>;
459
-
460
- export { type ApiResponse, type AuthResult, type AuthenticatedUser, type CreatePageBody, DEFAULT_ROOT_PROPS_MAPPINGS, type ErrorContext, type PageVersion, type PermissionResult, type PuckApiAuthHooks, type PuckApiRouteHandlers, type PuckApiRouteWithIdHandlers, type PuckApiRoutesConfig, type PuckApiVersionsRouteHandlers, type RootPropsMapping, type RouteHandler, type RouteHandlerContext, type RouteHandlerWithId, type RouteHandlerWithIdContext, type UpdatePageBody, createPuckApiRoutes, createPuckApiRoutesVersions, createPuckApiRoutesWithId, deepMerge, getNestedValue, mapRootPropsToPayloadFields, mergeMappings, setNestedValue };