@delmaredigital/payload-puck 0.6.10 → 0.6.13

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 (583) hide show
  1. package/README.md +79 -1
  2. package/dist/admin/EditWithPuckButton.d.ts +1 -1
  3. package/dist/admin/EditWithPuckButton.d.ts.map +1 -1
  4. package/dist/admin/EditWithPuckButton.js +65 -25
  5. package/dist/admin/EditWithPuckButton.js.map +1 -1
  6. package/dist/admin/EditWithPuckCell.js +43 -13
  7. package/dist/admin/EditWithPuckCell.js.map +1 -1
  8. package/dist/admin/PuckEditorView.d.ts +1 -1
  9. package/dist/admin/PuckEditorView.d.ts.map +1 -1
  10. package/dist/admin/PuckEditorView.js +118 -32
  11. package/dist/admin/PuckEditorView.js.map +1 -1
  12. package/dist/admin/client.d.ts +2 -2
  13. package/dist/admin/client.d.ts.map +1 -1
  14. package/dist/admin/client.js +4 -4
  15. package/dist/admin/client.js.map +1 -1
  16. package/dist/admin/generateAdminComponents.js +7 -7
  17. package/dist/admin/generateAdminComponents.js.map +1 -1
  18. package/dist/admin/index.d.ts +5 -5
  19. package/dist/admin/index.d.ts.map +1 -1
  20. package/dist/admin/index.js +3 -2
  21. package/dist/admin/index.js.map +1 -1
  22. package/dist/ai/collections/AiContext.js +56 -29
  23. package/dist/ai/collections/AiContext.js.map +1 -1
  24. package/dist/ai/collections/AiPrompts.js +24 -19
  25. package/dist/ai/collections/AiPrompts.js.map +1 -1
  26. package/dist/ai/createAiApiRoutes.js +28 -19
  27. package/dist/ai/createAiApiRoutes.js.map +1 -1
  28. package/dist/ai/createAiGenerate.js +7 -8
  29. package/dist/ai/createAiGenerate.js.map +1 -1
  30. package/dist/ai/createAiPlugin.js +7 -9
  31. package/dist/ai/createAiPlugin.js.map +1 -1
  32. package/dist/ai/hooks/useAiContext.js +50 -39
  33. package/dist/ai/hooks/useAiContext.js.map +1 -1
  34. package/dist/ai/hooks/useAiPrompts.js +33 -25
  35. package/dist/ai/hooks/useAiPrompts.js.map +1 -1
  36. package/dist/ai/index.js +9 -10
  37. package/dist/ai/index.js.map +1 -1
  38. package/dist/ai/plugins/ContextEditorPanel.d.ts +1 -1
  39. package/dist/ai/plugins/ContextEditorPanel.d.ts.map +1 -1
  40. package/dist/ai/plugins/ContextEditorPanel.js +399 -107
  41. package/dist/ai/plugins/ContextEditorPanel.js.map +1 -1
  42. package/dist/ai/plugins/PromptEditorPanel.d.ts +1 -1
  43. package/dist/ai/plugins/PromptEditorPanel.d.ts.map +1 -1
  44. package/dist/ai/plugins/PromptEditorPanel.js +237 -51
  45. package/dist/ai/plugins/PromptEditorPanel.js.map +1 -1
  46. package/dist/ai/plugins/contextEditorPlugin.js +12 -5
  47. package/dist/ai/plugins/contextEditorPlugin.js.map +1 -1
  48. package/dist/ai/plugins/promptApiRoutes.js +119 -50
  49. package/dist/ai/plugins/promptApiRoutes.js.map +1 -1
  50. package/dist/ai/plugins/promptEditorPlugin.js +12 -5
  51. package/dist/ai/plugins/promptEditorPlugin.js.map +1 -1
  52. package/dist/ai/presets/componentAiDefaults.js +108 -83
  53. package/dist/ai/presets/componentAiDefaults.js.map +1 -1
  54. package/dist/ai/presets/index.js +12 -18
  55. package/dist/ai/presets/index.js.map +1 -1
  56. package/dist/ai/presets/instructions/interactive.js +85 -75
  57. package/dist/ai/presets/instructions/interactive.js.map +1 -1
  58. package/dist/ai/presets/instructions/layout.js +122 -117
  59. package/dist/ai/presets/instructions/layout.js.map +1 -1
  60. package/dist/ai/presets/instructions/media.js +31 -29
  61. package/dist/ai/presets/instructions/media.js.map +1 -1
  62. package/dist/ai/presets/instructions/pagePatterns.js +4 -6
  63. package/dist/ai/presets/instructions/pagePatterns.js.map +1 -1
  64. package/dist/ai/presets/instructions/schemas.js +495 -137
  65. package/dist/ai/presets/instructions/schemas.js.map +1 -1
  66. package/dist/ai/presets/instructions/typography.js +38 -33
  67. package/dist/ai/presets/instructions/typography.js.map +1 -1
  68. package/dist/ai/tools/index.js +92 -55
  69. package/dist/ai/tools/index.js.map +1 -1
  70. package/dist/ai/types.js +7 -1
  71. package/dist/ai/types.js.map +1 -1
  72. package/dist/ai/utils/injectAiConfig.js +33 -40
  73. package/dist/ai/utils/injectAiConfig.js.map +1 -1
  74. package/dist/api/createPuckApiRoutes.d.ts +1 -1
  75. package/dist/api/createPuckApiRoutes.d.ts.map +1 -1
  76. package/dist/api/createPuckApiRoutes.js +123 -65
  77. package/dist/api/createPuckApiRoutes.js.map +1 -1
  78. package/dist/api/createPuckApiRoutesVersions.d.ts +1 -1
  79. package/dist/api/createPuckApiRoutesVersions.d.ts.map +1 -1
  80. package/dist/api/createPuckApiRoutesVersions.js +88 -37
  81. package/dist/api/createPuckApiRoutesVersions.js.map +1 -1
  82. package/dist/api/createPuckApiRoutesWithId.d.ts +1 -1
  83. package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -1
  84. package/dist/api/createPuckApiRoutesWithId.js +166 -72
  85. package/dist/api/createPuckApiRoutesWithId.js.map +1 -1
  86. package/dist/api/index.d.ts +5 -5
  87. package/dist/api/index.d.ts.map +1 -1
  88. package/dist/api/index.js +6 -6
  89. package/dist/api/index.js.map +1 -1
  90. package/dist/api/payload-config.d.js +15 -0
  91. package/dist/api/payload-config.d.js.map +1 -0
  92. package/dist/api/types.js +4 -1
  93. package/dist/api/types.js.map +1 -1
  94. package/dist/api/utils/mapRootProps.d.ts +1 -1
  95. package/dist/api/utils/mapRootProps.d.ts.map +1 -1
  96. package/dist/api/utils/mapRootProps.js +77 -44
  97. package/dist/api/utils/mapRootProps.js.map +1 -1
  98. package/dist/collections/Templates.js +24 -20
  99. package/dist/collections/Templates.js.map +1 -1
  100. package/dist/components/AccordionClient.d.ts +2 -2
  101. package/dist/components/AccordionClient.d.ts.map +1 -1
  102. package/dist/components/AccordionClient.js +81 -22
  103. package/dist/components/AccordionClient.js.map +1 -1
  104. package/dist/components/AnimatedWrapper.d.ts +2 -2
  105. package/dist/components/AnimatedWrapper.d.ts.map +1 -1
  106. package/dist/components/AnimatedWrapper.js +31 -16
  107. package/dist/components/AnimatedWrapper.js.map +1 -1
  108. package/dist/components/exports.js +2 -2
  109. package/dist/components/exports.js.map +1 -1
  110. package/dist/components/index.d.ts +5 -5
  111. package/dist/components/index.d.ts.map +1 -1
  112. package/dist/components/index.js +7 -7
  113. package/dist/components/index.js.map +1 -1
  114. package/dist/components/interactive/Accordion.d.ts +1 -1
  115. package/dist/components/interactive/Accordion.d.ts.map +1 -1
  116. package/dist/components/interactive/Accordion.js +149 -55
  117. package/dist/components/interactive/Accordion.js.map +1 -1
  118. package/dist/components/interactive/Accordion.server.d.ts +1 -1
  119. package/dist/components/interactive/Accordion.server.d.ts.map +1 -1
  120. package/dist/components/interactive/Accordion.server.js +25 -7
  121. package/dist/components/interactive/Accordion.server.js.map +1 -1
  122. package/dist/components/interactive/Button.d.ts +3 -3
  123. package/dist/components/interactive/Button.d.ts.map +1 -1
  124. package/dist/components/interactive/Button.js +89 -43
  125. package/dist/components/interactive/Button.js.map +1 -1
  126. package/dist/components/interactive/Button.server.d.ts +2 -2
  127. package/dist/components/interactive/Button.server.d.ts.map +1 -1
  128. package/dist/components/interactive/Button.server.js +40 -20
  129. package/dist/components/interactive/Button.server.js.map +1 -1
  130. package/dist/components/interactive/Card.d.ts +3 -3
  131. package/dist/components/interactive/Card.d.ts.map +1 -1
  132. package/dist/components/interactive/Card.js +131 -39
  133. package/dist/components/interactive/Card.js.map +1 -1
  134. package/dist/components/interactive/Card.server.d.ts +3 -3
  135. package/dist/components/interactive/Card.server.d.ts.map +1 -1
  136. package/dist/components/interactive/Card.server.js +72 -11
  137. package/dist/components/interactive/Card.server.js.map +1 -1
  138. package/dist/components/interactive/Divider.d.ts +1 -1
  139. package/dist/components/interactive/Divider.d.ts.map +1 -1
  140. package/dist/components/interactive/Divider.js +54 -26
  141. package/dist/components/interactive/Divider.js.map +1 -1
  142. package/dist/components/interactive/Divider.server.d.ts +1 -1
  143. package/dist/components/interactive/Divider.server.d.ts.map +1 -1
  144. package/dist/components/interactive/Divider.server.js +28 -12
  145. package/dist/components/interactive/Divider.server.js.map +1 -1
  146. package/dist/components/interactive/index.d.ts +4 -4
  147. package/dist/components/interactive/index.d.ts.map +1 -1
  148. package/dist/components/interactive/index.js +5 -5
  149. package/dist/components/interactive/index.js.map +1 -1
  150. package/dist/components/layout/Container.d.ts +1 -1
  151. package/dist/components/layout/Container.d.ts.map +1 -1
  152. package/dist/components/layout/Container.js +101 -47
  153. package/dist/components/layout/Container.js.map +1 -1
  154. package/dist/components/layout/Container.server.d.ts +1 -1
  155. package/dist/components/layout/Container.server.d.ts.map +1 -1
  156. package/dist/components/layout/Container.server.js +67 -19
  157. package/dist/components/layout/Container.server.js.map +1 -1
  158. package/dist/components/layout/Flex.d.ts +2 -2
  159. package/dist/components/layout/Flex.d.ts.map +1 -1
  160. package/dist/components/layout/Flex.js +124 -55
  161. package/dist/components/layout/Flex.js.map +1 -1
  162. package/dist/components/layout/Flex.server.d.ts +1 -1
  163. package/dist/components/layout/Flex.server.d.ts.map +1 -1
  164. package/dist/components/layout/Flex.server.js +50 -14
  165. package/dist/components/layout/Flex.server.js.map +1 -1
  166. package/dist/components/layout/Grid.d.ts +1 -1
  167. package/dist/components/layout/Grid.d.ts.map +1 -1
  168. package/dist/components/layout/Grid.js +93 -44
  169. package/dist/components/layout/Grid.js.map +1 -1
  170. package/dist/components/layout/Grid.server.d.ts +1 -1
  171. package/dist/components/layout/Grid.server.d.ts.map +1 -1
  172. package/dist/components/layout/Grid.server.js +56 -14
  173. package/dist/components/layout/Grid.server.js.map +1 -1
  174. package/dist/components/layout/Section.d.ts +1 -1
  175. package/dist/components/layout/Section.d.ts.map +1 -1
  176. package/dist/components/layout/Section.js +147 -64
  177. package/dist/components/layout/Section.js.map +1 -1
  178. package/dist/components/layout/Section.server.d.ts +1 -1
  179. package/dist/components/layout/Section.server.d.ts.map +1 -1
  180. package/dist/components/layout/Section.server.js +92 -28
  181. package/dist/components/layout/Section.server.js.map +1 -1
  182. package/dist/components/layout/Spacer.d.ts +1 -1
  183. package/dist/components/layout/Spacer.d.ts.map +1 -1
  184. package/dist/components/layout/Spacer.js +80 -30
  185. package/dist/components/layout/Spacer.js.map +1 -1
  186. package/dist/components/layout/Spacer.server.d.ts +1 -1
  187. package/dist/components/layout/Spacer.server.d.ts.map +1 -1
  188. package/dist/components/layout/Spacer.server.js +31 -9
  189. package/dist/components/layout/Spacer.server.js.map +1 -1
  190. package/dist/components/layout/Template.d.ts +1 -1
  191. package/dist/components/layout/Template.d.ts.map +1 -1
  192. package/dist/components/layout/Template.js +58 -30
  193. package/dist/components/layout/Template.js.map +1 -1
  194. package/dist/components/layout/Template.server.d.ts +1 -1
  195. package/dist/components/layout/Template.server.d.ts.map +1 -1
  196. package/dist/components/layout/Template.server.js +43 -11
  197. package/dist/components/layout/Template.server.js.map +1 -1
  198. package/dist/components/layout/index.d.ts +8 -8
  199. package/dist/components/layout/index.d.ts.map +1 -1
  200. package/dist/components/layout/index.js +8 -8
  201. package/dist/components/layout/index.js.map +1 -1
  202. package/dist/components/media/Image.d.ts +3 -3
  203. package/dist/components/media/Image.d.ts.map +1 -1
  204. package/dist/components/media/Image.js +122 -39
  205. package/dist/components/media/Image.js.map +1 -1
  206. package/dist/components/media/Image.server.d.ts +3 -3
  207. package/dist/components/media/Image.server.d.ts.map +1 -1
  208. package/dist/components/media/Image.server.js +76 -13
  209. package/dist/components/media/Image.server.js.map +1 -1
  210. package/dist/components/media/index.d.ts +1 -1
  211. package/dist/components/media/index.d.ts.map +1 -1
  212. package/dist/components/media/index.js +2 -2
  213. package/dist/components/media/index.js.map +1 -1
  214. package/dist/components/typography/Heading.d.ts +2 -2
  215. package/dist/components/typography/Heading.d.ts.map +1 -1
  216. package/dist/components/typography/Heading.js +45 -25
  217. package/dist/components/typography/Heading.js.map +1 -1
  218. package/dist/components/typography/Heading.server.d.ts +2 -2
  219. package/dist/components/typography/Heading.server.d.ts.map +1 -1
  220. package/dist/components/typography/Heading.server.js +16 -10
  221. package/dist/components/typography/Heading.server.js.map +1 -1
  222. package/dist/components/typography/RichText.editor.d.ts +1 -1
  223. package/dist/components/typography/RichText.editor.d.ts.map +1 -1
  224. package/dist/components/typography/RichText.editor.js +44 -19
  225. package/dist/components/typography/RichText.editor.js.map +1 -1
  226. package/dist/components/typography/RichText.server.d.ts +2 -2
  227. package/dist/components/typography/RichText.server.d.ts.map +1 -1
  228. package/dist/components/typography/RichText.server.js +33 -14
  229. package/dist/components/typography/RichText.server.js.map +1 -1
  230. package/dist/components/typography/Text.d.ts +2 -2
  231. package/dist/components/typography/Text.d.ts.map +1 -1
  232. package/dist/components/typography/Text.js +49 -23
  233. package/dist/components/typography/Text.js.map +1 -1
  234. package/dist/components/typography/Text.server.d.ts +2 -2
  235. package/dist/components/typography/Text.server.d.ts.map +1 -1
  236. package/dist/components/typography/Text.server.js +21 -8
  237. package/dist/components/typography/Text.server.js.map +1 -1
  238. package/dist/components/typography/index.d.ts +4 -4
  239. package/dist/components/typography/index.d.ts.map +1 -1
  240. package/dist/components/typography/index.js +5 -5
  241. package/dist/components/typography/index.js.map +1 -1
  242. package/dist/config/config.editor.d.ts +3 -3
  243. package/dist/config/config.editor.d.ts.map +1 -1
  244. package/dist/config/config.editor.js +119 -54
  245. package/dist/config/config.editor.js.map +1 -1
  246. package/dist/config/index.d.ts +4 -4
  247. package/dist/config/index.d.ts.map +1 -1
  248. package/dist/config/index.js +62 -35
  249. package/dist/config/index.js.map +1 -1
  250. package/dist/config/merge.d.ts +1 -1
  251. package/dist/config/merge.d.ts.map +1 -1
  252. package/dist/config/merge.js +23 -26
  253. package/dist/config/merge.js.map +1 -1
  254. package/dist/config/presets.d.ts +4 -4
  255. package/dist/config/presets.js +195 -75
  256. package/dist/config/presets.js.map +1 -1
  257. package/dist/config/types.js +6 -2
  258. package/dist/config/types.js.map +1 -1
  259. package/dist/editor/PuckEditor.d.ts +12 -4
  260. package/dist/editor/PuckEditor.d.ts.map +1 -1
  261. package/dist/editor/PuckEditor.js +168 -67
  262. package/dist/editor/PuckEditor.js.map +1 -1
  263. package/dist/editor/PuckEditorImpl.client.d.ts +4 -4
  264. package/dist/editor/PuckEditorImpl.client.d.ts.map +1 -1
  265. package/dist/editor/PuckEditorImpl.client.js +304 -152
  266. package/dist/editor/PuckEditorImpl.client.js.map +1 -1
  267. package/dist/editor/components/DarkModeStyles.js +11 -12
  268. package/dist/editor/components/DarkModeStyles.js.map +1 -1
  269. package/dist/editor/components/HeaderActions.js +308 -64
  270. package/dist/editor/components/HeaderActions.js.map +1 -1
  271. package/dist/editor/components/IframeWrapper.d.ts +1 -1
  272. package/dist/editor/components/IframeWrapper.d.ts.map +1 -1
  273. package/dist/editor/components/IframeWrapper.js +82 -58
  274. package/dist/editor/components/IframeWrapper.js.map +1 -1
  275. package/dist/editor/components/LoadingState.d.ts +1 -1
  276. package/dist/editor/components/LoadingState.d.ts.map +1 -1
  277. package/dist/editor/components/LoadingState.js +17 -3
  278. package/dist/editor/components/LoadingState.js.map +1 -1
  279. package/dist/editor/components/PreviewModal.js +234 -78
  280. package/dist/editor/components/PreviewModal.js.map +1 -1
  281. package/dist/editor/components/PreviewModeToggle.js +43 -15
  282. package/dist/editor/components/PreviewModeToggle.js.map +1 -1
  283. package/dist/editor/components/VersionHistory.js +219 -71
  284. package/dist/editor/components/VersionHistory.js.map +1 -1
  285. package/dist/editor/hooks/useDarkMode.js +36 -23
  286. package/dist/editor/hooks/useDarkMode.js.map +1 -1
  287. package/dist/editor/hooks/useUnsavedChanges.js +8 -8
  288. package/dist/editor/hooks/useUnsavedChanges.js.map +1 -1
  289. package/dist/editor/index.js +5 -6
  290. package/dist/editor/index.js.map +1 -1
  291. package/dist/editor/plugins/VersionHistoryPanel.js +236 -75
  292. package/dist/editor/plugins/VersionHistoryPanel.js.map +1 -1
  293. package/dist/editor/plugins/index.js +4 -4
  294. package/dist/editor/plugins/index.js.map +1 -1
  295. package/dist/editor/plugins/versionHistoryPlugin.js +10 -8
  296. package/dist/editor/plugins/versionHistoryPlugin.js.map +1 -1
  297. package/dist/editor/utils/detectPageTree.js +5 -5
  298. package/dist/editor/utils/detectPageTree.js.map +1 -1
  299. package/dist/editor/utils/index.js +1 -0
  300. package/dist/editor/utils/index.js.map +1 -1
  301. package/dist/editor/utils/injectPageTreeFields.js +13 -9
  302. package/dist/editor/utils/injectPageTreeFields.js.map +1 -1
  303. package/dist/endpoints/ai.js +58 -34
  304. package/dist/endpoints/ai.js.map +1 -1
  305. package/dist/endpoints/context.js +86 -40
  306. package/dist/endpoints/context.js.map +1 -1
  307. package/dist/endpoints/index.js +153 -76
  308. package/dist/endpoints/index.js.map +1 -1
  309. package/dist/endpoints/postcss.d.js +5 -0
  310. package/dist/endpoints/postcss.d.js.map +1 -0
  311. package/dist/endpoints/prompts.js +81 -39
  312. package/dist/endpoints/prompts.js.map +1 -1
  313. package/dist/endpoints/styles.js +34 -36
  314. package/dist/endpoints/styles.js.map +1 -1
  315. package/dist/exports/client.js +2 -2
  316. package/dist/exports/client.js.map +1 -1
  317. package/dist/exports/rsc.js +2 -2
  318. package/dist/exports/rsc.js.map +1 -1
  319. package/dist/fields/AlignmentField.d.ts +1 -1
  320. package/dist/fields/AlignmentField.d.ts.map +1 -1
  321. package/dist/fields/AlignmentField.js +93 -30
  322. package/dist/fields/AlignmentField.js.map +1 -1
  323. package/dist/fields/AnimationField.d.ts +2 -2
  324. package/dist/fields/AnimationField.d.ts.map +1 -1
  325. package/dist/fields/AnimationField.js +558 -84
  326. package/dist/fields/AnimationField.js.map +1 -1
  327. package/dist/fields/BackgroundField.d.ts +2 -2
  328. package/dist/fields/BackgroundField.d.ts.map +1 -1
  329. package/dist/fields/BackgroundField.js +754 -120
  330. package/dist/fields/BackgroundField.js.map +1 -1
  331. package/dist/fields/BorderField.d.ts +2 -2
  332. package/dist/fields/BorderField.d.ts.map +1 -1
  333. package/dist/fields/BorderField.js +275 -73
  334. package/dist/fields/BorderField.js.map +1 -1
  335. package/dist/fields/ColorPickerField.d.ts +2 -2
  336. package/dist/fields/ColorPickerField.d.ts.map +1 -1
  337. package/dist/fields/ColorPickerField.js +210 -68
  338. package/dist/fields/ColorPickerField.js.map +1 -1
  339. package/dist/fields/ContentAlignmentField.d.ts +1 -1
  340. package/dist/fields/ContentAlignmentField.d.ts.map +1 -1
  341. package/dist/fields/ContentAlignmentField.js +161 -75
  342. package/dist/fields/ContentAlignmentField.js.map +1 -1
  343. package/dist/fields/DimensionsField.d.ts +2 -2
  344. package/dist/fields/DimensionsField.d.ts.map +1 -1
  345. package/dist/fields/DimensionsField.js +575 -146
  346. package/dist/fields/DimensionsField.js.map +1 -1
  347. package/dist/fields/FlexAlignmentField.d.ts +2 -2
  348. package/dist/fields/FlexAlignmentField.d.ts.map +1 -1
  349. package/dist/fields/FlexAlignmentField.js +189 -51
  350. package/dist/fields/FlexAlignmentField.js.map +1 -1
  351. package/dist/fields/FolderPickerField.d.ts +8 -1
  352. package/dist/fields/FolderPickerField.d.ts.map +1 -1
  353. package/dist/fields/FolderPickerField.js +288 -75
  354. package/dist/fields/FolderPickerField.js.map +1 -1
  355. package/dist/fields/GradientEditor.d.ts +2 -2
  356. package/dist/fields/GradientEditor.d.ts.map +1 -1
  357. package/dist/fields/GradientEditor.js +462 -86
  358. package/dist/fields/GradientEditor.js.map +1 -1
  359. package/dist/fields/LockedField.d.ts +15 -2
  360. package/dist/fields/LockedField.d.ts.map +1 -1
  361. package/dist/fields/LockedField.js +180 -49
  362. package/dist/fields/LockedField.js.map +1 -1
  363. package/dist/fields/MarginField.d.ts +2 -2
  364. package/dist/fields/MarginField.d.ts.map +1 -1
  365. package/dist/fields/MarginField.js +144 -46
  366. package/dist/fields/MarginField.js.map +1 -1
  367. package/dist/fields/MediaField.d.ts +1 -1
  368. package/dist/fields/MediaField.d.ts.map +1 -1
  369. package/dist/fields/MediaField.js +688 -186
  370. package/dist/fields/MediaField.js.map +1 -1
  371. package/dist/fields/PaddingField.d.ts +2 -2
  372. package/dist/fields/PaddingField.d.ts.map +1 -1
  373. package/dist/fields/PaddingField.js +144 -46
  374. package/dist/fields/PaddingField.js.map +1 -1
  375. package/dist/fields/PageSegmentField.d.ts +15 -2
  376. package/dist/fields/PageSegmentField.d.ts.map +1 -1
  377. package/dist/fields/PageSegmentField.js +156 -54
  378. package/dist/fields/PageSegmentField.js.map +1 -1
  379. package/dist/fields/ResetField.d.ts +1 -1
  380. package/dist/fields/ResetField.d.ts.map +1 -1
  381. package/dist/fields/ResetField.js +59 -31
  382. package/dist/fields/ResetField.js.map +1 -1
  383. package/dist/fields/ResponsiveField.d.ts +1 -1
  384. package/dist/fields/ResponsiveField.d.ts.map +1 -1
  385. package/dist/fields/ResponsiveField.js +233 -90
  386. package/dist/fields/ResponsiveField.js.map +1 -1
  387. package/dist/fields/ResponsiveVisibilityField.d.ts +2 -2
  388. package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -1
  389. package/dist/fields/ResponsiveVisibilityField.js +119 -36
  390. package/dist/fields/ResponsiveVisibilityField.js.map +1 -1
  391. package/dist/fields/SizeField.d.ts +3 -3
  392. package/dist/fields/SizeField.d.ts.map +1 -1
  393. package/dist/fields/SizeField.js +226 -52
  394. package/dist/fields/SizeField.js.map +1 -1
  395. package/dist/fields/SlugPreviewField.d.ts +8 -1
  396. package/dist/fields/SlugPreviewField.d.ts.map +1 -1
  397. package/dist/fields/SlugPreviewField.js +65 -16
  398. package/dist/fields/SlugPreviewField.js.map +1 -1
  399. package/dist/fields/TemplateField.d.ts +1 -1
  400. package/dist/fields/TemplateField.d.ts.map +1 -1
  401. package/dist/fields/TemplateField.js +362 -120
  402. package/dist/fields/TemplateField.js.map +1 -1
  403. package/dist/fields/TransformField.d.ts +2 -2
  404. package/dist/fields/TransformField.d.ts.map +1 -1
  405. package/dist/fields/TransformField.js +517 -81
  406. package/dist/fields/TransformField.js.map +1 -1
  407. package/dist/fields/VerticalAlignmentField.d.ts +1 -1
  408. package/dist/fields/VerticalAlignmentField.d.ts.map +1 -1
  409. package/dist/fields/VerticalAlignmentField.js +93 -30
  410. package/dist/fields/VerticalAlignmentField.js.map +1 -1
  411. package/dist/fields/WidthField.d.ts +2 -2
  412. package/dist/fields/WidthField.d.ts.map +1 -1
  413. package/dist/fields/WidthField.js +278 -81
  414. package/dist/fields/WidthField.js.map +1 -1
  415. package/dist/fields/index.d.ts +41 -41
  416. package/dist/fields/index.d.ts.map +1 -1
  417. package/dist/fields/index.js +37 -43
  418. package/dist/fields/index.js.map +1 -1
  419. package/dist/fields/richtext/controls/ColorPickerControl.d.ts +13 -2
  420. package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +1 -1
  421. package/dist/fields/richtext/controls/ColorPickerControl.js +212 -47
  422. package/dist/fields/richtext/controls/ColorPickerControl.js.map +1 -1
  423. package/dist/fields/richtext/controls/DropdownPortal.d.ts +2 -2
  424. package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +1 -1
  425. package/dist/fields/richtext/controls/DropdownPortal.js +36 -4
  426. package/dist/fields/richtext/controls/DropdownPortal.js.map +1 -1
  427. package/dist/fields/richtext/controls/FontSizeControl.d.ts +9 -1
  428. package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +1 -1
  429. package/dist/fields/richtext/controls/FontSizeControl.js +109 -24
  430. package/dist/fields/richtext/controls/FontSizeControl.js.map +1 -1
  431. package/dist/fields/richtext/controls/HighlightControl.d.ts +12 -1
  432. package/dist/fields/richtext/controls/HighlightControl.d.ts.map +1 -1
  433. package/dist/fields/richtext/controls/HighlightControl.js +54 -17
  434. package/dist/fields/richtext/controls/HighlightControl.js.map +1 -1
  435. package/dist/fields/richtext/controls/index.d.ts +5 -5
  436. package/dist/fields/richtext/controls/index.d.ts.map +1 -1
  437. package/dist/fields/richtext/controls/index.js +8 -11
  438. package/dist/fields/richtext/controls/index.js.map +1 -1
  439. package/dist/fields/richtext/controls/shared.js +108 -63
  440. package/dist/fields/richtext/controls/shared.js.map +1 -1
  441. package/dist/fields/richtext/createRichTextField.d.ts +18 -4
  442. package/dist/fields/richtext/createRichTextField.d.ts.map +1 -1
  443. package/dist/fields/richtext/createRichTextField.js +113 -26
  444. package/dist/fields/richtext/createRichTextField.js.map +1 -1
  445. package/dist/fields/richtext/extensions/FontSize.js +26 -20
  446. package/dist/fields/richtext/extensions/FontSize.js.map +1 -1
  447. package/dist/fields/richtext/extensions/index.d.ts +1 -1
  448. package/dist/fields/richtext/extensions/index.d.ts.map +1 -1
  449. package/dist/fields/richtext/extensions/index.js +2 -2
  450. package/dist/fields/richtext/extensions/index.js.map +1 -1
  451. package/dist/fields/richtext/index.d.ts +6 -6
  452. package/dist/fields/richtext/index.d.ts.map +1 -1
  453. package/dist/fields/richtext/index.js +8 -8
  454. package/dist/fields/richtext/index.js.map +1 -1
  455. package/dist/fields/shared.d.ts +1 -1
  456. package/dist/fields/shared.d.ts.map +1 -1
  457. package/dist/fields/shared.js +915 -478
  458. package/dist/fields/shared.js.map +1 -1
  459. package/dist/hooks/index.d.ts +2 -2
  460. package/dist/hooks/index.d.ts.map +1 -1
  461. package/dist/hooks/index.js +3 -3
  462. package/dist/hooks/index.js.map +1 -1
  463. package/dist/hooks/useResponsiveStyles.d.ts +1 -1
  464. package/dist/hooks/useResponsiveStyles.d.ts.map +1 -1
  465. package/dist/hooks/useResponsiveStyles.js +36 -32
  466. package/dist/hooks/useResponsiveStyles.js.map +1 -1
  467. package/dist/hooks/useScrollAnimation.js +26 -24
  468. package/dist/hooks/useScrollAnimation.js.map +1 -1
  469. package/dist/index.d.ts +4 -4
  470. package/dist/index.d.ts.map +1 -1
  471. package/dist/index.js +5 -5
  472. package/dist/index.js.map +1 -1
  473. package/dist/layouts/LayoutWrapper.d.ts +3 -3
  474. package/dist/layouts/LayoutWrapper.d.ts.map +1 -1
  475. package/dist/layouts/LayoutWrapper.js +115 -51
  476. package/dist/layouts/LayoutWrapper.js.map +1 -1
  477. package/dist/layouts/defaults.d.ts +1 -1
  478. package/dist/layouts/defaults.d.ts.map +1 -1
  479. package/dist/layouts/defaults.js +23 -31
  480. package/dist/layouts/defaults.js.map +1 -1
  481. package/dist/layouts/index.d.ts +4 -4
  482. package/dist/layouts/index.d.ts.map +1 -1
  483. package/dist/layouts/index.js +5 -4
  484. package/dist/layouts/index.js.map +1 -1
  485. package/dist/layouts/types.js +4 -2
  486. package/dist/layouts/types.js.map +1 -1
  487. package/dist/layouts/utils.d.ts +1 -1
  488. package/dist/layouts/utils.d.ts.map +1 -1
  489. package/dist/layouts/utils.js +32 -40
  490. package/dist/layouts/utils.js.map +1 -1
  491. package/dist/next/index.js +31 -34
  492. package/dist/next/index.js.map +1 -1
  493. package/dist/plugin/collections/Pages.d.ts +2 -2
  494. package/dist/plugin/collections/Pages.d.ts.map +1 -1
  495. package/dist/plugin/collections/Pages.js +46 -43
  496. package/dist/plugin/collections/Pages.js.map +1 -1
  497. package/dist/plugin/fields/index.d.ts +3 -3
  498. package/dist/plugin/fields/index.d.ts.map +1 -1
  499. package/dist/plugin/fields/index.js +100 -78
  500. package/dist/plugin/fields/index.js.map +1 -1
  501. package/dist/plugin/fields/types.d.ts +1 -1
  502. package/dist/plugin/fields/types.d.ts.map +1 -1
  503. package/dist/plugin/fields/types.js +26 -2
  504. package/dist/plugin/fields/types.js.map +1 -1
  505. package/dist/plugin/hooks/index.d.ts +1 -1
  506. package/dist/plugin/hooks/index.d.ts.map +1 -1
  507. package/dist/plugin/hooks/index.js +2 -2
  508. package/dist/plugin/hooks/index.js.map +1 -1
  509. package/dist/plugin/hooks/isHomepageUnique.js +28 -19
  510. package/dist/plugin/hooks/isHomepageUnique.js.map +1 -1
  511. package/dist/plugin/index.d.ts +8 -8
  512. package/dist/plugin/index.d.ts.map +1 -1
  513. package/dist/plugin/index.js +192 -188
  514. package/dist/plugin/index.js.map +1 -1
  515. package/dist/render/HybridPageRenderer.d.ts +2 -2
  516. package/dist/render/HybridPageRenderer.d.ts.map +1 -1
  517. package/dist/render/HybridPageRenderer.js +58 -10
  518. package/dist/render/HybridPageRenderer.js.map +1 -1
  519. package/dist/render/PageRenderer.d.ts +2 -2
  520. package/dist/render/PageRenderer.d.ts.map +1 -1
  521. package/dist/render/PageRenderer.js +31 -14
  522. package/dist/render/PageRenderer.js.map +1 -1
  523. package/dist/render/PuckEditor.client.d.ts +1 -1
  524. package/dist/render/PuckEditor.client.d.ts.map +1 -1
  525. package/dist/render/PuckEditor.client.js +33 -16
  526. package/dist/render/PuckEditor.client.js.map +1 -1
  527. package/dist/render/index.d.ts +5 -5
  528. package/dist/render/index.d.ts.map +1 -1
  529. package/dist/render/index.js +5 -6
  530. package/dist/render/index.js.map +1 -1
  531. package/dist/styles/puck-dark-mode.css +101 -0
  532. package/dist/theme/context.d.ts +2 -2
  533. package/dist/theme/context.d.ts.map +1 -1
  534. package/dist/theme/context.js +21 -18
  535. package/dist/theme/context.js.map +1 -1
  536. package/dist/theme/defaults.d.ts +1 -1
  537. package/dist/theme/defaults.d.ts.map +1 -1
  538. package/dist/theme/defaults.js +83 -37
  539. package/dist/theme/defaults.js.map +1 -1
  540. package/dist/theme/example.d.ts +1 -1
  541. package/dist/theme/example.d.ts.map +1 -1
  542. package/dist/theme/example.js +68 -30
  543. package/dist/theme/example.js.map +1 -1
  544. package/dist/theme/index.d.ts +5 -5
  545. package/dist/theme/index.d.ts.map +1 -1
  546. package/dist/theme/index.js +6 -5
  547. package/dist/theme/index.js.map +1 -1
  548. package/dist/theme/types.js +6 -2
  549. package/dist/theme/types.js.map +1 -1
  550. package/dist/theme/utils.d.ts +1 -1
  551. package/dist/theme/utils.d.ts.map +1 -1
  552. package/dist/theme/utils.js +24 -25
  553. package/dist/theme/utils.js.map +1 -1
  554. package/dist/types/index.d.ts +42 -6
  555. package/dist/types/index.d.ts.map +1 -1
  556. package/dist/types/index.js +3 -1
  557. package/dist/types/index.js.map +1 -1
  558. package/dist/utils/index.d.ts +2 -2
  559. package/dist/utils/index.d.ts.map +1 -1
  560. package/dist/utils/index.js +13 -22
  561. package/dist/utils/index.js.map +1 -1
  562. package/dist/utils/migration.d.ts +1 -1
  563. package/dist/utils/migration.d.ts.map +1 -1
  564. package/dist/utils/migration.js +43 -49
  565. package/dist/utils/migration.js.map +1 -1
  566. package/dist/utils/validation.d.ts +1 -1
  567. package/dist/utils/validation.d.ts.map +1 -1
  568. package/dist/utils/validation.js +36 -43
  569. package/dist/utils/validation.js.map +1 -1
  570. package/dist/version.d.ts +1 -1
  571. package/dist/version.js +2 -1
  572. package/dist/version.js.map +1 -1
  573. package/dist/views/PuckConfigContext.d.ts +1 -1
  574. package/dist/views/PuckConfigContext.d.ts.map +1 -1
  575. package/dist/views/PuckConfigContext.js +25 -10
  576. package/dist/views/PuckConfigContext.js.map +1 -1
  577. package/dist/views/PuckEditorView.d.ts +1 -1
  578. package/dist/views/PuckEditorView.d.ts.map +1 -1
  579. package/dist/views/PuckEditorView.js +137 -41
  580. package/dist/views/PuckEditorView.js.map +1 -1
  581. package/dist/views/index.js +2 -2
  582. package/dist/views/index.js.map +1 -1
  583. package/package.json +62 -42
