@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,166 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Container Component - Puck Configuration
4
+ *
5
+ * Simple organizational wrapper for grouping content.
6
+ * Uses Puck's slot system for nesting other components.
7
+ *
8
+ * For two-layer layouts (full-bleed background with constrained content),
9
+ * use the Section component instead.
10
+ *
11
+ * Responsive Controls:
12
+ * - dimensions: Different max-width/min-height at different breakpoints
13
+ * - padding: Different padding at different breakpoints
14
+ * - margin: Different margins at different breakpoints
15
+ * - visibility: Show/hide at different breakpoints
16
+ */
17
+ import { useId } from 'react';
18
+ import { dimensionsValueToCSS, borderValueToCSS, paddingValueToCSS, marginValueToCSS, backgroundValueToCSS, responsiveValueToCSS, visibilityValueToCSS, } from '../../fields/shared';
19
+ import { AnimatedWrapper } from '../AnimatedWrapper';
20
+ import { createPaddingField } from '../../fields/PaddingField';
21
+ import { createBorderField } from '../../fields/BorderField';
22
+ import { createDimensionsField } from '../../fields/DimensionsField';
23
+ import { createMarginField } from '../../fields/MarginField';
24
+ import { createResetField } from '../../fields/ResetField';
25
+ import { createBackgroundField } from '../../fields/BackgroundField';
26
+ import { createAnimationField } from '../../fields/AnimationField';
27
+ import { createResponsiveField } from '../../fields/ResponsiveField';
28
+ import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
29
+ // Default padding (none)
30
+ const DEFAULT_PADDING = {
31
+ top: 0,
32
+ right: 0,
33
+ bottom: 0,
34
+ left: 0,
35
+ unit: 'px',
36
+ linked: true,
37
+ };
38
+ // Default dimensions (full width)
39
+ const DEFAULT_DIMENSIONS = {
40
+ mode: 'full',
41
+ alignment: 'center',
42
+ maxWidth: { value: 100, unit: '%', enabled: true },
43
+ };
44
+ const defaultProps = {
45
+ content: [],
46
+ visibility: null,
47
+ dimensions: null,
48
+ background: null,
49
+ border: null,
50
+ padding: null,
51
+ margin: null,
52
+ animation: null,
53
+ };
54
+ export const ContainerConfig = {
55
+ label: 'Container',
56
+ fields: {
57
+ _reset: createResetField({ defaultProps }),
58
+ content: {
59
+ type: 'slot',
60
+ },
61
+ // Visibility first
62
+ visibility: createResponsiveVisibilityField({ label: 'Visibility' }),
63
+ // Dimensions
64
+ dimensions: createResponsiveField({
65
+ label: 'Dimensions',
66
+ innerField: (config) => createDimensionsField(config),
67
+ defaultValue: DEFAULT_DIMENSIONS,
68
+ }),
69
+ // Styling
70
+ background: createBackgroundField({ label: 'Background' }),
71
+ border: createBorderField({ label: 'Border' }),
72
+ // Spacing
73
+ padding: createResponsiveField({
74
+ label: 'Padding',
75
+ innerField: (config) => createPaddingField(config),
76
+ defaultValue: DEFAULT_PADDING,
77
+ }),
78
+ margin: createResponsiveField({
79
+ label: 'Margin',
80
+ innerField: (config) => createMarginField(config),
81
+ defaultValue: DEFAULT_PADDING,
82
+ }),
83
+ // Animation
84
+ animation: createAnimationField({ label: 'Animation' }),
85
+ },
86
+ defaultProps,
87
+ render: ({ content: Content, visibility, dimensions, background, border, padding, margin, animation, }) => {
88
+ // Generate unique ID for CSS targeting
89
+ // eslint-disable-next-line react-hooks/rules-of-hooks
90
+ const uniqueId = useId().replace(/:/g, '');
91
+ const containerClass = `puck-container-${uniqueId}`;
92
+ // Collect all media query CSS
93
+ const mediaQueries = [];
94
+ // Build container styles
95
+ const containerStyles = {};
96
+ // Background
97
+ const backgroundStyles = backgroundValueToCSS(background);
98
+ if (backgroundStyles) {
99
+ Object.assign(containerStyles, backgroundStyles);
100
+ }
101
+ // Border
102
+ const borderStyles = borderValueToCSS(border);
103
+ if (borderStyles) {
104
+ Object.assign(containerStyles, borderStyles);
105
+ }
106
+ // Dimensions with responsive support
107
+ const dimensionsResult = responsiveValueToCSS(dimensions, dimensionsValueToCSS, containerClass);
108
+ Object.assign(containerStyles, dimensionsResult.baseStyles);
109
+ if (dimensionsResult.mediaQueryCSS) {
110
+ mediaQueries.push(dimensionsResult.mediaQueryCSS);
111
+ }
112
+ // Check if minHeight is set - if so, we need flex layout to make slot expand
113
+ const hasMinHeight = (() => {
114
+ if (!dimensions)
115
+ return false;
116
+ // Check if it's a responsive value
117
+ if (typeof dimensions === 'object' && 'xs' in dimensions) {
118
+ const responsiveDims = dimensions;
119
+ return Object.values(responsiveDims).some((v) => {
120
+ if (!v || typeof v !== 'object')
121
+ return false;
122
+ const dim = v;
123
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
124
+ });
125
+ }
126
+ // Non-responsive value
127
+ const dim = dimensions;
128
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
129
+ })();
130
+ // Add flex layout when minHeight is set to make content stretch
131
+ if (hasMinHeight) {
132
+ containerStyles.display = 'flex';
133
+ containerStyles.flexDirection = 'column';
134
+ }
135
+ // Padding with responsive support
136
+ const paddingResult = responsiveValueToCSS(padding, (v) => ({ padding: paddingValueToCSS(v) }), containerClass);
137
+ Object.assign(containerStyles, paddingResult.baseStyles);
138
+ if (paddingResult.mediaQueryCSS) {
139
+ mediaQueries.push(paddingResult.mediaQueryCSS);
140
+ }
141
+ // Margin with responsive support
142
+ const marginResult = responsiveValueToCSS(margin, (v) => ({ margin: marginValueToCSS(v) }), containerClass);
143
+ Object.assign(containerStyles, marginResult.baseStyles);
144
+ if (marginResult.mediaQueryCSS) {
145
+ mediaQueries.push(marginResult.mediaQueryCSS);
146
+ }
147
+ // Visibility media queries
148
+ const visibilityCSS = visibilityValueToCSS(visibility, containerClass);
149
+ if (visibilityCSS) {
150
+ mediaQueries.push(visibilityCSS);
151
+ }
152
+ // Combine all media queries
153
+ const allMediaQueryCSS = mediaQueries.join('\n');
154
+ // Check if we have any styling
155
+ const hasStyles = Object.keys(containerStyles).length > 0;
156
+ // When minHeight is set, wrap Content to ensure slot expands
157
+ const renderContent = () => {
158
+ if (hasMinHeight) {
159
+ return (_jsx("div", { style: { flex: 1, display: 'flex', flexDirection: 'column', minHeight: 0 }, children: _jsx(Content, { style: { flex: 1 } }) }));
160
+ }
161
+ return _jsx(Content, {});
162
+ };
163
+ return (_jsxs(AnimatedWrapper, { animation: animation, children: [allMediaQueryCSS && _jsx("style", { children: allMediaQueryCSS }), hasStyles ? (_jsx("div", { className: containerClass, style: containerStyles, children: renderContent() })) : (_jsx(Content, { className: containerClass }))] }));
164
+ },
165
+ };
166
+ //# sourceMappingURL=Container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../../src/components/layout/Container.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Container Component - Server-safe Puck Configuration
3
+ *
4
+ * Simple organizational wrapper for grouping content.
5
+ * Uses Puck's slot system for nesting other components.
6
+ *
7
+ * This is a server-safe version with minimal fields (only slot for content).
8
+ * For the full editor version with fields, use Container.tsx
9
+ *
10
+ * For two-layer layouts (full-bleed background with constrained content),
11
+ * use the Section component instead.
12
+ *
13
+ * Responsive Controls:
14
+ * - dimensions: Different max-width/min-height at different breakpoints
15
+ * - padding: Different padding at different breakpoints
16
+ * - margin: Different margins at different breakpoints
17
+ * - visibility: Show/hide at different breakpoints
18
+ */
19
+ import type { ComponentConfig } from '@measured/puck';
20
+ import { type PaddingValue, type BorderValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
21
+ export interface ContainerProps {
22
+ content: unknown;
23
+ visibility: VisibilityValue | null;
24
+ dimensions: ResponsiveValue<DimensionsValue> | DimensionsValue | null;
25
+ background: BackgroundValue | null;
26
+ border: BorderValue | null;
27
+ padding: ResponsiveValue<PaddingValue> | PaddingValue | null;
28
+ margin: ResponsiveValue<PaddingValue> | PaddingValue | null;
29
+ animation: AnimationValue | null;
30
+ }
31
+ export declare const ContainerConfig: ComponentConfig;
32
+ //# sourceMappingURL=Container.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.server.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Container.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AAS5B,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,UAAU,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,eAAe,GAAG,IAAI,CAAA;IACrE,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;IAC1B,OAAO,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAC5D,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAC3D,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;CACjC;AAaD,eAAO,MAAM,eAAe,EAAE,eAsI7B,CAAA"}
@@ -0,0 +1,105 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { dimensionsValueToCSS, borderValueToCSS, paddingValueToCSS, marginValueToCSS, 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 `c${(++idCounter).toString(36)}${Math.random().toString(36).slice(2, 6)}`;
8
+ }
9
+ const defaultProps = {
10
+ content: [],
11
+ visibility: null,
12
+ dimensions: null,
13
+ background: null,
14
+ border: null,
15
+ padding: null,
16
+ margin: null,
17
+ animation: null,
18
+ };
19
+ export const ContainerConfig = {
20
+ label: 'Container',
21
+ fields: {
22
+ content: { type: 'slot' },
23
+ },
24
+ defaultProps,
25
+ render: ({ content: Content, visibility, dimensions, background, border, padding, margin, animation, }) => {
26
+ // Generate unique ID for CSS targeting (server-safe)
27
+ const uniqueId = generateUniqueId();
28
+ const containerClass = `puck-container-${uniqueId}`;
29
+ // Collect all media query CSS
30
+ const mediaQueries = [];
31
+ // Build container styles
32
+ const containerStyles = {};
33
+ // Background
34
+ const backgroundStyles = backgroundValueToCSS(background);
35
+ if (backgroundStyles) {
36
+ Object.assign(containerStyles, backgroundStyles);
37
+ }
38
+ // Border
39
+ const borderStyles = borderValueToCSS(border);
40
+ if (borderStyles) {
41
+ Object.assign(containerStyles, borderStyles);
42
+ }
43
+ // Dimensions with responsive support
44
+ const dimensionsResult = responsiveValueToCSS(dimensions, dimensionsValueToCSS, containerClass);
45
+ Object.assign(containerStyles, dimensionsResult.baseStyles);
46
+ if (dimensionsResult.mediaQueryCSS) {
47
+ mediaQueries.push(dimensionsResult.mediaQueryCSS);
48
+ }
49
+ // Check if minHeight is set - if so, we need flex layout to make slot expand
50
+ const hasMinHeight = (() => {
51
+ if (!dimensions)
52
+ return false;
53
+ // Check if it's a responsive value
54
+ if (typeof dimensions === 'object' && 'xs' in dimensions) {
55
+ const responsiveDims = dimensions;
56
+ return Object.values(responsiveDims).some((v) => {
57
+ if (!v || typeof v !== 'object')
58
+ return false;
59
+ const dim = v;
60
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
61
+ });
62
+ }
63
+ // Non-responsive value
64
+ const dim = dimensions;
65
+ return dim.minHeight?.enabled && dim.minHeight?.value > 0;
66
+ })();
67
+ // Add flex layout when minHeight is set to make content stretch
68
+ if (hasMinHeight) {
69
+ containerStyles.display = 'flex';
70
+ containerStyles.flexDirection = 'column';
71
+ }
72
+ // Padding with responsive support
73
+ const paddingResult = responsiveValueToCSS(padding, (v) => ({ padding: paddingValueToCSS(v) }), containerClass);
74
+ Object.assign(containerStyles, paddingResult.baseStyles);
75
+ if (paddingResult.mediaQueryCSS) {
76
+ mediaQueries.push(paddingResult.mediaQueryCSS);
77
+ }
78
+ // Margin with responsive support
79
+ const marginResult = responsiveValueToCSS(margin, (v) => ({ margin: marginValueToCSS(v) }), containerClass);
80
+ Object.assign(containerStyles, marginResult.baseStyles);
81
+ if (marginResult.mediaQueryCSS) {
82
+ mediaQueries.push(marginResult.mediaQueryCSS);
83
+ }
84
+ // Visibility media queries
85
+ const visibilityCSS = visibilityValueToCSS(visibility, containerClass);
86
+ if (visibilityCSS) {
87
+ mediaQueries.push(visibilityCSS);
88
+ }
89
+ // Combine all media queries
90
+ const allMediaQueryCSS = mediaQueries.join('\n');
91
+ // Check if we have any styling
92
+ const hasStyles = Object.keys(containerStyles).length > 0;
93
+ // Type assertion for Puck slot content
94
+ const ContentSlot = Content;
95
+ // When minHeight is set, wrap Content to ensure slot expands
96
+ const renderContent = () => {
97
+ if (hasMinHeight) {
98
+ return (_jsx("div", { style: { flex: 1, display: 'flex', flexDirection: 'column', minHeight: 0 }, children: _jsx(ContentSlot, { style: { flex: 1 } }) }));
99
+ }
100
+ return _jsx(ContentSlot, {});
101
+ };
102
+ return (_jsxs(AnimatedWrapper, { animation: animation, children: [allMediaQueryCSS && _jsx("style", { children: allMediaQueryCSS }), hasStyles ? (_jsx("div", { className: containerClass, style: containerStyles, children: renderContent() })) : (_jsx(ContentSlot, { className: containerClass }))] }));
103
+ },
104
+ };
105
+ //# sourceMappingURL=Container.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.server.js","sourceRoot":"","sources":["../../../src/components/layout/Container.server.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Flex Component - Puck Configuration
3
+ *
4
+ * Flexbox layout following official Puck demo patterns.
5
+ * Uses Tailwind classes for layout, inline styles for dynamic user values.
6
+ *
7
+ * Supports both preset options and advanced custom styling:
8
+ * - Background: unified BackgroundField (solid, gradient, or image)
9
+ * - Advanced: customPadding, customWidth, border
10
+ *
11
+ * Responsive Controls:
12
+ * - dimensions: Different dimensions at different breakpoints
13
+ * - customPadding: Different padding at different breakpoints
14
+ * - margin: Different margins at different breakpoints
15
+ * - visibility: Show/hide at different breakpoints
16
+ */
17
+ import type { ComponentConfig } from '@measured/puck';
18
+ import { type PaddingValue, type BorderValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
19
+ import { type JustifyContent, type AlignItems } from '../../fields/FlexAlignmentField';
20
+ export interface FlexProps {
21
+ content: unknown;
22
+ direction: 'row' | 'column';
23
+ justifyContent: JustifyContent | null;
24
+ alignItems: AlignItems | null;
25
+ gap: number;
26
+ wrap: 'wrap' | 'nowrap';
27
+ background: BackgroundValue | null;
28
+ customPadding: ResponsiveValue<PaddingValue> | PaddingValue | null;
29
+ margin: ResponsiveValue<PaddingValue> | PaddingValue | null;
30
+ dimensions: ResponsiveValue<DimensionsValue> | DimensionsValue | null;
31
+ border: BorderValue | null;
32
+ animation: AnimationValue | null;
33
+ visibility: VisibilityValue | null;
34
+ }
35
+ export declare const FlexConfig: ComponentConfig;
36
+ //# sourceMappingURL=Flex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flex.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Flex.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAWL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AAW5B,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,UAAU,EAChB,MAAM,iCAAiC,CAAA;AAgCxC,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,KAAK,GAAG,QAAQ,CAAA;IAC3B,cAAc,EAAE,cAAc,GAAG,IAAI,CAAA;IACrC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;IAEvB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAElC,aAAa,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAClE,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAC3D,UAAU,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,eAAe,GAAG,IAAI,CAAA;IACrE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAEhC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;CACnC;AAkBD,eAAO,MAAM,UAAU,EAAE,eAmKxB,CAAA"}
@@ -0,0 +1,183 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * Flex Component - Puck Configuration
4
+ *
5
+ * Flexbox layout following official Puck demo patterns.
6
+ * Uses Tailwind classes for layout, inline styles for dynamic user values.
7
+ *
8
+ * Supports both preset options and advanced custom styling:
9
+ * - Background: unified BackgroundField (solid, gradient, or image)
10
+ * - Advanced: customPadding, customWidth, border
11
+ *
12
+ * Responsive Controls:
13
+ * - dimensions: Different dimensions at different breakpoints
14
+ * - customPadding: Different padding at different breakpoints
15
+ * - margin: Different margins at different breakpoints
16
+ * - visibility: Show/hide at different breakpoints
17
+ */
18
+ import { useId } from 'react';
19
+ import { cn, dimensionsValueToCSS, marginValueToCSS, paddingValueToCSS, borderValueToCSS, backgroundValueToCSS, responsiveValueToCSS, visibilityValueToCSS, justifyContentMap, alignItemsMap, } from '../../fields/shared';
20
+ import { AnimatedWrapper } from '../AnimatedWrapper';
21
+ import { createPaddingField } from '../../fields/PaddingField';
22
+ import { createBorderField } from '../../fields/BorderField';
23
+ import { createDimensionsField } from '../../fields/DimensionsField';
24
+ import { createResetField } from '../../fields/ResetField';
25
+ import { createMarginField } from '../../fields/MarginField';
26
+ import { createBackgroundField } from '../../fields/BackgroundField';
27
+ import { createAnimationField } from '../../fields/AnimationField';
28
+ import { createResponsiveField } from '../../fields/ResponsiveField';
29
+ import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
30
+ import { createJustifyContentField, createAlignItemsField, } from '../../fields/FlexAlignmentField';
31
+ // Tailwind class mappings for flex properties
32
+ const flexDirectionMap = {
33
+ row: 'flex-row',
34
+ column: 'flex-col',
35
+ 'row-reverse': 'flex-row-reverse',
36
+ 'column-reverse': 'flex-col-reverse',
37
+ };
38
+ const flexWrapMap = {
39
+ wrap: 'flex-wrap',
40
+ nowrap: 'flex-nowrap',
41
+ 'wrap-reverse': 'flex-wrap-reverse',
42
+ };
43
+ // Default values for responsive fields
44
+ const DEFAULT_PADDING = {
45
+ top: 0,
46
+ right: 0,
47
+ bottom: 0,
48
+ left: 0,
49
+ unit: 'px',
50
+ linked: true,
51
+ };
52
+ const DEFAULT_DIMENSIONS = {
53
+ mode: 'full',
54
+ alignment: 'center',
55
+ maxWidth: { value: 100, unit: '%', enabled: true },
56
+ };
57
+ const defaultProps = {
58
+ content: [],
59
+ direction: 'row',
60
+ justifyContent: null,
61
+ alignItems: null,
62
+ gap: 24,
63
+ wrap: 'wrap',
64
+ background: null,
65
+ customPadding: null,
66
+ margin: null,
67
+ dimensions: null,
68
+ border: null,
69
+ animation: null,
70
+ visibility: null,
71
+ };
72
+ export const FlexConfig = {
73
+ label: 'Flex',
74
+ fields: {
75
+ _reset: createResetField({ defaultProps }),
76
+ content: {
77
+ type: 'slot',
78
+ disallow: ['Section'],
79
+ },
80
+ // Responsive visibility control
81
+ visibility: createResponsiveVisibilityField({ label: 'Visibility' }),
82
+ direction: {
83
+ type: 'radio',
84
+ label: 'Direction',
85
+ options: [
86
+ { label: 'Row', value: 'row' },
87
+ { label: 'Column', value: 'column' },
88
+ ],
89
+ },
90
+ justifyContent: createJustifyContentField({ label: 'Justify Content' }),
91
+ alignItems: createAlignItemsField({ label: 'Align Items' }),
92
+ gap: {
93
+ type: 'number',
94
+ label: 'Gap (px)',
95
+ min: 0,
96
+ },
97
+ wrap: {
98
+ type: 'radio',
99
+ label: 'Wrap',
100
+ options: [
101
+ { label: 'Yes', value: 'wrap' },
102
+ { label: 'No', value: 'nowrap' },
103
+ ],
104
+ },
105
+ // Background
106
+ background: createBackgroundField({ label: 'Background' }),
107
+ // Advanced custom options
108
+ border: createBorderField({ label: 'Border' }),
109
+ // Responsive dimensions
110
+ dimensions: createResponsiveField({
111
+ label: 'Dimensions (Responsive)',
112
+ innerField: (config) => createDimensionsField(config),
113
+ defaultValue: DEFAULT_DIMENSIONS,
114
+ }),
115
+ animation: createAnimationField({ label: 'Animation' }),
116
+ // Spacing (grouped at bottom) - Responsive
117
+ margin: createResponsiveField({
118
+ label: 'Margin (Responsive)',
119
+ innerField: (config) => createMarginField(config),
120
+ defaultValue: DEFAULT_PADDING,
121
+ }),
122
+ customPadding: createResponsiveField({
123
+ label: 'Padding (Responsive)',
124
+ innerField: (config) => createPaddingField(config),
125
+ defaultValue: DEFAULT_PADDING,
126
+ }),
127
+ },
128
+ defaultProps,
129
+ render: ({ content: Content, direction, justifyContent, alignItems, gap, wrap, background, customPadding, margin, dimensions, border, animation, visibility, }) => {
130
+ // Generate unique IDs for CSS targeting
131
+ // eslint-disable-next-line react-hooks/rules-of-hooks
132
+ const uniqueId = useId().replace(/:/g, '');
133
+ const wrapperClass = `puck-flex-${uniqueId}`;
134
+ const contentClass = `puck-flex-content-${uniqueId}`;
135
+ // Collect all media query CSS
136
+ const mediaQueries = [];
137
+ // Generate styles from BackgroundValue
138
+ const backgroundStyles = backgroundValueToCSS(background);
139
+ // Build wrapper styles
140
+ const wrapperStyles = {
141
+ ...backgroundStyles,
142
+ };
143
+ // Add padding with responsive support
144
+ const paddingResult = responsiveValueToCSS(customPadding, (v) => ({ padding: paddingValueToCSS(v) }), wrapperClass);
145
+ Object.assign(wrapperStyles, paddingResult.baseStyles);
146
+ if (paddingResult.mediaQueryCSS) {
147
+ mediaQueries.push(paddingResult.mediaQueryCSS);
148
+ }
149
+ // Add border if set
150
+ const borderStyles = borderValueToCSS(border);
151
+ if (borderStyles) {
152
+ Object.assign(wrapperStyles, borderStyles);
153
+ }
154
+ // Apply margin with responsive support
155
+ const marginResult = responsiveValueToCSS(margin, (v) => ({ margin: marginValueToCSS(v) }), wrapperClass);
156
+ Object.assign(wrapperStyles, marginResult.baseStyles);
157
+ if (marginResult.mediaQueryCSS) {
158
+ mediaQueries.push(marginResult.mediaQueryCSS);
159
+ }
160
+ // Use dimensions with responsive support
161
+ const dimensionsResult = responsiveValueToCSS(dimensions, dimensionsValueToCSS, contentClass);
162
+ // Visibility media queries
163
+ const visibilityCSS = visibilityValueToCSS(visibility, wrapperClass);
164
+ if (visibilityCSS) {
165
+ mediaQueries.push(visibilityCSS);
166
+ }
167
+ // Build Tailwind classes for flex layout
168
+ // [&>*]:min-w-0 prevents flex children from overflowing (CSS best practice)
169
+ const contentClasses = cn('flex w-full min-h-[50px]', flexDirectionMap[direction], justifyContent && justifyContentMap[justifyContent], alignItems && alignItemsMap[alignItems], flexWrapMap[wrap], '[&>*]:min-w-0', contentClass);
170
+ // Dynamic styles that need inline (user-controlled values)
171
+ const contentStyles = {
172
+ gap,
173
+ ...dimensionsResult.baseStyles,
174
+ };
175
+ if (dimensionsResult.mediaQueryCSS) {
176
+ mediaQueries.push(dimensionsResult.mediaQueryCSS);
177
+ }
178
+ // Combine all media queries
179
+ const allMediaQueryCSS = mediaQueries.join('\n');
180
+ return (_jsxs(AnimatedWrapper, { animation: animation, children: [allMediaQueryCSS && _jsx("style", { children: allMediaQueryCSS }), _jsx("div", { className: wrapperClass, style: wrapperStyles, children: _jsx(Content, { className: contentClasses, style: contentStyles }) })] }));
181
+ },
182
+ };
183
+ //# sourceMappingURL=Flex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flex.js","sourceRoot":"","sources":["../../../src/components/layout/Flex.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Flex Component - Server-safe Puck Configuration
3
+ *
4
+ * Flexbox layout following official Puck demo patterns.
5
+ * Uses Tailwind classes for layout, inline styles for dynamic user values.
6
+ *
7
+ * This is a server-safe version with NO fields property (only slot for content).
8
+ * For the full editor version with fields, use Flex.tsx
9
+ *
10
+ * Responsive Controls:
11
+ * - dimensions: Different dimensions at different breakpoints
12
+ * - customPadding: Different padding at different breakpoints
13
+ * - margin: Different margins at different breakpoints
14
+ * - visibility: Show/hide at different breakpoints
15
+ */
16
+ import type { ComponentConfig } from '@measured/puck';
17
+ import { type PaddingValue, type BorderValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
18
+ export type JustifyContent = 'flex-start' | 'center' | 'flex-end' | 'space-between' | 'space-around';
19
+ export type AlignItems = 'flex-start' | 'center' | 'flex-end' | 'stretch';
20
+ export interface FlexProps {
21
+ content: unknown;
22
+ direction: 'row' | 'column';
23
+ justifyContent: JustifyContent | null;
24
+ alignItems: AlignItems | null;
25
+ gap: number;
26
+ wrap: 'wrap' | 'nowrap';
27
+ background: BackgroundValue | null;
28
+ customPadding: ResponsiveValue<PaddingValue> | PaddingValue | null;
29
+ margin: ResponsiveValue<PaddingValue> | PaddingValue | null;
30
+ dimensions: ResponsiveValue<DimensionsValue> | DimensionsValue | null;
31
+ border: BorderValue | null;
32
+ animation: AnimationValue | null;
33
+ visibility: VisibilityValue | null;
34
+ }
35
+ export declare const FlexConfig: ComponentConfig;
36
+ //# sourceMappingURL=Flex.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Flex.server.d.ts","sourceRoot":"","sources":["../../../src/components/layout/Flex.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAWL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AAU5B,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,eAAe,GAAG,cAAc,CAAA;AACpG,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAA;AAgBzE,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,KAAK,GAAG,QAAQ,CAAA;IAC3B,cAAc,EAAE,cAAc,GAAG,IAAI,CAAA;IACrC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAA;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;IAEvB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAElC,aAAa,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAClE,MAAM,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,IAAI,CAAA;IAC3D,UAAU,EAAE,eAAe,CAAC,eAAe,CAAC,GAAG,eAAe,GAAG,IAAI,CAAA;IACrE,MAAM,EAAE,WAAW,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAEhC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;CACnC;AAkBD,eAAO,MAAM,UAAU,EAAE,eAkHxB,CAAA"}