@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
package/dist/index.mjs DELETED
@@ -1,555 +0,0 @@
1
- // src/layouts/defaults.ts
2
- var defaultLayout = {
3
- value: "default",
4
- label: "Default",
5
- description: "Standard page layout with contained content width",
6
- classes: {
7
- wrapper: "",
8
- container: "mx-auto px-4 sm:px-6 lg:px-8",
9
- content: ""
10
- },
11
- maxWidth: "1200px",
12
- fullWidth: false
13
- };
14
- var landingLayout = {
15
- value: "landing",
16
- label: "Landing",
17
- description: "Full-width sections with no global container constraints",
18
- classes: {
19
- wrapper: "",
20
- container: "",
21
- content: ""
22
- },
23
- fullWidth: true
24
- };
25
- var fullWidthLayout = {
26
- value: "full-width",
27
- label: "Full Width",
28
- description: "Content spans the full viewport width",
29
- classes: {
30
- wrapper: "w-full",
31
- container: "w-full",
32
- content: ""
33
- },
34
- maxWidth: "100%",
35
- fullWidth: true
36
- };
37
- var DEFAULT_LAYOUTS = [
38
- defaultLayout,
39
- landingLayout,
40
- fullWidthLayout
41
- ];
42
-
43
- // src/layouts/utils.ts
44
- function layoutsToPayloadOptions(layouts) {
45
- return layouts.map(({ value, label }) => ({
46
- label,
47
- value
48
- }));
49
- }
50
-
51
- // src/plugin/fields/index.ts
52
- var puckDataField = {
53
- name: "puckData",
54
- type: "json",
55
- admin: {
56
- hidden: true,
57
- description: "Puck editor data - managed via visual editor"
58
- }
59
- };
60
- function createEditorVersionField(defaultValue = "puck", sidebar = true, legacyBlocksFieldName = "layout") {
61
- return {
62
- name: "editorVersion",
63
- type: "select",
64
- // NO defaultValue here - we use the hook to intelligently detect the value
65
- // This prevents migrations from blindly setting 'puck' on legacy pages
66
- options: [
67
- { label: "Legacy (Payload Blocks)", value: "legacy" },
68
- { label: "Puck Visual Editor", value: "puck" }
69
- ],
70
- admin: {
71
- position: sidebar ? "sidebar" : void 0,
72
- description: "Which editor was used to create this page"
73
- },
74
- hooks: {
75
- beforeValidate: [
76
- ({ value, data, operation }) => {
77
- if (value) return value;
78
- const legacyBlocks = data?.[legacyBlocksFieldName];
79
- const hasLegacyBlocks = Array.isArray(legacyBlocks) && legacyBlocks.length > 0;
80
- const puckData = data?.puckData;
81
- const hasPuckData = puckData?.content && Array.isArray(puckData.content) && puckData.content.length > 0;
82
- if (hasLegacyBlocks && !hasPuckData) {
83
- return "legacy";
84
- }
85
- if (hasPuckData) {
86
- return "puck";
87
- }
88
- return defaultValue;
89
- }
90
- ]
91
- }
92
- };
93
- }
94
- var editorVersionField = createEditorVersionField("puck", true);
95
- function createPageLayoutField(layouts = DEFAULT_LAYOUTS, sidebar = true) {
96
- return {
97
- name: "pageLayout",
98
- type: "select",
99
- required: true,
100
- defaultValue: "default",
101
- options: layoutsToPayloadOptions(layouts),
102
- admin: {
103
- position: sidebar ? "sidebar" : void 0,
104
- description: "Overall page structure and layout style"
105
- }
106
- };
107
- }
108
- var pageLayoutField = createPageLayoutField();
109
- var isHomepageField = {
110
- name: "isHomepage",
111
- type: "checkbox",
112
- defaultValue: false,
113
- admin: {
114
- position: "sidebar",
115
- description: "Mark this page as the homepage"
116
- }
117
- };
118
- var seoFieldGroup = {
119
- name: "meta",
120
- type: "group",
121
- label: "SEO",
122
- admin: {
123
- position: "sidebar"
124
- },
125
- fields: [
126
- {
127
- name: "title",
128
- type: "text",
129
- label: "Meta Title",
130
- admin: {
131
- description: "Override the page title for search engines"
132
- }
133
- },
134
- {
135
- name: "description",
136
- type: "textarea",
137
- label: "Meta Description",
138
- admin: {
139
- description: "Description shown in search engine results"
140
- }
141
- },
142
- {
143
- name: "image",
144
- type: "upload",
145
- relationTo: "media",
146
- label: "Open Graph Image",
147
- admin: {
148
- description: "Image shown when sharing on social media"
149
- }
150
- },
151
- {
152
- name: "noindex",
153
- type: "checkbox",
154
- label: "No Index",
155
- defaultValue: false,
156
- admin: {
157
- description: "Prevent search engines from indexing this page"
158
- }
159
- },
160
- {
161
- name: "nofollow",
162
- type: "checkbox",
163
- label: "No Follow",
164
- defaultValue: false,
165
- admin: {
166
- description: "Prevent search engines from following links on this page"
167
- }
168
- },
169
- {
170
- name: "excludeFromSitemap",
171
- type: "checkbox",
172
- label: "Exclude from Sitemap",
173
- defaultValue: false,
174
- admin: {
175
- description: "Exclude this page from the XML sitemap"
176
- }
177
- }
178
- ]
179
- };
180
- var DEFAULT_CONVERSION_TYPES = [
181
- { label: "Lead", value: "lead" },
182
- { label: "Registration", value: "registration" },
183
- { label: "Purchase", value: "purchase" },
184
- { label: "Donation", value: "donation" },
185
- { label: "Newsletter Signup", value: "newsletter" },
186
- { label: "Contact Form", value: "contact" },
187
- { label: "Custom", value: "custom" }
188
- ];
189
- function createConversionFieldGroup(conversionTypes = DEFAULT_CONVERSION_TYPES, sidebar = true) {
190
- return {
191
- name: "conversionTracking",
192
- type: "group",
193
- label: "Conversion Tracking",
194
- admin: {
195
- position: sidebar ? "sidebar" : void 0,
196
- description: "Configure conversion tracking for analytics"
197
- },
198
- fields: [
199
- {
200
- name: "isConversionPage",
201
- type: "checkbox",
202
- label: "Is Conversion Page",
203
- defaultValue: false,
204
- admin: {
205
- description: "Check this if this page represents a completed conversion (e.g., thank you page)"
206
- }
207
- },
208
- {
209
- name: "conversionType",
210
- type: "select",
211
- label: "Conversion Type",
212
- options: conversionTypes,
213
- admin: {
214
- description: "Type of conversion this page represents",
215
- condition: (data, siblingData) => siblingData?.isConversionPage === true
216
- }
217
- },
218
- {
219
- name: "conversionValue",
220
- type: "number",
221
- label: "Conversion Value",
222
- defaultValue: 0,
223
- admin: {
224
- description: "Monetary value of this conversion (0 for non-monetary conversions)",
225
- condition: (data, siblingData) => siblingData?.isConversionPage === true
226
- }
227
- }
228
- ]
229
- };
230
- }
231
- var conversionFieldGroup = createConversionFieldGroup();
232
- function getPuckFields(options = {}) {
233
- const {
234
- includeSEO = true,
235
- includeConversion = false,
236
- includeEditorVersion = true,
237
- includePageLayout = true,
238
- includeIsHomepage = false,
239
- layouts = DEFAULT_LAYOUTS,
240
- defaultEditorVersion = "puck",
241
- legacyBlocksFieldName = "layout",
242
- sidebarPosition = true,
243
- conversionTypeOptions
244
- } = options;
245
- const fields = [];
246
- fields.push(puckDataField);
247
- if (includeEditorVersion) {
248
- fields.push(createEditorVersionField(defaultEditorVersion, sidebarPosition, legacyBlocksFieldName));
249
- }
250
- if (includePageLayout) {
251
- fields.push(createPageLayoutField(layouts, sidebarPosition));
252
- }
253
- if (includeIsHomepage) {
254
- fields.push(isHomepageField);
255
- }
256
- if (includeSEO) {
257
- fields.push(seoFieldGroup);
258
- }
259
- if (includeConversion) {
260
- fields.push(createConversionFieldGroup(conversionTypeOptions, sidebarPosition));
261
- }
262
- return fields;
263
- }
264
-
265
- // src/plugin/collections/Pages.ts
266
- var defaultAccess = () => true;
267
- function generatePagesCollection(slug, options) {
268
- const {
269
- collectionOverrides = {},
270
- access = {},
271
- layouts = DEFAULT_LAYOUTS,
272
- additionalFields = []
273
- } = options;
274
- const baseFields = [
275
- // Core Fields (title and slug with duplication hooks - unique to collection generation)
276
- {
277
- name: "title",
278
- type: "text",
279
- required: true,
280
- hooks: {
281
- beforeDuplicate: [
282
- ({ value }) => {
283
- if (!value) return value;
284
- const copyMatch = value.match(/^(.+) \(Copy(?: (\d+))?\)$/);
285
- if (copyMatch) {
286
- const baseName = copyMatch[1];
287
- const copyNum = copyMatch[2] ? parseInt(copyMatch[2], 10) + 1 : 2;
288
- return `${baseName} (Copy ${copyNum})`;
289
- }
290
- return `${value} (Copy)`;
291
- }
292
- ]
293
- }
294
- },
295
- {
296
- name: "slug",
297
- type: "text",
298
- required: true,
299
- unique: true,
300
- index: true,
301
- admin: {
302
- position: "sidebar",
303
- description: "URL path for this page (auto-generated from title)"
304
- },
305
- hooks: {
306
- beforeValidate: [
307
- ({ data, value }) => {
308
- if (data && !value && data.title) {
309
- return data.title.toLowerCase().replace(/[^\w\s-]/g, "").replace(/\s+/g, "-").replace(/-+/g, "-").trim();
310
- }
311
- return value;
312
- }
313
- ],
314
- beforeDuplicate: [
315
- ({ value }) => {
316
- if (!value) return value;
317
- const copyMatch = value.match(/^(.+)-copy(?:-(\d+))?$/);
318
- if (copyMatch) {
319
- const baseName = copyMatch[1];
320
- const copyNum = copyMatch[2] ? parseInt(copyMatch[2], 10) + 1 : 2;
321
- return `${baseName}-copy-${copyNum}`;
322
- }
323
- return `${value}-copy`;
324
- }
325
- ]
326
- }
327
- },
328
- // Page Layout
329
- createPageLayoutField(layouts, true),
330
- // Editor Version
331
- createEditorVersionField("puck", true),
332
- // Homepage Flag
333
- isHomepageField,
334
- // Puck Data (hidden - managed via visual editor)
335
- puckDataField,
336
- // SEO Fields
337
- seoFieldGroup,
338
- // Conversion Tracking Fields
339
- conversionFieldGroup,
340
- // Additional fields from options
341
- ...additionalFields
342
- ];
343
- return {
344
- slug,
345
- admin: {
346
- useAsTitle: "title",
347
- group: "Content",
348
- defaultColumns: ["title", "slug", "_status", "updatedAt"],
349
- ...collectionOverrides.admin ?? {}
350
- },
351
- access: {
352
- read: access.read ?? defaultAccess,
353
- create: access.create ?? defaultAccess,
354
- update: access.update ?? defaultAccess,
355
- delete: access.delete ?? defaultAccess,
356
- ...collectionOverrides.access ?? {}
357
- },
358
- versions: typeof collectionOverrides.versions === "object" ? { drafts: true, ...collectionOverrides.versions } : { drafts: true },
359
- fields: baseFields,
360
- ...collectionOverrides,
361
- // Ensure fields aren't overwritten by collectionOverrides
362
- ...collectionOverrides.fields && {
363
- fields: [...baseFields, ...collectionOverrides.fields]
364
- }
365
- };
366
- }
367
-
368
- // src/collections/Templates.ts
369
- var TemplatesCollection = {
370
- slug: "puck-templates",
371
- admin: {
372
- useAsTitle: "name",
373
- group: "Puck",
374
- defaultColumns: ["name", "category", "updatedAt"],
375
- description: "Reusable component templates for the visual editor"
376
- },
377
- access: {
378
- read: () => true,
379
- create: ({ req }) => !!req.user,
380
- update: ({ req }) => !!req.user,
381
- delete: ({ req }) => !!req.user
382
- },
383
- fields: [
384
- {
385
- name: "name",
386
- type: "text",
387
- required: true,
388
- admin: {
389
- description: "A descriptive name for this template"
390
- }
391
- },
392
- {
393
- name: "description",
394
- type: "textarea",
395
- admin: {
396
- description: "Optional description of what this template contains"
397
- }
398
- },
399
- {
400
- name: "category",
401
- type: "text",
402
- admin: {
403
- description: 'Category for organizing templates (e.g., "Hero", "Footer", "CTA")'
404
- }
405
- },
406
- {
407
- name: "content",
408
- type: "json",
409
- required: true,
410
- admin: {
411
- description: "Serialized Puck component data"
412
- }
413
- },
414
- {
415
- name: "thumbnail",
416
- type: "text",
417
- admin: {
418
- description: "Optional thumbnail URL for template preview"
419
- }
420
- }
421
- ],
422
- timestamps: true
423
- };
424
-
425
- // src/plugin/index.ts
426
- function getExistingFieldNames(fields) {
427
- const names = /* @__PURE__ */ new Set();
428
- function addFieldNames(fieldsToCheck) {
429
- for (const field of fieldsToCheck) {
430
- if ("name" in field && field.name) {
431
- names.add(field.name);
432
- }
433
- if ("fields" in field && Array.isArray(field.fields)) {
434
- addFieldNames(field.fields);
435
- }
436
- if (field.type === "tabs" && "tabs" in field && Array.isArray(field.tabs)) {
437
- for (const tab of field.tabs) {
438
- if ("fields" in tab && Array.isArray(tab.fields)) {
439
- addFieldNames(tab.fields);
440
- }
441
- }
442
- }
443
- }
444
- }
445
- addFieldNames(fields);
446
- return names;
447
- }
448
- function filterExistingFields(fieldsToAdd, existingNames) {
449
- return fieldsToAdd.filter((field) => {
450
- if ("name" in field && field.name) {
451
- return !existingNames.has(field.name);
452
- }
453
- return true;
454
- });
455
- }
456
- function generatePuckEditField(collectionSlug, adminConfig = {}) {
457
- const {
458
- editorPathPattern = "/pages/{id}/edit",
459
- buttonLabel = "Edit with Puck",
460
- buttonPosition
461
- // undefined = main area (default), 'sidebar' = sidebar
462
- } = adminConfig;
463
- return {
464
- name: "puckEdit",
465
- type: "ui",
466
- admin: {
467
- // Only set position if explicitly specified (sidebar)
468
- // undefined means main form area in Payload
469
- ...buttonPosition && { position: buttonPosition },
470
- components: {
471
- Field: "@delmaredigital/payload-puck/admin/client#EditWithPuckButton",
472
- Cell: "@delmaredigital/payload-puck/admin/client#EditWithPuckCell"
473
- },
474
- custom: {
475
- collectionSlug,
476
- editorPathPattern,
477
- label: buttonLabel
478
- }
479
- }
480
- };
481
- }
482
- function createPuckPlugin(options = {}) {
483
- const {
484
- pagesCollection = "pages",
485
- autoGenerateCollection = true,
486
- admin: adminConfig = {}
487
- } = options;
488
- const { addEditButton = true } = adminConfig;
489
- return (incomingConfig) => {
490
- let collections = incomingConfig.collections || [];
491
- const templatesCollectionExists = collections.some(
492
- (c) => c.slug === "puck-templates"
493
- );
494
- if (!templatesCollectionExists) {
495
- collections = [...collections, TemplatesCollection];
496
- }
497
- if (autoGenerateCollection) {
498
- const existingCollectionIndex = collections.findIndex(
499
- (c) => c.slug === pagesCollection
500
- );
501
- const editButtonField = addEditButton ? [generatePuckEditField(pagesCollection, adminConfig)] : [];
502
- if (existingCollectionIndex >= 0) {
503
- const existingCollection = collections[existingCollectionIndex];
504
- const existingFields = existingCollection.fields || [];
505
- const existingFieldNames = getExistingFieldNames(existingFields);
506
- const puckFields = getPuckFields({
507
- includeSEO: !existingFieldNames.has("meta"),
508
- includeConversion: !existingFieldNames.has("conversionTracking"),
509
- includeEditorVersion: !existingFieldNames.has("editorVersion"),
510
- includePageLayout: !existingFieldNames.has("pageLayout"),
511
- includeIsHomepage: !existingFieldNames.has("isHomepage"),
512
- layouts: options.layouts
513
- });
514
- const fieldsToAdd = filterExistingFields(puckFields, existingFieldNames);
515
- const editFieldsToAdd = existingFieldNames.has("puckEdit") ? [] : editButtonField;
516
- collections = [
517
- ...collections.slice(0, existingCollectionIndex),
518
- {
519
- ...existingCollection,
520
- // Ensure drafts are enabled for Puck
521
- versions: typeof existingCollection.versions === "object" ? { drafts: true, ...existingCollection.versions } : existingCollection.versions ?? { drafts: true },
522
- fields: [
523
- ...existingFields,
524
- ...fieldsToAdd,
525
- ...editFieldsToAdd
526
- ]
527
- },
528
- ...collections.slice(existingCollectionIndex + 1)
529
- ];
530
- } else {
531
- const generatedCollection = generatePagesCollection(pagesCollection, options);
532
- collections = [
533
- ...collections,
534
- {
535
- ...generatedCollection,
536
- fields: [...generatedCollection.fields, ...editButtonField]
537
- }
538
- ];
539
- }
540
- }
541
- return {
542
- ...incomingConfig,
543
- collections,
544
- onInit: async (payload) => {
545
- if (incomingConfig.onInit) {
546
- await incomingConfig.onInit(payload);
547
- }
548
- }
549
- };
550
- };
551
- }
552
-
553
- export { TemplatesCollection, conversionFieldGroup, createEditorVersionField, createPageLayoutField, createPuckPlugin, editorVersionField, generatePagesCollection, generatePuckEditField, getPuckFields, isHomepageField, pageLayoutField, puckDataField, seoFieldGroup };
554
- //# sourceMappingURL=index.mjs.map
555
- //# sourceMappingURL=index.mjs.map
@@ -1,96 +0,0 @@
1
- import { L as LayoutDefinition } from '../types-D7D3rZ1J.mjs';
2
- export { c as LayoutClasses, a as LayoutConfig, b as LayoutOption, d as LayoutStyles, e as LayoutWrapperProps } from '../types-D7D3rZ1J.mjs';
3
- export { D as DEFAULT_LAYOUTS, a as DEFAULT_LAYOUT_CONFIG, E as EXTENDED_LAYOUTS, c as createLayout, d as defaultLayout, f as fullWidthLayout, g as getLayout, l as landingLayout, b as layoutsToOptions, e as layoutsToPayloadOptions, m as mergeLayouts, n as narrowLayout, r as resolveLayoutConfig, w as wideLayout } from '../utils-DaRs9t0J.mjs';
4
- import * as react_jsx_runtime from 'react/jsx-runtime';
5
- import { ReactNode } from 'react';
6
-
7
- interface MediaReference {
8
- id: string | number;
9
- url: string;
10
- alt?: string;
11
- width?: number;
12
- height?: number;
13
- }
14
-
15
- interface ColorValue {
16
- hex: string;
17
- opacity?: number;
18
- }
19
- interface GradientStop {
20
- color: ColorValue;
21
- position: number;
22
- }
23
- interface GradientValue {
24
- type: 'linear' | 'radial';
25
- angle: number;
26
- stops: GradientStop[];
27
- radialShape?: 'circle' | 'ellipse';
28
- radialPosition?: 'center' | 'top' | 'bottom' | 'left' | 'right';
29
- }
30
- /**
31
- * Gradient mask for fading images to transparent
32
- */
33
- interface GradientMask {
34
- enabled: boolean;
35
- direction: 'to-top' | 'to-bottom' | 'to-left' | 'to-right' | 'to-top-left' | 'to-top-right' | 'to-bottom-left' | 'to-bottom-right' | 'from-center';
36
- startOpacity: number;
37
- endOpacity: number;
38
- startPosition: number;
39
- endPosition: number;
40
- }
41
- interface BackgroundImageValue {
42
- media: MediaReference | null;
43
- size: 'cover' | 'contain' | 'auto';
44
- position: 'center' | 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
45
- repeat: 'no-repeat' | 'repeat' | 'repeat-x' | 'repeat-y';
46
- attachment: 'scroll' | 'fixed';
47
- /** Overall image opacity 0-100 (default 100) */
48
- opacity?: number;
49
- /** Gradient mask for fade to transparent effect */
50
- mask?: GradientMask;
51
- }
52
- /**
53
- * Overlay layer for images (Divi-style)
54
- * Renders a color or gradient on top of the background image
55
- */
56
- interface BackgroundOverlay {
57
- enabled: boolean;
58
- type: 'solid' | 'gradient';
59
- solid?: ColorValue | null;
60
- gradient?: GradientValue | null;
61
- }
62
- interface BackgroundValue {
63
- type: 'none' | 'solid' | 'gradient' | 'image';
64
- solid?: ColorValue | null;
65
- gradient?: GradientValue | null;
66
- image?: BackgroundImageValue | null;
67
- /** Overlay layer, only used when type === 'image' */
68
- overlay?: BackgroundOverlay | null;
69
- }
70
-
71
- /**
72
- * Page-level overrides for layout settings
73
- */
74
- interface PageOverrides {
75
- /** Override header visibility: 'default' uses layout, 'show'/'hide' overrides */
76
- showHeader?: 'default' | 'show' | 'hide';
77
- /** Override footer visibility: 'default' uses layout, 'show'/'hide' overrides */
78
- showFooter?: 'default' | 'show' | 'hide';
79
- /** Page background (overrides any layout background) */
80
- background?: BackgroundValue | null;
81
- /** Page max width: 'default' uses layout, otherwise uses the value */
82
- maxWidth?: string;
83
- }
84
- interface LayoutWrapperProps {
85
- children: ReactNode;
86
- layout?: LayoutDefinition;
87
- className?: string;
88
- /** Page-level overrides from Puck root props */
89
- overrides?: PageOverrides;
90
- }
91
- /**
92
- * Applies layout configuration to page content
93
- */
94
- declare function LayoutWrapper({ children, layout, className, overrides }: LayoutWrapperProps): react_jsx_runtime.JSX.Element;
95
-
96
- export { LayoutDefinition, LayoutWrapper, type LayoutWrapperProps as LayoutWrapperComponentProps, type PageOverrides };