@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
@@ -0,0 +1,212 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Section Component - Puck Configuration
4
+ *
5
+ * Full-width section with two-layer architecture:
6
+ * - Section layer (outer): Full-bleed background, border, padding, margin
7
+ * - Content layer (inner): Constrained content area with max-width, background, border, padding
8
+ *
9
+ * This design enables common patterns like hero sections with full-bleed backgrounds
10
+ * but centered content.
11
+ *
12
+ * Responsive Controls:
13
+ * - contentDimensions: Different max-width/min-height at different breakpoints
14
+ * - sectionPadding: Different section padding at different breakpoints
15
+ * - contentPadding: Different content padding at different breakpoints
16
+ * - sectionMargin: Different margins at different breakpoints
17
+ * - visibility: Show/hide at different breakpoints
18
+ */
19
+ import { useId } from 'react';
20
+ import { cn, dimensionsValueToCSS, marginValueToCSS, paddingValueToCSS, borderValueToCSS, backgroundValueToCSS, responsiveValueToCSS, visibilityValueToCSS, } from '../../fields/shared';
21
+ import { AnimatedWrapper } from '../AnimatedWrapper';
22
+ import { createPaddingField } from '../../fields/PaddingField';
23
+ import { createBorderField } from '../../fields/BorderField';
24
+ import { createDimensionsField } from '../../fields/DimensionsField';
25
+ import { createMarginField } from '../../fields/MarginField';
26
+ import { createResetField } from '../../fields/ResetField';
27
+ import { createBackgroundField } from '../../fields/BackgroundField';
28
+ import { createAnimationField } from '../../fields/AnimationField';
29
+ import { createResponsiveField } from '../../fields/ResponsiveField';
30
+ import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
31
+ // Default padding (none)
32
+ const DEFAULT_PADDING = {
33
+ top: 0,
34
+ right: 0,
35
+ bottom: 0,
36
+ left: 0,
37
+ unit: 'px',
38
+ linked: true,
39
+ };
40
+ // Default content dimensions - 1200px max-width centered
41
+ const DEFAULT_CONTENT_DIMENSIONS = {
42
+ mode: 'contained',
43
+ alignment: 'center',
44
+ maxWidth: { value: 1200, unit: 'px', enabled: true },
45
+ };
46
+ // Default content padding with standard horizontal spacing
47
+ const DEFAULT_CONTENT_PADDING = {
48
+ top: 0,
49
+ right: 16,
50
+ bottom: 0,
51
+ left: 16,
52
+ unit: 'px',
53
+ linked: false,
54
+ };
55
+ const defaultProps = {
56
+ id: '',
57
+ content: [],
58
+ // Section layer defaults
59
+ sectionBackground: null,
60
+ sectionBorder: null,
61
+ sectionPadding: null,
62
+ sectionMargin: null,
63
+ // Content layer defaults - 1200px max-width so two-layer design is immediately visible
64
+ contentDimensions: { xs: DEFAULT_CONTENT_DIMENSIONS },
65
+ contentBackground: null,
66
+ contentBorder: null,
67
+ contentPadding: { xs: DEFAULT_CONTENT_PADDING },
68
+ // Other
69
+ animation: null,
70
+ visibility: null,
71
+ };
72
+ export const SectionConfig = {
73
+ label: 'Section',
74
+ fields: {
75
+ _reset: createResetField({ defaultProps }),
76
+ // Visibility first
77
+ visibility: createResponsiveVisibilityField({ label: 'Visibility' }),
78
+ // Section ID for anchors
79
+ id: {
80
+ type: 'text',
81
+ label: 'Section ID',
82
+ },
83
+ content: {
84
+ type: 'slot',
85
+ },
86
+ // Section layer (outer)
87
+ sectionBackground: createBackgroundField({ label: 'Section Background' }),
88
+ sectionBorder: createBorderField({ label: 'Section Border' }),
89
+ sectionPadding: createResponsiveField({
90
+ label: 'Section Padding',
91
+ innerField: (config) => createPaddingField(config),
92
+ defaultValue: DEFAULT_PADDING,
93
+ }),
94
+ sectionMargin: createResponsiveField({
95
+ label: 'Section Margin',
96
+ innerField: (config) => createMarginField(config),
97
+ defaultValue: DEFAULT_PADDING,
98
+ }),
99
+ // Content layer (inner)
100
+ contentDimensions: createResponsiveField({
101
+ label: 'Content Dimensions',
102
+ innerField: (config) => createDimensionsField(config),
103
+ defaultValue: DEFAULT_CONTENT_DIMENSIONS,
104
+ }),
105
+ contentBackground: createBackgroundField({ label: 'Content Background' }),
106
+ contentBorder: createBorderField({ label: 'Content Border' }),
107
+ contentPadding: createResponsiveField({
108
+ label: 'Content Padding',
109
+ innerField: (config) => createPaddingField(config),
110
+ defaultValue: DEFAULT_PADDING,
111
+ }),
112
+ // Animation
113
+ animation: createAnimationField({ label: 'Animation' }),
114
+ },
115
+ defaultProps,
116
+ render: ({ id, content: Content, sectionBackground, sectionBorder, sectionPadding, sectionMargin, contentDimensions, contentBackground, contentBorder, contentPadding, animation, visibility, }) => {
117
+ // Generate unique IDs for CSS targeting
118
+ // eslint-disable-next-line react-hooks/rules-of-hooks
119
+ const uniqueId = useId().replace(/:/g, '');
120
+ const sectionClass = `puck-section-${uniqueId}`;
121
+ const contentClass = `puck-section-content-${uniqueId}`;
122
+ // Collect all media query CSS
123
+ const mediaQueries = [];
124
+ // === Section layer styles (outer, full-width) ===
125
+ const sectionBackgroundStyles = backgroundValueToCSS(sectionBackground);
126
+ const sectionStyles = {
127
+ ...sectionBackgroundStyles,
128
+ };
129
+ // Section border
130
+ const sectionBorderStyles = borderValueToCSS(sectionBorder);
131
+ if (sectionBorderStyles) {
132
+ Object.assign(sectionStyles, sectionBorderStyles);
133
+ }
134
+ // Section padding with responsive support
135
+ const sectionPaddingResult = responsiveValueToCSS(sectionPadding, (v) => ({ padding: paddingValueToCSS(v) }), sectionClass);
136
+ Object.assign(sectionStyles, sectionPaddingResult.baseStyles);
137
+ if (sectionPaddingResult.mediaQueryCSS) {
138
+ mediaQueries.push(sectionPaddingResult.mediaQueryCSS);
139
+ }
140
+ // Section margin with responsive support
141
+ const sectionMarginResult = responsiveValueToCSS(sectionMargin, (v) => ({ margin: marginValueToCSS(v) }), sectionClass);
142
+ Object.assign(sectionStyles, sectionMarginResult.baseStyles);
143
+ if (sectionMarginResult.mediaQueryCSS) {
144
+ mediaQueries.push(sectionMarginResult.mediaQueryCSS);
145
+ }
146
+ // Visibility media queries
147
+ const visibilityCSS = visibilityValueToCSS(visibility, sectionClass);
148
+ if (visibilityCSS) {
149
+ mediaQueries.push(visibilityCSS);
150
+ }
151
+ // === Content layer styles (inner, constrained) ===
152
+ const contentBackgroundStyles = backgroundValueToCSS(contentBackground);
153
+ const contentStyles = {
154
+ ...contentBackgroundStyles,
155
+ };
156
+ // Content dimensions with responsive support
157
+ const contentDimensionsResult = responsiveValueToCSS(contentDimensions, dimensionsValueToCSS, contentClass);
158
+ Object.assign(contentStyles, contentDimensionsResult.baseStyles);
159
+ if (contentDimensionsResult.mediaQueryCSS) {
160
+ mediaQueries.push(contentDimensionsResult.mediaQueryCSS);
161
+ }
162
+ // Check if minHeight is set - if so, we need flex layout to make slot expand
163
+ const hasMinHeight = (() => {
164
+ if (!contentDimensions)
165
+ return false;
166
+ // Check if it's a responsive value
167
+ if (typeof contentDimensions === 'object' && 'xs' in contentDimensions) {
168
+ const responsiveDims = contentDimensions;
169
+ return Object.values(responsiveDims).some((v) => {
170
+ if (!v || typeof v !== 'object')
171
+ return false;
172
+ const dim = v;
173
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
174
+ });
175
+ }
176
+ // Non-responsive value
177
+ const dim = contentDimensions;
178
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
179
+ })();
180
+ // Add flex layout when minHeight is set to make content stretch
181
+ if (hasMinHeight) {
182
+ contentStyles.display = 'flex';
183
+ contentStyles.flexDirection = 'column';
184
+ }
185
+ // Content border
186
+ const contentBorderStyles = borderValueToCSS(contentBorder);
187
+ if (contentBorderStyles) {
188
+ Object.assign(contentStyles, contentBorderStyles);
189
+ }
190
+ // Content padding with responsive support
191
+ const contentPaddingResult = responsiveValueToCSS(contentPadding, (v) => ({ padding: paddingValueToCSS(v) }), contentClass);
192
+ Object.assign(contentStyles, contentPaddingResult.baseStyles);
193
+ if (contentPaddingResult.mediaQueryCSS) {
194
+ mediaQueries.push(contentPaddingResult.mediaQueryCSS);
195
+ }
196
+ const sectionClasses = cn('relative w-full', sectionClass);
197
+ const contentClasses = cn('relative z-10', contentClass);
198
+ // Check if we have any content styling
199
+ const hasContentStyles = Object.keys(contentStyles).length > 0;
200
+ // Combine all media queries
201
+ const allMediaQueryCSS = mediaQueries.join('\n');
202
+ // When minHeight is set, wrap Content to ensure slot expands
203
+ const renderContent = () => {
204
+ if (hasMinHeight) {
205
+ return (_jsx("div", { style: { flex: 1, display: 'flex', flexDirection: 'column', minHeight: 0 }, children: _jsx(Content, { style: { flex: 1 } }) }));
206
+ }
207
+ return _jsx(Content, {});
208
+ };
209
+ return (_jsxs(AnimatedWrapper, { animation: animation, children: [allMediaQueryCSS && _jsx("style", { children: allMediaQueryCSS }), _jsx("section", { id: id || undefined, className: sectionClasses, style: sectionStyles, children: hasContentStyles ? (_jsx("div", { className: contentClasses, style: contentStyles, children: renderContent() })) : (_jsx(Content, { className: contentClasses })) })] }));
210
+ },
211
+ };
212
+ //# sourceMappingURL=Section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.js","sourceRoot":"","sources":["../../../src/components/layout/Section.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Section Component - Server-safe Puck Configuration
3
+ *
4
+ * Full-width section with two-layer architecture:
5
+ * - Section layer (outer): Full-bleed background, border, padding, margin
6
+ * - Content layer (inner): Constrained content area with max-width, background, border, padding
7
+ *
8
+ * This is a server-safe version with minimal fields (only slot for content).
9
+ * For the full editor version with fields, use Section.tsx
10
+ *
11
+ * Responsive Controls:
12
+ * - contentDimensions: Different max-width/min-height at different breakpoints
13
+ * - sectionPadding: Different section padding at different breakpoints
14
+ * - contentPadding: Different content padding at different breakpoints
15
+ * - sectionMargin: Different margins at different breakpoints
16
+ * - visibility: Show/hide at different breakpoints
17
+ */
18
+ import type { ComponentConfig } from '@measured/puck';
19
+ import { type PaddingValue, type BorderValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
20
+ export interface SectionProps {
21
+ id: string;
22
+ content: unknown;
23
+ sectionBackground: BackgroundValue | null;
24
+ sectionBorder: BorderValue | null;
25
+ sectionPadding: ResponsiveValue<PaddingValue> | PaddingValue | null;
26
+ sectionMargin: ResponsiveValue<PaddingValue> | PaddingValue | null;
27
+ contentDimensions: ResponsiveValue<DimensionsValue> | DimensionsValue | null;
28
+ contentBackground: BackgroundValue | null;
29
+ contentBorder: BorderValue | null;
30
+ contentPadding: ResponsiveValue<PaddingValue> | PaddingValue | null;
31
+ animation: AnimationValue | null;
32
+ visibility: VisibilityValue | null;
33
+ }
34
+ export declare const SectionConfig: ComponentConfig;
35
+ //# sourceMappingURL=Section.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.server.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Section.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EASL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AA0B5B,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;IAEhB,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAA;IACzC,aAAa,EAAE,WAAW,GAAG,IAAI,CAAA;IACjC,cAAc,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IACnE,aAAa,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAElE,iBAAiB,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,eAAe,GAAG,IAAI,CAAA;IAC5E,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAA;IACzC,aAAa,EAAE,WAAW,GAAG,IAAI,CAAA;IACjC,cAAc,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAEnE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;CACnC;AAoBD,eAAO,MAAM,aAAa,EAAE,eAwK3B,CAAA"}
@@ -0,0 +1,144 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn, dimensionsValueToCSS, marginValueToCSS, paddingValueToCSS, borderValueToCSS, backgroundValueToCSS, responsiveValueToCSS, visibilityValueToCSS, } from '../../fields/shared';
3
+ import { AnimatedWrapper } from '../AnimatedWrapper';
4
+ // Simple ID generator for server-side rendering
5
+ let idCounter = 0;
6
+ function generateUniqueId() {
7
+ return `s${(++idCounter).toString(36)}${Math.random().toString(36).slice(2, 6)}`;
8
+ }
9
+ // Default content dimensions - 1200px max-width centered
10
+ const DEFAULT_CONTENT_DIMENSIONS = {
11
+ mode: 'contained',
12
+ alignment: 'center',
13
+ maxWidth: { value: 1200, unit: 'px', enabled: true },
14
+ };
15
+ // Default content padding with standard horizontal spacing
16
+ const DEFAULT_CONTENT_PADDING = {
17
+ top: 0,
18
+ right: 16,
19
+ bottom: 0,
20
+ left: 16,
21
+ unit: 'px',
22
+ linked: false,
23
+ };
24
+ const defaultProps = {
25
+ id: '',
26
+ content: [],
27
+ // Section layer defaults
28
+ sectionBackground: null,
29
+ sectionBorder: null,
30
+ sectionPadding: null,
31
+ sectionMargin: null,
32
+ // Content layer defaults - 1200px max-width so two-layer design is immediately visible
33
+ contentDimensions: { xs: DEFAULT_CONTENT_DIMENSIONS },
34
+ contentBackground: null,
35
+ contentBorder: null,
36
+ contentPadding: { xs: DEFAULT_CONTENT_PADDING },
37
+ // Other
38
+ animation: null,
39
+ visibility: null,
40
+ };
41
+ export const SectionConfig = {
42
+ label: 'Section',
43
+ fields: {
44
+ content: { type: 'slot' },
45
+ },
46
+ defaultProps,
47
+ render: ({ id, content: Content, sectionBackground, sectionBorder, sectionPadding, sectionMargin, contentDimensions, contentBackground, contentBorder, contentPadding, animation, visibility, }) => {
48
+ // Generate unique IDs for CSS targeting (server-safe)
49
+ const uniqueId = generateUniqueId();
50
+ const sectionClass = `puck-section-${uniqueId}`;
51
+ const contentClass = `puck-section-content-${uniqueId}`;
52
+ // Collect all media query CSS
53
+ const mediaQueries = [];
54
+ // === Section layer styles (outer, full-width) ===
55
+ const sectionBackgroundStyles = backgroundValueToCSS(sectionBackground);
56
+ const sectionStyles = {
57
+ ...sectionBackgroundStyles,
58
+ };
59
+ // Section border
60
+ const sectionBorderStyles = borderValueToCSS(sectionBorder);
61
+ if (sectionBorderStyles) {
62
+ Object.assign(sectionStyles, sectionBorderStyles);
63
+ }
64
+ // Section padding with responsive support
65
+ const sectionPaddingResult = responsiveValueToCSS(sectionPadding, (v) => ({ padding: paddingValueToCSS(v) }), sectionClass);
66
+ Object.assign(sectionStyles, sectionPaddingResult.baseStyles);
67
+ if (sectionPaddingResult.mediaQueryCSS) {
68
+ mediaQueries.push(sectionPaddingResult.mediaQueryCSS);
69
+ }
70
+ // Section margin with responsive support
71
+ const sectionMarginResult = responsiveValueToCSS(sectionMargin, (v) => ({ margin: marginValueToCSS(v) }), sectionClass);
72
+ Object.assign(sectionStyles, sectionMarginResult.baseStyles);
73
+ if (sectionMarginResult.mediaQueryCSS) {
74
+ mediaQueries.push(sectionMarginResult.mediaQueryCSS);
75
+ }
76
+ // Visibility media queries
77
+ const visibilityCSS = visibilityValueToCSS(visibility, sectionClass);
78
+ if (visibilityCSS) {
79
+ mediaQueries.push(visibilityCSS);
80
+ }
81
+ // === Content layer styles (inner, constrained) ===
82
+ const contentBackgroundStyles = backgroundValueToCSS(contentBackground);
83
+ const contentStyles = {
84
+ ...contentBackgroundStyles,
85
+ };
86
+ // Content dimensions with responsive support
87
+ const contentDimensionsResult = responsiveValueToCSS(contentDimensions, dimensionsValueToCSS, contentClass);
88
+ Object.assign(contentStyles, contentDimensionsResult.baseStyles);
89
+ if (contentDimensionsResult.mediaQueryCSS) {
90
+ mediaQueries.push(contentDimensionsResult.mediaQueryCSS);
91
+ }
92
+ // Check if minHeight is set - if so, we need flex layout to make slot expand
93
+ const hasMinHeight = (() => {
94
+ if (!contentDimensions)
95
+ return false;
96
+ // Check if it's a responsive value
97
+ if (typeof contentDimensions === 'object' && 'xs' in contentDimensions) {
98
+ const responsiveDims = contentDimensions;
99
+ return Object.values(responsiveDims).some((v) => {
100
+ if (!v || typeof v !== 'object')
101
+ return false;
102
+ const dim = v;
103
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
104
+ });
105
+ }
106
+ // Non-responsive value
107
+ const dim = contentDimensions;
108
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
109
+ })();
110
+ // Add flex layout when minHeight is set to make content stretch
111
+ if (hasMinHeight) {
112
+ contentStyles.display = 'flex';
113
+ contentStyles.flexDirection = 'column';
114
+ }
115
+ // Content border
116
+ const contentBorderStyles = borderValueToCSS(contentBorder);
117
+ if (contentBorderStyles) {
118
+ Object.assign(contentStyles, contentBorderStyles);
119
+ }
120
+ // Content padding with responsive support
121
+ const contentPaddingResult = responsiveValueToCSS(contentPadding, (v) => ({ padding: paddingValueToCSS(v) }), contentClass);
122
+ Object.assign(contentStyles, contentPaddingResult.baseStyles);
123
+ if (contentPaddingResult.mediaQueryCSS) {
124
+ mediaQueries.push(contentPaddingResult.mediaQueryCSS);
125
+ }
126
+ const sectionClasses = cn('relative w-full', sectionClass);
127
+ const contentClasses = cn('relative z-10', contentClass);
128
+ // Check if we have any content styling
129
+ const hasContentStyles = Object.keys(contentStyles).length > 0;
130
+ // Combine all media queries
131
+ const allMediaQueryCSS = mediaQueries.join('\n');
132
+ // Type assertion for Puck slot content
133
+ const ContentSlot = Content;
134
+ // When minHeight is set, wrap Content to ensure slot expands
135
+ const renderContent = () => {
136
+ if (hasMinHeight) {
137
+ return (_jsx("div", { style: { flex: 1, display: 'flex', flexDirection: 'column', minHeight: 0 }, children: _jsx(ContentSlot, { style: { flex: 1 } }) }));
138
+ }
139
+ return _jsx(ContentSlot, {});
140
+ };
141
+ return (_jsxs(AnimatedWrapper, { animation: animation, children: [allMediaQueryCSS && _jsx("style", { children: allMediaQueryCSS }), _jsx("section", { id: id || undefined, className: sectionClasses, style: sectionStyles, children: hasContentStyles ? (_jsx("div", { className: contentClasses, style: contentStyles, children: renderContent() })) : (_jsx(ContentSlot, { className: contentClasses })) })] }));
142
+ },
143
+ };
144
+ //# sourceMappingURL=Section.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.server.js","sourceRoot":"","sources":["../../../src/components/layout/Section.server.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Spacer Component - Puck Configuration
3
+ *
4
+ * Simple spacing component for adding vertical or horizontal space.
5
+ * Uses Tailwind classes for layout and sizing from predefined options.
6
+ *
7
+ * Responsive Controls:
8
+ * - visibility: Show/hide at different breakpoints
9
+ */
10
+ import type { ComponentConfig } from '@measured/puck';
11
+ import { type VisibilityValue } from '../../fields/shared';
12
+ export interface SpacerProps {
13
+ size: string;
14
+ direction: 'vertical' | 'horizontal' | 'both';
15
+ visibility: VisibilityValue | null;
16
+ }
17
+ export declare const SpacerConfig: ComponentConfig;
18
+ //# sourceMappingURL=Spacer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spacer.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Spacer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AA0CpF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,CAAA;IAC7C,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;CACnC;AAQD,eAAO,MAAM,YAAY,EAAE,eAoD1B,CAAA"}
@@ -0,0 +1,99 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Spacer Component - Puck Configuration
4
+ *
5
+ * Simple spacing component for adding vertical or horizontal space.
6
+ * Uses Tailwind classes for layout and sizing from predefined options.
7
+ *
8
+ * Responsive Controls:
9
+ * - visibility: Show/hide at different breakpoints
10
+ */
11
+ import { useId } from 'react';
12
+ import { cn, visibilityValueToCSS } from '../../fields/shared';
13
+ import { createResetField } from '../../fields/ResetField';
14
+ import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
15
+ const spacingOptions = [
16
+ { label: '8px', value: '8px' },
17
+ { label: '16px', value: '16px' },
18
+ { label: '24px', value: '24px' },
19
+ { label: '32px', value: '32px' },
20
+ { label: '48px', value: '48px' },
21
+ { label: '64px', value: '64px' },
22
+ { label: '80px', value: '80px' },
23
+ { label: '96px', value: '96px' },
24
+ { label: '128px', value: '128px' },
25
+ ];
26
+ // Tailwind height classes for predefined spacing options
27
+ const heightMap = {
28
+ '8px': 'h-2',
29
+ '16px': 'h-4',
30
+ '24px': 'h-6',
31
+ '32px': 'h-8',
32
+ '48px': 'h-12',
33
+ '64px': 'h-16',
34
+ '80px': 'h-20',
35
+ '96px': 'h-24',
36
+ '128px': 'h-32',
37
+ };
38
+ // Tailwind width classes for predefined spacing options
39
+ const widthMap = {
40
+ '8px': 'w-2',
41
+ '16px': 'w-4',
42
+ '24px': 'w-6',
43
+ '32px': 'w-8',
44
+ '48px': 'w-12',
45
+ '64px': 'w-16',
46
+ '80px': 'w-20',
47
+ '96px': 'w-24',
48
+ '128px': 'w-32',
49
+ };
50
+ const defaultProps = {
51
+ size: '24px',
52
+ direction: 'vertical',
53
+ visibility: null,
54
+ };
55
+ export const SpacerConfig = {
56
+ label: 'Spacer',
57
+ fields: {
58
+ _reset: createResetField({ defaultProps }),
59
+ // Responsive visibility control
60
+ visibility: createResponsiveVisibilityField({ label: 'Visibility' }),
61
+ size: {
62
+ type: 'select',
63
+ label: 'Size',
64
+ options: spacingOptions,
65
+ },
66
+ direction: {
67
+ type: 'radio',
68
+ label: 'Direction',
69
+ options: [
70
+ { label: 'Vertical', value: 'vertical' },
71
+ { label: 'Horizontal', value: 'horizontal' },
72
+ { label: 'Both', value: 'both' },
73
+ ],
74
+ },
75
+ },
76
+ defaultProps,
77
+ render: ({ size, direction, visibility }) => {
78
+ // Generate unique ID for CSS targeting
79
+ // eslint-disable-next-line react-hooks/rules-of-hooks
80
+ const uniqueId = useId().replace(/:/g, '');
81
+ const wrapperClass = `puck-spacer-${uniqueId}`;
82
+ // Visibility media queries
83
+ const visibilityCSS = visibilityValueToCSS(visibility, wrapperClass);
84
+ const getClasses = () => {
85
+ const heightClass = heightMap[size] || 'h-6';
86
+ const widthClass = widthMap[size] || 'w-6';
87
+ if (direction === 'vertical') {
88
+ return `block ${heightClass} w-full`;
89
+ }
90
+ if (direction === 'horizontal') {
91
+ return `inline-block ${widthClass} h-full`;
92
+ }
93
+ // both
94
+ return `block ${heightClass} ${widthClass}`;
95
+ };
96
+ return (_jsxs(_Fragment, { children: [visibilityCSS && _jsx("style", { children: visibilityCSS }), _jsx("div", { className: cn(getClasses(), wrapperClass), "aria-hidden": "true" })] }));
97
+ },
98
+ };
99
+ //# sourceMappingURL=Spacer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spacer.js","sourceRoot":"","sources":["../../../src/components/layout/Spacer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Spacer Component - Server-safe Puck Configuration
3
+ *
4
+ * Simple spacing component for adding vertical or horizontal space.
5
+ * Uses Tailwind classes for layout and sizing from predefined options.
6
+ *
7
+ * This is a server-safe version with NO fields property.
8
+ * For the full editor version with fields, use Spacer.tsx
9
+ *
10
+ * Responsive Controls:
11
+ * - visibility: Show/hide at different breakpoints
12
+ */
13
+ import type { ComponentConfig } from '@measured/puck';
14
+ import { type VisibilityValue } from '../../fields/shared';
15
+ export interface SpacerProps {
16
+ size: string;
17
+ direction: 'vertical' | 'horizontal' | 'both';
18
+ visibility: VisibilityValue | null;
19
+ }
20
+ export declare const SpacerConfig: ComponentConfig<SpacerProps>;
21
+ //# sourceMappingURL=Spacer.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spacer.server.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Spacer.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAkCpF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,CAAA;IAC7C,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;CACnC;AAQD,eAAO,MAAM,YAAY,EAAE,eAAe,CAAC,WAAW,CAgCrD,CAAA"}
@@ -0,0 +1,61 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn, visibilityValueToCSS } from '../../fields/shared';
3
+ // Simple ID generator for server-side rendering
4
+ let idCounter = 0;
5
+ function generateUniqueId() {
6
+ return `sp${(++idCounter).toString(36)}${Math.random().toString(36).slice(2, 6)}`;
7
+ }
8
+ // Tailwind height classes for predefined spacing options
9
+ const heightMap = {
10
+ '8px': 'h-2',
11
+ '16px': 'h-4',
12
+ '24px': 'h-6',
13
+ '32px': 'h-8',
14
+ '48px': 'h-12',
15
+ '64px': 'h-16',
16
+ '80px': 'h-20',
17
+ '96px': 'h-24',
18
+ '128px': 'h-32',
19
+ };
20
+ // Tailwind width classes for predefined spacing options
21
+ const widthMap = {
22
+ '8px': 'w-2',
23
+ '16px': 'w-4',
24
+ '24px': 'w-6',
25
+ '32px': 'w-8',
26
+ '48px': 'w-12',
27
+ '64px': 'w-16',
28
+ '80px': 'w-20',
29
+ '96px': 'w-24',
30
+ '128px': 'w-32',
31
+ };
32
+ const defaultProps = {
33
+ size: '24px',
34
+ direction: 'vertical',
35
+ visibility: null,
36
+ };
37
+ export const SpacerConfig = {
38
+ label: 'Spacer',
39
+ defaultProps,
40
+ render: ({ size, direction, visibility }) => {
41
+ // Generate unique ID for CSS targeting (server-safe)
42
+ const uniqueId = generateUniqueId();
43
+ const wrapperClass = `puck-spacer-${uniqueId}`;
44
+ // Visibility media queries
45
+ const visibilityCSS = visibilityValueToCSS(visibility, wrapperClass);
46
+ const getClasses = () => {
47
+ const heightClass = heightMap[size] || 'h-6';
48
+ const widthClass = widthMap[size] || 'w-6';
49
+ if (direction === 'vertical') {
50
+ return `block ${heightClass} w-full`;
51
+ }
52
+ if (direction === 'horizontal') {
53
+ return `inline-block ${widthClass} h-full`;
54
+ }
55
+ // both
56
+ return `block ${heightClass} ${widthClass}`;
57
+ };
58
+ return (_jsxs(_Fragment, { children: [visibilityCSS && _jsx("style", { children: visibilityCSS }), _jsx("div", { className: cn(getClasses(), wrapperClass), "aria-hidden": "true" })] }));
59
+ },
60
+ };
61
+ //# sourceMappingURL=Spacer.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spacer.server.js","sourceRoot":"","sources":["../../../src/components/layout/Spacer.server.tsx"],"names":[],"mappings":";AAcA,OAAO,EAAE,EAAE,EAAE,oBAAoB,EAAwB,MAAM,qBAAqB,CAAA;AAEpF,gDAAgD;AAChD,IAAI,SAAS,GAAG,CAAC,CAAA;AACjB,SAAS,gBAAgB;IACvB,OAAO,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;AACnF,CAAC;AAED,yDAAyD;AACzD,MAAM,SAAS,GAA2B;IACxC,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;CAChB,CAAA;AAED,wDAAwD;AACxD,MAAM,QAAQ,GAA2B;IACvC,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;CAChB,CAAA;AAQD,MAAM,YAAY,GAAgB;IAChC,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,UAAU;IACrB,UAAU,EAAE,IAAI;CACjB,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAiC;IACxD,KAAK,EAAE,QAAQ;IACf,YAAY;IACZ,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE;QAC1C,qDAAqD;QACrD,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAA;QACnC,MAAM,YAAY,GAAG,eAAe,QAAQ,EAAE,CAAA;QAE9C,2BAA2B;QAC3B,MAAM,aAAa,GAAG,oBAAoB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QAEpE,MAAM,UAAU,GAAG,GAAW,EAAE;YAC9B,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,CAAA;YAC5C,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAA;YAE1C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO,SAAS,WAAW,SAAS,CAAA;YACtC,CAAC;YACD,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;gBAC/B,OAAO,gBAAgB,UAAU,SAAS,CAAA;YAC5C,CAAC;YACD,OAAO;YACP,OAAO,SAAS,WAAW,IAAI,UAAU,EAAE,CAAA;QAC7C,CAAC,CAAA;QAED,OAAO,CACL,8BACG,aAAa,IAAI,0BAAQ,aAAa,GAAS,EAChD,cAAK,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,YAAY,CAAC,iBAAc,MAAM,GAAG,IACpE,CACJ,CAAA;IACH,CAAC;CACF,CAAA"}