@wordpress/edit-site 5.19.0 → 5.19.1
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/build/components/add-new-pattern/index.js +3 -3
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +73 -0
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
- package/build/components/block-editor/block-editor-provider/index.js +31 -0
- package/build/components/block-editor/block-editor-provider/index.js.map +1 -0
- package/build/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +76 -0
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
- package/build/components/block-editor/index.js +2 -9
- package/build/components/block-editor/index.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +1 -1
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/create-template-part-modal/index.js +8 -12
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/editor/index.js +4 -1
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-family-item.js +2 -2
- package/build/components/global-styles/font-family-item.js.map +1 -1
- package/build/components/global-styles/font-library-modal/collection-font-details.js +49 -0
- package/build/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
- package/build/components/global-styles/font-library-modal/collection-font-variant.js +55 -0
- package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/context.js +26 -2
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-card.js +7 -4
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +172 -0
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-demo.js +30 -13
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +41 -0
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
- package/build/components/global-styles/font-library-modal/index.js +25 -7
- package/build/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +2 -2
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-card.js +0 -5
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-details.js +2 -1
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
- package/build/components/global-styles/font-library-modal/resolvers.js +16 -0
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/constants.js +1 -7
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/filter-fonts.js +21 -0
- package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/fonts-outline.js +20 -0
- package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/index.js +2 -52
- 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 +76 -0
- package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +36 -0
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
- package/build/components/global-styles/screen-typography.js +1 -1
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/header-edit-mode/document-actions/index.js +9 -8
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/header-edit-mode/index.js +4 -1
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/layout/index.js +5 -1
- package/build/components/layout/index.js.map +1 -1
- package/build/components/list/added-by.js +13 -8
- package/build/components/list/added-by.js.map +1 -1
- package/build/components/list/index.js +2 -1
- package/build/components/list/index.js.map +1 -1
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
- package/build/components/page-patterns/duplicate-menu-item.js +5 -5
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +5 -5
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/index.js +1 -1
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/search-items.js +1 -1
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +28 -34
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-template-parts/add-new-template-part.js +3 -2
- package/build/components/page-template-parts/add-new-template-part.js.map +1 -1
- package/build/components/page-template-parts/index.js +2 -1
- package/build/components/page-template-parts/index.js.map +1 -1
- package/build/components/page-templates/index.js +3 -2
- package/build/components/page-templates/index.js.map +1 -1
- package/build/components/save-hub/index.js +2 -1
- package/build/components/save-hub/index.js.map +1 -1
- package/build/components/secondary-sidebar/list-view-sidebar.js +24 -17
- package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js +21 -3
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +2 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +2 -6
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +9 -2
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +2 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +8 -7
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +3 -3
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +7 -2
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
- package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates/index.js +4 -3
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
- package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build/components/start-template-options/index.js +20 -2
- package/build/components/start-template-options/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
- 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 +4 -3
- package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build/components/template-actions/index.js +2 -1
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-actions/rename-menu-item.js +8 -3
- package/build/components/template-actions/rename-menu-item.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +4 -3
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/hooks/navigation-menu-edit.js +2 -1
- package/build/hooks/navigation-menu-edit.js.map +1 -1
- package/build/hooks/template-part-edit.js +2 -1
- package/build/hooks/template-part-edit.js.map +1 -1
- package/build/store/actions.js +10 -9
- package/build/store/actions.js.map +1 -1
- package/build/store/constants.js +1 -9
- package/build/store/constants.js.map +1 -1
- package/build/store/private-actions.js +21 -1
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +23 -0
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +19 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +3 -2
- package/build/store/selectors.js.map +1 -1
- package/build/utils/constants.js +22 -3
- package/build/utils/constants.js.map +1 -1
- package/build/utils/is-template-removable.js +1 -1
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +1 -1
- package/build/utils/is-template-revertable.js.map +1 -1
- package/build/utils/template-part-create.js +6 -1
- package/build/utils/template-part-create.js.map +1 -1
- package/build-module/components/add-new-pattern/index.js +3 -3
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +65 -0
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
- package/build-module/components/block-editor/block-editor-provider/index.js +23 -0
- package/build-module/components/block-editor/block-editor-provider/index.js.map +1 -0
- package/build-module/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +70 -0
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
- package/build-module/components/block-editor/index.js +1 -8
- package/build-module/components/block-editor/index.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +2 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +8 -12
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/editor/index.js +4 -1
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-family-item.js +2 -2
- package/build-module/components/global-styles/font-family-item.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/collection-font-details.js +40 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/context.js +27 -3
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-card.js +8 -5
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +164 -0
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js +30 -13
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +33 -0
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/index.js +26 -7
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +2 -2
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +0 -5
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-details.js +2 -1
- package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/resolvers.js +14 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/constants.js +1 -6
- package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js +15 -0
- package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js +13 -0
- package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js +2 -51
- 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 +68 -0
- package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +30 -0
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
- package/build-module/components/global-styles/screen-typography.js +1 -1
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/header-edit-mode/document-actions/index.js +9 -8
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +4 -1
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/layout/index.js +5 -1
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/list/added-by.js +13 -8
- package/build-module/components/list/added-by.js.map +1 -1
- package/build-module/components/list/index.js +2 -1
- package/build-module/components/list/index.js.map +1 -1
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
- package/build-module/components/page-patterns/duplicate-menu-item.js +5 -5
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +5 -5
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/index.js +1 -1
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +2 -2
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +28 -35
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-template-parts/add-new-template-part.js +3 -2
- package/build-module/components/page-template-parts/add-new-template-part.js.map +1 -1
- package/build-module/components/page-template-parts/index.js +2 -1
- package/build-module/components/page-template-parts/index.js.map +1 -1
- package/build-module/components/page-templates/index.js +3 -2
- package/build-module/components/page-templates/index.js.map +1 -1
- package/build-module/components/save-hub/index.js +2 -1
- package/build-module/components/save-hub/index.js.map +1 -1
- package/build-module/components/secondary-sidebar/list-view-sidebar.js +26 -19
- package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +21 -3
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +2 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +2 -6
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +9 -2
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -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-navigation-menus/index.js +3 -2
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +2 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +8 -7
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +4 -4
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +8 -3
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js +4 -3
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build-module/components/start-template-options/index.js +20 -2
- package/build-module/components/start-template-options/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
- 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 +4 -3
- 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 +2 -1
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-actions/rename-menu-item.js +8 -3
- package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/hooks/navigation-menu-edit.js +2 -1
- package/build-module/hooks/navigation-menu-edit.js.map +1 -1
- package/build-module/hooks/template-part-edit.js +2 -1
- package/build-module/hooks/template-part-edit.js.map +1 -1
- package/build-module/store/actions.js +10 -10
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/constants.js +0 -4
- package/build-module/store/constants.js.map +1 -1
- package/build-module/store/private-actions.js +19 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +22 -0
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +18 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +3 -3
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/constants.js +17 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/is-template-removable.js +2 -2
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +2 -2
- package/build-module/utils/is-template-revertable.js.map +1 -1
- package/build-module/utils/template-part-create.js +6 -1
- package/build-module/utils/template-part-create.js.map +1 -1
- package/build-style/style-rtl.css +23 -0
- package/build-style/style.css +23 -0
- package/package.json +40 -40
- package/src/components/add-new-pattern/index.js +3 -3
- package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +70 -0
- package/src/components/block-editor/block-editor-provider/index.js +29 -0
- package/src/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +87 -0
- package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +77 -0
- package/src/components/block-editor/index.js +1 -14
- package/src/components/block-editor/site-editor-canvas.js +5 -2
- package/src/components/create-template-part-modal/index.js +11 -12
- package/src/components/editor/index.js +6 -2
- package/src/components/global-styles/font-family-item.js +2 -2
- package/src/components/global-styles/font-library-modal/collection-font-details.js +56 -0
- package/src/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
- package/src/components/global-styles/font-library-modal/context.js +33 -2
- package/src/components/global-styles/font-library-modal/font-card.js +9 -4
- package/src/components/global-styles/font-library-modal/font-collection.js +257 -0
- package/src/components/global-styles/font-library-modal/font-demo.js +36 -10
- package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +50 -0
- package/src/components/global-styles/font-library-modal/index.js +30 -5
- package/src/components/global-styles/font-library-modal/installed-fonts.js +1 -1
- package/src/components/global-styles/font-library-modal/library-font-card.js +1 -8
- package/src/components/global-styles/font-library-modal/library-font-details.js +2 -3
- package/src/components/global-styles/font-library-modal/resolvers.js +16 -0
- package/src/components/global-styles/font-library-modal/style.scss +26 -0
- package/src/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/src/components/global-styles/font-library-modal/utils/constants.js +1 -9
- package/src/components/global-styles/font-library-modal/utils/filter-fonts.js +18 -0
- package/src/components/global-styles/font-library-modal/utils/fonts-outline.js +21 -0
- package/src/components/global-styles/font-library-modal/utils/index.js +9 -69
- package/src/components/global-styles/font-library-modal/utils/preview-styles.js +86 -0
- package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +33 -0
- package/src/components/global-styles/font-library-modal/utils/test/filter-fonts.spec.js +69 -0
- package/src/components/global-styles/font-library-modal/utils/test/fonts-outline.spec.js +109 -0
- package/src/components/global-styles/font-library-modal/utils/test/{getPreviewStyle.spec.js → preview-styles.spec.js} +49 -9
- package/src/components/global-styles/font-library-modal/utils/test/sort-font-faces.js +74 -0
- package/src/components/global-styles/screen-typography.js +3 -1
- package/src/components/header-edit-mode/document-actions/index.js +17 -8
- package/src/components/header-edit-mode/index.js +2 -1
- package/src/components/layout/index.js +10 -1
- package/src/components/list/added-by.js +29 -11
- package/src/components/list/index.js +7 -1
- package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -8
- package/src/components/page-patterns/duplicate-menu-item.js +5 -5
- package/src/components/page-patterns/grid-item.js +5 -5
- package/src/components/page-patterns/index.js +1 -1
- package/src/components/page-patterns/search-items.js +7 -1
- package/src/components/page-patterns/use-patterns.js +190 -134
- package/src/components/page-template-parts/add-new-template-part.js +5 -2
- package/src/components/page-template-parts/index.js +2 -1
- package/src/components/page-templates/index.js +3 -2
- package/src/components/save-hub/index.js +2 -1
- package/src/components/secondary-sidebar/list-view-sidebar.js +31 -26
- package/src/components/sidebar-edit-mode/page-panels/edit-template.js +48 -20
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +9 -4
- package/src/components/sidebar-edit-mode/page-panels/style.scss +6 -0
- package/src/components/sidebar-edit-mode/settings-header/index.js +4 -7
- package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +9 -2
- package/src/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -1
- package/src/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
- package/src/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/src/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/src/components/sidebar-navigation-screen-pattern/index.js +2 -1
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +8 -2
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +7 -1
- package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +18 -8
- package/src/components/sidebar-navigation-screen-patterns/index.js +8 -4
- package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +16 -3
- package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +12 -2
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/src/components/sidebar-navigation-screen-templates/index.js +4 -3
- package/src/components/sidebar-navigation-screen-templates-browse/index.js +6 -2
- package/src/components/start-template-options/index.js +39 -2
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -4
- package/src/components/sync-state-with-url/use-sync-path-with-url.js +8 -3
- package/src/components/template-actions/index.js +2 -1
- package/src/components/template-actions/rename-menu-item.js +8 -3
- package/src/hooks/commands/use-edit-mode-commands.js +4 -3
- package/src/hooks/navigation-menu-edit.js +2 -1
- package/src/hooks/template-part-edit.js +2 -1
- package/src/store/actions.js +18 -10
- package/src/store/constants.js +0 -5
- package/src/store/private-actions.js +19 -0
- package/src/store/private-selectors.js +22 -0
- package/src/store/reducer.js +18 -0
- package/src/store/selectors.js +6 -3
- package/src/store/test/reducer.js +18 -0
- package/src/utils/constants.js +17 -1
- package/src/utils/is-template-removable.js +2 -2
- package/src/utils/is-template-revertable.js +2 -2
- package/src/utils/template-part-create.js +6 -1
- package/build/components/block-editor/get-block-editor-provider.js +0 -35
- package/build/components/block-editor/get-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/providers/default-block-editor-provider.js +0 -49
- package/build/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/get-block-editor-provider.js +0 -28
- package/build-module/components/block-editor/get-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/providers/default-block-editor-provider.js +0 -41
- package/build-module/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
- package/src/components/block-editor/get-block-editor-provider.js +0 -29
- package/src/components/block-editor/providers/default-block-editor-provider.js +0 -44
|
@@ -9,6 +9,11 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
9
9
|
* Internal dependencies
|
|
10
10
|
*/
|
|
11
11
|
import { unlock } from '../../lock-unlock';
|
|
12
|
+
import {
|
|
13
|
+
TEMPLATE_POST_TYPE,
|
|
14
|
+
TEMPLATE_PART_POST_TYPE,
|
|
15
|
+
PATTERN_TYPES,
|
|
16
|
+
} from '../../utils/constants';
|
|
12
17
|
|
|
13
18
|
const { useLocation, useHistory } = unlock( routerPrivateApis );
|
|
14
19
|
|
|
@@ -18,9 +23,9 @@ export function getPathFromURL( urlParams ) {
|
|
|
18
23
|
// Compute the navigator path based on the URL params.
|
|
19
24
|
if ( urlParams?.postType && urlParams?.postId ) {
|
|
20
25
|
switch ( urlParams.postType ) {
|
|
21
|
-
case
|
|
22
|
-
case
|
|
23
|
-
case
|
|
26
|
+
case PATTERN_TYPES.user:
|
|
27
|
+
case TEMPLATE_POST_TYPE:
|
|
28
|
+
case TEMPLATE_PART_POST_TYPE:
|
|
24
29
|
case 'page':
|
|
25
30
|
path = `/${ encodeURIComponent(
|
|
26
31
|
urlParams.postType
|
|
@@ -22,6 +22,7 @@ import { store as editSiteStore } from '../../store';
|
|
|
22
22
|
import isTemplateRemovable from '../../utils/is-template-removable';
|
|
23
23
|
import isTemplateRevertable from '../../utils/is-template-revertable';
|
|
24
24
|
import RenameMenuItem from './rename-menu-item';
|
|
25
|
+
import { TEMPLATE_POST_TYPE } from '../../utils/constants';
|
|
25
26
|
|
|
26
27
|
export default function TemplateActions( {
|
|
27
28
|
postType,
|
|
@@ -68,7 +69,7 @@ export default function TemplateActions( {
|
|
|
68
69
|
);
|
|
69
70
|
} catch ( error ) {
|
|
70
71
|
const fallbackErrorMessage =
|
|
71
|
-
template.type ===
|
|
72
|
+
template.type === TEMPLATE_POST_TYPE
|
|
72
73
|
? __( 'An error occurred while reverting the template.' )
|
|
73
74
|
: __(
|
|
74
75
|
'An error occurred while reverting the template part.'
|
|
@@ -16,6 +16,11 @@ import { store as coreStore } from '@wordpress/core-data';
|
|
|
16
16
|
import { store as noticesStore } from '@wordpress/notices';
|
|
17
17
|
import { decodeEntities } from '@wordpress/html-entities';
|
|
18
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Internal dependencies
|
|
21
|
+
*/
|
|
22
|
+
import { TEMPLATE_POST_TYPE } from '../../utils/constants';
|
|
23
|
+
|
|
19
24
|
export default function RenameMenuItem( { template, onClose } ) {
|
|
20
25
|
const title = decodeEntities( template.title.rendered );
|
|
21
26
|
const [ editedTitle, setEditedTitle ] = useState( title );
|
|
@@ -28,7 +33,7 @@ export default function RenameMenuItem( { template, onClose } ) {
|
|
|
28
33
|
const { createSuccessNotice, createErrorNotice } =
|
|
29
34
|
useDispatch( noticesStore );
|
|
30
35
|
|
|
31
|
-
if ( template.type ===
|
|
36
|
+
if ( template.type === TEMPLATE_POST_TYPE && ! template.is_custom ) {
|
|
32
37
|
return null;
|
|
33
38
|
}
|
|
34
39
|
|
|
@@ -57,7 +62,7 @@ export default function RenameMenuItem( { template, onClose } ) {
|
|
|
57
62
|
);
|
|
58
63
|
|
|
59
64
|
createSuccessNotice(
|
|
60
|
-
template.type ===
|
|
65
|
+
template.type === TEMPLATE_POST_TYPE
|
|
61
66
|
? __( 'Template renamed.' )
|
|
62
67
|
: __( 'Template part renamed.' ),
|
|
63
68
|
{
|
|
@@ -66,7 +71,7 @@ export default function RenameMenuItem( { template, onClose } ) {
|
|
|
66
71
|
);
|
|
67
72
|
} catch ( error ) {
|
|
68
73
|
const fallbackErrorMessage =
|
|
69
|
-
template.type ===
|
|
74
|
+
template.type === TEMPLATE_POST_TYPE
|
|
70
75
|
? __( 'An error occurred while renaming the template.' )
|
|
71
76
|
: __(
|
|
72
77
|
'An error occurred while renaming the template part.'
|
|
@@ -33,6 +33,7 @@ import isTemplateRevertable from '../../utils/is-template-revertable';
|
|
|
33
33
|
import { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';
|
|
34
34
|
import { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';
|
|
35
35
|
import { unlock } from '../../lock-unlock';
|
|
36
|
+
import { TEMPLATE_POST_TYPE } from '../../utils/constants';
|
|
36
37
|
|
|
37
38
|
const { useHistory } = unlock( routerPrivateApis );
|
|
38
39
|
|
|
@@ -131,7 +132,7 @@ function useManipulateDocumentCommands() {
|
|
|
131
132
|
|
|
132
133
|
if ( isTemplateRevertable( template ) && ! hasPageContentFocus ) {
|
|
133
134
|
const label =
|
|
134
|
-
template.type ===
|
|
135
|
+
template.type === TEMPLATE_POST_TYPE
|
|
135
136
|
? /* translators: %1$s: template title */
|
|
136
137
|
sprintf(
|
|
137
138
|
'Reset template: %s',
|
|
@@ -155,7 +156,7 @@ function useManipulateDocumentCommands() {
|
|
|
155
156
|
|
|
156
157
|
if ( isTemplateRemovable( template ) && ! hasPageContentFocus ) {
|
|
157
158
|
const label =
|
|
158
|
-
template.type ===
|
|
159
|
+
template.type === TEMPLATE_POST_TYPE
|
|
159
160
|
? /* translators: %1$s: template title */
|
|
160
161
|
sprintf(
|
|
161
162
|
'Delete template: %s',
|
|
@@ -167,7 +168,7 @@ function useManipulateDocumentCommands() {
|
|
|
167
168
|
decodeEntities( template.title )
|
|
168
169
|
);
|
|
169
170
|
const path =
|
|
170
|
-
template.type ===
|
|
171
|
+
template.type === TEMPLATE_POST_TYPE
|
|
171
172
|
? '/wp_template'
|
|
172
173
|
: '/wp_template_part/all';
|
|
173
174
|
commands.push( {
|
|
@@ -15,6 +15,7 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
15
15
|
*/
|
|
16
16
|
import { useLink } from '../components/routes/link';
|
|
17
17
|
import { unlock } from '../lock-unlock';
|
|
18
|
+
import { NAVIGATION_POST_TYPE } from '../utils/constants';
|
|
18
19
|
|
|
19
20
|
const { useLocation } = unlock( routerPrivateApis );
|
|
20
21
|
|
|
@@ -26,7 +27,7 @@ function NavigationMenuEdit( { attributes } ) {
|
|
|
26
27
|
( select ) => {
|
|
27
28
|
return select( coreStore ).getEntityRecord(
|
|
28
29
|
'postType',
|
|
29
|
-
|
|
30
|
+
NAVIGATION_POST_TYPE,
|
|
30
31
|
// Ideally this should be an official public API.
|
|
31
32
|
ref
|
|
32
33
|
);
|
|
@@ -15,6 +15,7 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
15
15
|
*/
|
|
16
16
|
import { useLink } from '../components/routes/link';
|
|
17
17
|
import { unlock } from '../lock-unlock';
|
|
18
|
+
import { TEMPLATE_PART_POST_TYPE } from '../utils/constants';
|
|
18
19
|
|
|
19
20
|
const { useLocation } = unlock( routerPrivateApis );
|
|
20
21
|
|
|
@@ -25,7 +26,7 @@ function EditTemplatePartMenuItem( { attributes } ) {
|
|
|
25
26
|
( select ) => {
|
|
26
27
|
return select( coreStore ).getEntityRecord(
|
|
27
28
|
'postType',
|
|
28
|
-
|
|
29
|
+
TEMPLATE_PART_POST_TYPE,
|
|
29
30
|
// Ideally this should be an official public API.
|
|
30
31
|
`${ theme }//${ slug }`
|
|
31
32
|
);
|
package/src/store/actions.js
CHANGED
|
@@ -19,7 +19,11 @@ import { decodeEntities } from '@wordpress/html-entities';
|
|
|
19
19
|
*/
|
|
20
20
|
import { STORE_NAME as editSiteStoreName } from './constants';
|
|
21
21
|
import isTemplateRevertable from '../utils/is-template-revertable';
|
|
22
|
-
|
|
22
|
+
import {
|
|
23
|
+
TEMPLATE_POST_TYPE,
|
|
24
|
+
TEMPLATE_PART_POST_TYPE,
|
|
25
|
+
NAVIGATION_POST_TYPE,
|
|
26
|
+
} from '../utils/constants';
|
|
23
27
|
/**
|
|
24
28
|
* Dispatches an action that toggles a feature flag.
|
|
25
29
|
*
|
|
@@ -67,14 +71,18 @@ export const setTemplate =
|
|
|
67
71
|
try {
|
|
68
72
|
const template = await registry
|
|
69
73
|
.resolveSelect( coreStore )
|
|
70
|
-
.getEntityRecord(
|
|
74
|
+
.getEntityRecord(
|
|
75
|
+
'postType',
|
|
76
|
+
TEMPLATE_POST_TYPE,
|
|
77
|
+
templateId
|
|
78
|
+
);
|
|
71
79
|
templateSlug = template?.slug;
|
|
72
80
|
} catch ( error ) {}
|
|
73
81
|
}
|
|
74
82
|
|
|
75
83
|
dispatch( {
|
|
76
84
|
type: 'SET_EDITED_POST',
|
|
77
|
-
postType:
|
|
85
|
+
postType: TEMPLATE_POST_TYPE,
|
|
78
86
|
id: templateId,
|
|
79
87
|
context: { templateSlug },
|
|
80
88
|
} );
|
|
@@ -92,14 +100,14 @@ export const addTemplate =
|
|
|
92
100
|
async ( { dispatch, registry } ) => {
|
|
93
101
|
const newTemplate = await registry
|
|
94
102
|
.dispatch( coreStore )
|
|
95
|
-
.saveEntityRecord( 'postType',
|
|
103
|
+
.saveEntityRecord( 'postType', TEMPLATE_POST_TYPE, template );
|
|
96
104
|
|
|
97
105
|
if ( template.content ) {
|
|
98
106
|
registry
|
|
99
107
|
.dispatch( coreStore )
|
|
100
108
|
.editEntityRecord(
|
|
101
109
|
'postType',
|
|
102
|
-
|
|
110
|
+
TEMPLATE_POST_TYPE,
|
|
103
111
|
newTemplate.id,
|
|
104
112
|
{ blocks: parse( template.content ) },
|
|
105
113
|
{ undoIgnore: true }
|
|
@@ -108,7 +116,7 @@ export const addTemplate =
|
|
|
108
116
|
|
|
109
117
|
dispatch( {
|
|
110
118
|
type: 'SET_EDITED_POST',
|
|
111
|
-
postType:
|
|
119
|
+
postType: TEMPLATE_POST_TYPE,
|
|
112
120
|
id: newTemplate.id,
|
|
113
121
|
context: { templateSlug: newTemplate.slug },
|
|
114
122
|
} );
|
|
@@ -178,7 +186,7 @@ export const removeTemplate =
|
|
|
178
186
|
export function setTemplatePart( templatePartId ) {
|
|
179
187
|
return {
|
|
180
188
|
type: 'SET_EDITED_POST',
|
|
181
|
-
postType:
|
|
189
|
+
postType: TEMPLATE_PART_POST_TYPE,
|
|
182
190
|
id: templatePartId,
|
|
183
191
|
};
|
|
184
192
|
}
|
|
@@ -193,7 +201,7 @@ export function setTemplatePart( templatePartId ) {
|
|
|
193
201
|
export function setNavigationMenu( navigationMenuId ) {
|
|
194
202
|
return {
|
|
195
203
|
type: 'SET_EDITED_POST',
|
|
196
|
-
postType:
|
|
204
|
+
postType: NAVIGATION_POST_TYPE,
|
|
197
205
|
id: navigationMenuId,
|
|
198
206
|
};
|
|
199
207
|
}
|
|
@@ -282,7 +290,7 @@ export const setPage =
|
|
|
282
290
|
const currentTemplate = (
|
|
283
291
|
await registry
|
|
284
292
|
.resolveSelect( coreStore )
|
|
285
|
-
.getEntityRecords( 'postType',
|
|
293
|
+
.getEntityRecords( 'postType', TEMPLATE_POST_TYPE, {
|
|
286
294
|
per_page: -1,
|
|
287
295
|
} )
|
|
288
296
|
)?.find( ( { slug } ) => slug === currentTemplateSlug );
|
|
@@ -305,7 +313,7 @@ export const setPage =
|
|
|
305
313
|
|
|
306
314
|
dispatch( {
|
|
307
315
|
type: 'SET_EDITED_POST',
|
|
308
|
-
postType:
|
|
316
|
+
postType: TEMPLATE_POST_TYPE,
|
|
309
317
|
id: template.id,
|
|
310
318
|
context: {
|
|
311
319
|
...page.context,
|
package/src/store/constants.js
CHANGED
|
@@ -4,8 +4,3 @@
|
|
|
4
4
|
* @type {string}
|
|
5
5
|
*/
|
|
6
6
|
export const STORE_NAME = 'core/edit-site';
|
|
7
|
-
|
|
8
|
-
export const TEMPLATE_PART_AREA_HEADER = 'header';
|
|
9
|
-
export const TEMPLATE_PART_AREA_FOOTER = 'footer';
|
|
10
|
-
export const TEMPLATE_PART_AREA_SIDEBAR = 'sidebar';
|
|
11
|
-
export const TEMPLATE_PART_AREA_GENERAL = 'uncategorized';
|
|
@@ -49,3 +49,22 @@ export const setEditorCanvasContainerView =
|
|
|
49
49
|
view,
|
|
50
50
|
} );
|
|
51
51
|
};
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Sets the type of page content focus. Can be one of:
|
|
55
|
+
*
|
|
56
|
+
* - `'disableTemplate'`: Disable the blocks belonging to the page's template.
|
|
57
|
+
* - `'hideTemplate'`: Hide the blocks belonging to the page's template.
|
|
58
|
+
*
|
|
59
|
+
* @param {'disableTemplate'|'hideTemplate'} pageContentFocusType The type of page content focus.
|
|
60
|
+
*
|
|
61
|
+
* @return {Object} Action object.
|
|
62
|
+
*/
|
|
63
|
+
export const setPageContentFocusType =
|
|
64
|
+
( pageContentFocusType ) =>
|
|
65
|
+
( { dispatch } ) => {
|
|
66
|
+
dispatch( {
|
|
67
|
+
type: 'SET_PAGE_CONTENT_FOCUS_TYPE',
|
|
68
|
+
pageContentFocusType,
|
|
69
|
+
} );
|
|
70
|
+
};
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { hasPageContentFocus } from './selectors';
|
|
5
|
+
|
|
1
6
|
/**
|
|
2
7
|
* Returns the current canvas mode.
|
|
3
8
|
*
|
|
@@ -19,3 +24,20 @@ export function getCanvasMode( state ) {
|
|
|
19
24
|
export function getEditorCanvasContainerView( state ) {
|
|
20
25
|
return state.editorCanvasContainerView;
|
|
21
26
|
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Returns the type of the current page content focus, or null if there is no
|
|
30
|
+
* page content focus.
|
|
31
|
+
*
|
|
32
|
+
* Possible values are:
|
|
33
|
+
*
|
|
34
|
+
* - `'disableTemplate'`: Disable the blocks belonging to the page's template.
|
|
35
|
+
* - `'hideTemplate'`: Hide the blocks belonging to the page's template.
|
|
36
|
+
*
|
|
37
|
+
* @param {Object} state Global application state.
|
|
38
|
+
*
|
|
39
|
+
* @return {'disableTemplate'|'hideTemplate'|null} Type of the current page content focus.
|
|
40
|
+
*/
|
|
41
|
+
export function getPageContentFocusType( state ) {
|
|
42
|
+
return hasPageContentFocus( state ) ? state.pageContentFocusType : null;
|
|
43
|
+
}
|
package/src/store/reducer.js
CHANGED
|
@@ -177,6 +177,23 @@ export function hasPageContentFocus( state = false, action ) {
|
|
|
177
177
|
return state;
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
+
/**
|
|
181
|
+
* Reducer used to track the type of page content focus.
|
|
182
|
+
*
|
|
183
|
+
* @param {string} state Current state.
|
|
184
|
+
* @param {Object} action Dispatched action.
|
|
185
|
+
*
|
|
186
|
+
* @return {string} Updated state.
|
|
187
|
+
*/
|
|
188
|
+
export function pageContentFocusType( state = 'disableTemplate', action ) {
|
|
189
|
+
switch ( action.type ) {
|
|
190
|
+
case 'SET_PAGE_CONTENT_FOCUS_TYPE':
|
|
191
|
+
return action.pageContentFocusType;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
return state;
|
|
195
|
+
}
|
|
196
|
+
|
|
180
197
|
export default combineReducers( {
|
|
181
198
|
deviceType,
|
|
182
199
|
settings,
|
|
@@ -187,4 +204,5 @@ export default combineReducers( {
|
|
|
187
204
|
canvasMode,
|
|
188
205
|
editorCanvasContainerView,
|
|
189
206
|
hasPageContentFocus,
|
|
207
|
+
pageContentFocusType,
|
|
190
208
|
} );
|
package/src/store/selectors.js
CHANGED
|
@@ -18,7 +18,10 @@ import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
|
18
18
|
* Internal dependencies
|
|
19
19
|
*/
|
|
20
20
|
import { getFilteredTemplatePartBlocks } from './utils';
|
|
21
|
-
|
|
21
|
+
import {
|
|
22
|
+
TEMPLATE_POST_TYPE,
|
|
23
|
+
TEMPLATE_PART_POST_TYPE,
|
|
24
|
+
} from '../utils/constants';
|
|
22
25
|
/**
|
|
23
26
|
* @typedef {'template'|'template_type'} TemplateType Template type.
|
|
24
27
|
*/
|
|
@@ -126,7 +129,7 @@ export const getSettings = createSelector(
|
|
|
126
129
|
__experimentalSetIsInserterOpened: setIsInserterOpen,
|
|
127
130
|
__experimentalReusableBlocks: getReusableBlocks( state ),
|
|
128
131
|
__experimentalPreferPatternsOnRoot:
|
|
129
|
-
|
|
132
|
+
TEMPLATE_POST_TYPE === getEditedPostType( state ),
|
|
130
133
|
};
|
|
131
134
|
|
|
132
135
|
const canUserCreateMedia = getCanUserCreateMedia( state );
|
|
@@ -300,7 +303,7 @@ export const getCurrentTemplateTemplateParts = createRegistrySelector(
|
|
|
300
303
|
|
|
301
304
|
const templateParts = select( coreDataStore ).getEntityRecords(
|
|
302
305
|
'postType',
|
|
303
|
-
|
|
306
|
+
TEMPLATE_PART_POST_TYPE,
|
|
304
307
|
{ per_page: -1 }
|
|
305
308
|
);
|
|
306
309
|
|
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
blockInserterPanel,
|
|
13
13
|
listViewPanel,
|
|
14
14
|
hasPageContentFocus,
|
|
15
|
+
pageContentFocusType,
|
|
15
16
|
} from '../reducer';
|
|
16
17
|
|
|
17
18
|
import { setIsInserterOpened } from '../actions';
|
|
@@ -191,4 +192,21 @@ describe( 'state', () => {
|
|
|
191
192
|
).toBe( false );
|
|
192
193
|
} );
|
|
193
194
|
} );
|
|
195
|
+
|
|
196
|
+
describe( 'pageContentFocusType', () => {
|
|
197
|
+
it( 'defaults to disableTemplate', () => {
|
|
198
|
+
expect( pageContentFocusType( undefined, {} ) ).toBe(
|
|
199
|
+
'disableTemplate'
|
|
200
|
+
);
|
|
201
|
+
} );
|
|
202
|
+
|
|
203
|
+
it( 'can be set', () => {
|
|
204
|
+
expect(
|
|
205
|
+
pageContentFocusType( 'disableTemplate', {
|
|
206
|
+
type: 'SET_PAGE_CONTENT_FOCUS_TYPE',
|
|
207
|
+
pageContentFocusType: 'enableTemplate',
|
|
208
|
+
} )
|
|
209
|
+
).toBe( 'enableTemplate' );
|
|
210
|
+
} );
|
|
211
|
+
} );
|
|
194
212
|
} );
|
package/src/utils/constants.js
CHANGED
|
@@ -15,12 +15,18 @@ export const NAVIGATION_POST_TYPE = 'wp_navigation';
|
|
|
15
15
|
// Templates.
|
|
16
16
|
export const TEMPLATE_POST_TYPE = 'wp_template';
|
|
17
17
|
export const TEMPLATE_PART_POST_TYPE = 'wp_template_part';
|
|
18
|
-
export const
|
|
18
|
+
export const TEMPLATE_ORIGINS = {
|
|
19
|
+
custom: 'custom',
|
|
20
|
+
theme: 'theme',
|
|
21
|
+
plugin: 'plugin',
|
|
22
|
+
};
|
|
23
|
+
export const TEMPLATE_PART_AREA_DEFAULT_CATEGORY = 'uncategorized';
|
|
19
24
|
|
|
20
25
|
// Patterns.
|
|
21
26
|
export const {
|
|
22
27
|
PATTERN_TYPES,
|
|
23
28
|
PATTERN_DEFAULT_CATEGORY,
|
|
29
|
+
PATTERN_USER_CATEGORY,
|
|
24
30
|
PATTERN_CORE_SOURCES,
|
|
25
31
|
PATTERN_SYNC_TYPES,
|
|
26
32
|
} = unlock( patternPrivateApis );
|
|
@@ -32,6 +38,16 @@ export const FOCUSABLE_ENTITIES = [
|
|
|
32
38
|
PATTERN_TYPES.user,
|
|
33
39
|
];
|
|
34
40
|
|
|
41
|
+
/**
|
|
42
|
+
* Block types that are considered to be page content. These are the only blocks
|
|
43
|
+
* editable when hasPageContentFocus() is true.
|
|
44
|
+
*/
|
|
45
|
+
export const PAGE_CONTENT_BLOCK_TYPES = {
|
|
46
|
+
'core/post-title': true,
|
|
47
|
+
'core/post-featured-image': true,
|
|
48
|
+
'core/post-content': true,
|
|
49
|
+
};
|
|
50
|
+
|
|
35
51
|
export const POST_TYPE_LABELS = {
|
|
36
52
|
[ TEMPLATE_POST_TYPE ]: __( 'Template' ),
|
|
37
53
|
[ TEMPLATE_PART_POST_TYPE ]: __( 'Template Part' ),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Internal dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { TEMPLATE_ORIGINS } from './constants';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Check if a template is removable.
|
|
@@ -15,6 +15,6 @@ export default function isTemplateRemovable( template ) {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return (
|
|
18
|
-
template.source ===
|
|
18
|
+
template.source === TEMPLATE_ORIGINS.custom && ! template.has_theme_file
|
|
19
19
|
);
|
|
20
20
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Internal dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { TEMPLATE_ORIGINS } from './constants';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Check if a template is revertable to its original theme-provided template file.
|
|
@@ -15,7 +15,7 @@ export default function isTemplateRevertable( template ) {
|
|
|
15
15
|
}
|
|
16
16
|
/* eslint-disable camelcase */
|
|
17
17
|
return (
|
|
18
|
-
template?.source ===
|
|
18
|
+
template?.source === TEMPLATE_ORIGINS.custom && template?.has_theme_file
|
|
19
19
|
);
|
|
20
20
|
/* eslint-enable camelcase */
|
|
21
21
|
}
|
|
@@ -9,12 +9,17 @@ import { paramCase as kebabCase } from 'change-case';
|
|
|
9
9
|
import { useSelect } from '@wordpress/data';
|
|
10
10
|
import { store as coreStore } from '@wordpress/core-data';
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Internal dependencies
|
|
14
|
+
*/
|
|
15
|
+
import { TEMPLATE_PART_POST_TYPE } from './constants';
|
|
16
|
+
|
|
12
17
|
export const useExistingTemplateParts = () => {
|
|
13
18
|
return useSelect(
|
|
14
19
|
( select ) =>
|
|
15
20
|
select( coreStore ).getEntityRecords(
|
|
16
21
|
'postType',
|
|
17
|
-
|
|
22
|
+
TEMPLATE_PART_POST_TYPE,
|
|
18
23
|
{
|
|
19
24
|
per_page: -1,
|
|
20
25
|
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.default = getBlockEditorProvider;
|
|
8
|
-
var _defaultBlockEditorProvider = _interopRequireDefault(require("./providers/default-block-editor-provider"));
|
|
9
|
-
var _navigationBlockEditorProvider = _interopRequireDefault(require("./providers/navigation-block-editor-provider"));
|
|
10
|
-
/**
|
|
11
|
-
* Internal dependencies
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Factory to isolate choosing the appropriate block editor
|
|
16
|
-
* component to handle a given entity type.
|
|
17
|
-
*
|
|
18
|
-
* @param {string} entityType the entity type being edited
|
|
19
|
-
* @return {JSX.Element} the block editor component to use.
|
|
20
|
-
*/
|
|
21
|
-
function getBlockEditorProvider(entityType) {
|
|
22
|
-
let Provider = null;
|
|
23
|
-
switch (entityType) {
|
|
24
|
-
case 'wp_navigation':
|
|
25
|
-
Provider = _navigationBlockEditorProvider.default;
|
|
26
|
-
break;
|
|
27
|
-
case 'wp_template':
|
|
28
|
-
case 'wp_template_part':
|
|
29
|
-
default:
|
|
30
|
-
Provider = _defaultBlockEditorProvider.default;
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
return Provider;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=get-block-editor-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_defaultBlockEditorProvider","_interopRequireDefault","require","_navigationBlockEditorProvider","getBlockEditorProvider","entityType","Provider","NavigationBlockEditor","DefaultBlockEditor"],"sources":["@wordpress/edit-site/src/components/block-editor/get-block-editor-provider.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport DefaultBlockEditor from './providers/default-block-editor-provider';\nimport NavigationBlockEditor from './providers/navigation-block-editor-provider';\n\n/**\n * Factory to isolate choosing the appropriate block editor\n * component to handle a given entity type.\n *\n * @param {string} entityType the entity type being edited\n * @return {JSX.Element} the block editor component to use.\n */\nexport default function getBlockEditorProvider( entityType ) {\n\tlet Provider = null;\n\n\tswitch ( entityType ) {\n\t\tcase 'wp_navigation':\n\t\t\tProvider = NavigationBlockEditor;\n\t\t\tbreak;\n\t\tcase 'wp_template':\n\t\tcase 'wp_template_part':\n\t\tdefault:\n\t\t\tProvider = DefaultBlockEditor;\n\t\t\tbreak;\n\t}\n\n\treturn Provider;\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,2BAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,8BAAA,GAAAF,sBAAA,CAAAC,OAAA;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASE,sBAAsBA,CAAEC,UAAU,EAAG;EAC5D,IAAIC,QAAQ,GAAG,IAAI;EAEnB,QAASD,UAAU;IAClB,KAAK,eAAe;MACnBC,QAAQ,GAAGC,sCAAqB;MAChC;IACD,KAAK,aAAa;IAClB,KAAK,kBAAkB;IACvB;MACCD,QAAQ,GAAGE,mCAAkB;MAC7B;EACF;EAEA,OAAOF,QAAQ;AAChB"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.default = DefaultBlockEditorProvider;
|
|
8
|
-
var _element = require("@wordpress/element");
|
|
9
|
-
var _coreData = require("@wordpress/core-data");
|
|
10
|
-
var _blockEditor = require("@wordpress/block-editor");
|
|
11
|
-
var _data = require("@wordpress/data");
|
|
12
|
-
var _store = require("../../../store");
|
|
13
|
-
var _lockUnlock = require("../../../lock-unlock");
|
|
14
|
-
var _useSiteEditorSettings = _interopRequireDefault(require("../use-site-editor-settings"));
|
|
15
|
-
/**
|
|
16
|
-
* WordPress dependencies
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Internal dependencies
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
const {
|
|
24
|
-
ExperimentalBlockEditorProvider
|
|
25
|
-
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
26
|
-
function DefaultBlockEditorProvider({
|
|
27
|
-
children
|
|
28
|
-
}) {
|
|
29
|
-
const settings = (0, _useSiteEditorSettings.default)();
|
|
30
|
-
const {
|
|
31
|
-
templateType
|
|
32
|
-
} = (0, _data.useSelect)(select => {
|
|
33
|
-
const {
|
|
34
|
-
getEditedPostType
|
|
35
|
-
} = (0, _lockUnlock.unlock)(select(_store.store));
|
|
36
|
-
return {
|
|
37
|
-
templateType: getEditedPostType()
|
|
38
|
-
};
|
|
39
|
-
}, []);
|
|
40
|
-
const [blocks, onInput, onChange] = (0, _coreData.useEntityBlockEditor)('postType', templateType);
|
|
41
|
-
return (0, _element.createElement)(ExperimentalBlockEditorProvider, {
|
|
42
|
-
settings: settings,
|
|
43
|
-
value: blocks,
|
|
44
|
-
onInput: onInput,
|
|
45
|
-
onChange: onChange,
|
|
46
|
-
useSubRegistry: false
|
|
47
|
-
}, children);
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=default-block-editor-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_coreData","require","_blockEditor","_data","_store","_lockUnlock","_useSiteEditorSettings","_interopRequireDefault","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","DefaultBlockEditorProvider","children","settings","useSiteEditorSettings","templateType","useSelect","select","getEditedPostType","editSiteStore","blocks","onInput","onChange","useEntityBlockEditor","_element","createElement","value","useSubRegistry"],"sources":["@wordpress/edit-site/src/components/block-editor/providers/default-block-editor-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../../store';\nimport { unlock } from '../../../lock-unlock';\nimport useSiteEditorSettings from '../use-site-editor-settings';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\n\nexport default function DefaultBlockEditorProvider( { children } ) {\n\tconst settings = useSiteEditorSettings();\n\n\tconst { templateType } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType } = unlock( select( editSiteStore ) );\n\n\t\treturn {\n\t\t\ttemplateType: getEditedPostType(),\n\t\t};\n\t}, [] );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\ttemplateType\n\t);\n\n\treturn (\n\t\t<ExperimentalBlockEditorProvider\n\t\t\tsettings={ settings }\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ onInput }\n\t\t\tonChange={ onChange }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAC,sBAAA,CAAAN,OAAA;AAZA;AACA;AACA;;AAKA;AACA;AACA;;AAKA,MAAM;EAAEO;AAAgC,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAE7D,SAASC,0BAA0BA,CAAE;EAAEC;AAAS,CAAC,EAAG;EAClE,MAAMC,QAAQ,GAAG,IAAAC,8BAAqB,EAAC,CAAC;EAExC,MAAM;IAAEC;EAAa,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACjD,MAAM;MAAEC;IAAkB,CAAC,GAAG,IAAAT,kBAAM,EAAEQ,MAAM,CAAEE,YAAc,CAAE,CAAC;IAE/D,OAAO;MACNJ,YAAY,EAAEG,iBAAiB,CAAC;IACjC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM,CAAEE,MAAM,EAAEC,OAAO,EAAEC,QAAQ,CAAE,GAAG,IAAAC,8BAAoB,EACzD,UAAU,EACVR,YACD,CAAC;EAED,OACC,IAAAS,QAAA,CAAAC,aAAA,EAACjB,+BAA+B;IAC/BK,QAAQ,EAAGA,QAAU;IACrBa,KAAK,EAAGN,MAAQ;IAChBC,OAAO,EAAGA,OAAS;IACnBC,QAAQ,EAAGA,QAAU;IACrBK,cAAc,EAAG;EAAO,GAEtBf,QAC8B,CAAC;AAEpC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_data","_coreData","_blockEditor","_blocks","_lockUnlock","_useSiteEditorSettings","_interopRequireDefault","_store","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","noop","NavigationBlockEditorProvider","children","defaultSettings","useSiteEditorSettings","navigationMenuId","useEntityId","blocks","useMemo","createBlock","ref","templateLock","isEditMode","useSelect","select","getCanvasMode","editSiteStore","selectBlock","setBlockEditingMode","unsetBlockEditingMode","useDispatch","blockEditorStore","navigationBlockClientId","clientId","settings","template","useEffect","createElement","value","onInput","onChange","useSubRegistry"],"sources":["@wordpress/edit-site/src/components/block-editor/providers/navigation-block-editor-provider.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMemo, useEffect } from '@wordpress/element';\nimport { useEntityId } from '@wordpress/core-data';\nimport {\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\nimport useSiteEditorSettings from '../use-site-editor-settings';\nimport { store as editSiteStore } from '../../../store';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\n\nconst noop = () => {};\n\n/**\n * Block editor component for editing navigation menus.\n *\n * Note: Navigation entities require a wrapping Navigation block to provide\n * them with some basic layout and styling. Therefore we create a \"ghost\" block\n * and provide it will a reference to the navigation entity ID being edited.\n *\n * In this scenario it is the **block** that handles syncing the entity content\n * whereas for other entities this is handled by entity block editor.\n *\n * @param {number} navigationMenuId the navigation menu ID\n * @return {[WPBlock[], Function, Function]} The block array and setters.\n */\nexport default function NavigationBlockEditorProvider( { children } ) {\n\tconst defaultSettings = useSiteEditorSettings();\n\n\tconst navigationMenuId = useEntityId( 'postType', 'wp_navigation' );\n\n\tconst blocks = useMemo( () => {\n\t\treturn [\n\t\t\tcreateBlock( 'core/navigation', {\n\t\t\t\tref: navigationMenuId,\n\t\t\t\t// As the parent editor is locked with `templateLock`, the template locking\n\t\t\t\t// must be explicitly \"unset\" on the block itself to allow the user to modify\n\t\t\t\t// the block's content.\n\t\t\t\ttemplateLock: false,\n\t\t\t} ),\n\t\t];\n\t}, [ navigationMenuId ] );\n\n\tconst { isEditMode } = useSelect( ( select ) => {\n\t\tconst { getCanvasMode } = unlock( select( editSiteStore ) );\n\n\t\treturn {\n\t\t\tisEditMode: getCanvasMode() === 'edit',\n\t\t};\n\t}, [] );\n\n\tconst { selectBlock, setBlockEditingMode, unsetBlockEditingMode } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst navigationBlockClientId = blocks && blocks[ 0 ]?.clientId;\n\n\tconst settings = useMemo( () => {\n\t\treturn {\n\t\t\t...defaultSettings,\n\t\t\t// Lock the editor to allow the root (\"ghost\") Navigation block only.\n\t\t\ttemplateLock: 'insert',\n\t\t\ttemplate: [ [ 'core/navigation', {}, [] ] ],\n\t\t};\n\t}, [ defaultSettings ] );\n\n\t// Auto-select the Navigation block when entering Navigation focus mode.\n\tuseEffect( () => {\n\t\tif ( navigationBlockClientId && isEditMode ) {\n\t\t\tselectBlock( navigationBlockClientId );\n\t\t}\n\t}, [ navigationBlockClientId, isEditMode, selectBlock ] );\n\n\t// Set block editing mode to contentOnly when entering Navigation focus mode.\n\t// This ensures that non-content controls on the block will be hidden and thus\n\t// the user can focus on editing the Navigation Menu content only.\n\tuseEffect( () => {\n\t\tif ( ! navigationBlockClientId ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetBlockEditingMode( navigationBlockClientId, 'contentOnly' );\n\n\t\treturn () => {\n\t\t\tunsetBlockEditingMode( navigationBlockClientId );\n\t\t};\n\t}, [\n\t\tnavigationBlockClientId,\n\t\tunsetBlockEditingMode,\n\t\tsetBlockEditingMode,\n\t] );\n\n\treturn (\n\t\t<ExperimentalBlockEditorProvider\n\t\t\tsettings={ settings }\n\t\t\tvalue={ blocks }\n\t\t\tonInput={ noop }\n\t\t\tonChange={ noop }\n\t\t\tuseSubRegistry={ false }\n\t\t>\n\t\t\t{ children }\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":";;;;;;;AAIA,IAAAA,QAAA,GAAAC,OAAA;AADA,IAAAC,KAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAIA,IAAAI,OAAA,GAAAJ,OAAA;AAKA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,sBAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AAjBA;AACA;AACA;;AAUA;AACA;AACA;;AAKA,MAAM;EAAES;AAAgC,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAE5E,MAAMC,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASC,6BAA6BA,CAAE;EAAEC;AAAS,CAAC,EAAG;EACrE,MAAMC,eAAe,GAAG,IAAAC,8BAAqB,EAAC,CAAC;EAE/C,MAAMC,gBAAgB,GAAG,IAAAC,qBAAW,EAAE,UAAU,EAAE,eAAgB,CAAC;EAEnE,MAAMC,MAAM,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC7B,OAAO,CACN,IAAAC,mBAAW,EAAE,iBAAiB,EAAE;MAC/BC,GAAG,EAAEL,gBAAgB;MACrB;MACA;MACA;MACAM,YAAY,EAAE;IACf,CAAE,CAAC,CACH;EACF,CAAC,EAAE,CAAEN,gBAAgB,CAAG,CAAC;EAEzB,MAAM;IAAEO;EAAW,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAC/C,MAAM;MAAEC;IAAc,CAAC,GAAG,IAAAjB,kBAAM,EAAEgB,MAAM,CAAEE,YAAc,CAAE,CAAC;IAE3D,OAAO;MACNJ,UAAU,EAAEG,aAAa,CAAC,CAAC,KAAK;IACjC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM;IAAEE,WAAW;IAAEC,mBAAmB;IAAEC;EAAsB,CAAC,GAChE,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EAEhC,MAAMC,uBAAuB,GAAGf,MAAM,IAAIA,MAAM,CAAE,CAAC,CAAE,EAAEgB,QAAQ;EAE/D,MAAMC,QAAQ,GAAG,IAAAhB,gBAAO,EAAE,MAAM;IAC/B,OAAO;MACN,GAAGL,eAAe;MAClB;MACAQ,YAAY,EAAE,QAAQ;MACtBc,QAAQ,EAAE,CAAE,CAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAE;IAC1C,CAAC;EACF,CAAC,EAAE,CAAEtB,eAAe,CAAG,CAAC;;EAExB;EACA,IAAAuB,kBAAS,EAAE,MAAM;IAChB,IAAKJ,uBAAuB,IAAIV,UAAU,EAAG;MAC5CK,WAAW,CAAEK,uBAAwB,CAAC;IACvC;EACD,CAAC,EAAE,CAAEA,uBAAuB,EAAEV,UAAU,EAAEK,WAAW,CAAG,CAAC;;EAEzD;EACA;EACA;EACA,IAAAS,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAEJ,uBAAuB,EAAG;MAChC;IACD;IAEAJ,mBAAmB,CAAEI,uBAAuB,EAAE,aAAc,CAAC;IAE7D,OAAO,MAAM;MACZH,qBAAqB,CAAEG,uBAAwB,CAAC;IACjD,CAAC;EACF,CAAC,EAAE,CACFA,uBAAuB,EACvBH,qBAAqB,EACrBD,mBAAmB,CAClB,CAAC;EAEH,OACC,IAAA/B,QAAA,CAAAwC,aAAA,EAAC9B,+BAA+B;IAC/B2B,QAAQ,EAAGA,QAAU;IACrBI,KAAK,EAAGrB,MAAQ;IAChBsB,OAAO,EAAG7B,IAAM;IAChB8B,QAAQ,EAAG9B,IAAM;IACjB+B,cAAc,EAAG;EAAO,GAEtB7B,QAC8B,CAAC;AAEpC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Internal dependencies
|
|
3
|
-
*/
|
|
4
|
-
import DefaultBlockEditor from './providers/default-block-editor-provider';
|
|
5
|
-
import NavigationBlockEditor from './providers/navigation-block-editor-provider';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Factory to isolate choosing the appropriate block editor
|
|
9
|
-
* component to handle a given entity type.
|
|
10
|
-
*
|
|
11
|
-
* @param {string} entityType the entity type being edited
|
|
12
|
-
* @return {JSX.Element} the block editor component to use.
|
|
13
|
-
*/
|
|
14
|
-
export default function getBlockEditorProvider(entityType) {
|
|
15
|
-
let Provider = null;
|
|
16
|
-
switch (entityType) {
|
|
17
|
-
case 'wp_navigation':
|
|
18
|
-
Provider = NavigationBlockEditor;
|
|
19
|
-
break;
|
|
20
|
-
case 'wp_template':
|
|
21
|
-
case 'wp_template_part':
|
|
22
|
-
default:
|
|
23
|
-
Provider = DefaultBlockEditor;
|
|
24
|
-
break;
|
|
25
|
-
}
|
|
26
|
-
return Provider;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=get-block-editor-provider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["DefaultBlockEditor","NavigationBlockEditor","getBlockEditorProvider","entityType","Provider"],"sources":["@wordpress/edit-site/src/components/block-editor/get-block-editor-provider.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport DefaultBlockEditor from './providers/default-block-editor-provider';\nimport NavigationBlockEditor from './providers/navigation-block-editor-provider';\n\n/**\n * Factory to isolate choosing the appropriate block editor\n * component to handle a given entity type.\n *\n * @param {string} entityType the entity type being edited\n * @return {JSX.Element} the block editor component to use.\n */\nexport default function getBlockEditorProvider( entityType ) {\n\tlet Provider = null;\n\n\tswitch ( entityType ) {\n\t\tcase 'wp_navigation':\n\t\t\tProvider = NavigationBlockEditor;\n\t\t\tbreak;\n\t\tcase 'wp_template':\n\t\tcase 'wp_template_part':\n\t\tdefault:\n\t\t\tProvider = DefaultBlockEditor;\n\t\t\tbreak;\n\t}\n\n\treturn Provider;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,kBAAkB,MAAM,2CAA2C;AAC1E,OAAOC,qBAAqB,MAAM,8CAA8C;;AAEhF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAASC,sBAAsBA,CAAEC,UAAU,EAAG;EAC5D,IAAIC,QAAQ,GAAG,IAAI;EAEnB,QAASD,UAAU;IAClB,KAAK,eAAe;MACnBC,QAAQ,GAAGH,qBAAqB;MAChC;IACD,KAAK,aAAa;IAClB,KAAK,kBAAkB;IACvB;MACCG,QAAQ,GAAGJ,kBAAkB;MAC7B;EACF;EAEA,OAAOI,QAAQ;AAChB"}
|