@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
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Puck Editor Dark Mode CSS Overrides
|
|
3
|
+
*
|
|
4
|
+
* This file overrides Puck's default light mode CSS variables when the `.dark` class
|
|
5
|
+
* is present on a parent element. PayloadCMS adds this class to <html> in dark mode.
|
|
6
|
+
*
|
|
7
|
+
* Puck uses a grey scale from grey-01 (darkest) to grey-12 (lightest) in light mode.
|
|
8
|
+
* For dark mode, we invert this scale so the UI remains readable.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
.dark {
|
|
12
|
+
/* Invert grey scale for dark mode */
|
|
13
|
+
/* Light mode: grey-01 = #181818 (darkest), grey-12 = #fafafa (lightest) */
|
|
14
|
+
/* Dark mode: invert so backgrounds are dark and text is light */
|
|
15
|
+
--puck-color-grey-01: #fafafa;
|
|
16
|
+
--puck-color-grey-02: #f5f5f5;
|
|
17
|
+
--puck-color-grey-03: #efefef;
|
|
18
|
+
--puck-color-grey-04: #e8e8e8;
|
|
19
|
+
--puck-color-grey-05: #d4d4d4;
|
|
20
|
+
--puck-color-grey-06: #b3b3b3;
|
|
21
|
+
--puck-color-grey-07: #8f8f8f;
|
|
22
|
+
--puck-color-grey-08: #6b6b6b;
|
|
23
|
+
--puck-color-grey-09: #525252;
|
|
24
|
+
--puck-color-grey-10: #3d3d3d;
|
|
25
|
+
--puck-color-grey-11: #272727;
|
|
26
|
+
--puck-color-grey-12: #181818;
|
|
27
|
+
|
|
28
|
+
/* Swap white/black */
|
|
29
|
+
--puck-color-white: #1a1a1a;
|
|
30
|
+
--puck-color-black: #ffffff;
|
|
31
|
+
|
|
32
|
+
/* Azure (primary blue) - adjust for dark mode contrast */
|
|
33
|
+
--puck-color-azure-01: #e0f2ff;
|
|
34
|
+
--puck-color-azure-02: #c4e5ff;
|
|
35
|
+
--puck-color-azure-03: #99d4ff;
|
|
36
|
+
--puck-color-azure-04: #66c2ff;
|
|
37
|
+
--puck-color-azure-05: #33b0ff;
|
|
38
|
+
--puck-color-azure-06: #009dff;
|
|
39
|
+
--puck-color-azure-07: #0080d9;
|
|
40
|
+
--puck-color-azure-08: #0066b3;
|
|
41
|
+
--puck-color-azure-09: #004d8c;
|
|
42
|
+
--puck-color-azure-10: #003366;
|
|
43
|
+
--puck-color-azure-11: #001a40;
|
|
44
|
+
--puck-color-azure-12: #00101a;
|
|
45
|
+
|
|
46
|
+
/* Rose (pink/red accents) */
|
|
47
|
+
--puck-color-rose-01: #ffe0f0;
|
|
48
|
+
--puck-color-rose-02: #ffc4e3;
|
|
49
|
+
--puck-color-rose-03: #ff99cf;
|
|
50
|
+
--puck-color-rose-04: #ff66b8;
|
|
51
|
+
--puck-color-rose-05: #ff33a1;
|
|
52
|
+
--puck-color-rose-06: #ff008a;
|
|
53
|
+
--puck-color-rose-07: #d90075;
|
|
54
|
+
--puck-color-rose-08: #b30061;
|
|
55
|
+
--puck-color-rose-09: #8c004d;
|
|
56
|
+
--puck-color-rose-10: #660038;
|
|
57
|
+
--puck-color-rose-11: #400024;
|
|
58
|
+
--puck-color-rose-12: #1a000f;
|
|
59
|
+
|
|
60
|
+
/* Green (success states) */
|
|
61
|
+
--puck-color-green-01: #e0ffe0;
|
|
62
|
+
--puck-color-green-02: #c4ffc4;
|
|
63
|
+
--puck-color-green-03: #99ff99;
|
|
64
|
+
--puck-color-green-04: #66ff66;
|
|
65
|
+
--puck-color-green-05: #33ff33;
|
|
66
|
+
--puck-color-green-06: #00e600;
|
|
67
|
+
--puck-color-green-07: #00c400;
|
|
68
|
+
--puck-color-green-08: #00a300;
|
|
69
|
+
--puck-color-green-09: #008200;
|
|
70
|
+
--puck-color-green-10: #006100;
|
|
71
|
+
--puck-color-green-11: #004000;
|
|
72
|
+
--puck-color-green-12: #001a00;
|
|
73
|
+
|
|
74
|
+
/* Yellow (warning states) */
|
|
75
|
+
--puck-color-yellow-01: #fffde0;
|
|
76
|
+
--puck-color-yellow-02: #fffbc4;
|
|
77
|
+
--puck-color-yellow-03: #fff899;
|
|
78
|
+
--puck-color-yellow-04: #fff566;
|
|
79
|
+
--puck-color-yellow-05: #fff233;
|
|
80
|
+
--puck-color-yellow-06: #e6d900;
|
|
81
|
+
--puck-color-yellow-07: #c4b800;
|
|
82
|
+
--puck-color-yellow-08: #a39800;
|
|
83
|
+
--puck-color-yellow-09: #827800;
|
|
84
|
+
--puck-color-yellow-10: #615800;
|
|
85
|
+
--puck-color-yellow-11: #403900;
|
|
86
|
+
--puck-color-yellow-12: #1a1700;
|
|
87
|
+
|
|
88
|
+
/* Red (error states) */
|
|
89
|
+
--puck-color-red-01: #ffe0e0;
|
|
90
|
+
--puck-color-red-02: #ffc4c4;
|
|
91
|
+
--puck-color-red-03: #ff9999;
|
|
92
|
+
--puck-color-red-04: #ff6666;
|
|
93
|
+
--puck-color-red-05: #ff3333;
|
|
94
|
+
--puck-color-red-06: #e60000;
|
|
95
|
+
--puck-color-red-07: #c40000;
|
|
96
|
+
--puck-color-red-08: #a30000;
|
|
97
|
+
--puck-color-red-09: #820000;
|
|
98
|
+
--puck-color-red-10: #610000;
|
|
99
|
+
--puck-color-red-11: #400000;
|
|
100
|
+
--puck-color-red-12: #1a0000;
|
|
101
|
+
}
|
package/dist/theme/context.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* ensuring backwards compatibility.
|
|
7
7
|
*/
|
|
8
8
|
import { type ReactNode } from 'react';
|
|
9
|
-
import type { ThemeConfig, ResolvedTheme } from './types';
|
|
9
|
+
import type { ThemeConfig, ResolvedTheme } from './types.js';
|
|
10
10
|
export interface ThemeProviderProps {
|
|
11
11
|
children: ReactNode;
|
|
12
12
|
/** Theme configuration to apply */
|
|
@@ -26,7 +26,7 @@ export interface ThemeProviderProps {
|
|
|
26
26
|
* </ThemeProvider>
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
|
-
export declare function ThemeProvider({ children, theme }: ThemeProviderProps): import("react
|
|
29
|
+
export declare function ThemeProvider({ children, theme }: ThemeProviderProps): import("react").JSX.Element;
|
|
30
30
|
/**
|
|
31
31
|
* Hook to access the current theme
|
|
32
32
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/theme/context.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAqB,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/theme/context.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AAEH,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAqB,aAAa,EAAE,MAAM,YAAY,CAAA;AAM/E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,SAAS,CAAA;IACnB,mCAAmC;IACnC,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,+BAWpE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,IAAI,aAAa,CAIxC;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,aAAa,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAG7C"}
|
package/dist/theme/context.js
CHANGED
|
@@ -6,11 +6,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
6
6
|
* React context for distributing theme configuration to Puck components.
|
|
7
7
|
* The useTheme() hook returns defaults when no provider is present,
|
|
8
8
|
* ensuring backwards compatibility.
|
|
9
|
-
*/
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
|
|
13
|
-
const ThemeContext = createContext(null);
|
|
9
|
+
*/ import { createContext, useContext, useMemo } from 'react';
|
|
10
|
+
import { DEFAULT_THEME } from './defaults.js';
|
|
11
|
+
import { resolveTheme } from './utils.js';
|
|
12
|
+
const ThemeContext = /*#__PURE__*/ createContext(null);
|
|
14
13
|
/**
|
|
15
14
|
* Provides theme configuration to descendant Puck components
|
|
16
15
|
*
|
|
@@ -24,13 +23,19 @@ const ThemeContext = createContext(null);
|
|
|
24
23
|
* <PageRenderer data={data} />
|
|
25
24
|
* </ThemeProvider>
|
|
26
25
|
* ```
|
|
27
|
-
*/
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
*/ export function ThemeProvider({ children, theme }) {
|
|
27
|
+
const resolvedTheme = useMemo(()=>resolveTheme(theme), [
|
|
28
|
+
theme
|
|
29
|
+
]);
|
|
30
|
+
const value = useMemo(()=>({
|
|
31
|
+
theme: resolvedTheme
|
|
32
|
+
}), [
|
|
33
|
+
resolvedTheme
|
|
34
|
+
]);
|
|
35
|
+
return /*#__PURE__*/ _jsx(ThemeContext.Provider, {
|
|
36
|
+
value: value,
|
|
37
|
+
children: children
|
|
38
|
+
});
|
|
34
39
|
}
|
|
35
40
|
/**
|
|
36
41
|
* Hook to access the current theme
|
|
@@ -46,8 +51,7 @@ export function ThemeProvider({ children, theme }) {
|
|
|
46
51
|
* return <button className={buttonClasses}>Click me</button>
|
|
47
52
|
* }
|
|
48
53
|
* ```
|
|
49
|
-
*/
|
|
50
|
-
export function useTheme() {
|
|
54
|
+
*/ export function useTheme() {
|
|
51
55
|
const context = useContext(ThemeContext);
|
|
52
56
|
// Return defaults if no provider - ensures backwards compatibility
|
|
53
57
|
return context?.theme ?? DEFAULT_THEME;
|
|
@@ -57,17 +61,16 @@ export function useTheme() {
|
|
|
57
61
|
*
|
|
58
62
|
* Use this when you need theme values in a server component
|
|
59
63
|
* where hooks cannot be used.
|
|
60
|
-
*/
|
|
61
|
-
export function getDefaultTheme() {
|
|
64
|
+
*/ export function getDefaultTheme() {
|
|
62
65
|
return DEFAULT_THEME;
|
|
63
66
|
}
|
|
64
67
|
/**
|
|
65
68
|
* Hook to check if a ThemeProvider is present
|
|
66
69
|
*
|
|
67
70
|
* Useful for conditional logic based on whether theming is configured.
|
|
68
|
-
*/
|
|
69
|
-
export function useHasThemeProvider() {
|
|
71
|
+
*/ export function useHasThemeProvider() {
|
|
70
72
|
const context = useContext(ThemeContext);
|
|
71
73
|
return context !== null;
|
|
72
74
|
}
|
|
75
|
+
|
|
73
76
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/theme/context.tsx"],"sourcesContent":["'use client'\n\n/**\n * Theme Context\n *\n * React context for distributing theme configuration to Puck components.\n * The useTheme() hook returns defaults when no provider is present,\n * ensuring backwards compatibility.\n */\n\nimport { createContext, useContext, useMemo, type ReactNode } from 'react'\nimport type { ThemeConfig, ThemeContextValue, ResolvedTheme } from './types.js'\nimport { DEFAULT_THEME } from './defaults.js'\nimport { resolveTheme } from './utils.js'\n\nconst ThemeContext = createContext<ThemeContextValue | null>(null)\n\nexport interface ThemeProviderProps {\n children: ReactNode\n /** Theme configuration to apply */\n theme?: ThemeConfig\n}\n\n/**\n * Provides theme configuration to descendant Puck components\n *\n * @example\n * ```tsx\n * <ThemeProvider theme={{\n * buttonVariants: {\n * default: { classes: 'bg-primary text-white hover:bg-primary/90' }\n * }\n * }}>\n * <PageRenderer data={data} />\n * </ThemeProvider>\n * ```\n */\nexport function ThemeProvider({ children, theme }: ThemeProviderProps) {\n const resolvedTheme = useMemo(() => resolveTheme(theme), [theme])\n\n const value = useMemo<ThemeContextValue>(\n () => ({\n theme: resolvedTheme,\n }),\n [resolvedTheme]\n )\n\n return <ThemeContext.Provider value={value}>{children}</ThemeContext.Provider>\n}\n\n/**\n * Hook to access the current theme\n *\n * Returns DEFAULT_THEME if no ThemeProvider is present,\n * ensuring components work standalone for backwards compatibility.\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const theme = useTheme()\n * const buttonClasses = getVariantClasses(theme.buttonVariants, 'primary')\n * return <button className={buttonClasses}>Click me</button>\n * }\n * ```\n */\nexport function useTheme(): ResolvedTheme {\n const context = useContext(ThemeContext)\n // Return defaults if no provider - ensures backwards compatibility\n return context?.theme ?? DEFAULT_THEME\n}\n\n/**\n * Gets the default theme for server components\n *\n * Use this when you need theme values in a server component\n * where hooks cannot be used.\n */\nexport function getDefaultTheme(): ResolvedTheme {\n return DEFAULT_THEME\n}\n\n/**\n * Hook to check if a ThemeProvider is present\n *\n * Useful for conditional logic based on whether theming is configured.\n */\nexport function useHasThemeProvider(): boolean {\n const context = useContext(ThemeContext)\n return context !== null\n}\n"],"names":["createContext","useContext","useMemo","DEFAULT_THEME","resolveTheme","ThemeContext","ThemeProvider","children","theme","resolvedTheme","value","Provider","useTheme","context","getDefaultTheme","useHasThemeProvider"],"mappings":"AAAA;;AAEA;;;;;;CAMC,GAED,SAASA,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAwB,QAAO;AAE1E,SAASC,aAAa,QAAQ,gBAAe;AAC7C,SAASC,YAAY,QAAQ,aAAY;AAEzC,MAAMC,6BAAeL,cAAwC;AAQ7D;;;;;;;;;;;;;CAaC,GACD,OAAO,SAASM,cAAc,EAAEC,QAAQ,EAAEC,KAAK,EAAsB;IACnE,MAAMC,gBAAgBP,QAAQ,IAAME,aAAaI,QAAQ;QAACA;KAAM;IAEhE,MAAME,QAAQR,QACZ,IAAO,CAAA;YACLM,OAAOC;QACT,CAAA,GACA;QAACA;KAAc;IAGjB,qBAAO,KAACJ,aAAaM,QAAQ;QAACD,OAAOA;kBAAQH;;AAC/C;AAEA;;;;;;;;;;;;;;CAcC,GACD,OAAO,SAASK;IACd,MAAMC,UAAUZ,WAAWI;IAC3B,mEAAmE;IACnE,OAAOQ,SAASL,SAASL;AAC3B;AAEA;;;;;CAKC,GACD,OAAO,SAASW;IACd,OAAOX;AACT;AAEA;;;;CAIC,GACD,OAAO,SAASY;IACd,MAAMF,UAAUZ,WAAWI;IAC3B,OAAOQ,YAAY;AACrB"}
|
package/dist/theme/defaults.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* These defaults ensure backwards compatibility - components render
|
|
5
5
|
* identically to before theming was introduced when no theme is provided.
|
|
6
6
|
*/
|
|
7
|
-
import type { ButtonVariantStyles, BackgroundStyles, ColorPreset, ResolvedTheme } from './types';
|
|
7
|
+
import type { ButtonVariantStyles, BackgroundStyles, ColorPreset, ResolvedTheme } from './types.js';
|
|
8
8
|
/**
|
|
9
9
|
* Default button variant styles
|
|
10
10
|
* Uses semantic Tailwind classes that map to CSS variables (--primary, --secondary, etc.)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/theme/defaults.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACd,MAAM,
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/theme/defaults.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACd,MAAM,YAAY,CAAA;AAEnB;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,mBAOrC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,2BAA2B,EAAE,mBAMzC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,gBAI3C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,WAAW,EAW9C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AAEnD;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,aAM3B,CAAA"}
|
package/dist/theme/defaults.js
CHANGED
|
@@ -3,70 +3,116 @@
|
|
|
3
3
|
*
|
|
4
4
|
* These defaults ensure backwards compatibility - components render
|
|
5
5
|
* identically to before theming was introduced when no theme is provided.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
6
|
+
*/ /**
|
|
8
7
|
* Default button variant styles
|
|
9
8
|
* Uses semantic Tailwind classes that map to CSS variables (--primary, --secondary, etc.)
|
|
10
9
|
* This allows consuming apps to customize colors via their theme CSS variables.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
*/ export const DEFAULT_BUTTON_VARIANTS = {
|
|
11
|
+
default: {
|
|
12
|
+
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
13
|
+
},
|
|
14
|
+
secondary: {
|
|
15
|
+
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
16
|
+
},
|
|
17
|
+
outline: {
|
|
18
|
+
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
19
|
+
},
|
|
20
|
+
ghost: {
|
|
21
|
+
classes: 'bg-transparent hover:bg-accent hover:text-accent-foreground'
|
|
22
|
+
},
|
|
23
|
+
destructive: {
|
|
24
|
+
classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90'
|
|
25
|
+
},
|
|
26
|
+
link: {
|
|
27
|
+
classes: 'text-primary underline-offset-4 hover:underline bg-transparent'
|
|
28
|
+
}
|
|
19
29
|
};
|
|
20
30
|
/**
|
|
21
31
|
* Default CTA button variant styles
|
|
22
32
|
* Uses semantic Tailwind classes that map to CSS variables.
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
*/ export const DEFAULT_CTA_BUTTON_VARIANTS = {
|
|
34
|
+
primary: {
|
|
35
|
+
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
36
|
+
},
|
|
37
|
+
secondary: {
|
|
38
|
+
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
39
|
+
},
|
|
40
|
+
outline: {
|
|
41
|
+
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
42
|
+
},
|
|
43
|
+
ghost: {
|
|
44
|
+
classes: 'bg-transparent hover:bg-accent hover:text-accent-foreground'
|
|
45
|
+
},
|
|
46
|
+
link: {
|
|
47
|
+
classes: 'text-primary underline-offset-4 hover:underline bg-transparent'
|
|
48
|
+
}
|
|
30
49
|
};
|
|
31
50
|
/**
|
|
32
51
|
* Default CTA background styles
|
|
33
52
|
* Uses semantic Tailwind classes that map to CSS variables.
|
|
34
|
-
*/
|
|
35
|
-
export const DEFAULT_CTA_BACKGROUND_STYLES = {
|
|
53
|
+
*/ export const DEFAULT_CTA_BACKGROUND_STYLES = {
|
|
36
54
|
default: 'bg-muted',
|
|
37
55
|
dark: 'bg-foreground text-background',
|
|
38
|
-
light: 'bg-background'
|
|
56
|
+
light: 'bg-background'
|
|
39
57
|
};
|
|
40
58
|
/**
|
|
41
59
|
* Default color picker presets
|
|
42
60
|
* Matches DEFAULT_PRESETS from ColorPickerField.tsx
|
|
43
|
-
*/
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
{
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
{
|
|
53
|
-
|
|
54
|
-
|
|
61
|
+
*/ export const DEFAULT_COLOR_PRESETS = [
|
|
62
|
+
{
|
|
63
|
+
hex: '#ffffff',
|
|
64
|
+
label: 'White'
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
hex: '#f9fafb',
|
|
68
|
+
label: 'Gray 50'
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
hex: '#f3f4f6',
|
|
72
|
+
label: 'Gray 100'
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
hex: '#1f2937',
|
|
76
|
+
label: 'Gray 800'
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
hex: '#111827',
|
|
80
|
+
label: 'Gray 900'
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
hex: '#000000',
|
|
84
|
+
label: 'Black'
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
hex: '#3b82f6',
|
|
88
|
+
label: 'Blue'
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
hex: '#10b981',
|
|
92
|
+
label: 'Green'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
hex: '#f59e0b',
|
|
96
|
+
label: 'Amber'
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
hex: '#ef4444',
|
|
100
|
+
label: 'Red'
|
|
101
|
+
}
|
|
55
102
|
];
|
|
56
103
|
/**
|
|
57
104
|
* Default focus ring color class
|
|
58
105
|
* Uses semantic ring color from CSS variables
|
|
59
|
-
*/
|
|
60
|
-
export const DEFAULT_FOCUS_RING = 'focus:ring-ring';
|
|
106
|
+
*/ export const DEFAULT_FOCUS_RING = 'focus:ring-ring';
|
|
61
107
|
/**
|
|
62
108
|
* Complete default theme
|
|
63
109
|
* Used when no ThemeProvider is present or no theme config is provided
|
|
64
|
-
*/
|
|
65
|
-
export const DEFAULT_THEME = {
|
|
110
|
+
*/ export const DEFAULT_THEME = {
|
|
66
111
|
buttonVariants: DEFAULT_BUTTON_VARIANTS,
|
|
67
112
|
ctaButtonVariants: DEFAULT_CTA_BUTTON_VARIANTS,
|
|
68
113
|
ctaBackgroundStyles: DEFAULT_CTA_BACKGROUND_STYLES,
|
|
69
114
|
colorPresets: DEFAULT_COLOR_PRESETS,
|
|
70
|
-
focusRingColor: DEFAULT_FOCUS_RING
|
|
115
|
+
focusRingColor: DEFAULT_FOCUS_RING
|
|
71
116
|
};
|
|
117
|
+
|
|
72
118
|
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/theme/defaults.ts"],"sourcesContent":["/**\n * Default Theme Values\n *\n * These defaults ensure backwards compatibility - components render\n * identically to before theming was introduced when no theme is provided.\n */\n\nimport type {\n ButtonVariantStyles,\n BackgroundStyles,\n ColorPreset,\n ResolvedTheme,\n} from './types.js'\n\n/**\n * Default button variant styles\n * Uses semantic Tailwind classes that map to CSS variables (--primary, --secondary, etc.)\n * This allows consuming apps to customize colors via their theme CSS variables.\n */\nexport const DEFAULT_BUTTON_VARIANTS: ButtonVariantStyles = {\n default: { classes: 'bg-primary text-primary-foreground hover:bg-primary/90' },\n secondary: { classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80' },\n outline: { classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground' },\n ghost: { classes: 'bg-transparent hover:bg-accent hover:text-accent-foreground' },\n destructive: { classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90' },\n link: { classes: 'text-primary underline-offset-4 hover:underline bg-transparent' },\n}\n\n/**\n * Default CTA button variant styles\n * Uses semantic Tailwind classes that map to CSS variables.\n */\nexport const DEFAULT_CTA_BUTTON_VARIANTS: ButtonVariantStyles = {\n primary: { classes: 'bg-primary text-primary-foreground hover:bg-primary/90' },\n secondary: { classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80' },\n outline: { classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground' },\n ghost: { classes: 'bg-transparent hover:bg-accent hover:text-accent-foreground' },\n link: { classes: 'text-primary underline-offset-4 hover:underline bg-transparent' },\n}\n\n/**\n * Default CTA background styles\n * Uses semantic Tailwind classes that map to CSS variables.\n */\nexport const DEFAULT_CTA_BACKGROUND_STYLES: BackgroundStyles = {\n default: 'bg-muted',\n dark: 'bg-foreground text-background',\n light: 'bg-background',\n}\n\n/**\n * Default color picker presets\n * Matches DEFAULT_PRESETS from ColorPickerField.tsx\n */\nexport const DEFAULT_COLOR_PRESETS: ColorPreset[] = [\n { hex: '#ffffff', label: 'White' },\n { hex: '#f9fafb', label: 'Gray 50' },\n { hex: '#f3f4f6', label: 'Gray 100' },\n { hex: '#1f2937', label: 'Gray 800' },\n { hex: '#111827', label: 'Gray 900' },\n { hex: '#000000', label: 'Black' },\n { hex: '#3b82f6', label: 'Blue' },\n { hex: '#10b981', label: 'Green' },\n { hex: '#f59e0b', label: 'Amber' },\n { hex: '#ef4444', label: 'Red' },\n]\n\n/**\n * Default focus ring color class\n * Uses semantic ring color from CSS variables\n */\nexport const DEFAULT_FOCUS_RING = 'focus:ring-ring'\n\n/**\n * Complete default theme\n * Used when no ThemeProvider is present or no theme config is provided\n */\nexport const DEFAULT_THEME: ResolvedTheme = {\n buttonVariants: DEFAULT_BUTTON_VARIANTS,\n ctaButtonVariants: DEFAULT_CTA_BUTTON_VARIANTS,\n ctaBackgroundStyles: DEFAULT_CTA_BACKGROUND_STYLES,\n colorPresets: DEFAULT_COLOR_PRESETS,\n focusRingColor: DEFAULT_FOCUS_RING,\n}\n"],"names":["DEFAULT_BUTTON_VARIANTS","default","classes","secondary","outline","ghost","destructive","link","DEFAULT_CTA_BUTTON_VARIANTS","primary","DEFAULT_CTA_BACKGROUND_STYLES","dark","light","DEFAULT_COLOR_PRESETS","hex","label","DEFAULT_FOCUS_RING","DEFAULT_THEME","buttonVariants","ctaButtonVariants","ctaBackgroundStyles","colorPresets","focusRingColor"],"mappings":"AAAA;;;;;CAKC,GASD;;;;CAIC,GACD,OAAO,MAAMA,0BAA+C;IAC1DC,SAAS;QAAEC,SAAS;IAAyD;IAC7EC,WAAW;QAAED,SAAS;IAA+D;IACrFE,SAAS;QAAEF,SAAS;IAAiF;IACrGG,OAAO;QAAEH,SAAS;IAA8D;IAChFI,aAAa;QAAEJ,SAAS;IAAqE;IAC7FK,MAAM;QAAEL,SAAS;IAAiE;AACpF,EAAC;AAED;;;CAGC,GACD,OAAO,MAAMM,8BAAmD;IAC9DC,SAAS;QAAEP,SAAS;IAAyD;IAC7EC,WAAW;QAAED,SAAS;IAA+D;IACrFE,SAAS;QAAEF,SAAS;IAAiF;IACrGG,OAAO;QAAEH,SAAS;IAA8D;IAChFK,MAAM;QAAEL,SAAS;IAAiE;AACpF,EAAC;AAED;;;CAGC,GACD,OAAO,MAAMQ,gCAAkD;IAC7DT,SAAS;IACTU,MAAM;IACNC,OAAO;AACT,EAAC;AAED;;;CAGC,GACD,OAAO,MAAMC,wBAAuC;IAClD;QAAEC,KAAK;QAAWC,OAAO;IAAQ;IACjC;QAAED,KAAK;QAAWC,OAAO;IAAU;IACnC;QAAED,KAAK;QAAWC,OAAO;IAAW;IACpC;QAAED,KAAK;QAAWC,OAAO;IAAW;IACpC;QAAED,KAAK;QAAWC,OAAO;IAAW;IACpC;QAAED,KAAK;QAAWC,OAAO;IAAQ;IACjC;QAAED,KAAK;QAAWC,OAAO;IAAO;IAChC;QAAED,KAAK;QAAWC,OAAO;IAAQ;IACjC;QAAED,KAAK;QAAWC,OAAO;IAAQ;IACjC;QAAED,KAAK;QAAWC,OAAO;IAAM;CAChC,CAAA;AAED;;;CAGC,GACD,OAAO,MAAMC,qBAAqB,kBAAiB;AAEnD;;;CAGC,GACD,OAAO,MAAMC,gBAA+B;IAC1CC,gBAAgBlB;IAChBmB,mBAAmBX;IACnBY,qBAAqBV;IACrBW,cAAcR;IACdS,gBAAgBN;AAClB,EAAC"}
|
package/dist/theme/example.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/theme/example.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/theme/example.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,EAAE,WAiE1B,CAAA"}
|
package/dist/theme/example.js
CHANGED
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* <PageRenderer data={data} config={config} theme={puckTheme} />
|
|
15
15
|
* ```
|
|
16
|
-
*/
|
|
17
|
-
/**
|
|
16
|
+
*/ /**
|
|
18
17
|
* Example theme using shadcn/ui CSS variables
|
|
19
18
|
*
|
|
20
19
|
* This example assumes you have CSS variables like:
|
|
@@ -24,66 +23,105 @@
|
|
|
24
23
|
* --muted, --muted-foreground
|
|
25
24
|
* --destructive, --destructive-foreground
|
|
26
25
|
* --ring (for focus rings)
|
|
27
|
-
*/
|
|
28
|
-
export const exampleTheme = {
|
|
26
|
+
*/ export const exampleTheme = {
|
|
29
27
|
// Button component variants
|
|
30
28
|
buttonVariants: {
|
|
31
29
|
default: {
|
|
32
|
-
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
30
|
+
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
33
31
|
},
|
|
34
32
|
secondary: {
|
|
35
|
-
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
33
|
+
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
36
34
|
},
|
|
37
35
|
outline: {
|
|
38
|
-
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
36
|
+
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
39
37
|
},
|
|
40
38
|
ghost: {
|
|
41
|
-
classes: 'hover:bg-accent hover:text-accent-foreground'
|
|
39
|
+
classes: 'hover:bg-accent hover:text-accent-foreground'
|
|
42
40
|
},
|
|
43
41
|
destructive: {
|
|
44
|
-
classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90'
|
|
42
|
+
classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90'
|
|
45
43
|
},
|
|
46
44
|
link: {
|
|
47
|
-
classes: 'text-primary underline-offset-4 hover:underline'
|
|
48
|
-
}
|
|
45
|
+
classes: 'text-primary underline-offset-4 hover:underline'
|
|
46
|
+
}
|
|
49
47
|
},
|
|
50
48
|
// CTA button variants
|
|
51
49
|
ctaButtonVariants: {
|
|
52
50
|
primary: {
|
|
53
|
-
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
51
|
+
classes: 'bg-primary text-primary-foreground hover:bg-primary/90'
|
|
54
52
|
},
|
|
55
53
|
secondary: {
|
|
56
|
-
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
54
|
+
classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80'
|
|
57
55
|
},
|
|
58
56
|
outline: {
|
|
59
|
-
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
60
|
-
}
|
|
57
|
+
classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground'
|
|
58
|
+
}
|
|
61
59
|
},
|
|
62
60
|
// CTA background styles
|
|
63
61
|
ctaBackgroundStyles: {
|
|
64
62
|
default: 'bg-muted',
|
|
65
63
|
dark: 'bg-primary text-primary-foreground',
|
|
66
|
-
light: 'bg-background'
|
|
64
|
+
light: 'bg-background'
|
|
67
65
|
},
|
|
68
66
|
// Focus ring class
|
|
69
67
|
focusRingColor: 'focus:ring-ring',
|
|
70
68
|
// Color picker presets - customize with your brand colors
|
|
71
69
|
colorPresets: [
|
|
72
|
-
{
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
{
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
{
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
{
|
|
70
|
+
{
|
|
71
|
+
hex: '#ffffff',
|
|
72
|
+
label: 'White'
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
hex: '#f8fafc',
|
|
76
|
+
label: 'Slate 50'
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
hex: '#f1f5f9',
|
|
80
|
+
label: 'Slate 100'
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
hex: '#e2e8f0',
|
|
84
|
+
label: 'Slate 200'
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
hex: '#64748b',
|
|
88
|
+
label: 'Slate 500'
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
hex: '#334155',
|
|
92
|
+
label: 'Slate 700'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
hex: '#1e293b',
|
|
96
|
+
label: 'Slate 800'
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
hex: '#0f172a',
|
|
100
|
+
label: 'Slate 900'
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
hex: '#000000',
|
|
104
|
+
label: 'Black'
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
hex: '#3b82f6',
|
|
108
|
+
label: 'Blue'
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
hex: '#10b981',
|
|
112
|
+
label: 'Green'
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
hex: '#f59e0b',
|
|
116
|
+
label: 'Amber'
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
hex: '#ef4444',
|
|
120
|
+
label: 'Red'
|
|
121
|
+
}
|
|
85
122
|
],
|
|
86
123
|
// Set to true to add your presets to defaults instead of replacing
|
|
87
|
-
extendColorPresets: false
|
|
124
|
+
extendColorPresets: false
|
|
88
125
|
};
|
|
126
|
+
|
|
89
127
|
//# sourceMappingURL=example.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../src/theme/example.ts"],"sourcesContent":["/**\n * Example Theme Configuration\n *\n * Copy this file to your project and customize it to match your design system.\n *\n * Usage:\n * 1. Copy this file to your project (e.g., src/lib/puck-theme.ts)\n * 2. Customize the values to match your CSS variables/design tokens\n * 3. Import and pass to PageRenderer or PuckEditor:\n *\n * ```tsx\n * import { puckTheme } from '@/lib/puck-theme'\n *\n * <PageRenderer data={data} config={config} theme={puckTheme} />\n * ```\n */\n\nimport type { ThemeConfig } from './types.js'\n\n/**\n * Example theme using shadcn/ui CSS variables\n *\n * This example assumes you have CSS variables like:\n * --primary, --primary-foreground\n * --secondary, --secondary-foreground\n * --accent, --accent-foreground\n * --muted, --muted-foreground\n * --destructive, --destructive-foreground\n * --ring (for focus rings)\n */\nexport const exampleTheme: ThemeConfig = {\n // Button component variants\n buttonVariants: {\n default: {\n classes: 'bg-primary text-primary-foreground hover:bg-primary/90',\n },\n secondary: {\n classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',\n },\n outline: {\n classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',\n },\n ghost: {\n classes: 'hover:bg-accent hover:text-accent-foreground',\n },\n destructive: {\n classes: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n },\n link: {\n classes: 'text-primary underline-offset-4 hover:underline',\n },\n },\n\n // CTA button variants\n ctaButtonVariants: {\n primary: {\n classes: 'bg-primary text-primary-foreground hover:bg-primary/90',\n },\n secondary: {\n classes: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',\n },\n outline: {\n classes: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',\n },\n },\n\n // CTA background styles\n ctaBackgroundStyles: {\n default: 'bg-muted',\n dark: 'bg-primary text-primary-foreground',\n light: 'bg-background',\n },\n\n // Focus ring class\n focusRingColor: 'focus:ring-ring',\n\n // Color picker presets - customize with your brand colors\n colorPresets: [\n { hex: '#ffffff', label: 'White' },\n { hex: '#f8fafc', label: 'Slate 50' },\n { hex: '#f1f5f9', label: 'Slate 100' },\n { hex: '#e2e8f0', label: 'Slate 200' },\n { hex: '#64748b', label: 'Slate 500' },\n { hex: '#334155', label: 'Slate 700' },\n { hex: '#1e293b', label: 'Slate 800' },\n { hex: '#0f172a', label: 'Slate 900' },\n { hex: '#000000', label: 'Black' },\n { hex: '#3b82f6', label: 'Blue' },\n { hex: '#10b981', label: 'Green' },\n { hex: '#f59e0b', label: 'Amber' },\n { hex: '#ef4444', label: 'Red' },\n ],\n\n // Set to true to add your presets to defaults instead of replacing\n extendColorPresets: false,\n}\n"],"names":["exampleTheme","buttonVariants","default","classes","secondary","outline","ghost","destructive","link","ctaButtonVariants","primary","ctaBackgroundStyles","dark","light","focusRingColor","colorPresets","hex","label","extendColorPresets"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAID;;;;;;;;;;CAUC,GACD,OAAO,MAAMA,eAA4B;IACvC,4BAA4B;IAC5BC,gBAAgB;QACdC,SAAS;YACPC,SAAS;QACX;QACAC,WAAW;YACTD,SAAS;QACX;QACAE,SAAS;YACPF,SAAS;QACX;QACAG,OAAO;YACLH,SAAS;QACX;QACAI,aAAa;YACXJ,SAAS;QACX;QACAK,MAAM;YACJL,SAAS;QACX;IACF;IAEA,sBAAsB;IACtBM,mBAAmB;QACjBC,SAAS;YACPP,SAAS;QACX;QACAC,WAAW;YACTD,SAAS;QACX;QACAE,SAAS;YACPF,SAAS;QACX;IACF;IAEA,wBAAwB;IACxBQ,qBAAqB;QACnBT,SAAS;QACTU,MAAM;QACNC,OAAO;IACT;IAEA,mBAAmB;IACnBC,gBAAgB;IAEhB,0DAA0D;IAC1DC,cAAc;QACZ;YAAEC,KAAK;YAAWC,OAAO;QAAQ;QACjC;YAAED,KAAK;YAAWC,OAAO;QAAW;QACpC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAY;QACrC;YAAED,KAAK;YAAWC,OAAO;QAAQ;QACjC;YAAED,KAAK;YAAWC,OAAO;QAAO;QAChC;YAAED,KAAK;YAAWC,OAAO;QAAQ;QACjC;YAAED,KAAK;YAAWC,OAAO;QAAQ;QACjC;YAAED,KAAK;YAAWC,OAAO;QAAM;KAChC;IAED,mEAAmE;IACnEC,oBAAoB;AACtB,EAAC"}
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
* }
|
|
25
25
|
* ```
|
|
26
26
|
*/
|
|
27
|
-
export type { ButtonVariantConfig, ButtonVariantStyles, ColorPreset, BackgroundStyles, ThemeConfig, ResolvedTheme, ThemeContextValue, } from './types';
|
|
28
|
-
export { ThemeProvider, useTheme, getDefaultTheme, useHasThemeProvider, type ThemeProviderProps, } from './context';
|
|
29
|
-
export { DEFAULT_BUTTON_VARIANTS, DEFAULT_CTA_BUTTON_VARIANTS, DEFAULT_CTA_BACKGROUND_STYLES, DEFAULT_COLOR_PRESETS, DEFAULT_FOCUS_RING, DEFAULT_THEME, } from './defaults';
|
|
30
|
-
export { resolveTheme, getVariantClasses, getBackgroundClasses } from './utils';
|
|
31
|
-
export { exampleTheme } from './example';
|
|
27
|
+
export type { ButtonVariantConfig, ButtonVariantStyles, ColorPreset, BackgroundStyles, ThemeConfig, ResolvedTheme, ThemeContextValue, } from './types.js';
|
|
28
|
+
export { ThemeProvider, useTheme, getDefaultTheme, useHasThemeProvider, type ThemeProviderProps, } from './context.js';
|
|
29
|
+
export { DEFAULT_BUTTON_VARIANTS, DEFAULT_CTA_BUTTON_VARIANTS, DEFAULT_CTA_BACKGROUND_STYLES, DEFAULT_COLOR_PRESETS, DEFAULT_FOCUS_RING, DEFAULT_THEME, } from './defaults.js';
|
|
30
|
+
export { resolveTheme, getVariantClasses, getBackgroundClasses } from './utils.js';
|
|
31
|
+
export { exampleTheme } from './example.js';
|
|
32
32
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,iBAAiB,GAClB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,aAAa,EACb,QAAQ,EACR,eAAe,EACf,mBAAmB,EACnB,KAAK,kBAAkB,GACxB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,GACd,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAGlF,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA"}
|
package/dist/theme/index.js
CHANGED
|
@@ -23,13 +23,14 @@
|
|
|
23
23
|
* return <button className={classes}>...</button>
|
|
24
24
|
* }
|
|
25
25
|
* ```
|
|
26
|
-
*/
|
|
26
|
+
*/ // Types
|
|
27
27
|
// Context & Provider
|
|
28
|
-
export { ThemeProvider, useTheme, getDefaultTheme, useHasThemeProvider
|
|
28
|
+
export { ThemeProvider, useTheme, getDefaultTheme, useHasThemeProvider } from './context.js';
|
|
29
29
|
// Defaults
|
|
30
|
-
export { DEFAULT_BUTTON_VARIANTS, DEFAULT_CTA_BUTTON_VARIANTS, DEFAULT_CTA_BACKGROUND_STYLES, DEFAULT_COLOR_PRESETS, DEFAULT_FOCUS_RING, DEFAULT_THEME
|
|
30
|
+
export { DEFAULT_BUTTON_VARIANTS, DEFAULT_CTA_BUTTON_VARIANTS, DEFAULT_CTA_BACKGROUND_STYLES, DEFAULT_COLOR_PRESETS, DEFAULT_FOCUS_RING, DEFAULT_THEME } from './defaults.js';
|
|
31
31
|
// Utilities
|
|
32
|
-
export { resolveTheme, getVariantClasses, getBackgroundClasses } from './utils';
|
|
32
|
+
export { resolveTheme, getVariantClasses, getBackgroundClasses } from './utils.js';
|
|
33
33
|
// Example theme (copy and customize for your project)
|
|
34
|
-
export { exampleTheme } from './example';
|
|
34
|
+
export { exampleTheme } from './example.js';
|
|
35
|
+
|
|
35
36
|
//# sourceMappingURL=index.js.map
|