@wordpress/edit-site 5.30.0 → 5.32.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/CHANGELOG.md +4 -0
- package/build/components/block-editor/editor-canvas.js +24 -4
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +15 -4
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +1 -1
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/editor/index.js +12 -3
- package/build/components/editor/index.js.map +1 -1
- package/build/components/editor-canvas-container/index.js +1 -2
- package/build/components/editor-canvas-container/index.js.map +1 -1
- package/build/components/global-styles/background-panel.js +38 -0
- package/build/components/global-styles/background-panel.js.map +1 -0
- package/build/components/global-styles/color-palette-panel.js +0 -9
- package/build/components/global-styles/color-palette-panel.js.map +1 -1
- package/build/components/global-styles/font-families.js +1 -1
- package/build/components/global-styles/font-families.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +53 -17
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +4 -3
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +3 -2
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/upload-fonts.js +44 -10
- package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/index.js +22 -4
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/preview-styles.js +3 -0
- package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
- package/build/components/global-styles/header.js +1 -1
- package/build/components/global-styles/header.js.map +1 -1
- package/build/components/global-styles/hooks.js +50 -1
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/palette.js +3 -1
- package/build/components/global-styles/palette.js.map +1 -1
- package/build/components/global-styles/preview-colors.js +2 -2
- package/build/components/global-styles/preview-colors.js.map +1 -1
- package/build/components/global-styles/preview-iframe.js +0 -1
- package/build/components/global-styles/preview-iframe.js.map +1 -1
- package/build/components/global-styles/preview-styles.js +2 -2
- package/build/components/global-styles/preview-styles.js.map +1 -1
- package/build/components/global-styles/root-menu.js +8 -2
- package/build/components/global-styles/root-menu.js.map +1 -1
- package/build/components/global-styles/screen-background.js +34 -0
- package/build/components/global-styles/screen-background.js.map +1 -0
- package/build/components/global-styles/screen-color-palette.js +2 -2
- package/build/components/global-styles/screen-color-palette.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +5 -10
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-style-variations.js +3 -37
- package/build/components/global-styles/screen-style-variations.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +6 -11
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/style-variations-container.js +5 -2
- package/build/components/global-styles/style-variations-container.js.map +1 -1
- package/build/components/global-styles/typography-elements.js +3 -1
- package/build/components/global-styles/typography-elements.js.map +1 -1
- package/build/components/global-styles/{preview-typography.js → typography-example.js} +4 -2
- package/build/components/global-styles/typography-example.js.map +1 -0
- package/build/components/global-styles/typography-preview.js +3 -1
- package/build/components/global-styles/typography-preview.js.map +1 -1
- package/build/components/global-styles/ui.js +4 -1
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/utils.js +1 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/global-styles/variations/variations-color.js +13 -7
- package/build/components/global-styles/variations/variations-color.js.map +1 -1
- package/build/components/global-styles/variations/variations-typography.js +34 -37
- package/build/components/global-styles/variations/variations-typography.js.map +1 -1
- package/build/components/header-edit-mode/index.js +2 -1
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/config.js +6 -0
- package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/index.js +3 -0
- package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/global.js +17 -3
- package/build/components/keyboard-shortcuts/global.js.map +1 -1
- package/build/components/layout/animation.js +129 -0
- package/build/components/layout/animation.js.map +1 -0
- package/build/components/layout/index.js +9 -17
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/router.js +22 -22
- package/build/components/layout/router.js.map +1 -1
- package/build/components/page-pages/index.js +24 -27
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/delete-category-menu-item.js +6 -1
- package/build/components/page-patterns/delete-category-menu-item.js.map +1 -1
- package/build/components/page-patterns/index.js +19 -32
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/search-items.js +16 -58
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +9 -9
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates-template-parts/actions.js +54 -41
- package/build/components/page-templates-template-parts/actions.js.map +1 -1
- package/build/components/page-templates-template-parts/index.js +31 -69
- package/build/components/page-templates-template-parts/index.js.map +1 -1
- package/build/components/plugin-template-setting-panel/index.js +12 -1
- package/build/components/plugin-template-setting-panel/index.js.map +1 -1
- package/build/components/save-button/index.js +45 -16
- package/build/components/save-button/index.js.map +1 -1
- package/build/components/save-hub/index.js +8 -112
- package/build/components/save-hub/index.js.map +1 -1
- package/build/components/save-panel/index.js +14 -9
- package/build/components/save-panel/index.js.map +1 -1
- package/build/components/sidebar/index.js +3 -8
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-dataviews/custom-dataviews-list.js +2 -2
- package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +3 -3
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/sidebar-dataviews/index.js +5 -4
- package/build/components/sidebar-dataviews/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/index.js +1 -2
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/index.js +7 -17
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-content.js +7 -5
- package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +3 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/index.js +32 -18
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-footer/index.js +5 -1
- package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +18 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/{delete-modal.js → delete-confirm-dialog.js} +4 -5
- package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -0
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +6 -6
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +1 -5
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/index.js +5 -1
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
- package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
- package/build/components/style-book/index.js +1 -1
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -3
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/components/sync-state-with-url/use-sync-path-with-url.js +1 -11
- package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build/components/template-actions/index.js +44 -27
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/welcome-guide/editor.js +11 -2
- package/build/components/welcome-guide/editor.js.map +1 -1
- package/build/hooks/index.js +0 -1
- package/build/hooks/index.js.map +1 -1
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +15 -2
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build/store/selectors.js +1 -9
- package/build/store/selectors.js.map +1 -1
- package/build/utils/constants.js +5 -3
- package/build/utils/constants.js.map +1 -1
- package/build/utils/get-is-list-page.js +1 -1
- package/build/utils/get-is-list-page.js.map +1 -1
- package/build/utils/math.js +98 -0
- package/build/utils/math.js.map +1 -0
- package/build-module/components/block-editor/editor-canvas.js +24 -4
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +15 -4
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/editor/index.js +13 -4
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/editor-canvas-container/index.js +1 -2
- package/build-module/components/editor-canvas-container/index.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +31 -0
- package/build-module/components/global-styles/background-panel.js.map +1 -0
- package/build-module/components/global-styles/color-palette-panel.js +0 -8
- package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +1 -1
- package/build-module/components/global-styles/font-families.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +54 -18
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +4 -3
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +4 -3
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js +44 -10
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/index.js +22 -4
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js +3 -0
- package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -1
- package/build-module/components/global-styles/header.js +1 -1
- package/build-module/components/global-styles/header.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +48 -1
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/palette.js +3 -1
- package/build-module/components/global-styles/palette.js.map +1 -1
- package/build-module/components/global-styles/preview-colors.js +2 -2
- package/build-module/components/global-styles/preview-colors.js.map +1 -1
- package/build-module/components/global-styles/preview-iframe.js +0 -1
- package/build-module/components/global-styles/preview-iframe.js.map +1 -1
- package/build-module/components/global-styles/preview-styles.js +2 -2
- package/build-module/components/global-styles/preview-styles.js.map +1 -1
- package/build-module/components/global-styles/root-menu.js +9 -3
- package/build-module/components/global-styles/root-menu.js.map +1 -1
- package/build-module/components/global-styles/screen-background.js +26 -0
- package/build-module/components/global-styles/screen-background.js.map +1 -0
- package/build-module/components/global-styles/screen-color-palette.js +2 -2
- package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
- package/build-module/components/global-styles/screen-colors.js +5 -10
- package/build-module/components/global-styles/screen-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-style-variations.js +4 -38
- package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +6 -11
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/style-variations-container.js +5 -2
- package/build-module/components/global-styles/style-variations-container.js.map +1 -1
- package/build-module/components/global-styles/typography-elements.js +3 -1
- package/build-module/components/global-styles/typography-elements.js.map +1 -1
- package/build-module/components/global-styles/{preview-typography.js → typography-example.js} +4 -2
- package/build-module/components/global-styles/typography-example.js.map +1 -0
- package/build-module/components/global-styles/typography-preview.js +3 -1
- package/build-module/components/global-styles/typography-preview.js.map +1 -1
- package/build-module/components/global-styles/ui.js +4 -1
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/utils.js +1 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-color.js +13 -7
- package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-typography.js +35 -38
- package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +2 -1
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/config.js +6 -0
- package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +3 -0
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/global.js +17 -3
- package/build-module/components/keyboard-shortcuts/global.js.map +1 -1
- package/build-module/components/layout/animation.js +122 -0
- package/build-module/components/layout/animation.js.map +1 -0
- package/build-module/components/layout/index.js +9 -17
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/router.js +22 -22
- package/build-module/components/layout/router.js.map +1 -1
- package/build-module/components/page-pages/index.js +25 -28
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/delete-category-menu-item.js +6 -1
- package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/index.js +21 -34
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +14 -55
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +9 -9
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-templates-template-parts/actions.js +54 -40
- package/build-module/components/page-templates-template-parts/actions.js.map +1 -1
- package/build-module/components/page-templates-template-parts/index.js +34 -72
- package/build-module/components/page-templates-template-parts/index.js.map +1 -1
- package/build-module/components/plugin-template-setting-panel/index.js +12 -1
- package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
- package/build-module/components/save-button/index.js +46 -17
- package/build-module/components/save-button/index.js.map +1 -1
- package/build-module/components/save-hub/index.js +10 -114
- package/build-module/components/save-hub/index.js.map +1 -1
- package/build-module/components/save-panel/index.js +14 -9
- package/build-module/components/save-panel/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +3 -8
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +2 -2
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +4 -4
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/sidebar-dataviews/index.js +5 -4
- package/build-module/components/sidebar-dataviews/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/index.js +1 -2
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +10 -20
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +7 -5
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +4 -2
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/index.js +33 -19
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js +5 -1
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +19 -2
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/{delete-modal.js → delete-confirm-dialog.js} +3 -4
- package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +6 -6
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +1 -5
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js +5 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
- package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
- package/build-module/components/style-book/index.js +1 -1
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -3
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +1 -11
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build-module/components/template-actions/index.js +44 -27
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/welcome-guide/editor.js +11 -2
- package/build-module/components/welcome-guide/editor.js.map +1 -1
- package/build-module/hooks/index.js +0 -1
- package/build-module/hooks/index.js.map +1 -1
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +15 -2
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-module/store/selectors.js +1 -9
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/constants.js +4 -2
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/get-is-list-page.js +1 -1
- package/build-module/utils/get-is-list-page.js.map +1 -1
- package/build-module/utils/math.js +92 -0
- package/build-module/utils/math.js.map +1 -0
- package/build-style/style-rtl.css +146 -130
- package/build-style/style.css +146 -130
- package/package.json +44 -44
- package/src/components/block-editor/editor-canvas.js +34 -9
- package/src/components/block-editor/site-editor-canvas.js +10 -7
- package/src/components/block-editor/use-site-editor-settings.js +0 -2
- package/src/components/editor/index.js +11 -4
- package/src/components/editor-canvas-container/index.js +0 -1
- package/src/components/global-styles/background-panel.js +34 -0
- package/src/components/global-styles/color-palette-panel.js +0 -11
- package/src/components/global-styles/font-families.js +1 -1
- package/src/components/global-styles/font-library-modal/context.js +77 -31
- package/src/components/global-styles/font-library-modal/font-collection.js +4 -3
- package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +9 -2
- package/src/components/global-styles/font-library-modal/installed-fonts.js +1 -1
- package/src/components/global-styles/font-library-modal/style.scss +15 -6
- package/src/components/global-styles/font-library-modal/upload-fonts.js +53 -8
- package/src/components/global-styles/font-library-modal/utils/index.js +21 -8
- package/src/components/global-styles/font-library-modal/utils/preview-styles.js +4 -0
- package/src/components/global-styles/header.js +1 -1
- package/src/components/global-styles/hooks.js +68 -1
- package/src/components/global-styles/palette.js +3 -1
- package/src/components/global-styles/preview-colors.js +2 -2
- package/src/components/global-styles/preview-iframe.js +0 -1
- package/src/components/global-styles/preview-styles.js +2 -2
- package/src/components/global-styles/root-menu.js +12 -1
- package/src/components/global-styles/screen-background.js +29 -0
- package/src/components/global-styles/screen-color-palette.js +2 -2
- package/src/components/global-styles/screen-colors.js +4 -15
- package/src/components/global-styles/screen-style-variations.js +4 -36
- package/src/components/global-styles/screen-typography.js +6 -20
- package/src/components/global-styles/style-variations-container.js +2 -1
- package/src/components/global-styles/style.scss +15 -10
- package/src/components/global-styles/typography-elements.js +5 -1
- package/src/components/global-styles/{preview-typography.js → typography-example.js} +3 -1
- package/src/components/global-styles/typography-preview.js +3 -1
- package/src/components/global-styles/ui.js +5 -0
- package/src/components/global-styles/utils.js +1 -1
- package/src/components/global-styles/variations/style.scss +32 -23
- package/src/components/global-styles/variations/variations-color.js +12 -6
- package/src/components/global-styles/variations/variations-typography.js +41 -60
- package/src/components/header-edit-mode/index.js +1 -0
- package/src/components/header-edit-mode/style.scss +28 -17
- package/src/components/keyboard-shortcut-help-modal/config.js +4 -0
- package/src/components/keyboard-shortcut-help-modal/index.js +4 -0
- package/src/components/keyboard-shortcuts/global.js +16 -4
- package/src/components/layout/animation.js +122 -0
- package/src/components/layout/index.js +12 -27
- package/src/components/layout/router.js +26 -25
- package/src/components/layout/style.scss +2 -0
- package/src/components/page-pages/index.js +33 -54
- package/src/components/page-patterns/delete-category-menu-item.js +7 -0
- package/src/components/page-patterns/index.js +22 -31
- package/src/components/page-patterns/search-items.js +13 -58
- package/src/components/page-patterns/use-patterns.js +17 -10
- package/src/components/page-templates-template-parts/actions.js +106 -91
- package/src/components/page-templates-template-parts/index.js +41 -93
- package/src/components/page-templates-template-parts/style.scss +5 -0
- package/src/components/plugin-template-setting-panel/index.js +14 -1
- package/src/components/save-button/index.js +55 -26
- package/src/components/save-hub/index.js +20 -164
- package/src/components/save-panel/index.js +24 -17
- package/src/components/sidebar/index.js +2 -8
- package/src/components/sidebar-dataviews/custom-dataviews-list.js +2 -2
- package/src/components/sidebar-dataviews/dataview-item.js +2 -2
- package/src/components/sidebar-dataviews/default-views.js +12 -4
- package/src/components/sidebar-dataviews/index.js +5 -4
- package/src/components/sidebar-edit-mode/index.js +0 -2
- package/src/components/sidebar-edit-mode/page-panels/index.js +31 -62
- package/src/components/sidebar-edit-mode/page-panels/page-content.js +10 -10
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
- package/src/components/sidebar-edit-mode/template-panel/index.js +33 -24
- package/src/components/sidebar-edit-mode/template-panel/style.scss +1 -29
- package/src/components/sidebar-navigation-screen/style.scss +21 -9
- package/src/components/sidebar-navigation-screen-details-footer/index.js +6 -2
- package/src/components/sidebar-navigation-screen-global-styles/index.js +29 -2
- package/src/components/sidebar-navigation-screen-navigation-menu/{delete-modal.js → delete-confirm-dialog.js} +2 -3
- package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +11 -9
- package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +6 -3
- package/src/components/sidebar-navigation-screen-patterns/index.js +0 -7
- package/src/components/sidebar-navigation-screen-template/index.js +6 -1
- package/src/components/sidebar-navigation-screen-templates-browse/content.js +2 -2
- package/src/components/style-book/index.js +1 -3
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +3 -3
- package/src/components/sync-state-with-url/use-sync-path-with-url.js +3 -19
- package/src/components/template-actions/index.js +63 -46
- package/src/components/welcome-guide/editor.js +9 -6
- package/src/hooks/index.js +0 -1
- package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +21 -4
- package/src/store/selectors.js +3 -15
- package/src/style.scss +0 -2
- package/src/utils/constants.js +4 -2
- package/src/utils/get-is-list-page.js +1 -1
- package/src/utils/math.js +93 -0
- package/build/components/actions/index.js +0 -321
- package/build/components/actions/index.js.map +0 -1
- package/build/components/global-styles/preview-typography.js.map +0 -1
- package/build/components/sidebar-edit-mode/sidebar-card/index.js +0 -42
- package/build/components/sidebar-edit-mode/sidebar-card/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/template-actions.js +0 -50
- package/build/components/sidebar-edit-mode/template-panel/template-actions.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/template-areas.js +0 -70
- package/build/components/sidebar-edit-mode/template-panel/template-areas.js.map +0 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +0 -1
- package/build/components/sidebar-navigation-screen-pages/index.js +0 -175
- package/build/components/sidebar-navigation-screen-pages/index.js.map +0 -1
- package/build/components/sidebar-navigation-screen-templates/index.js +0 -132
- package/build/components/sidebar-navigation-screen-templates/index.js.map +0 -1
- package/build/hooks/template-part-edit.js +0 -82
- package/build/hooks/template-part-edit.js.map +0 -1
- package/build/store/utils.js +0 -71
- package/build/store/utils.js.map +0 -1
- package/build-module/components/actions/index.js +0 -310
- package/build-module/components/actions/index.js.map +0 -1
- package/build-module/components/global-styles/preview-typography.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/sidebar-card/index.js +0 -34
- package/build-module/components/sidebar-edit-mode/sidebar-card/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js +0 -42
- package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/template-areas.js +0 -63
- package/build-module/components/sidebar-edit-mode/template-panel/template-areas.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-modal.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-pages/index.js +0 -167
- package/build-module/components/sidebar-navigation-screen-pages/index.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js +0 -124
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +0 -1
- package/build-module/hooks/template-part-edit.js +0 -75
- package/build-module/hooks/template-part-edit.js.map +0 -1
- package/build-module/store/utils.js +0 -64
- package/build-module/store/utils.js.map +0 -1
- package/src/components/actions/index.js +0 -411
- package/src/components/sidebar-edit-mode/sidebar-card/index.js +0 -34
- package/src/components/sidebar-edit-mode/sidebar-card/style.scss +0 -37
- package/src/components/sidebar-edit-mode/template-panel/template-actions.js +0 -49
- package/src/components/sidebar-edit-mode/template-panel/template-areas.js +0 -86
- package/src/components/sidebar-navigation-screen-pages/index.js +0 -238
- package/src/components/sidebar-navigation-screen-templates/index.js +0 -156
- package/src/components/sidebar-navigation-screen-templates/style.scss +0 -9
- package/src/hooks/template-part-edit.js +0 -89
- package/src/store/test/utils.js +0 -191
- package/src/store/utils.js +0 -69
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { backup, trash } from '@wordpress/icons';
|
|
5
4
|
import { __, sprintf, _n } from '@wordpress/i18n';
|
|
6
5
|
import { useDispatch } from '@wordpress/data';
|
|
7
|
-
import {
|
|
6
|
+
import { useState } from '@wordpress/element';
|
|
8
7
|
import { store as coreStore } from '@wordpress/core-data';
|
|
9
8
|
import { store as noticesStore } from '@wordpress/notices';
|
|
10
9
|
import { decodeEntities } from '@wordpress/html-entities';
|
|
@@ -25,95 +24,106 @@ import isTemplateRevertable from '../../utils/is-template-revertable';
|
|
|
25
24
|
import isTemplateRemovable from '../../utils/is-template-removable';
|
|
26
25
|
import { TEMPLATE_POST_TYPE } from '../../utils/constants';
|
|
27
26
|
|
|
28
|
-
export
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
template.type,
|
|
50
|
-
template.id
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
createSuccessNotice(
|
|
55
|
-
templates.length > 1
|
|
56
|
-
? sprintf(
|
|
57
|
-
/* translators: The number of items. */
|
|
58
|
-
__( '%s items reverted.' ),
|
|
59
|
-
templates.length
|
|
60
|
-
)
|
|
61
|
-
: sprintf(
|
|
62
|
-
/* translators: The template/part's name. */
|
|
63
|
-
__( '"%s" reverted.' ),
|
|
64
|
-
decodeEntities(
|
|
65
|
-
templates[ 0 ].title.rendered
|
|
66
|
-
)
|
|
67
|
-
),
|
|
68
|
-
{
|
|
69
|
-
type: 'snackbar',
|
|
70
|
-
id: 'edit-site-template-reverted',
|
|
71
|
-
}
|
|
27
|
+
export const resetTemplateAction = {
|
|
28
|
+
id: 'reset-template',
|
|
29
|
+
label: __( 'Clear customizations' ),
|
|
30
|
+
isEligible: isTemplateRevertable,
|
|
31
|
+
supportsBulk: true,
|
|
32
|
+
hideModalHeader: true,
|
|
33
|
+
RenderModal: ( { items, closeModal, onPerform } ) => {
|
|
34
|
+
const { revertTemplate } = useDispatch( editSiteStore );
|
|
35
|
+
const { saveEditedEntityRecord } = useDispatch( coreStore );
|
|
36
|
+
const { createSuccessNotice, createErrorNotice } =
|
|
37
|
+
useDispatch( noticesStore );
|
|
38
|
+
const onConfirm = async () => {
|
|
39
|
+
try {
|
|
40
|
+
for ( const template of items ) {
|
|
41
|
+
await revertTemplate( template, {
|
|
42
|
+
allowUndo: false,
|
|
43
|
+
} );
|
|
44
|
+
await saveEditedEntityRecord(
|
|
45
|
+
'postType',
|
|
46
|
+
template.type,
|
|
47
|
+
template.id
|
|
72
48
|
);
|
|
73
|
-
}
|
|
74
|
-
let fallbackErrorMessage;
|
|
75
|
-
if ( templates[ 0 ].type === TEMPLATE_POST_TYPE ) {
|
|
76
|
-
fallbackErrorMessage =
|
|
77
|
-
templates.length === 1
|
|
78
|
-
? __(
|
|
79
|
-
'An error occurred while reverting the template.'
|
|
80
|
-
)
|
|
81
|
-
: __(
|
|
82
|
-
'An error occurred while reverting the templates.'
|
|
83
|
-
);
|
|
84
|
-
} else {
|
|
85
|
-
fallbackErrorMessage =
|
|
86
|
-
templates.length === 1
|
|
87
|
-
? __(
|
|
88
|
-
'An error occurred while reverting the template part.'
|
|
89
|
-
)
|
|
90
|
-
: __(
|
|
91
|
-
'An error occurred while reverting the template parts.'
|
|
92
|
-
);
|
|
93
|
-
}
|
|
94
|
-
const errorMessage =
|
|
95
|
-
error.message && error.code !== 'unknown_error'
|
|
96
|
-
? error.message
|
|
97
|
-
: fallbackErrorMessage;
|
|
49
|
+
}
|
|
98
50
|
|
|
99
|
-
|
|
51
|
+
createSuccessNotice(
|
|
52
|
+
items.length > 1
|
|
53
|
+
? sprintf(
|
|
54
|
+
/* translators: The number of items. */
|
|
55
|
+
__( '%s items reverted.' ),
|
|
56
|
+
items.length
|
|
57
|
+
)
|
|
58
|
+
: sprintf(
|
|
59
|
+
/* translators: The template/part's name. */
|
|
60
|
+
__( '"%s" reverted.' ),
|
|
61
|
+
decodeEntities( items[ 0 ].title.rendered )
|
|
62
|
+
),
|
|
63
|
+
{
|
|
64
|
+
type: 'snackbar',
|
|
65
|
+
id: 'edit-site-template-reverted',
|
|
66
|
+
}
|
|
67
|
+
);
|
|
68
|
+
} catch ( error ) {
|
|
69
|
+
let fallbackErrorMessage;
|
|
70
|
+
if ( items[ 0 ].type === TEMPLATE_POST_TYPE ) {
|
|
71
|
+
fallbackErrorMessage =
|
|
72
|
+
items.length === 1
|
|
73
|
+
? __(
|
|
74
|
+
'An error occurred while reverting the template.'
|
|
75
|
+
)
|
|
76
|
+
: __(
|
|
77
|
+
'An error occurred while reverting the templates.'
|
|
78
|
+
);
|
|
79
|
+
} else {
|
|
80
|
+
fallbackErrorMessage =
|
|
81
|
+
items.length === 1
|
|
82
|
+
? __(
|
|
83
|
+
'An error occurred while reverting the template part.'
|
|
84
|
+
)
|
|
85
|
+
: __(
|
|
86
|
+
'An error occurred while reverting the template parts.'
|
|
87
|
+
);
|
|
100
88
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
89
|
+
const errorMessage =
|
|
90
|
+
error.message && error.code !== 'unknown_error'
|
|
91
|
+
? error.message
|
|
92
|
+
: fallbackErrorMessage;
|
|
93
|
+
|
|
94
|
+
createErrorNotice( errorMessage, { type: 'snackbar' } );
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
return (
|
|
98
|
+
<VStack spacing="5">
|
|
99
|
+
<Text>
|
|
100
|
+
{ __(
|
|
101
|
+
'Are you sure you want to clear these customizations?'
|
|
102
|
+
) }
|
|
103
|
+
</Text>
|
|
104
|
+
<HStack justify="right">
|
|
105
|
+
<Button variant="tertiary" onClick={ closeModal }>
|
|
106
|
+
{ __( 'Cancel' ) }
|
|
107
|
+
</Button>
|
|
108
|
+
<Button
|
|
109
|
+
variant="primary"
|
|
110
|
+
onClick={ async () => {
|
|
111
|
+
await onConfirm( items );
|
|
112
|
+
onPerform?.();
|
|
113
|
+
closeModal();
|
|
114
|
+
} }
|
|
115
|
+
>
|
|
116
|
+
{ __( 'Clear' ) }
|
|
117
|
+
</Button>
|
|
118
|
+
</HStack>
|
|
119
|
+
</VStack>
|
|
120
|
+
);
|
|
121
|
+
},
|
|
122
|
+
};
|
|
111
123
|
|
|
112
124
|
export const deleteTemplateAction = {
|
|
113
125
|
id: 'delete-template',
|
|
114
126
|
label: __( 'Delete' ),
|
|
115
|
-
isPrimary: true,
|
|
116
|
-
icon: trash,
|
|
117
127
|
isEligible: isTemplateRemovable,
|
|
118
128
|
supportsBulk: true,
|
|
119
129
|
hideModalHeader: true,
|
|
@@ -150,9 +160,7 @@ export const deleteTemplateAction = {
|
|
|
150
160
|
await removeTemplates( templates, {
|
|
151
161
|
allowUndo: false,
|
|
152
162
|
} );
|
|
153
|
-
|
|
154
|
-
onPerform();
|
|
155
|
-
}
|
|
163
|
+
onPerform?.();
|
|
156
164
|
closeModal();
|
|
157
165
|
} }
|
|
158
166
|
>
|
|
@@ -212,8 +220,6 @@ export const renameTemplateAction = {
|
|
|
212
220
|
throwOnError: true,
|
|
213
221
|
}
|
|
214
222
|
);
|
|
215
|
-
// TODO: this action will be reused in template parts list, so
|
|
216
|
-
// let's keep this for a bit, even it's always a `template` now.
|
|
217
223
|
createSuccessNotice(
|
|
218
224
|
template.type === TEMPLATE_POST_TYPE
|
|
219
225
|
? __( 'Template renamed.' )
|
|
@@ -242,16 +248,25 @@ export const renameTemplateAction = {
|
|
|
242
248
|
<VStack spacing="5">
|
|
243
249
|
<TextControl
|
|
244
250
|
__nextHasNoMarginBottom
|
|
251
|
+
__next40pxDefaultSize
|
|
245
252
|
label={ __( 'Name' ) }
|
|
246
253
|
value={ editedTitle }
|
|
247
254
|
onChange={ setEditedTitle }
|
|
248
255
|
required
|
|
249
256
|
/>
|
|
250
257
|
<HStack justify="right">
|
|
251
|
-
<Button
|
|
258
|
+
<Button
|
|
259
|
+
variant="tertiary"
|
|
260
|
+
onClick={ closeModal }
|
|
261
|
+
__next40pxDefaultSize
|
|
262
|
+
>
|
|
252
263
|
{ __( 'Cancel' ) }
|
|
253
264
|
</Button>
|
|
254
|
-
<Button
|
|
265
|
+
<Button
|
|
266
|
+
variant="primary"
|
|
267
|
+
type="submit"
|
|
268
|
+
__next40pxDefaultSize
|
|
269
|
+
>
|
|
255
270
|
{ __( 'Save' ) }
|
|
256
271
|
</Button>
|
|
257
272
|
</HStack>
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import classnames from 'classnames';
|
|
5
|
-
import removeAccents from 'remove-accents';
|
|
6
5
|
|
|
7
6
|
/**
|
|
8
7
|
* WordPress dependencies
|
|
@@ -22,12 +21,9 @@ import {
|
|
|
22
21
|
BlockPreview,
|
|
23
22
|
privateApis as blockEditorPrivateApis,
|
|
24
23
|
} from '@wordpress/block-editor';
|
|
25
|
-
import {
|
|
26
|
-
DataViews,
|
|
27
|
-
sortByTextFields,
|
|
28
|
-
getPaginationResults,
|
|
29
|
-
} from '@wordpress/dataviews';
|
|
24
|
+
import { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';
|
|
30
25
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
26
|
+
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
31
27
|
|
|
32
28
|
/**
|
|
33
29
|
* Internal dependencies
|
|
@@ -40,22 +36,22 @@ import {
|
|
|
40
36
|
TEMPLATE_POST_TYPE,
|
|
41
37
|
TEMPLATE_PART_POST_TYPE,
|
|
42
38
|
ENUMERATION_TYPE,
|
|
43
|
-
|
|
44
|
-
OPERATOR_NOT_IN,
|
|
39
|
+
OPERATOR_IS_ANY,
|
|
45
40
|
LAYOUT_GRID,
|
|
46
41
|
LAYOUT_TABLE,
|
|
47
42
|
LAYOUT_LIST,
|
|
48
43
|
} from '../../utils/constants';
|
|
49
44
|
import {
|
|
50
|
-
|
|
45
|
+
resetTemplateAction,
|
|
51
46
|
deleteTemplateAction,
|
|
52
47
|
renameTemplateAction,
|
|
53
48
|
} from './actions';
|
|
54
|
-
import { postRevisionsAction } from '../actions';
|
|
55
49
|
import usePatternSettings from '../page-patterns/use-pattern-settings';
|
|
56
50
|
import { unlock } from '../../lock-unlock';
|
|
57
51
|
import AddNewTemplatePart from './add-new-template-part';
|
|
58
52
|
|
|
53
|
+
const { usePostActions } = unlock( editorPrivateApis );
|
|
54
|
+
|
|
59
55
|
const { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(
|
|
60
56
|
blockEditorPrivateApis
|
|
61
57
|
);
|
|
@@ -63,10 +59,6 @@ const { useHistory, useLocation } = unlock( routerPrivateApis );
|
|
|
63
59
|
|
|
64
60
|
const EMPTY_ARRAY = [];
|
|
65
61
|
|
|
66
|
-
const SUPPORTED_LAYOUTS = window?.__experimentalAdminViews
|
|
67
|
-
? [ LAYOUT_TABLE, LAYOUT_GRID, LAYOUT_LIST ]
|
|
68
|
-
: [ LAYOUT_TABLE, LAYOUT_GRID ];
|
|
69
|
-
|
|
70
62
|
const defaultConfigPerViewType = {
|
|
71
63
|
[ LAYOUT_TABLE ]: {
|
|
72
64
|
primaryField: 'title',
|
|
@@ -74,6 +66,7 @@ const defaultConfigPerViewType = {
|
|
|
74
66
|
[ LAYOUT_GRID ]: {
|
|
75
67
|
mediaField: 'preview',
|
|
76
68
|
primaryField: 'title',
|
|
69
|
+
displayAsColumnFields: [ 'description' ],
|
|
77
70
|
},
|
|
78
71
|
[ LAYOUT_LIST ]: {
|
|
79
72
|
primaryField: 'title',
|
|
@@ -97,10 +90,6 @@ const DEFAULT_VIEW = {
|
|
|
97
90
|
filters: [],
|
|
98
91
|
};
|
|
99
92
|
|
|
100
|
-
function normalizeSearchInput( input = '' ) {
|
|
101
|
-
return removeAccents( input.trim().toLowerCase() );
|
|
102
|
-
}
|
|
103
|
-
|
|
104
93
|
function Title( { item, viewType } ) {
|
|
105
94
|
if ( viewType === LAYOUT_LIST ) {
|
|
106
95
|
return decodeEntities( item.title?.rendered ) || __( '(no title)' );
|
|
@@ -152,7 +141,7 @@ function AuthorField( { item, viewType } ) {
|
|
|
152
141
|
<Icon icon={ icon } />
|
|
153
142
|
</div>
|
|
154
143
|
) }
|
|
155
|
-
<span>{ text }</span>
|
|
144
|
+
<span className="page-templates-author-field__name">{ text }</span>
|
|
156
145
|
</HStack>
|
|
157
146
|
);
|
|
158
147
|
}
|
|
@@ -209,9 +198,7 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
209
198
|
const { params } = useLocation();
|
|
210
199
|
const { activeView = 'all', layout } = params;
|
|
211
200
|
const defaultView = useMemo( () => {
|
|
212
|
-
const usedType =
|
|
213
|
-
? layout ?? DEFAULT_VIEW.type
|
|
214
|
-
: DEFAULT_VIEW.type;
|
|
201
|
+
const usedType = layout ?? DEFAULT_VIEW.type;
|
|
215
202
|
return {
|
|
216
203
|
...DEFAULT_VIEW,
|
|
217
204
|
type: usedType,
|
|
@@ -221,8 +208,8 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
221
208
|
? [
|
|
222
209
|
{
|
|
223
210
|
field: 'author',
|
|
224
|
-
operator: '
|
|
225
|
-
value: activeView,
|
|
211
|
+
operator: 'isAny',
|
|
212
|
+
value: [ activeView ],
|
|
226
213
|
},
|
|
227
214
|
]
|
|
228
215
|
: [],
|
|
@@ -237,8 +224,8 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
237
224
|
? [
|
|
238
225
|
{
|
|
239
226
|
field: 'author',
|
|
240
|
-
operator:
|
|
241
|
-
value: activeView,
|
|
227
|
+
operator: OPERATOR_IS_ANY,
|
|
228
|
+
value: [ activeView ],
|
|
242
229
|
},
|
|
243
230
|
]
|
|
244
231
|
: [],
|
|
@@ -303,13 +290,13 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
303
290
|
),
|
|
304
291
|
maxWidth: 400,
|
|
305
292
|
enableHiding: false,
|
|
293
|
+
enableGlobalSearch: true,
|
|
306
294
|
},
|
|
307
295
|
];
|
|
308
296
|
if ( postType === TEMPLATE_POST_TYPE ) {
|
|
309
297
|
_fields.push( {
|
|
310
298
|
header: __( 'Description' ),
|
|
311
299
|
id: 'description',
|
|
312
|
-
getValue: ( { item } ) => item.description,
|
|
313
300
|
render: ( { item } ) => {
|
|
314
301
|
return item.description ? (
|
|
315
302
|
<span className="page-templates-description">
|
|
@@ -331,6 +318,7 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
331
318
|
maxWidth: 400,
|
|
332
319
|
minWidth: 320,
|
|
333
320
|
enableSorting: false,
|
|
321
|
+
enableGlobalSearch: true,
|
|
334
322
|
} );
|
|
335
323
|
}
|
|
336
324
|
// TODO: The plan is to support fields reordering, which would require an API like `order` or something
|
|
@@ -350,77 +338,35 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
350
338
|
}, [ postType, authors, view.type ] );
|
|
351
339
|
|
|
352
340
|
const { data, paginationInfo } = useMemo( () => {
|
|
353
|
-
|
|
354
|
-
return {
|
|
355
|
-
data: EMPTY_ARRAY,
|
|
356
|
-
paginationInfo: { totalItems: 0, totalPages: 0 },
|
|
357
|
-
};
|
|
358
|
-
}
|
|
359
|
-
let filteredData = [ ...records ];
|
|
360
|
-
// Handle global search.
|
|
361
|
-
if ( view.search ) {
|
|
362
|
-
const normalizedSearch = normalizeSearchInput( view.search );
|
|
363
|
-
filteredData = filteredData.filter( ( item ) => {
|
|
364
|
-
const title = item.title?.rendered || item.slug;
|
|
365
|
-
return (
|
|
366
|
-
normalizeSearchInput( title ).includes(
|
|
367
|
-
normalizedSearch
|
|
368
|
-
) ||
|
|
369
|
-
normalizeSearchInput( item.description ).includes(
|
|
370
|
-
normalizedSearch
|
|
371
|
-
)
|
|
372
|
-
);
|
|
373
|
-
} );
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
// Handle filters.
|
|
377
|
-
if ( view.filters.length > 0 ) {
|
|
378
|
-
view.filters.forEach( ( filter ) => {
|
|
379
|
-
if (
|
|
380
|
-
filter.field === 'author' &&
|
|
381
|
-
filter.operator === OPERATOR_IN &&
|
|
382
|
-
!! filter.value
|
|
383
|
-
) {
|
|
384
|
-
filteredData = filteredData.filter( ( item ) => {
|
|
385
|
-
return item.author_text === filter.value;
|
|
386
|
-
} );
|
|
387
|
-
} else if (
|
|
388
|
-
filter.field === 'author' &&
|
|
389
|
-
filter.operator === OPERATOR_NOT_IN &&
|
|
390
|
-
!! filter.value
|
|
391
|
-
) {
|
|
392
|
-
filteredData = filteredData.filter( ( item ) => {
|
|
393
|
-
return item.author_text !== filter.value;
|
|
394
|
-
} );
|
|
395
|
-
}
|
|
396
|
-
} );
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
// Handle sorting.
|
|
400
|
-
if ( view.sort ) {
|
|
401
|
-
filteredData = sortByTextFields( {
|
|
402
|
-
data: filteredData,
|
|
403
|
-
view,
|
|
404
|
-
fields,
|
|
405
|
-
textFields: [ 'title', 'author' ],
|
|
406
|
-
} );
|
|
407
|
-
}
|
|
408
|
-
// Handle pagination.
|
|
409
|
-
return getPaginationResults( {
|
|
410
|
-
data: filteredData,
|
|
411
|
-
view,
|
|
412
|
-
} );
|
|
341
|
+
return filterSortAndPaginate( records, view, fields );
|
|
413
342
|
}, [ records, view, fields ] );
|
|
414
343
|
|
|
415
|
-
const
|
|
344
|
+
const onActionPerformed = useCallback(
|
|
345
|
+
( actionId, items ) => {
|
|
346
|
+
if ( actionId === 'edit-post' ) {
|
|
347
|
+
const post = items[ 0 ];
|
|
348
|
+
history.push( {
|
|
349
|
+
postId: post.id,
|
|
350
|
+
postType: post.type,
|
|
351
|
+
canvas: 'edit',
|
|
352
|
+
} );
|
|
353
|
+
}
|
|
354
|
+
},
|
|
355
|
+
[ history ]
|
|
356
|
+
);
|
|
357
|
+
const [ editAction, viewRevisionsAction ] = usePostActions(
|
|
358
|
+
onActionPerformed,
|
|
359
|
+
[ 'edit-post', 'view-post-revisions' ]
|
|
360
|
+
);
|
|
416
361
|
const actions = useMemo(
|
|
417
362
|
() => [
|
|
363
|
+
editAction,
|
|
418
364
|
resetTemplateAction,
|
|
419
|
-
deleteTemplateAction,
|
|
420
365
|
renameTemplateAction,
|
|
421
|
-
|
|
366
|
+
viewRevisionsAction,
|
|
367
|
+
deleteTemplateAction,
|
|
422
368
|
],
|
|
423
|
-
[
|
|
369
|
+
[ editAction, viewRevisionsAction ]
|
|
424
370
|
);
|
|
425
371
|
|
|
426
372
|
const onChangeView = useCallback(
|
|
@@ -473,8 +419,10 @@ export default function PageTemplatesTemplateParts( { postType } ) {
|
|
|
473
419
|
view={ view }
|
|
474
420
|
onChangeView={ onChangeView }
|
|
475
421
|
onSelectionChange={ onSelectionChange }
|
|
476
|
-
deferredRendering={
|
|
477
|
-
|
|
422
|
+
deferredRendering={
|
|
423
|
+
view.type === LAYOUT_GRID ||
|
|
424
|
+
! view.hiddenFields?.includes( 'preview' )
|
|
425
|
+
}
|
|
478
426
|
/>
|
|
479
427
|
</Page>
|
|
480
428
|
);
|
|
@@ -103,6 +103,11 @@
|
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
105
|
|
|
106
|
+
.page-templates-author-field__name {
|
|
107
|
+
text-overflow: ellipsis;
|
|
108
|
+
overflow: hidden;
|
|
109
|
+
}
|
|
110
|
+
|
|
106
111
|
.edit-site-list__rename-modal {
|
|
107
112
|
// The rename dropdown popover is open at the same time as the rename modal. The latter has to be higher.
|
|
108
113
|
z-index: z-index(".edit-site-list__rename-modal");
|
|
@@ -5,11 +5,24 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* WordPress dependencies
|
|
7
7
|
*/
|
|
8
|
+
import { store as editorStore } from '@wordpress/editor';
|
|
9
|
+
import { useSelect } from '@wordpress/data';
|
|
8
10
|
import { createSlotFill } from '@wordpress/components';
|
|
9
11
|
|
|
10
12
|
const { Fill, Slot } = createSlotFill( 'PluginTemplateSettingPanel' );
|
|
11
13
|
|
|
12
|
-
const PluginTemplateSettingPanel =
|
|
14
|
+
const PluginTemplateSettingPanel = ( { children } ) => {
|
|
15
|
+
const isCurrentEntityTemplate = useSelect(
|
|
16
|
+
( select ) =>
|
|
17
|
+
select( editorStore ).getCurrentPostType() === 'wp_template',
|
|
18
|
+
[]
|
|
19
|
+
);
|
|
20
|
+
if ( ! isCurrentEntityTemplate ) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
return <Fill>{ children }</Fill>;
|
|
24
|
+
};
|
|
25
|
+
|
|
13
26
|
PluginTemplateSettingPanel.Slot = Slot;
|
|
14
27
|
|
|
15
28
|
/**
|
|
@@ -3,9 +3,14 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
5
5
|
import { Button } from '@wordpress/components';
|
|
6
|
-
import { __, sprintf } from '@wordpress/i18n';
|
|
6
|
+
import { __, _n, sprintf } from '@wordpress/i18n';
|
|
7
7
|
import { store as coreStore } from '@wordpress/core-data';
|
|
8
8
|
import { displayShortcut } from '@wordpress/keycodes';
|
|
9
|
+
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
10
|
+
import {
|
|
11
|
+
useEntitiesSavedStatesIsDirty,
|
|
12
|
+
store as editorStore,
|
|
13
|
+
} from '@wordpress/editor';
|
|
9
14
|
|
|
10
15
|
/**
|
|
11
16
|
* Internal dependencies
|
|
@@ -15,30 +20,30 @@ import {
|
|
|
15
20
|
currentlyPreviewingTheme,
|
|
16
21
|
isPreviewingTheme,
|
|
17
22
|
} from '../../utils/is-previewing-theme';
|
|
23
|
+
import { unlock } from '../../lock-unlock';
|
|
24
|
+
|
|
25
|
+
const { useLocation } = unlock( routerPrivateApis );
|
|
18
26
|
|
|
19
27
|
export default function SaveButton( {
|
|
20
28
|
className = 'edit-site-save-button__button',
|
|
21
29
|
variant = 'primary',
|
|
22
30
|
showTooltip = true,
|
|
23
|
-
|
|
31
|
+
showReviewMessage,
|
|
24
32
|
icon,
|
|
25
33
|
size,
|
|
26
34
|
__next40pxDefaultSize = false,
|
|
27
35
|
} ) {
|
|
28
|
-
const {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
} = select( coreStore );
|
|
35
|
-
const dirtyEntityRecords = __experimentalGetDirtyEntityRecords();
|
|
36
|
+
const { params } = useLocation();
|
|
37
|
+
const { setIsSaveViewOpened } = useDispatch( editSiteStore );
|
|
38
|
+
const { saveDirtyEntities } = unlock( useDispatch( editorStore ) );
|
|
39
|
+
const { dirtyEntityRecords } = useEntitiesSavedStatesIsDirty();
|
|
40
|
+
const { isSaving, isSaveViewOpen, previewingThemeName } = useSelect(
|
|
41
|
+
( select ) => {
|
|
42
|
+
const { isSavingEntityRecord, isResolving } = select( coreStore );
|
|
36
43
|
const { isSaveViewOpened } = select( editSiteStore );
|
|
37
44
|
const isActivatingTheme = isResolving( 'activateTheme' );
|
|
38
45
|
const currentlyPreviewingThemeId = currentlyPreviewingTheme();
|
|
39
|
-
|
|
40
46
|
return {
|
|
41
|
-
isDirty: dirtyEntityRecords.length > 0,
|
|
42
47
|
isSaving:
|
|
43
48
|
dirtyEntityRecords.some( ( record ) =>
|
|
44
49
|
isSavingEntityRecord(
|
|
@@ -55,12 +60,26 @@ export default function SaveButton( {
|
|
|
55
60
|
?.name?.rendered
|
|
56
61
|
: undefined,
|
|
57
62
|
};
|
|
58
|
-
},
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const
|
|
62
|
-
|
|
63
|
-
|
|
63
|
+
},
|
|
64
|
+
[ dirtyEntityRecords ]
|
|
65
|
+
);
|
|
66
|
+
const hasDirtyEntities = !! dirtyEntityRecords.length;
|
|
67
|
+
let isOnlyCurrentEntityDirty;
|
|
68
|
+
// Check if the current entity is the only entity with changes.
|
|
69
|
+
// We have some extra logic for `wp_global_styles` for now, that
|
|
70
|
+
// is used in navigation sidebar.
|
|
71
|
+
if ( dirtyEntityRecords.length === 1 ) {
|
|
72
|
+
if ( params.postId ) {
|
|
73
|
+
isOnlyCurrentEntityDirty =
|
|
74
|
+
`${ dirtyEntityRecords[ 0 ].key }` === params.postId &&
|
|
75
|
+
dirtyEntityRecords[ 0 ].name === params.postType;
|
|
76
|
+
} else if ( params.path?.includes( 'wp_global_styles' ) ) {
|
|
77
|
+
isOnlyCurrentEntityDirty =
|
|
78
|
+
dirtyEntityRecords[ 0 ].name === 'globalStyles';
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
const disabled =
|
|
82
|
+
isSaving || ( ! hasDirtyEntities && ! isPreviewingTheme() );
|
|
64
83
|
const getLabel = () => {
|
|
65
84
|
if ( isPreviewingTheme() ) {
|
|
66
85
|
if ( isSaving ) {
|
|
@@ -71,32 +90,42 @@ export default function SaveButton( {
|
|
|
71
90
|
);
|
|
72
91
|
} else if ( disabled ) {
|
|
73
92
|
return __( 'Saved' );
|
|
74
|
-
} else if (
|
|
93
|
+
} else if ( hasDirtyEntities ) {
|
|
75
94
|
return sprintf(
|
|
76
95
|
/* translators: %s: The name of theme to be activated. */
|
|
77
96
|
__( 'Activate %s & Save' ),
|
|
78
97
|
previewingThemeName
|
|
79
98
|
);
|
|
80
99
|
}
|
|
81
|
-
|
|
82
100
|
return sprintf(
|
|
83
101
|
/* translators: %s: The name of theme to be activated. */
|
|
84
102
|
__( 'Activate %s' ),
|
|
85
103
|
previewingThemeName
|
|
86
104
|
);
|
|
87
105
|
}
|
|
88
|
-
|
|
89
106
|
if ( isSaving ) {
|
|
90
107
|
return __( 'Saving' );
|
|
91
|
-
}
|
|
108
|
+
}
|
|
109
|
+
if ( disabled ) {
|
|
92
110
|
return __( 'Saved' );
|
|
93
|
-
}
|
|
94
|
-
|
|
111
|
+
}
|
|
112
|
+
if ( ! isOnlyCurrentEntityDirty && showReviewMessage ) {
|
|
113
|
+
return sprintf(
|
|
114
|
+
// translators: %d: number of unsaved changes (number).
|
|
115
|
+
_n(
|
|
116
|
+
'Review %d change…',
|
|
117
|
+
'Review %d changes…',
|
|
118
|
+
dirtyEntityRecords.length
|
|
119
|
+
),
|
|
120
|
+
dirtyEntityRecords.length
|
|
121
|
+
);
|
|
95
122
|
}
|
|
96
123
|
return __( 'Save' );
|
|
97
124
|
};
|
|
98
125
|
const label = getLabel();
|
|
99
|
-
|
|
126
|
+
const onClick = isOnlyCurrentEntityDirty
|
|
127
|
+
? () => saveDirtyEntities( { dirtyEntityRecords } )
|
|
128
|
+
: () => setIsSaveViewOpened( true );
|
|
100
129
|
return (
|
|
101
130
|
<Button
|
|
102
131
|
variant={ variant }
|
|
@@ -104,7 +133,7 @@ export default function SaveButton( {
|
|
|
104
133
|
aria-disabled={ disabled }
|
|
105
134
|
aria-expanded={ isSaveViewOpen }
|
|
106
135
|
isBusy={ isSaving }
|
|
107
|
-
onClick={ disabled ? undefined :
|
|
136
|
+
onClick={ disabled ? undefined : onClick }
|
|
108
137
|
label={ label }
|
|
109
138
|
/*
|
|
110
139
|
* We want the tooltip to show the keyboard shortcut only when the
|