@@ -1 +1 @@
1
- {"version":3,"file":"Heading.js","sourceRoot":"","sources":["../../../src/components/typography/Heading.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/components/typography/Heading.tsx"],"sourcesContent":["/**\n * Heading Component - Puck Configuration\n *\n * H1-H6 headings with customizable styling.\n * Supports custom margin for spacing control.\n */\n\nimport React, { createElement } from 'react'\nimport type { ComponentConfig } from '@puckeditor/core'\nimport {\n headingLevelField,\n headingLevelMap,\n alignmentMap,\n cn,\n marginValueToCSS,\n paddingValueToCSS,\n colorValueToCSS,\n dimensionsValueToCSS,\n type PaddingValue,\n type ColorValue,\n type DimensionsValue,\n type AnimationValue,\n} from '../../fields/shared.js'\nimport { AnimatedWrapper } from '../AnimatedWrapper.js'\nimport { createMarginField } from '../../fields/MarginField.js'\nimport { createPaddingField } from '../../fields/PaddingField.js'\nimport { createColorPickerField } from '../../fields/ColorPickerField.js'\nimport { createAlignmentField, type Alignment } from '../../fields/AlignmentField.js'\nimport { createDimensionsField } from '../../fields/DimensionsField.js'\nimport { createAnimationField } from '../../fields/AnimationField.js'\nimport { createResetField } from '../../fields/ResetField.js'\n\nexport interface HeadingProps {\n text: string\n level: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'\n alignment: Alignment | null\n textColor: ColorValue | null\n dimensions: DimensionsValue | null\n animation: AnimationValue | null\n margin: PaddingValue | null\n customPadding: PaddingValue | null\n}\n\nconst defaultProps: HeadingProps = {\n text: 'Heading Text',\n level: 'h2',\n alignment: null,\n textColor: null,\n dimensions: null,\n animation: null,\n margin: null,\n customPadding: null,\n}\n\nexport const HeadingConfig: ComponentConfig = {\n label: 'Heading',\n fields: {\n _reset: createResetField({ defaultProps }),\n text: {\n type: 'text',\n label: 'Text',\n },\n level: headingLevelField,\n textColor: createColorPickerField({ label: 'Text Color' }),\n dimensions: createDimensionsField({ label: 'Dimensions' }),\n alignment: createAlignmentField({ label: 'Alignment' }),\n animation: createAnimationField({ label: 'Animation' }),\n // Spacing (grouped at bottom)\n margin: createMarginField({ label: 'Margin' }),\n customPadding: createPaddingField({ label: 'Padding' }),\n },\n defaultProps,\n render: ({ text, level, alignment, textColor, dimensions, animation, margin, customPadding }) => {\n const tag = level || 'h2'\n const alignmentValue = alignment ?? 'left'\n const classes = cn(\n headingLevelMap[level] || headingLevelMap.h2,\n alignmentMap[alignmentValue] || alignmentMap.left\n )\n\n const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined\n\n const style: React.CSSProperties = {\n ...dimensionsStyles,\n }\n const marginCSS = marginValueToCSS(margin)\n if (marginCSS) {\n style.margin = marginCSS\n }\n const paddingCSS = paddingValueToCSS(customPadding)\n if (paddingCSS) {\n style.padding = paddingCSS\n }\n // Apply text color from ColorValue\n const colorCSS = colorValueToCSS(textColor)\n if (colorCSS) {\n style.color = colorCSS\n }\n\n const headingElement = createElement(tag, { className: classes, style: Object.keys(style).length > 0 ? style : undefined }, text)\n\n return (\n <AnimatedWrapper animation={animation}>\n {headingElement}\n </AnimatedWrapper>\n )\n },\n}\n"],"names":["React","createElement","headingLevelField","headingLevelMap","alignmentMap","cn","marginValueToCSS","paddingValueToCSS","colorValueToCSS","dimensionsValueToCSS","AnimatedWrapper","createMarginField","createPaddingField","createColorPickerField","createAlignmentField","createDimensionsField","createAnimationField","createResetField","defaultProps","text","level","alignment","textColor","dimensions","animation","margin","customPadding","HeadingConfig","label","fields","_reset","type","render","tag","alignmentValue","classes","h2","left","dimensionsStyles","undefined","style","marginCSS","paddingCSS","padding","colorCSS","color","headingElement","className","Object","keys","length"],"mappings":";AAAA;;;;;CAKC,GAED,OAAOA,SAASC,aAAa,QAAQ,QAAO;AAE5C,SACEC,iBAAiB,EACjBC,eAAe,EACfC,YAAY,EACZC,EAAE,EACFC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,EACfC,oBAAoB,QAKf,yBAAwB;AAC/B,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,kBAAkB,QAAQ,+BAA8B;AACjE,SAASC,sBAAsB,QAAQ,mCAAkC;AACzE,SAASC,oBAAoB,QAAwB,iCAAgC;AACrF,SAASC,qBAAqB,QAAQ,kCAAiC;AACvE,SAASC,oBAAoB,QAAQ,iCAAgC;AACrE,SAASC,gBAAgB,QAAQ,6BAA4B;AAa7D,MAAMC,eAA6B;IACjCC,MAAM;IACNC,OAAO;IACPC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,eAAe;AACjB;AAEA,OAAO,MAAMC,gBAAiC;IAC5CC,OAAO;IACPC,QAAQ;QACNC,QAAQb,iBAAiB;YAAEC;QAAa;QACxCC,MAAM;YACJY,MAAM;YACNH,OAAO;QACT;QACAR,OAAOlB;QACPoB,WAAWT,uBAAuB;YAAEe,OAAO;QAAa;QACxDL,YAAYR,sBAAsB;YAAEa,OAAO;QAAa;QACxDP,WAAWP,qBAAqB;YAAEc,OAAO;QAAY;QACrDJ,WAAWR,qBAAqB;YAAEY,OAAO;QAAY;QACrD,8BAA8B;QAC9BH,QAAQd,kBAAkB;YAAEiB,OAAO;QAAS;QAC5CF,eAAed,mBAAmB;YAAEgB,OAAO;QAAU;IACvD;IACAV;IACAc,QAAQ,CAAC,EAAEb,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,aAAa,EAAE;QAC1F,MAAMO,MAAMb,SAAS;QACrB,MAAMc,iBAAiBb,aAAa;QACpC,MAAMc,UAAU9B,GACdF,eAAe,CAACiB,MAAM,IAAIjB,gBAAgBiC,EAAE,EAC5ChC,YAAY,CAAC8B,eAAe,IAAI9B,aAAaiC,IAAI;QAGnD,MAAMC,mBAAmBf,aAAad,qBAAqBc,cAAcgB;QAEzE,MAAMC,QAA6B;YACjC,GAAGF,gBAAgB;QACrB;QACA,MAAMG,YAAYnC,iBAAiBmB;QACnC,IAAIgB,WAAW;YACbD,MAAMf,MAAM,GAAGgB;QACjB;QACA,MAAMC,aAAanC,kBAAkBmB;QACrC,IAAIgB,YAAY;YACdF,MAAMG,OAAO,GAAGD;QAClB;QACA,mCAAmC;QACnC,MAAME,WAAWpC,gBAAgBc;QACjC,IAAIsB,UAAU;YACZJ,MAAMK,KAAK,GAAGD;QAChB;QAEA,MAAME,+BAAiB7C,cAAcgC,KAAK;YAAEc,WAAWZ;YAASK,OAAOQ,OAAOC,IAAI,CAACT,OAAOU,MAAM,GAAG,IAAIV,QAAQD;QAAU,GAAGpB;QAE5H,qBACE,KAACT;YAAgBc,WAAWA;sBACzBsB;;IAGP;AACF,EAAC"}
@@ -5,8 +5,8 @@
5
5
  * This version excludes field definitions for server-side rendering.
