@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugin/fields/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/plugin/fields/index.ts"],"sourcesContent":["/**\n * Puck Field Utilities\n *\n * Provides reusable field definitions for adding Puck support to existing collections.\n * Use getPuckFields() for easy integration, or import individual fields for granular control.\n *\n * @example\n * ```typescript\n * // Option 1: Use getPuckFields() for recommended defaults\n * import { getPuckFields } from '@delmaredigital/payload-puck'\n *\n * const Pages: CollectionConfig = {\n * slug: 'pages',\n * fields: [\n * // Your existing fields...\n * ...getPuckFields({ includeSEO: false }),\n * ],\n * }\n *\n * // Option 2: Import individual fields\n * import { puckDataField, editorVersionField } from '@delmaredigital/payload-puck'\n *\n * const Pages: CollectionConfig = {\n * slug: 'pages',\n * fields: [\n * // Your existing fields...\n * puckDataField,\n * editorVersionField,\n * ],\n * }\n * ```\n */\n\nimport type { CollectionConfig, Field } from 'payload'\nimport type { GetPuckFieldsOptions, GetPuckCollectionConfigOptions, ConversionTypeOption } from './types.js'\nimport { createIsHomepageUniqueHook } from '../hooks/isHomepageUnique.js'\nimport type { LayoutDefinition } from '../../layouts/types.js'\nimport { DEFAULT_LAYOUTS } from '../../layouts/defaults.js'\nimport { layoutsToPayloadOptions } from '../../layouts/utils.js'\n\n// =============================================================================\n// Core Fields\n// =============================================================================\n\n/**\n * Puck data field - stores the visual editor JSON data.\n * This field is always hidden in the admin UI as it's managed via the visual editor.\n */\nexport const puckDataField: Field = {\n name: 'puckData',\n type: 'json',\n admin: {\n hidden: true,\n description: 'Puck editor data - managed via visual editor',\n },\n}\n\n/**\n * Creates an editor version field with smart detection for hybrid setups.\n *\n * The field uses a beforeValidate hook to intelligently determine the editor version:\n * - New pages: Default to 'puck' (or custom defaultValue)\n * - Existing pages with legacy blocks but no puckData: Set to 'legacy'\n * - Existing pages with puckData: Set to 'puck'\n *\n * This prevents existing legacy content from being incorrectly marked as 'puck'\n * when the field is first added to a collection.\n *\n * @param defaultValue - The default editor version for NEW pages ('puck' or 'legacy')\n * @param sidebar - Whether to position in the sidebar (default: true)\n * @param legacyBlocksFieldName - Name of the legacy blocks field to check (default: 'layout')\n */\nexport function createEditorVersionField(\n defaultValue: 'legacy' | 'puck' = 'puck',\n sidebar: boolean = true,\n legacyBlocksFieldName: string = 'layout'\n): Field {\n return {\n name: 'editorVersion',\n type: 'select',\n // NO defaultValue here - we use the hook to intelligently detect the value\n // This prevents migrations from blindly setting 'puck' on legacy pages\n options: [\n { label: 'Legacy (Payload Blocks)', value: 'legacy' },\n { label: 'Puck Visual Editor', value: 'puck' },\n ],\n admin: {\n position: sidebar ? 'sidebar' : undefined,\n description: 'Which editor was used to create this page',\n },\n hooks: {\n beforeValidate: [\n ({ value, data, operation }) => {\n // If value is explicitly set (and not null/undefined), keep it\n if (value) return value\n\n // Detect based on content - works for both new and existing documents\n const legacyBlocks = data?.[legacyBlocksFieldName]\n const hasLegacyBlocks = Array.isArray(legacyBlocks) && legacyBlocks.length > 0\n\n const puckData = data?.puckData as { content?: unknown[] } | null | undefined\n const hasPuckData =\n puckData?.content && Array.isArray(puckData.content) && puckData.content.length > 0\n\n // If has legacy blocks but no puck data, it's a legacy page\n if (hasLegacyBlocks && !hasPuckData) {\n return 'legacy'\n }\n\n // If has puck data, it's a puck page\n if (hasPuckData) {\n return 'puck'\n }\n\n // For new documents with no content yet, use configured default\n // For existing documents with no content, also use default\n return defaultValue\n },\n ],\n },\n }\n}\n\n/**\n * Pre-configured editor version field with 'puck' as default.\n * Use createEditorVersionField() for custom configuration.\n */\nexport const editorVersionField: Field = createEditorVersionField('puck', true)\n\n/**\n * Creates a page layout field with custom layouts.\n *\n * @param layouts - Array of layout definitions (defaults to DEFAULT_LAYOUTS)\n * @param sidebar - Whether to position in the sidebar (default: true)\n */\nexport function createPageLayoutField(\n layouts: LayoutDefinition[] = DEFAULT_LAYOUTS,\n sidebar: boolean = true\n): Field {\n return {\n name: 'pageLayout',\n type: 'select',\n required: true,\n defaultValue: 'default',\n options: layoutsToPayloadOptions(layouts),\n admin: {\n position: sidebar ? 'sidebar' : undefined,\n description: 'Overall page structure and layout style',\n },\n }\n}\n\n/**\n * Pre-configured page layout field with DEFAULT_LAYOUTS.\n * Use createPageLayoutField() for custom layouts.\n */\nexport const pageLayoutField: Field = createPageLayoutField()\n\n/**\n * Homepage flag field - marks a page as the site homepage.\n */\nexport const isHomepageField: Field = {\n name: 'isHomepage',\n type: 'checkbox',\n defaultValue: false,\n admin: {\n position: 'sidebar',\n description: 'Mark this page as the homepage',\n },\n}\n\n// =============================================================================\n// Field Groups\n// =============================================================================\n\n/**\n * SEO/Meta field group with all metadata fields.\n * Uses the official @payloadcms/plugin-seo convention: meta.title, meta.description\n *\n * Includes: title, description, image, noindex, nofollow, excludeFromSitemap\n */\nexport const seoFieldGroup: Field = {\n name: 'meta',\n type: 'group',\n label: 'SEO',\n admin: {\n position: 'sidebar',\n },\n fields: [\n {\n name: 'title',\n type: 'text',\n label: 'Meta Title',\n admin: {\n description: 'Override the page title for search engines',\n },\n },\n {\n name: 'description',\n type: 'textarea',\n label: 'Meta Description',\n admin: {\n description: 'Description shown in search engine results',\n },\n },\n {\n name: 'image',\n type: 'upload',\n relationTo: 'media',\n label: 'Open Graph Image',\n admin: {\n description: 'Image shown when sharing on social media',\n },\n },\n {\n name: 'noindex',\n type: 'checkbox',\n label: 'No Index',\n defaultValue: false,\n admin: {\n description: 'Prevent search engines from indexing this page',\n },\n },\n {\n name: 'nofollow',\n type: 'checkbox',\n label: 'No Follow',\n defaultValue: false,\n admin: {\n description: 'Prevent search engines from following links on this page',\n },\n },\n {\n name: 'excludeFromSitemap',\n type: 'checkbox',\n label: 'Exclude from Sitemap',\n defaultValue: false,\n admin: {\n description: 'Exclude this page from the XML sitemap',\n },\n },\n ],\n}\n\n/**\n * Default conversion type options\n */\nexport const DEFAULT_CONVERSION_TYPES: ConversionTypeOption[] = [\n { label: 'Lead', value: 'lead' },\n { label: 'Registration', value: 'registration' },\n { label: 'Purchase', value: 'purchase' },\n { label: 'Donation', value: 'donation' },\n { label: 'Newsletter Signup', value: 'newsletter' },\n { label: 'Contact Form', value: 'contact' },\n { label: 'Custom', value: 'custom' },\n]\n\n/**\n * Creates a conversion tracking field group with custom options.\n *\n * @param conversionTypes - Custom conversion type options (defaults to DEFAULT_CONVERSION_TYPES)\n * @param sidebar - Whether to position in the sidebar (default: true)\n *\n * @example\n * ```typescript\n * // Use default conversion types\n * ...getPuckFields({ includeConversion: true })\n *\n * // Use custom conversion types\n * ...getPuckFields({\n * includeConversion: true,\n * conversionTypeOptions: [\n * { label: 'Registration', value: 'registration' },\n * { label: 'Donation', value: 'donation' },\n * { label: 'Course Start', value: 'course_start' },\n * { label: 'Custom', value: 'custom' },\n * ],\n * })\n * ```\n */\nexport function createConversionFieldGroup(\n conversionTypes: ConversionTypeOption[] = DEFAULT_CONVERSION_TYPES,\n sidebar: boolean = true\n): Field {\n return {\n name: 'conversionTracking',\n type: 'group',\n label: 'Conversion Tracking',\n admin: {\n position: sidebar ? 'sidebar' : undefined,\n description: 'Configure conversion tracking for analytics',\n },\n fields: [\n {\n name: 'isConversionPage',\n type: 'checkbox',\n label: 'Is Conversion Page',\n defaultValue: false,\n admin: {\n description:\n 'Check this if this page represents a completed conversion (e.g., thank you page)',\n },\n },\n {\n name: 'conversionType',\n type: 'select',\n label: 'Conversion Type',\n options: conversionTypes,\n admin: {\n description: 'Type of conversion this page represents',\n condition: (data, siblingData) => siblingData?.isConversionPage === true,\n },\n },\n {\n name: 'conversionValue',\n type: 'number',\n label: 'Conversion Value',\n defaultValue: 0,\n admin: {\n description: 'Monetary value of this conversion (0 for non-monetary conversions)',\n condition: (data, siblingData) => siblingData?.isConversionPage === true,\n },\n },\n ],\n }\n}\n\n/**\n * Pre-configured conversion tracking field group with default options.\n * Use createConversionFieldGroup() for custom conversion types.\n */\nexport const conversionFieldGroup: Field = createConversionFieldGroup()\n\n// =============================================================================\n// Main Utility Function\n// =============================================================================\n\n/**\n * Returns an array of Puck-related field definitions for hybrid collection integration.\n *\n * Use this when you have an existing collection with legacy Payload blocks and want\n * to ADD Puck support without replacing your entire collection configuration.\n *\n * @param options - Configuration options for which fields to include\n * @returns Array of Field definitions to spread into your collection's fields array\n *\n * @example\n * ```typescript\n * import { getPuckFields } from '@delmaredigital/payload-puck'\n *\n * export const Pages: CollectionConfig = {\n * slug: 'pages',\n * fields: [\n * // Your existing fields\n * { name: 'title', type: 'text', required: true },\n * { name: 'slug', type: 'text', required: true },\n *\n * // Legacy Payload blocks (keep these!)\n * { name: 'layout', type: 'blocks', blocks: [...] },\n *\n * // Add Puck fields for hybrid editing\n * ...getPuckFields({\n * includeSEO: false, // You have your own SEO fields\n * includeConversion: true, // Include conversion tracking\n * includeEditorVersion: true,\n * }),\n * ],\n * }\n * ```\n */\nexport function getPuckFields(options: GetPuckFieldsOptions = {}): Field[] {\n const {\n includeSEO = true,\n includeConversion = false,\n includeEditorVersion = true,\n includePageLayout = true,\n includeIsHomepage = false,\n layouts = DEFAULT_LAYOUTS,\n defaultEditorVersion = 'puck',\n legacyBlocksFieldName = 'layout',\n sidebarPosition = true,\n conversionTypeOptions,\n } = options\n\n const fields: Field[] = []\n\n // Core puckData field (always included - this is essential for Puck)\n fields.push(puckDataField)\n\n // Editor version field (discriminator for hybrid rendering)\n // Uses smart detection to preserve legacy pages when field is first added\n if (includeEditorVersion) {\n fields.push(createEditorVersionField(defaultEditorVersion, sidebarPosition, legacyBlocksFieldName))\n }\n\n // Page layout field\n if (includePageLayout) {\n fields.push(createPageLayoutField(layouts, sidebarPosition))\n }\n\n // Homepage flag\n if (includeIsHomepage) {\n fields.push(isHomepageField)\n }\n\n // SEO group\n if (includeSEO) {\n fields.push(seoFieldGroup)\n }\n\n // Conversion tracking group (with optional custom conversion types)\n if (includeConversion) {\n fields.push(createConversionFieldGroup(conversionTypeOptions, sidebarPosition))\n }\n\n return fields\n}\n\n/**\n * Returns Puck-related fields AND hooks for hybrid collection integration.\n *\n * This is the recommended way to add Puck support to an existing collection\n * when you need the isHomepage field, as it ensures the uniqueness hook is included.\n *\n * @param options - Configuration options for which fields and hooks to include\n * @returns Object with fields array and hooks object to spread into your collection\n *\n * @example\n * ```typescript\n * import { getPuckCollectionConfig } from '@delmaredigital/payload-puck'\n *\n * const { fields, hooks } = getPuckCollectionConfig({\n * includeIsHomepage: true,\n * includeSEO: false,\n * })\n *\n * export const Pages: CollectionConfig = {\n * slug: 'pages',\n * hooks: {\n * ...hooks,\n * // Your other hooks...\n * beforeChange: [\n * ...(hooks.beforeChange ?? []),\n * // Your custom beforeChange hooks...\n * ],\n * },\n * fields: [\n * { name: 'title', type: 'text', required: true },\n * { name: 'slug', type: 'text', required: true },\n * ...fields,\n * ],\n * }\n * ```\n */\nexport function getPuckCollectionConfig(options: GetPuckCollectionConfigOptions = {}): {\n fields: Field[]\n hooks: CollectionConfig['hooks']\n} {\n const { includeHomepageHook = true, includeIsHomepage = false, ...fieldOptions } = options\n\n // Get the fields using the existing getPuckFields function\n const fields = getPuckFields({ includeIsHomepage, ...fieldOptions })\n\n // Build hooks object\n const hooks: CollectionConfig['hooks'] = {}\n\n // Add isHomepage uniqueness hook if:\n // - includeIsHomepage is true (the field is being added)\n // - includeHomepageHook is not explicitly false\n if (includeIsHomepage && includeHomepageHook !== false) {\n hooks.beforeChange = [createIsHomepageUniqueHook()]\n }\n\n return { fields, hooks }\n}\n\n// Re-export types\nexport type { GetPuckFieldsOptions, GetPuckCollectionConfigOptions, ConversionTypeOption } from './types.js'\n"],"names":["createIsHomepageUniqueHook","DEFAULT_LAYOUTS","layoutsToPayloadOptions","puckDataField","name","type","admin","hidden","description","createEditorVersionField","defaultValue","sidebar","legacyBlocksFieldName","options","label","value","position","undefined","hooks","beforeValidate","data","operation","legacyBlocks","hasLegacyBlocks","Array","isArray","length","puckData","hasPuckData","content","editorVersionField","createPageLayoutField","layouts","required","pageLayoutField","isHomepageField","seoFieldGroup","fields","relationTo","DEFAULT_CONVERSION_TYPES","createConversionFieldGroup","conversionTypes","condition","siblingData","isConversionPage","conversionFieldGroup","getPuckFields","includeSEO","includeConversion","includeEditorVersion","includePageLayout","includeIsHomepage","defaultEditorVersion","sidebarPosition","conversionTypeOptions","push","getPuckCollectionConfig","includeHomepageHook","fieldOptions","beforeChange"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* These types support the getPuckFields() utility for hybrid collection integration.
|
|
5
5
|
*/
|
|
6
|
-
import type { LayoutDefinition } from '../../layouts/types';
|
|
6
|
+
import type { LayoutDefinition } from '../../layouts/types.js';
|
|
7
7
|
/**
|
|
8
8
|
* Conversion type option for the conversion tracking field
|
|
9
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/fields/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/plugin/fields/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE5B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAExC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IAEzB;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAC/C;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,8BAA+B,SAAQ,oBAAoB;IAC1E;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B"}
|
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
* Types for Puck field utilities
|
|
3
3
|
*
|
|
4
4
|
* These types support the getPuckFields() utility for hybrid collection integration.
|
|
5
|
-
*/
|
|
6
|
-
|
|
5
|
+
*/ /**
|
|
6
|
+
* Options for getPuckCollectionConfig() utility function
|
|
7
|
+
*
|
|
8
|
+
* Extends GetPuckFieldsOptions with hook configuration for hybrid collection integration.
|
|
9
|
+
* Returns both fields AND hooks so you don't have to manually configure the isHomepage hook.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* import { getPuckCollectionConfig } from '@delmaredigital/payload-puck'
|
|
14
|
+
*
|
|
15
|
+
* const { fields, hooks } = getPuckCollectionConfig({
|
|
16
|
+
* includeIsHomepage: true,
|
|
17
|
+
* includeSEO: false,
|
|
18
|
+
* })
|
|
19
|
+
*
|
|
20
|
+
* const Pages: CollectionConfig = {
|
|
21
|
+
* slug: 'pages',
|
|
22
|
+
* hooks,
|
|
23
|
+
* fields: [
|
|
24
|
+
* { name: 'title', type: 'text', required: true },
|
|
25
|
+
* ...fields,
|
|
26
|
+
* ],
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/ export { };
|
|
30
|
+
|
|
7
31
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/plugin/fields/types.ts"],"sourcesContent":["/**\n * Types for Puck field utilities\n *\n * These types support the getPuckFields() utility for hybrid collection integration.\n */\n\nimport type { LayoutDefinition } from '../../layouts/types.js'\n\n/**\n * Conversion type option for the conversion tracking field\n */\nexport interface ConversionTypeOption {\n label: string\n value: string\n}\n\n/**\n * Options for getPuckFields() utility function\n *\n * Use this to configure which Puck-related fields to include\n * when adding Puck support to an existing collection.\n *\n * @example\n * ```typescript\n * import { getPuckFields } from '@delmaredigital/payload-puck'\n *\n * const Pages: CollectionConfig = {\n * slug: 'pages',\n * fields: [\n * // Your existing fields...\n * { name: 'layout', type: 'blocks', blocks: [...] },\n *\n * // Add Puck support\n * ...getPuckFields({\n * includeSEO: false, // Using your own SEO fields\n * includeConversion: true,\n * }),\n * ],\n * }\n * ```\n */\nexport interface GetPuckFieldsOptions {\n /**\n * Include SEO field group using official @payloadcms/plugin-seo convention\n * (meta.title, meta.description, meta.image, noindex, nofollow, excludeFromSitemap)\n * @default true\n */\n includeSEO?: boolean\n\n /**\n * Include conversion tracking field group (isConversionPage, conversionType, conversionValue)\n * @default false\n */\n includeConversion?: boolean\n\n /**\n * Include editor version field ('legacy' | 'puck' discriminator)\n * @default true\n */\n includeEditorVersion?: boolean\n\n /**\n * Include page layout selector field\n * @default true\n */\n includePageLayout?: boolean\n\n /**\n * Include isHomepage checkbox field\n * @default false\n */\n includeIsHomepage?: boolean\n\n /**\n * Custom layouts for the page layout selector.\n * If not provided, uses the plugin's DEFAULT_LAYOUTS.\n *\n * Only the `value` and `label` properties are used for the Payload field.\n * Header/footer components are used by the editor and renderer.\n */\n layouts?: LayoutDefinition[]\n\n /**\n * Default editor version value for new pages.\n * @default 'puck'\n */\n defaultEditorVersion?: 'legacy' | 'puck'\n\n /**\n * Name of the legacy blocks field to check when detecting editor version.\n * Used by the smart detection hook to determine if existing pages have legacy content.\n * @default 'layout'\n */\n legacyBlocksFieldName?: string\n\n /**\n * Whether to place applicable fields in the sidebar.\n * @default true\n */\n sidebarPosition?: boolean\n\n /**\n * Custom conversion type options for the conversion tracking field.\n * Only used when includeConversion is true.\n *\n * @example\n * ```typescript\n * ...getPuckFields({\n * includeConversion: true,\n * conversionTypeOptions: [\n * { label: 'Registration', value: 'registration' },\n * { label: 'Donation', value: 'donation' },\n * { label: 'Course Start', value: 'course_start' },\n * ],\n * })\n * ```\n */\n conversionTypeOptions?: ConversionTypeOption[]\n}\n\n/**\n * Options for getPuckCollectionConfig() utility function\n *\n * Extends GetPuckFieldsOptions with hook configuration for hybrid collection integration.\n * Returns both fields AND hooks so you don't have to manually configure the isHomepage hook.\n *\n * @example\n * ```typescript\n * import { getPuckCollectionConfig } from '@delmaredigital/payload-puck'\n *\n * const { fields, hooks } = getPuckCollectionConfig({\n * includeIsHomepage: true,\n * includeSEO: false,\n * })\n *\n * const Pages: CollectionConfig = {\n * slug: 'pages',\n * hooks,\n * fields: [\n * { name: 'title', type: 'text', required: true },\n * ...fields,\n * ],\n * }\n * ```\n */\nexport interface GetPuckCollectionConfigOptions extends GetPuckFieldsOptions {\n /**\n * Include isHomepage uniqueness hook in returned hooks.\n * Only takes effect when includeIsHomepage is true.\n * @default true (when includeIsHomepage is true)\n */\n includeHomepageHook?: boolean\n}\n"],"names":[],"mappings":"AAAA;;;;CAIC,GAoHD;;;;;;;;;;;;;;;;;;;;;;;;CAwBC,GACD,WAOC"}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Reusable Payload hooks for Puck-enabled collections.
|
|
5
5
|
*/
|
|
6
|
-
export { createIsHomepageUniqueHook, unsetHomepage, HomepageConflictError, type IsHomepageUniqueHookOptions, type ExistingHomepageInfo, } from './isHomepageUnique';
|
|
6
|
+
export { createIsHomepageUniqueHook, unsetHomepage, HomepageConflictError, type IsHomepageUniqueHookOptions, type ExistingHomepageInfo, } from './isHomepageUnique.js';
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugin/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,GAC1B,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugin/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,GAC1B,MAAM,uBAAuB,CAAA"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* Puck Plugin Hooks
|
|
3
3
|
*
|
|
4
4
|
* Reusable Payload hooks for Puck-enabled collections.
|
|
5
|
-
*/
|
|
6
|
-
|
|
5
|
+
*/ export { createIsHomepageUniqueHook, unsetHomepage, HomepageConflictError } from './isHomepageUnique.js';
|
|
6
|
+
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/plugin/hooks/index.ts"],"sourcesContent":["/**\n * Puck Plugin Hooks\n *\n * Reusable Payload hooks for Puck-enabled collections.\n */\n\nexport {\n createIsHomepageUniqueHook,\n unsetHomepage,\n HomepageConflictError,\n type IsHomepageUniqueHookOptions,\n type ExistingHomepageInfo,\n} from './isHomepageUnique.js'\n"],"names":["createIsHomepageUniqueHook","unsetHomepage","HomepageConflictError"],"mappings":"AAAA;;;;CAIC,GAED,SACEA,0BAA0B,EAC1BC,aAAa,EACbC,qBAAqB,QAGhB,wBAAuB"}
|
|
@@ -2,13 +2,13 @@ import { APIError } from 'payload';
|
|
|
2
2
|
/**
|
|
3
3
|
* Error thrown when attempting to set a second page as homepage.
|
|
4
4
|
* Contains information about the existing homepage for client-side handling.
|
|
5
|
-
*/
|
|
6
|
-
export class HomepageConflictError extends APIError {
|
|
5
|
+
*/ export class HomepageConflictError extends APIError {
|
|
7
6
|
existingHomepage;
|
|
8
|
-
constructor(existingHomepage)
|
|
9
|
-
super(`Another page is already set as homepage: "${existingHomepage.title}" (/${existingHomepage.slug})`, 400,
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
constructor(existingHomepage){
|
|
8
|
+
super(`Another page is already set as homepage: "${existingHomepage.title}" (/${existingHomepage.slug})`, 400, // Pass existingHomepage in the data parameter so it appears in the API response
|
|
9
|
+
{
|
|
10
|
+
existingHomepage
|
|
11
|
+
}, true // isPublic - allows the message to be shown to the client
|
|
12
12
|
);
|
|
13
13
|
this.name = 'HomepageConflictError';
|
|
14
14
|
this.existingHomepage = existingHomepage;
|
|
@@ -34,9 +34,8 @@ export class HomepageConflictError extends APIError {
|
|
|
34
34
|
* fields: [...],
|
|
35
35
|
* }
|
|
36
36
|
* ```
|
|
37
|
-
*/
|
|
38
|
-
|
|
39
|
-
return async ({ data, originalDoc, req, collection, context }) => {
|
|
37
|
+
*/ export function createIsHomepageUniqueHook(options = {}) {
|
|
38
|
+
return async ({ data, originalDoc, req, collection, context })=>{
|
|
40
39
|
// Skip if explicitly bypassed (used during homepage swap)
|
|
41
40
|
if (context?.skipIsHomepageHook) {
|
|
42
41
|
return data;
|
|
@@ -54,20 +53,30 @@ export function createIsHomepageUniqueHook(options = {}) {
|
|
|
54
53
|
collection: collectionSlug,
|
|
55
54
|
where: {
|
|
56
55
|
and: [
|
|
57
|
-
{
|
|
56
|
+
{
|
|
57
|
+
isHomepage: {
|
|
58
|
+
equals: true
|
|
59
|
+
}
|
|
60
|
+
},
|
|
58
61
|
// Exclude current document if it has an ID
|
|
59
|
-
...
|
|
60
|
-
|
|
62
|
+
...originalDoc?.id ? [
|
|
63
|
+
{
|
|
64
|
+
id: {
|
|
65
|
+
not_equals: originalDoc.id
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
] : []
|
|
69
|
+
]
|
|
61
70
|
},
|
|
62
71
|
limit: 1,
|
|
63
|
-
depth: 0
|
|
72
|
+
depth: 0
|
|
64
73
|
});
|
|
65
74
|
if (existingHomepage.docs.length > 0) {
|
|
66
75
|
const existing = existingHomepage.docs[0];
|
|
67
76
|
throw new HomepageConflictError({
|
|
68
77
|
id: String(existing.id),
|
|
69
78
|
title: existing.title || 'Untitled',
|
|
70
|
-
slug: existing.slug || ''
|
|
79
|
+
slug: existing.slug || ''
|
|
71
80
|
});
|
|
72
81
|
}
|
|
73
82
|
return data;
|
|
@@ -76,18 +85,18 @@ export function createIsHomepageUniqueHook(options = {}) {
|
|
|
76
85
|
/**
|
|
77
86
|
* Unsets isHomepage on the specified page.
|
|
78
87
|
* Used when swapping homepages.
|
|
79
|
-
*/
|
|
80
|
-
export async function unsetHomepage(payload, collectionSlug, pageId) {
|
|
88
|
+
*/ export async function unsetHomepage(payload, collectionSlug, pageId) {
|
|
81
89
|
await payload.update({
|
|
82
90
|
collection: collectionSlug,
|
|
83
91
|
id: pageId,
|
|
84
92
|
data: {
|
|
85
|
-
isHomepage: false
|
|
93
|
+
isHomepage: false
|
|
86
94
|
},
|
|
87
95
|
// Skip hooks to avoid infinite loops
|
|
88
96
|
context: {
|
|
89
|
-
skipIsHomepageHook: true
|
|
90
|
-
}
|
|
97
|
+
skipIsHomepageHook: true
|
|
98
|
+
}
|
|
91
99
|
});
|
|
92
100
|
}
|
|
101
|
+
|
|
93
102
|
//# sourceMappingURL=isHomepageUnique.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/plugin/hooks/isHomepageUnique.ts"],"sourcesContent":["import type { CollectionBeforeChangeHook } from 'payload'\nimport { APIError } from 'payload'\n\n/**\n * Information about an existing homepage page\n */\nexport interface ExistingHomepageInfo {\n id: string\n title: string\n slug: string\n}\n\n/**\n * Error thrown when attempting to set a second page as homepage.\n * Contains information about the existing homepage for client-side handling.\n */\nexport class HomepageConflictError extends APIError {\n existingHomepage: ExistingHomepageInfo\n\n constructor(existingHomepage: ExistingHomepageInfo) {\n super(\n `Another page is already set as homepage: \"${existingHomepage.title}\" (/${existingHomepage.slug})`,\n 400,\n // Pass existingHomepage in the data parameter so it appears in the API response\n { existingHomepage },\n true // isPublic - allows the message to be shown to the client\n )\n this.name = 'HomepageConflictError'\n this.existingHomepage = existingHomepage\n }\n}\n\n/**\n * Options for the isHomepage uniqueness hook\n */\nexport interface IsHomepageUniqueHookOptions {\n /**\n * Collection slug to query for existing homepage.\n * Defaults to the current collection.\n */\n collectionSlug?: string\n}\n\n/**\n * Creates a beforeChange hook that ensures only one page can have isHomepage: true.\n *\n * When a user tries to set isHomepage to true on a page, this hook:\n * 1. Checks if another page already has isHomepage: true\n * 2. If found, throws a HomepageConflictError with the existing page info\n * 3. The client can then prompt the user to swap homepages\n *\n * @example\n * ```typescript\n * import { createIsHomepageUniqueHook } from '@delmaredigital/payload-puck/plugin'\n *\n * const Pages: CollectionConfig = {\n * slug: 'pages',\n * hooks: {\n * beforeChange: [createIsHomepageUniqueHook()],\n * },\n * fields: [...],\n * }\n * ```\n */\nexport function createIsHomepageUniqueHook(\n options: IsHomepageUniqueHookOptions = {}\n): CollectionBeforeChangeHook {\n return async ({ data, originalDoc, req, collection, context }) => {\n // Skip if explicitly bypassed (used during homepage swap)\n if (context?.skipIsHomepageHook) {\n return data\n }\n\n // Only check if isHomepage is being set to true\n const isSettingHomepage = data?.isHomepage === true\n const wasHomepage = originalDoc?.isHomepage === true\n\n // Skip if not setting as homepage, or if it was already homepage\n if (!isSettingHomepage || wasHomepage) {\n return data\n }\n\n const collectionSlug = options.collectionSlug || collection.slug\n\n // Query for existing homepage (excluding current document)\n const existingHomepage = await req.payload.find({\n collection: collectionSlug,\n where: {\n and: [\n { isHomepage: { equals: true } },\n // Exclude current document if it has an ID\n ...(originalDoc?.id ? [{ id: { not_equals: originalDoc.id } }] : []),\n ],\n },\n limit: 1,\n depth: 0,\n })\n\n if (existingHomepage.docs.length > 0) {\n const existing = existingHomepage.docs[0] as {\n id: string\n title?: string\n slug?: string\n }\n\n throw new HomepageConflictError({\n id: String(existing.id),\n title: existing.title || 'Untitled',\n slug: existing.slug || '',\n })\n }\n\n return data\n }\n}\n\n/**\n * Unsets isHomepage on the specified page.\n * Used when swapping homepages.\n */\nexport async function unsetHomepage(\n payload: any,\n collectionSlug: string,\n pageId: string\n): Promise<void> {\n await payload.update({\n collection: collectionSlug,\n id: pageId,\n data: {\n isHomepage: false,\n },\n // Skip hooks to avoid infinite loops\n context: {\n skipIsHomepageHook: true,\n },\n })\n}\n"],"names":["APIError","HomepageConflictError","existingHomepage","title","slug","name","createIsHomepageUniqueHook","options","data","originalDoc","req","collection","context","skipIsHomepageHook","isSettingHomepage","isHomepage","wasHomepage","collectionSlug","payload","find","where","and","equals","id","not_equals","limit","depth","docs","length","existing","String","unsetHomepage","pageId","update"],"mappings":"AACA,SAASA,QAAQ,QAAQ,UAAS;AAWlC;;;CAGC,GACD,OAAO,MAAMC,8BAA8BD;IACzCE,iBAAsC;IAEtC,YAAYA,gBAAsC,CAAE;QAClD,KAAK,CACH,CAAC,0CAA0C,EAAEA,iBAAiBC,KAAK,CAAC,IAAI,EAAED,iBAAiBE,IAAI,CAAC,CAAC,CAAC,EAClG,KACA,gFAAgF;QAChF;YAAEF;QAAiB,GACnB,KAAK,0DAA0D;;QAEjE,IAAI,CAACG,IAAI,GAAG;QACZ,IAAI,CAACH,gBAAgB,GAAGA;IAC1B;AACF;AAaA;;;;;;;;;;;;;;;;;;;;CAoBC,GACD,OAAO,SAASI,2BACdC,UAAuC,CAAC,CAAC;IAEzC,OAAO,OAAO,EAAEC,IAAI,EAAEC,WAAW,EAAEC,GAAG,EAAEC,UAAU,EAAEC,OAAO,EAAE;QAC3D,0DAA0D;QAC1D,IAAIA,SAASC,oBAAoB;YAC/B,OAAOL;QACT;QAEA,gDAAgD;QAChD,MAAMM,oBAAoBN,MAAMO,eAAe;QAC/C,MAAMC,cAAcP,aAAaM,eAAe;QAEhD,iEAAiE;QACjE,IAAI,CAACD,qBAAqBE,aAAa;YACrC,OAAOR;QACT;QAEA,MAAMS,iBAAiBV,QAAQU,cAAc,IAAIN,WAAWP,IAAI;QAEhE,2DAA2D;QAC3D,MAAMF,mBAAmB,MAAMQ,IAAIQ,OAAO,CAACC,IAAI,CAAC;YAC9CR,YAAYM;YACZG,OAAO;gBACLC,KAAK;oBACH;wBAAEN,YAAY;4BAAEO,QAAQ;wBAAK;oBAAE;oBAC/B,2CAA2C;uBACvCb,aAAac,KAAK;wBAAC;4BAAEA,IAAI;gCAAEC,YAAYf,YAAYc,EAAE;4BAAC;wBAAE;qBAAE,GAAG,EAAE;iBACpE;YACH;YACAE,OAAO;YACPC,OAAO;QACT;QAEA,IAAIxB,iBAAiByB,IAAI,CAACC,MAAM,GAAG,GAAG;YACpC,MAAMC,WAAW3B,iBAAiByB,IAAI,CAAC,EAAE;YAMzC,MAAM,IAAI1B,sBAAsB;gBAC9BsB,IAAIO,OAAOD,SAASN,EAAE;gBACtBpB,OAAO0B,SAAS1B,KAAK,IAAI;gBACzBC,MAAMyB,SAASzB,IAAI,IAAI;YACzB;QACF;QAEA,OAAOI;IACT;AACF;AAEA;;;CAGC,GACD,OAAO,eAAeuB,cACpBb,OAAY,EACZD,cAAsB,EACtBe,MAAc;IAEd,MAAMd,QAAQe,MAAM,CAAC;QACnBtB,YAAYM;QACZM,IAAIS;QACJxB,MAAM;YACJO,YAAY;QACd;QACA,qCAAqC;QACrCH,SAAS;YACPC,oBAAoB;QACtB;IACF;AACF"}
|
package/dist/plugin/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Field, Plugin } from 'payload';
|
|
2
|
-
import type { PuckPluginOptions, PuckAdminConfig } from '../types';
|
|
2
|
+
import type { PuckPluginOptions, PuckAdminConfig } from '../types/index.js';
|
|
3
3
|
/**
|
|
4
4
|
* Generates the UI field configuration for the Edit with Puck button
|
|
5
5
|
*/
|
|
@@ -38,13 +38,13 @@ declare function generatePuckEditField(collectionSlug: string, adminConfig?: Puc
|
|
|
38
38
|
* ```
|
|
39
39
|
*/
|
|
40
40
|
export declare function createPuckPlugin(options?: PuckPluginOptions): Plugin;
|
|
41
|
-
export { generatePagesCollection } from './collections/Pages';
|
|
42
|
-
export { TemplatesCollection } from '../collections/Templates';
|
|
43
|
-
export { getPuckFields, getPuckCollectionConfig, puckDataField, editorVersionField, createEditorVersionField, pageLayoutField, createPageLayoutField, isHomepageField, seoFieldGroup, conversionFieldGroup, } from './fields';
|
|
41
|
+
export { generatePagesCollection } from './collections/Pages.js';
|
|
42
|
+
export { TemplatesCollection } from '../collections/Templates.js';
|
|
43
|
+
export { getPuckFields, getPuckCollectionConfig, puckDataField, editorVersionField, createEditorVersionField, pageLayoutField, createPageLayoutField, isHomepageField, seoFieldGroup, conversionFieldGroup, } from './fields/index.js';
|
|
44
44
|
export { generatePuckEditField };
|
|
45
45
|
export { PUCK_STYLES_ENDPOINT } from '../endpoints/styles.js';
|
|
46
|
-
export { createIsHomepageUniqueHook, unsetHomepage, HomepageConflictError, } from './hooks';
|
|
47
|
-
export type { IsHomepageUniqueHookOptions } from './hooks';
|
|
48
|
-
export type { PuckPluginOptions, PuckAdminConfig } from '../types';
|
|
49
|
-
export type { GetPuckFieldsOptions, GetPuckCollectionConfigOptions } from './fields/types';
|
|
46
|
+
export { createIsHomepageUniqueHook, unsetHomepage, HomepageConflictError, } from './hooks/index.js';
|
|
47
|
+
export type { IsHomepageUniqueHookOptions } from './hooks/index.js';
|
|
48
|
+
export type { PuckPluginOptions, PuckAdminConfig } from '../types/index.js';
|
|
49
|
+
export type { GetPuckFieldsOptions, GetPuckCollectionConfigOptions } from './fields/types.js';
|
|
50
50
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA6C,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAA8B,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA6C,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAA;AA4EvG;;GAEG;AACH,iBAAS,qBAAqB,CAC5B,cAAc,EAAE,MAAM,EACtB,WAAW,GAAE,eAAoB,GAChC,KAAK,CAyBP;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,CA2VxE;AAGD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAGjE,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,aAAa,EACb,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,oBAAoB,GACrB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,qBAAqB,EAAE,CAAA;AAGhC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG7D,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,GACtB,MAAM,kBAAkB,CAAA;AACzB,YAAY,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAA;AAGnE,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC3E,YAAY,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAA"}
|