@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,223 +0,0 @@
1
- /**
2
- * Custom Puck Configuration Example
3
- *
4
- * This example demonstrates how to:
5
- * - Import the base payload-puck configuration
6
- * - Add your own custom components using mergeConfigs
7
- * - Exclude unwanted built-in components
8
- * - Organize components into categories
9
- *
10
- * Copy and adapt this file for your project's needs.
11
- */
12
-
13
- import type { Config as PuckConfig } from '@measured/puck'
14
-
15
- // =============================================================================
16
- // Import the base configuration and merge utility
17
- // =============================================================================
18
-
19
- /**
20
- * The editorConfig is the full payload-puck configuration with all built-in
21
- * components. It includes:
22
- * - Layout: Container, Flex, Grid, Section, Spacer
23
- * - Typography: Heading, Text, RichText
24
- * - Media: Image, TextImageSplit
25
- * - Interactive: Button, Card, Divider, Accordion, CallToAction
26
- *
27
- * mergeConfigs is a utility that helps combine configurations while:
28
- * - Preserving base component configurations
29
- * - Adding new custom components
30
- * - Merging categories appropriately
31
- * - Excluding components you don't need
32
- */
33
- import { editorConfig, mergeConfigs } from '@delmaredigital/payload-puck/config'
34
-
35
- // =============================================================================
36
- // Import your custom components
37
- // =============================================================================
38
-
39
- /**
40
- * Import your custom component configurations.
41
- * Each should export a ComponentConfig object.
42
- *
43
- * See examples/components/CustomBanner.tsx for how to create these.
44
- */
45
- import { CustomBannerConfig } from '../components/CustomBanner'
46
-
47
- // You might also have other custom components:
48
- // import { HeroConfig } from '../components/Hero'
49
- // import { TestimonialConfig } from '../components/Testimonial'
50
- // import { PricingTableConfig } from '../components/PricingTable'
51
-
52
- // =============================================================================
53
- // Create your merged configuration
54
- // =============================================================================
55
-
56
- /**
57
- * Use mergeConfigs to combine the base config with your customizations.
58
- *
59
- * Options:
60
- * - base: The configuration to extend (typically editorConfig)
61
- * - components: Object mapping component names to their configs
62
- * - categories: Object to define/extend component categories
63
- * - root: Optional root configuration overrides
64
- * - exclude: Array of component names to remove from base
65
- */
66
- export const customConfig = mergeConfigs({
67
- // Start with the full payload-puck configuration
68
- base: editorConfig,
69
-
70
- // Add your custom components
71
- // The key becomes the component's identifier in the editor
72
- components: {
73
- // Add the Banner component
74
- Banner: CustomBannerConfig,
75
-
76
- // Add more custom components as needed:
77
- // Hero: HeroConfig,
78
- // Testimonial: TestimonialConfig,
79
- // PricingTable: PricingTableConfig,
80
- },
81
-
82
- // Organize components into categories
83
- // Categories appear as collapsible sections in Puck's component picker
84
- categories: {
85
- // Add Banner to the existing 'interactive' category
86
- // The components array is merged with existing components in that category
87
- interactive: {
88
- title: 'Interactive',
89
- components: ['Banner'],
90
- // Note: Banner will be added alongside existing interactive components
91
- // (Button, Card, Divider, Accordion, CallToAction)
92
- },
93
-
94
- // You can also create entirely new categories:
95
- // marketing: {
96
- // title: 'Marketing',
97
- // components: ['Hero', 'Testimonial', 'PricingTable'],
98
- // defaultExpanded: false, // Collapsed by default
99
- // },
100
- },
101
-
102
- // Exclude components you don't need
103
- // This removes them from both the component list and categories
104
- exclude: [
105
- // Example: Remove CallToAction if you have your own marketing components
106
- // 'CallToAction',
107
-
108
- // Example: Remove TextImageSplit if you prefer custom layouts
109
- // 'TextImageSplit',
110
- ],
111
-
112
- // Optional: Override root configuration
113
- // The root defines page-level fields and the wrapper render function
114
- // root: {
115
- // fields: {
116
- // // Add custom page-level fields
117
- // pageDescription: {
118
- // type: 'textarea',
119
- // label: 'Meta Description',
120
- // },
121
- // headerStyle: {
122
- // type: 'select',
123
- // label: 'Header Style',
124
- // options: [
125
- // { label: 'Default', value: 'default' },
126
- // { label: 'Transparent', value: 'transparent' },
127
- // { label: 'Dark', value: 'dark' },
128
- // ],
129
- // },
130
- // },
131
- // defaultProps: {
132
- // pageDescription: '',
133
- // headerStyle: 'default',
134
- // },
135
- // },
136
- })
137
-
138
- // =============================================================================
139
- // Alternative: Minimal configuration with only your components
140
- // =============================================================================
141
-
142
- /**
143
- * If you want to start from scratch with only specific components,
144
- * you can build a config directly without merging.
145
- *
146
- * This is useful when you want full control over what's available.
147
- */
148
- // import type { ComponentConfig } from '@measured/puck'
149
- // import { ContainerConfig, FlexConfig } from '@delmaredigital/payload-puck/components'
150
- // import { HeadingConfig, TextConfig } from '@delmaredigital/payload-puck/components'
151
- //
152
- // export const minimalConfig: PuckConfig = {
153
- // root: {
154
- // fields: {
155
- // title: { type: 'text', label: 'Page Title' },
156
- // },
157
- // defaultProps: {
158
- // title: 'New Page',
159
- // },
160
- // render: ({ children }) => <>{children}</>,
161
- // },
162
- // categories: {
163
- // layout: {
164
- // title: 'Layout',
165
- // components: ['Container', 'Flex'],
166
- // },
167
- // content: {
168
- // title: 'Content',
169
- // components: ['Heading', 'Text', 'Banner'],
170
- // },
171
- // },
172
- // components: {
173
- // Container: ContainerConfig as ComponentConfig<any>,
174
- // Flex: FlexConfig as ComponentConfig<any>,
175
- // Heading: HeadingConfig as ComponentConfig<any>,
176
- // Text: TextConfig as ComponentConfig<any>,
177
- // Banner: CustomBannerConfig as ComponentConfig<any>,
178
- // },
179
- // }
180
-
181
- // =============================================================================
182
- // Usage in your Puck Editor
183
- // =============================================================================
184
-
185
- /**
186
- * Import this config in your Puck editor page:
187
- *
188
- * ```tsx
189
- * // app/(manage)/pages/[id]/edit/page.tsx
190
- * 'use client'
191
- *
192
- * import { Puck } from '@measured/puck'
193
- * import { customConfig } from '@/lib/puck/custom-config'
194
- * import { ThemeProvider } from '@delmaredigital/payload-puck/theme'
195
- *
196
- * export default function EditorPage({ data, onSave }) {
197
- * return (
198
- * <ThemeProvider>
199
- * <Puck
200
- * config={customConfig}
201
- * data={data}
202
- * onPublish={onSave}
203
- * />
204
- * </ThemeProvider>
205
- * )
206
- * }
207
- * ```
208
- *
209
- * And in your page renderer:
210
- *
211
- * ```tsx
212
- * // app/(frontend)/[...slug]/page.tsx
213
- * import { Render } from '@measured/puck'
214
- * import { customConfig } from '@/lib/puck/custom-config'
215
- *
216
- * export default function Page({ data }) {
217
- * return <Render config={customConfig} data={data} />
218
- * }
219
- * ```
220
- */
221
-
222
- // Export for use in your application
223
- export default customConfig
@@ -1,64 +0,0 @@
1
- /**
2
- * Payload Configuration with Puck Plugin
3
- *
4
- * Copy to: src/payload.config.ts (merge with existing config)
5
- *
6
- * This shows the minimal configuration needed to add Puck to your Payload setup.
7
- */
8
-
9
- import { buildConfig } from 'payload'
10
- import { createPuckPlugin } from '@delmaredigital/payload-puck/plugin'
11
- // Import your other Payload plugins, collections, etc.
12
-
13
- export default buildConfig({
14
- // ... your existing config (admin, db, etc.)
15
-
16
- plugins: [
17
- // Add Puck plugin
18
- createPuckPlugin({
19
- // Collection slug for pages (default: 'pages')
20
- pagesCollection: 'pages',
21
-
22
- // Auto-generate the Pages collection (default: true)
23
- // Set to false if you want to define your own collection
24
- autoGenerateCollection: true,
25
-
26
- // Optional: Override collection config
27
- collectionOverrides: {
28
- admin: {
29
- defaultColumns: ['title', 'slug', 'updatedAt'],
30
- },
31
- },
32
-
33
- // Optional: Custom access control
34
- access: {
35
- read: () => true,
36
- create: ({ req }) => !!req.user,
37
- update: ({ req }) => !!req.user,
38
- delete: ({ req }) => !!req.user,
39
- },
40
-
41
- // Optional: Custom layouts (shown in editor page layout selector)
42
- // Only value/label are needed here - header/footer components are added
43
- // in your puck-layouts.ts file for editor preview and frontend rendering
44
- layouts: [
45
- { value: 'default', label: 'Default' },
46
- { value: 'landing', label: 'Landing' },
47
- { value: 'full-width', label: 'Full Width' },
48
- ],
49
-
50
- // Admin UI configuration
51
- admin: {
52
- // URL pattern for the editor (use {id} placeholder)
53
- editorPathPattern: '/pages/{id}/edit',
54
- // Button label in Payload admin
55
- buttonLabel: 'Edit with Puck',
56
- },
57
- }),
58
-
59
- // ... your other plugins
60
- ],
61
-
62
- // Required for Puck pages: Enable drafts on the pages collection
63
- // (The plugin handles this automatically when autoGenerateCollection is true)
64
- })
@@ -1,258 +0,0 @@
1
- /**
2
- * Custom Page Layouts
3
- *
4
- * Copy this file to: src/lib/puck-layouts.ts
5
- *
6
- * Define custom page layouts that affect how Puck content is rendered.
7
- * Each layout can specify CSS classes, max-width constraints, header/footer
8
- * components, and editor preview styling.
9
- *
10
- * Usage:
11
- * 1. Copy this file to your project's lib folder
12
- * 2. Import your Header/Footer components
13
- * 3. Customize the layouts to match your design system
14
- * 4. Import and use in your PuckEditor, PageRenderer, and plugin config
15
- */
16
-
17
- import {
18
- DEFAULT_LAYOUTS,
19
- createLayout,
20
- mergeLayouts,
21
- type LayoutDefinition,
22
- } from '@delmaredigital/payload-puck/layouts'
23
-
24
- // =============================================================================
25
- // Import your site's header/footer components
26
- // =============================================================================
27
-
28
- // Uncomment and adjust these imports for your project:
29
- // import { Header } from '@/components/header'
30
- // import { Footer } from '@/components/footer'
31
-
32
- // =============================================================================
33
- // Layouts with Header/Footer Examples
34
- // =============================================================================
35
-
36
- /**
37
- * Default layout with sticky header
38
- *
39
- * For layouts with sticky/fixed headers, set stickyHeaderHeight to the
40
- * header's pixel height. This adds padding-top to content in both the
41
- * editor preview AND the frontend, ensuring content doesn't render
42
- * behind the header.
43
- *
44
- * Note: stickyFooter defaults to true - the footer will always be pushed
45
- * to the bottom of the viewport even with minimal content. Set to false
46
- * if you want the footer to flow naturally after content.
47
- */
48
- export const defaultWithHeader = createLayout({
49
- value: 'default',
50
- label: 'Default',
51
- description: 'Standard page layout with header and footer',
52
- classes: {
53
- wrapper: '',
54
- container: 'mx-auto px-4 sm:px-6 lg:px-8',
55
- content: '',
56
- },
57
- maxWidth: '1200px',
58
- fullWidth: false,
59
- // Uncomment to add your header/footer:
60
- // header: Header,
61
- // footer: Footer,
62
- // Editor preview settings
63
- editorBackground: '#ffffff',
64
- editorDarkMode: false,
65
- // Set this to your header's height if it's sticky/fixed
66
- stickyHeaderHeight: 80,
67
- // stickyFooter: true (default) - footer stays at bottom of viewport
68
- // Set to false if you want footer to flow after content:
69
- // stickyFooter: false,
70
- })
71
-
72
- /**
73
- * Landing page layout - no header/footer
74
- *
75
- * Full-width layout for custom landing pages where you want
76
- * complete control over the header area (e.g., transparent headers
77
- * over hero sections).
78
- */
79
- export const landingLayout = createLayout({
80
- value: 'landing',
81
- label: 'Landing',
82
- description: 'Full-width layout without header/footer',
83
- classes: {
84
- wrapper: '',
85
- container: '',
86
- content: '',
87
- },
88
- fullWidth: true,
89
- // No header/footer - landing pages have custom designs
90
- editorBackground: '#f8fafc',
91
- editorDarkMode: false,
92
- })
93
-
94
- /**
95
- * Dark theme layout example
96
- *
97
- * Demonstrates editorDarkMode for layouts with dark backgrounds.
98
- */
99
- export const darkLayout = createLayout({
100
- value: 'dark',
101
- label: 'Dark',
102
- description: 'Dark theme layout',
103
- classes: {
104
- wrapper: 'bg-gray-900',
105
- container: 'mx-auto px-4 sm:px-6 lg:px-8',
106
- content: '',
107
- },
108
- maxWidth: '1200px',
109
- fullWidth: false,
110
- // Uncomment to add dark-themed header/footer:
111
- // header: DarkHeader,
112
- // footer: DarkFooter,
113
- editorBackground: '#111827', // gray-900
114
- editorDarkMode: true,
115
- stickyHeaderHeight: 80,
116
- })
117
-
118
- // =============================================================================
119
- // Additional Layout Examples
120
- // =============================================================================
121
-
122
- /**
123
- * Blog post layout - narrow width optimized for reading
124
- */
125
- export const blogLayout = createLayout({
126
- value: 'blog',
127
- label: 'Blog Post',
128
- description: 'Narrow layout optimized for long-form reading',
129
- classes: {
130
- wrapper: '',
131
- container: 'mx-auto px-4 sm:px-6',
132
- content: 'prose prose-lg max-w-none',
133
- },
134
- maxWidth: '720px',
135
- fullWidth: false,
136
- // Uncomment for blog header/footer:
137
- // header: Header,
138
- // footer: Footer,
139
- editorBackground: '#ffffff',
140
- stickyHeaderHeight: 80,
141
- })
142
-
143
- /**
144
- * Documentation layout - with sidebar space consideration
145
- */
146
- export const docsLayout = createLayout({
147
- value: 'docs',
148
- label: 'Documentation',
149
- description: 'Layout for documentation pages',
150
- classes: {
151
- wrapper: '',
152
- container: 'mx-auto px-4 sm:px-6 lg:px-8',
153
- content: 'prose max-w-none',
154
- },
155
- maxWidth: '900px',
156
- fullWidth: false,
157
- })
158
-
159
- /**
160
- * Dashboard layout - full width with minimal padding
161
- */
162
- export const dashboardLayout = createLayout({
163
- value: 'dashboard',
164
- label: 'Dashboard',
165
- description: 'Full-width layout for dashboards and data displays',
166
- classes: {
167
- wrapper: 'min-h-screen bg-gray-50',
168
- container: 'p-4 sm:p-6',
169
- content: '',
170
- },
171
- fullWidth: true,
172
- editorBackground: '#f9fafb', // gray-50
173
- })
174
-
175
- /**
176
- * Marketing layout - sections span full width, content contained
177
- */
178
- export const marketingLayout = createLayout({
179
- value: 'marketing',
180
- label: 'Marketing',
181
- description: 'Full-width sections with contained content areas',
182
- classes: {
183
- wrapper: '',
184
- container: '',
185
- content: '',
186
- },
187
- fullWidth: true,
188
- // Uncomment for marketing header/footer:
189
- // header: Header,
190
- // footer: Footer,
191
- dataAttributes: {
192
- 'data-page-type': 'marketing',
193
- },
194
- stickyHeaderHeight: 80,
195
- })
196
-
197
- // =============================================================================
198
- // Combined Layouts
199
- // =============================================================================
200
-
201
- /**
202
- * All custom layouts combined with defaults
203
- *
204
- * Use this in your PuckEditor and PageRenderer
205
- */
206
- export const customLayouts: LayoutDefinition[] = mergeLayouts(
207
- DEFAULT_LAYOUTS,
208
- [
209
- defaultWithHeader,
210
- landingLayout,
211
- darkLayout,
212
- blogLayout,
213
- docsLayout,
214
- dashboardLayout,
215
- marketingLayout,
216
- ],
217
- { replace: true } // Replace default layouts with our customized versions
218
- )
219
-
220
- // =============================================================================
221
- // Usage Examples
222
- // =============================================================================
223
-
224
- /*
225
- // 1. In your editor page (e.g., app/(manage)/pages/[id]/edit/page.tsx):
226
- import { PuckEditor } from '@delmaredigital/payload-puck/editor'
227
- import { customLayouts } from '@/lib/puck-layouts'
228
-
229
- <PuckEditor
230
- config={editorConfig}
231
- pageId={page.id}
232
- initialData={page.puckData}
233
- layouts={customLayouts} // <-- Pass layouts here
234
- />
235
-
236
- // 2. In your page renderer (e.g., app/(frontend)/[...slug]/page.tsx):
237
- import { PageRenderer } from '@delmaredigital/payload-puck/render'
238
- import { customLayouts } from '@/lib/puck-layouts'
239
-
240
- <PageRenderer
241
- data={page.puckData}
242
- layouts={customLayouts} // <-- Pass layouts here
243
- />
244
-
245
- // 3. In payload.config.ts (optional - for layout field in Pages collection):
246
- import { customLayouts } from '@/lib/puck-layouts'
247
-
248
- createPuckPlugin({
249
- layouts: customLayouts,
250
- // ... other options
251
- })
252
-
253
- // 4. Create a custom Puck config with layouts:
254
- import { createConfig } from '@delmaredigital/payload-puck/config'
255
- import { customLayouts } from '@/lib/puck-layouts'
256
-
257
- const myConfig = createConfig(customLayouts)
258
- */
@@ -1,94 +0,0 @@
1
- /**
2
- * Puck Theme Configuration
3
- *
4
- * Copy this file to: src/lib/puck-theme.ts
5
- *
6
- * Customizes Puck component styles to match your design system.
7
- * This example uses shadcn/ui CSS variable conventions.
8
- *
9
- * Usage:
10
- * ```tsx
11
- * import { puckTheme } from '@/lib/puck-theme'
12
- *
13
- * <PageRenderer data={data} config={config} theme={puckTheme} />
14
- * <PuckEditor ... theme={puckTheme} />
15
- * ```
16
- */
17
-
18
- import type { ThemeConfig } from '@delmaredigital/payload-puck/theme'
19
-
20
- /**
21
- * Theme using CSS variables from your design system
22
- *
23
- * Assumes your globals.css defines:
24
- * --primary, --primary-foreground
25
- * --secondary, --secondary-foreground
26
- * --accent, --accent-foreground
27
- * --muted, --muted-foreground
28
- * --destructive, --destructive-foreground
29
- * --background, --foreground
30
- * --input, --ring
31
- */
32
- export const puckTheme: ThemeConfig = {
33
- // Button component variants
34
- buttonVariants: {
35
- default: {
36
- classes: 'bg-primary text-primary-foreground hover:bg-primary/90',
37
- },
38
- secondary: {
39
- classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',
40
- },
41
- outline: {
42
- classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',
43
- },
44
- ghost: {
45
- classes: 'hover:bg-accent hover:text-accent-foreground',
46
- },
47
- destructive: {
48
- classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',
49
- },
50
- link: {
51
- classes: 'text-primary underline-offset-4 hover:underline',
52
- },
53
- },
54
-
55
- // CTA button variants
56
- ctaButtonVariants: {
57
- primary: {
58
- classes: 'bg-primary text-primary-foreground hover:bg-primary/90',
59
- },
60
- secondary: {
61
- classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',
62
- },
63
- outline: {
64
- classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',
65
- },
66
- },
67
-
68
- // CTA background styles
69
- ctaBackgroundStyles: {
70
- default: 'bg-muted',
71
- dark: 'bg-primary text-primary-foreground',
72
- light: 'bg-background',
73
- },
74
-
75
- // Focus ring class
76
- focusRingColor: 'focus:ring-ring',
77
-
78
- // Color picker presets - customize with your brand colors
79
- colorPresets: [
80
- { hex: '#ffffff', label: 'White' },
81
- { hex: '#f8fafc', label: 'Background' },
82
- { hex: '#f1f5f9', label: 'Secondary' },
83
- { hex: '#e2e8f0', label: 'Muted' },
84
- { hex: '#64748b', label: 'Muted FG' },
85
- { hex: '#334155', label: 'Slate 700' },
86
- { hex: '#1e293b', label: 'Primary' },
87
- { hex: '#0f172a', label: 'Foreground' },
88
- { hex: '#000000', label: 'Black' },
89
- // Add your brand accent colors:
90
- // { hex: '#3b82f6', label: 'Brand Blue' },
91
- // { hex: '#10b981', label: 'Success' },
92
- // { hex: '#ef4444', label: 'Danger' },
93
- ],
94
- }