6
6
  */
7
7
  import type { ComponentConfig } from '@puckeditor/core';
8
- import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared';
9
- import type { Alignment } from '../../fields/AlignmentField';
8
+ import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared.js';
9
+ import type { Alignment } from '../../fields/AlignmentField.js';
10
10
  export interface HeadingProps {
11
11
  text: string;
12
12
  level: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
@@ -1 +1 @@
1
- {"version":3,"file":"Heading.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Heading.server.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAE5D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9C,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,aAAa,EAAE,eAAe,CAAC,YAAY,CAsCvD,CAAA"}
1
+ {"version":3,"file":"Heading.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Heading.server.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAE/D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IAC9C,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,aAAa,EAAE,eAAe,CAAC,YAAY,CAsCvD,CAAA"}
@@ -4,10 +4,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
4
4
  *
5
5
  * H1-H6 headings with customizable styling.
6
6
  * This version excludes field definitions for server-side rendering.
7
- */
8
- import { createElement } from 'react';
9
- import { headingLevelMap, alignmentMap, cn, marginValueToCSS, paddingValueToCSS, colorValueToCSS, dimensionsValueToCSS, } from '../../fields/shared';
10
- import { AnimatedWrapper } from '../AnimatedWrapper';
7
+ */ import { createElement } from 'react';
8
+ import { headingLevelMap, alignmentMap, cn, marginValueToCSS, paddingValueToCSS, colorValueToCSS, dimensionsValueToCSS } from '../../fields/shared.js';
9
+ import { AnimatedWrapper } from '../AnimatedWrapper.js';
11
10
  const defaultProps = {
12
11
  text: 'Heading Text',
13
12
  level: 'h2',
@@ -16,18 +15,18 @@ const defaultProps = {
16
15
  dimensions: null,
17
16
  animation: null,
18
17
  margin: null,
19
- customPadding: null,
18
+ customPadding: null
20
19
  };
21
20
  export const HeadingConfig = {
22
21
  label: 'Heading',
23
22
  defaultProps,
24
- render: ({ text, level, alignment, textColor, dimensions, animation, margin, customPadding }) => {
23
+ render: ({ text, level, alignment, textColor, dimensions, animation, margin, customPadding })=>{
25
24
  const tag = level || 'h2';
26
25
  const alignmentValue = alignment ?? 'left';
27
26
  const classes = cn(headingLevelMap[level] || headingLevelMap.h2, alignmentMap[alignmentValue] || alignmentMap.left);
28
27
  const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined;
29
28
  const style = {
30
- ...dimensionsStyles,
29
+ ...dimensionsStyles
31
30
  };
32
31
  const marginCSS = marginValueToCSS(margin);
33
32
  if (marginCSS) {
@@ -42,8 +41,15 @@ export const HeadingConfig = {
42
41
  if (colorCSS) {
43
42
  style.color = colorCSS;
44
43
  }
45
- const headingElement = createElement(tag, { className: classes, style: Object.keys(style).length > 0 ? style : undefined }, text);
46
- return (_jsx(AnimatedWrapper, { animation: animation, children: headingElement }));
47
- },
44
+ const headingElement = /*#__PURE__*/ createElement(tag, {
45
+ className: classes,
46
+ style: Object.keys(style).length > 0 ? style : undefined
47
+ }, text);
48
+ return /*#__PURE__*/ _jsx(AnimatedWrapper, {
49
+ animation: animation,
50
+ children: headingElement
51
+ });
52
+ }
48
53
  };
54
+
49
55
  //# sourceMappingURL=Heading.server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Heading.server.js","sourceRoot":"","sources":["../../../src/components/typography/Heading.server.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,EACL,eAAe,EACf,YAAY,EACZ,EAAE,EACF,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,GAKrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAcpD,MAAM,YAAY,GAAiB;IACjC,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,IAAI;CACpB,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAkC;IAC1D,KAAK,EAAE,SAAS;IAChB,YAAY;IACZ,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE;QAC9F,MAAM,GAAG,GAAG,KAAK,IAAI,IAAI,CAAA;QACzB,MAAM,cAAc,GAAG,SAAS,IAAI,MAAM,CAAA;QAC1C,MAAM,OAAO,GAAG,EAAE,CAChB,eAAe,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,EAAE,EAC5C,YAAY,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,IAAI,CAClD,CAAA;QAED,MAAM,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAElF,MAAM,KAAK,GAAwB;YACjC,GAAG,gBAAgB;SACpB,CAAA;QACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,CAAC,MAAM,GAAG,SAAS,CAAA;QAC1B,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;QACnD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,CAAC,OAAO,GAAG,UAAU,CAAA;QAC5B,CAAC;QACD,mCAAmC;QACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;QAC3C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAA;QACxB,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAA;QAEjI,OAAO,CACL,KAAC,eAAe,IAAC,SAAS,EAAE,SAAS,YAClC,cAAc,GACC,CACnB,CAAA;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"sources":["../../../src/components/typography/Heading.server.tsx"],"sourcesContent":["/**\n * Heading Component - Server-Safe Puck Configuration\n *\n * H1-H6 headings with customizable styling.\n * This version excludes field definitions for server-side rendering.\n */\n\nimport { createElement } from 'react'\nimport type { ComponentConfig } from '@puckeditor/core'\nimport {\n headingLevelMap,\n alignmentMap,\n cn,\n marginValueToCSS,\n paddingValueToCSS,\n colorValueToCSS,\n dimensionsValueToCSS,\n type PaddingValue,\n type ColorValue,\n type DimensionsValue,\n type AnimationValue,\n} from '../../fields/shared.js'\nimport { AnimatedWrapper } from '../AnimatedWrapper.js'\nimport type { Alignment } from '../../fields/AlignmentField.js'\n\nexport interface HeadingProps {\n text: string\n level: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'\n alignment: Alignment | null\n textColor: ColorValue | null\n dimensions: DimensionsValue | null\n animation: AnimationValue | null\n margin: PaddingValue | null\n customPadding: PaddingValue | null\n}\n\nconst defaultProps: HeadingProps = {\n text: 'Heading Text',\n level: 'h2',\n alignment: null,\n textColor: null,\n dimensions: null,\n animation: null,\n margin: null,\n customPadding: null,\n}\n\nexport const HeadingConfig: ComponentConfig<HeadingProps> = {\n label: 'Heading',\n defaultProps,\n render: ({ text, level, alignment, textColor, dimensions, animation, margin, customPadding }) => {\n const tag = level || 'h2'\n const alignmentValue = alignment ?? 'left'\n const classes = cn(\n headingLevelMap[level] || headingLevelMap.h2,\n alignmentMap[alignmentValue] || alignmentMap.left\n )\n\n const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined\n\n const style: React.CSSProperties = {\n ...dimensionsStyles,\n }\n const marginCSS = marginValueToCSS(margin)\n if (marginCSS) {\n style.margin = marginCSS\n }\n const paddingCSS = paddingValueToCSS(customPadding)\n if (paddingCSS) {\n style.padding = paddingCSS\n }\n // Apply text color from ColorValue\n const colorCSS = colorValueToCSS(textColor)\n if (colorCSS) {\n style.color = colorCSS\n }\n\n const headingElement = createElement(tag, { className: classes, style: Object.keys(style).length > 0 ? style : undefined }, text)\n\n return (\n <AnimatedWrapper animation={animation}>\n {headingElement}\n </AnimatedWrapper>\n )\n },\n}\n"],"names":["createElement","headingLevelMap","alignmentMap","cn","marginValueToCSS","paddingValueToCSS","colorValueToCSS","dimensionsValueToCSS","AnimatedWrapper","defaultProps","text","level","alignment","textColor","dimensions","animation","margin","customPadding","HeadingConfig","label","render","tag","alignmentValue","classes","h2","left","dimensionsStyles","undefined","style","marginCSS","paddingCSS","padding","colorCSS","color","headingElement","className","Object","keys","length"],"mappings":";AAAA;;;;;CAKC,GAED,SAASA,aAAa,QAAQ,QAAO;AAErC,SACEC,eAAe,EACfC,YAAY,EACZC,EAAE,EACFC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,EACfC,oBAAoB,QAKf,yBAAwB;AAC/B,SAASC,eAAe,QAAQ,wBAAuB;AAcvD,MAAMC,eAA6B;IACjCC,MAAM;IACNC,OAAO;IACPC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,eAAe;AACjB;AAEA,OAAO,MAAMC,gBAA+C;IAC1DC,OAAO;IACPV;IACAW,QAAQ,CAAC,EAAEV,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,aAAa,EAAE;QAC1F,MAAMI,MAAMV,SAAS;QACrB,MAAMW,iBAAiBV,aAAa;QACpC,MAAMW,UAAUpB,GACdF,eAAe,CAACU,MAAM,IAAIV,gBAAgBuB,EAAE,EAC5CtB,YAAY,CAACoB,eAAe,IAAIpB,aAAauB,IAAI;QAGnD,MAAMC,mBAAmBZ,aAAaP,qBAAqBO,cAAca;QAEzE,MAAMC,QAA6B;YACjC,GAAGF,gBAAgB;QACrB;QACA,MAAMG,YAAYzB,iBAAiBY;QACnC,IAAIa,WAAW;YACbD,MAAMZ,MAAM,GAAGa;QACjB;QACA,MAAMC,aAAazB,kBAAkBY;QACrC,IAAIa,YAAY;YACdF,MAAMG,OAAO,GAAGD;QAClB;QACA,mCAAmC;QACnC,MAAME,WAAW1B,gBAAgBO;QACjC,IAAImB,UAAU;YACZJ,MAAMK,KAAK,GAAGD;QAChB;QAEA,MAAME,+BAAiBlC,cAAcqB,KAAK;YAAEc,WAAWZ;YAASK,OAAOQ,OAAOC,IAAI,CAACT,OAAOU,MAAM,GAAG,IAAIV,QAAQD;QAAU,GAAGjB;QAE5H,qBACE,KAACF;YAAgBO,WAAWA;sBACzBmB;;IAGP;AACF,EAAC"}
@@ -12,7 +12,7 @@
12
12
  */
13
13
  import React from 'react';
14
14
  import type { ComponentConfig } from '@puckeditor/core';
15
- import { type PaddingValue, type DimensionsValue } from '../../fields/shared';
15
+ import { type PaddingValue, type DimensionsValue } from '../../fields/shared.js';
16
16
  export interface RichTextEditorProps {
17
17
  content: React.ReactNode;
18
18
  dimensions: DimensionsValue | null;
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.editor.d.ts","sourceRoot":"","sources":["../../../src/components/typography/RichText.editor.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAA;AAO5B,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;IAClC,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AA0DD,eAAO,MAAM,oBAAoB,EAAE,eAsBlC,CAAA"}
1
+ {"version":3,"file":"RichText.editor.d.ts","sourceRoot":"","sources":["../../../src/components/typography/RichText.editor.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAA;AAO/B,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;IAClC,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AA0DD,eAAO,MAAM,oBAAoB,EAAE,eAsBlC,CAAA"}
@@ -11,28 +11,27 @@ import { jsx as _jsx } from "react/jsx-runtime";
11
11
  *
12
12
  * Supports contentEditable for inline canvas editing.
13
13
  * Requires @tailwindcss/typography - uses the `prose` class for styling.
14
- */
15
- import { useMemo } from 'react';
16
- import { marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS, } from '../../fields/shared';
17
- import { createMarginField } from '../../fields/MarginField';
18
- import { createPaddingField } from '../../fields/PaddingField';
19
- import { createDimensionsField } from '../../fields/DimensionsField';
20
- import { createResetField } from '../../fields/ResetField';
21
- import { createRichTextField } from '../../fields/richtext';
14
+ */ import React, { useMemo } from 'react';
15
+ import { marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS } from '../../fields/shared.js';
16
+ import { createMarginField } from '../../fields/MarginField.js';
17
+ import { createPaddingField } from '../../fields/PaddingField.js';
18
+ import { createDimensionsField } from '../../fields/DimensionsField.js';
19
+ import { createResetField } from '../../fields/ResetField.js';
20
+ import { createRichTextField } from '../../fields/richtext/index.js';
22
21
  const defaultProps = {
23
22
  content: '<p>Click to start editing...</p>',
24
23
  dimensions: null,
25
24
  margin: null,
26
- customPadding: null,
25
+ customPadding: null
27
26
  };
28
27
  // =============================================================================
29
28
  // Render Component for Editor Config
30
29
  // =============================================================================
31
30
  // Uses Puck's native richtext field which supports inline contentEditable editing.
32
31
  // Content is rendered directly as {content} - Puck handles the rest.
33
- function RichTextRender({ content, dimensions, margin, customPadding, }) {
32
+ function RichTextRender({ content, dimensions, margin, customPadding }) {
34
33
  // Build styles
35
- const style = useMemo(() => {
34
+ const style = useMemo(()=>{
36
35
  const s = {};
37
36
  const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined;
38
37
  if (dimensionsStyles) {
@@ -47,11 +46,22 @@ function RichTextRender({ content, dimensions, margin, customPadding, }) {
47
46
  s.padding = customPaddingCSS;
48
47
  }
49
48
  return Object.keys(s).length > 0 ? s : undefined;
50
- }, [dimensions, margin, customPadding]);
49
+ }, [
50
+ dimensions,
51
+ margin,
52
+ customPadding
53
+ ]);
51
54
  // Render content directly - Puck's richtext field handles both:
52
55
  // - Editor: Returns React elements for contentEditable inline editing
53
56
  // - Frontend <Render>: Returns HTML string which React renders
54
- return (_jsx("section", { className: "relative overflow-hidden", style: style, children: _jsx("div", { className: "prose dark:prose-invert max-w-none", children: content }) }));
57
+ return /*#__PURE__*/ _jsx("section", {
58
+ className: "relative overflow-hidden",
59
+ style: style,
60
+ children: /*#__PURE__*/ _jsx("div", {
61
+ className: "prose dark:prose-invert max-w-none",
62
+ children: content
63
+ })
64
+ });
55
65
  }
56
66
  // =============================================================================
57
67
  // Puck Component Config
@@ -59,16 +69,31 @@ function RichTextRender({ content, dimensions, margin, customPadding, }) {
59
69
  export const RichTextEditorConfig = {
60
70
  label: 'Rich Text',
61
71
  fields: {
62
- _reset: createResetField({ defaultProps }),
72
+ _reset: createResetField({
73
+ defaultProps
74
+ }),
63
75
  content: createRichTextField({
64
76
  label: 'Content',
65
- contentEditable: true, // Enable inline canvas editing
77
+ contentEditable: true
78
+ }),
79
+ dimensions: createDimensionsField({
80
+ label: 'Dimensions'
81
+ }),
82
+ margin: createMarginField({
83
+ label: 'Margin'
66
84
  }),
67
- dimensions: createDimensionsField({ label: 'Dimensions' }),
68
- margin: createMarginField({ label: 'Margin' }),
69
- customPadding: createPaddingField({ label: 'Padding' }),
85
+ customPadding: createPaddingField({
86
+ label: 'Padding'
87
+ })
70
88
  },
71
89
  defaultProps,
72
- render: (props) => (_jsx(RichTextRender, { content: props.content, dimensions: props.dimensions, margin: props.margin, customPadding: props.customPadding, id: props.id })),
90
+ render: (props)=>/*#__PURE__*/ _jsx(RichTextRender, {
91
+ content: props.content,
92
+ dimensions: props.dimensions,
93
+ margin: props.margin,
94
+ customPadding: props.customPadding,
95
+ id: props.id
96
+ })
73
97
  };
98
+
74
99
  //# sourceMappingURL=RichText.editor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.editor.js","sourceRoot":"","sources":["../../../src/components/typography/RichText.editor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/components/typography/RichText.editor.tsx"],"sourcesContent":["'use client'\n\n/**\n * RichText Component - Puck Editor Configuration\n *\n * Uses Puck's native richtext field with custom extensions for:\n * - Text colors with opacity (RGBA)\n * - Highlight with multicolor support\n * - Font sizes (presets + custom)\n * - Superscript and subscript\n *\n * Supports contentEditable for inline canvas editing.\n * Requires @tailwindcss/typography - uses the `prose` class for styling.\n */\n\nimport React, { useMemo } from 'react'\nimport type { ComponentConfig } from '@puckeditor/core'\nimport {\n marginValueToCSS,\n paddingValueToCSS,\n dimensionsValueToCSS,\n type PaddingValue,\n type DimensionsValue,\n} from '../../fields/shared.js'\nimport { createMarginField } from '../../fields/MarginField.js'\nimport { createPaddingField } from '../../fields/PaddingField.js'\nimport { createDimensionsField } from '../../fields/DimensionsField.js'\nimport { createResetField } from '../../fields/ResetField.js'\nimport { createRichTextField } from '../../fields/richtext/index.js'\n\nexport interface RichTextEditorProps {\n content: React.ReactNode // Puck richtext returns React elements for contentEditable\n dimensions: DimensionsValue | null\n margin: PaddingValue | null\n customPadding: PaddingValue | null\n id?: string // Puck adds this automatically\n}\n\nconst defaultProps: RichTextEditorProps = {\n content: '<p>Click to start editing...</p>',\n dimensions: null,\n margin: null,\n customPadding: null,\n}\n\n// =============================================================================\n// Render Component for Editor Config\n// =============================================================================\n\n// Uses Puck's native richtext field which supports inline contentEditable editing.\n// Content is rendered directly as {content} - Puck handles the rest.\n\nfunction RichTextRender({\n content,\n dimensions,\n margin,\n customPadding,\n}: RichTextEditorProps) {\n // Build styles\n const style = useMemo(() => {\n const s: React.CSSProperties = {}\n\n const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined\n if (dimensionsStyles) {\n Object.assign(s, dimensionsStyles)\n }\n\n const marginCSS = marginValueToCSS(margin)\n if (marginCSS) {\n s.margin = marginCSS\n }\n\n const customPaddingCSS = paddingValueToCSS(customPadding)\n if (customPaddingCSS) {\n s.padding = customPaddingCSS\n }\n\n return Object.keys(s).length > 0 ? s : undefined\n }, [dimensions, margin, customPadding])\n\n // Render content directly - Puck's richtext field handles both:\n // - Editor: Returns React elements for contentEditable inline editing\n // - Frontend <Render>: Returns HTML string which React renders\n return (\n <section className=\"relative overflow-hidden\" style={style}>\n <div className=\"prose dark:prose-invert max-w-none\">{content}</div>\n </section>\n )\n}\n\n// =============================================================================\n// Puck Component Config\n// =============================================================================\n\nexport const RichTextEditorConfig: ComponentConfig = {\n label: 'Rich Text',\n fields: {\n _reset: createResetField({ defaultProps }),\n content: createRichTextField({\n label: 'Content',\n contentEditable: true, // Enable inline canvas editing\n }),\n dimensions: createDimensionsField({ label: 'Dimensions' }),\n margin: createMarginField({ label: 'Margin' }),\n customPadding: createPaddingField({ label: 'Padding' }),\n },\n defaultProps,\n render: (props) => (\n <RichTextRender\n content={props.content}\n dimensions={props.dimensions}\n margin={props.margin}\n customPadding={props.customPadding}\n id={props.id}\n />\n ),\n}\n"],"names":["React","useMemo","marginValueToCSS","paddingValueToCSS","dimensionsValueToCSS","createMarginField","createPaddingField","createDimensionsField","createResetField","createRichTextField","defaultProps","content","dimensions","margin","customPadding","RichTextRender","style","s","dimensionsStyles","undefined","Object","assign","marginCSS","customPaddingCSS","padding","keys","length","section","className","div","RichTextEditorConfig","label","fields","_reset","contentEditable","render","props","id"],"mappings":"AAAA;;AAEA;;;;;;;;;;;CAWC,GAED,OAAOA,SAASC,OAAO,QAAQ,QAAO;AAEtC,SACEC,gBAAgB,EAChBC,iBAAiB,EACjBC,oBAAoB,QAGf,yBAAwB;AAC/B,SAASC,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,kBAAkB,QAAQ,+BAA8B;AACjE,SAASC,qBAAqB,QAAQ,kCAAiC;AACvE,SAASC,gBAAgB,QAAQ,6BAA4B;AAC7D,SAASC,mBAAmB,QAAQ,iCAAgC;AAUpE,MAAMC,eAAoC;IACxCC,SAAS;IACTC,YAAY;IACZC,QAAQ;IACRC,eAAe;AACjB;AAEA,gFAAgF;AAChF,qCAAqC;AACrC,gFAAgF;AAEhF,mFAAmF;AACnF,qEAAqE;AAErE,SAASC,eAAe,EACtBJ,OAAO,EACPC,UAAU,EACVC,MAAM,EACNC,aAAa,EACO;IACpB,eAAe;IACf,MAAME,QAAQf,QAAQ;QACpB,MAAMgB,IAAyB,CAAC;QAEhC,MAAMC,mBAAmBN,aAAaR,qBAAqBQ,cAAcO;QACzE,IAAID,kBAAkB;YACpBE,OAAOC,MAAM,CAACJ,GAAGC;QACnB;QAEA,MAAMI,YAAYpB,iBAAiBW;QACnC,IAAIS,WAAW;YACbL,EAAEJ,MAAM,GAAGS;QACb;QAEA,MAAMC,mBAAmBpB,kBAAkBW;QAC3C,IAAIS,kBAAkB;YACpBN,EAAEO,OAAO,GAAGD;QACd;QAEA,OAAOH,OAAOK,IAAI,CAACR,GAAGS,MAAM,GAAG,IAAIT,IAAIE;IACzC,GAAG;QAACP;QAAYC;QAAQC;KAAc;IAEtC,gEAAgE;IAChE,sEAAsE;IACtE,+DAA+D;IAC/D,qBACE,KAACa;QAAQC,WAAU;QAA2BZ,OAAOA;kBACnD,cAAA,KAACa;YAAID,WAAU;sBAAsCjB;;;AAG3D;AAEA,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,OAAO,MAAMmB,uBAAwC;IACnDC,OAAO;IACPC,QAAQ;QACNC,QAAQzB,iBAAiB;YAAEE;QAAa;QACxCC,SAASF,oBAAoB;YAC3BsB,OAAO;YACPG,iBAAiB;QACnB;QACAtB,YAAYL,sBAAsB;YAAEwB,OAAO;QAAa;QACxDlB,QAAQR,kBAAkB;YAAE0B,OAAO;QAAS;QAC5CjB,eAAeR,mBAAmB;YAAEyB,OAAO;QAAU;IACvD;IACArB;IACAyB,QAAQ,CAACC,sBACP,KAACrB;YACCJ,SAASyB,MAAMzB,OAAO;YACtBC,YAAYwB,MAAMxB,UAAU;YAC5BC,QAAQuB,MAAMvB,MAAM;YACpBC,eAAesB,MAAMtB,aAAa;YAClCuB,IAAID,MAAMC,EAAE;;AAGlB,EAAC"}
@@ -8,8 +8,8 @@
8
8
  */
9
9
  import React from 'react';
10
10
  import type { ComponentConfig } from '@puckeditor/core';
11
- import { type PaddingValue, type DimensionsValue, type ColorValue, type AnimationValue } from '../../fields/shared';
12
- import type { Alignment } from '../../fields/AlignmentField';
11
+ import { type PaddingValue, type DimensionsValue, type ColorValue, type AnimationValue } from '../../fields/shared.js';
12
+ import type { Alignment } from '../../fields/AlignmentField.js';
13
13
  export interface RichTextProps {
14
14
  content: React.ReactNode;
15
15
  alignment: Alignment | null;
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/RichText.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAY5D,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAYD,eAAO,MAAM,cAAc,EAAE,eAAe,CAAC,aAAa,CA8CzD,CAAA"}
1
+ {"version":3,"file":"RichText.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/RichText.server.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAY/D,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAYD,eAAO,MAAM,cAAc,EAAE,eAAe,CAAC,aAAa,CA8CzD,CAAA"}
@@ -1,7 +1,15 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * RichText Component - Server-Safe Puck Configuration
4
+ *
5
+ * Rich text content with customizable styling.
6
+ * This version excludes field definitions for server-side rendering.
7
+ *
8
+ * Requires @tailwindcss/typography - uses the `prose` class for styling.
9
+ */ import React from 'react';
2
10
  import parse from 'html-react-parser';
3
- import { cn, marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS, colorValueToCSS, alignmentMap, } from '../../fields/shared';
4
- import { AnimatedWrapper } from '../AnimatedWrapper';
11
+ import { cn, marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS, colorValueToCSS, alignmentMap } from '../../fields/shared.js';
12
+ import { AnimatedWrapper } from '../AnimatedWrapper.js';
5
13
  // Default padding with standard horizontal spacing (replaces hardcoded px-4)
6
14
  const DEFAULT_PADDING = {
7
15
  top: 0,
@@ -9,7 +17,7 @@ const DEFAULT_PADDING = {
9
17
  bottom: 0,
10
18
  left: 16,
11
19
  unit: 'px',
12
- linked: false,
20
+ linked: false
13
21
  };
14
22
  const defaultProps = {
15
23
  content: '<p>Enter your content here...</p>',
@@ -18,15 +26,15 @@ const defaultProps = {
18
26
  dimensions: null,
19
27
  animation: null,
20
28
  margin: null,
21
- customPadding: DEFAULT_PADDING, // Default 16px horizontal padding
29
+ customPadding: DEFAULT_PADDING
22
30
  };
23
31
  export const RichTextConfig = {
24
32
  label: 'Rich Text',
25
33
  defaultProps,
26
- render: ({ content, alignment, textColor, dimensions, animation, margin, customPadding }) => {
34
+ render: ({ content, alignment, textColor, dimensions, animation, margin, customPadding })=>{
27
35
  const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined;
28
36
  const style = {
29
- ...dimensionsStyles,
37
+ ...dimensionsStyles
30
38
  };
31
39
  const marginCSS = marginValueToCSS(margin);
32
40
  if (marginCSS) {
@@ -44,14 +52,25 @@ export const RichTextConfig = {
44
52
  const alignmentValue = alignment ?? 'left';
45
53
  const alignmentClass = alignmentMap[alignmentValue] || alignmentMap.left;
46
54
  // Handle empty content - check for null/undefined or empty string
47
- const isEmpty = !content || (typeof content === 'string' && (content === '' || content === '<p></p>'));
55
+ const isEmpty = !content || typeof content === 'string' && (content === '' || content === '<p></p>');
48
56
  // Parse HTML strings to React elements, pass through React elements as-is
49
- const renderedContent = isEmpty
50
- ? _jsx("p", { children: _jsx("em", { children: "No content available" }) })
51
- : typeof content === 'string'
52
- ? parse(content)
53
- : content;
54
- return (_jsx(AnimatedWrapper, { animation: animation, children: _jsx("section", { className: cn('relative overflow-hidden', alignmentClass), style: Object.keys(style).length > 0 ? style : undefined, children: _jsx("div", { className: "prose dark:prose-invert max-w-none", children: renderedContent }) }) }));
55
- },
57
+ const renderedContent = isEmpty ? /*#__PURE__*/ _jsx("p", {
58
+ children: /*#__PURE__*/ _jsx("em", {
59
+ children: "No content available"
60
+ })
61
+ }) : typeof content === 'string' ? parse(content) : content;
62
+ return /*#__PURE__*/ _jsx(AnimatedWrapper, {
63
+ animation: animation,
64
+ children: /*#__PURE__*/ _jsx("section", {
65
+ className: cn('relative overflow-hidden', alignmentClass),
66
+ style: Object.keys(style).length > 0 ? style : undefined,
67
+ children: /*#__PURE__*/ _jsx("div", {
68
+ className: "prose dark:prose-invert max-w-none",
69
+ children: renderedContent
70
+ })
71
+ })
72
+ });
73
+ }
56
74
  };
75
+
57
76
  //# sourceMappingURL=RichText.server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.server.js","sourceRoot":"","sources":["../../../src/components/typography/RichText.server.tsx"],"names":[],"mappings":";AAWA,OAAO,KAAK,MAAM,mBAAmB,CAAA;AACrC,OAAO,EACL,EAAE,EACF,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,YAAY,GAKb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGpD,6EAA6E;AAC7E,MAAM,eAAe,GAAiB;IACpC,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,KAAK;CACd,CAAA;AAYD,MAAM,YAAY,GAAkB;IAClC,OAAO,EAAE,mCAAmC;IAC5C,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,eAAe,EAAE,kCAAkC;CACnE,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAmC;IAC5D,KAAK,EAAE,WAAW;IAClB,YAAY;IACZ,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE;QAC1F,MAAM,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAElF,MAAM,KAAK,GAAwB;YACjC,GAAG,gBAAgB;SACpB,CAAA;QACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC1C,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,CAAC,MAAM,GAAG,SAAS,CAAA;QAC1B,CAAC;QACD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;QACzD,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,CAAC,OAAO,GAAG,gBAAgB,CAAA;QAClC,CAAC;QACD,mCAAmC;QACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;QAC3C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAA;QACxB,CAAC;QAED,MAAM,cAAc,GAAG,SAAS,IAAI,MAAM,CAAA;QAC1C,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,IAAI,CAAA;QAExE,kEAAkE;QAClE,MAAM,OAAO,GAAG,CAAC,OAAO,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,SAAS,CAAC,CAAC,CAAA;QAEtG,0EAA0E;QAC1E,MAAM,eAAe,GAAG,OAAO;YAC7B,CAAC,CAAC,sBAAG,gDAA6B,GAAI;YACtC,CAAC,CAAC,OAAO,OAAO,KAAK,QAAQ;gBAC3B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;gBAChB,CAAC,CAAC,OAAO,CAAA;QAEb,OAAO,CACL,KAAC,eAAe,IAAC,SAAS,EAAE,SAAS,YACnC,kBAAS,SAAS,EAAE,EAAE,CAAC,0BAA0B,EAAE,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,YAC1H,cAAK,SAAS,EAAC,oCAAoC,YAChD,eAAe,GACZ,GACE,GACM,CACnB,CAAA;IACH,CAAC;CACF,CAAA"}
1
+ {"version":3,"sources":["../../../src/components/typography/RichText.server.tsx"],"sourcesContent":["/**\n * RichText Component - Server-Safe Puck Configuration\n *\n * Rich text content with customizable styling.\n * This version excludes field definitions for server-side rendering.\n *\n * Requires @tailwindcss/typography - uses the `prose` class for styling.\n */\n\nimport React from 'react'\nimport type { ComponentConfig } from '@puckeditor/core'\nimport parse from 'html-react-parser'\nimport {\n cn,\n marginValueToCSS,\n paddingValueToCSS,\n dimensionsValueToCSS,\n colorValueToCSS,\n alignmentMap,\n type PaddingValue,\n type DimensionsValue,\n type ColorValue,\n type AnimationValue,\n} from '../../fields/shared.js'\nimport { AnimatedWrapper } from '../AnimatedWrapper.js'\nimport type { Alignment } from '../../fields/AlignmentField.js'\n\n// Default padding with standard horizontal spacing (replaces hardcoded px-4)\nconst DEFAULT_PADDING: PaddingValue = {\n top: 0,\n right: 16,\n bottom: 0,\n left: 16,\n unit: 'px',\n linked: false,\n}\n\nexport interface RichTextProps {\n content: React.ReactNode // Puck richtext returns React elements or HTML strings\n alignment: Alignment | null\n textColor: ColorValue | null\n dimensions: DimensionsValue | null\n animation: AnimationValue | null\n margin: PaddingValue | null\n customPadding: PaddingValue | null\n}\n\nconst defaultProps: RichTextProps = {\n content: '<p>Enter your content here...</p>',\n alignment: null,\n textColor: null,\n dimensions: null,\n animation: null,\n margin: null,\n customPadding: DEFAULT_PADDING, // Default 16px horizontal padding\n}\n\nexport const RichTextConfig: ComponentConfig<RichTextProps> = {\n label: 'Rich Text',\n defaultProps,\n render: ({ content, alignment, textColor, dimensions, animation, margin, customPadding }) => {\n const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined\n\n const style: React.CSSProperties = {\n ...dimensionsStyles,\n }\n const marginCSS = marginValueToCSS(margin)\n if (marginCSS) {\n style.margin = marginCSS\n }\n const customPaddingCSS = paddingValueToCSS(customPadding)\n if (customPaddingCSS) {\n style.padding = customPaddingCSS\n }\n // Apply text color from ColorValue\n const colorCSS = colorValueToCSS(textColor)\n if (colorCSS) {\n style.color = colorCSS\n }\n\n const alignmentValue = alignment ?? 'left'\n const alignmentClass = alignmentMap[alignmentValue] || alignmentMap.left\n\n // Handle empty content - check for null/undefined or empty string\n const isEmpty = !content || (typeof content === 'string' && (content === '' || content === '<p></p>'))\n\n // Parse HTML strings to React elements, pass through React elements as-is\n const renderedContent = isEmpty\n ? <p><em>No content available</em></p>\n : typeof content === 'string'\n ? parse(content)\n : content\n\n return (\n <AnimatedWrapper animation={animation}>\n <section className={cn('relative overflow-hidden', alignmentClass)} style={Object.keys(style).length > 0 ? style : undefined}>\n <div className=\"prose dark:prose-invert max-w-none\">\n {renderedContent}\n </div>\n </section>\n </AnimatedWrapper>\n )\n },\n}\n"],"names":["React","parse","cn","marginValueToCSS","paddingValueToCSS","dimensionsValueToCSS","colorValueToCSS","alignmentMap","AnimatedWrapper","DEFAULT_PADDING","top","right","bottom","left","unit","linked","defaultProps","content","alignment","textColor","dimensions","animation","margin","customPadding","RichTextConfig","label","render","dimensionsStyles","undefined","style","marginCSS","customPaddingCSS","padding","colorCSS","color","alignmentValue","alignmentClass","isEmpty","renderedContent","p","em","section","className","Object","keys","length","div"],"mappings":";AAAA;;;;;;;CAOC,GAED,OAAOA,WAAW,QAAO;AAEzB,OAAOC,WAAW,oBAAmB;AACrC,SACEC,EAAE,EACFC,gBAAgB,EAChBC,iBAAiB,EACjBC,oBAAoB,EACpBC,eAAe,EACfC,YAAY,QAKP,yBAAwB;AAC/B,SAASC,eAAe,QAAQ,wBAAuB;AAGvD,6EAA6E;AAC7E,MAAMC,kBAAgC;IACpCC,KAAK;IACLC,OAAO;IACPC,QAAQ;IACRC,MAAM;IACNC,MAAM;IACNC,QAAQ;AACV;AAYA,MAAMC,eAA8B;IAClCC,SAAS;IACTC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,eAAed;AACjB;AAEA,OAAO,MAAMe,iBAAiD;IAC5DC,OAAO;IACPT;IACAU,QAAQ,CAAC,EAAET,OAAO,EAAEC,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,aAAa,EAAE;QACtF,MAAMI,mBAAmBP,aAAaf,qBAAqBe,cAAcQ;QAEzE,MAAMC,QAA6B;YACjC,GAAGF,gBAAgB;QACrB;QACA,MAAMG,YAAY3B,iBAAiBmB;QACnC,IAAIQ,WAAW;YACbD,MAAMP,MAAM,GAAGQ;QACjB;QACA,MAAMC,mBAAmB3B,kBAAkBmB;QAC3C,IAAIQ,kBAAkB;YACpBF,MAAMG,OAAO,GAAGD;QAClB;QACA,mCAAmC;QACnC,MAAME,WAAW3B,gBAAgBa;QACjC,IAAIc,UAAU;YACZJ,MAAMK,KAAK,GAAGD;QAChB;QAEA,MAAME,iBAAiBjB,aAAa;QACpC,MAAMkB,iBAAiB7B,YAAY,CAAC4B,eAAe,IAAI5B,aAAaM,IAAI;QAExE,kEAAkE;QAClE,MAAMwB,UAAU,CAACpB,WAAY,OAAOA,YAAY,YAAaA,CAAAA,YAAY,MAAMA,YAAY,SAAQ;QAEnG,0EAA0E;QAC1E,MAAMqB,kBAAkBD,wBACpB,KAACE;sBAAE,cAAA,KAACC;0BAAG;;aACP,OAAOvB,YAAY,WACjBhB,MAAMgB,WACNA;QAEN,qBACE,KAACT;YAAgBa,WAAWA;sBAC1B,cAAA,KAACoB;gBAAQC,WAAWxC,GAAG,4BAA4BkC;gBAAiBP,OAAOc,OAAOC,IAAI,CAACf,OAAOgB,MAAM,GAAG,IAAIhB,QAAQD;0BACjH,cAAA,KAACkB;oBAAIJ,WAAU;8BACZJ;;;;IAKX;AACF,EAAC"}
@@ -4,8 +4,8 @@
4
4
  * Simple paragraph text with customizable styling.
5
5
  */
6
6
  import type { ComponentConfig } from '@puckeditor/core';
7
- import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared';
8
- import { type Alignment } from '../../fields/AlignmentField';
7
+ import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared.js';
8
+ import { type Alignment } from '../../fields/AlignmentField.js';
9
9
  export interface TextProps {
10
10
  content: string;
11
11
  size: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Text.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EASL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAKlF,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,UAAU,EAAE,eAsDxB,CAAA"}
1
+ {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Text.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EASL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAKrF,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,UAAU,EAAE,eAsDxB,CAAA"}
@@ -1,13 +1,17 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { textSizeField, textSizeMap, alignmentMap, cn, marginValueToCSS, paddingValueToCSS, colorValueToCSS, dimensionsValueToCSS, } from '../../fields/shared';
3
- import { AnimatedWrapper } from '../AnimatedWrapper';
4
- import { createMarginField } from '../../fields/MarginField';
5
- import { createPaddingField } from '../../fields/PaddingField';
6
- import { createColorPickerField } from '../../fields/ColorPickerField';
7
- import { createAlignmentField } from '../../fields/AlignmentField';
8
- import { createDimensionsField } from '../../fields/DimensionsField';
9
- import { createAnimationField } from '../../fields/AnimationField';
10
- import { createResetField } from '../../fields/ResetField';
1
+ /**
2
+ * Text Component - Puck Configuration
3
+ *
4
+ * Simple paragraph text with customizable styling.
5
+ */ import { jsx as _jsx } from "react/jsx-runtime";
6
+ import { textSizeField, textSizeMap, alignmentMap, cn, marginValueToCSS, paddingValueToCSS, colorValueToCSS, dimensionsValueToCSS } from '../../fields/shared.js';
7
+ import { AnimatedWrapper } from '../AnimatedWrapper.js';
8
+ import { createMarginField } from '../../fields/MarginField.js';
9
+ import { createPaddingField } from '../../fields/PaddingField.js';
10
+ import { createColorPickerField } from '../../fields/ColorPickerField.js';
11
+ import { createAlignmentField } from '../../fields/AlignmentField.js';
12
+ import { createDimensionsField } from '../../fields/DimensionsField.js';
13
+ import { createAnimationField } from '../../fields/AnimationField.js';
14
+ import { createResetField } from '../../fields/ResetField.js';
11
15
  const defaultProps = {
12
16
  content: 'Enter your text here...',
13
17
  size: 'base',
@@ -16,30 +20,44 @@ const defaultProps = {
16
20
  dimensions: null,
17
21
  animation: null,
18
22
  margin: null,
19
- customPadding: null,
23
+ customPadding: null
20
24
  };
21
25
  export const TextConfig = {
22
26
  label: 'Text',
23
27
  fields: {
24
- _reset: createResetField({ defaultProps }),
28
+ _reset: createResetField({
29
+ defaultProps
30
+ }),
25
31
  content: {
26
32
  type: 'textarea',
27
- label: 'Content',
33
+ label: 'Content'
28
34
  },
29
35
  size: textSizeField,
30
- textColor: createColorPickerField({ label: 'Text Color' }),
31
- dimensions: createDimensionsField({ label: 'Dimensions' }),
32
- alignment: createAlignmentField({ label: 'Alignment' }),
33
- animation: createAnimationField({ label: 'Animation' }),
36
+ textColor: createColorPickerField({
37
+ label: 'Text Color'
38
+ }),
39
+ dimensions: createDimensionsField({
40
+ label: 'Dimensions'
41
+ }),
42
+ alignment: createAlignmentField({
43
+ label: 'Alignment'
44
+ }),
45
+ animation: createAnimationField({
46
+ label: 'Animation'
47
+ }),
34
48
  // Spacing (grouped at bottom)
35
- margin: createMarginField({ label: 'Margin' }),
36
- customPadding: createPaddingField({ label: 'Padding' }),
49
+ margin: createMarginField({
50
+ label: 'Margin'
51
+ }),
52
+ customPadding: createPaddingField({
53
+ label: 'Padding'
54
+ })
37
55
  },
38
56
  defaultProps,
39
- render: ({ content, size, alignment, textColor, dimensions, animation, margin, customPadding }) => {
57
+ render: ({ content, size, alignment, textColor, dimensions, animation, margin, customPadding })=>{
40
58
  const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined;
41
59
  const style = {
42
- ...dimensionsStyles,
60
+ ...dimensionsStyles
43
61
  };
44
62
  const marginCSS = marginValueToCSS(margin);
45
63
  if (marginCSS) {
@@ -55,7 +73,15 @@ export const TextConfig = {
55
73
  style.color = colorCSS;
56
74
  }
57
75
  const alignmentValue = alignment ?? 'left';
58
- return (_jsx(AnimatedWrapper, { animation: animation, children: _jsx("p", { className: cn(textSizeMap[size] || textSizeMap.base, alignmentMap[alignmentValue] || alignmentMap.left), style: Object.keys(style).length > 0 ? style : undefined, children: content }) }));
59
- },
76
+ return /*#__PURE__*/ _jsx(AnimatedWrapper, {
77
+ animation: animation,
78
+ children: /*#__PURE__*/ _jsx("p", {
79
+ className: cn(textSizeMap[size] || textSizeMap.base, alignmentMap[alignmentValue] || alignmentMap.left),
80
+ style: Object.keys(style).length > 0 ? style : undefined,
81
+ children: content
82
+ })
83
+ });
84
+ }
60
85
  };
86
+
61
87
  //# sourceMappingURL=Text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../src/components/typography/Text.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/components/typography/Text.tsx"],"sourcesContent":["/**\n * Text Component - Puck Configuration\n *\n * Simple paragraph text with customizable styling.\n */\n\nimport type React from 'react'\nimport type { ComponentConfig } from '@puckeditor/core'\nimport {\n textSizeField,\n textSizeMap,\n alignmentMap,\n cn,\n marginValueToCSS,\n paddingValueToCSS,\n colorValueToCSS,\n dimensionsValueToCSS,\n type PaddingValue,\n type ColorValue,\n type DimensionsValue,\n type AnimationValue,\n} from '../../fields/shared.js'\nimport { AnimatedWrapper } from '../AnimatedWrapper.js'\nimport { createMarginField } from '../../fields/MarginField.js'\nimport { createPaddingField } from '../../fields/PaddingField.js'\nimport { createColorPickerField } from '../../fields/ColorPickerField.js'\nimport { createAlignmentField, type Alignment } from '../../fields/AlignmentField.js'\nimport { createDimensionsField } from '../../fields/DimensionsField.js'\nimport { createAnimationField } from '../../fields/AnimationField.js'\nimport { createResetField } from '../../fields/ResetField.js'\n\nexport interface TextProps {\n content: string\n size: string\n alignment: Alignment | null\n textColor: ColorValue | null\n dimensions: DimensionsValue | null\n animation: AnimationValue | null\n margin: PaddingValue | null\n customPadding: PaddingValue | null\n}\n\nconst defaultProps: TextProps = {\n content: 'Enter your text here...',\n size: 'base',\n alignment: null,\n textColor: null,\n dimensions: null,\n animation: null,\n margin: null,\n customPadding: null,\n}\n\nexport const TextConfig: ComponentConfig = {\n label: 'Text',\n fields: {\n _reset: createResetField({ defaultProps }),\n content: {\n type: 'textarea',\n label: 'Content',\n },\n size: textSizeField,\n textColor: createColorPickerField({ label: 'Text Color' }),\n dimensions: createDimensionsField({ label: 'Dimensions' }),\n alignment: createAlignmentField({ label: 'Alignment' }),\n animation: createAnimationField({ label: 'Animation' }),\n // Spacing (grouped at bottom)\n margin: createMarginField({ label: 'Margin' }),\n customPadding: createPaddingField({ label: 'Padding' }),\n },\n defaultProps,\n render: ({ content, size, alignment, textColor, dimensions, animation, margin, customPadding }) => {\n const dimensionsStyles = dimensions ? dimensionsValueToCSS(dimensions) : undefined\n\n const style: React.CSSProperties = {\n ...dimensionsStyles,\n }\n const marginCSS = marginValueToCSS(margin)\n if (marginCSS) {\n style.margin = marginCSS\n }\n const paddingCSS = paddingValueToCSS(customPadding)\n if (paddingCSS) {\n style.padding = paddingCSS\n }\n // Apply text color from ColorValue\n const colorCSS = colorValueToCSS(textColor)\n if (colorCSS) {\n style.color = colorCSS\n }\n\n const alignmentValue = alignment ?? 'left'\n\n return (\n <AnimatedWrapper animation={animation}>\n <p\n className={cn(\n textSizeMap[size] || textSizeMap.base,\n alignmentMap[alignmentValue] || alignmentMap.left\n )}\n style={Object.keys(style).length > 0 ? style : undefined}\n >\n {content}\n </p>\n </AnimatedWrapper>\n )\n },\n}\n"],"names":["textSizeField","textSizeMap","alignmentMap","cn","marginValueToCSS","paddingValueToCSS","colorValueToCSS","dimensionsValueToCSS","AnimatedWrapper","createMarginField","createPaddingField","createColorPickerField","createAlignmentField","createDimensionsField","createAnimationField","createResetField","defaultProps","content","size","alignment","textColor","dimensions","animation","margin","customPadding","TextConfig","label","fields","_reset","type","render","dimensionsStyles","undefined","style","marginCSS","paddingCSS","padding","colorCSS","color","alignmentValue","p","className","base","left","Object","keys","length"],"mappings":"AAAA;;;;CAIC;AAID,SACEA,aAAa,EACbC,WAAW,EACXC,YAAY,EACZC,EAAE,EACFC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,EACfC,oBAAoB,QAKf,yBAAwB;AAC/B,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,kBAAkB,QAAQ,+BAA8B;AACjE,SAASC,sBAAsB,QAAQ,mCAAkC;AACzE,SAASC,oBAAoB,QAAwB,iCAAgC;AACrF,SAASC,qBAAqB,QAAQ,kCAAiC;AACvE,SAASC,oBAAoB,QAAQ,iCAAgC;AACrE,SAASC,gBAAgB,QAAQ,6BAA4B;AAa7D,MAAMC,eAA0B;IAC9BC,SAAS;IACTC,MAAM;IACNC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,WAAW;IACXC,QAAQ;IACRC,eAAe;AACjB;AAEA,OAAO,MAAMC,aAA8B;IACzCC,OAAO;IACPC,QAAQ;QACNC,QAAQb,iBAAiB;YAAEC;QAAa;QACxCC,SAAS;YACPY,MAAM;YACNH,OAAO;QACT;QACAR,MAAMlB;QACNoB,WAAWT,uBAAuB;YAAEe,OAAO;QAAa;QACxDL,YAAYR,sBAAsB;YAAEa,OAAO;QAAa;QACxDP,WAAWP,qBAAqB;YAAEc,OAAO;QAAY;QACrDJ,WAAWR,qBAAqB;YAAEY,OAAO;QAAY;QACrD,8BAA8B;QAC9BH,QAAQd,kBAAkB;YAAEiB,OAAO;QAAS;QAC5CF,eAAed,mBAAmB;YAAEgB,OAAO;QAAU;IACvD;IACAV;IACAc,QAAQ,CAAC,EAAEb,OAAO,EAAEC,IAAI,EAAEC,SAAS,EAAEC,SAAS,EAAEC,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,aAAa,EAAE;QAC5F,MAAMO,mBAAmBV,aAAad,qBAAqBc,cAAcW;QAEzE,MAAMC,QAA6B;YACjC,GAAGF,gBAAgB;QACrB;QACA,MAAMG,YAAY9B,iBAAiBmB;QACnC,IAAIW,WAAW;YACbD,MAAMV,MAAM,GAAGW;QACjB;QACA,MAAMC,aAAa9B,kBAAkBmB;QACrC,IAAIW,YAAY;YACdF,MAAMG,OAAO,GAAGD;QAClB;QACA,mCAAmC;QACnC,MAAME,WAAW/B,gBAAgBc;QACjC,IAAIiB,UAAU;YACZJ,MAAMK,KAAK,GAAGD;QAChB;QAEA,MAAME,iBAAiBpB,aAAa;QAEpC,qBACE,KAACX;YAAgBc,WAAWA;sBAC1B,cAAA,KAACkB;gBACCC,WAAWtC,GACTF,WAAW,CAACiB,KAAK,IAAIjB,YAAYyC,IAAI,EACrCxC,YAAY,CAACqC,eAAe,IAAIrC,aAAayC,IAAI;gBAEnDV,OAAOW,OAAOC,IAAI,CAACZ,OAAOa,MAAM,GAAG,IAAIb,QAAQD;0BAE9Cf;;;IAIT;AACF,EAAC"}
@@ -5,8 +5,8 @@
5
5
  * This version excludes field definitions for server-side rendering.
6
6
  */
7
7
  import type { ComponentConfig } from '@puckeditor/core';
8
- import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared';
9
- import type { Alignment } from '../../fields/AlignmentField';
8
+ import { type PaddingValue, type ColorValue, type DimensionsValue, type AnimationValue } from '../../fields/shared.js';
9
+ import type { Alignment } from '../../fields/AlignmentField.js';
10
10
  export interface TextProps {
11
11
  content: string;
12
12
  size: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Text.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Text.server.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAE5D,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,UAAU,EAAE,eAAe,CAAC,SAAS,CAuCjD,CAAA"}
1
+ {"version":3,"file":"Text.server.d.ts","sourceRoot":"","sources":["../../../src/components/typography/Text.server.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAE/D,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAaD,eAAO,MAAM,UAAU,EAAE,eAAe,CAAC,SAAS,CAuCjD,CAAA"}