@delmaredigital/payload-puck 0.1.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/README.md +293 -1237
  2. package/dist/admin/EditWithPuckButton.d.ts +74 -0
  3. package/dist/admin/EditWithPuckButton.d.ts.map +1 -0
  4. package/dist/admin/EditWithPuckButton.js +114 -0
  5. package/dist/admin/EditWithPuckButton.js.map +1 -0
  6. package/dist/admin/EditWithPuckCell.d.ts +43 -0
  7. package/dist/admin/EditWithPuckCell.d.ts.map +1 -0
  8. package/dist/admin/EditWithPuckCell.js +66 -0
  9. package/dist/admin/EditWithPuckCell.js.map +1 -0
  10. package/dist/admin/PuckEditorView.d.ts +85 -0
  11. package/dist/admin/PuckEditorView.d.ts.map +1 -0
  12. package/dist/admin/PuckEditorView.js +135 -0
  13. package/dist/admin/PuckEditorView.js.map +1 -0
  14. package/dist/admin/client.d.ts +8 -104
  15. package/dist/admin/client.d.ts.map +1 -0
  16. package/dist/admin/client.js +14 -176
  17. package/dist/admin/client.js.map +1 -0
  18. package/dist/admin/generateAdminComponents.d.ts +51 -0
  19. package/dist/admin/generateAdminComponents.d.ts.map +1 -0
  20. package/dist/admin/generateAdminComponents.js +42 -0
  21. package/dist/admin/generateAdminComponents.js.map +1 -0
  22. package/dist/admin/index.d.ts +14 -150
  23. package/dist/admin/index.d.ts.map +1 -0
  24. package/dist/admin/index.js +17 -30
  25. package/dist/admin/index.js.map +1 -0
  26. package/dist/api/createPuckApiRoutes.d.ts +31 -0
  27. package/dist/api/createPuckApiRoutes.d.ts.map +1 -0
  28. package/dist/api/createPuckApiRoutes.js +193 -0
  29. package/dist/api/createPuckApiRoutes.js.map +1 -0
  30. package/dist/api/createPuckApiRoutesVersions.d.ts +28 -0
  31. package/dist/api/createPuckApiRoutesVersions.d.ts.map +1 -0
  32. package/dist/api/createPuckApiRoutesVersions.js +144 -0
  33. package/dist/api/createPuckApiRoutesVersions.js.map +1 -0
  34. package/dist/api/createPuckApiRoutesWithId.d.ts +34 -0
  35. package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -0
  36. package/dist/api/createPuckApiRoutesWithId.js +251 -0
  37. package/dist/api/createPuckApiRoutesWithId.js.map +1 -0
  38. package/dist/api/index.d.ts +11 -431
  39. package/dist/api/index.d.ts.map +1 -0
  40. package/dist/api/index.js +40 -587
  41. package/dist/api/index.js.map +1 -0
  42. package/dist/api/types.d.ts +302 -0
  43. package/dist/api/types.d.ts.map +1 -0
  44. package/dist/api/types.js +2 -0
  45. package/dist/api/types.js.map +1 -0
  46. package/dist/api/utils/mapRootProps.d.ts +76 -0
  47. package/dist/api/utils/mapRootProps.d.ts.map +1 -0
  48. package/dist/api/utils/mapRootProps.js +169 -0
  49. package/dist/api/utils/mapRootProps.js.map +1 -0
  50. package/dist/collections/Templates.d.ts +9 -0
  51. package/dist/collections/Templates.d.ts.map +1 -0
  52. package/dist/collections/Templates.js +62 -0
  53. package/dist/collections/Templates.js.map +1 -0
  54. package/dist/components/AccordionClient.d.ts +20 -0
  55. package/dist/components/AccordionClient.d.ts.map +1 -0
  56. package/dist/components/AccordionClient.js +67 -0
  57. package/dist/components/AccordionClient.js.map +1 -0
  58. package/dist/components/AnimatedWrapper.d.ts +33 -0
  59. package/dist/components/AnimatedWrapper.d.ts.map +1 -0
  60. package/dist/components/AnimatedWrapper.js +61 -0
  61. package/dist/components/AnimatedWrapper.js.map +1 -0
  62. package/dist/components/exports.d.ts +54 -0
  63. package/dist/components/exports.d.ts.map +1 -0
  64. package/dist/components/exports.js +71 -0
  65. package/dist/components/exports.js.map +1 -0
  66. package/dist/components/index.d.ts +8 -219
  67. package/dist/components/index.d.ts.map +1 -0
  68. package/dist/components/index.js +15 -9155
  69. package/dist/components/index.js.map +1 -0
  70. package/dist/components/interactive/Accordion.d.ts +28 -0
  71. package/dist/components/interactive/Accordion.d.ts.map +1 -0
  72. package/dist/components/interactive/Accordion.js +159 -0
  73. package/dist/components/interactive/Accordion.js.map +1 -0
  74. package/dist/components/interactive/Accordion.server.d.ts +29 -0
  75. package/dist/components/interactive/Accordion.server.d.ts.map +1 -0
  76. package/dist/components/interactive/Accordion.server.js +30 -0
  77. package/dist/components/interactive/Accordion.server.js.map +1 -0
  78. package/dist/components/interactive/Button.d.ts +26 -0
  79. package/dist/components/interactive/Button.d.ts.map +1 -0
  80. package/dist/components/interactive/Button.js +133 -0
  81. package/dist/components/interactive/Button.js.map +1 -0
  82. package/dist/components/interactive/Button.server.d.ts +28 -0
  83. package/dist/components/interactive/Button.server.d.ts.map +1 -0
  84. package/dist/components/interactive/Button.server.js +96 -0
  85. package/dist/components/interactive/Button.server.js.map +1 -0
  86. package/dist/components/interactive/Card.d.ts +27 -0
  87. package/dist/components/interactive/Card.d.ts.map +1 -0
  88. package/dist/components/interactive/Card.js +128 -0
  89. package/dist/components/interactive/Card.js.map +1 -0
  90. package/dist/components/interactive/Card.server.d.ts +29 -0
  91. package/dist/components/interactive/Card.server.d.ts.map +1 -0
  92. package/dist/components/interactive/Card.server.js +77 -0
  93. package/dist/components/interactive/Card.server.js.map +1 -0
  94. package/dist/components/interactive/Divider.d.ts +18 -0
  95. package/dist/components/interactive/Divider.d.ts.map +1 -0
  96. package/dist/components/interactive/Divider.js +68 -0
  97. package/dist/components/interactive/Divider.js.map +1 -0
  98. package/dist/components/interactive/Divider.server.d.ts +20 -0
  99. package/dist/components/interactive/Divider.server.d.ts.map +1 -0
  100. package/dist/components/interactive/Divider.server.js +50 -0
  101. package/dist/components/interactive/Divider.server.js.map +1 -0
  102. package/dist/components/interactive/index.d.ts +10 -0
  103. package/dist/components/interactive/index.d.ts.map +1 -0
  104. package/dist/components/interactive/index.js +10 -0
  105. package/dist/components/interactive/index.js.map +1 -0
  106. package/dist/components/layout/Container.d.ts +29 -0
  107. package/dist/components/layout/Container.d.ts.map +1 -0
  108. package/dist/components/layout/Container.js +166 -0
  109. package/dist/components/layout/Container.js.map +1 -0
  110. package/dist/components/layout/Container.server.d.ts +32 -0
  111. package/dist/components/layout/Container.server.d.ts.map +1 -0
  112. package/dist/components/layout/Container.server.js +105 -0
  113. package/dist/components/layout/Container.server.js.map +1 -0
  114. package/dist/components/layout/Flex.d.ts +36 -0
  115. package/dist/components/layout/Flex.d.ts.map +1 -0
  116. package/dist/components/layout/Flex.js +183 -0
  117. package/dist/components/layout/Flex.js.map +1 -0
  118. package/dist/components/layout/Flex.server.d.ts +36 -0
  119. package/dist/components/layout/Flex.server.d.ts.map +1 -0
  120. package/dist/components/layout/Flex.server.js +97 -0
  121. package/dist/components/layout/Flex.server.js.map +1 -0
  122. package/dist/components/layout/Grid.d.ts +31 -0
  123. package/dist/components/layout/Grid.d.ts.map +1 -0
  124. package/dist/components/layout/Grid.js +164 -0
  125. package/dist/components/layout/Grid.js.map +1 -0
  126. package/dist/components/layout/Grid.server.d.ts +32 -0
  127. package/dist/components/layout/Grid.server.d.ts.map +1 -0
  128. package/dist/components/layout/Grid.server.js +92 -0
  129. package/dist/components/layout/Grid.server.js.map +1 -0
  130. package/dist/components/layout/Section.d.ts +35 -0
  131. package/dist/components/layout/Section.d.ts.map +1 -0
  132. package/dist/components/layout/Section.js +212 -0
  133. package/dist/components/layout/Section.js.map +1 -0
  134. package/dist/components/layout/Section.server.d.ts +35 -0
  135. package/dist/components/layout/Section.server.d.ts.map +1 -0
  136. package/dist/components/layout/Section.server.js +144 -0
  137. package/dist/components/layout/Section.server.js.map +1 -0
  138. package/dist/components/layout/Spacer.d.ts +18 -0
  139. package/dist/components/layout/Spacer.d.ts.map +1 -0
  140. package/dist/components/layout/Spacer.js +99 -0
  141. package/dist/components/layout/Spacer.js.map +1 -0
  142. package/dist/components/layout/Spacer.server.d.ts +21 -0
  143. package/dist/components/layout/Spacer.server.d.ts.map +1 -0
  144. package/dist/components/layout/Spacer.server.js +61 -0
  145. package/dist/components/layout/Spacer.server.js.map +1 -0
  146. package/dist/components/layout/Template.d.ts +35 -0
  147. package/dist/components/layout/Template.d.ts.map +1 -0
  148. package/dist/components/layout/Template.js +124 -0
  149. package/dist/components/layout/Template.js.map +1 -0
  150. package/dist/components/layout/Template.server.d.ts +32 -0
  151. package/dist/components/layout/Template.server.d.ts.map +1 -0
  152. package/dist/components/layout/Template.server.js +75 -0
  153. package/dist/components/layout/Template.server.js.map +1 -0
  154. package/dist/components/layout/index.d.ts +14 -0
  155. package/dist/components/layout/index.d.ts.map +1 -0
  156. package/dist/components/layout/index.js +13 -0
  157. package/dist/components/layout/index.js.map +1 -0
  158. package/dist/components/media/Image.d.ts +30 -0
  159. package/dist/components/media/Image.d.ts.map +1 -0
  160. package/dist/components/media/Image.js +123 -0
  161. package/dist/components/media/Image.js.map +1 -0
  162. package/dist/components/media/Image.server.d.ts +28 -0
  163. package/dist/components/media/Image.server.d.ts.map +1 -0
  164. package/dist/components/media/Image.server.js +76 -0
  165. package/dist/components/media/Image.server.js.map +1 -0
  166. package/dist/components/media/index.d.ts +7 -0
  167. package/dist/components/media/index.d.ts.map +1 -0
  168. package/dist/components/media/index.js +7 -0
  169. package/dist/components/media/index.js.map +1 -0
  170. package/dist/components/typography/Heading.d.ts +21 -0
  171. package/dist/components/typography/Heading.d.ts.map +1 -0
  172. package/dist/components/typography/Heading.js +71 -0
  173. package/dist/components/typography/Heading.js.map +1 -0
  174. package/dist/components/typography/Heading.server.d.ts +21 -0
  175. package/dist/components/typography/Heading.server.d.ts.map +1 -0
  176. package/dist/components/typography/Heading.server.js +49 -0
  177. package/dist/components/typography/Heading.server.js.map +1 -0
  178. package/dist/components/typography/RichText.d.ts +20 -0
  179. package/dist/components/typography/RichText.d.ts.map +1 -0
  180. package/dist/components/typography/RichText.editor.d.ts +11 -0
  181. package/dist/components/typography/RichText.editor.d.ts.map +1 -0
  182. package/dist/components/typography/RichText.editor.js +67 -0
  183. package/dist/components/typography/RichText.editor.js.map +1 -0
  184. package/dist/components/typography/RichText.js +73 -0
  185. package/dist/components/typography/RichText.js.map +1 -0
  186. package/dist/components/typography/RichText.server.d.ts +22 -0
  187. package/dist/components/typography/RichText.server.d.ts.map +1 -0
  188. package/dist/components/typography/RichText.server.js +52 -0
  189. package/dist/components/typography/RichText.server.js.map +1 -0
  190. package/dist/components/typography/Text.d.ts +20 -0
  191. package/dist/components/typography/Text.d.ts.map +1 -0
  192. package/dist/components/typography/Text.js +61 -0
  193. package/dist/components/typography/Text.js.map +1 -0
  194. package/dist/components/typography/Text.server.d.ts +21 -0
  195. package/dist/components/typography/Text.server.d.ts.map +1 -0
  196. package/dist/components/typography/Text.server.js +39 -0
  197. package/dist/components/typography/Text.server.js.map +1 -0
  198. package/dist/components/typography/index.d.ts +10 -0
  199. package/dist/components/typography/index.d.ts.map +1 -0
  200. package/dist/components/typography/index.js +10 -0
  201. package/dist/components/typography/index.js.map +1 -0
  202. package/dist/config/config.editor.d.ts +15 -56
  203. package/dist/config/config.editor.d.ts.map +1 -0
  204. package/dist/config/config.editor.js +125 -9364
  205. package/dist/config/config.editor.js.map +1 -0
  206. package/dist/config/index.d.ts +7 -33
  207. package/dist/config/index.d.ts.map +1 -0
  208. package/dist/config/index.js +110 -2028
  209. package/dist/config/index.js.map +1 -0
  210. package/dist/config/merge.d.ts +23 -0
  211. package/dist/config/merge.d.ts.map +1 -0
  212. package/dist/config/merge.js +80 -0
  213. package/dist/config/merge.js.map +1 -0
  214. package/dist/config/presets.d.ts +342 -0
  215. package/dist/config/presets.d.ts.map +1 -0
  216. package/dist/config/presets.js +247 -0
  217. package/dist/config/presets.js.map +1 -0
  218. package/dist/editor/PuckEditor.client.d.ts +131 -0
  219. package/dist/editor/PuckEditor.client.d.ts.map +1 -0
  220. package/dist/editor/PuckEditor.client.js +42 -0
  221. package/dist/editor/PuckEditor.client.js.map +1 -0
  222. package/dist/editor/PuckEditorCore.client.d.ts +141 -0
  223. package/dist/editor/PuckEditorCore.client.d.ts.map +1 -0
  224. package/dist/editor/PuckEditorCore.client.js +306 -0
  225. package/dist/editor/PuckEditorCore.client.js.map +1 -0
  226. package/dist/editor/components/HeaderActions.d.ts +109 -0
  227. package/dist/editor/components/HeaderActions.d.ts.map +1 -0
  228. package/dist/editor/components/HeaderActions.js +254 -0
  229. package/dist/editor/components/HeaderActions.js.map +1 -0
  230. package/dist/editor/components/IframeWrapper.d.ts +77 -0
  231. package/dist/editor/components/IframeWrapper.d.ts.map +1 -0
  232. package/dist/editor/components/IframeWrapper.js +257 -0
  233. package/dist/editor/components/IframeWrapper.js.map +1 -0
  234. package/dist/editor/components/LoadingState.d.ts +14 -0
  235. package/dist/editor/components/LoadingState.d.ts.map +1 -0
  236. package/dist/editor/components/LoadingState.js +12 -0
  237. package/dist/editor/components/LoadingState.js.map +1 -0
  238. package/dist/editor/components/PreviewModal.d.ts +54 -0
  239. package/dist/editor/components/PreviewModal.d.ts.map +1 -0
  240. package/dist/editor/components/PreviewModal.js +298 -0
  241. package/dist/editor/components/PreviewModal.js.map +1 -0
  242. package/dist/editor/components/VersionHistory.d.ts +44 -0
  243. package/dist/editor/components/VersionHistory.d.ts.map +1 -0
  244. package/dist/editor/components/VersionHistory.js +308 -0
  245. package/dist/editor/components/VersionHistory.js.map +1 -0
  246. package/dist/editor/hooks/useUnsavedChanges.d.ts +27 -0
  247. package/dist/editor/hooks/useUnsavedChanges.d.ts.map +1 -0
  248. package/dist/editor/hooks/useUnsavedChanges.js +55 -0
  249. package/dist/editor/hooks/useUnsavedChanges.js.map +1 -0
  250. package/dist/editor/index.d.ts +16 -756
  251. package/dist/editor/index.d.ts.map +1 -0
  252. package/dist/editor/index.js +49 -4533
  253. package/dist/editor/index.js.map +1 -0
  254. package/dist/editor/plugins/index.d.ts +12 -0
  255. package/dist/editor/plugins/index.d.ts.map +1 -0
  256. package/dist/editor/plugins/index.js +12 -0
  257. package/dist/editor/plugins/index.js.map +1 -0
  258. package/dist/endpoints/index.d.ts +46 -0
  259. package/dist/endpoints/index.d.ts.map +1 -0
  260. package/dist/endpoints/index.js +204 -0
  261. package/dist/endpoints/index.js.map +1 -0
  262. package/dist/exports/client.d.ts +19 -0
  263. package/dist/exports/client.d.ts.map +1 -0
  264. package/dist/exports/client.js +21 -0
  265. package/dist/exports/client.js.map +1 -0
  266. package/dist/exports/rsc.d.ts +19 -0
  267. package/dist/exports/rsc.d.ts.map +1 -0
  268. package/dist/exports/rsc.js +19 -0
  269. package/dist/exports/rsc.js.map +1 -0
  270. package/dist/fields/AlignmentField.d.ts +36 -0
  271. package/dist/fields/AlignmentField.d.ts.map +1 -0
  272. package/dist/fields/AlignmentField.js +120 -0
  273. package/dist/fields/AlignmentField.js.map +1 -0
  274. package/dist/fields/AnimationField.d.ts +44 -0
  275. package/dist/fields/AnimationField.d.ts.map +1 -0
  276. package/dist/fields/AnimationField.js +329 -0
  277. package/dist/fields/AnimationField.js.map +1 -0
  278. package/dist/fields/BackgroundField.d.ts +40 -0
  279. package/dist/fields/BackgroundField.d.ts.map +1 -0
  280. package/dist/fields/BackgroundField.js +413 -0
  281. package/dist/fields/BackgroundField.js.map +1 -0
  282. package/dist/fields/BorderField.d.ts +29 -0
  283. package/dist/fields/BorderField.d.ts.map +1 -0
  284. package/dist/fields/BorderField.js +264 -0
  285. package/dist/fields/BorderField.js.map +1 -0
  286. package/dist/fields/ColorPickerField.d.ts +43 -0
  287. package/dist/fields/ColorPickerField.d.ts.map +1 -0
  288. package/dist/fields/ColorPickerField.js +285 -0
  289. package/dist/fields/ColorPickerField.js.map +1 -0
  290. package/dist/fields/DimensionsField.d.ts +43 -0
  291. package/dist/fields/DimensionsField.d.ts.map +1 -0
  292. package/dist/fields/DimensionsField.js +532 -0
  293. package/dist/fields/DimensionsField.js.map +1 -0
  294. package/dist/fields/FlexAlignmentField.d.ts +61 -0
  295. package/dist/fields/FlexAlignmentField.d.ts.map +1 -0
  296. package/dist/fields/FlexAlignmentField.js +166 -0
  297. package/dist/fields/FlexAlignmentField.js.map +1 -0
  298. package/dist/fields/FolderPickerField.d.ts +17 -0
  299. package/dist/fields/FolderPickerField.d.ts.map +1 -0
  300. package/dist/fields/FolderPickerField.js +282 -0
  301. package/dist/fields/FolderPickerField.js.map +1 -0
  302. package/dist/fields/GradientEditor.d.ts +22 -0
  303. package/dist/fields/GradientEditor.d.ts.map +1 -0
  304. package/dist/fields/GradientEditor.js +322 -0
  305. package/dist/fields/GradientEditor.js.map +1 -0
  306. package/dist/fields/LockedField.d.ts +67 -0
  307. package/dist/fields/LockedField.d.ts.map +1 -0
  308. package/dist/fields/LockedField.js +170 -0
  309. package/dist/fields/LockedField.js.map +1 -0
  310. package/dist/fields/MarginField.d.ts +31 -0
  311. package/dist/fields/MarginField.d.ts.map +1 -0
  312. package/dist/fields/MarginField.js +233 -0
  313. package/dist/fields/MarginField.js.map +1 -0
  314. package/dist/fields/MediaField.d.ts +33 -0
  315. package/dist/fields/MediaField.d.ts.map +1 -0
  316. package/dist/fields/MediaField.js +677 -0
  317. package/dist/fields/MediaField.js.map +1 -0
  318. package/dist/fields/PaddingField.d.ts +29 -0
  319. package/dist/fields/PaddingField.d.ts.map +1 -0
  320. package/dist/fields/PaddingField.js +232 -0
  321. package/dist/fields/PaddingField.js.map +1 -0
  322. package/dist/fields/PageSegmentField.d.ts +17 -0
  323. package/dist/fields/PageSegmentField.d.ts.map +1 -0
  324. package/dist/fields/PageSegmentField.js +92 -0
  325. package/dist/fields/PageSegmentField.js.map +1 -0
  326. package/dist/fields/ResetField.d.ts +27 -0
  327. package/dist/fields/ResetField.d.ts.map +1 -0
  328. package/dist/fields/ResetField.js +122 -0
  329. package/dist/fields/ResetField.js.map +1 -0
  330. package/dist/fields/ResponsiveField.d.ts +38 -0
  331. package/dist/fields/ResponsiveField.d.ts.map +1 -0
  332. package/dist/fields/ResponsiveField.js +275 -0
  333. package/dist/fields/ResponsiveField.js.map +1 -0
  334. package/dist/fields/ResponsiveVisibilityField.d.ts +34 -0
  335. package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -0
  336. package/dist/fields/ResponsiveVisibilityField.js +145 -0
  337. package/dist/fields/ResponsiveVisibilityField.js.map +1 -0
  338. package/dist/fields/SizeField.d.ts +54 -0
  339. package/dist/fields/SizeField.d.ts.map +1 -0
  340. package/dist/fields/SizeField.js +255 -0
  341. package/dist/fields/SizeField.js.map +1 -0
  342. package/dist/fields/SlugPreviewField.d.ts +16 -0
  343. package/dist/fields/SlugPreviewField.d.ts.map +1 -0
  344. package/dist/fields/SlugPreviewField.js +49 -0
  345. package/dist/fields/SlugPreviewField.js.map +1 -0
  346. package/dist/fields/TemplateField.d.ts +31 -0
  347. package/dist/fields/TemplateField.d.ts.map +1 -0
  348. package/dist/fields/TemplateField.js +428 -0
  349. package/dist/fields/TemplateField.js.map +1 -0
  350. package/dist/fields/TiptapField.d.ts +40 -0
  351. package/dist/fields/TiptapField.d.ts.map +1 -0
  352. package/dist/fields/TiptapField.js +857 -0
  353. package/dist/fields/TiptapField.js.map +1 -0
  354. package/dist/fields/TiptapModal.d.ts +10 -0
  355. package/dist/fields/TiptapModal.d.ts.map +1 -0
  356. package/dist/fields/TiptapModal.js +114 -0
  357. package/dist/fields/TiptapModal.js.map +1 -0
  358. package/dist/fields/TiptapModalField.d.ts +23 -0
  359. package/dist/fields/TiptapModalField.d.ts.map +1 -0
  360. package/dist/fields/TiptapModalField.js +55 -0
  361. package/dist/fields/TiptapModalField.js.map +1 -0
  362. package/dist/fields/TransformField.d.ts +31 -0
  363. package/dist/fields/TransformField.d.ts.map +1 -0
  364. package/dist/fields/TransformField.js +384 -0
  365. package/dist/fields/TransformField.js.map +1 -0
  366. package/dist/fields/VerticalAlignmentField.d.ts +35 -0
  367. package/dist/fields/VerticalAlignmentField.d.ts.map +1 -0
  368. package/dist/fields/VerticalAlignmentField.js +120 -0
  369. package/dist/fields/VerticalAlignmentField.js.map +1 -0
  370. package/dist/fields/WidthField.d.ts +28 -0
  371. package/dist/fields/WidthField.d.ts.map +1 -0
  372. package/dist/fields/WidthField.js +339 -0
  373. package/dist/fields/WidthField.js.map +1 -0
  374. package/dist/fields/index.d.ts +44 -559
  375. package/dist/fields/index.d.ts.map +1 -0
  376. package/dist/fields/index.js +91 -7685
  377. package/dist/fields/index.js.map +1 -0
  378. package/dist/fields/richtext-output.css +219 -0
  379. package/dist/{shared-DeNKN95N.d.mts → fields/shared.d.ts} +114 -133
  380. package/dist/fields/shared.d.ts.map +1 -0
  381. package/dist/fields/shared.js +1542 -0
  382. package/dist/fields/shared.js.map +1 -0
  383. package/dist/fields/{index.css → tiptap-styles.css} +75 -166
  384. package/dist/hooks/index.d.ts +8 -0
  385. package/dist/hooks/index.d.ts.map +1 -0
  386. package/dist/hooks/index.js +8 -0
  387. package/dist/hooks/index.js.map +1 -0
  388. package/dist/hooks/useResponsiveStyles.d.ts +51 -0
  389. package/dist/hooks/useResponsiveStyles.d.ts.map +1 -0
  390. package/dist/hooks/useResponsiveStyles.js +149 -0
  391. package/dist/hooks/useResponsiveStyles.js.map +1 -0
  392. package/dist/hooks/useScrollAnimation.d.ts +56 -0
  393. package/dist/hooks/useScrollAnimation.d.ts.map +1 -0
  394. package/dist/hooks/useScrollAnimation.js +116 -0
  395. package/dist/hooks/useScrollAnimation.js.map +1 -0
  396. package/dist/index.d.ts +66 -6
  397. package/dist/index.d.ts.map +1 -0
  398. package/dist/index.js +67 -568
  399. package/dist/index.js.map +1 -0
  400. package/dist/layouts/LayoutWrapper.d.ts +33 -0
  401. package/dist/layouts/LayoutWrapper.d.ts.map +1 -0
  402. package/dist/layouts/LayoutWrapper.js +112 -0
  403. package/dist/layouts/LayoutWrapper.js.map +1 -0
  404. package/dist/layouts/defaults.d.ts +40 -0
  405. package/dist/layouts/defaults.d.ts.map +1 -0
  406. package/dist/layouts/defaults.js +106 -0
  407. package/dist/layouts/defaults.js.map +1 -0
  408. package/dist/layouts/index.d.ts +27 -94
  409. package/dist/layouts/index.d.ts.map +1 -0
  410. package/dist/layouts/index.js +30 -393
  411. package/dist/layouts/index.js.map +1 -0
  412. package/dist/{types-D7D3rZ1J.d.ts → layouts/types.d.ts} +8 -11
  413. package/dist/layouts/types.d.ts.map +1 -0
  414. package/dist/layouts/types.js +7 -0
  415. package/dist/layouts/types.js.map +1 -0
  416. package/dist/layouts/utils.d.ts +42 -0
  417. package/dist/layouts/utils.d.ts.map +1 -0
  418. package/dist/layouts/utils.js +83 -0
  419. package/dist/layouts/utils.js.map +1 -0
  420. package/dist/plugin/collections/Pages.d.ts +8 -0
  421. package/dist/plugin/collections/Pages.d.ts.map +1 -0
  422. package/dist/plugin/collections/Pages.js +117 -0
  423. package/dist/plugin/collections/Pages.js.map +1 -0
  424. package/dist/plugin/fields/index.d.ts +153 -0
  425. package/dist/plugin/fields/index.d.ts.map +1 -0
  426. package/dist/plugin/fields/index.js +364 -0
  427. package/dist/plugin/fields/index.js.map +1 -0
  428. package/dist/plugin/fields/types.d.ts +108 -0
  429. package/dist/plugin/fields/types.d.ts.map +1 -0
  430. package/dist/plugin/fields/types.js +7 -0
  431. package/dist/plugin/fields/types.js.map +1 -0
  432. package/dist/plugin/index.d.ts +13 -255
  433. package/dist/plugin/index.d.ts.map +1 -0
  434. package/dist/plugin/index.js +276 -553
  435. package/dist/plugin/index.js.map +1 -0
  436. package/dist/render/HybridPageRenderer.d.ts +85 -0
  437. package/dist/render/HybridPageRenderer.d.ts.map +1 -0
  438. package/dist/render/HybridPageRenderer.js +29 -0
  439. package/dist/render/HybridPageRenderer.js.map +1 -0
  440. package/dist/render/PageRenderer.d.ts +51 -0
  441. package/dist/render/PageRenderer.d.ts.map +1 -0
  442. package/dist/render/PageRenderer.js +61 -0
  443. package/dist/render/PageRenderer.js.map +1 -0
  444. package/dist/render/PuckEditor.client.d.ts +66 -0
  445. package/dist/render/PuckEditor.client.d.ts.map +1 -0
  446. package/dist/render/PuckEditor.client.js +66 -0
  447. package/dist/render/PuckEditor.client.js.map +1 -0
  448. package/dist/render/index.d.ts +8 -106
  449. package/dist/render/index.d.ts.map +1 -0
  450. package/dist/render/index.js +10 -2162
  451. package/dist/render/index.js.map +1 -0
  452. package/dist/theme/context.d.ts +59 -0
  453. package/dist/theme/context.d.ts.map +1 -0
  454. package/dist/theme/context.js +73 -0
  455. package/dist/theme/context.js.map +1 -0
  456. package/dist/theme/defaults.d.ts +39 -0
  457. package/dist/theme/defaults.d.ts.map +1 -0
  458. package/dist/theme/defaults.js +72 -0
  459. package/dist/theme/defaults.js.map +1 -0
  460. package/dist/theme/example.d.ts +30 -0
  461. package/dist/theme/example.d.ts.map +1 -0
  462. package/dist/theme/example.js +89 -0
  463. package/dist/theme/example.js.map +1 -0
  464. package/dist/theme/index.d.ts +17 -140
  465. package/dist/theme/index.d.ts.map +1 -0
  466. package/dist/theme/index.js +34 -200
  467. package/dist/theme/index.js.map +1 -0
  468. package/dist/{types-_6MvjyKv.d.ts → theme/types.d.ts} +8 -9
  469. package/dist/theme/types.d.ts.map +1 -0
  470. package/dist/theme/types.js +9 -0
  471. package/dist/theme/types.js.map +1 -0
  472. package/dist/theme/utils.d.ts +30 -0
  473. package/dist/theme/utils.d.ts.map +1 -0
  474. package/dist/theme/utils.js +84 -0
  475. package/dist/theme/utils.js.map +1 -0
  476. package/dist/{index-CQu6SzDg.d.mts → types/index.d.ts} +120 -115
  477. package/dist/types/index.d.ts.map +1 -0
  478. package/dist/types/index.js +2 -0
  479. package/dist/types/index.js.map +1 -0
  480. package/dist/utils/index.d.ts +23 -257
  481. package/dist/utils/index.d.ts.map +1 -0
  482. package/dist/utils/index.js +56 -425
  483. package/dist/utils/index.js.map +1 -0
  484. package/dist/utils/{index.d.mts → migration.d.ts} +16 -112
  485. package/dist/utils/migration.d.ts.map +1 -0
  486. package/dist/utils/migration.js +309 -0
  487. package/dist/utils/migration.js.map +1 -0
  488. package/dist/utils/validation.d.ts +89 -0
  489. package/dist/utils/validation.d.ts.map +1 -0
  490. package/dist/utils/validation.js +247 -0
  491. package/dist/utils/validation.js.map +1 -0
  492. package/dist/views/PuckConfigContext.d.ts +71 -0
  493. package/dist/views/PuckConfigContext.d.ts.map +1 -0
  494. package/dist/views/PuckConfigContext.js +45 -0
  495. package/dist/views/PuckConfigContext.js.map +1 -0
  496. package/dist/views/PuckEditorClient.d.ts +73 -0
  497. package/dist/views/PuckEditorClient.d.ts.map +1 -0
  498. package/dist/views/PuckEditorClient.js +130 -0
  499. package/dist/views/PuckEditorClient.js.map +1 -0
  500. package/dist/views/PuckEditorView.d.ts +19 -0
  501. package/dist/views/PuckEditorView.d.ts.map +1 -0
  502. package/dist/views/PuckEditorView.js +106 -0
  503. package/dist/views/PuckEditorView.js.map +1 -0
  504. package/dist/views/index.d.ts +10 -0
  505. package/dist/views/index.d.ts.map +1 -0
  506. package/dist/views/index.js +10 -0
  507. package/dist/views/index.js.map +1 -0
  508. package/package.json +50 -72
  509. package/dist/AccordionClient.d.mts +0 -24
  510. package/dist/AccordionClient.d.ts +0 -24
  511. package/dist/AccordionClient.js +0 -786
  512. package/dist/AccordionClient.mjs +0 -784
  513. package/dist/AnimatedWrapper.d.mts +0 -30
  514. package/dist/AnimatedWrapper.d.ts +0 -30
  515. package/dist/AnimatedWrapper.js +0 -379
  516. package/dist/AnimatedWrapper.mjs +0 -377
  517. package/dist/admin/client.d.mts +0 -108
  518. package/dist/admin/client.mjs +0 -173
  519. package/dist/admin/index.d.mts +0 -157
  520. package/dist/admin/index.mjs +0 -29
  521. package/dist/api/index.d.mts +0 -460
  522. package/dist/api/index.mjs +0 -578
  523. package/dist/components/index.css +0 -339
  524. package/dist/components/index.d.mts +0 -222
  525. package/dist/components/index.mjs +0 -9109
  526. package/dist/config/config.editor.css +0 -339
  527. package/dist/config/config.editor.d.mts +0 -153
  528. package/dist/config/config.editor.mjs +0 -9347
  529. package/dist/config/index.d.mts +0 -68
  530. package/dist/config/index.mjs +0 -2008
  531. package/dist/editor/index.d.mts +0 -784
  532. package/dist/editor/index.mjs +0 -4500
  533. package/dist/fields/index.d.mts +0 -600
  534. package/dist/fields/index.mjs +0 -7569
  535. package/dist/index-CoUQnyC3.d.ts +0 -327
  536. package/dist/index.d.mts +0 -6
  537. package/dist/index.mjs +0 -555
  538. package/dist/layouts/index.d.mts +0 -96
  539. package/dist/layouts/index.mjs +0 -378
  540. package/dist/plugin/index.d.mts +0 -289
  541. package/dist/plugin/index.mjs +0 -555
  542. package/dist/render/index.d.mts +0 -109
  543. package/dist/render/index.mjs +0 -2140
  544. package/dist/shared-DeNKN95N.d.ts +0 -546
  545. package/dist/theme/index.d.mts +0 -155
  546. package/dist/theme/index.mjs +0 -186
  547. package/dist/types-D7D3rZ1J.d.mts +0 -116
  548. package/dist/types-_6MvjyKv.d.mts +0 -104
  549. package/dist/utils/index.mjs +0 -412
  550. package/dist/utils-DaRs9t0J.d.mts +0 -85
  551. package/dist/utils-gAvt0Vhw.d.ts +0 -85
  552. package/examples/README.md +0 -247
  553. package/examples/api/puck/pages/[id]/route.ts +0 -64
  554. package/examples/api/puck/pages/[id]/versions/route.ts +0 -47
  555. package/examples/api/puck/pages/route.ts +0 -45
  556. package/examples/app/(frontend)/page.tsx +0 -94
  557. package/examples/app/(manage)/layout.tsx +0 -31
  558. package/examples/app/[...slug]/page.tsx +0 -101
  559. package/examples/app/pages/[id]/edit/page.tsx +0 -148
  560. package/examples/components/CustomBanner.tsx +0 -368
  561. package/examples/config/custom-config.ts +0 -223
  562. package/examples/config/payload.config.example.ts +0 -64
  563. package/examples/lib/puck-layouts.ts +0 -258
  564. package/examples/lib/puck-theme.ts +0 -94
  565. package/examples/styles/puck-theme.css +0 -171
