@pantheon-systems/puck-css 0.8.0 → 0.10.0
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 +87 -0
- package/dist/agent/useAgentEdit.d.ts.map +1 -1
- package/dist/agent/useAgentEdit.js.map +1 -1
- package/dist/agent/useAgentTrigger.d.ts.map +1 -1
- package/dist/agent/useAgentTrigger.js.map +1 -1
- package/dist/auth/AuthGate.d.ts +1 -1
- package/dist/auth/AuthGate.d.ts.map +1 -1
- package/dist/auth/P1AuthProvider.d.ts.map +1 -1
- package/dist/auth/P1AuthProvider.js +52 -1
- package/dist/auth/P1AuthProvider.js.map +1 -1
- package/dist/collaboration/components/CollaboratorAvatars.d.ts.map +1 -1
- package/dist/collaboration/components/CollaboratorAvatars.js +1 -1
- package/dist/collaboration/components/CollaboratorAvatars.js.map +1 -1
- package/dist/collaboration/utils/avatarColor.d.ts +2 -8
- package/dist/collaboration/utils/avatarColor.d.ts.map +1 -1
- package/dist/collaboration/utils/avatarColor.js +4 -31
- package/dist/collaboration/utils/avatarColor.js.map +1 -1
- package/dist/collaboration/utils/focusHighlightConfig.d.ts.map +1 -1
- package/dist/collaboration/utils/focusHighlightConfig.js.map +1 -1
- package/dist/collaboration/utils/initials.d.ts +2 -0
- package/dist/collaboration/utils/initials.d.ts.map +1 -0
- package/dist/collaboration/utils/initials.js +27 -0
- package/dist/collaboration/utils/initials.js.map +1 -0
- package/dist/collaboration/utils/presenceIdentity.d.ts +29 -0
- package/dist/collaboration/utils/presenceIdentity.d.ts.map +1 -0
- package/dist/collaboration/utils/presenceIdentity.js +42 -0
- package/dist/collaboration/utils/presenceIdentity.js.map +1 -0
- package/dist/core/PuckConfigContext.d.ts +7 -0
- package/dist/core/PuckConfigContext.d.ts.map +1 -0
- package/dist/core/PuckConfigContext.js +11 -0
- package/dist/core/PuckConfigContext.js.map +1 -0
- package/dist/core/config.d.ts +1 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js.map +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/types.d.ts +36 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/data/collection-operators.d.ts +19 -0
- package/dist/data/collection-operators.d.ts.map +1 -0
- package/dist/data/collection-operators.js +97 -0
- package/dist/data/collection-operators.js.map +1 -0
- package/dist/data/css-queries/css-query-registry.d.ts +11 -0
- package/dist/data/css-queries/css-query-registry.d.ts.map +1 -0
- package/dist/data/css-queries/css-query-registry.js +30 -0
- package/dist/data/css-queries/css-query-registry.js.map +1 -0
- package/dist/data/dal/index.d.ts +1 -1
- package/dist/data/dal/index.d.ts.map +1 -1
- package/dist/data/dal/init.d.ts +5 -0
- package/dist/data/dal/init.d.ts.map +1 -1
- package/dist/data/dal/init.js +31 -4
- package/dist/data/dal/init.js.map +1 -1
- package/dist/data/dal/p1-store.d.ts +23 -0
- package/dist/data/dal/p1-store.d.ts.map +1 -1
- package/dist/data/dal/p1-store.js.map +1 -1
- package/dist/data/data-list-block/DataListFieldsGrouper.d.ts +7 -0
- package/dist/data/data-list-block/DataListFieldsGrouper.d.ts.map +1 -0
- package/dist/data/data-list-block/DataListFieldsGrouper.js +72 -0
- package/dist/data/data-list-block/DataListFieldsGrouper.js.map +1 -0
- package/dist/data/data-list-block/builtin-components/cards.d.ts +8 -0
- package/dist/data/data-list-block/builtin-components/cards.d.ts.map +1 -0
- package/dist/data/data-list-block/builtin-components/cards.js +35 -0
- package/dist/data/data-list-block/builtin-components/cards.js.map +1 -0
- package/dist/data/data-list-block/builtin-components/listing.d.ts +8 -0
- package/dist/data/data-list-block/builtin-components/listing.d.ts.map +1 -0
- package/dist/data/data-list-block/builtin-components/listing.js +11 -0
- package/dist/data/data-list-block/builtin-components/listing.js.map +1 -0
- package/dist/data/data-list-block/builtin-components/rows.d.ts +8 -0
- package/dist/data/data-list-block/builtin-components/rows.d.ts.map +1 -0
- package/dist/data/data-list-block/builtin-components/rows.js +9 -0
- package/dist/data/data-list-block/builtin-components/rows.js.map +1 -0
- package/dist/data/data-list-block/builtin-modes.d.ts +3 -0
- package/dist/data/data-list-block/builtin-modes.d.ts.map +1 -0
- package/dist/data/data-list-block/builtin-modes.js +53 -0
- package/dist/data/data-list-block/builtin-modes.js.map +1 -0
- package/dist/data/data-list-block/create-data-list-block.d.ts +3 -0
- package/dist/data/data-list-block/create-data-list-block.d.ts.map +1 -0
- package/dist/data/data-list-block/create-data-list-block.js +305 -0
- package/dist/data/data-list-block/create-data-list-block.js.map +1 -0
- package/dist/data/data-list-block/field-groups.d.ts +4 -0
- package/dist/data/data-list-block/field-groups.d.ts.map +1 -0
- package/dist/data/data-list-block/field-groups.js +28 -0
- package/dist/data/data-list-block/field-groups.js.map +1 -0
- package/dist/data/data-list-block/index.d.ts +8 -0
- package/dist/data/data-list-block/index.d.ts.map +1 -0
- package/dist/data/data-list-block/index.js +7 -0
- package/dist/data/data-list-block/index.js.map +1 -0
- package/dist/data/data-list-block/types.d.ts +53 -0
- package/dist/data/data-list-block/types.d.ts.map +1 -0
- package/dist/data/data-list-block/types.js +2 -0
- package/dist/data/data-list-block/types.js.map +1 -0
- package/dist/data/data-list-block/utils.d.ts +14 -0
- package/dist/data/data-list-block/utils.d.ts.map +1 -0
- package/dist/data/data-list-block/utils.js +65 -0
- package/dist/data/data-list-block/utils.js.map +1 -0
- package/dist/data/fields/datasource-select-field.d.ts +29 -0
- package/dist/data/fields/datasource-select-field.d.ts.map +1 -0
- package/dist/data/fields/datasource-select-field.js +40 -0
- package/dist/data/fields/datasource-select-field.js.map +1 -0
- package/dist/data/fields/field-section.d.ts +11 -0
- package/dist/data/fields/field-section.d.ts.map +1 -0
- package/dist/data/fields/field-section.js +6 -0
- package/dist/data/fields/field-section.js.map +1 -0
- package/dist/data/fields/image-position-field.d.ts +28 -0
- package/dist/data/fields/image-position-field.d.ts.map +1 -0
- package/dist/data/fields/image-position-field.js +69 -0
- package/dist/data/fields/image-position-field.js.map +1 -0
- package/dist/data/fields/pds-field-helpers.d.ts +34 -0
- package/dist/data/fields/pds-field-helpers.d.ts.map +1 -0
- package/dist/data/fields/pds-field-helpers.js +55 -0
- package/dist/data/fields/pds-field-helpers.js.map +1 -0
- package/dist/data/fields/schema-select-field.d.ts +32 -0
- package/dist/data/fields/schema-select-field.d.ts.map +1 -0
- package/dist/data/fields/schema-select-field.js +134 -0
- package/dist/data/fields/schema-select-field.js.map +1 -0
- package/dist/data/fields/template-select-field.d.ts +16 -0
- package/dist/data/fields/template-select-field.d.ts.map +1 -0
- package/dist/data/fields/template-select-field.js +31 -0
- package/dist/data/fields/template-select-field.js.map +1 -0
- package/dist/data/fields/view-mode-field.d.ts +21 -0
- package/dist/data/fields/view-mode-field.d.ts.map +1 -0
- package/dist/data/fields/view-mode-field.js +14 -0
- package/dist/data/fields/view-mode-field.js.map +1 -0
- package/dist/data/fields.d.ts +12 -0
- package/dist/data/fields.d.ts.map +1 -1
- package/dist/data/fields.js +10 -0
- package/dist/data/fields.js.map +1 -1
- package/dist/data/page-editor-meta.d.ts.map +1 -1
- package/dist/data/page-editor-meta.js +0 -1
- package/dist/data/page-editor-meta.js.map +1 -1
- package/dist/data/query-provider.d.ts +1 -1
- package/dist/data/query-provider.d.ts.map +1 -1
- package/dist/data/remote-datasources/fetch-http-json.d.ts.map +1 -1
- package/dist/data/remote-datasources/fetch-http-json.js.map +1 -1
- package/dist/data/remote-datasources/loader.d.ts.map +1 -1
- package/dist/data/remote-datasources/loader.js +3 -1
- package/dist/data/remote-datasources/loader.js.map +1 -1
- package/dist/data/resolve-data-templates.d.ts.map +1 -1
- package/dist/data/resolve-data-templates.js +31 -4
- package/dist/data/resolve-data-templates.js.map +1 -1
- package/dist/data/schema-heuristics.d.ts +5 -0
- package/dist/data/schema-heuristics.d.ts.map +1 -0
- package/dist/data/schema-heuristics.js +46 -0
- package/dist/data/schema-heuristics.js.map +1 -0
- package/dist/editor/P1App.d.ts.map +1 -1
- package/dist/editor/P1App.js +1 -1
- package/dist/editor/P1App.js.map +1 -1
- package/dist/editor/P1PuckProvider.d.ts.map +1 -1
- package/dist/editor/P1PuckProvider.js +170 -41
- package/dist/editor/P1PuckProvider.js.map +1 -1
- package/dist/editor/aiPanelStore.d.ts +15 -0
- package/dist/editor/aiPanelStore.d.ts.map +1 -0
- package/dist/editor/aiPanelStore.js +43 -0
- package/dist/editor/aiPanelStore.js.map +1 -0
- package/dist/editor/components/CollapsibleFieldSection.d.ts +10 -0
- package/dist/editor/components/CollapsibleFieldSection.d.ts.map +1 -0
- package/dist/editor/components/CollapsibleFieldSection.js +9 -0
- package/dist/editor/components/CollapsibleFieldSection.js.map +1 -0
- package/dist/editor/components/CollapsibleSection.module.css +70 -0
- package/dist/editor/components/CollapsibleSectionHeader.d.ts +20 -0
- package/dist/editor/components/CollapsibleSectionHeader.d.ts.map +1 -0
- package/dist/editor/components/CollapsibleSectionHeader.js +10 -0
- package/dist/editor/components/CollapsibleSectionHeader.js.map +1 -0
- package/dist/editor/components/DraggableRow.d.ts +13 -0
- package/dist/editor/components/DraggableRow.d.ts.map +1 -0
- package/dist/editor/components/DraggableRow.js +20 -0
- package/dist/editor/components/DraggableRow.js.map +1 -0
- package/dist/editor/components/FieldHelpText.d.ts +6 -0
- package/dist/editor/components/FieldHelpText.d.ts.map +1 -0
- package/dist/editor/components/FieldHelpText.js +6 -0
- package/dist/editor/components/FieldHelpText.js.map +1 -0
- package/dist/editor/components/FieldHelpText.module.css +13 -0
- package/dist/editor/components/InspectorTabHeader.js +1 -1
- package/dist/editor/components/InspectorTabHeader.js.map +1 -1
- package/dist/editor/components/OutlinePanel.d.ts +10 -0
- package/dist/editor/components/OutlinePanel.d.ts.map +1 -0
- package/dist/editor/components/OutlinePanel.js +64 -0
- package/dist/editor/components/OutlinePanel.js.map +1 -0
- package/dist/editor/components/OutlinePanel.module.css +111 -0
- package/dist/editor/components/P1InspectorFields.d.ts.map +1 -1
- package/dist/editor/components/P1InspectorFields.js +24 -5
- package/dist/editor/components/P1InspectorFields.js.map +1 -1
- package/dist/editor/components/PanelHeader.d.ts +25 -0
- package/dist/editor/components/PanelHeader.d.ts.map +1 -0
- package/dist/editor/components/PanelHeader.js +12 -0
- package/dist/editor/components/PanelHeader.js.map +1 -0
- package/dist/editor/components/PanelHeader.module.css +34 -0
- package/dist/editor/components/PanelShell.d.ts +10 -0
- package/dist/editor/components/PanelShell.d.ts.map +1 -0
- package/dist/editor/components/PanelShell.js +7 -0
- package/dist/editor/components/PanelShell.js.map +1 -0
- package/dist/editor/components/PanelShell.module.css +15 -0
- package/dist/editor/components/PreviewPanelOverlay.d.ts +12 -0
- package/dist/editor/components/PreviewPanelOverlay.d.ts.map +1 -0
- package/dist/editor/components/PreviewPanelOverlay.js +7 -0
- package/dist/editor/components/PreviewPanelOverlay.js.map +1 -0
- package/dist/editor/components/PublishedStatusBadge.d.ts +1 -1
- package/dist/editor/components/PublishedStatusBadge.d.ts.map +1 -1
- package/dist/editor/components/VersionBannerOverride.d.ts +5 -1
- package/dist/editor/components/VersionBannerOverride.d.ts.map +1 -1
- package/dist/editor/components/VersionBannerOverride.js +54 -5
- package/dist/editor/components/VersionBannerOverride.js.map +1 -1
- package/dist/editor/components/VersionTimeline.d.ts +20 -0
- package/dist/editor/components/VersionTimeline.d.ts.map +1 -0
- package/dist/editor/components/VersionTimeline.js +42 -0
- package/dist/editor/components/VersionTimeline.js.map +1 -0
- package/dist/editor/components/collapsibleSectionContext.d.ts +17 -0
- package/dist/editor/components/collapsibleSectionContext.d.ts.map +1 -0
- package/dist/editor/components/collapsibleSectionContext.js +13 -0
- package/dist/editor/components/collapsibleSectionContext.js.map +1 -0
- package/dist/editor/components/componentIconName.d.ts +15 -0
- package/dist/editor/components/componentIconName.d.ts.map +1 -0
- package/dist/editor/components/componentIconName.js +68 -0
- package/dist/editor/components/componentIconName.js.map +1 -0
- package/dist/editor/components/connectable.d.ts +1 -1
- package/dist/editor/components/connectable.d.ts.map +1 -1
- package/dist/editor/components/merge-preview/MergePreviewPanel.d.ts.map +1 -1
- package/dist/editor/components/merge-preview/MergePreviewPanel.js.map +1 -1
- package/dist/editor/components/merge-preview/MergePreviewRenderer.js +3 -15
- package/dist/editor/components/merge-preview/MergePreviewRenderer.js.map +1 -1
- package/dist/editor/components/outlineTree.d.ts +68 -0
- package/dist/editor/components/outlineTree.d.ts.map +1 -0
- package/dist/editor/components/outlineTree.js +72 -0
- package/dist/editor/components/outlineTree.js.map +1 -0
- package/dist/editor/components/useDragReorder.d.ts +16 -0
- package/dist/editor/components/useDragReorder.d.ts.map +1 -0
- package/dist/editor/components/useDragReorder.js +35 -0
- package/dist/editor/components/useDragReorder.js.map +1 -0
- package/dist/editor/index.d.ts +13 -0
- package/dist/editor/index.d.ts.map +1 -1
- package/dist/editor/index.js +8 -0
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/plugin/P1Plugin.d.ts +19 -3
- package/dist/editor/plugin/P1Plugin.d.ts.map +1 -1
- package/dist/editor/plugin/P1Plugin.js +121 -98
- package/dist/editor/plugin/P1Plugin.js.map +1 -1
- package/dist/editor/plugin/context-sync-key.d.ts.map +1 -1
- package/dist/editor/plugin/context-sync-key.js +5 -5
- package/dist/editor/plugin/context-sync-key.js.map +1 -1
- package/dist/editor/plugin/createP1Overrides.d.ts +31 -43
- package/dist/editor/plugin/createP1Overrides.d.ts.map +1 -1
- package/dist/editor/plugin/createP1Overrides.js +47 -43
- package/dist/editor/plugin/createP1Overrides.js.map +1 -1
- package/dist/editor/plugin/document-sync-plugin.d.ts +23 -5
- package/dist/editor/plugin/document-sync-plugin.d.ts.map +1 -1
- package/dist/editor/plugin/document-sync-plugin.js +13 -6
- package/dist/editor/plugin/document-sync-plugin.js.map +1 -1
- package/dist/editor/plugin/fieldGuidance.d.ts +45 -0
- package/dist/editor/plugin/fieldGuidance.d.ts.map +1 -0
- package/dist/editor/plugin/fieldGuidance.js +24 -0
- package/dist/editor/plugin/fieldGuidance.js.map +1 -0
- package/dist/editor/plugin/mergePreviewPlugin.d.ts.map +1 -1
- package/dist/editor/plugin/mergePreviewPlugin.js.map +1 -1
- package/dist/editor/plugin/selectHeaderCollaborators.d.ts +12 -0
- package/dist/editor/plugin/selectHeaderCollaborators.d.ts.map +1 -0
- package/dist/editor/plugin/selectHeaderCollaborators.js +15 -0
- package/dist/editor/plugin/selectHeaderCollaborators.js.map +1 -0
- package/dist/editor/thumbnails/LiveThumbnail.d.ts +47 -0
- package/dist/editor/thumbnails/LiveThumbnail.d.ts.map +1 -0
- package/dist/editor/thumbnails/LiveThumbnail.js +120 -0
- package/dist/editor/thumbnails/LiveThumbnail.js.map +1 -0
- package/dist/editor/thumbnails/ThumbnailCard.d.ts +37 -0
- package/dist/editor/thumbnails/ThumbnailCard.d.ts.map +1 -0
- package/dist/editor/thumbnails/ThumbnailCard.js +91 -0
- package/dist/editor/thumbnails/ThumbnailCard.js.map +1 -0
- package/dist/editor/thumbnails/buildLiveThumbnailDrawer.d.ts +33 -0
- package/dist/editor/thumbnails/buildLiveThumbnailDrawer.d.ts.map +1 -0
- package/dist/editor/thumbnails/buildLiveThumbnailDrawer.js +79 -0
- package/dist/editor/thumbnails/buildLiveThumbnailDrawer.js.map +1 -0
- package/dist/editor/thumbnails/humanizeComponentName.d.ts +18 -0
- package/dist/editor/thumbnails/humanizeComponentName.d.ts.map +1 -0
- package/dist/editor/thumbnails/humanizeComponentName.js +32 -0
- package/dist/editor/thumbnails/humanizeComponentName.js.map +1 -0
- package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.d.ts +15 -0
- package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.d.ts.map +1 -0
- package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.js +19 -0
- package/dist/editor/thumbnails/resolveLiveThumbnailDrawer.js.map +1 -0
- package/dist/editor/thumbnails/thumbnailCache.d.ts +39 -0
- package/dist/editor/thumbnails/thumbnailCache.d.ts.map +1 -0
- package/dist/editor/thumbnails/thumbnailCache.js +97 -0
- package/dist/editor/thumbnails/thumbnailCache.js.map +1 -0
- package/dist/editor/useP1Editor.d.ts +14 -4
- package/dist/editor/useP1Editor.d.ts.map +1 -1
- package/dist/editor/useP1Editor.js +81 -37
- package/dist/editor/useP1Editor.js.map +1 -1
- package/dist/editor/useP1Overrides.d.ts +1 -1
- package/dist/editor/useP1Overrides.d.ts.map +1 -1
- package/dist/editor/useP1Overrides.js.map +1 -1
- package/dist/editor/useP1Plugin.d.ts +15 -3
- package/dist/editor/useP1Plugin.d.ts.map +1 -1
- package/dist/editor/useP1Plugin.js +4 -0
- package/dist/editor/useP1Plugin.js.map +1 -1
- package/dist/editor/useRealtime.d.ts +2 -2
- package/dist/editor/useRealtime.d.ts.map +1 -1
- package/dist/editor/useRealtime.js.map +1 -1
- package/dist/editor/useResponsivePanels.d.ts +29 -0
- package/dist/editor/useResponsivePanels.d.ts.map +1 -0
- package/dist/editor/useResponsivePanels.js +175 -0
- package/dist/editor/useResponsivePanels.js.map +1 -0
- package/dist/editor/useSidebarScrollPreservation.d.ts +10 -0
- package/dist/editor/useSidebarScrollPreservation.d.ts.map +1 -0
- package/dist/editor/useSidebarScrollPreservation.js +39 -0
- package/dist/editor/useSidebarScrollPreservation.js.map +1 -0
- package/dist/editor/utils/componentRegistry.d.ts +4 -4
- package/dist/editor/utils/componentRegistry.d.ts.map +1 -1
- package/dist/editor/utils/componentRegistry.js +0 -1
- package/dist/editor/utils/componentRegistry.js.map +1 -1
- package/dist/editor/utils/restoreDocumentVersion.d.ts +18 -0
- package/dist/editor/utils/restoreDocumentVersion.d.ts.map +1 -0
- package/dist/editor/utils/restoreDocumentVersion.js +49 -0
- package/dist/editor/utils/restoreDocumentVersion.js.map +1 -0
- package/dist/editor/utils/sanitizeRichtextDefaults.d.ts +22 -0
- package/dist/editor/utils/sanitizeRichtextDefaults.d.ts.map +1 -0
- package/dist/editor/utils/sanitizeRichtextDefaults.js +98 -0
- package/dist/editor/utils/sanitizeRichtextDefaults.js.map +1 -0
- package/dist/features/content-type-templates/permissions/createPuckPermissions.d.ts +1 -3
- package/dist/features/content-type-templates/permissions/createPuckPermissions.d.ts.map +1 -1
- package/dist/features/content-type-templates/permissions/createPuckPermissions.js.map +1 -1
- package/dist/features/content-type-templates/stores/template-store-api.d.ts.map +1 -1
- package/dist/features/content-type-templates/ui/ActionBarPinButton.d.ts.map +1 -1
- package/dist/features/content-type-templates/ui/ActionBarPinButton.js +1 -1
- package/dist/features/content-type-templates/ui/ActionBarPinButton.js.map +1 -1
- package/dist/index.d.ts +14 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -1
- package/dist/index.js.map +1 -1
- package/dist/merge/components/merge-resolution/CherryPickVisualPanel.js +1 -3
- package/dist/merge/components/merge-resolution/CherryPickVisualPanel.js.map +1 -1
- package/dist/merge/components/merge-resolution/DocumentResolutionDetail.js +2 -2
- package/dist/merge/components/merge-resolution/DocumentResolutionDetail.js.map +1 -1
- package/dist/p1/editor/client.d.ts +1 -5
- package/dist/p1/editor/client.d.ts.map +1 -1
- package/dist/p1/editor/client.js +11 -12
- package/dist/p1/editor/client.js.map +1 -1
- package/dist/p1/editor/connect/connect-field-modal.d.ts +1 -1
- package/dist/p1/editor/connect/connect-field-modal.d.ts.map +1 -1
- package/dist/p1/editor/connect/connect-field-modal.js +1 -1
- package/dist/p1/editor/connect/connect-field-modal.js.map +1 -1
- package/dist/p1/editor/connect/connect-preview-config.d.ts +1 -1
- package/dist/p1/editor/connect/connect-preview-config.d.ts.map +1 -1
- package/dist/p1/editor/connect/field-connect-plugin.js +1 -1
- package/dist/p1/editor/connect/field-connect-plugin.js.map +1 -1
- package/dist/p1/editor/editor-preview-resolve.d.ts +15 -4
- package/dist/p1/editor/editor-preview-resolve.d.ts.map +1 -1
- package/dist/p1/editor/editor-preview-resolve.js +30 -8
- package/dist/p1/editor/editor-preview-resolve.js.map +1 -1
- package/dist/p1/editor/hooks/api-hooks.d.ts +4 -4
- package/dist/p1/editor/hooks/api-hooks.d.ts.map +1 -1
- package/dist/p1/editor/hooks/api-hooks.js +57 -30
- package/dist/p1/editor/hooks/api-hooks.js.map +1 -1
- package/dist/p1/editor/hooks/index.d.ts +1 -0
- package/dist/p1/editor/hooks/index.d.ts.map +1 -1
- package/dist/p1/editor/hooks/index.js +1 -0
- package/dist/p1/editor/hooks/index.js.map +1 -1
- package/dist/p1/editor/hooks/useEditorContext.d.ts +1 -1
- package/dist/p1/editor/hooks/useEditorContext.d.ts.map +1 -1
- package/dist/p1/editor/hooks/useEditorContext.js +12 -3
- package/dist/p1/editor/hooks/useEditorContext.js.map +1 -1
- package/dist/p1/editor/hooks/useLiveRemoteDatasources.d.ts +31 -0
- package/dist/p1/editor/hooks/useLiveRemoteDatasources.d.ts.map +1 -0
- package/dist/p1/editor/hooks/useLiveRemoteDatasources.js +45 -0
- package/dist/p1/editor/hooks/useLiveRemoteDatasources.js.map +1 -0
- package/dist/p1/editor/hooks/useP1Plugins.d.ts.map +1 -1
- package/dist/p1/editor/hooks/useP1Plugins.js +6 -12
- package/dist/p1/editor/hooks/useP1Plugins.js.map +1 -1
- package/dist/p1/editor/icons/button-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/button-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/data-list-block-icon.d.ts +2 -0
- package/dist/p1/editor/icons/data-list-block-icon.d.ts.map +1 -0
- package/dist/p1/editor/icons/data-list-block-icon.js +5 -0
- package/dist/p1/editor/icons/data-list-block-icon.js.map +1 -0
- package/dist/p1/editor/icons/default-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/default-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/divider-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/divider-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/grid-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/grid-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/heading-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/heading-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/image-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/image-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/list-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/list-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/paragraph-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/paragraph-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/quote-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/quote-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/icons/spacer-block-icon.d.ts +1 -1
- package/dist/p1/editor/icons/spacer-block-icon.d.ts.map +1 -1
- package/dist/p1/editor/index.d.ts +1 -1
- package/dist/p1/editor/index.d.ts.map +1 -1
- package/dist/p1/editor/index.js +1 -1
- package/dist/p1/editor/index.js.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.d.ts +6 -7
- package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.d.ts.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.js +77 -73
- package/dist/p1/editor/remote-datasources/remote-datasource-explorer-plugin.js.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-form-helpers.d.ts +4 -4
- package/dist/p1/editor/remote-datasources/remote-datasource-form-helpers.d.ts.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-form-helpers.js.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-manager.d.ts +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-manager.d.ts.map +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-manager.js +1 -1
- package/dist/p1/editor/remote-datasources/remote-datasource-manager.js.map +1 -1
- package/dist/p1/editor/remote-datasources/template-preview-params-toolbar.d.ts +1 -1
- package/dist/p1/editor/remote-datasources/template-preview-params-toolbar.d.ts.map +1 -1
- package/dist/p1/editor/remote-datasources/template-preview-params-toolbar.js +1 -1
- package/dist/p1/editor/remote-datasources/template-preview-params-toolbar.js.map +1 -1
- package/dist/p1/editor/template-autocomplete-layer.d.ts +2 -2
- package/dist/p1/editor/template-autocomplete-layer.d.ts.map +1 -1
- package/dist/p1/editor/template-autocomplete-layer.js +23 -3
- package/dist/p1/editor/template-autocomplete-layer.js.map +1 -1
- package/dist/p1/pages/render-client.d.ts +1 -1
- package/dist/p1/pages/render-client.d.ts.map +1 -1
- package/dist/p1/pages/render-client.js +2 -1
- package/dist/p1/pages/render-client.js.map +1 -1
- package/dist/pds/components/AgentChip.d.ts.map +1 -1
- package/dist/pds/components/AgentChip.js +1 -2
- package/dist/pds/components/AgentChip.js.map +1 -1
- package/dist/pds/components/CreatePageModal.d.ts +10 -1
- package/dist/pds/components/CreatePageModal.d.ts.map +1 -1
- package/dist/pds/components/CreatePageModal.js +29 -9
- package/dist/pds/components/CreatePageModal.js.map +1 -1
- package/dist/pds/components/CreatePageModal.module.css +34 -0
- package/dist/pds/components/DocStateBadge.d.ts +1 -1
- package/dist/pds/components/DocStateBadge.d.ts.map +1 -1
- package/dist/pds/components/DocStateBadge.js +1 -1
- package/dist/pds/components/DocStateBadge.js.map +1 -1
- package/dist/pds/components/NavIcon.js +1 -1
- package/dist/pds/components/NavIcon.js.map +1 -1
- package/dist/pds/components/P1EditorHeader.d.ts +10 -2
- package/dist/pds/components/P1EditorHeader.d.ts.map +1 -1
- package/dist/pds/components/P1EditorHeader.js +16 -7
- package/dist/pds/components/P1EditorHeader.js.map +1 -1
- package/dist/pds/components/P1EditorHeader.module.css +113 -35
- package/dist/pds/components/P1EditorSubheader.d.ts +1 -4
- package/dist/pds/components/P1EditorSubheader.d.ts.map +1 -1
- package/dist/pds/components/P1EditorSubheader.js +10 -21
- package/dist/pds/components/P1EditorSubheader.js.map +1 -1
- package/dist/pds/components/P1EditorSubheader.module.css +7 -5
- package/dist/pds/components/PageNavigator.d.ts.map +1 -1
- package/dist/pds/components/PageNavigator.js.map +1 -1
- package/dist/pds/components/PresenceStack.d.ts +6 -5
- package/dist/pds/components/PresenceStack.d.ts.map +1 -1
- package/dist/pds/components/PresenceStack.js +43 -4
- package/dist/pds/components/PresenceStack.js.map +1 -1
- package/dist/pds/components/PresenceStack.module.css +52 -7
- package/dist/pds/components/PublishControl.js +2 -2
- package/dist/pds/components/PublishControl.js.map +1 -1
- package/dist/pds/components/WorkstreamSwitcher.d.ts +7 -2
- package/dist/pds/components/WorkstreamSwitcher.d.ts.map +1 -1
- package/dist/pds/components/WorkstreamSwitcher.js +5 -3
- package/dist/pds/components/WorkstreamSwitcher.js.map +1 -1
- package/dist/server.d.ts +3 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -1
- package/dist/server.js.map +1 -1
- package/dist/versioning/components/HistoricalVersionBanner.d.ts +19 -21
- package/dist/versioning/components/HistoricalVersionBanner.d.ts.map +1 -1
- package/dist/versioning/components/HistoricalVersionBanner.js +9 -21
- package/dist/versioning/components/HistoricalVersionBanner.js.map +1 -1
- package/dist/versioning/components/HistoricalVersionBanner.module.css +174 -0
- package/dist/versioning/components/VersionBannerActions.d.ts +15 -0
- package/dist/versioning/components/VersionBannerActions.d.ts.map +1 -0
- package/dist/versioning/components/VersionBannerActions.js +38 -0
- package/dist/versioning/components/VersionBannerActions.js.map +1 -0
- package/dist/versioning/components/VersionPublishedBadge.d.ts +1 -1
- package/dist/versioning/components/VersionPublishedBadge.d.ts.map +1 -1
- package/dist/versioning/components/version-compare/VisualVersionCompare.d.ts +2 -2
- package/dist/versioning/components/version-compare/VisualVersionCompare.d.ts.map +1 -1
- package/dist/versioning/utils/formatVersionDate.d.ts +15 -0
- package/dist/versioning/utils/formatVersionDate.d.ts.map +1 -0
- package/dist/versioning/utils/formatVersionDate.js +41 -0
- package/dist/versioning/utils/formatVersionDate.js.map +1 -0
- package/dist/versioning/utils/versionKind.d.ts +19 -0
- package/dist/versioning/utils/versionKind.d.ts.map +1 -0
- package/dist/versioning/utils/versionKind.js +30 -0
- package/dist/versioning/utils/versionKind.js.map +1 -0
- package/package.json +11 -7
- package/src/pds/theme/PuckEditorTheme.css +81 -0
- package/src/pds/theme/PuckEditorTheme.test.ts +50 -1
- package/src/styles.css +609 -84
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* OutlinePanel
|
|
4
|
+
*
|
|
5
|
+
* The page's block structure, replacing Puck's stock LayerTree at the `outline`
|
|
6
|
+
* override key.
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
import React from 'react';
|
|
10
|
+
import { createUsePuck } from '@puckeditor/core';
|
|
11
|
+
import { Icon } from '@pantheon-systems/pds-toolkit-react';
|
|
12
|
+
import { useP1PuckOptional } from '../../core/P1PuckContext.js';
|
|
13
|
+
import { GripHandleIcon } from '../icons/index.js';
|
|
14
|
+
import { DraggableRow } from './DraggableRow.js';
|
|
15
|
+
import { PanelShell } from './PanelShell.js';
|
|
16
|
+
import { PreviewPanelOverlay } from './PreviewPanelOverlay.js';
|
|
17
|
+
import { flattenOutline, resolveDrop, ROOT_ZONE } from './outlineTree.js';
|
|
18
|
+
import { getIconForComponent } from './componentIconName.js';
|
|
19
|
+
import { useDragReorder } from './useDragReorder.js';
|
|
20
|
+
import styles from './OutlinePanel.module.css';
|
|
21
|
+
const usePuckOutline = createUsePuck();
|
|
22
|
+
export function OutlinePanel() {
|
|
23
|
+
const p1Puck = useP1PuckOptional();
|
|
24
|
+
const isViewingHistoricalVersion = p1Puck?.isViewingHistoricalVersion ?? false;
|
|
25
|
+
const viewingVersion = p1Puck?.viewingVersion ?? null;
|
|
26
|
+
const returnToLatest = p1Puck?.returnToLatest ?? (() => { });
|
|
27
|
+
const content = usePuckOutline((s) => s.appState.data.content);
|
|
28
|
+
const config = usePuckOutline((s) => s.config);
|
|
29
|
+
const itemSelector = usePuckOutline((s) => s.appState.ui.itemSelector);
|
|
30
|
+
const dispatch = usePuckOutline((s) => s.dispatch);
|
|
31
|
+
const rows = React.useMemo(() => flattenOutline(content, config), [content, config]);
|
|
32
|
+
const isSelected = (row) => !!itemSelector &&
|
|
33
|
+
itemSelector.index === row.index &&
|
|
34
|
+
(itemSelector.zone ?? ROOT_ZONE) === row.zone;
|
|
35
|
+
const select = (row) => {
|
|
36
|
+
dispatch({ type: 'setUi', ui: { itemSelector: { index: row.index, zone: row.zone } } });
|
|
37
|
+
};
|
|
38
|
+
const remove = (row) => {
|
|
39
|
+
dispatch({ type: 'remove', index: row.index, zone: row.zone });
|
|
40
|
+
};
|
|
41
|
+
const { dropTargetId, getDragHandlers } = useDragReorder({
|
|
42
|
+
getId: (row) => row.id,
|
|
43
|
+
onReorder: (source, target) => {
|
|
44
|
+
const move = resolveDrop(source, target);
|
|
45
|
+
if (move) {
|
|
46
|
+
dispatch({
|
|
47
|
+
type: 'reorder',
|
|
48
|
+
sourceIndex: move.sourceIndex,
|
|
49
|
+
destinationIndex: move.destinationIndex,
|
|
50
|
+
destinationZone: move.zone,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
return (_jsx(PreviewPanelOverlay, { isViewingHistoricalVersion: isViewingHistoricalVersion, versionNumber: viewingVersion?.versionNumber ?? undefined, onExitPreview: returnToLatest, children: _jsx(PanelShell, { title: "Outline", children: rows.length === 0 ? (_jsx("div", { className: styles.empty, children: "No blocks yet. Add one from the Blocks panel." })) : (_jsxs(_Fragment, { children: [_jsx("div", { className: styles.eyebrow, children: "Page structure" }), rows.map((row) => (_jsxs(DraggableRow, { depth: row.depth, isSelected: isSelected(row), isDropTarget: dropTargetId === row.id, onSelect: () => select(row), dragHandlers: getDragHandlers(row), children: [_jsx("span", { className: styles.grip, "aria-hidden": "true", children: _jsx(GripHandleIcon, {}) }), _jsx("span", { className: styles.icon, "aria-hidden": "true", children: _jsx(Icon, { iconName: getIconForComponent(row.type, row.label), size: "s" }) }), _jsx("span", { className: styles.label, children: row.label }), _jsx("button", { type: "button", className: styles.delete, "aria-label": `Delete ${row.label}`,
|
|
56
|
+
// stopPropagation on both onClick and onKeyDown: the row div's
|
|
57
|
+
// onKeyDown fires on Space/Enter bubbling up from this button,
|
|
58
|
+
// which would call select(row) for a block being deleted.
|
|
59
|
+
onClick: (e) => {
|
|
60
|
+
e.stopPropagation();
|
|
61
|
+
remove(row);
|
|
62
|
+
}, onKeyDown: (e) => e.stopPropagation(), children: _jsx(Icon, { iconName: "trash", size: "s" }) })] }, row.id)))] })) }) }));
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=OutlinePanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutlinePanel.js","sourceRoot":"","sources":["../../../src/editor/components/OutlinePanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Outline panel
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
.eyebrow {
|
|
6
|
+
padding: 4px 6px 10px;
|
|
7
|
+
font-size: var(--pds-typography-size-xs, 0.75rem);
|
|
8
|
+
font-weight: var(--pds-typography-fw-semibold, 600);
|
|
9
|
+
letter-spacing: 0.12em;
|
|
10
|
+
text-transform: uppercase;
|
|
11
|
+
color: var(--pds-color-foreground-default-secondary, var(--puck-css-text-secondary));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.row {
|
|
15
|
+
display: flex;
|
|
16
|
+
align-items: center;
|
|
17
|
+
gap: var(--pds-spacing-xs, 0.5rem);
|
|
18
|
+
width: 100%;
|
|
19
|
+
margin-bottom: 2px;
|
|
20
|
+
padding: var(--pds-spacing-xs, 0.5rem) var(--pds-spacing-s, 0.75rem);
|
|
21
|
+
border: 1px solid transparent;
|
|
22
|
+
border-radius: 9px;
|
|
23
|
+
background: transparent;
|
|
24
|
+
font: inherit;
|
|
25
|
+
text-align: left;
|
|
26
|
+
cursor: pointer;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.row:hover {
|
|
30
|
+
background: var(--pds-color-interactive-background-hover, var(--puck-css-bg-secondary));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.row:focus-visible {
|
|
34
|
+
outline: 2px solid var(--pds-color-interactive-focus, var(--puck-css-primary));
|
|
35
|
+
outline-offset: 2px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.rowSelected,
|
|
39
|
+
.rowSelected:hover {
|
|
40
|
+
background: var(--pds-color-interactive-background-selected, var(--puck-css-bg-secondary));
|
|
41
|
+
border-color: var(--pds-color-border-hover, var(--puck-css-border));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.rowDropTarget {
|
|
45
|
+
background: var(--pds-color-panel-sunken-background, var(--puck-css-bg-secondary));
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.label {
|
|
49
|
+
flex: 1;
|
|
50
|
+
min-width: 0;
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
white-space: nowrap;
|
|
53
|
+
text-overflow: ellipsis;
|
|
54
|
+
font-family: var(--pds-typography-ff-compact, 'Inter Tight', 'Inter', sans-serif);
|
|
55
|
+
font-size: var(--pds-typography-size-s, 0.875rem);
|
|
56
|
+
font-weight: var(--pds-typography-fw-semibold, 600);
|
|
57
|
+
color: var(--pds-color-foreground-default, var(--puck-css-text));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.icon {
|
|
61
|
+
display: inline-flex;
|
|
62
|
+
flex-shrink: 0;
|
|
63
|
+
color: var(--pds-color-foreground-default-secondary, var(--puck-css-text-secondary));
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.rowSelected .icon {
|
|
67
|
+
color: var(--pds-color-interactive-focus, var(--puck-css-primary));
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.grip {
|
|
71
|
+
display: inline-flex;
|
|
72
|
+
flex-shrink: 0;
|
|
73
|
+
cursor: grab;
|
|
74
|
+
color: var(--pds-color-foreground-default-secondary, var(--puck-css-text-secondary));
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Hidden until the row is hovered or something inside it has focus — so the
|
|
78
|
+
affordance stays reachable by keyboard, not just by pointer. */
|
|
79
|
+
.delete {
|
|
80
|
+
display: inline-flex;
|
|
81
|
+
flex-shrink: 0;
|
|
82
|
+
padding: 2px;
|
|
83
|
+
border: none;
|
|
84
|
+
border-radius: 4px;
|
|
85
|
+
background: none;
|
|
86
|
+
cursor: pointer;
|
|
87
|
+
opacity: 0;
|
|
88
|
+
color: var(--pds-color-foreground-default-secondary, var(--puck-css-text-secondary));
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.row:hover .delete,
|
|
92
|
+
.row:focus-within .delete,
|
|
93
|
+
.delete:focus-visible {
|
|
94
|
+
opacity: 1;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.delete:hover {
|
|
98
|
+
color: var(--pds-color-status-critical-foreground);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.delete:focus-visible {
|
|
102
|
+
outline: 2px solid var(--pds-color-interactive-focus, var(--puck-css-primary));
|
|
103
|
+
outline-offset: 1px;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.empty {
|
|
107
|
+
padding: 40px var(--pds-spacing-l, 1.5rem);
|
|
108
|
+
text-align: center;
|
|
109
|
+
font-size: var(--pds-typography-size-s, 0.875rem);
|
|
110
|
+
color: var(--pds-color-foreground-default-secondary, var(--puck-css-text-secondary));
|
|
111
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"P1InspectorFields.d.ts","sourceRoot":"","sources":["../../../src/editor/components/P1InspectorFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"P1InspectorFields.d.ts","sourceRoot":"","sources":["../../../src/editor/components/P1InspectorFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAkB1B,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,GAAG,KAAK,CAAC,YAAY,CA6HrB"}
|
|
@@ -2,11 +2,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { createUsePuck, usePuck } from '@puckeditor/core';
|
|
3
3
|
import { IconButton } from '@pantheon-systems/pds-toolkit-react';
|
|
4
4
|
import { useP1PuckOptional } from '../../core/P1PuckContext.js';
|
|
5
|
+
import { useSidebarScrollPreservation } from '../useSidebarScrollPreservation.js';
|
|
5
6
|
import { templateFromRegistryPath } from '../utils/templatePath.js';
|
|
6
|
-
import { P1TemplateFields } from './P1TemplateFields.js';
|
|
7
|
-
import { InspectorTabHeader } from './InspectorTabHeader.js';
|
|
8
7
|
import { ReadOnlyFieldsGuard } from '../../versioning/components/ReadOnlyFieldsGuard.js';
|
|
9
8
|
import { VersionReadOnlyBanner } from '../../versioning/components/VersionReadOnlyBanner.js';
|
|
9
|
+
import { DataListFieldsGrouper } from '../../data/data-list-block/DataListFieldsGrouper.js';
|
|
10
|
+
import { P1TemplateFields } from './P1TemplateFields.js';
|
|
11
|
+
import { InspectorTabHeader } from './InspectorTabHeader.js';
|
|
10
12
|
// Selectors are at module level so the hook identity is stable across renders.
|
|
11
13
|
const useInspectorPuck = createUsePuck();
|
|
12
14
|
const useInspectorSelectedType = createUsePuck();
|
|
@@ -16,6 +18,7 @@ export function P1InspectorFields({ children, }) {
|
|
|
16
18
|
const css = useP1PuckOptional();
|
|
17
19
|
const itemSelector = useInspectorPuck((s) => s.appState?.ui
|
|
18
20
|
?.itemSelector ?? null);
|
|
21
|
+
useSidebarScrollPreservation(itemSelector);
|
|
19
22
|
const selectedBlockType = useInspectorSelectedType((s) => s.selectedItem?.type ?? null);
|
|
20
23
|
const contentLength = useInspectorContentLength((s) => s.appState?.data?.content
|
|
21
24
|
?.length ?? 0);
|
|
@@ -33,7 +36,12 @@ export function P1InspectorFields({ children, }) {
|
|
|
33
36
|
dispatch({ type: 'setUi', ui: { itemSelector: null } });
|
|
34
37
|
}
|
|
35
38
|
if (tab === 'block' && !itemSelector && contentLength > 0) {
|
|
36
|
-
|
|
39
|
+
// Puck indexes the root zone as `rootDroppableId` (`root:default-zone`);
|
|
40
|
+
// the bare zone name resolves to no zone, so getItem() selects nothing.
|
|
41
|
+
dispatch({
|
|
42
|
+
type: 'setUi',
|
|
43
|
+
ui: { itemSelector: { zone: 'root:default-zone', index: 0 } },
|
|
44
|
+
});
|
|
37
45
|
}
|
|
38
46
|
};
|
|
39
47
|
const handleCollapse = () => {
|
|
@@ -47,8 +55,19 @@ export function P1InspectorFields({ children, }) {
|
|
|
47
55
|
}
|
|
48
56
|
const template = templateFromRegistryPath(css?.currentDocument?.path, css?.templates);
|
|
49
57
|
if (template && !itemSelector && css?.updateTemplate) {
|
|
50
|
-
return
|
|
58
|
+
// Guarded like the main return — without this, template fields stay editable
|
|
59
|
+
// while viewing a read-only historical version.
|
|
60
|
+
return (_jsx(ReadOnlyFieldsGuard, { isReadOnly: isReadOnly, children: _jsx(P1TemplateFields, { children: children }) }));
|
|
51
61
|
}
|
|
52
|
-
|
|
62
|
+
const templateLabel = !itemSelector
|
|
63
|
+
? css?.currentTemplate
|
|
64
|
+
?.root?.props?._template?.label
|
|
65
|
+
?? css?.templates?.find((t) => t.id === css?.currentDocument?.templateId)?.label
|
|
66
|
+
?? null
|
|
67
|
+
: null;
|
|
68
|
+
return (_jsxs("div", { className: `p1-inspector-fields${isReadOnly ? ' p1-inspector-fields--readonly' : ''}`, children: [_jsx(InspectorTabHeader, { activeTab: activeTab, onTabChange: handleTabChange, isReadOnly: isReadOnly, rightSideBarVisible: rightSideBarVisible, onCollapse: handleCollapse }), isReadOnly && versionNumber !== null && (_jsx(VersionReadOnlyBanner, { versionNumber: versionNumber })), activeTab === 'block' && selectedBlockLabel && (_jsxs("div", { className: "p1-inspector-breadcrumb", "aria-label": "Selected block location", children: [_jsx("span", { className: "p1-inspector-breadcrumb__sep", "aria-hidden": "true", children: "Page" }), _jsx("span", { className: "p1-inspector-breadcrumb__sep", "aria-hidden": "true", children: "\u203A" }), _jsx("span", { className: "p1-inspector-breadcrumb__block", children: selectedBlockLabel })] })), _jsxs(ReadOnlyFieldsGuard, { isReadOnly: isReadOnly, children: [selectedBlockType &&
|
|
69
|
+
config.components[selectedBlockType]?._fieldGroups
|
|
70
|
+
? _jsx(DataListFieldsGrouper, { children: children })
|
|
71
|
+
: children, templateLabel && (_jsxs("div", { className: "p1-inspector-template-badge", children: [_jsx("span", { className: "p1-inspector-template-badge__label", children: "Template" }), _jsx("span", { className: "p1-inspector-template-badge__name", children: templateLabel })] }))] })] }));
|
|
53
72
|
}
|
|
54
73
|
//# sourceMappingURL=P1InspectorFields.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"P1InspectorFields.js","sourceRoot":"","sources":["../../../src/editor/components/P1InspectorFields.tsx"],"names":[],"mappings":";AAaA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"P1InspectorFields.js","sourceRoot":"","sources":["../../../src/editor/components/P1InspectorFields.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PanelHeader
|
|
3
|
+
*
|
|
4
|
+
* The heading every left-rail panel wears: title, an optional actions slot, a
|
|
5
|
+
* collapse button, and the rule beneath. Blocks, Outline, Version history and
|
|
6
|
+
* Data sources all render it, so their headings stay identical by construction
|
|
7
|
+
* instead of by three hand-rolled copies drifting apart — which is exactly what
|
|
8
|
+
* had happened (styles.css defined .css-plugin-panel-header twice, with
|
|
9
|
+
* different padding).
|
|
10
|
+
*
|
|
11
|
+
* Collapsing is built in rather than a required prop: all four panels want the
|
|
12
|
+
* same dispatch, and every one of them renders inside Puck's context. Pass
|
|
13
|
+
* `onCollapse` only for work that must happen *in addition*.
|
|
14
|
+
*/
|
|
15
|
+
import React from 'react';
|
|
16
|
+
export interface PanelHeaderProps {
|
|
17
|
+
/** Panel name, rendered as the heading. */
|
|
18
|
+
title: string;
|
|
19
|
+
/** Extra work to run after collapsing. The collapse itself is built in. */
|
|
20
|
+
onCollapse?: () => void;
|
|
21
|
+
/** Optional controls rendered between the title and the collapse button. */
|
|
22
|
+
actions?: React.ReactNode;
|
|
23
|
+
}
|
|
24
|
+
export declare function PanelHeader({ title, onCollapse, actions, }: PanelHeaderProps): React.ReactElement;
|
|
25
|
+
//# sourceMappingURL=PanelHeader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelHeader.d.ts","sourceRoot":"","sources":["../../../src/editor/components/PanelHeader.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,UAAU,EACV,OAAO,GACR,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAoBvC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { IconButton } from '@pantheon-systems/pds-toolkit-react';
|
|
3
|
+
import { usePuck } from '@puckeditor/core';
|
|
4
|
+
import styles from './PanelHeader.module.css';
|
|
5
|
+
export function PanelHeader({ title, onCollapse, actions, }) {
|
|
6
|
+
const { dispatch } = usePuck();
|
|
7
|
+
return (_jsxs("div", { className: styles.header, children: [_jsx("span", { className: styles.title, children: title }), actions, _jsx(IconButton, { ariaLabel: "Collapse panel", iconName: "anglesLeft", size: "s", hasTooltip: true, hasBorder: false, onClick: () => {
|
|
8
|
+
dispatch({ type: 'setUi', ui: { leftSideBarVisible: false } });
|
|
9
|
+
onCollapse?.();
|
|
10
|
+
} })] }));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=PanelHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelHeader.js","sourceRoot":"","sources":["../../../src/editor/components/PanelHeader.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAW9C,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,UAAU,EACV,OAAO,GACU;IACjB,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IAE/B,OAAO,CACL,eAAK,SAAS,EAAE,MAAM,CAAC,MAAM,aAC3B,eAAM,SAAS,EAAE,MAAM,CAAC,KAAK,YAAG,KAAK,GAAQ,EAC5C,OAAO,EACR,KAAC,UAAU,IACT,SAAS,EAAC,gBAAgB,EAC1B,QAAQ,EAAC,YAAY,EACrB,IAAI,EAAC,GAAG,EACR,UAAU,EAAE,IAAI,EAChB,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,GAAG,EAAE;oBACZ,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC/D,UAAU,EAAE,EAAE,CAAC;gBACjB,CAAC,GACD,IACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Panel heading
|
|
3
|
+
*
|
|
4
|
+
* One heading for every left-rail panel: Blocks, Outline, Version history,
|
|
5
|
+
* Data sources. Geometry mirrors the prototype's `.panel-header`
|
|
6
|
+
* (p1-responsive/editor/editor.css:230).
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
.header {
|
|
10
|
+
display: flex;
|
|
11
|
+
align-items: center;
|
|
12
|
+
gap: 8px;
|
|
13
|
+
padding: 10px 12px;
|
|
14
|
+
border-bottom: 1px solid var(--pds-color-border-default, var(--puck-css-border));
|
|
15
|
+
flex: none;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.title {
|
|
19
|
+
flex: 1;
|
|
20
|
+
min-width: 0;
|
|
21
|
+
overflow: hidden;
|
|
22
|
+
white-space: nowrap;
|
|
23
|
+
text-overflow: ellipsis;
|
|
24
|
+
font-family: var(--pds-typography-ff-compact, 'Inter Tight', 'Inter', sans-serif);
|
|
25
|
+
font-size: 14px;
|
|
26
|
+
font-weight: 700;
|
|
27
|
+
line-height: 1.2;
|
|
28
|
+
color: var(--pds-color-foreground-default, var(--puck-css-text));
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Trailing controls never shrink when the title is long. */
|
|
32
|
+
.header > *:not(.title) {
|
|
33
|
+
flex-shrink: 0;
|
|
34
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface PanelShellProps {
|
|
3
|
+
title: string;
|
|
4
|
+
onCollapse?: () => void;
|
|
5
|
+
actions?: React.ReactNode;
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
testId?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function PanelShell({ title, onCollapse, actions, children, testId, }: PanelShellProps): React.ReactElement;
|
|
10
|
+
//# sourceMappingURL=PanelShell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelShell.d.ts","sourceRoot":"","sources":["../../../src/editor/components/PanelShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,UAAU,EACV,OAAO,EACP,QAAQ,EACR,MAAM,GACP,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CAOtC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PanelHeader } from './PanelHeader.js';
|
|
3
|
+
import styles from './PanelShell.module.css';
|
|
4
|
+
export function PanelShell({ title, onCollapse, actions, children, testId, }) {
|
|
5
|
+
return (_jsxs("div", { className: styles.shell, "data-testid": testId, children: [_jsx(PanelHeader, { title: title, onCollapse: onCollapse, actions: actions }), _jsx("div", { className: styles.body, children: children })] }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=PanelShell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelShell.js","sourceRoot":"","sources":["../../../src/editor/components/PanelShell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,MAAM,MAAM,yBAAyB,CAAC;AAU7C,MAAM,UAAU,UAAU,CAAC,EACzB,KAAK,EACL,UAAU,EACV,OAAO,EACP,QAAQ,EACR,MAAM,GACU;IAChB,OAAO,CACL,eAAK,SAAS,EAAE,MAAM,CAAC,KAAK,iBAAe,MAAM,aAC/C,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAI,EACvE,cAAK,SAAS,EAAE,MAAM,CAAC,IAAI,YAAG,QAAQ,GAAO,IACzC,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
.shell {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: column;
|
|
4
|
+
height: 100%;
|
|
5
|
+
overflow: hidden;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.body {
|
|
9
|
+
flex: 1;
|
|
10
|
+
overflow-y: auto;
|
|
11
|
+
overflow-x: hidden;
|
|
12
|
+
padding: 12px;
|
|
13
|
+
font-size: 13px;
|
|
14
|
+
color: var(--pds-color-foreground-default, var(--puck-css-text));
|
|
15
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface PreviewPanelOverlayProps {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
/** Whether a historical version is currently being previewed. */
|
|
5
|
+
isViewingHistoricalVersion?: boolean;
|
|
6
|
+
/** Version number being previewed — shown in the overlay label. */
|
|
7
|
+
versionNumber?: number;
|
|
8
|
+
/** Called when the user clicks "Back to current version". */
|
|
9
|
+
onExitPreview?: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare function PreviewPanelOverlay({ children, isViewingHistoricalVersion, versionNumber, onExitPreview, }: PreviewPanelOverlayProps): React.ReactElement;
|
|
12
|
+
//# sourceMappingURL=PreviewPanelOverlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreviewPanelOverlay.d.ts","sourceRoot":"","sources":["../../../src/editor/components/PreviewPanelOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,iEAAiE;IACjE,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,0BAAkC,EAClC,aAAa,EACb,aAAa,GACd,EAAE,wBAAwB,GAAG,KAAK,CAAC,YAAY,CAkC/C"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export function PreviewPanelOverlay({ children, isViewingHistoricalVersion = false, versionNumber, onExitPreview, }) {
|
|
3
|
+
return (_jsxs("div", { className: `css-preview-panel-overlay__wrapper${isViewingHistoricalVersion ? ' css-preview-panel-overlay__wrapper--readonly' : ''}`, children: [isViewingHistoricalVersion && (_jsxs("div", { className: "css-preview-panel-overlay", "aria-live": "polite", children: [_jsx("div", { className: "css-preview-panel-overlay__label-wrap", children: _jsxs("p", { className: "css-preview-panel-overlay__label", children: ["You're viewing", versionNumber != null ? ` v${versionNumber}` : ' a historical version', "."] }) }), _jsx("div", { className: "css-preview-panel-overlay__btn-wrap", children: _jsx("button", { type: "button", className: "css-preview-panel-overlay__btn", onClick: onExitPreview, disabled: !onExitPreview, children: "Back to current version" }) })] })), _jsx("div", { className: isViewingHistoricalVersion
|
|
4
|
+
? 'css-preview-panel-overlay__content css-preview-panel-overlay__content--dimmed'
|
|
5
|
+
: 'css-preview-panel-overlay__content', "aria-hidden": isViewingHistoricalVersion ? true : undefined, children: children })] }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=PreviewPanelOverlay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreviewPanelOverlay.js","sourceRoot":"","sources":["../../../src/editor/components/PreviewPanelOverlay.tsx"],"names":[],"mappings":";AAYA,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,0BAA0B,GAAG,KAAK,EAClC,aAAa,EACb,aAAa,GACY;IACzB,OAAO,CACL,eAAK,SAAS,EAAE,qCAAqC,0BAA0B,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC,CAAC,EAAE,EAAE,aACrI,0BAA0B,IAAI,CAC7B,eAAK,SAAS,EAAC,2BAA2B,eAAW,QAAQ,aAC3D,cAAK,SAAS,EAAC,uCAAuC,YACpD,aAAG,SAAS,EAAC,kCAAkC,+BACzB,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC,CAAC,CAAC,uBAAuB,SACxF,GACA,EACN,cAAK,SAAS,EAAC,qCAAqC,YAClD,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,gCAAgC,EAC1C,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,CAAC,aAAa,wCAGjB,GACL,IACF,CACP,EACD,cACE,SAAS,EACP,0BAA0B;oBACxB,CAAC,CAAC,+EAA+E;oBACjF,CAAC,CAAC,oCAAoC,iBAE7B,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,YAEzD,QAAQ,GACL,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -2,5 +2,5 @@ export interface PublishedStatusBadgeProps {
|
|
|
2
2
|
status: "published" | "unpublished-changes" | "draft";
|
|
3
3
|
className?: string;
|
|
4
4
|
}
|
|
5
|
-
export declare function PublishedStatusBadge({ status, className, }: PublishedStatusBadgeProps): import("react
|
|
5
|
+
export declare function PublishedStatusBadge({ status, className, }: PublishedStatusBadgeProps): import("react").JSX.Element;
|
|
6
6
|
//# sourceMappingURL=PublishedStatusBadge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublishedStatusBadge.d.ts","sourceRoot":"","sources":["../../../src/editor/components/PublishedStatusBadge.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,WAAW,GAAG,qBAAqB,GAAG,OAAO,CAAC;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,SAAS,GACV,EAAE,yBAAyB
|
|
1
|
+
{"version":3,"file":"PublishedStatusBadge.d.ts","sourceRoot":"","sources":["../../../src/editor/components/PublishedStatusBadge.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,WAAW,GAAG,qBAAqB,GAAG,OAAO,CAAC;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,SAAS,GACV,EAAE,yBAAyB,+BAmB3B"}
|
|
@@ -5,6 +5,10 @@ export interface VersionBannerOverrideProps {
|
|
|
5
5
|
versions: DocumentVersion[];
|
|
6
6
|
selectedVersionId?: string;
|
|
7
7
|
onVersionSelect?: (version: DocumentVersion) => void;
|
|
8
|
+
onRestoreVersion?: (version: DocumentVersion) => Promise<void>;
|
|
9
|
+
canRevert?: boolean;
|
|
10
|
+
/** The currently filtered version list (from the panel filter). Steppers navigate within this list. */
|
|
11
|
+
filteredVersions?: DocumentVersion[];
|
|
8
12
|
}
|
|
9
|
-
export declare function VersionBannerOverride({ children, versions, selectedVersionId, onVersionSelect, }: VersionBannerOverrideProps): React.ReactElement;
|
|
13
|
+
export declare function VersionBannerOverride({ children, versions, selectedVersionId, onVersionSelect, onRestoreVersion, canRevert, filteredVersions, }: VersionBannerOverrideProps): React.ReactElement;
|
|
10
14
|
//# sourceMappingURL=VersionBannerOverride.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionBannerOverride.d.ts","sourceRoot":"","sources":["../../../src/editor/components/VersionBannerOverride.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"VersionBannerOverride.d.ts","sourceRoot":"","sources":["../../../src/editor/components/VersionBannerOverride.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAG9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAsCpE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACrD,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uGAAuG;IACvG,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACtC;AAED,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,SAAiB,EACjB,gBAAgB,GACjB,EAAE,0BAA0B,GAAG,KAAK,CAAC,YAAY,CAqFjD"}
|
|
@@ -1,15 +1,64 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useLayoutEffect, useRef, useState } from 'react';
|
|
3
|
+
import { createPortal } from 'react-dom';
|
|
2
4
|
import { Icon } from '@pantheon-systems/pds-toolkit-react';
|
|
3
5
|
import { useP1Puck } from '../../core/P1PuckContext.js';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
+
import { HistoricalVersionBanner } from '../../versioning/components/HistoricalVersionBanner.js';
|
|
7
|
+
import bannerStyles from '../../versioning/components/HistoricalVersionBanner.module.css';
|
|
8
|
+
/**
|
|
9
|
+
* The slot is a sibling of the frame inside the canvas grid area, which is
|
|
10
|
+
* outside the transform, so the banner sizes to the real canvas width.
|
|
11
|
+
* Returns null when Puck's DOM does not match, letting the caller fall back to
|
|
12
|
+
* rendering in place rather than dropping the banner entirely.
|
|
13
|
+
*/
|
|
14
|
+
function useCanvasChromeSlot(active, anchor) {
|
|
15
|
+
const [slot, setSlot] = useState(null);
|
|
16
|
+
useLayoutEffect(() => {
|
|
17
|
+
if (!active) {
|
|
18
|
+
setSlot(null);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const root = anchor.current?.closest('#puck-canvas-root');
|
|
22
|
+
const frame = root?.parentElement; // PuckCanvas-inner
|
|
23
|
+
const canvas = frame?.parentElement; // PuckCanvas — the `editor` grid area
|
|
24
|
+
if (!frame || !canvas)
|
|
25
|
+
return;
|
|
26
|
+
const el = document.createElement('div');
|
|
27
|
+
el.className = bannerStyles.slot ?? '';
|
|
28
|
+
canvas.insertBefore(el, frame);
|
|
29
|
+
setSlot(el);
|
|
30
|
+
return () => {
|
|
31
|
+
el.remove();
|
|
32
|
+
setSlot(null);
|
|
33
|
+
};
|
|
34
|
+
}, [active, anchor]);
|
|
35
|
+
return slot;
|
|
36
|
+
}
|
|
37
|
+
export function VersionBannerOverride({ children, versions, selectedVersionId, onVersionSelect, onRestoreVersion, canRevert = false, filteredVersions, }) {
|
|
6
38
|
const p1Context = useP1Puck();
|
|
39
|
+
// versions are newest-first from the API; index 0 is always the current (latest) version.
|
|
7
40
|
const isViewingOld = !!selectedVersionId && versions.length > 0 && selectedVersionId !== versions[0]?.id;
|
|
41
|
+
const viewingVersion = versions.find(v => v.id === selectedVersionId);
|
|
8
42
|
// While a switch is loading the next document, currentDocument is null but
|
|
9
43
|
// the empty state must not flash over the still-visible previous canvas.
|
|
10
44
|
const hasOrIsLoadingDocument = p1Context.currentDocument !== null || p1Context.documentLoading;
|
|
11
45
|
const isReturning = p1Context.isReturningToLatest;
|
|
12
|
-
|
|
46
|
+
// Stepper: navigate within the filtered list (falls back to full list if not provided).
|
|
47
|
+
// Newest-first: lower index = newer, higher index = older.
|
|
48
|
+
const stepList = filteredVersions ?? versions;
|
|
49
|
+
const currentIdx = selectedVersionId ? stepList.findIndex(v => v.id === selectedVersionId) : -1;
|
|
50
|
+
const hasPrevious = currentIdx !== -1 && currentIdx < stepList.length - 1;
|
|
51
|
+
const hasNext = currentIdx > 0;
|
|
52
|
+
// Always provide callbacks when previewing so buttons render (disabled state controls usability).
|
|
53
|
+
const handlePrevious = useCallback(() => { const t = stepList[currentIdx + 1]; if (hasPrevious && t)
|
|
54
|
+
onVersionSelect?.(t); }, [stepList, currentIdx, hasPrevious, onVersionSelect]);
|
|
55
|
+
const handleNext = useCallback(() => { const t = stepList[currentIdx - 1]; if (hasNext && t)
|
|
56
|
+
onVersionSelect?.(t); }, [stepList, currentIdx, hasNext, onVersionSelect]);
|
|
57
|
+
const anchorRef = useRef(null);
|
|
58
|
+
const slot = useCanvasChromeSlot(isViewingOld, anchorRef);
|
|
59
|
+
const banner = isViewingOld ? (_jsx(HistoricalVersionBanner, { version: viewingVersion, onReturnToLatest: () => { if (versions[0])
|
|
60
|
+
onVersionSelect?.(versions[0]); }, onRestoreVersion: onRestoreVersion, canRevert: canRevert, isReturning: isReturning, onPrevious: handlePrevious, onNext: handleNext, hasPrevious: hasPrevious, hasNext: hasNext })) : null;
|
|
61
|
+
return (_jsxs("div", { ref: anchorRef, style: { display: 'flex', flexDirection: 'column', height: '100%' }, children: [banner && (slot ? createPortal(banner, slot) : banner), _jsxs("div", { style: { flex: 1, minHeight: 0, position: 'relative' }, children: [_jsx("div", { style: {
|
|
13
62
|
height: '100%',
|
|
14
63
|
opacity: isReturning ? 0.5 : 1,
|
|
15
64
|
transition: 'opacity 120ms ease',
|
|
@@ -24,7 +73,7 @@ export function VersionBannerOverride({ children, versions, selectedVersionId, o
|
|
|
24
73
|
justifyContent: 'center',
|
|
25
74
|
gap: '1rem',
|
|
26
75
|
color: 'var(--pds-color-text-subtle)',
|
|
27
|
-
backgroundColor: 'white',
|
|
28
|
-
}, children: [_jsx(Icon, { iconName: "userAstronaut",
|
|
76
|
+
backgroundColor: 'var(--pds-color-bg-default, white)',
|
|
77
|
+
}, children: [_jsx(Icon, { iconName: "userAstronaut", size: "3xl", "aria-hidden": "true" }), _jsx("p", { style: { margin: 0, fontFamily: 'Poppins, sans-serif', fontSize: '1rem' }, children: "Choose a page from the menu above" })] }))] })] }));
|
|
29
78
|
}
|
|
30
79
|
//# sourceMappingURL=VersionBannerOverride.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionBannerOverride.js","sourceRoot":"","sources":["../../../src/editor/components/VersionBannerOverride.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"VersionBannerOverride.js","sourceRoot":"","sources":["../../../src/editor/components/VersionBannerOverride.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,qCAAqC,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wDAAwD,CAAC;AACjG,OAAO,YAAY,MAAM,gEAAgE,CAAC;AAE1F;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAe,EAAE,MAA2C;IACvF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAC;IAE3D,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,EAAE,aAAa,CAAC,CAAC,mBAAmB;QACtD,MAAM,MAAM,GAAG,KAAK,EAAE,aAAa,CAAC,CAAC,sCAAsC;QAC3E,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;YAAE,OAAO;QAE9B,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,EAAE,CAAC,SAAS,GAAG,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC;QACvC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,EAAE,CAAC,CAAC;QAEZ,OAAO,GAAG,EAAE;YACV,EAAE,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,OAAO,IAAI,CAAC;AACd,CAAC;AAaD,MAAM,UAAU,qBAAqB,CAAC,EACpC,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,SAAS,GAAG,KAAK,EACjB,gBAAgB,GACW;IAC3B,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;IAC9B,0FAA0F;IAC1F,MAAM,YAAY,GAAG,CAAC,CAAC,iBAAiB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACzG,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,iBAAiB,CAAC,CAAC;IACtE,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,sBAAsB,GAAG,SAAS,CAAC,eAAe,KAAK,IAAI,IAAI,SAAS,CAAC,eAAe,CAAC;IAC/F,MAAM,WAAW,GAAG,SAAS,CAAC,mBAAmB,CAAC;IAElD,wFAAwF;IACxF,2DAA2D;IAC3D,MAAM,QAAQ,GAAG,gBAAgB,IAAI,QAAQ,CAAC;IAC9C,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChG,MAAM,WAAW,GAAG,UAAU,KAAK,CAAC,CAAC,IAAI,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,UAAU,GAAG,CAAC,CAAC;IAC/B,kGAAkG;IAClG,MAAM,cAAc,GAAG,WAAW,CAChC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,IAAI,CAAC;QAAE,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,CACrD,CAAC;IACF,MAAM,UAAU,GAAG,WAAW,CAC5B,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC;QAAE,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrF,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,CAAC,CACjD,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAC5B,KAAC,uBAAuB,IACtB,OAAO,EAAE,cAAc,EACvB,gBAAgB,EAAE,GAAG,EAAE,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC;YAAE,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5E,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,GAChB,CACH,CAAC,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,CACL,eAAK,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aACrF,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAKvD,eAAK,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,aACzD,cACE,KAAK,EAAE;4BACL,MAAM,EAAE,MAAM;4BACd,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAC9B,UAAU,EAAE,oBAAoB;4BAChC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;yBAChD,YAEA,QAAQ,GACL,EACL,CAAC,sBAAsB,IAAI,CAC1B,eACE,KAAK,EAAE;4BACL,QAAQ,EAAE,UAAU;4BACpB,KAAK,EAAE,CAAC;4BACR,MAAM,EAAE,EAAE;4BACV,OAAO,EAAE,MAAM;4BACf,aAAa,EAAE,QAAQ;4BACvB,UAAU,EAAE,QAAQ;4BACpB,cAAc,EAAE,QAAQ;4BACxB,GAAG,EAAE,MAAM;4BACX,KAAK,EAAE,8BAA8B;4BACrC,eAAe,EAAE,oCAAoC;yBACtD,aAED,KAAC,IAAI,IAAC,QAAQ,EAAC,eAAe,EAAC,IAAI,EAAC,KAAK,iBAAa,MAAM,GAAG,EAC/D,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,EAAE,kDAExE,IACA,CACP,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { DocumentVersion } from '@pantheon-systems/css-client';
|
|
3
|
+
import type { CurrentUser } from '../../pds/components/P1EditorHeader.js';
|
|
4
|
+
export interface VersionTimelineProps {
|
|
5
|
+
dayGroups: {
|
|
6
|
+
label: string;
|
|
7
|
+
versions: DocumentVersion[];
|
|
8
|
+
}[];
|
|
9
|
+
/** Full version list — used to look up revert-source version numbers. */
|
|
10
|
+
allVersions: DocumentVersion[];
|
|
11
|
+
selectedVersionId?: string;
|
|
12
|
+
currentVersionId?: string;
|
|
13
|
+
isPreviewing: boolean;
|
|
14
|
+
unpublishedCount: number;
|
|
15
|
+
currentUser?: CurrentUser;
|
|
16
|
+
resolveAuthorName?: (id: string, type: 'user' | 'agent') => string | undefined;
|
|
17
|
+
onVersionSelect?: (version: DocumentVersion) => void;
|
|
18
|
+
}
|
|
19
|
+
export declare function VersionTimeline({ dayGroups, allVersions, selectedVersionId, currentVersionId, isPreviewing, unpublishedCount, currentUser, resolveAuthorName, onVersionSelect, }: VersionTimelineProps): React.ReactElement;
|
|
20
|
+
//# sourceMappingURL=VersionTimeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VersionTimeline.d.ts","sourceRoot":"","sources":["../../../src/editor/components/VersionTimeline.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAE1E,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,eAAe,EAAE,CAAA;KAAE,EAAE,CAAC;IAC5D,yEAAyE;IACzE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/E,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;CACtD;AAED,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,eAAe,GAChB,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAkF3C"}
|