@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.
- package/README.md +79 -1
- package/dist/admin/EditWithPuckButton.d.ts +1 -1
- package/dist/admin/EditWithPuckButton.d.ts.map +1 -1
- package/dist/admin/EditWithPuckButton.js +65 -25
- package/dist/admin/EditWithPuckButton.js.map +1 -1
- package/dist/admin/EditWithPuckCell.js +43 -13
- package/dist/admin/EditWithPuckCell.js.map +1 -1
- package/dist/admin/PuckEditorView.d.ts +1 -1
- package/dist/admin/PuckEditorView.d.ts.map +1 -1
- package/dist/admin/PuckEditorView.js +118 -32
- package/dist/admin/PuckEditorView.js.map +1 -1
- package/dist/admin/client.d.ts +2 -2
- package/dist/admin/client.d.ts.map +1 -1
- package/dist/admin/client.js +4 -4
- package/dist/admin/client.js.map +1 -1
- package/dist/admin/generateAdminComponents.js +7 -7
- package/dist/admin/generateAdminComponents.js.map +1 -1
- package/dist/admin/index.d.ts +5 -5
- package/dist/admin/index.d.ts.map +1 -1
- package/dist/admin/index.js +3 -2
- package/dist/admin/index.js.map +1 -1
- package/dist/ai/collections/AiContext.js +56 -29
- package/dist/ai/collections/AiContext.js.map +1 -1
- package/dist/ai/collections/AiPrompts.js +24 -19
- package/dist/ai/collections/AiPrompts.js.map +1 -1
- package/dist/ai/createAiApiRoutes.js +28 -19
- package/dist/ai/createAiApiRoutes.js.map +1 -1
- package/dist/ai/createAiGenerate.js +7 -8
- package/dist/ai/createAiGenerate.js.map +1 -1
- package/dist/ai/createAiPlugin.js +7 -9
- package/dist/ai/createAiPlugin.js.map +1 -1
- package/dist/ai/hooks/useAiContext.js +50 -39
- package/dist/ai/hooks/useAiContext.js.map +1 -1
- package/dist/ai/hooks/useAiPrompts.js +33 -25
- package/dist/ai/hooks/useAiPrompts.js.map +1 -1
- package/dist/ai/index.js +9 -10
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/plugins/ContextEditorPanel.d.ts +1 -1
- package/dist/ai/plugins/ContextEditorPanel.d.ts.map +1 -1
- package/dist/ai/plugins/ContextEditorPanel.js +399 -107
- package/dist/ai/plugins/ContextEditorPanel.js.map +1 -1
- package/dist/ai/plugins/PromptEditorPanel.d.ts +1 -1
- package/dist/ai/plugins/PromptEditorPanel.d.ts.map +1 -1
- package/dist/ai/plugins/PromptEditorPanel.js +237 -51
- package/dist/ai/plugins/PromptEditorPanel.js.map +1 -1
- package/dist/ai/plugins/contextEditorPlugin.js +12 -5
- package/dist/ai/plugins/contextEditorPlugin.js.map +1 -1
- package/dist/ai/plugins/promptApiRoutes.js +119 -50
- package/dist/ai/plugins/promptApiRoutes.js.map +1 -1
- package/dist/ai/plugins/promptEditorPlugin.js +12 -5
- package/dist/ai/plugins/promptEditorPlugin.js.map +1 -1
- package/dist/ai/presets/componentAiDefaults.js +108 -83
- package/dist/ai/presets/componentAiDefaults.js.map +1 -1
- package/dist/ai/presets/index.js +12 -18
- package/dist/ai/presets/index.js.map +1 -1
- package/dist/ai/presets/instructions/interactive.js +85 -75
- package/dist/ai/presets/instructions/interactive.js.map +1 -1
- package/dist/ai/presets/instructions/layout.js +122 -117
- package/dist/ai/presets/instructions/layout.js.map +1 -1
- package/dist/ai/presets/instructions/media.js +31 -29
- package/dist/ai/presets/instructions/media.js.map +1 -1
- package/dist/ai/presets/instructions/pagePatterns.js +4 -6
- package/dist/ai/presets/instructions/pagePatterns.js.map +1 -1
- package/dist/ai/presets/instructions/schemas.js +495 -137
- package/dist/ai/presets/instructions/schemas.js.map +1 -1
- package/dist/ai/presets/instructions/typography.js +38 -33
- package/dist/ai/presets/instructions/typography.js.map +1 -1
- package/dist/ai/tools/index.js +92 -55
- package/dist/ai/tools/index.js.map +1 -1
- package/dist/ai/types.js +7 -1
- package/dist/ai/types.js.map +1 -1
- package/dist/ai/utils/injectAiConfig.js +33 -40
- package/dist/ai/utils/injectAiConfig.js.map +1 -1
- package/dist/api/createPuckApiRoutes.d.ts +1 -1
- package/dist/api/createPuckApiRoutes.d.ts.map +1 -1
- package/dist/api/createPuckApiRoutes.js +123 -65
- package/dist/api/createPuckApiRoutes.js.map +1 -1
- package/dist/api/createPuckApiRoutesVersions.d.ts +1 -1
- package/dist/api/createPuckApiRoutesVersions.d.ts.map +1 -1
- package/dist/api/createPuckApiRoutesVersions.js +88 -37
- package/dist/api/createPuckApiRoutesVersions.js.map +1 -1
- package/dist/api/createPuckApiRoutesWithId.d.ts +1 -1
- package/dist/api/createPuckApiRoutesWithId.d.ts.map +1 -1
- package/dist/api/createPuckApiRoutesWithId.js +166 -72
- package/dist/api/createPuckApiRoutesWithId.js.map +1 -1
- package/dist/api/index.d.ts +5 -5
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +6 -6
- package/dist/api/index.js.map +1 -1
- package/dist/api/payload-config.d.js +15 -0
- package/dist/api/payload-config.d.js.map +1 -0
- package/dist/api/types.js +4 -1
- package/dist/api/types.js.map +1 -1
- package/dist/api/utils/mapRootProps.d.ts +1 -1
- package/dist/api/utils/mapRootProps.d.ts.map +1 -1
- package/dist/api/utils/mapRootProps.js +77 -44
- package/dist/api/utils/mapRootProps.js.map +1 -1
- package/dist/collections/Templates.js +24 -20
- package/dist/collections/Templates.js.map +1 -1
- package/dist/components/AccordionClient.d.ts +2 -2
- package/dist/components/AccordionClient.d.ts.map +1 -1
- package/dist/components/AccordionClient.js +81 -22
- package/dist/components/AccordionClient.js.map +1 -1
- package/dist/components/AnimatedWrapper.d.ts +2 -2
- package/dist/components/AnimatedWrapper.d.ts.map +1 -1
- package/dist/components/AnimatedWrapper.js +31 -16
- package/dist/components/AnimatedWrapper.js.map +1 -1
- package/dist/components/exports.js +2 -2
- package/dist/components/exports.js.map +1 -1
- package/dist/components/index.d.ts +5 -5
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +7 -7
- package/dist/components/index.js.map +1 -1
- package/dist/components/interactive/Accordion.d.ts +1 -1
- package/dist/components/interactive/Accordion.d.ts.map +1 -1
- package/dist/components/interactive/Accordion.js +149 -55
- package/dist/components/interactive/Accordion.js.map +1 -1
- package/dist/components/interactive/Accordion.server.d.ts +1 -1
- package/dist/components/interactive/Accordion.server.d.ts.map +1 -1
- package/dist/components/interactive/Accordion.server.js +25 -7
- package/dist/components/interactive/Accordion.server.js.map +1 -1
- package/dist/components/interactive/Button.d.ts +3 -3
- package/dist/components/interactive/Button.d.ts.map +1 -1
- package/dist/components/interactive/Button.js +89 -43
- package/dist/components/interactive/Button.js.map +1 -1
- package/dist/components/interactive/Button.server.d.ts +2 -2
- package/dist/components/interactive/Button.server.d.ts.map +1 -1
- package/dist/components/interactive/Button.server.js +40 -20
- package/dist/components/interactive/Button.server.js.map +1 -1
- package/dist/components/interactive/Card.d.ts +3 -3
- package/dist/components/interactive/Card.d.ts.map +1 -1
- package/dist/components/interactive/Card.js +131 -39
- package/dist/components/interactive/Card.js.map +1 -1
- package/dist/components/interactive/Card.server.d.ts +3 -3
- package/dist/components/interactive/Card.server.d.ts.map +1 -1
- package/dist/components/interactive/Card.server.js +72 -11
- package/dist/components/interactive/Card.server.js.map +1 -1
- package/dist/components/interactive/Divider.d.ts +1 -1
- package/dist/components/interactive/Divider.d.ts.map +1 -1
- package/dist/components/interactive/Divider.js +54 -26
- package/dist/components/interactive/Divider.js.map +1 -1
- package/dist/components/interactive/Divider.server.d.ts +1 -1
- package/dist/components/interactive/Divider.server.d.ts.map +1 -1
- package/dist/components/interactive/Divider.server.js +28 -12
- package/dist/components/interactive/Divider.server.js.map +1 -1
- package/dist/components/interactive/index.d.ts +4 -4
- package/dist/components/interactive/index.d.ts.map +1 -1
- package/dist/components/interactive/index.js +5 -5
- package/dist/components/interactive/index.js.map +1 -1
- package/dist/components/layout/Container.d.ts +1 -1
- package/dist/components/layout/Container.d.ts.map +1 -1
- package/dist/components/layout/Container.js +101 -47
- package/dist/components/layout/Container.js.map +1 -1
- package/dist/components/layout/Container.server.d.ts +1 -1
- package/dist/components/layout/Container.server.d.ts.map +1 -1
- package/dist/components/layout/Container.server.js +67 -19
- package/dist/components/layout/Container.server.js.map +1 -1
- package/dist/components/layout/Flex.d.ts +2 -2
- package/dist/components/layout/Flex.d.ts.map +1 -1
- package/dist/components/layout/Flex.js +124 -55
- package/dist/components/layout/Flex.js.map +1 -1
- package/dist/components/layout/Flex.server.d.ts +1 -1
- package/dist/components/layout/Flex.server.d.ts.map +1 -1
- package/dist/components/layout/Flex.server.js +50 -14
- package/dist/components/layout/Flex.server.js.map +1 -1
- package/dist/components/layout/Grid.d.ts +1 -1
- package/dist/components/layout/Grid.d.ts.map +1 -1
- package/dist/components/layout/Grid.js +93 -44
- package/dist/components/layout/Grid.js.map +1 -1
- package/dist/components/layout/Grid.server.d.ts +1 -1
- package/dist/components/layout/Grid.server.d.ts.map +1 -1
- package/dist/components/layout/Grid.server.js +56 -14
- package/dist/components/layout/Grid.server.js.map +1 -1
- package/dist/components/layout/Section.d.ts +1 -1
- package/dist/components/layout/Section.d.ts.map +1 -1
- package/dist/components/layout/Section.js +147 -64
- package/dist/components/layout/Section.js.map +1 -1
- package/dist/components/layout/Section.server.d.ts +1 -1
- package/dist/components/layout/Section.server.d.ts.map +1 -1
- package/dist/components/layout/Section.server.js +92 -28
- package/dist/components/layout/Section.server.js.map +1 -1
- package/dist/components/layout/Spacer.d.ts +1 -1
- package/dist/components/layout/Spacer.d.ts.map +1 -1
- package/dist/components/layout/Spacer.js +80 -30
- package/dist/components/layout/Spacer.js.map +1 -1
- package/dist/components/layout/Spacer.server.d.ts +1 -1
- package/dist/components/layout/Spacer.server.d.ts.map +1 -1
- package/dist/components/layout/Spacer.server.js +31 -9
- package/dist/components/layout/Spacer.server.js.map +1 -1
- package/dist/components/layout/Template.d.ts +1 -1
- package/dist/components/layout/Template.d.ts.map +1 -1
- package/dist/components/layout/Template.js +58 -30
- package/dist/components/layout/Template.js.map +1 -1
- package/dist/components/layout/Template.server.d.ts +1 -1
- package/dist/components/layout/Template.server.d.ts.map +1 -1
- package/dist/components/layout/Template.server.js +43 -11
- package/dist/components/layout/Template.server.js.map +1 -1
- package/dist/components/layout/index.d.ts +8 -8
- package/dist/components/layout/index.d.ts.map +1 -1
- package/dist/components/layout/index.js +8 -8
- package/dist/components/layout/index.js.map +1 -1
- package/dist/components/media/Image.d.ts +3 -3
- package/dist/components/media/Image.d.ts.map +1 -1
- package/dist/components/media/Image.js +122 -39
- package/dist/components/media/Image.js.map +1 -1
- package/dist/components/media/Image.server.d.ts +3 -3
- package/dist/components/media/Image.server.d.ts.map +1 -1
- package/dist/components/media/Image.server.js +76 -13
- package/dist/components/media/Image.server.js.map +1 -1
- package/dist/components/media/index.d.ts +1 -1
- package/dist/components/media/index.d.ts.map +1 -1
- package/dist/components/media/index.js +2 -2
- package/dist/components/media/index.js.map +1 -1
- package/dist/components/typography/Heading.d.ts +2 -2
- package/dist/components/typography/Heading.d.ts.map +1 -1
- package/dist/components/typography/Heading.js +45 -25
- package/dist/components/typography/Heading.js.map +1 -1
- package/dist/components/typography/Heading.server.d.ts +2 -2
- package/dist/components/typography/Heading.server.d.ts.map +1 -1
- package/dist/components/typography/Heading.server.js +16 -10
- package/dist/components/typography/Heading.server.js.map +1 -1
- package/dist/components/typography/RichText.editor.d.ts +1 -1
- package/dist/components/typography/RichText.editor.d.ts.map +1 -1
- package/dist/components/typography/RichText.editor.js +44 -19
- package/dist/components/typography/RichText.editor.js.map +1 -1
- package/dist/components/typography/RichText.server.d.ts +2 -2
- package/dist/components/typography/RichText.server.d.ts.map +1 -1
- package/dist/components/typography/RichText.server.js +33 -14
- package/dist/components/typography/RichText.server.js.map +1 -1
- package/dist/components/typography/Text.d.ts +2 -2
- package/dist/components/typography/Text.d.ts.map +1 -1
- package/dist/components/typography/Text.js +49 -23
- package/dist/components/typography/Text.js.map +1 -1
- package/dist/components/typography/Text.server.d.ts +2 -2
- package/dist/components/typography/Text.server.d.ts.map +1 -1
- package/dist/components/typography/Text.server.js +21 -8
- package/dist/components/typography/Text.server.js.map +1 -1
- package/dist/components/typography/index.d.ts +4 -4
- package/dist/components/typography/index.d.ts.map +1 -1
- package/dist/components/typography/index.js +5 -5
- package/dist/components/typography/index.js.map +1 -1
- package/dist/config/config.editor.d.ts +3 -3
- package/dist/config/config.editor.d.ts.map +1 -1
- package/dist/config/config.editor.js +119 -54
- package/dist/config/config.editor.js.map +1 -1
- package/dist/config/index.d.ts +4 -4
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +62 -35
- package/dist/config/index.js.map +1 -1
- package/dist/config/merge.d.ts +1 -1
- package/dist/config/merge.d.ts.map +1 -1
- package/dist/config/merge.js +23 -26
- package/dist/config/merge.js.map +1 -1
- package/dist/config/presets.d.ts +4 -4
- package/dist/config/presets.js +195 -75
- package/dist/config/presets.js.map +1 -1
- package/dist/config/types.js +6 -2
- package/dist/config/types.js.map +1 -1
- package/dist/editor/PuckEditor.d.ts +12 -4
- package/dist/editor/PuckEditor.d.ts.map +1 -1
- package/dist/editor/PuckEditor.js +168 -67
- package/dist/editor/PuckEditor.js.map +1 -1
- package/dist/editor/PuckEditorImpl.client.d.ts +4 -4
- package/dist/editor/PuckEditorImpl.client.d.ts.map +1 -1
- package/dist/editor/PuckEditorImpl.client.js +304 -152
- package/dist/editor/PuckEditorImpl.client.js.map +1 -1
- package/dist/editor/components/DarkModeStyles.js +11 -12
- package/dist/editor/components/DarkModeStyles.js.map +1 -1
- package/dist/editor/components/HeaderActions.js +308 -64
- package/dist/editor/components/HeaderActions.js.map +1 -1
- package/dist/editor/components/IframeWrapper.d.ts +1 -1
- package/dist/editor/components/IframeWrapper.d.ts.map +1 -1
- package/dist/editor/components/IframeWrapper.js +82 -58
- package/dist/editor/components/IframeWrapper.js.map +1 -1
- package/dist/editor/components/LoadingState.d.ts +1 -1
- package/dist/editor/components/LoadingState.d.ts.map +1 -1
- package/dist/editor/components/LoadingState.js +17 -3
- package/dist/editor/components/LoadingState.js.map +1 -1
- package/dist/editor/components/PreviewModal.js +234 -78
- package/dist/editor/components/PreviewModal.js.map +1 -1
- package/dist/editor/components/PreviewModeToggle.js +43 -15
- package/dist/editor/components/PreviewModeToggle.js.map +1 -1
- package/dist/editor/components/VersionHistory.js +219 -71
- package/dist/editor/components/VersionHistory.js.map +1 -1
- package/dist/editor/hooks/useDarkMode.js +36 -23
- package/dist/editor/hooks/useDarkMode.js.map +1 -1
- package/dist/editor/hooks/useUnsavedChanges.js +8 -8
- package/dist/editor/hooks/useUnsavedChanges.js.map +1 -1
- package/dist/editor/index.js +5 -6
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/plugins/VersionHistoryPanel.js +236 -75
- package/dist/editor/plugins/VersionHistoryPanel.js.map +1 -1
- package/dist/editor/plugins/index.js +4 -4
- package/dist/editor/plugins/index.js.map +1 -1
- package/dist/editor/plugins/versionHistoryPlugin.js +10 -8
- package/dist/editor/plugins/versionHistoryPlugin.js.map +1 -1
- package/dist/editor/utils/detectPageTree.js +5 -5
- package/dist/editor/utils/detectPageTree.js.map +1 -1
- package/dist/editor/utils/index.js +1 -0
- package/dist/editor/utils/index.js.map +1 -1
- package/dist/editor/utils/injectPageTreeFields.js +13 -9
- package/dist/editor/utils/injectPageTreeFields.js.map +1 -1
- package/dist/endpoints/ai.js +58 -34
- package/dist/endpoints/ai.js.map +1 -1
- package/dist/endpoints/context.js +86 -40
- package/dist/endpoints/context.js.map +1 -1
- package/dist/endpoints/index.js +153 -76
- package/dist/endpoints/index.js.map +1 -1
- package/dist/endpoints/postcss.d.js +5 -0
- package/dist/endpoints/postcss.d.js.map +1 -0
- package/dist/endpoints/prompts.js +81 -39
- package/dist/endpoints/prompts.js.map +1 -1
- package/dist/endpoints/styles.js +34 -36
- package/dist/endpoints/styles.js.map +1 -1
- package/dist/exports/client.js +2 -2
- package/dist/exports/client.js.map +1 -1
- package/dist/exports/rsc.js +2 -2
- package/dist/exports/rsc.js.map +1 -1
- package/dist/fields/AlignmentField.d.ts +1 -1
- package/dist/fields/AlignmentField.d.ts.map +1 -1
- package/dist/fields/AlignmentField.js +93 -30
- package/dist/fields/AlignmentField.js.map +1 -1
- package/dist/fields/AnimationField.d.ts +2 -2
- package/dist/fields/AnimationField.d.ts.map +1 -1
- package/dist/fields/AnimationField.js +558 -84
- package/dist/fields/AnimationField.js.map +1 -1
- package/dist/fields/BackgroundField.d.ts +2 -2
- package/dist/fields/BackgroundField.d.ts.map +1 -1
- package/dist/fields/BackgroundField.js +754 -120
- package/dist/fields/BackgroundField.js.map +1 -1
- package/dist/fields/BorderField.d.ts +2 -2
- package/dist/fields/BorderField.d.ts.map +1 -1
- package/dist/fields/BorderField.js +275 -73
- package/dist/fields/BorderField.js.map +1 -1
- package/dist/fields/ColorPickerField.d.ts +2 -2
- package/dist/fields/ColorPickerField.d.ts.map +1 -1
- package/dist/fields/ColorPickerField.js +210 -68
- package/dist/fields/ColorPickerField.js.map +1 -1
- package/dist/fields/ContentAlignmentField.d.ts +1 -1
- package/dist/fields/ContentAlignmentField.d.ts.map +1 -1
- package/dist/fields/ContentAlignmentField.js +161 -75
- package/dist/fields/ContentAlignmentField.js.map +1 -1
- package/dist/fields/DimensionsField.d.ts +2 -2
- package/dist/fields/DimensionsField.d.ts.map +1 -1
- package/dist/fields/DimensionsField.js +575 -146
- package/dist/fields/DimensionsField.js.map +1 -1
- package/dist/fields/FlexAlignmentField.d.ts +2 -2
- package/dist/fields/FlexAlignmentField.d.ts.map +1 -1
- package/dist/fields/FlexAlignmentField.js +189 -51
- package/dist/fields/FlexAlignmentField.js.map +1 -1
- package/dist/fields/FolderPickerField.d.ts +8 -1
- package/dist/fields/FolderPickerField.d.ts.map +1 -1
- package/dist/fields/FolderPickerField.js +288 -75
- package/dist/fields/FolderPickerField.js.map +1 -1
- package/dist/fields/GradientEditor.d.ts +2 -2
- package/dist/fields/GradientEditor.d.ts.map +1 -1
- package/dist/fields/GradientEditor.js +462 -86
- package/dist/fields/GradientEditor.js.map +1 -1
- package/dist/fields/LockedField.d.ts +15 -2
- package/dist/fields/LockedField.d.ts.map +1 -1
- package/dist/fields/LockedField.js +180 -49
- package/dist/fields/LockedField.js.map +1 -1
- package/dist/fields/MarginField.d.ts +2 -2
- package/dist/fields/MarginField.d.ts.map +1 -1
- package/dist/fields/MarginField.js +144 -46
- package/dist/fields/MarginField.js.map +1 -1
- package/dist/fields/MediaField.d.ts +1 -1
- package/dist/fields/MediaField.d.ts.map +1 -1
- package/dist/fields/MediaField.js +688 -186
- package/dist/fields/MediaField.js.map +1 -1
- package/dist/fields/PaddingField.d.ts +2 -2
- package/dist/fields/PaddingField.d.ts.map +1 -1
- package/dist/fields/PaddingField.js +144 -46
- package/dist/fields/PaddingField.js.map +1 -1
- package/dist/fields/PageSegmentField.d.ts +15 -2
- package/dist/fields/PageSegmentField.d.ts.map +1 -1
- package/dist/fields/PageSegmentField.js +156 -54
- package/dist/fields/PageSegmentField.js.map +1 -1
- package/dist/fields/ResetField.d.ts +1 -1
- package/dist/fields/ResetField.d.ts.map +1 -1
- package/dist/fields/ResetField.js +59 -31
- package/dist/fields/ResetField.js.map +1 -1
- package/dist/fields/ResponsiveField.d.ts +1 -1
- package/dist/fields/ResponsiveField.d.ts.map +1 -1
- package/dist/fields/ResponsiveField.js +233 -90
- package/dist/fields/ResponsiveField.js.map +1 -1
- package/dist/fields/ResponsiveVisibilityField.d.ts +2 -2
- package/dist/fields/ResponsiveVisibilityField.d.ts.map +1 -1
- package/dist/fields/ResponsiveVisibilityField.js +119 -36
- package/dist/fields/ResponsiveVisibilityField.js.map +1 -1
- package/dist/fields/SizeField.d.ts +3 -3
- package/dist/fields/SizeField.d.ts.map +1 -1
- package/dist/fields/SizeField.js +226 -52
- package/dist/fields/SizeField.js.map +1 -1
- package/dist/fields/SlugPreviewField.d.ts +8 -1
- package/dist/fields/SlugPreviewField.d.ts.map +1 -1
- package/dist/fields/SlugPreviewField.js +65 -16
- package/dist/fields/SlugPreviewField.js.map +1 -1
- package/dist/fields/TemplateField.d.ts +1 -1
- package/dist/fields/TemplateField.d.ts.map +1 -1
- package/dist/fields/TemplateField.js +362 -120
- package/dist/fields/TemplateField.js.map +1 -1
- package/dist/fields/TransformField.d.ts +2 -2
- package/dist/fields/TransformField.d.ts.map +1 -1
- package/dist/fields/TransformField.js +517 -81
- package/dist/fields/TransformField.js.map +1 -1
- package/dist/fields/VerticalAlignmentField.d.ts +1 -1
- package/dist/fields/VerticalAlignmentField.d.ts.map +1 -1
- package/dist/fields/VerticalAlignmentField.js +93 -30
- package/dist/fields/VerticalAlignmentField.js.map +1 -1
- package/dist/fields/WidthField.d.ts +2 -2
- package/dist/fields/WidthField.d.ts.map +1 -1
- package/dist/fields/WidthField.js +278 -81
- package/dist/fields/WidthField.js.map +1 -1
- package/dist/fields/index.d.ts +41 -41
- package/dist/fields/index.d.ts.map +1 -1
- package/dist/fields/index.js +37 -43
- package/dist/fields/index.js.map +1 -1
- package/dist/fields/richtext/controls/ColorPickerControl.d.ts +13 -2
- package/dist/fields/richtext/controls/ColorPickerControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/ColorPickerControl.js +212 -47
- package/dist/fields/richtext/controls/ColorPickerControl.js.map +1 -1
- package/dist/fields/richtext/controls/DropdownPortal.d.ts +2 -2
- package/dist/fields/richtext/controls/DropdownPortal.d.ts.map +1 -1
- package/dist/fields/richtext/controls/DropdownPortal.js +36 -4
- package/dist/fields/richtext/controls/DropdownPortal.js.map +1 -1
- package/dist/fields/richtext/controls/FontSizeControl.d.ts +9 -1
- package/dist/fields/richtext/controls/FontSizeControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/FontSizeControl.js +109 -24
- package/dist/fields/richtext/controls/FontSizeControl.js.map +1 -1
- package/dist/fields/richtext/controls/HighlightControl.d.ts +12 -1
- package/dist/fields/richtext/controls/HighlightControl.d.ts.map +1 -1
- package/dist/fields/richtext/controls/HighlightControl.js +54 -17
- package/dist/fields/richtext/controls/HighlightControl.js.map +1 -1
- package/dist/fields/richtext/controls/index.d.ts +5 -5
- package/dist/fields/richtext/controls/index.d.ts.map +1 -1
- package/dist/fields/richtext/controls/index.js +8 -11
- package/dist/fields/richtext/controls/index.js.map +1 -1
- package/dist/fields/richtext/controls/shared.js +108 -63
- package/dist/fields/richtext/controls/shared.js.map +1 -1
- package/dist/fields/richtext/createRichTextField.d.ts +18 -4
- package/dist/fields/richtext/createRichTextField.d.ts.map +1 -1
- package/dist/fields/richtext/createRichTextField.js +113 -26
- package/dist/fields/richtext/createRichTextField.js.map +1 -1
- package/dist/fields/richtext/extensions/FontSize.js +26 -20
- package/dist/fields/richtext/extensions/FontSize.js.map +1 -1
- package/dist/fields/richtext/extensions/index.d.ts +1 -1
- package/dist/fields/richtext/extensions/index.d.ts.map +1 -1
- package/dist/fields/richtext/extensions/index.js +2 -2
- package/dist/fields/richtext/extensions/index.js.map +1 -1
- package/dist/fields/richtext/index.d.ts +6 -6
- package/dist/fields/richtext/index.d.ts.map +1 -1
- package/dist/fields/richtext/index.js +8 -8
- package/dist/fields/richtext/index.js.map +1 -1
- package/dist/fields/shared.d.ts +1 -1
- package/dist/fields/shared.d.ts.map +1 -1
- package/dist/fields/shared.js +915 -478
- package/dist/fields/shared.js.map +1 -1
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +3 -3
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useResponsiveStyles.d.ts +1 -1
- package/dist/hooks/useResponsiveStyles.d.ts.map +1 -1
- package/dist/hooks/useResponsiveStyles.js +36 -32
- package/dist/hooks/useResponsiveStyles.js.map +1 -1
- package/dist/hooks/useScrollAnimation.js +26 -24
- package/dist/hooks/useScrollAnimation.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/layouts/LayoutWrapper.d.ts +3 -3
- package/dist/layouts/LayoutWrapper.d.ts.map +1 -1
- package/dist/layouts/LayoutWrapper.js +115 -51
- package/dist/layouts/LayoutWrapper.js.map +1 -1
- package/dist/layouts/defaults.d.ts +1 -1
- package/dist/layouts/defaults.d.ts.map +1 -1
- package/dist/layouts/defaults.js +23 -31
- package/dist/layouts/defaults.js.map +1 -1
- package/dist/layouts/index.d.ts +4 -4
- package/dist/layouts/index.d.ts.map +1 -1
- package/dist/layouts/index.js +5 -4
- package/dist/layouts/index.js.map +1 -1
- package/dist/layouts/types.js +4 -2
- package/dist/layouts/types.js.map +1 -1
- package/dist/layouts/utils.d.ts +1 -1
- package/dist/layouts/utils.d.ts.map +1 -1
- package/dist/layouts/utils.js +32 -40
- package/dist/layouts/utils.js.map +1 -1
- package/dist/next/index.js +31 -34
- package/dist/next/index.js.map +1 -1
- package/dist/plugin/collections/Pages.d.ts +2 -2
- package/dist/plugin/collections/Pages.d.ts.map +1 -1
- package/dist/plugin/collections/Pages.js +46 -43
- package/dist/plugin/collections/Pages.js.map +1 -1
- package/dist/plugin/fields/index.d.ts +3 -3
- package/dist/plugin/fields/index.d.ts.map +1 -1
- package/dist/plugin/fields/index.js +100 -78
- package/dist/plugin/fields/index.js.map +1 -1
- package/dist/plugin/fields/types.d.ts +1 -1
- package/dist/plugin/fields/types.d.ts.map +1 -1
- package/dist/plugin/fields/types.js +26 -2
- package/dist/plugin/fields/types.js.map +1 -1
- package/dist/plugin/hooks/index.d.ts +1 -1
- package/dist/plugin/hooks/index.d.ts.map +1 -1
- package/dist/plugin/hooks/index.js +2 -2
- package/dist/plugin/hooks/index.js.map +1 -1
- package/dist/plugin/hooks/isHomepageUnique.js +28 -19
- package/dist/plugin/hooks/isHomepageUnique.js.map +1 -1
- package/dist/plugin/index.d.ts +8 -8
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +192 -188
- package/dist/plugin/index.js.map +1 -1
- package/dist/render/HybridPageRenderer.d.ts +2 -2
- package/dist/render/HybridPageRenderer.d.ts.map +1 -1
- package/dist/render/HybridPageRenderer.js +58 -10
- package/dist/render/HybridPageRenderer.js.map +1 -1
- package/dist/render/PageRenderer.d.ts +2 -2
- package/dist/render/PageRenderer.d.ts.map +1 -1
- package/dist/render/PageRenderer.js +31 -14
- package/dist/render/PageRenderer.js.map +1 -1
- package/dist/render/PuckEditor.client.d.ts +1 -1
- package/dist/render/PuckEditor.client.d.ts.map +1 -1
- package/dist/render/PuckEditor.client.js +33 -16
- package/dist/render/PuckEditor.client.js.map +1 -1
- package/dist/render/index.d.ts +5 -5
- package/dist/render/index.d.ts.map +1 -1
- package/dist/render/index.js +5 -6
- package/dist/render/index.js.map +1 -1
- package/dist/styles/puck-dark-mode.css +101 -0
- package/dist/theme/context.d.ts +2 -2
- package/dist/theme/context.d.ts.map +1 -1
- package/dist/theme/context.js +21 -18
- package/dist/theme/context.js.map +1 -1
- package/dist/theme/defaults.d.ts +1 -1
- package/dist/theme/defaults.d.ts.map +1 -1
- package/dist/theme/defaults.js +83 -37
- package/dist/theme/defaults.js.map +1 -1
- package/dist/theme/example.d.ts +1 -1
- package/dist/theme/example.d.ts.map +1 -1
- package/dist/theme/example.js +68 -30
- package/dist/theme/example.js.map +1 -1
- package/dist/theme/index.d.ts +5 -5
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +6 -5
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/types.js +6 -2
- package/dist/theme/types.js.map +1 -1
- package/dist/theme/utils.d.ts +1 -1
- package/dist/theme/utils.d.ts.map +1 -1
- package/dist/theme/utils.js +24 -25
- package/dist/theme/utils.js.map +1 -1
- package/dist/types/index.d.ts +42 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +13 -22
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/migration.d.ts +1 -1
- package/dist/utils/migration.d.ts.map +1 -1
- package/dist/utils/migration.js +43 -49
- package/dist/utils/migration.js.map +1 -1
- package/dist/utils/validation.d.ts +1 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +36 -43
- package/dist/utils/validation.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +2 -1
- package/dist/version.js.map +1 -1
- package/dist/views/PuckConfigContext.d.ts +1 -1
- package/dist/views/PuckConfigContext.d.ts.map +1 -1
- package/dist/views/PuckConfigContext.js +25 -10
- package/dist/views/PuckConfigContext.js.map +1 -1
- package/dist/views/PuckEditorView.d.ts +1 -1
- package/dist/views/PuckEditorView.d.ts.map +1 -1
- package/dist/views/PuckEditorView.js +137 -41
- package/dist/views/PuckEditorView.js.map +1 -1
- package/dist/views/index.js +2 -2
- package/dist/views/index.js.map +1 -1
- package/package.json +62 -42
|
@@ -5,27 +5,71 @@
|
|
|
5
5
|
* to the corresponding Payload collection fields.
|
|
6
6
|
*
|
|
7
7
|
* SEO fields use the official @payloadcms/plugin-seo convention: meta.title, meta.description
|
|
8
|
-
*/
|
|
9
|
-
export const DEFAULT_ROOT_PROPS_MAPPINGS = [
|
|
8
|
+
*/ export const DEFAULT_ROOT_PROPS_MAPPINGS = [
|
|
10
9
|
// Core page fields
|
|
11
|
-
{
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
{
|
|
10
|
+
{
|
|
11
|
+
from: 'title',
|
|
12
|
+
to: 'title'
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
from: 'slug',
|
|
16
|
+
to: 'slug'
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
from: 'pageLayout',
|
|
20
|
+
to: 'pageLayout'
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
from: 'pageType',
|
|
24
|
+
to: 'pageType'
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
from: 'isHomepage',
|
|
28
|
+
to: 'isHomepage'
|
|
29
|
+
},
|
|
16
30
|
// Page-tree integration fields
|
|
17
|
-
{
|
|
18
|
-
|
|
31
|
+
{
|
|
32
|
+
from: 'folder',
|
|
33
|
+
to: 'folder'
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
from: 'pageSegment',
|
|
37
|
+
to: 'pageSegment'
|
|
38
|
+
},
|
|
19
39
|
// SEO/Meta fields (uses official @payloadcms/plugin-seo convention)
|
|
20
|
-
{
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
{
|
|
40
|
+
{
|
|
41
|
+
from: 'metaTitle',
|
|
42
|
+
to: 'meta.title'
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
from: 'metaDescription',
|
|
46
|
+
to: 'meta.description'
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
from: 'noindex',
|
|
50
|
+
to: 'meta.noindex'
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
from: 'nofollow',
|
|
54
|
+
to: 'meta.nofollow'
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
from: 'excludeFromSitemap',
|
|
58
|
+
to: 'meta.excludeFromSitemap'
|
|
59
|
+
},
|
|
25
60
|
// Conversion tracking fields
|
|
26
|
-
{
|
|
27
|
-
|
|
28
|
-
|
|
61
|
+
{
|
|
62
|
+
from: 'isConversionPage',
|
|
63
|
+
to: 'conversionTracking.isConversionPage'
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
from: 'conversionType',
|
|
67
|
+
to: 'conversionTracking.conversionType'
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
from: 'conversionValue',
|
|
71
|
+
to: 'conversionTracking.conversionValue'
|
|
72
|
+
}
|
|
29
73
|
];
|
|
30
74
|
/**
|
|
31
75
|
* Set a nested value in an object using dot notation path
|
|
@@ -36,11 +80,10 @@ export const DEFAULT_ROOT_PROPS_MAPPINGS = [
|
|
|
36
80
|
* setNestedValue(obj, 'meta.title', 'My Title')
|
|
37
81
|
* // Result: { meta: { title: 'My Title' } }
|
|
38
82
|
* ```
|
|
39
|
-
*/
|
|
40
|
-
export function setNestedValue(obj, path, value) {
|
|
83
|
+
*/ export function setNestedValue(obj, path, value) {
|
|
41
84
|
const keys = path.split('.');
|
|
42
85
|
let current = obj;
|
|
43
|
-
for
|
|
86
|
+
for(let i = 0; i < keys.length - 1; i++){
|
|
44
87
|
const key = keys[i];
|
|
45
88
|
if (!(key in current) || typeof current[key] !== 'object') {
|
|
46
89
|
current[key] = {};
|
|
@@ -58,11 +101,10 @@ export function setNestedValue(obj, path, value) {
|
|
|
58
101
|
* const obj = { meta: { title: 'My Title' } }
|
|
59
102
|
* getNestedValue(obj, 'meta.title') // 'My Title'
|
|
60
103
|
* ```
|
|
61
|
-
*/
|
|
62
|
-
export function getNestedValue(obj, path) {
|
|
104
|
+
*/ export function getNestedValue(obj, path) {
|
|
63
105
|
const keys = path.split('.');
|
|
64
106
|
let current = obj;
|
|
65
|
-
for (const key of keys)
|
|
107
|
+
for (const key of keys){
|
|
66
108
|
if (current === null || current === undefined) {
|
|
67
109
|
return undefined;
|
|
68
110
|
}
|
|
@@ -78,19 +120,18 @@ export function getNestedValue(obj, path) {
|
|
|
78
120
|
*
|
|
79
121
|
* @param customMappings - Custom mappings to merge with defaults
|
|
80
122
|
* @returns Merged array of mappings with duplicates resolved (custom wins)
|
|
81
|
-
*/
|
|
82
|
-
export function mergeMappings(customMappings) {
|
|
123
|
+
*/ export function mergeMappings(customMappings) {
|
|
83
124
|
if (!customMappings || customMappings.length === 0) {
|
|
84
125
|
return DEFAULT_ROOT_PROPS_MAPPINGS;
|
|
85
126
|
}
|
|
86
127
|
// Create a map to track unique mappings by 'from' field
|
|
87
128
|
const mappingMap = new Map();
|
|
88
129
|
// Add defaults first
|
|
89
|
-
for (const mapping of DEFAULT_ROOT_PROPS_MAPPINGS)
|
|
130
|
+
for (const mapping of DEFAULT_ROOT_PROPS_MAPPINGS){
|
|
90
131
|
mappingMap.set(mapping.from, mapping);
|
|
91
132
|
}
|
|
92
133
|
// Custom mappings override defaults
|
|
93
|
-
for (const mapping of customMappings)
|
|
134
|
+
for (const mapping of customMappings){
|
|
94
135
|
mappingMap.set(mapping.from, mapping);
|
|
95
136
|
}
|
|
96
137
|
return Array.from(mappingMap.values());
|
|
@@ -122,11 +163,10 @@ export function mergeMappings(customMappings) {
|
|
|
122
163
|
* // },
|
|
123
164
|
* // }
|
|
124
165
|
* ```
|
|
125
|
-
*/
|
|
126
|
-
export function mapRootPropsToPayloadFields(rootProps, customMappings) {
|
|
166
|
+
*/ export function mapRootPropsToPayloadFields(rootProps, customMappings) {
|
|
127
167
|
const mappings = mergeMappings(customMappings);
|
|
128
168
|
const result = {};
|
|
129
|
-
for (const mapping of mappings)
|
|
169
|
+
for (const mapping of mappings){
|
|
130
170
|
const value = rootProps[mapping.from];
|
|
131
171
|
// Skip undefined values to avoid overwriting existing data
|
|
132
172
|
if (value === undefined) {
|
|
@@ -145,21 +185,14 @@ export function mapRootPropsToPayloadFields(rootProps, customMappings) {
|
|
|
145
185
|
* @param target - The target object to merge into
|
|
146
186
|
* @param source - The source object to merge from
|
|
147
187
|
* @returns The merged object (target is modified in place)
|
|
148
|
-
*/
|
|
149
|
-
|
|
150
|
-
for (const key of Object.keys(source)) {
|
|
188
|
+
*/ export function deepMerge(target, source) {
|
|
189
|
+
for (const key of Object.keys(source)){
|
|
151
190
|
const sourceValue = source[key];
|
|
152
191
|
const targetValue = target[key];
|
|
153
|
-
if (sourceValue !== null &&
|
|
154
|
-
typeof sourceValue === 'object' &&
|
|
155
|
-
!Array.isArray(sourceValue) &&
|
|
156
|
-
targetValue !== null &&
|
|
157
|
-
typeof targetValue === 'object' &&
|
|
158
|
-
!Array.isArray(targetValue)) {
|
|
192
|
+
if (sourceValue !== null && typeof sourceValue === 'object' && !Array.isArray(sourceValue) && targetValue !== null && typeof targetValue === 'object' && !Array.isArray(targetValue)) {
|
|
159
193
|
// Recursively merge nested objects
|
|
160
194
|
target[key] = deepMerge(targetValue, sourceValue);
|
|
161
|
-
}
|
|
162
|
-
else {
|
|
195
|
+
} else {
|
|
163
196
|
// Direct assignment for non-object values or arrays
|
|
164
197
|
target[key] = sourceValue;
|
|
165
198
|
}
|
|
@@ -183,11 +216,10 @@ export function deepMerge(target, source) {
|
|
|
183
216
|
* const rootProps = mapPayloadFieldsToRootProps(page)
|
|
184
217
|
* // Result: { title: 'My Page', isHomepage: true, metaTitle: 'SEO Title' }
|
|
185
218
|
* ```
|
|
186
|
-
*/
|
|
187
|
-
export function mapPayloadFieldsToRootProps(doc, customMappings) {
|
|
219
|
+
*/ export function mapPayloadFieldsToRootProps(doc, customMappings) {
|
|
188
220
|
const mappings = mergeMappings(customMappings);
|
|
189
221
|
const result = {};
|
|
190
|
-
for (const mapping of mappings)
|
|
222
|
+
for (const mapping of mappings){
|
|
191
223
|
// Get value from Payload field (supports dot notation for nested fields)
|
|
192
224
|
const value = getNestedValue(doc, mapping.to);
|
|
193
225
|
// Skip undefined values
|
|
@@ -199,4 +231,5 @@ export function mapPayloadFieldsToRootProps(doc, customMappings) {
|
|
|
199
231
|
}
|
|
200
232
|
return result;
|
|
201
233
|
}
|
|
234
|
+
|
|
202
235
|
//# sourceMappingURL=mapRootProps.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapRootProps.js","sourceRoot":"","sources":["../../../src/api/utils/mapRootProps.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAuB;IAC7D,mBAAmB;IACnB,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;IAC9B,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;IAC5B,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE;IACxC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;IACpC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE;IAExC,+BAA+B;IAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;IAChC,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE;IAE1C,oEAAoE;IACpE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE;IACvC,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,kBAAkB,EAAE;IACnD,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE;IACvC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE;IACzC,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,yBAAyB,EAAE;IAE7D,6BAA6B;IAC7B,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,qCAAqC,EAAE;IACvE,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,mCAAmC,EAAE;IACnE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,oCAAoC,EAAE;CACtE,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAC5B,GAA4B,EAC5B,IAAY,EACZ,KAAc;IAEd,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,OAAO,GAAG,GAAG,CAAA;IAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAA4B,CAAA;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA;AAC3B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAC5B,GAA4B,EAC5B,IAAY;IAEZ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,OAAO,GAAY,GAAG,CAAA;IAE1B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9C,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,OAAO,GAAI,OAAmC,CAAC,GAAG,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC3B,cAAmC;IAEnC,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,2BAA2B,CAAA;IACpC,CAAC;IAED,wDAAwD;IACxD,MAAM,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAA;IAEtD,qBAAqB;IACrB,KAAK,MAAM,OAAO,IAAI,2BAA2B,EAAE,CAAC;QAClD,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC;IAED,oCAAoC;IACpC,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;AACxC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,2BAA2B,CACzC,SAAkC,EAClC,cAAmC;IAEnC,MAAM,QAAQ,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IAC9C,MAAM,MAAM,GAA4B,EAAE,CAAA;IAE1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAErC,2DAA2D;QAC3D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAQ;QACV,CAAC;QAED,mCAAmC;QACnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAE7E,mCAAmC;QACnC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAA;IACtD,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,MAA+B,EAC/B,MAA+B;IAE/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAE/B,IACE,WAAW,KAAK,IAAI;YACpB,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW,KAAK,IAAI;YACpB,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,CAAC;YACD,mCAAmC;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB,WAAsC,EACtC,WAAsC,CACvC,CAAA;QACH,CAAC;aAAM,CAAC;YACN,oDAAoD;YACpD,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAA4B,EAC5B,cAAmC;IAEnC,MAAM,QAAQ,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IAC9C,MAAM,MAAM,GAA4B,EAAE,CAAA;IAE1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,yEAAyE;QACzE,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QAE7C,wBAAwB;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAQ;QACV,CAAC;QAED,gDAAgD;QAChD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAA;IAC9B,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
1
|
+
{"version":3,"sources":["../../../src/api/utils/mapRootProps.ts"],"sourcesContent":["import type { RootPropsMapping } from '../types.js'\n\n/**\n * Default mappings from Puck root.props to Payload fields\n *\n * These mappings sync common page properties from Puck's visual editor\n * to the corresponding Payload collection fields.\n *\n * SEO fields use the official @payloadcms/plugin-seo convention: meta.title, meta.description\n */\nexport const DEFAULT_ROOT_PROPS_MAPPINGS: RootPropsMapping[] = [\n // Core page fields\n { from: 'title', to: 'title' },\n { from: 'slug', to: 'slug' },\n { from: 'pageLayout', to: 'pageLayout' },\n { from: 'pageType', to: 'pageType' },\n { from: 'isHomepage', to: 'isHomepage' },\n\n // Page-tree integration fields\n { from: 'folder', to: 'folder' },\n { from: 'pageSegment', to: 'pageSegment' },\n\n // SEO/Meta fields (uses official @payloadcms/plugin-seo convention)\n { from: 'metaTitle', to: 'meta.title' },\n { from: 'metaDescription', to: 'meta.description' },\n { from: 'noindex', to: 'meta.noindex' },\n { from: 'nofollow', to: 'meta.nofollow' },\n { from: 'excludeFromSitemap', to: 'meta.excludeFromSitemap' },\n\n // Conversion tracking fields\n { from: 'isConversionPage', to: 'conversionTracking.isConversionPage' },\n { from: 'conversionType', to: 'conversionTracking.conversionType' },\n { from: 'conversionValue', to: 'conversionTracking.conversionValue' },\n]\n\n/**\n * Set a nested value in an object using dot notation path\n *\n * @example\n * ```typescript\n * const obj = {}\n * setNestedValue(obj, 'meta.title', 'My Title')\n * // Result: { meta: { title: 'My Title' } }\n * ```\n */\nexport function setNestedValue(\n obj: Record<string, unknown>,\n path: string,\n value: unknown\n): void {\n const keys = path.split('.')\n let current = obj\n\n for (let i = 0; i < keys.length - 1; i++) {\n const key = keys[i]\n if (!(key in current) || typeof current[key] !== 'object') {\n current[key] = {}\n }\n current = current[key] as Record<string, unknown>\n }\n\n const finalKey = keys[keys.length - 1]\n current[finalKey] = value\n}\n\n/**\n * Get a nested value from an object using dot notation path\n *\n * @example\n * ```typescript\n * const obj = { meta: { title: 'My Title' } }\n * getNestedValue(obj, 'meta.title') // 'My Title'\n * ```\n */\nexport function getNestedValue(\n obj: Record<string, unknown>,\n path: string\n): unknown {\n const keys = path.split('.')\n let current: unknown = obj\n\n for (const key of keys) {\n if (current === null || current === undefined) {\n return undefined\n }\n if (typeof current !== 'object') {\n return undefined\n }\n current = (current as Record<string, unknown>)[key]\n }\n\n return current\n}\n\n/**\n * Merge mappings, with custom mappings taking precedence over defaults\n *\n * @param customMappings - Custom mappings to merge with defaults\n * @returns Merged array of mappings with duplicates resolved (custom wins)\n */\nexport function mergeMappings(\n customMappings?: RootPropsMapping[]\n): RootPropsMapping[] {\n if (!customMappings || customMappings.length === 0) {\n return DEFAULT_ROOT_PROPS_MAPPINGS\n }\n\n // Create a map to track unique mappings by 'from' field\n const mappingMap = new Map<string, RootPropsMapping>()\n\n // Add defaults first\n for (const mapping of DEFAULT_ROOT_PROPS_MAPPINGS) {\n mappingMap.set(mapping.from, mapping)\n }\n\n // Custom mappings override defaults\n for (const mapping of customMappings) {\n mappingMap.set(mapping.from, mapping)\n }\n\n return Array.from(mappingMap.values())\n}\n\n/**\n * Map Puck root.props to Payload field update data\n *\n * Takes the root.props from Puck data and maps them to the appropriate\n * Payload fields based on the provided mappings.\n *\n * @param rootProps - The root.props object from Puck data\n * @param customMappings - Optional custom mappings to merge with defaults\n * @returns Object ready to be spread into Payload update data\n *\n * @example\n * ```typescript\n * const rootProps = {\n * title: 'My Page',\n * metaTitle: 'My Page | Site Name',\n * metaDescription: 'Description here',\n * }\n *\n * const updateData = mapRootPropsToPayloadFields(rootProps)\n * // Result: {\n * // title: 'My Page',\n * // meta: {\n * // title: 'My Page | Site Name',\n * // description: 'Description here',\n * // },\n * // }\n * ```\n */\nexport function mapRootPropsToPayloadFields(\n rootProps: Record<string, unknown>,\n customMappings?: RootPropsMapping[]\n): Record<string, unknown> {\n const mappings = mergeMappings(customMappings)\n const result: Record<string, unknown> = {}\n\n for (const mapping of mappings) {\n const value = rootProps[mapping.from]\n\n // Skip undefined values to avoid overwriting existing data\n if (value === undefined) {\n continue\n }\n\n // Apply transformation if provided\n const transformedValue = mapping.transform ? mapping.transform(value) : value\n\n // Set the value at the target path\n setNestedValue(result, mapping.to, transformedValue)\n }\n\n return result\n}\n\n/**\n * Deep merge objects, with source values overwriting target values\n *\n * @param target - The target object to merge into\n * @param source - The source object to merge from\n * @returns The merged object (target is modified in place)\n */\nexport function deepMerge(\n target: Record<string, unknown>,\n source: Record<string, unknown>\n): Record<string, unknown> {\n for (const key of Object.keys(source)) {\n const sourceValue = source[key]\n const targetValue = target[key]\n\n if (\n sourceValue !== null &&\n typeof sourceValue === 'object' &&\n !Array.isArray(sourceValue) &&\n targetValue !== null &&\n typeof targetValue === 'object' &&\n !Array.isArray(targetValue)\n ) {\n // Recursively merge nested objects\n target[key] = deepMerge(\n targetValue as Record<string, unknown>,\n sourceValue as Record<string, unknown>\n )\n } else {\n // Direct assignment for non-object values or arrays\n target[key] = sourceValue\n }\n }\n\n return target\n}\n\n/**\n * Map Payload document fields to Puck root.props format\n *\n * This is the reverse of mapRootPropsToPayloadFields. It takes a Payload\n * document and extracts the fields that should be synced to root.props\n * when loading the editor.\n *\n * @param doc - The Payload document\n * @param customMappings - Optional custom mappings to merge with defaults\n * @returns Object with root.props field names and values\n *\n * @example\n * ```typescript\n * const page = { title: 'My Page', isHomepage: true, meta: { title: 'SEO Title' } }\n * const rootProps = mapPayloadFieldsToRootProps(page)\n * // Result: { title: 'My Page', isHomepage: true, metaTitle: 'SEO Title' }\n * ```\n */\nexport function mapPayloadFieldsToRootProps(\n doc: Record<string, unknown>,\n customMappings?: RootPropsMapping[]\n): Record<string, unknown> {\n const mappings = mergeMappings(customMappings)\n const result: Record<string, unknown> = {}\n\n for (const mapping of mappings) {\n // Get value from Payload field (supports dot notation for nested fields)\n const value = getNestedValue(doc, mapping.to)\n\n // Skip undefined values\n if (value === undefined) {\n continue\n }\n\n // Set the value using the root.props field name\n result[mapping.from] = value\n }\n\n return result\n}\n"],"names":["DEFAULT_ROOT_PROPS_MAPPINGS","from","to","setNestedValue","obj","path","value","keys","split","current","i","length","key","finalKey","getNestedValue","undefined","mergeMappings","customMappings","mappingMap","Map","mapping","set","Array","values","mapRootPropsToPayloadFields","rootProps","mappings","result","transformedValue","transform","deepMerge","target","source","Object","sourceValue","targetValue","isArray","mapPayloadFieldsToRootProps","doc"],"mappings":"AAEA;;;;;;;CAOC,GACD,OAAO,MAAMA,8BAAkD;IAC7D,mBAAmB;IACnB;QAAEC,MAAM;QAASC,IAAI;IAAQ;IAC7B;QAAED,MAAM;QAAQC,IAAI;IAAO;IAC3B;QAAED,MAAM;QAAcC,IAAI;IAAa;IACvC;QAAED,MAAM;QAAYC,IAAI;IAAW;IACnC;QAAED,MAAM;QAAcC,IAAI;IAAa;IAEvC,+BAA+B;IAC/B;QAAED,MAAM;QAAUC,IAAI;IAAS;IAC/B;QAAED,MAAM;QAAeC,IAAI;IAAc;IAEzC,oEAAoE;IACpE;QAAED,MAAM;QAAaC,IAAI;IAAa;IACtC;QAAED,MAAM;QAAmBC,IAAI;IAAmB;IAClD;QAAED,MAAM;QAAWC,IAAI;IAAe;IACtC;QAAED,MAAM;QAAYC,IAAI;IAAgB;IACxC;QAAED,MAAM;QAAsBC,IAAI;IAA0B;IAE5D,6BAA6B;IAC7B;QAAED,MAAM;QAAoBC,IAAI;IAAsC;IACtE;QAAED,MAAM;QAAkBC,IAAI;IAAoC;IAClE;QAAED,MAAM;QAAmBC,IAAI;IAAqC;CACrE,CAAA;AAED;;;;;;;;;CASC,GACD,OAAO,SAASC,eACdC,GAA4B,EAC5BC,IAAY,EACZC,KAAc;IAEd,MAAMC,OAAOF,KAAKG,KAAK,CAAC;IACxB,IAAIC,UAAUL;IAEd,IAAK,IAAIM,IAAI,GAAGA,IAAIH,KAAKI,MAAM,GAAG,GAAGD,IAAK;QACxC,MAAME,MAAML,IAAI,CAACG,EAAE;QACnB,IAAI,CAAEE,CAAAA,OAAOH,OAAM,KAAM,OAAOA,OAAO,CAACG,IAAI,KAAK,UAAU;YACzDH,OAAO,CAACG,IAAI,GAAG,CAAC;QAClB;QACAH,UAAUA,OAAO,CAACG,IAAI;IACxB;IAEA,MAAMC,WAAWN,IAAI,CAACA,KAAKI,MAAM,GAAG,EAAE;IACtCF,OAAO,CAACI,SAAS,GAAGP;AACtB;AAEA;;;;;;;;CAQC,GACD,OAAO,SAASQ,eACdV,GAA4B,EAC5BC,IAAY;IAEZ,MAAME,OAAOF,KAAKG,KAAK,CAAC;IACxB,IAAIC,UAAmBL;IAEvB,KAAK,MAAMQ,OAAOL,KAAM;QACtB,IAAIE,YAAY,QAAQA,YAAYM,WAAW;YAC7C,OAAOA;QACT;QACA,IAAI,OAAON,YAAY,UAAU;YAC/B,OAAOM;QACT;QACAN,UAAU,AAACA,OAAmC,CAACG,IAAI;IACrD;IAEA,OAAOH;AACT;AAEA;;;;;CAKC,GACD,OAAO,SAASO,cACdC,cAAmC;IAEnC,IAAI,CAACA,kBAAkBA,eAAeN,MAAM,KAAK,GAAG;QAClD,OAAOX;IACT;IAEA,wDAAwD;IACxD,MAAMkB,aAAa,IAAIC;IAEvB,qBAAqB;IACrB,KAAK,MAAMC,WAAWpB,4BAA6B;QACjDkB,WAAWG,GAAG,CAACD,QAAQnB,IAAI,EAAEmB;IAC/B;IAEA,oCAAoC;IACpC,KAAK,MAAMA,WAAWH,eAAgB;QACpCC,WAAWG,GAAG,CAACD,QAAQnB,IAAI,EAAEmB;IAC/B;IAEA,OAAOE,MAAMrB,IAAI,CAACiB,WAAWK,MAAM;AACrC;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BC,GACD,OAAO,SAASC,4BACdC,SAAkC,EAClCR,cAAmC;IAEnC,MAAMS,WAAWV,cAAcC;IAC/B,MAAMU,SAAkC,CAAC;IAEzC,KAAK,MAAMP,WAAWM,SAAU;QAC9B,MAAMpB,QAAQmB,SAAS,CAACL,QAAQnB,IAAI,CAAC;QAErC,2DAA2D;QAC3D,IAAIK,UAAUS,WAAW;YACvB;QACF;QAEA,mCAAmC;QACnC,MAAMa,mBAAmBR,QAAQS,SAAS,GAAGT,QAAQS,SAAS,CAACvB,SAASA;QAExE,mCAAmC;QACnCH,eAAewB,QAAQP,QAAQlB,EAAE,EAAE0B;IACrC;IAEA,OAAOD;AACT;AAEA;;;;;;CAMC,GACD,OAAO,SAASG,UACdC,MAA+B,EAC/BC,MAA+B;IAE/B,KAAK,MAAMpB,OAAOqB,OAAO1B,IAAI,CAACyB,QAAS;QACrC,MAAME,cAAcF,MAAM,CAACpB,IAAI;QAC/B,MAAMuB,cAAcJ,MAAM,CAACnB,IAAI;QAE/B,IACEsB,gBAAgB,QAChB,OAAOA,gBAAgB,YACvB,CAACZ,MAAMc,OAAO,CAACF,gBACfC,gBAAgB,QAChB,OAAOA,gBAAgB,YACvB,CAACb,MAAMc,OAAO,CAACD,cACf;YACA,mCAAmC;YACnCJ,MAAM,CAACnB,IAAI,GAAGkB,UACZK,aACAD;QAEJ,OAAO;YACL,oDAAoD;YACpDH,MAAM,CAACnB,IAAI,GAAGsB;QAChB;IACF;IAEA,OAAOH;AACT;AAEA;;;;;;;;;;;;;;;;;CAiBC,GACD,OAAO,SAASM,4BACdC,GAA4B,EAC5BrB,cAAmC;IAEnC,MAAMS,WAAWV,cAAcC;IAC/B,MAAMU,SAAkC,CAAC;IAEzC,KAAK,MAAMP,WAAWM,SAAU;QAC9B,yEAAyE;QACzE,MAAMpB,QAAQQ,eAAewB,KAAKlB,QAAQlB,EAAE;QAE5C,wBAAwB;QACxB,IAAII,UAAUS,WAAW;YACvB;QACF;QAEA,gDAAgD;QAChDY,MAAM,CAACP,QAAQnB,IAAI,CAAC,GAAGK;IACzB;IAEA,OAAOqB;AACT"}
|
|
@@ -3,20 +3,23 @@
|
|
|
3
3
|
*
|
|
4
4
|
* This collection stores serialized Puck component data that can be
|
|
5
5
|
* loaded into Template components for reuse across pages.
|
|
6
|
-
*/
|
|
7
|
-
export const TemplatesCollection = {
|
|
6
|
+
*/ export const TemplatesCollection = {
|
|
8
7
|
slug: 'puck-templates',
|
|
9
8
|
admin: {
|
|
10
9
|
useAsTitle: 'name',
|
|
11
10
|
group: 'Puck',
|
|
12
|
-
defaultColumns: [
|
|
13
|
-
|
|
11
|
+
defaultColumns: [
|
|
12
|
+
'name',
|
|
13
|
+
'category',
|
|
14
|
+
'updatedAt'
|
|
15
|
+
],
|
|
16
|
+
description: 'Reusable component templates for the visual editor'
|
|
14
17
|
},
|
|
15
18
|
access: {
|
|
16
|
-
read: ()
|
|
17
|
-
create: ({ req })
|
|
18
|
-
update: ({ req })
|
|
19
|
-
delete: ({ req })
|
|
19
|
+
read: ()=>true,
|
|
20
|
+
create: ({ req })=>!!req.user,
|
|
21
|
+
update: ({ req })=>!!req.user,
|
|
22
|
+
delete: ({ req })=>!!req.user
|
|
20
23
|
},
|
|
21
24
|
fields: [
|
|
22
25
|
{
|
|
@@ -24,39 +27,40 @@ export const TemplatesCollection = {
|
|
|
24
27
|
type: 'text',
|
|
25
28
|
required: true,
|
|
26
29
|
admin: {
|
|
27
|
-
description: 'A descriptive name for this template'
|
|
28
|
-
}
|
|
30
|
+
description: 'A descriptive name for this template'
|
|
31
|
+
}
|
|
29
32
|
},
|
|
30
33
|
{
|
|
31
34
|
name: 'description',
|
|
32
35
|
type: 'textarea',
|
|
33
36
|
admin: {
|
|
34
|
-
description: 'Optional description of what this template contains'
|
|
35
|
-
}
|
|
37
|
+
description: 'Optional description of what this template contains'
|
|
38
|
+
}
|
|
36
39
|
},
|
|
37
40
|
{
|
|
38
41
|
name: 'category',
|
|
39
42
|
type: 'text',
|
|
40
43
|
admin: {
|
|
41
|
-
description: 'Category for organizing templates (e.g., "Hero", "Footer", "CTA")'
|
|
42
|
-
}
|
|
44
|
+
description: 'Category for organizing templates (e.g., "Hero", "Footer", "CTA")'
|
|
45
|
+
}
|
|
43
46
|
},
|
|
44
47
|
{
|
|
45
48
|
name: 'content',
|
|
46
49
|
type: 'json',
|
|
47
50
|
required: true,
|
|
48
51
|
admin: {
|
|
49
|
-
description: 'Serialized Puck component data'
|
|
50
|
-
}
|
|
52
|
+
description: 'Serialized Puck component data'
|
|
53
|
+
}
|
|
51
54
|
},
|
|
52
55
|
{
|
|
53
56
|
name: 'thumbnail',
|
|
54
57
|
type: 'text',
|
|
55
58
|
admin: {
|
|
56
|
-
description: 'Optional thumbnail URL for template preview'
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
+
description: 'Optional thumbnail URL for template preview'
|
|
60
|
+
}
|
|
61
|
+
}
|
|
59
62
|
],
|
|
60
|
-
timestamps: true
|
|
63
|
+
timestamps: true
|
|
61
64
|
};
|
|
65
|
+
|
|
62
66
|
//# sourceMappingURL=Templates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/collections/Templates.ts"],"sourcesContent":["import type { CollectionConfig } from 'payload'\n\n/**\n * Templates Collection - Stores reusable Puck component configurations\n *\n * This collection stores serialized Puck component data that can be\n * loaded into Template components for reuse across pages.\n */\nexport const TemplatesCollection: CollectionConfig = {\n slug: 'puck-templates',\n admin: {\n useAsTitle: 'name',\n group: 'Puck',\n defaultColumns: ['name', 'category', 'updatedAt'],\n description: 'Reusable component templates for the visual editor',\n },\n access: {\n read: () => true,\n create: ({ req }) => !!req.user,\n update: ({ req }) => !!req.user,\n delete: ({ req }) => !!req.user,\n },\n fields: [\n {\n name: 'name',\n type: 'text',\n required: true,\n admin: {\n description: 'A descriptive name for this template',\n },\n },\n {\n name: 'description',\n type: 'textarea',\n admin: {\n description: 'Optional description of what this template contains',\n },\n },\n {\n name: 'category',\n type: 'text',\n admin: {\n description: 'Category for organizing templates (e.g., \"Hero\", \"Footer\", \"CTA\")',\n },\n },\n {\n name: 'content',\n type: 'json',\n required: true,\n admin: {\n description: 'Serialized Puck component data',\n },\n },\n {\n name: 'thumbnail',\n type: 'text',\n admin: {\n description: 'Optional thumbnail URL for template preview',\n },\n },\n ],\n timestamps: true,\n}\n"],"names":["TemplatesCollection","slug","admin","useAsTitle","group","defaultColumns","description","access","read","create","req","user","update","delete","fields","name","type","required","timestamps"],"mappings":"AAEA;;;;;CAKC,GACD,OAAO,MAAMA,sBAAwC;IACnDC,MAAM;IACNC,OAAO;QACLC,YAAY;QACZC,OAAO;QACPC,gBAAgB;YAAC;YAAQ;YAAY;SAAY;QACjDC,aAAa;IACf;IACAC,QAAQ;QACNC,MAAM,IAAM;QACZC,QAAQ,CAAC,EAAEC,GAAG,EAAE,GAAK,CAAC,CAACA,IAAIC,IAAI;QAC/BC,QAAQ,CAAC,EAAEF,GAAG,EAAE,GAAK,CAAC,CAACA,IAAIC,IAAI;QAC/BE,QAAQ,CAAC,EAAEH,GAAG,EAAE,GAAK,CAAC,CAACA,IAAIC,IAAI;IACjC;IACAG,QAAQ;QACN;YACEC,MAAM;YACNC,MAAM;YACNC,UAAU;YACVf,OAAO;gBACLI,aAAa;YACf;QACF;QACA;YACES,MAAM;YACNC,MAAM;YACNd,OAAO;gBACLI,aAAa;YACf;QACF;QACA;YACES,MAAM;YACNC,MAAM;YACNd,OAAO;gBACLI,aAAa;YACf;QACF;QACA;YACES,MAAM;YACNC,MAAM;YACNC,UAAU;YACVf,OAAO;gBACLI,aAAa;YACf;QACF;QACA;YACES,MAAM;YACNC,MAAM;YACNd,OAAO;gBACLI,aAAa;YACf;QACF;KACD;IACDY,YAAY;AACd,EAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type PaddingValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type TransformValue, type ColorValue } from '../fields/shared';
|
|
1
|
+
import { type PaddingValue, type DimensionsValue, type BackgroundValue, type AnimationValue, type TransformValue, type ColorValue } from '../fields/shared.js';
|
|
2
2
|
interface AccordionItemData {
|
|
3
3
|
title: string;
|
|
4
4
|
content: string;
|
|
@@ -15,6 +15,6 @@ export interface AccordionClientProps {
|
|
|
15
15
|
animation: AnimationValue | null;
|
|
16
16
|
customPadding: PaddingValue | null;
|
|
17
17
|
}
|
|
18
|
-
export declare function AccordionClient({ items, allowMultiple, textColor, margin, background, dimensions, transform, animation, customPadding, }: AccordionClientProps): import("react
|
|
18
|
+
export declare function AccordionClient({ items, allowMultiple, textColor, margin, background, dimensions, transform, animation, customPadding, }: AccordionClientProps): import("react").JSX.Element;
|
|
19
19
|
export {};
|
|
20
20
|
//# sourceMappingURL=AccordionClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionClient.d.ts","sourceRoot":"","sources":["../../src/components/AccordionClient.tsx"],"names":[],"mappings":"AAWA,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"AccordionClient.d.ts","sourceRoot":"","sources":["../../src/components/AccordionClient.tsx"],"names":[],"mappings":"AAWA,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAA;AAG5B,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B,aAAa,EAAE,OAAO,CAAA;IACtB,SAAS,EAAE,UAAU,GAAG,IAAI,CAAA;IAC5B,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAC3B,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAA;IAClC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,SAAS,EAAE,cAAc,GAAG,IAAI,CAAA;IAChC,aAAa,EAAE,YAAY,GAAG,IAAI,CAAA;CACnC;AAiDD,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,aAAa,EACb,SAAS,EACT,MAAM,EACN,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,aAAa,GACd,EAAE,oBAAoB,+BAiFtB"}
|
|
@@ -5,34 +5,62 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
5
5
|
*
|
|
6
6
|
* This is the actual interactive accordion that uses useState.
|
|
7
7
|
* Imported by the server-safe AccordionConfig to enable client-side expansion.
|
|
8
|
-
*/
|
|
9
|
-
import { useState } from 'react';
|
|
8
|
+
*/ import { useState } from 'react';
|
|
10
9
|
import { ChevronDown } from 'lucide-react';
|
|
11
|
-
import { marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS, backgroundValueToCSS, transformValueToCSS, colorValueToCSS, cn
|
|
12
|
-
import { AnimatedWrapper } from './AnimatedWrapper';
|
|
10
|
+
import { marginValueToCSS, paddingValueToCSS, dimensionsValueToCSS, backgroundValueToCSS, transformValueToCSS, colorValueToCSS, cn } from '../fields/shared.js';
|
|
11
|
+
import { AnimatedWrapper } from './AnimatedWrapper.js';
|
|
13
12
|
// Accordion Item Component
|
|
14
|
-
function AccordionItem({ item, isOpen, onToggle, textColorCSS
|
|
15
|
-
const textStyle = textColorCSS ? {
|
|
16
|
-
|
|
13
|
+
function AccordionItem({ item, isOpen, onToggle, textColorCSS }) {
|
|
14
|
+
const textStyle = textColorCSS ? {
|
|
15
|
+
color: textColorCSS
|
|
16
|
+
} : {};
|
|
17
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
18
|
+
className: "border-b border-border last:border-b-0",
|
|
19
|
+
children: [
|
|
20
|
+
/*#__PURE__*/ _jsxs("button", {
|
|
21
|
+
type: "button",
|
|
22
|
+
onClick: onToggle,
|
|
23
|
+
className: "flex w-full items-center justify-between py-4 px-4 text-left font-medium transition-all hover:bg-muted/50 text-foreground",
|
|
24
|
+
style: textStyle,
|
|
25
|
+
children: [
|
|
26
|
+
/*#__PURE__*/ _jsx("span", {
|
|
27
|
+
children: item.title
|
|
28
|
+
}),
|
|
29
|
+
/*#__PURE__*/ _jsx(ChevronDown, {
|
|
30
|
+
className: cn('h-4 w-4 shrink-0 transition-transform duration-200', isOpen && 'rotate-180')
|
|
31
|
+
})
|
|
32
|
+
]
|
|
33
|
+
}),
|
|
34
|
+
/*#__PURE__*/ _jsx("div", {
|
|
35
|
+
className: cn('overflow-hidden transition-all duration-200', isOpen ? 'max-h-[1000px] opacity-100' : 'max-h-0 opacity-0'),
|
|
36
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
37
|
+
className: "px-4 pb-4 text-muted-foreground",
|
|
38
|
+
style: textColorCSS ? {
|
|
39
|
+
color: textColorCSS
|
|
40
|
+
} : undefined,
|
|
41
|
+
children: item.content
|
|
42
|
+
})
|
|
43
|
+
})
|
|
44
|
+
]
|
|
45
|
+
});
|
|
17
46
|
}
|
|
18
|
-
export function AccordionClient({ items, allowMultiple, textColor, margin, background, dimensions, transform, animation, customPadding
|
|
47
|
+
export function AccordionClient({ items, allowMultiple, textColor, margin, background, dimensions, transform, animation, customPadding }) {
|
|
19
48
|
// Initialize open states from defaultOpen values
|
|
20
|
-
const [openItems, setOpenItems] = useState(()
|
|
49
|
+
const [openItems, setOpenItems] = useState(()=>{
|
|
21
50
|
const initialOpen = new Set();
|
|
22
|
-
items?.forEach((item, index)
|
|
51
|
+
items?.forEach((item, index)=>{
|
|
23
52
|
if (item.defaultOpen) {
|
|
24
53
|
initialOpen.add(index);
|
|
25
54
|
}
|
|
26
55
|
});
|
|
27
56
|
return initialOpen;
|
|
28
57
|
});
|
|
29
|
-
const handleToggle = (index)
|
|
30
|
-
setOpenItems((prev)
|
|
58
|
+
const handleToggle = (index)=>{
|
|
59
|
+
setOpenItems((prev)=>{
|
|
31
60
|
const newSet = new Set(prev);
|
|
32
61
|
if (newSet.has(index)) {
|
|
33
62
|
newSet.delete(index);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
63
|
+
} else {
|
|
36
64
|
if (!allowMultiple) {
|
|
37
65
|
newSet.clear();
|
|
38
66
|
}
|
|
@@ -47,21 +75,52 @@ export function AccordionClient({ items, allowMultiple, textColor, margin, backg
|
|
|
47
75
|
const accordionClasses = 'rounded-lg border border-border overflow-hidden bg-card';
|
|
48
76
|
const backgroundStyles = backgroundValueToCSS(background);
|
|
49
77
|
// Only apply background styles if explicitly set, otherwise let bg-card handle it
|
|
50
|
-
const accordionStyle = backgroundStyles && Object.keys(backgroundStyles).length > 0
|
|
51
|
-
? backgroundStyles
|
|
52
|
-
: {};
|
|
78
|
+
const accordionStyle = backgroundStyles && Object.keys(backgroundStyles).length > 0 ? backgroundStyles : {};
|
|
53
79
|
const marginCSS = marginValueToCSS(margin);
|
|
54
80
|
const paddingCSS = paddingValueToCSS(customPadding);
|
|
55
81
|
const transformStyles = transformValueToCSS(transform);
|
|
56
82
|
const style = {
|
|
57
83
|
...dimensionsStyles,
|
|
58
|
-
...
|
|
59
|
-
|
|
60
|
-
|
|
84
|
+
...marginCSS ? {
|
|
85
|
+
margin: marginCSS
|
|
86
|
+
} : {},
|
|
87
|
+
...paddingCSS ? {
|
|
88
|
+
padding: paddingCSS
|
|
89
|
+
} : {},
|
|
90
|
+
...transformStyles
|
|
61
91
|
};
|
|
62
92
|
if (!items || items.length === 0) {
|
|
63
|
-
return
|
|
93
|
+
return /*#__PURE__*/ _jsx(AnimatedWrapper, {
|
|
94
|
+
animation: animation,
|
|
95
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
96
|
+
style: Object.keys(style).length > 0 ? style : undefined,
|
|
97
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
98
|
+
className: accordionClasses,
|
|
99
|
+
style: accordionStyle,
|
|
100
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
101
|
+
className: "p-4 text-center text-muted-foreground",
|
|
102
|
+
children: "No accordion items. Add items in the editor."
|
|
103
|
+
})
|
|
104
|
+
})
|
|
105
|
+
})
|
|
106
|
+
});
|
|
64
107
|
}
|
|
65
|
-
return
|
|
108
|
+
return /*#__PURE__*/ _jsx(AnimatedWrapper, {
|
|
109
|
+
animation: animation,
|
|
110
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
111
|
+
style: Object.keys(style).length > 0 ? style : undefined,
|
|
112
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
113
|
+
className: accordionClasses,
|
|
114
|
+
style: accordionStyle,
|
|
115
|
+
children: items.map((item, index)=>/*#__PURE__*/ _jsx(AccordionItem, {
|
|
116
|
+
item: item,
|
|
117
|
+
isOpen: openItems.has(index),
|
|
118
|
+
onToggle: ()=>handleToggle(index),
|
|
119
|
+
textColorCSS: textColorCSS
|
|
120
|
+
}, index))
|
|
121
|
+
})
|
|
122
|
+
})
|
|
123
|
+
});
|
|
66
124
|
}
|
|
125
|
+
|
|
67
126
|
//# sourceMappingURL=AccordionClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/components/AccordionClient.tsx"],"sourcesContent":["'use client'\n\n/**\n * AccordionClient - Client component for accordion interactivity\n *\n * This is the actual interactive accordion that uses useState.\n * Imported by the server-safe AccordionConfig to enable client-side expansion.\n */\n\nimport { useState } from 'react'\nimport { ChevronDown } from 'lucide-react'\nimport {\n marginValueToCSS,\n paddingValueToCSS,\n dimensionsValueToCSS,\n backgroundValueToCSS,\n transformValueToCSS,\n colorValueToCSS,\n cn,\n type PaddingValue,\n type DimensionsValue,\n type BackgroundValue,\n type AnimationValue,\n type TransformValue,\n type ColorValue,\n} from '../fields/shared.js'\nimport { AnimatedWrapper } from './AnimatedWrapper.js'\n\ninterface AccordionItemData {\n title: string\n content: string\n defaultOpen: boolean\n}\n\nexport interface AccordionClientProps {\n items: AccordionItemData[]\n allowMultiple: boolean\n textColor: ColorValue | null\n margin: PaddingValue | null\n background: BackgroundValue | null\n dimensions: DimensionsValue | null\n transform: TransformValue | null\n animation: AnimationValue | null\n customPadding: PaddingValue | null\n}\n\n// Accordion Item Component\nfunction AccordionItem({\n item,\n isOpen,\n onToggle,\n textColorCSS,\n}: {\n item: AccordionItemData\n isOpen: boolean\n onToggle: () => void\n textColorCSS?: string\n}) {\n const textStyle: React.CSSProperties = textColorCSS ? { color: textColorCSS } : {}\n\n return (\n <div className=\"border-b border-border last:border-b-0\">\n <button\n type=\"button\"\n onClick={onToggle}\n className=\"flex w-full items-center justify-between py-4 px-4 text-left font-medium transition-all hover:bg-muted/50 text-foreground\"\n style={textStyle}\n >\n <span>{item.title}</span>\n <ChevronDown\n className={cn(\n 'h-4 w-4 shrink-0 transition-transform duration-200',\n isOpen && 'rotate-180'\n )}\n />\n </button>\n <div\n className={cn(\n 'overflow-hidden transition-all duration-200',\n isOpen ? 'max-h-[1000px] opacity-100' : 'max-h-0 opacity-0'\n )}\n >\n <div\n className=\"px-4 pb-4 text-muted-foreground\"\n style={textColorCSS ? { color: textColorCSS } : undefined}\n >\n {item.content}\n </div>\n </div>\n </div>\n )\n}\n\nexport function AccordionClient({\n items,\n allowMultiple,\n textColor,\n margin,\n background,\n dimensions,\n transform,\n animation,\n customPadding,\n}: AccordionClientProps) {\n // Initialize open states from defaultOpen values\n const [openItems, setOpenItems] = useState<Set<number>>(() => {\n const initialOpen = new Set<number>()\n items?.forEach((item, index) => {\n if (item.defaultOpen) {\n initialOpen.add(index)\n }\n })\n return initialOpen\n })\n\n const handleToggle = (index: number) => {\n setOpenItems((prev) => {\n const newSet = new Set(prev)\n if (newSet.has(index)) {\n newSet.delete(index)\n } else {\n if (!allowMultiple) {\n newSet.clear()\n }\n newSet.add(index)\n }\n return newSet\n })\n }\n\n const textColorCSS = colorValueToCSS(textColor)\n const dimensionsStyles = dimensionsValueToCSS(dimensions)\n\n // Theme-aware classes - uses CSS variables for colors\n const accordionClasses = 'rounded-lg border border-border overflow-hidden bg-card'\n\n const backgroundStyles = backgroundValueToCSS(background)\n // Only apply background styles if explicitly set, otherwise let bg-card handle it\n const accordionStyle: React.CSSProperties = backgroundStyles && Object.keys(backgroundStyles).length > 0\n ? backgroundStyles\n : {}\n\n const marginCSS = marginValueToCSS(margin)\n const paddingCSS = paddingValueToCSS(customPadding)\n const transformStyles = transformValueToCSS(transform)\n\n const style: React.CSSProperties = {\n ...dimensionsStyles,\n ...(marginCSS ? { margin: marginCSS } : {}),\n ...(paddingCSS ? { padding: paddingCSS } : {}),\n ...transformStyles,\n }\n\n if (!items || items.length === 0) {\n return (\n <AnimatedWrapper animation={animation}>\n <div style={Object.keys(style).length > 0 ? style : undefined}>\n <div className={accordionClasses} style={accordionStyle}>\n <div className=\"p-4 text-center text-muted-foreground\">\n No accordion items. Add items in the editor.\n </div>\n </div>\n </div>\n </AnimatedWrapper>\n )\n }\n\n return (\n <AnimatedWrapper animation={animation}>\n <div style={Object.keys(style).length > 0 ? style : undefined}>\n <div className={accordionClasses} style={accordionStyle}>\n {items.map((item, index) => (\n <AccordionItem\n key={index}\n item={item}\n isOpen={openItems.has(index)}\n onToggle={() => handleToggle(index)}\n textColorCSS={textColorCSS}\n />\n ))}\n </div>\n </div>\n </AnimatedWrapper>\n )\n}\n"],"names":["useState","ChevronDown","marginValueToCSS","paddingValueToCSS","dimensionsValueToCSS","backgroundValueToCSS","transformValueToCSS","colorValueToCSS","cn","AnimatedWrapper","AccordionItem","item","isOpen","onToggle","textColorCSS","textStyle","color","div","className","button","type","onClick","style","span","title","undefined","content","AccordionClient","items","allowMultiple","textColor","margin","background","dimensions","transform","animation","customPadding","openItems","setOpenItems","initialOpen","Set","forEach","index","defaultOpen","add","handleToggle","prev","newSet","has","delete","clear","dimensionsStyles","accordionClasses","backgroundStyles","accordionStyle","Object","keys","length","marginCSS","paddingCSS","transformStyles","padding","map"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Supports 27 animation presets with customizable intensity, easing, and origin.
|
|
7
7
|
*/
|
|
8
8
|
import type { ReactNode, CSSProperties, ElementType } from 'react';
|
|
9
|
-
import { type AnimationValue } from '../fields/shared';
|
|
9
|
+
import { type AnimationValue } from '../fields/shared.js';
|
|
10
10
|
export interface AnimatedWrapperProps {
|
|
11
11
|
/** Animation configuration from the component */
|
|
12
12
|
animation: AnimationValue | null | undefined;
|
|
@@ -29,5 +29,5 @@ export interface AnimatedWrapperProps {
|
|
|
29
29
|
*
|
|
30
30
|
* If no animation is set, renders children without a wrapper div.
|
|
31
31
|
*/
|
|
32
|
-
export declare function AnimatedWrapper({ animation, children, className, style, as: Component, }: AnimatedWrapperProps): import("react
|
|
32
|
+
export declare function AnimatedWrapper({ animation, children, className, style, as: Component, }: AnimatedWrapperProps): import("react").JSX.Element;
|
|
33
33
|
//# sourceMappingURL=AnimatedWrapper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimatedWrapper.d.ts","sourceRoot":"","sources":["../../src/components/AnimatedWrapper.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAElE,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,
|
|
1
|
+
{"version":3,"file":"AnimatedWrapper.d.ts","sourceRoot":"","sources":["../../src/components/AnimatedWrapper.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAElE,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAA;AAE5B,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,SAAS,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5C,+BAA+B;IAC/B,QAAQ,EAAE,SAAS,CAAA;IACnB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB;IACpB,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,iDAAiD;IACjD,EAAE,CAAC,EAAE,WAAW,CAAA;CACjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,QAAQ,EACR,SAAS,EACT,KAAK,EACL,EAAE,EAAE,SAAiB,GACtB,EAAE,oBAAoB,+BAuEtB"}
|