@@ -1,786 +0,0 @@
1
- "use client";
2
- 'use strict';
3
-
4
- var react = require('react');
5
- var lucideReact = require('lucide-react');
6
- var jsxRuntime = require('react/jsx-runtime');
7
-
8
- // src/fields/shared.ts
9
- function cn(...classes) {
10
- return classes.filter(Boolean).join(" ");
11
- }
12
- function isLegacyWidthValue(value) {
13
- if (!value || typeof value !== "object") return false;
14
- const v = value;
15
- return typeof v.maxWidth === "number" && typeof v.unit === "string" && typeof v.mode === "string" && !("minWidth" in v) && !("minHeight" in v) && !("maxHeight" in v);
16
- }
17
- function hexToRgb(hex) {
18
- const clean = hex.replace(/^#/, "");
19
- if (clean.length !== 6) return null;
20
- const r = parseInt(clean.substring(0, 2), 16);
21
- const g = parseInt(clean.substring(2, 4), 16);
22
- const b = parseInt(clean.substring(4, 6), 16);
23
- if (isNaN(r) || isNaN(g) || isNaN(b)) return null;
24
- return { r, g, b };
25
- }
26
- function colorValueToCSS(color) {
27
- if (!color?.hex) return void 0;
28
- const rgb = hexToRgb(color.hex);
29
- if (!rgb) return color.hex;
30
- const opacity = (color.opacity ?? 100) / 100;
31
- if (opacity === 1) {
32
- return color.hex;
33
- }
34
- return `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity})`;
35
- }
36
- function paddingValueToCSS(padding) {
37
- if (!padding) return void 0;
38
- const { top, right, bottom, left, unit } = padding;
39
- if (top === right && right === bottom && bottom === left) {
40
- return `${top}${unit}`;
41
- }
42
- if (top === bottom && left === right) {
43
- return `${top}${unit} ${right}${unit}`;
44
- }
45
- if (left === right) {
46
- return `${top}${unit} ${right}${unit} ${bottom}${unit}`;
47
- }
48
- return `${top}${unit} ${right}${unit} ${bottom}${unit} ${left}${unit}`;
49
- }
50
- function marginValueToCSS(margin) {
51
- if (!margin) return void 0;
52
- const { top, right, bottom, left, unit } = margin;
53
- if (top === right && right === bottom && bottom === left) {
54
- return `${top}${unit}`;
55
- }
56
- if (top === bottom && left === right) {
57
- return `${top}${unit} ${right}${unit}`;
58
- }
59
- if (left === right) {
60
- return `${top}${unit} ${right}${unit} ${bottom}${unit}`;
61
- }
62
- return `${top}${unit} ${right}${unit} ${bottom}${unit} ${left}${unit}`;
63
- }
64
- function widthValueToCSS(width) {
65
- if (!width) return void 0;
66
- const style = {};
67
- if (width.mode === "full") {
68
- style.width = "100%";
69
- style.maxWidth = "100%";
70
- } else {
71
- style.maxWidth = `${width.maxWidth}${width.unit}`;
72
- style.width = "100%";
73
- }
74
- switch (width.alignment) {
75
- case "left":
76
- style.marginLeft = "0";
77
- style.marginRight = "auto";
78
- break;
79
- case "center":
80
- style.marginLeft = "auto";
81
- style.marginRight = "auto";
82
- break;
83
- case "right":
84
- style.marginLeft = "auto";
85
- style.marginRight = "0";
86
- break;
87
- }
88
- return style;
89
- }
90
- function dimensionsValueToCSS(dimensions) {
91
- if (!dimensions) return void 0;
92
- if (isLegacyWidthValue(dimensions)) {
93
- return widthValueToCSS(dimensions);
94
- }
95
- const dim = dimensions;
96
- const style = {};
97
- if (dim.mode === "full") {
98
- style.width = "100%";
99
- style.maxWidth = "100%";
100
- } else {
101
- style.width = "100%";
102
- if (dim.maxWidth?.enabled !== false && dim.maxWidth?.value > 0) {
103
- style.maxWidth = `${dim.maxWidth.value}${dim.maxWidth.unit}`;
104
- }
105
- if (dim.minWidth?.enabled && dim.minWidth.value > 0) {
106
- style.minWidth = `${dim.minWidth.value}${dim.minWidth.unit}`;
107
- }
108
- }
109
- if (dim.minHeight?.enabled && dim.minHeight.value > 0) {
110
- style.minHeight = `${dim.minHeight.value}${dim.minHeight.unit}`;
111
- }
112
- if (dim.maxHeight?.enabled && dim.maxHeight.value > 0) {
113
- style.maxHeight = `${dim.maxHeight.value}${dim.maxHeight.unit}`;
114
- }
115
- switch (dim.alignment) {
116
- case "left":
117
- style.marginLeft = "0";
118
- style.marginRight = "auto";
119
- break;
120
- case "center":
121
- style.marginLeft = "auto";
122
- style.marginRight = "auto";
123
- break;
124
- case "right":
125
- style.marginLeft = "auto";
126
- style.marginRight = "0";
127
- break;
128
- }
129
- return style;
130
- }
131
- function gradientValueToCSS(gradient) {
132
- if (!gradient?.stops || gradient.stops.length === 0) {
133
- return "transparent";
134
- }
135
- const sortedStops = [...gradient.stops].sort((a, b) => a.position - b.position);
136
- const stopsCSS = sortedStops.map((stop) => {
137
- const color = colorValueToCSS(stop.color) || "transparent";
138
- return `${color} ${stop.position}%`;
139
- }).join(", ");
140
- if (gradient.type === "radial") {
141
- const shape = gradient.radialShape || "circle";
142
- const position = gradient.radialPosition || "center";
143
- return `radial-gradient(${shape} at ${position}, ${stopsCSS})`;
144
- }
145
- return `linear-gradient(${gradient.angle}deg, ${stopsCSS})`;
146
- }
147
- function positionToCSS(position) {
148
- const positionMap = {
149
- center: "center",
150
- top: "top",
151
- bottom: "bottom",
152
- left: "left",
153
- right: "right",
154
- "top-left": "top left",
155
- "top-right": "top right",
156
- "bottom-left": "bottom left",
157
- "bottom-right": "bottom right"
158
- };
159
- return position ? positionMap[position] || "center" : "center";
160
- }
161
- function maskDirectionToCSS(direction) {
162
- const directionMap = {
163
- "to-top": "to top",
164
- "to-bottom": "to bottom",
165
- "to-left": "to left",
166
- "to-right": "to right",
167
- "to-top-left": "to top left",
168
- "to-top-right": "to top right",
169
- "to-bottom-left": "to bottom left",
170
- "to-bottom-right": "to bottom right",
171
- "from-center": "radial"
172
- // Not used for linear, handled separately in maskToCSS
173
- };
174
- return directionMap[direction] || "to bottom";
175
- }
176
- function maskToCSS(mask) {
177
- const startAlpha = (mask.startOpacity ?? 100) / 100;
178
- const endAlpha = (mask.endOpacity ?? 0) / 100;
179
- if (mask.direction === "from-center") {
180
- return `radial-gradient(circle at center, rgba(0,0,0,${startAlpha}) ${mask.startPosition}%, rgba(0,0,0,${endAlpha}) ${mask.endPosition}%)`;
181
- }
182
- const direction = maskDirectionToCSS(mask.direction);
183
- return `linear-gradient(${direction}, rgba(0,0,0,${startAlpha}) ${mask.startPosition}%, rgba(0,0,0,${endAlpha}) ${mask.endPosition}%)`;
184
- }
185
- function backgroundValueToCSS(bg) {
186
- if (!bg || bg.type === "none") {
187
- return {};
188
- }
189
- const style = {};
190
- switch (bg.type) {
191
- case "solid":
192
- if (bg.solid?.hex) {
193
- style.backgroundColor = colorValueToCSS(bg.solid);
194
- }
195
- break;
196
- case "gradient":
197
- if (bg.gradient && bg.gradient.stops && bg.gradient.stops.length > 0) {
198
- style.background = gradientValueToCSS(bg.gradient);
199
- }
200
- break;
201
- case "image":
202
- if (bg.image?.media?.url) {
203
- const imageUrl = bg.image.media.url;
204
- const size = bg.image.size || "cover";
205
- const position = positionToCSS(bg.image.position);
206
- const repeat = bg.image.repeat || "no-repeat";
207
- const attachment = bg.image.attachment || "scroll";
208
- if (bg.overlay?.enabled) {
209
- const overlayCSS = bg.overlay.type === "solid" ? colorValueToCSS(bg.overlay.solid) : gradientValueToCSS(bg.overlay.gradient);
210
- if (bg.overlay.type === "solid" && overlayCSS) {
211
- style.backgroundImage = `linear-gradient(${overlayCSS}, ${overlayCSS}), url(${imageUrl})`;
212
- } else {
213
- style.backgroundImage = `${overlayCSS}, url(${imageUrl})`;
214
- }
215
- style.backgroundSize = `auto, ${size}`;
216
- style.backgroundPosition = `center, ${position}`;
217
- style.backgroundRepeat = `no-repeat, ${repeat}`;
218
- style.backgroundAttachment = `scroll, ${attachment}`;
219
- } else {
220
- style.backgroundImage = `url(${imageUrl})`;
221
- style.backgroundSize = size;
222
- style.backgroundPosition = position;
223
- style.backgroundRepeat = repeat;
224
- style.backgroundAttachment = attachment;
225
- }
226
- if (bg.image.mask?.enabled) {
227
- const maskCSS = maskToCSS(bg.image.mask);
228
- style.maskImage = maskCSS;
229
- style.WebkitMaskImage = maskCSS;
230
- }
231
- }
232
- break;
233
- }
234
- return style;
235
- }
236
- function transformOriginToCSS(origin) {
237
- const originMap = {
238
- center: "center",
239
- top: "top",
240
- bottom: "bottom",
241
- left: "left",
242
- right: "right",
243
- "top-left": "top left",
244
- "top-right": "top right",
245
- "bottom-left": "bottom left",
246
- "bottom-right": "bottom right"
247
- };
248
- return originMap[origin] || "center";
249
- }
250
- function transformValueToCSS(transform) {
251
- if (!transform) return void 0;
252
- const style = {};
253
- const transforms = [];
254
- if (transform.enable3D && transform.perspective) {
255
- style.perspective = `${transform.perspective}px`;
256
- }
257
- if (transform.translateX !== 0 || transform.translateY !== 0) {
258
- transforms.push(
259
- `translate(${transform.translateX}${transform.translateUnit}, ${transform.translateY}${transform.translateUnit})`
260
- );
261
- }
262
- if (transform.rotate !== 0) {
263
- transforms.push(`rotate(${transform.rotate}deg)`);
264
- }
265
- if (transform.enable3D) {
266
- if (transform.rotateX && transform.rotateX !== 0) {
267
- transforms.push(`rotateX(${transform.rotateX}deg)`);
268
- }
269
- if (transform.rotateY && transform.rotateY !== 0) {
270
- transforms.push(`rotateY(${transform.rotateY}deg)`);
271
- }
272
- }
273
- if (transform.scaleX !== 1 || transform.scaleY !== 1) {
274
- if (transform.scaleX === transform.scaleY) {
275
- transforms.push(`scale(${transform.scaleX})`);
276
- } else {
277
- transforms.push(`scale(${transform.scaleX}, ${transform.scaleY})`);
278
- }
279
- }
280
- if (transform.skewX !== 0 || transform.skewY !== 0) {
281
- if (transform.skewX !== 0 && transform.skewY !== 0) {
282
- transforms.push(`skew(${transform.skewX}deg, ${transform.skewY}deg)`);
283
- } else if (transform.skewX !== 0) {
284
- transforms.push(`skewX(${transform.skewX}deg)`);
285
- } else {
286
- transforms.push(`skewY(${transform.skewY}deg)`);
287
- }
288
- }
289
- if (transforms.length > 0) {
290
- style.transform = transforms.join(" ");
291
- }
292
- if (transform.origin !== "center") {
293
- style.transformOrigin = transformOriginToCSS(transform.origin);
294
- }
295
- if (transform.enable3D) {
296
- style.transformStyle = "preserve-3d";
297
- }
298
- return Object.keys(style).length > 0 ? style : void 0;
299
- }
300
- var EASING_CSS_MAP = {
301
- linear: "linear",
302
- ease: "ease",
303
- "ease-in": "ease-in",
304
- "ease-out": "ease-out",
305
- "ease-in-out": "ease-in-out",
306
- spring: "cubic-bezier(0.175, 0.885, 0.32, 1.275)",
307
- "spring-gentle": "cubic-bezier(0.34, 1.56, 0.64, 1)",
308
- bounce: "cubic-bezier(0.68, -0.55, 0.265, 1.55)",
309
- "bounce-in": "cubic-bezier(0.6, -0.28, 0.735, 0.045)",
310
- "bounce-out": "cubic-bezier(0.175, 0.885, 0.32, 1.275)",
311
- "back-in": "cubic-bezier(0.6, -0.28, 0.735, 0.045)",
312
- "back-out": "cubic-bezier(0.175, 0.885, 0.32, 1.275)",
313
- "back-in-out": "cubic-bezier(0.68, -0.55, 0.265, 1.55)",
314
- elastic: "cubic-bezier(0.68, -0.6, 0.32, 1.6)"
315
- };
316
- function animationOriginToCSS(origin) {
317
- if (!origin) return "center";
318
- const originMap = {
319
- center: "center",
320
- top: "top",
321
- bottom: "bottom",
322
- left: "left",
323
- right: "right",
324
- "top-left": "top left",
325
- "top-right": "top right",
326
- "bottom-left": "bottom left",
327
- "bottom-right": "bottom right"
328
- };
329
- return originMap[origin] || "center";
330
- }
331
- function animationValueToCSS(anim) {
332
- if (!anim || anim.mode !== "custom") return void 0;
333
- const duration = anim.duration ?? 300;
334
- const delay = anim.delay ?? 0;
335
- const easing = anim.easing ?? "ease";
336
- const easingCSS = EASING_CSS_MAP[easing] || "ease";
337
- return {
338
- transition: `all ${duration}ms ${easingCSS} ${delay}ms`,
339
- transitionProperty: "opacity, transform, filter, background-color, color, border-color, box-shadow"
340
- };
341
- }
342
- function getEntranceAnimationStyles(anim) {
343
- const defaultResult = {
344
- initial: {},
345
- animate: {},
346
- duration: 500,
347
- delay: 0,
348
- easing: "ease",
349
- origin: "center"
350
- };
351
- if (!anim || anim.mode !== "preset" || anim.entrance === "none") {
352
- return defaultResult;
353
- }
354
- const duration = anim.entranceDuration ?? 500;
355
- const delay = anim.entranceDelay ?? 0;
356
- const easing = EASING_CSS_MAP[anim.easing ?? "ease"] || "ease";
357
- const origin = animationOriginToCSS(anim.origin);
358
- const distance = anim.distance ?? 24;
359
- const scaleFrom = anim.scaleFrom ?? 0.9;
360
- const rotateAngle = anim.rotateAngle ?? 15;
361
- const blurAmount = anim.blurAmount ?? 8;
362
- const entrance = anim.entrance ?? "none";
363
- let initial = {};
364
- let animate = {};
365
- switch (entrance) {
366
- // ==================== FADE (6) ====================
367
- case "fade-in":
368
- initial = { opacity: 0 };
369
- animate = { opacity: 1 };
370
- break;
371
- case "fade-up":
372
- initial = { opacity: 0, transform: `translateY(${distance}px)` };
373
- animate = { opacity: 1, transform: "translateY(0)" };
374
- break;
375
- case "fade-down":
376
- initial = { opacity: 0, transform: `translateY(-${distance}px)` };
377
- animate = { opacity: 1, transform: "translateY(0)" };
378
- break;
379
- case "fade-left":
380
- initial = { opacity: 0, transform: `translateX(${distance}px)` };
381
- animate = { opacity: 1, transform: "translateX(0)" };
382
- break;
383
- case "fade-right":
384
- initial = { opacity: 0, transform: `translateX(-${distance}px)` };
385
- animate = { opacity: 1, transform: "translateX(0)" };
386
- break;
387
- case "fade-scale":
388
- initial = { opacity: 0, transform: `scale(${scaleFrom})` };
389
- animate = { opacity: 1, transform: "scale(1)" };
390
- break;
391
- // ==================== SCALE (4) ====================
392
- case "scale-in":
393
- initial = { opacity: 0, transform: `scale(${scaleFrom})` };
394
- animate = { opacity: 1, transform: "scale(1)" };
395
- break;
396
- case "scale-up":
397
- initial = { opacity: 0, transform: `scale(${scaleFrom}) translateY(${distance}px)` };
398
- animate = { opacity: 1, transform: "scale(1) translateY(0)" };
399
- break;
400
- case "scale-down":
401
- initial = { opacity: 0, transform: `scale(${scaleFrom}) translateY(-${distance}px)` };
402
- animate = { opacity: 1, transform: "scale(1) translateY(0)" };
403
- break;
404
- case "scale-out":
405
- initial = { opacity: 0, transform: `scale(${2 - scaleFrom})` };
406
- animate = { opacity: 1, transform: "scale(1)" };
407
- break;
408
- // ==================== SLIDE (4) ====================
409
- case "slide-up":
410
- initial = { transform: `translateY(${distance}px)` };
411
- animate = { transform: "translateY(0)" };
412
- break;
413
- case "slide-down":
414
- initial = { transform: `translateY(-${distance}px)` };
415
- animate = { transform: "translateY(0)" };
416
- break;
417
- case "slide-left":
418
- initial = { transform: `translateX(${distance}px)` };
419
- animate = { transform: "translateX(0)" };
420
- break;
421
- case "slide-right":
422
- initial = { transform: `translateX(-${distance}px)` };
423
- animate = { transform: "translateX(0)" };
424
- break;
425
- // ==================== BLUR (3) ====================
426
- case "blur-in":
427
- initial = { opacity: 0, filter: `blur(${blurAmount}px)` };
428
- animate = { opacity: 1, filter: "blur(0)" };
429
- break;
430
- case "blur-up":
431
- initial = { opacity: 0, filter: `blur(${blurAmount}px)`, transform: `translateY(${distance}px)` };
432
- animate = { opacity: 1, filter: "blur(0)", transform: "translateY(0)" };
433
- break;
434
- case "blur-down":
435
- initial = { opacity: 0, filter: `blur(${blurAmount}px)`, transform: `translateY(-${distance}px)` };
436
- animate = { opacity: 1, filter: "blur(0)", transform: "translateY(0)" };
437
- break;
438
- // ==================== ROTATE (3) ====================
439
- case "rotate-in":
440
- initial = { opacity: 0, transform: `rotate(${rotateAngle}deg) scale(${scaleFrom})` };
441
- animate = { opacity: 1, transform: "rotate(0) scale(1)" };
442
- break;
443
- case "rotate-up":
444
- initial = { opacity: 0, transform: `rotate(${rotateAngle}deg) translateY(${distance}px)` };
445
- animate = { opacity: 1, transform: "rotate(0) translateY(0)" };
446
- break;
447
- case "rotate-down":
448
- initial = { opacity: 0, transform: `rotate(-${rotateAngle}deg) translateY(-${distance}px)` };
449
- animate = { opacity: 1, transform: "rotate(0) translateY(0)" };
450
- break;
451
- // ==================== BOUNCE (3) ====================
452
- // These use spring/bounce easing by default for the effect
453
- case "bounce-in":
454
- initial = { opacity: 0, transform: `scale(${scaleFrom * 0.8})` };
455
- animate = { opacity: 1, transform: "scale(1)" };
456
- break;
457
- case "bounce-up":
458
- initial = { opacity: 0, transform: `translateY(${distance * 1.5}px)` };
459
- animate = { opacity: 1, transform: "translateY(0)" };
460
- break;
461
- case "bounce-down":
462
- initial = { opacity: 0, transform: `translateY(-${distance * 1.5}px)` };
463
- animate = { opacity: 1, transform: "translateY(0)" };
464
- break;
465
- // ==================== FLIP (2) ====================
466
- // Flip uses perspective in transform for proper 3D effect
467
- // Starts from -90deg (tilted back) so the flip motion is visible
468
- case "flip-x":
469
- initial = {
470
- transform: "perspective(1000px) rotateX(-90deg)",
471
- opacity: 0.2,
472
- backfaceVisibility: "hidden"
473
- };
474
- animate = {
475
- transform: "perspective(1000px) rotateX(0deg)",
476
- opacity: 1,
477
- backfaceVisibility: "hidden"
478
- };
479
- break;
480
- case "flip-y":
481
- initial = {
482
- transform: "perspective(1000px) rotateY(-90deg)",
483
- opacity: 0.2,
484
- backfaceVisibility: "hidden"
485
- };
486
- animate = {
487
- transform: "perspective(1000px) rotateY(0deg)",
488
- opacity: 1,
489
- backfaceVisibility: "hidden"
490
- };
491
- break;
492
- // ==================== ZOOM (2) ====================
493
- case "zoom-in":
494
- initial = { opacity: 0, transform: `scale(${scaleFrom * 0.5})` };
495
- animate = { opacity: 1, transform: "scale(1)" };
496
- break;
497
- case "zoom-out":
498
- initial = { opacity: 0, transform: `scale(${2.5 - scaleFrom})` };
499
- animate = { opacity: 1, transform: "scale(1)" };
500
- break;
501
- }
502
- return {
503
- initial,
504
- animate,
505
- duration,
506
- delay,
507
- easing,
508
- origin
509
- };
510
- }
511
- function useScrollAnimation(options = {}) {
512
- const {
513
- triggerOnScroll = true,
514
- threshold = 0.1,
515
- once = true,
516
- rootMargin = "0px",
517
- delay = 0
518
- } = options;
519
- const ref = react.useRef(null);
520
- const [isInView, setIsInView] = react.useState(false);
521
- const [hasAnimated, setHasAnimated] = react.useState(false);
522
- const timeoutRef = react.useRef(null);
523
- const hasMountedRef = react.useRef(false);
524
- const reset = react.useCallback(() => {
525
- setIsInView(false);
526
- setHasAnimated(false);
527
- hasMountedRef.current = false;
528
- if (timeoutRef.current) {
529
- clearTimeout(timeoutRef.current);
530
- timeoutRef.current = null;
531
- }
532
- }, []);
533
- react.useEffect(() => {
534
- if (!triggerOnScroll) {
535
- if (hasMountedRef.current) return;
536
- hasMountedRef.current = true;
537
- requestAnimationFrame(() => {
538
- requestAnimationFrame(() => {
539
- if (delay > 0) {
540
- timeoutRef.current = setTimeout(() => {
541
- setIsInView(true);
542
- setHasAnimated(true);
543
- }, delay);
544
- } else {
545
- setIsInView(true);
546
- setHasAnimated(true);
547
- }
548
- });
549
- });
550
- return;
551
- }
552
- if (once && hasAnimated) {
553
- return;
554
- }
555
- const element = ref.current;
556
- if (!element) return;
557
- if (typeof IntersectionObserver === "undefined") {
558
- setIsInView(true);
559
- setHasAnimated(true);
560
- return;
561
- }
562
- const observer = new IntersectionObserver(
563
- (entries) => {
564
- const [entry] = entries;
565
- const inView = entry.isIntersecting;
566
- if (inView) {
567
- if (delay > 0) {
568
- timeoutRef.current = setTimeout(() => {
569
- setIsInView(true);
570
- setHasAnimated(true);
571
- }, delay);
572
- } else {
573
- setIsInView(true);
574
- setHasAnimated(true);
575
- }
576
- if (once) {
577
- observer.disconnect();
578
- }
579
- } else if (!once) {
580
- if (timeoutRef.current) {
581
- clearTimeout(timeoutRef.current);
582
- timeoutRef.current = null;
583
- }
584
- setIsInView(false);
585
- }
586
- },
587
- {
588
- threshold,
589
- rootMargin
590
- }
591
- );
592
- observer.observe(element);
593
- return () => {
594
- observer.disconnect();
595
- if (timeoutRef.current) {
596
- clearTimeout(timeoutRef.current);
597
- timeoutRef.current = null;
598
- }
599
- };
600
- }, [triggerOnScroll, threshold, once, rootMargin, delay, hasAnimated]);
601
- return {
602
- ref,
603
- isInView,
604
- hasAnimated,
605
- reset
606
- };
607
- }
608
- function AnimatedWrapper({
609
- animation,
610
- children,
611
- className,
612
- style,
613
- as: Component = "div"
614
- }) {
615
- const hasAnimation = animation && (animation.mode === "preset" && animation.entrance && animation.entrance !== "none" || animation.mode === "custom");
616
- if (!hasAnimation) {
617
- if (className || style) {
618
- return /* @__PURE__ */ jsxRuntime.jsx(Component, { className, style, children });
619
- }
620
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
621
- }
622
- const { ref, isInView } = useScrollAnimation({
623
- triggerOnScroll: animation.triggerOnScroll ?? true,
624
- threshold: animation.triggerThreshold ?? 0.1,
625
- once: animation.triggerOnce ?? true,
626
- rootMargin: animation.triggerMargin
627
- });
628
- if (animation.mode === "preset") {
629
- const { initial, animate, duration, delay, easing, origin } = getEntranceAnimationStyles(animation);
630
- const animationStyles = isInView ? animate : initial;
631
- const transitionProperties = [
632
- `opacity ${duration}ms ${easing} ${delay}ms`,
633
- `transform ${duration}ms ${easing} ${delay}ms`,
634
- `filter ${duration}ms ${easing} ${delay}ms`
635
- ].join(", ");
636
- return /* @__PURE__ */ jsxRuntime.jsx(
637
- Component,
638
- {
639
- ref,
640
- className,
641
- style: {
642
- ...style,
643
- ...animationStyles,
644
- transition: transitionProperties,
645
- transformOrigin: origin
646
- },
647
- children
648
- }
649
- );
650
- }
651
- const customStyles = animationValueToCSS(animation);
652
- return /* @__PURE__ */ jsxRuntime.jsx(
653
- Component,
654
- {
655
- ref,
656
- className,
657
- style: {
658
- ...style,
659
- ...customStyles,
660
- // Apply opacity for visibility-based transitions
661
- opacity: isInView ? 1 : 0
662
- },
663
- children
664
- }
665
- );
666
- }
667
- function AccordionItem({
668
- item,
669
- isOpen,
670
- onToggle,
671
- textColorCSS
672
- }) {
673
- const textStyle = textColorCSS ? { color: textColorCSS } : {};
674
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-b border-border last:border-b-0", children: [
675
- /* @__PURE__ */ jsxRuntime.jsxs(
676
- "button",
677
- {
678
- type: "button",
679
- onClick: onToggle,
680
- className: "flex w-full items-center justify-between py-4 px-4 text-left font-medium transition-all hover:bg-muted/50 text-foreground",
681
- style: textStyle,
682
- children: [
683
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: item.title }),
684
- /* @__PURE__ */ jsxRuntime.jsx(
685
- lucideReact.ChevronDown,
686
- {
687
- className: cn(
688
- "h-4 w-4 shrink-0 transition-transform duration-200",
689
- isOpen && "rotate-180"
690
- )
691
- }
692
- )
693
- ]
694
- }
695
- ),
696
- /* @__PURE__ */ jsxRuntime.jsx(
697
- "div",
698
- {
699
- className: cn(
700
- "overflow-hidden transition-all duration-200",
701
- isOpen ? "max-h-[1000px] opacity-100" : "max-h-0 opacity-0"
702
- ),
703
- children: /* @__PURE__ */ jsxRuntime.jsx(
704
- "div",
705
- {
706
- className: "px-4 pb-4 text-muted-foreground",
707
- style: textColorCSS ? { color: textColorCSS } : void 0,
708
- children: item.content
709
- }
710
- )
711
- }
712
- )
713
- ] });
714
- }
715
- function AccordionClient({
716
- items,
717
- allowMultiple,
718
- textColor,
719
- margin,
720
- background,
721
- dimensions,
722
- transform,
723
- animation,
724
- customPadding
725
- }) {
726
- const [openItems, setOpenItems] = react.useState(() => {
727
- const initialOpen = /* @__PURE__ */ new Set();
728
- items?.forEach((item, index) => {
729
- if (item.defaultOpen) {
730
- initialOpen.add(index);
731
- }
732
- });
733
- return initialOpen;
734
- });
735
- const handleToggle = (index) => {
736
- setOpenItems((prev) => {
737
- const newSet = new Set(prev);
738
- if (newSet.has(index)) {
739
- newSet.delete(index);
740
- } else {
741
- if (!allowMultiple) {
742
- newSet.clear();
743
- }
744
- newSet.add(index);
745
- }
746
- return newSet;
747
- });
748
- };
749
- const textColorCSS = colorValueToCSS(textColor);
750
- const dimensionsStyles = dimensionsValueToCSS(dimensions);
751
- const accordionClasses = "rounded-lg border border-border overflow-hidden bg-card";
752
- const backgroundStyles = backgroundValueToCSS(background);
753
- const accordionStyle = backgroundStyles && Object.keys(backgroundStyles).length > 0 ? backgroundStyles : {};
754
- const style = {
755
- ...dimensionsStyles
756
- };
757
- const marginCSS = marginValueToCSS(margin);
758
- if (marginCSS) {
759
- style.margin = marginCSS;
760
- }
761
- const paddingCSS = paddingValueToCSS(customPadding);
762
- if (paddingCSS) {
763
- style.padding = paddingCSS;
764
- }
765
- const transformStyles = transformValueToCSS(transform);
766
- if (transformStyles) {
767
- Object.assign(style, transformStyles);
768
- }
769
- if (!items || items.length === 0) {
770
- return /* @__PURE__ */ jsxRuntime.jsx(AnimatedWrapper, { animation, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4", style: Object.keys(style).length > 0 ? style : void 0, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: accordionClasses, style: accordionStyle, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4 text-center text-muted-foreground", children: "No accordion items. Add items in the editor." }) }) }) });
771
- }
772
- return /* @__PURE__ */ jsxRuntime.jsx(AnimatedWrapper, { animation, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4", style: Object.keys(style).length > 0 ? style : void 0, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: accordionClasses, style: accordionStyle, children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
773
- AccordionItem,
774
- {
775
- item,
776
- isOpen: openItems.has(index),
777
- onToggle: () => handleToggle(index),
778
- textColorCSS
779
- },
780
- index
781
- )) }) }) });
782
- }
783
-
784
- exports.AccordionClient = AccordionClient;
785
- //# sourceMappingURL=AccordionClient.js.map
786
- //# sourceMappingURL=AccordionClient.js.map