@delmaredigital/payload-puck 0.6.12 → 0.6.14
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.
- package/README.md +50 -1
- package/dist/admin/EditWithPuckButton.d.ts +1 -2
- package/dist/admin/EditWithPuckButton.js +64 -26
- package/dist/admin/EditWithPuckCell.d.ts +0 -1
- package/dist/admin/EditWithPuckCell.js +42 -14
- package/dist/admin/PuckEditorView.d.ts +1 -2
- package/dist/admin/PuckEditorView.js +117 -33
- package/dist/admin/client.d.ts +2 -3
- package/dist/admin/client.js +3 -5
- package/dist/admin/generateAdminComponents.d.ts +0 -1
- package/dist/admin/generateAdminComponents.js +6 -8
- package/dist/admin/index.d.ts +5 -6
- package/dist/admin/index.js +2 -3
- package/dist/ai/collections/AiContext.d.ts +0 -1
- package/dist/ai/collections/AiContext.js +55 -30
- package/dist/ai/collections/AiPrompts.d.ts +0 -1
- package/dist/ai/collections/AiPrompts.js +23 -20
- package/dist/ai/createAiApiRoutes.d.ts +0 -1
- package/dist/ai/createAiApiRoutes.js +27 -20
- package/dist/ai/createAiGenerate.d.ts +0 -1
- package/dist/ai/createAiGenerate.js +6 -9
- package/dist/ai/createAiPlugin.d.ts +0 -1
- package/dist/ai/createAiPlugin.js +6 -10
- package/dist/ai/hooks/useAiContext.d.ts +0 -1
- package/dist/ai/hooks/useAiContext.js +49 -40
- package/dist/ai/hooks/useAiPrompts.d.ts +0 -1
- package/dist/ai/hooks/useAiPrompts.js +32 -26
- package/dist/ai/index.d.ts +0 -1
- package/dist/ai/index.js +8 -11
- package/dist/ai/plugins/ContextEditorPanel.d.ts +1 -2
- package/dist/ai/plugins/ContextEditorPanel.js +398 -108
- package/dist/ai/plugins/PromptEditorPanel.d.ts +1 -2
- package/dist/ai/plugins/PromptEditorPanel.js +236 -52
- package/dist/ai/plugins/contextEditorPlugin.d.ts +0 -1
- package/dist/ai/plugins/contextEditorPlugin.js +11 -6
- package/dist/ai/plugins/promptApiRoutes.d.ts +0 -1
- package/dist/ai/plugins/promptApiRoutes.js +118 -51
- package/dist/ai/plugins/promptEditorPlugin.d.ts +0 -1
- package/dist/ai/plugins/promptEditorPlugin.js +11 -6
- package/dist/ai/presets/componentAiDefaults.d.ts +0 -1
- package/dist/ai/presets/componentAiDefaults.js +107 -84
- package/dist/ai/presets/index.d.ts +0 -1
- package/dist/ai/presets/index.js +11 -19
- package/dist/ai/presets/instructions/interactive.d.ts +0 -1
- package/dist/ai/presets/instructions/interactive.js +84 -76
- package/dist/ai/presets/instructions/layout.d.ts +0 -1
- package/dist/ai/presets/instructions/layout.js +121 -118
- package/dist/ai/presets/instructions/media.d.ts +0 -1
- package/dist/ai/presets/instructions/media.js +30 -30
- package/dist/ai/presets/instructions/pagePatterns.d.ts +0 -1
- package/dist/ai/presets/instructions/pagePatterns.js +3 -7
- package/dist/ai/presets/instructions/schemas.d.ts +0 -1
- package/dist/ai/presets/instructions/schemas.js +494 -138
- package/dist/ai/presets/instructions/typography.d.ts +0 -1
- package/dist/ai/presets/instructions/typography.js +37 -34
- package/dist/ai/tools/index.d.ts +0 -1
- package/dist/ai/tools/index.js +91 -56
- package/dist/ai/types.d.ts +0 -1
- package/dist/ai/types.js +6 -2
- package/dist/ai/utils/injectAiConfig.d.ts +0 -1
- package/dist/ai/utils/injectAiConfig.js +32 -41
- package/dist/api/createPuckApiRoutes.d.ts +1 -2
- package/dist/api/createPuckApiRoutes.js +122 -66
- package/dist/api/createPuckApiRoutesVersions.d.ts +1 -2
- package/dist/api/createPuckApiRoutesVersions.js +87 -38
- package/dist/api/createPuckApiRoutesWithId.d.ts +1 -2
- package/dist/api/createPuckApiRoutesWithId.js +165 -73
- package/dist/api/index.d.ts +5 -6
- package/dist/api/index.js +5 -7
- package/dist/api/payload-config.d.js +14 -0
- package/dist/api/types.d.ts +0 -1
- package/dist/api/types.js +3 -2
- package/dist/api/utils/mapRootProps.d.ts +1 -2
- package/dist/api/utils/mapRootProps.js +76 -45
- package/dist/collections/Templates.d.ts +0 -1
- package/dist/collections/Templates.js +23 -21
- package/dist/components/AccordionClient.d.ts +2 -3
- package/dist/components/AccordionClient.js +80 -23
- package/dist/components/AnimatedWrapper.d.ts +2 -3
- package/dist/components/AnimatedWrapper.js +30 -17
- package/dist/components/exports.d.ts +0 -1
- package/dist/components/exports.js +1 -3
- package/dist/components/index.d.ts +5 -6
- package/dist/components/index.js +6 -8
- package/dist/components/interactive/Accordion.d.ts +1 -2
- package/dist/components/interactive/Accordion.js +148 -56
- package/dist/components/interactive/Accordion.server.d.ts +1 -2
- package/dist/components/interactive/Accordion.server.js +24 -8
- package/dist/components/interactive/Button.d.ts +3 -4
- package/dist/components/interactive/Button.js +88 -44
- package/dist/components/interactive/Button.server.d.ts +2 -3
- package/dist/components/interactive/Button.server.js +39 -21
- package/dist/components/interactive/Card.d.ts +3 -4
- package/dist/components/interactive/Card.js +130 -40
- package/dist/components/interactive/Card.server.d.ts +3 -4
- package/dist/components/interactive/Card.server.js +71 -12
- package/dist/components/interactive/Divider.d.ts +1 -2
- package/dist/components/interactive/Divider.js +53 -27
- package/dist/components/interactive/Divider.server.d.ts +1 -2
- package/dist/components/interactive/Divider.server.js +27 -13
- package/dist/components/interactive/index.d.ts +4 -5
- package/dist/components/interactive/index.js +4 -6
- package/dist/components/layout/Container.d.ts +1 -2
- package/dist/components/layout/Container.js +100 -48
- package/dist/components/layout/Container.server.d.ts +1 -2
- package/dist/components/layout/Container.server.js +66 -20
- package/dist/components/layout/Flex.d.ts +2 -3
- package/dist/components/layout/Flex.js +123 -56
- package/dist/components/layout/Flex.server.d.ts +1 -2
- package/dist/components/layout/Flex.server.js +49 -15
- package/dist/components/layout/Grid.d.ts +1 -2
- package/dist/components/layout/Grid.js +92 -45
- package/dist/components/layout/Grid.server.d.ts +1 -2
- package/dist/components/layout/Grid.server.js +55 -15
- package/dist/components/layout/Section.d.ts +1 -2
- package/dist/components/layout/Section.js +146 -65
- package/dist/components/layout/Section.server.d.ts +1 -2
- package/dist/components/layout/Section.server.js +91 -29
- package/dist/components/layout/Spacer.d.ts +1 -2
- package/dist/components/layout/Spacer.js +79 -31
- package/dist/components/layout/Spacer.server.d.ts +1 -2
- package/dist/components/layout/Spacer.server.js +30 -10
- package/dist/components/layout/Template.d.ts +1 -2
- package/dist/components/layout/Template.js +57 -31
- package/dist/components/layout/Template.server.d.ts +1 -2
- package/dist/components/layout/Template.server.js +42 -12
- package/dist/components/layout/index.d.ts +8 -9
- package/dist/components/layout/index.js +7 -9
- package/dist/components/media/Image.d.ts +3 -4
- package/dist/components/media/Image.js +121 -40
- package/dist/components/media/Image.server.d.ts +3 -4
- package/dist/components/media/Image.server.js +75 -14
- package/dist/components/media/index.d.ts +1 -2
- package/dist/components/media/index.js +1 -3
- package/dist/components/typography/Heading.d.ts +2 -3
- package/dist/components/typography/Heading.js +44 -26
- package/dist/components/typography/Heading.server.d.ts +2 -3
- package/dist/components/typography/Heading.server.js +15 -11
- package/dist/components/typography/RichText.editor.d.ts +1 -2
- package/dist/components/typography/RichText.editor.js +43 -20
- package/dist/components/typography/RichText.server.d.ts +2 -3
- package/dist/components/typography/RichText.server.js +32 -15
- package/dist/components/typography/Text.d.ts +2 -3
- package/dist/components/typography/Text.js +48 -24
- package/dist/components/typography/Text.server.d.ts +2 -3
- package/dist/components/typography/Text.server.js +20 -9
- package/dist/components/typography/index.d.ts +4 -5
- package/dist/components/typography/index.js +4 -6
- package/dist/config/config.editor.d.ts +3 -4
- package/dist/config/config.editor.js +118 -55
- package/dist/config/index.d.ts +4 -5
- package/dist/config/index.js +61 -36
- package/dist/config/merge.d.ts +1 -2
- package/dist/config/merge.js +22 -27
- package/dist/config/presets.d.ts +4 -5
- package/dist/config/presets.js +194 -76
- package/dist/config/types.d.ts +0 -1
- package/dist/config/types.js +5 -3
- package/dist/editor/PuckEditor.d.ts +4 -5
- package/dist/editor/PuckEditor.js +161 -71
- package/dist/editor/PuckEditorImpl.client.d.ts +4 -5
- package/dist/editor/PuckEditorImpl.client.js +303 -153
- package/dist/editor/components/DarkModeStyles.d.ts +0 -1
- package/dist/editor/components/DarkModeStyles.js +10 -13
- package/dist/editor/components/HeaderActions.d.ts +0 -1
- package/dist/editor/components/HeaderActions.js +307 -65
- package/dist/editor/components/IframeWrapper.d.ts +1 -2
- package/dist/editor/components/IframeWrapper.js +81 -59
- package/dist/editor/components/LoadingState.d.ts +1 -2
- package/dist/editor/components/LoadingState.js +16 -4
- package/dist/editor/components/PreviewModal.d.ts +0 -1
- package/dist/editor/components/PreviewModal.js +233 -79
- package/dist/editor/components/PreviewModeToggle.d.ts +0 -1
- package/dist/editor/components/PreviewModeToggle.js +42 -16
- package/dist/editor/components/VersionHistory.d.ts +0 -1
- package/dist/editor/components/VersionHistory.js +218 -72
- package/dist/editor/hooks/useDarkMode.d.ts +0 -1
- package/dist/editor/hooks/useDarkMode.js +35 -24
- package/dist/editor/hooks/useUnsavedChanges.d.ts +0 -1
- package/dist/editor/hooks/useUnsavedChanges.js +7 -9
- package/dist/editor/index.d.ts +0 -1
- package/dist/editor/index.js +4 -7
- package/dist/editor/plugins/VersionHistoryPanel.d.ts +0 -1
- package/dist/editor/plugins/VersionHistoryPanel.js +235 -76
- package/dist/editor/plugins/index.d.ts +0 -1
- package/dist/editor/plugins/index.js +3 -5
- package/dist/editor/plugins/versionHistoryPlugin.d.ts +0 -1
- package/dist/editor/plugins/versionHistoryPlugin.js +9 -9
- package/dist/editor/utils/detectPageTree.d.ts +0 -1
- package/dist/editor/utils/detectPageTree.js +4 -6
- package/dist/editor/utils/index.d.ts +0 -1
- package/dist/editor/utils/index.js +0 -1
- package/dist/editor/utils/injectPageTreeFields.d.ts +0 -1
- package/dist/editor/utils/injectPageTreeFields.js +12 -10
- package/dist/endpoints/ai.d.ts +0 -1
- package/dist/endpoints/ai.js +57 -35
- package/dist/endpoints/context.d.ts +0 -1
- package/dist/endpoints/context.js +85 -41
- package/dist/endpoints/index.d.ts +0 -1
- package/dist/endpoints/index.js +152 -77
- package/dist/endpoints/postcss.d.js +4 -0
- package/dist/endpoints/prompts.d.ts +0 -1
- package/dist/endpoints/prompts.js +80 -40
- package/dist/endpoints/styles.d.ts +0 -1
- package/dist/endpoints/styles.js +33 -37
- package/dist/exports/client.d.ts +0 -1
- package/dist/exports/client.js +1 -3
- package/dist/exports/rsc.d.ts +0 -1
- package/dist/exports/rsc.js +1 -3
- package/dist/fields/AlignmentField.d.ts +1 -2
- package/dist/fields/AlignmentField.js +92 -31
- package/dist/fields/AnimationField.d.ts +2 -3
- package/dist/fields/AnimationField.js +557 -85
- package/dist/fields/BackgroundField.d.ts +2 -3
- package/dist/fields/BackgroundField.js +753 -121
- package/dist/fields/BorderField.d.ts +2 -3
- package/dist/fields/BorderField.js +274 -74
- package/dist/fields/ColorPickerField.d.ts +2 -3
- package/dist/fields/ColorPickerField.js +209 -69
- package/dist/fields/ContentAlignmentField.d.ts +1 -2
- package/dist/fields/ContentAlignmentField.js +160 -76
- package/dist/fields/DimensionsField.d.ts +2 -3
- package/dist/fields/DimensionsField.js +574 -147
- package/dist/fields/FlexAlignmentField.d.ts +2 -3
- package/dist/fields/FlexAlignmentField.js +188 -52
- package/dist/fields/FolderPickerField.d.ts +8 -2
- package/dist/fields/FolderPickerField.js +287 -76
- package/dist/fields/GradientEditor.d.ts +2 -3
- package/dist/fields/GradientEditor.js +461 -87
- package/dist/fields/LockedField.d.ts +15 -3
- package/dist/fields/LockedField.js +179 -50
- package/dist/fields/MarginField.d.ts +2 -3
- package/dist/fields/MarginField.js +143 -47
- package/dist/fields/MediaField.d.ts +1 -2
- package/dist/fields/MediaField.js +687 -187
- package/dist/fields/PaddingField.d.ts +2 -3
- package/dist/fields/PaddingField.js +143 -47
- package/dist/fields/PageSegmentField.d.ts +15 -3
- package/dist/fields/PageSegmentField.js +155 -55
- package/dist/fields/ResetField.d.ts +1 -2
- package/dist/fields/ResetField.js +58 -32
- package/dist/fields/ResponsiveField.d.ts +1 -2
- package/dist/fields/ResponsiveField.js +232 -91
- package/dist/fields/ResponsiveVisibilityField.d.ts +2 -3
- package/dist/fields/ResponsiveVisibilityField.js +118 -37
- package/dist/fields/SizeField.d.ts +3 -4
- package/dist/fields/SizeField.js +225 -53
- package/dist/fields/SlugPreviewField.d.ts +8 -2
- package/dist/fields/SlugPreviewField.js +64 -17
- package/dist/fields/TemplateField.d.ts +1 -2
- package/dist/fields/TemplateField.js +361 -121
- package/dist/fields/TransformField.d.ts +2 -3
- package/dist/fields/TransformField.js +516 -82
- package/dist/fields/VerticalAlignmentField.d.ts +1 -2
- package/dist/fields/VerticalAlignmentField.js +92 -31
- package/dist/fields/WidthField.d.ts +2 -3
- package/dist/fields/WidthField.js +277 -82
- package/dist/fields/index.d.ts +41 -42
- package/dist/fields/index.js +36 -44
- package/dist/fields/richtext/controls/ColorPickerControl.d.ts +13 -3
- package/dist/fields/richtext/controls/ColorPickerControl.js +211 -48
- package/dist/fields/richtext/controls/DropdownPortal.d.ts +2 -3
- package/dist/fields/richtext/controls/DropdownPortal.js +35 -5
- package/dist/fields/richtext/controls/FontSizeControl.d.ts +9 -2
- package/dist/fields/richtext/controls/FontSizeControl.js +108 -25
- package/dist/fields/richtext/controls/HighlightControl.d.ts +12 -2
- package/dist/fields/richtext/controls/HighlightControl.js +53 -18
- package/dist/fields/richtext/controls/index.d.ts +5 -6
- package/dist/fields/richtext/controls/index.js +7 -12
- package/dist/fields/richtext/controls/shared.d.ts +0 -1
- package/dist/fields/richtext/controls/shared.js +107 -64
- package/dist/fields/richtext/createRichTextField.d.ts +18 -5
- package/dist/fields/richtext/createRichTextField.js +112 -27
- package/dist/fields/richtext/extensions/FontSize.d.ts +0 -1
- package/dist/fields/richtext/extensions/FontSize.js +25 -21
- package/dist/fields/richtext/extensions/index.d.ts +1 -2
- package/dist/fields/richtext/extensions/index.js +1 -3
- package/dist/fields/richtext/index.d.ts +6 -7
- package/dist/fields/richtext/index.js +7 -9
- package/dist/fields/shared.d.ts +1 -2
- package/dist/fields/shared.js +914 -479
- package/dist/hooks/index.d.ts +2 -3
- package/dist/hooks/index.js +2 -4
- package/dist/hooks/useResponsiveStyles.d.ts +1 -2
- package/dist/hooks/useResponsiveStyles.js +35 -33
- package/dist/hooks/useScrollAnimation.d.ts +0 -1
- package/dist/hooks/useScrollAnimation.js +25 -25
- package/dist/index.d.ts +4 -5
- package/dist/index.js +4 -6
- package/dist/layouts/LayoutWrapper.d.ts +3 -4
- package/dist/layouts/LayoutWrapper.js +114 -52
- package/dist/layouts/defaults.d.ts +1 -2
- package/dist/layouts/defaults.js +22 -32
- package/dist/layouts/index.d.ts +4 -5
- package/dist/layouts/index.js +4 -5
- package/dist/layouts/types.d.ts +0 -1
- package/dist/layouts/types.js +3 -3
- package/dist/layouts/utils.d.ts +1 -2
- package/dist/layouts/utils.js +31 -41
- package/dist/next/index.d.ts +0 -1
- package/dist/next/index.js +30 -35
- package/dist/plugin/collections/Pages.d.ts +2 -3
- package/dist/plugin/collections/Pages.js +45 -44
- package/dist/plugin/fields/index.d.ts +3 -4
- package/dist/plugin/fields/index.js +99 -79
- package/dist/plugin/fields/types.d.ts +1 -2
- package/dist/plugin/fields/types.js +25 -3
- package/dist/plugin/hooks/index.d.ts +1 -2
- package/dist/plugin/hooks/index.js +1 -3
- package/dist/plugin/hooks/isHomepageUnique.d.ts +0 -1
- package/dist/plugin/hooks/isHomepageUnique.js +27 -20
- package/dist/plugin/index.d.ts +8 -9
- package/dist/plugin/index.js +189 -189
- package/dist/render/HybridPageRenderer.d.ts +2 -3
- package/dist/render/HybridPageRenderer.js +57 -11
- package/dist/render/PageRenderer.d.ts +2 -3
- package/dist/render/PageRenderer.js +30 -15
- package/dist/render/PuckEditor.client.d.ts +1 -2
- package/dist/render/PuckEditor.client.js +32 -17
- package/dist/render/index.d.ts +5 -6
- package/dist/render/index.js +4 -7
- package/dist/styles/puck-dark-mode.css +101 -0
- package/dist/theme/context.d.ts +2 -3
- package/dist/theme/context.js +20 -19
- package/dist/theme/defaults.d.ts +1 -2
- package/dist/theme/defaults.js +82 -38
- package/dist/theme/example.d.ts +1 -2
- package/dist/theme/example.js +67 -31
- package/dist/theme/index.d.ts +5 -6
- package/dist/theme/index.js +5 -6
- package/dist/theme/types.d.ts +0 -1
- package/dist/theme/types.js +5 -3
- package/dist/theme/utils.d.ts +1 -2
- package/dist/theme/utils.js +23 -26
- package/dist/types/index.d.ts +6 -7
- package/dist/types/index.js +2 -2
- package/dist/utils/index.d.ts +2 -3
- package/dist/utils/index.js +12 -23
- package/dist/utils/migration.d.ts +1 -2
- package/dist/utils/migration.js +42 -50
- package/dist/utils/validation.d.ts +1 -2
- package/dist/utils/validation.js +35 -44
- package/dist/version.d.ts +1 -2
- package/dist/version.js +1 -2
- package/dist/views/PuckConfigContext.d.ts +1 -2
- package/dist/views/PuckConfigContext.js +24 -11
- package/dist/views/PuckEditorView.d.ts +1 -2
- package/dist/views/PuckEditorView.js +105 -39
- package/dist/views/index.d.ts +0 -1
- package/dist/views/index.js +1 -3
- package/package.json +62 -42
- package/dist/admin/EditWithPuckButton.d.ts.map +0 -1
- package/dist/admin/EditWithPuckButton.js.map +0 -1
- package/dist/admin/EditWithPuckCell.d.ts.map +0 -1
- package/dist/admin/EditWithPuckCell.js.map +0 -1
- package/dist/admin/PuckEditorView.d.ts.map +0 -1
- package/dist/admin/PuckEditorView.js.map +0 -1
- package/dist/admin/client.d.ts.map +0 -1
- package/dist/admin/client.js.map +0 -1
- package/dist/admin/generateAdminComponents.d.ts.map +0 -1
- package/dist/admin/generateAdminComponents.js.map +0 -1
- package/dist/admin/index.d.ts.map +0 -1
- package/dist/admin/index.js.map +0 -1
- package/dist/ai/collections/AiContext.d.ts.map +0 -1
- package/dist/ai/collections/AiContext.js.map +0 -1
- package/dist/ai/collections/AiPrompts.d.ts.map +0 -1
- package/dist/ai/collections/AiPrompts.js.map +0 -1
- package/dist/ai/createAiApiRoutes.d.ts.map +0 -1
- package/dist/ai/createAiApiRoutes.js.map +0 -1
- package/dist/ai/createAiGenerate.d.ts.map +0 -1
- package/dist/ai/createAiGenerate.js.map +0 -1
- package/dist/ai/createAiPlugin.d.ts.map +0 -1
- package/dist/ai/createAiPlugin.js.map +0 -1
- package/dist/ai/hooks/useAiContext.d.ts.map +0 -1
- package/dist/ai/hooks/useAiContext.js.map +0 -1
- package/dist/ai/hooks/useAiPrompts.d.ts.map +0 -1
- package/dist/ai/hooks/useAiPrompts.js.map +0 -1
- package/dist/ai/index.d.ts.map +0 -1
- package/dist/ai/index.js.map +0 -1
- package/dist/ai/plugins/ContextEditorPanel.d.ts.map +0 -1
- package/dist/ai/plugins/ContextEditorPanel.js.map +0 -1
- package/dist/ai/plugins/PromptEditorPanel.d.ts.map +0 -1
- package/dist/ai/plugins/PromptEditorPanel.js.map +0 -1
- package/dist/ai/plugins/contextEditorPlugin.d.ts.map +0 -1
- package/dist/ai/plugins/contextEditorPlugin.js.map +0 -1
- package/dist/ai/plugins/promptApiRoutes.d.ts.map +0 -1
- package/dist/ai/plugins/promptApiRoutes.js.map +0 -1
- package/dist/ai/plugins/promptEditorPlugin.d.ts.map +0 -1
- package/dist/ai/plugins/promptEditorPlugin.js.map +0 -1
- package/dist/ai/presets/componentAiDefaults.d.ts.map +0 -1
- package/dist/ai/presets/componentAiDefaults.js.map +0 -1
- package/dist/ai/presets/index.d.ts.map +0 -1
- package/dist/ai/presets/index.js.map +0 -1
- package/dist/ai/presets/instructions/interactive.d.ts.map +0 -1
- package/dist/ai/presets/instructions/interactive.js.map +0 -1
- package/dist/ai/presets/instructions/layout.d.ts.map +0 -1
- package/dist/ai/presets/instructions/layout.js.map +0 -1
- package/dist/ai/presets/instructions/media.d.ts.map +0 -1
- package/dist/ai/presets/instructions/media.js.map +0 -1
- package/dist/ai/presets/instructions/pagePatterns.d.ts.map +0 -1
- package/dist/ai/presets/instructions/pagePatterns.js.map +0 -1
- package/dist/ai/presets/instructions/schemas.d.ts.map +0 -1
- package/dist/ai/presets/instructions/schemas.js.map +0 -1
- package/dist/ai/presets/instructions/typography.d.ts.map +0 -1
- package/dist/ai/presets/instructions/typography.js.map +0 -1
- package/dist/ai/tools/index.d.ts.map +0 -1
- package/dist/ai/tools/index.js.map +0 -1
- package/dist/ai/types.d.ts.map +0 -1
- package/dist/ai/types.js.map +0 -1
- package/dist/ai/utils/injectAiConfig.d.ts.map +0 -1
- package/dist/ai/utils/injectAiConfig.js.map +0 -1
- package/dist/api/createPuckApiRoutes.d.ts.map +0 -1
- package/dist/api/createPuckApiRoutes.js.map +0 -1
- package/dist/api/createPuckApiRoutesVersions.d.ts.map +0 -1
- package/dist/api/createPuckApiRoutesVersions.js.map +0 -1
- package/dist/api/createPuckApiRoutesWithId.d.ts.map +0 -1
- package/dist/api/createPuckApiRoutesWithId.js.map +0 -1
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/index.js.map +0 -1
- package/dist/api/types.d.ts.map +0 -1
- package/dist/api/types.js.map +0 -1
- package/dist/api/utils/mapRootProps.d.ts.map +0 -1
- package/dist/api/utils/mapRootProps.js.map +0 -1
- package/dist/collections/Templates.d.ts.map +0 -1
- package/dist/collections/Templates.js.map +0 -1
- package/dist/components/AccordionClient.d.ts.map +0 -1
- package/dist/components/AccordionClient.js.map +0 -1
- package/dist/components/AnimatedWrapper.d.ts.map +0 -1
- package/dist/components/AnimatedWrapper.js.map +0 -1
- package/dist/components/exports.d.ts.map +0 -1
- package/dist/components/exports.js.map +0 -1
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/interactive/Accordion.d.ts.map +0 -1
- package/dist/components/interactive/Accordion.js.map +0 -1
- package/dist/components/interactive/Accordion.server.d.ts.map +0 -1
- package/dist/components/interactive/Accordion.server.js.map +0 -1
- package/dist/components/interactive/Button.d.ts.map +0 -1
- package/dist/components/interactive/Button.js.map +0 -1
- package/dist/components/interactive/Button.server.d.ts.map +0 -1
- package/dist/components/interactive/Button.server.js.map +0 -1
- package/dist/components/interactive/Card.d.ts.map +0 -1
- package/dist/components/interactive/Card.js.map +0 -1
- package/dist/components/interactive/Card.server.d.ts.map +0 -1
- package/dist/components/interactive/Card.server.js.map +0 -1
- package/dist/components/interactive/Divider.d.ts.map +0 -1
- package/dist/components/interactive/Divider.js.map +0 -1
- package/dist/components/interactive/Divider.server.d.ts.map +0 -1
- package/dist/components/interactive/Divider.server.js.map +0 -1
- package/dist/components/interactive/index.d.ts.map +0 -1
- package/dist/components/interactive/index.js.map +0 -1
- package/dist/components/layout/Container.d.ts.map +0 -1
- package/dist/components/layout/Container.js.map +0 -1
- package/dist/components/layout/Container.server.d.ts.map +0 -1
- package/dist/components/layout/Container.server.js.map +0 -1
- package/dist/components/layout/Flex.d.ts.map +0 -1
- package/dist/components/layout/Flex.js.map +0 -1
- package/dist/components/layout/Flex.server.d.ts.map +0 -1
- package/dist/components/layout/Flex.server.js.map +0 -1
- package/dist/components/layout/Grid.d.ts.map +0 -1
- package/dist/components/layout/Grid.js.map +0 -1
- package/dist/components/layout/Grid.server.d.ts.map +0 -1
- package/dist/components/layout/Grid.server.js.map +0 -1
- package/dist/components/layout/Section.d.ts.map +0 -1
- package/dist/components/layout/Section.js.map +0 -1
- package/dist/components/layout/Section.server.d.ts.map +0 -1
- package/dist/components/layout/Section.server.js.map +0 -1
- package/dist/components/layout/Spacer.d.ts.map +0 -1
- package/dist/components/layout/Spacer.js.map +0 -1
- package/dist/components/layout/Spacer.server.d.ts.map +0 -1
- package/dist/components/layout/Spacer.server.js.map +0 -1
- package/dist/components/layout/Template.d.ts.map +0 -1
- package/dist/components/layout/Template.js.map +0 -1
- package/dist/components/layout/Template.server.d.ts.map +0 -1
- package/dist/components/layout/Template.server.js.map +0 -1
- package/dist/components/layout/index.d.ts.map +0 -1
- package/dist/components/layout/index.js.map +0 -1
- package/dist/components/media/Image.d.ts.map +0 -1
- package/dist/components/media/Image.js.map +0 -1
- package/dist/components/media/Image.server.d.ts.map +0 -1
- package/dist/components/media/Image.server.js.map +0 -1
- package/dist/components/media/index.d.ts.map +0 -1
- package/dist/components/media/index.js.map +0 -1
- package/dist/components/typography/Heading.d.ts.map +0 -1
- package/dist/components/typography/Heading.js.map +0 -1
- package/dist/components/typography/Heading.server.d.ts.map +0 -1
- package/dist/components/typography/Heading.server.js.map +0 -1
- package/dist/components/typography/RichText.editor.d.ts.map +0 -1
- package/dist/components/typography/RichText.editor.js.map +0 -1
- package/dist/components/typography/RichText.server.d.ts.map +0 -1
- package/dist/components/typography/RichText.server.js.map +0 -1
- package/dist/components/typography/Text.d.ts.map +0 -1
- package/dist/components/typography/Text.js.map +0 -1
- package/dist/components/typography/Text.server.d.ts.map +0 -1
- package/dist/components/typography/Text.server.js.map +0 -1
- package/dist/components/typography/index.d.ts.map +0 -1
- package/dist/components/typography/index.js.map +0 -1
- package/dist/config/config.editor.d.ts.map +0 -1
- package/dist/config/config.editor.js.map +0 -1
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js.map +0 -1
- package/dist/config/merge.d.ts.map +0 -1
- package/dist/config/merge.js.map +0 -1
- package/dist/config/presets.d.ts.map +0 -1
- package/dist/config/presets.js.map +0 -1
- package/dist/config/types.d.ts.map +0 -1
- package/dist/config/types.js.map +0 -1
- package/dist/editor/PuckEditor.d.ts.map +0 -1
- package/dist/editor/PuckEditor.js.map +0 -1
- package/dist/editor/PuckEditorImpl.client.d.ts.map +0 -1
- package/dist/editor/PuckEditorImpl.client.js.map +0 -1
- package/dist/editor/components/DarkModeStyles.d.ts.map +0 -1
- package/dist/editor/components/DarkModeStyles.js.map +0 -1
- package/dist/editor/components/HeaderActions.d.ts.map +0 -1
- package/dist/editor/components/HeaderActions.js.map +0 -1
- package/dist/editor/components/IframeWrapper.d.ts.map +0 -1
- package/dist/editor/components/IframeWrapper.js.map +0 -1
- package/dist/editor/components/LoadingState.d.ts.map +0 -1
- package/dist/editor/components/LoadingState.js.map +0 -1
- package/dist/editor/components/PreviewModal.d.ts.map +0 -1
- package/dist/editor/components/PreviewModal.js.map +0 -1
- package/dist/editor/components/PreviewModeToggle.d.ts.map +0 -1
- package/dist/editor/components/PreviewModeToggle.js.map +0 -1
- package/dist/editor/components/VersionHistory.d.ts.map +0 -1
- package/dist/editor/components/VersionHistory.js.map +0 -1
- package/dist/editor/hooks/useDarkMode.d.ts.map +0 -1
- package/dist/editor/hooks/useDarkMode.js.map +0 -1
- package/dist/editor/hooks/useUnsavedChanges.d.ts.map +0 -1
- package/dist/editor/hooks/useUnsavedChanges.js.map +0 -1
- package/dist/editor/index.d.ts.map +0 -1
- package/dist/editor/index.js.map +0 -1
- package/dist/editor/plugins/VersionHistoryPanel.d.ts.map +0 -1
- package/dist/editor/plugins/VersionHistoryPanel.js.map +0 -1
- package/dist/editor/plugins/index.d.ts.map +0 -1
- package/dist/editor/plugins/index.js.map +0 -1
- package/dist/editor/plugins/versionHistoryPlugin.d.ts.map +0 -1
- package/dist/editor/plugins/versionHistoryPlugin.js.map +0 -1
- package/dist/editor/utils/detectPageTree.d.ts.map +0 -1
- package/dist/editor/utils/detectPageTree.js.map +0 -1
- package/dist/editor/utils/index.d.ts.map +0 -1
- package/dist/editor/utils/index.js.map +0 -1
- package/dist/editor/utils/injectPageTreeFields.d.ts.map +0 -1
- package/dist/editor/utils/injectPageTreeFields.js.map +0 -1
- package/dist/endpoints/ai.d.ts.map +0 -1
- package/dist/endpoints/ai.js.map +0 -1
- package/dist/endpoints/context.d.ts.map +0 -1
- package/dist/endpoints/context.js.map +0 -1
- package/dist/endpoints/index.d.ts.map +0 -1
- package/dist/endpoints/index.js.map +0 -1
- package/dist/endpoints/prompts.d.ts.map +0 -1
- package/dist/endpoints/prompts.js.map +0 -1
- package/dist/endpoints/styles.d.ts.map +0 -1
- package/dist/endpoints/styles.js.map +0 -1
- package/dist/exports/client.d.ts.map +0 -1
- package/dist/exports/client.js.map +0 -1
- package/dist/exports/rsc.d.ts.map +0 -1
- package/dist/exports/rsc.js.map +0 -1
- package/dist/fields/AlignmentField.d.ts.map +0 -1
- package/dist/fields/AlignmentField.js.map +0 -1
- package/dist/fields/AnimationField.d.ts.map +0 -1
- package/dist/fields/AnimationField.js.map +0 -1
- package/dist/fields/BackgroundField.d.ts.map +0 -1
- package/dist/fields/BackgroundField.js.map +0 -1
- package/dist/fields/BorderField.d.ts.map +0 -1
- package/dist/fields/BorderField.js.map +0 -1
- package/dist/fields/ColorPickerField.d.ts.map +0 -1
- package/dist/fields/ColorPickerField.js.map +0 -1
- package/dist/fields/ContentAlignmentField.d.ts.map +0 -1
- package/dist/fields/ContentAlignmentField.js.map +0 -1
- package/dist/fields/DimensionsField.d.ts.map +0 -1
- package/dist/fields/DimensionsField.js.map +0 -1
- package/dist/fields/FlexAlignmentField.d.ts.map +0 -1
- package/dist/fields/FlexAlignmentField.js.map +0 -1
- package/dist/fields/FolderPickerField.d.ts.map +0 -1
- package/dist/fields/FolderPickerField.js.map +0 -1
- package/dist/fields/GradientEditor.d.ts.map +0 -1
- package/dist/fields/GradientEditor.js.map +0 -1
- package/dist/fields/LockedField.d.ts.map +0 -1
- package/dist/fields/LockedField.js.map +0 -1
- package/dist/fields/MarginField.d.ts.map +0 -1
- package/dist/fields/MarginField.js.map +0 -1
- package/dist/fields/MediaField.d.ts.map +0 -1
- package/dist/fields/MediaField.js.map +0 -1
- package/dist/fields/PaddingField.d.ts.map +0 -1
- package/dist/fields/PaddingField.js.map +0 -1
- package/dist/fields/PageSegmentField.d.ts.map +0 -1
- package/dist/fields/PageSegmentField.js.map +0 -1
- package/dist/fields/ResetField.d.ts.map +0 -1
- package/dist/fields/ResetField.js.map +0 -1
- package/dist/fields/ResponsiveField.d.ts.map +0 -1
- package/dist/fields/ResponsiveField.js.map +0 -1
- package/dist/fields/ResponsiveVisibilityField.d.ts.map +0 -1
- package/dist/fields/ResponsiveVisibilityField.js.map +0 -1
- package/dist/fields/SizeField.d.ts.map +0 -1
- package/dist/fields/SizeField.js.map +0 -1
- package/dist/fields/SlugPreviewField.d.ts.map +0 -1
- package/dist/fields/SlugPreviewField.js.map +0 -1
- package/dist/fields/TemplateField.d.ts.map +0 -1
- package/dist/fields/TemplateField.js.map +0 -1
- package/dist/fields/TransformField.d.ts.map +0 -1
- package/dist/fields/TransformField.js.map +0 -1
- package/dist/fields/VerticalAlignmentField.d.ts.map +0 -1
- package/dist/fields/VerticalAlignmentField.js.map +0 -1
- package/dist/fields/WidthField.d.ts.map +0 -1
- package/dist/fields/WidthField.js.map +0 -1
- package/dist/fields/index.d.ts.map +0 -1
- package/dist/fields/index.js.map +0 -1
- package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +0 -1
- package/dist/fields/richtext/controls/ColorPickerControl.js.map +0 -1
- package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +0 -1
- package/dist/fields/richtext/controls/DropdownPortal.js.map +0 -1
- package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +0 -1
- package/dist/fields/richtext/controls/FontSizeControl.js.map +0 -1
- package/dist/fields/richtext/controls/HighlightControl.d.ts.map +0 -1
- package/dist/fields/richtext/controls/HighlightControl.js.map +0 -1
- package/dist/fields/richtext/controls/index.d.ts.map +0 -1
- package/dist/fields/richtext/controls/index.js.map +0 -1
- package/dist/fields/richtext/controls/shared.d.ts.map +0 -1
- package/dist/fields/richtext/controls/shared.js.map +0 -1
- package/dist/fields/richtext/createRichTextField.d.ts.map +0 -1
- package/dist/fields/richtext/createRichTextField.js.map +0 -1
- package/dist/fields/richtext/extensions/FontSize.d.ts.map +0 -1
- package/dist/fields/richtext/extensions/FontSize.js.map +0 -1
- package/dist/fields/richtext/extensions/index.d.ts.map +0 -1
- package/dist/fields/richtext/extensions/index.js.map +0 -1
- package/dist/fields/richtext/index.d.ts.map +0 -1
- package/dist/fields/richtext/index.js.map +0 -1
- package/dist/fields/shared.d.ts.map +0 -1
- package/dist/fields/shared.js.map +0 -1
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/useResponsiveStyles.d.ts.map +0 -1
- package/dist/hooks/useResponsiveStyles.js.map +0 -1
- package/dist/hooks/useScrollAnimation.d.ts.map +0 -1
- package/dist/hooks/useScrollAnimation.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/layouts/LayoutWrapper.d.ts.map +0 -1
- package/dist/layouts/LayoutWrapper.js.map +0 -1
- package/dist/layouts/defaults.d.ts.map +0 -1
- package/dist/layouts/defaults.js.map +0 -1
- package/dist/layouts/index.d.ts.map +0 -1
- package/dist/layouts/index.js.map +0 -1
- package/dist/layouts/types.d.ts.map +0 -1
- package/dist/layouts/types.js.map +0 -1
- package/dist/layouts/utils.d.ts.map +0 -1
- package/dist/layouts/utils.js.map +0 -1
- package/dist/next/index.d.ts.map +0 -1
- package/dist/next/index.js.map +0 -1
- package/dist/plugin/collections/Pages.d.ts.map +0 -1
- package/dist/plugin/collections/Pages.js.map +0 -1
- package/dist/plugin/fields/index.d.ts.map +0 -1
- package/dist/plugin/fields/index.js.map +0 -1
- package/dist/plugin/fields/types.d.ts.map +0 -1
- package/dist/plugin/fields/types.js.map +0 -1
- package/dist/plugin/hooks/index.d.ts.map +0 -1
- package/dist/plugin/hooks/index.js.map +0 -1
- package/dist/plugin/hooks/isHomepageUnique.d.ts.map +0 -1
- package/dist/plugin/hooks/isHomepageUnique.js.map +0 -1
- package/dist/plugin/index.d.ts.map +0 -1
- package/dist/plugin/index.js.map +0 -1
- package/dist/render/HybridPageRenderer.d.ts.map +0 -1
- package/dist/render/HybridPageRenderer.js.map +0 -1
- package/dist/render/PageRenderer.d.ts.map +0 -1
- package/dist/render/PageRenderer.js.map +0 -1
- package/dist/render/PuckEditor.client.d.ts.map +0 -1
- package/dist/render/PuckEditor.client.js.map +0 -1
- package/dist/render/index.d.ts.map +0 -1
- package/dist/render/index.js.map +0 -1
- package/dist/theme/context.d.ts.map +0 -1
- package/dist/theme/context.js.map +0 -1
- package/dist/theme/defaults.d.ts.map +0 -1
- package/dist/theme/defaults.js.map +0 -1
- package/dist/theme/example.d.ts.map +0 -1
- package/dist/theme/example.js.map +0 -1
- package/dist/theme/index.d.ts.map +0 -1
- package/dist/theme/index.js.map +0 -1
- package/dist/theme/types.d.ts.map +0 -1
- package/dist/theme/types.js.map +0 -1
- package/dist/theme/utils.d.ts.map +0 -1
- package/dist/theme/utils.js.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/migration.d.ts.map +0 -1
- package/dist/utils/migration.js.map +0 -1
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js.map +0 -1
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js.map +0 -1
- package/dist/views/PuckConfigContext.d.ts.map +0 -1
- package/dist/views/PuckConfigContext.js.map +0 -1
- package/dist/views/PuckEditorView.d.ts.map +0 -1
- package/dist/views/PuckEditorView.js.map +0 -1
- package/dist/views/index.d.ts.map +0 -1
- package/dist/views/index.js.map +0 -1
|
@@ -1,6 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Section Component - Server-safe Puck Configuration
|
|
3
|
+
*
|
|
4
|
+
* Full-width section with two-layer architecture:
|
|
5
|
+
* - Section layer (outer): Full-bleed background, border, padding, margin
|
|
6
|
+
* - Content layer (inner): Constrained content area with max-width, background, border, padding
|
|
7
|
+
*
|
|
8
|
+
* This is a server-safe version with minimal fields (only slot for content).
|
|
9
|
+
* For the full editor version with fields, use Section.tsx
|
|
10
|
+
*
|
|
11
|
+
* Responsive Controls:
|
|
12
|
+
* - contentDimensions: Different max-width/min-height at different breakpoints
|
|
13
|
+
* - sectionPadding: Different section padding at different breakpoints
|
|
14
|
+
* - contentPadding: Different content padding at different breakpoints
|
|
15
|
+
* - sectionMargin: Different margins at different breakpoints
|
|
16
|
+
* - visibility: Show/hide at different breakpoints
|
|
17
|
+
*/ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
|
+
import { cn, dimensionsValueToCSS, marginValueToCSS, paddingValueToCSS, borderValueToCSS, backgroundValueToCSS, responsiveValueToCSS, visibilityValueToCSS } from '../../fields/shared.js';
|
|
19
|
+
import { AnimatedWrapper } from '../AnimatedWrapper.js';
|
|
4
20
|
// Simple ID generator for server-side rendering
|
|
5
21
|
let idCounter = 0;
|
|
6
22
|
function generateUniqueId() {
|
|
@@ -13,13 +29,17 @@ const DEFAULT_SECTION_PADDING = {
|
|
|
13
29
|
bottom: 48,
|
|
14
30
|
left: 0,
|
|
15
31
|
unit: 'px',
|
|
16
|
-
linked: false
|
|
32
|
+
linked: false
|
|
17
33
|
};
|
|
18
34
|
// Default content dimensions - 1200px max-width centered
|
|
19
35
|
const DEFAULT_CONTENT_DIMENSIONS = {
|
|
20
36
|
mode: 'contained',
|
|
21
37
|
alignment: 'center',
|
|
22
|
-
maxWidth: {
|
|
38
|
+
maxWidth: {
|
|
39
|
+
value: 1200,
|
|
40
|
+
unit: 'px',
|
|
41
|
+
enabled: true
|
|
42
|
+
}
|
|
23
43
|
};
|
|
24
44
|
// Default content padding with standard horizontal spacing
|
|
25
45
|
const DEFAULT_CONTENT_PADDING = {
|
|
@@ -28,7 +48,7 @@ const DEFAULT_CONTENT_PADDING = {
|
|
|
28
48
|
bottom: 0,
|
|
29
49
|
left: 16,
|
|
30
50
|
unit: 'px',
|
|
31
|
-
linked: false
|
|
51
|
+
linked: false
|
|
32
52
|
};
|
|
33
53
|
const defaultProps = {
|
|
34
54
|
id: '',
|
|
@@ -37,24 +57,32 @@ const defaultProps = {
|
|
|
37
57
|
// Section layer defaults - padding gives sections proper spacing
|
|
38
58
|
sectionBackground: null,
|
|
39
59
|
sectionBorder: null,
|
|
40
|
-
sectionPadding: {
|
|
60
|
+
sectionPadding: {
|
|
61
|
+
xs: DEFAULT_SECTION_PADDING
|
|
62
|
+
},
|
|
41
63
|
sectionMargin: null,
|
|
42
64
|
// Content layer defaults - 1200px max-width so two-layer design is immediately visible
|
|
43
|
-
contentDimensions: {
|
|
65
|
+
contentDimensions: {
|
|
66
|
+
xs: DEFAULT_CONTENT_DIMENSIONS
|
|
67
|
+
},
|
|
44
68
|
contentBackground: null,
|
|
45
69
|
contentBorder: null,
|
|
46
|
-
contentPadding: {
|
|
70
|
+
contentPadding: {
|
|
71
|
+
xs: DEFAULT_CONTENT_PADDING
|
|
72
|
+
},
|
|
47
73
|
// Other
|
|
48
74
|
animation: null,
|
|
49
|
-
visibility: null
|
|
75
|
+
visibility: null
|
|
50
76
|
};
|
|
51
77
|
export const SectionConfig = {
|
|
52
78
|
label: 'Section',
|
|
53
79
|
fields: {
|
|
54
|
-
content: {
|
|
80
|
+
content: {
|
|
81
|
+
type: 'slot'
|
|
82
|
+
}
|
|
55
83
|
},
|
|
56
84
|
defaultProps,
|
|
57
|
-
render: ({ id, content: Content, semanticElement = 'section', sectionBackground, sectionBorder, sectionPadding, sectionMargin, contentDimensions, contentBackground, contentBorder, contentPadding, animation, visibility
|
|
85
|
+
render: ({ id, content: Content, semanticElement = 'section', sectionBackground, sectionBorder, sectionPadding, sectionMargin, contentDimensions, contentBackground, contentBorder, contentPadding, animation, visibility })=>{
|
|
58
86
|
// Dynamic element based on semanticElement prop
|
|
59
87
|
const Wrapper = semanticElement;
|
|
60
88
|
// Generate unique IDs for CSS targeting (server-safe)
|
|
@@ -66,7 +94,7 @@ export const SectionConfig = {
|
|
|
66
94
|
// === Section layer styles (outer, full-width) ===
|
|
67
95
|
const sectionBackgroundStyles = backgroundValueToCSS(sectionBackground);
|
|
68
96
|
const sectionStyles = {
|
|
69
|
-
...sectionBackgroundStyles
|
|
97
|
+
...sectionBackgroundStyles
|
|
70
98
|
};
|
|
71
99
|
// Section border
|
|
72
100
|
const sectionBorderStyles = borderValueToCSS(sectionBorder);
|
|
@@ -74,13 +102,17 @@ export const SectionConfig = {
|
|
|
74
102
|
Object.assign(sectionStyles, sectionBorderStyles);
|
|
75
103
|
}
|
|
76
104
|
// Section padding with responsive support
|
|
77
|
-
const sectionPaddingResult = responsiveValueToCSS(sectionPadding, (v)
|
|
105
|
+
const sectionPaddingResult = responsiveValueToCSS(sectionPadding, (v)=>({
|
|
106
|
+
padding: paddingValueToCSS(v)
|
|
107
|
+
}), sectionClass);
|
|
78
108
|
Object.assign(sectionStyles, sectionPaddingResult.baseStyles);
|
|
79
109
|
if (sectionPaddingResult.mediaQueryCSS) {
|
|
80
110
|
mediaQueries.push(sectionPaddingResult.mediaQueryCSS);
|
|
81
111
|
}
|
|
82
112
|
// Section margin with responsive support
|
|
83
|
-
const sectionMarginResult = responsiveValueToCSS(sectionMargin, (v)
|
|
113
|
+
const sectionMarginResult = responsiveValueToCSS(sectionMargin, (v)=>({
|
|
114
|
+
margin: marginValueToCSS(v)
|
|
115
|
+
}), sectionClass);
|
|
84
116
|
Object.assign(sectionStyles, sectionMarginResult.baseStyles);
|
|
85
117
|
if (sectionMarginResult.mediaQueryCSS) {
|
|
86
118
|
mediaQueries.push(sectionMarginResult.mediaQueryCSS);
|
|
@@ -93,7 +125,7 @@ export const SectionConfig = {
|
|
|
93
125
|
// === Content layer styles (inner, constrained) ===
|
|
94
126
|
const contentBackgroundStyles = backgroundValueToCSS(contentBackground);
|
|
95
127
|
const contentStyles = {
|
|
96
|
-
...contentBackgroundStyles
|
|
128
|
+
...contentBackgroundStyles
|
|
97
129
|
};
|
|
98
130
|
// Content dimensions with responsive support
|
|
99
131
|
const contentDimensionsResult = responsiveValueToCSS(contentDimensions, dimensionsValueToCSS, contentClass);
|
|
@@ -102,15 +134,13 @@ export const SectionConfig = {
|
|
|
102
134
|
mediaQueries.push(contentDimensionsResult.mediaQueryCSS);
|
|
103
135
|
}
|
|
104
136
|
// Check if minHeight is set - if so, we need flex layout to make slot expand
|
|
105
|
-
const hasMinHeight = (()
|
|
106
|
-
if (!contentDimensions)
|
|
107
|
-
return false;
|
|
137
|
+
const hasMinHeight = (()=>{
|
|
138
|
+
if (!contentDimensions) return false;
|
|
108
139
|
// Check if it's a responsive value
|
|
109
140
|
if (typeof contentDimensions === 'object' && 'xs' in contentDimensions) {
|
|
110
141
|
const responsiveDims = contentDimensions;
|
|
111
|
-
return Object.values(responsiveDims).some((v)
|
|
112
|
-
if (!v || typeof v !== 'object')
|
|
113
|
-
return false;
|
|
142
|
+
return Object.values(responsiveDims).some((v)=>{
|
|
143
|
+
if (!v || typeof v !== 'object') return false;
|
|
114
144
|
const dim = v;
|
|
115
145
|
return dim.minHeight?.enabled && dim.minHeight?.value > 0;
|
|
116
146
|
});
|
|
@@ -130,7 +160,9 @@ export const SectionConfig = {
|
|
|
130
160
|
Object.assign(contentStyles, contentBorderStyles);
|
|
131
161
|
}
|
|
132
162
|
// Content padding with responsive support
|
|
133
|
-
const contentPaddingResult = responsiveValueToCSS(contentPadding, (v)
|
|
163
|
+
const contentPaddingResult = responsiveValueToCSS(contentPadding, (v)=>({
|
|
164
|
+
padding: paddingValueToCSS(v)
|
|
165
|
+
}), contentClass);
|
|
134
166
|
Object.assign(contentStyles, contentPaddingResult.baseStyles);
|
|
135
167
|
if (contentPaddingResult.mediaQueryCSS) {
|
|
136
168
|
mediaQueries.push(contentPaddingResult.mediaQueryCSS);
|
|
@@ -144,13 +176,43 @@ export const SectionConfig = {
|
|
|
144
176
|
// Type assertion for Puck slot content
|
|
145
177
|
const ContentSlot = Content;
|
|
146
178
|
// When minHeight is set, wrap Content to ensure slot expands
|
|
147
|
-
const renderContent = ()
|
|
179
|
+
const renderContent = ()=>{
|
|
148
180
|
if (hasMinHeight) {
|
|
149
|
-
return
|
|
181
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
182
|
+
style: {
|
|
183
|
+
flex: 1,
|
|
184
|
+
display: 'flex',
|
|
185
|
+
flexDirection: 'column',
|
|
186
|
+
minHeight: 0
|
|
187
|
+
},
|
|
188
|
+
children: /*#__PURE__*/ _jsx(ContentSlot, {
|
|
189
|
+
style: {
|
|
190
|
+
flex: 1
|
|
191
|
+
}
|
|
192
|
+
})
|
|
193
|
+
});
|
|
150
194
|
}
|
|
151
|
-
return _jsx(ContentSlot, {});
|
|
195
|
+
return /*#__PURE__*/ _jsx(ContentSlot, {});
|
|
152
196
|
};
|
|
153
|
-
return
|
|
154
|
-
|
|
197
|
+
return /*#__PURE__*/ _jsxs(AnimatedWrapper, {
|
|
198
|
+
animation: animation,
|
|
199
|
+
children: [
|
|
200
|
+
allMediaQueryCSS && /*#__PURE__*/ _jsx("style", {
|
|
201
|
+
children: allMediaQueryCSS
|
|
202
|
+
}),
|
|
203
|
+
/*#__PURE__*/ _jsx(Wrapper, {
|
|
204
|
+
id: id || undefined,
|
|
205
|
+
className: sectionClasses,
|
|
206
|
+
style: sectionStyles,
|
|
207
|
+
children: hasContentStyles ? /*#__PURE__*/ _jsx("div", {
|
|
208
|
+
className: contentClasses,
|
|
209
|
+
style: contentStyles,
|
|
210
|
+
children: renderContent()
|
|
211
|
+
}) : /*#__PURE__*/ _jsx(ContentSlot, {
|
|
212
|
+
className: contentClasses
|
|
213
|
+
})
|
|
214
|
+
})
|
|
215
|
+
]
|
|
216
|
+
});
|
|
217
|
+
}
|
|
155
218
|
};
|
|
156
|
-
//# sourceMappingURL=Section.server.js.map
|
|
@@ -8,11 +8,10 @@
|
|
|
8
8
|
* - visibility: Show/hide at different breakpoints
|
|
9
9
|
*/
|
|
10
10
|
import type { ComponentConfig } from '@puckeditor/core';
|
|
11
|
-
import { type VisibilityValue } from '../../fields/shared';
|
|
11
|
+
import { type VisibilityValue } from '../../fields/shared.js';
|
|
12
12
|
export interface SpacerProps {
|
|
13
13
|
size: string;
|
|
14
14
|
direction: 'vertical' | 'horizontal' | 'both';
|
|
15
15
|
visibility: VisibilityValue | null;
|
|
16
16
|
}
|
|
17
17
|
export declare const SpacerConfig: ComponentConfig;
|
|
18
|
-
//# sourceMappingURL=Spacer.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Spacer Component - Puck Configuration
|
|
4
4
|
*
|
|
@@ -7,21 +7,47 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
7
7
|
*
|
|
8
8
|
* Responsive Controls:
|
|
9
9
|
* - visibility: Show/hide at different breakpoints
|
|
10
|
-
*/
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
|
|
10
|
+
*/ import { useId } from 'react';
|
|
11
|
+
import { cn, visibilityValueToCSS } from '../../fields/shared.js';
|
|
12
|
+
import { createResetField } from '../../fields/ResetField.js';
|
|
13
|
+
import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField.js';
|
|
15
14
|
const spacingOptions = [
|
|
16
|
-
{
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
{
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
15
|
+
{
|
|
16
|
+
label: '8px',
|
|
17
|
+
value: '8px'
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
label: '16px',
|
|
21
|
+
value: '16px'
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
label: '24px',
|
|
25
|
+
value: '24px'
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
label: '32px',
|
|
29
|
+
value: '32px'
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
label: '48px',
|
|
33
|
+
value: '48px'
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
label: '64px',
|
|
37
|
+
value: '64px'
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
label: '80px',
|
|
41
|
+
value: '80px'
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
label: '96px',
|
|
45
|
+
value: '96px'
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
label: '128px',
|
|
49
|
+
value: '128px'
|
|
50
|
+
}
|
|
25
51
|
];
|
|
26
52
|
// Tailwind height classes for predefined spacing options
|
|
27
53
|
const heightMap = {
|
|
@@ -33,7 +59,7 @@ const heightMap = {
|
|
|
33
59
|
'64px': 'h-16',
|
|
34
60
|
'80px': 'h-20',
|
|
35
61
|
'96px': 'h-24',
|
|
36
|
-
'128px': 'h-32'
|
|
62
|
+
'128px': 'h-32'
|
|
37
63
|
};
|
|
38
64
|
// Tailwind width classes for predefined spacing options
|
|
39
65
|
const widthMap = {
|
|
@@ -45,43 +71,56 @@ const widthMap = {
|
|
|
45
71
|
'64px': 'w-16',
|
|
46
72
|
'80px': 'w-20',
|
|
47
73
|
'96px': 'w-24',
|
|
48
|
-
'128px': 'w-32'
|
|
74
|
+
'128px': 'w-32'
|
|
49
75
|
};
|
|
50
76
|
const defaultProps = {
|
|
51
77
|
size: '24px',
|
|
52
78
|
direction: 'vertical',
|
|
53
|
-
visibility: null
|
|
79
|
+
visibility: null
|
|
54
80
|
};
|
|
55
81
|
export const SpacerConfig = {
|
|
56
82
|
label: 'Spacer',
|
|
57
83
|
fields: {
|
|
58
|
-
_reset: createResetField({
|
|
84
|
+
_reset: createResetField({
|
|
85
|
+
defaultProps
|
|
86
|
+
}),
|
|
59
87
|
// Responsive visibility control
|
|
60
|
-
visibility: createResponsiveVisibilityField({
|
|
88
|
+
visibility: createResponsiveVisibilityField({
|
|
89
|
+
label: 'Visibility'
|
|
90
|
+
}),
|
|
61
91
|
size: {
|
|
62
92
|
type: 'select',
|
|
63
93
|
label: 'Size',
|
|
64
|
-
options: spacingOptions
|
|
94
|
+
options: spacingOptions
|
|
65
95
|
},
|
|
66
96
|
direction: {
|
|
67
97
|
type: 'radio',
|
|
68
98
|
label: 'Direction',
|
|
69
99
|
options: [
|
|
70
|
-
{
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
100
|
+
{
|
|
101
|
+
label: 'Vertical',
|
|
102
|
+
value: 'vertical'
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
label: 'Horizontal',
|
|
106
|
+
value: 'horizontal'
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
label: 'Both',
|
|
110
|
+
value: 'both'
|
|
111
|
+
}
|
|
112
|
+
]
|
|
113
|
+
}
|
|
75
114
|
},
|
|
76
115
|
defaultProps,
|
|
77
|
-
render: ({ size, direction, visibility })
|
|
116
|
+
render: ({ size, direction, visibility })=>{
|
|
78
117
|
// Generate unique ID for CSS targeting
|
|
79
118
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
80
119
|
const uniqueId = useId().replace(/:/g, '');
|
|
81
120
|
const wrapperClass = `puck-spacer-${uniqueId}`;
|
|
82
121
|
// Visibility media queries
|
|
83
122
|
const visibilityCSS = visibilityValueToCSS(visibility, wrapperClass);
|
|
84
|
-
const getClasses = ()
|
|
123
|
+
const getClasses = ()=>{
|
|
85
124
|
const heightClass = heightMap[size] || 'h-6';
|
|
86
125
|
const widthClass = widthMap[size] || 'w-6';
|
|
87
126
|
if (direction === 'vertical') {
|
|
@@ -93,7 +132,16 @@ export const SpacerConfig = {
|
|
|
93
132
|
// both
|
|
94
133
|
return `block ${heightClass} ${widthClass}`;
|
|
95
134
|
};
|
|
96
|
-
return
|
|
97
|
-
|
|
135
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
136
|
+
children: [
|
|
137
|
+
visibilityCSS && /*#__PURE__*/ _jsx("style", {
|
|
138
|
+
children: visibilityCSS
|
|
139
|
+
}),
|
|
140
|
+
/*#__PURE__*/ _jsx("div", {
|
|
141
|
+
className: cn(getClasses(), wrapperClass),
|
|
142
|
+
"aria-hidden": "true"
|
|
143
|
+
})
|
|
144
|
+
]
|
|
145
|
+
});
|
|
146
|
+
}
|
|
98
147
|
};
|
|
99
|
-
//# sourceMappingURL=Spacer.js.map
|
|
@@ -11,11 +11,10 @@
|
|
|
11
11
|
* - visibility: Show/hide at different breakpoints
|
|
12
12
|
*/
|
|
13
13
|
import type { ComponentConfig } from '@puckeditor/core';
|
|
14
|
-
import { type VisibilityValue } from '../../fields/shared';
|
|
14
|
+
import { type VisibilityValue } from '../../fields/shared.js';
|
|
15
15
|
export interface SpacerProps {
|
|
16
16
|
size: string;
|
|
17
17
|
direction: 'vertical' | 'horizontal' | 'both';
|
|
18
18
|
visibility: VisibilityValue | null;
|
|
19
19
|
}
|
|
20
20
|
export declare const SpacerConfig: ComponentConfig<SpacerProps>;
|
|
21
|
-
//# sourceMappingURL=Spacer.server.d.ts.map
|
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Spacer Component - Server-safe Puck Configuration
|
|
3
|
+
*
|
|
4
|
+
* Simple spacing component for adding vertical or horizontal space.
|
|
5
|
+
* Uses Tailwind classes for layout and sizing from predefined options.
|
|
6
|
+
*
|
|
7
|
+
* This is a server-safe version with NO fields property.
|
|
8
|
+
* For the full editor version with fields, use Spacer.tsx
|
|
9
|
+
*
|
|
10
|
+
* Responsive Controls:
|
|
11
|
+
* - visibility: Show/hide at different breakpoints
|
|
12
|
+
*/ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
13
|
+
import { cn, visibilityValueToCSS } from '../../fields/shared.js';
|
|
3
14
|
// Simple ID generator for server-side rendering
|
|
4
15
|
let idCounter = 0;
|
|
5
16
|
function generateUniqueId() {
|
|
@@ -15,7 +26,7 @@ const heightMap = {
|
|
|
15
26
|
'64px': 'h-16',
|
|
16
27
|
'80px': 'h-20',
|
|
17
28
|
'96px': 'h-24',
|
|
18
|
-
'128px': 'h-32'
|
|
29
|
+
'128px': 'h-32'
|
|
19
30
|
};
|
|
20
31
|
// Tailwind width classes for predefined spacing options
|
|
21
32
|
const widthMap = {
|
|
@@ -27,23 +38,23 @@ const widthMap = {
|
|
|
27
38
|
'64px': 'w-16',
|
|
28
39
|
'80px': 'w-20',
|
|
29
40
|
'96px': 'w-24',
|
|
30
|
-
'128px': 'w-32'
|
|
41
|
+
'128px': 'w-32'
|
|
31
42
|
};
|
|
32
43
|
const defaultProps = {
|
|
33
44
|
size: '24px',
|
|
34
45
|
direction: 'vertical',
|
|
35
|
-
visibility: null
|
|
46
|
+
visibility: null
|
|
36
47
|
};
|
|
37
48
|
export const SpacerConfig = {
|
|
38
49
|
label: 'Spacer',
|
|
39
50
|
defaultProps,
|
|
40
|
-
render: ({ size, direction, visibility })
|
|
51
|
+
render: ({ size, direction, visibility })=>{
|
|
41
52
|
// Generate unique ID for CSS targeting (server-safe)
|
|
42
53
|
const uniqueId = generateUniqueId();
|
|
43
54
|
const wrapperClass = `puck-spacer-${uniqueId}`;
|
|
44
55
|
// Visibility media queries
|
|
45
56
|
const visibilityCSS = visibilityValueToCSS(visibility, wrapperClass);
|
|
46
|
-
const getClasses = ()
|
|
57
|
+
const getClasses = ()=>{
|
|
47
58
|
const heightClass = heightMap[size] || 'h-6';
|
|
48
59
|
const widthClass = widthMap[size] || 'w-6';
|
|
49
60
|
if (direction === 'vertical') {
|
|
@@ -55,7 +66,16 @@ export const SpacerConfig = {
|
|
|
55
66
|
// both
|
|
56
67
|
return `block ${heightClass} ${widthClass}`;
|
|
57
68
|
};
|
|
58
|
-
return
|
|
59
|
-
|
|
69
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
70
|
+
children: [
|
|
71
|
+
visibilityCSS && /*#__PURE__*/ _jsx("style", {
|
|
72
|
+
children: visibilityCSS
|
|
73
|
+
}),
|
|
74
|
+
/*#__PURE__*/ _jsx("div", {
|
|
75
|
+
className: cn(getClasses(), wrapperClass),
|
|
76
|
+
"aria-hidden": "true"
|
|
77
|
+
})
|
|
78
|
+
]
|
|
79
|
+
});
|
|
80
|
+
}
|
|
60
81
|
};
|
|
61
|
-
//# sourceMappingURL=Spacer.server.js.map
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* - visibility: Show/hide at different breakpoints
|
|
17
17
|
*/
|
|
18
18
|
import type { ComponentConfig } from '@puckeditor/core';
|
|
19
|
-
import { type PaddingValue, type DimensionsValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
|
|
19
|
+
import { type PaddingValue, type DimensionsValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared.js';
|
|
20
20
|
export interface TemplateProps {
|
|
21
21
|
/** Slot for nested components */
|
|
22
22
|
content: unknown;
|
|
@@ -32,4 +32,3 @@ export interface TemplateProps {
|
|
|
32
32
|
visibility: VisibilityValue | null;
|
|
33
33
|
}
|
|
34
34
|
export declare const TemplateConfig: ComponentConfig;
|
|
35
|
-
//# sourceMappingURL=Template.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Template Component - Puck Configuration
|
|
4
4
|
*
|
|
@@ -15,16 +15,15 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
15
15
|
* - customPadding: Different padding at different breakpoints
|
|
16
16
|
* - margin: Different margins at different breakpoints
|
|
17
17
|
* - visibility: Show/hide at different breakpoints
|
|
18
|
-
*/
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField';
|
|
18
|
+
*/ import { useId } from 'react';
|
|
19
|
+
import { cn, dimensionsValueToCSS, marginValueToCSS, paddingValueToCSS, responsiveValueToCSS, visibilityValueToCSS } from '../../fields/shared.js';
|
|
20
|
+
import { createResetField } from '../../fields/ResetField.js';
|
|
21
|
+
import { createTemplateField } from '../../fields/TemplateField.js';
|
|
22
|
+
import { createPaddingField } from '../../fields/PaddingField.js';
|
|
23
|
+
import { createMarginField } from '../../fields/MarginField.js';
|
|
24
|
+
import { createDimensionsField } from '../../fields/DimensionsField.js';
|
|
25
|
+
import { createResponsiveField } from '../../fields/ResponsiveField.js';
|
|
26
|
+
import { createResponsiveVisibilityField } from '../../fields/ResponsiveVisibilityField.js';
|
|
28
27
|
// Default values for responsive fields
|
|
29
28
|
const DEFAULT_PADDING = {
|
|
30
29
|
top: 0,
|
|
@@ -32,12 +31,16 @@ const DEFAULT_PADDING = {
|
|
|
32
31
|
bottom: 0,
|
|
33
32
|
left: 0,
|
|
34
33
|
unit: 'px',
|
|
35
|
-
linked: true
|
|
34
|
+
linked: true
|
|
36
35
|
};
|
|
37
36
|
const DEFAULT_DIMENSIONS = {
|
|
38
37
|
mode: 'full',
|
|
39
38
|
alignment: 'center',
|
|
40
|
-
maxWidth: {
|
|
39
|
+
maxWidth: {
|
|
40
|
+
value: 100,
|
|
41
|
+
unit: '%',
|
|
42
|
+
enabled: true
|
|
43
|
+
}
|
|
41
44
|
};
|
|
42
45
|
// =============================================================================
|
|
43
46
|
// Default Props
|
|
@@ -48,7 +51,7 @@ const defaultProps = {
|
|
|
48
51
|
dimensions: null,
|
|
49
52
|
customPadding: null,
|
|
50
53
|
margin: null,
|
|
51
|
-
visibility: null
|
|
54
|
+
visibility: null
|
|
52
55
|
};
|
|
53
56
|
// =============================================================================
|
|
54
57
|
// Component Configuration
|
|
@@ -56,33 +59,39 @@ const defaultProps = {
|
|
|
56
59
|
export const TemplateConfig = {
|
|
57
60
|
label: 'Template',
|
|
58
61
|
fields: {
|
|
59
|
-
_reset: createResetField({
|
|
60
|
-
|
|
62
|
+
_reset: createResetField({
|
|
63
|
+
defaultProps
|
|
64
|
+
}),
|
|
65
|
+
templateId: createTemplateField({
|
|
66
|
+
label: 'Template'
|
|
67
|
+
}),
|
|
61
68
|
content: {
|
|
62
|
-
type: 'slot'
|
|
69
|
+
type: 'slot'
|
|
63
70
|
},
|
|
64
71
|
// Responsive visibility control
|
|
65
|
-
visibility: createResponsiveVisibilityField({
|
|
72
|
+
visibility: createResponsiveVisibilityField({
|
|
73
|
+
label: 'Visibility'
|
|
74
|
+
}),
|
|
66
75
|
// Responsive dimensions
|
|
67
76
|
dimensions: createResponsiveField({
|
|
68
77
|
label: 'Dimensions (Responsive)',
|
|
69
|
-
innerField: (config)
|
|
70
|
-
defaultValue: DEFAULT_DIMENSIONS
|
|
78
|
+
innerField: (config)=>createDimensionsField(config),
|
|
79
|
+
defaultValue: DEFAULT_DIMENSIONS
|
|
71
80
|
}),
|
|
72
81
|
// Spacing (grouped at bottom) - Responsive
|
|
73
82
|
margin: createResponsiveField({
|
|
74
83
|
label: 'Margin (Responsive)',
|
|
75
|
-
innerField: (config)
|
|
76
|
-
defaultValue: DEFAULT_PADDING
|
|
84
|
+
innerField: (config)=>createMarginField(config),
|
|
85
|
+
defaultValue: DEFAULT_PADDING
|
|
77
86
|
}),
|
|
78
87
|
customPadding: createResponsiveField({
|
|
79
88
|
label: 'Padding (Responsive)',
|
|
80
|
-
innerField: (config)
|
|
81
|
-
defaultValue: DEFAULT_PADDING
|
|
82
|
-
})
|
|
89
|
+
innerField: (config)=>createPaddingField(config),
|
|
90
|
+
defaultValue: DEFAULT_PADDING
|
|
91
|
+
})
|
|
83
92
|
},
|
|
84
93
|
defaultProps,
|
|
85
|
-
render: ({ content: Content, dimensions, customPadding, margin, visibility })
|
|
94
|
+
render: ({ content: Content, dimensions, customPadding, margin, visibility })=>{
|
|
86
95
|
// Generate unique IDs for CSS targeting
|
|
87
96
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
88
97
|
const uniqueId = useId().replace(/:/g, '');
|
|
@@ -93,13 +102,17 @@ export const TemplateConfig = {
|
|
|
93
102
|
// Build wrapper styles
|
|
94
103
|
const wrapperStyles = {};
|
|
95
104
|
// Add padding with responsive support
|
|
96
|
-
const paddingResult = responsiveValueToCSS(customPadding, (v)
|
|
105
|
+
const paddingResult = responsiveValueToCSS(customPadding, (v)=>({
|
|
106
|
+
padding: paddingValueToCSS(v)
|
|
107
|
+
}), wrapperClass);
|
|
97
108
|
Object.assign(wrapperStyles, paddingResult.baseStyles);
|
|
98
109
|
if (paddingResult.mediaQueryCSS) {
|
|
99
110
|
mediaQueries.push(paddingResult.mediaQueryCSS);
|
|
100
111
|
}
|
|
101
112
|
// Add margin with responsive support
|
|
102
|
-
const marginResult = responsiveValueToCSS(margin, (v)
|
|
113
|
+
const marginResult = responsiveValueToCSS(margin, (v)=>({
|
|
114
|
+
margin: marginValueToCSS(v)
|
|
115
|
+
}), wrapperClass);
|
|
103
116
|
Object.assign(wrapperStyles, marginResult.baseStyles);
|
|
104
117
|
if (marginResult.mediaQueryCSS) {
|
|
105
118
|
mediaQueries.push(marginResult.mediaQueryCSS);
|
|
@@ -118,7 +131,20 @@ export const TemplateConfig = {
|
|
|
118
131
|
const allMediaQueryCSS = mediaQueries.join('\n');
|
|
119
132
|
// Content is a slot component that Puck provides
|
|
120
133
|
// It renders all the nested components within this template
|
|
121
|
-
return
|
|
122
|
-
|
|
134
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
135
|
+
children: [
|
|
136
|
+
allMediaQueryCSS && /*#__PURE__*/ _jsx("style", {
|
|
137
|
+
children: allMediaQueryCSS
|
|
138
|
+
}),
|
|
139
|
+
/*#__PURE__*/ _jsx("div", {
|
|
140
|
+
className: cn('template-wrapper', wrapperClass),
|
|
141
|
+
style: Object.keys(wrapperStyles).length > 0 ? wrapperStyles : undefined,
|
|
142
|
+
children: /*#__PURE__*/ _jsx(Content, {
|
|
143
|
+
className: contentClass,
|
|
144
|
+
style: dimensionsResult.baseStyles
|
|
145
|
+
})
|
|
146
|
+
})
|
|
147
|
+
]
|
|
148
|
+
});
|
|
149
|
+
}
|
|
123
150
|
};
|
|
124
|
-
//# sourceMappingURL=Template.js.map
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* - visibility: Show/hide at different breakpoints
|
|
14
14
|
*/
|
|
15
15
|
import type { ComponentConfig } from '@puckeditor/core';
|
|
16
|
-
import { type PaddingValue, type DimensionsValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared';
|
|
16
|
+
import { type PaddingValue, type DimensionsValue, type ResponsiveValue, type VisibilityValue } from '../../fields/shared.js';
|
|
17
17
|
export interface TemplateProps {
|
|
18
18
|
/** Slot for nested components */
|
|
19
19
|
content: unknown;
|
|
@@ -29,4 +29,3 @@ export interface TemplateProps {
|
|
|
29
29
|
visibility: VisibilityValue | null;
|
|
30
30
|
}
|
|
31
31
|
export declare const TemplateServerConfig: ComponentConfig;
|
|
32
|
-
//# sourceMappingURL=Template.server.d.ts.map
|