@wordpress/edit-site 5.18.1-next.5a1d1283.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/CHANGELOG.md +2 -0
- package/build/components/add-new-pattern/index.js +65 -4
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/add-new-template/index.js +3 -2
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/add-new-template/new-template.js +6 -1
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/add-new-template/utils.js +6 -1
- package/build/components/add-new-template/utils.js.map +1 -1
- package/build/components/app/index.js +2 -7
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/back-button.js +3 -2
- package/build/components/block-editor/back-button.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/editor-canvas.js +20 -16
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- 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 +2 -4
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +8 -4
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/canvas-loader/index.js +18 -1
- package/build/components/canvas-loader/index.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 +7 -9
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +5 -4
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/font-families.js +68 -0
- package/build/components/global-styles/font-families.js.map +1 -0
- package/build/components/global-styles/font-family-item.js +47 -0
- package/build/components/global-styles/font-family-item.js.map +1 -0
- 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/confirm-delete-dialog.js +31 -0
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build/components/global-styles/font-library-modal/context.js +309 -0
- package/build/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-card.js +61 -0
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -0
- 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 +86 -0
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-variant.js +51 -0
- package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js +54 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- 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 +65 -0
- package/build/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js +128 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js +39 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js +44 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js +59 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js +143 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/resolvers.js +53 -0
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js +45 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js +31 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- 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/get-intersecting-font-faces.js +58 -0
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/index.js +155 -0
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +22 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- 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/font-library-modal/utils/toggleFont.js +92 -0
- package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build/components/global-styles/global-styles-provider.js +7 -12
- package/build/components/global-styles/global-styles-provider.js.map +1 -1
- package/build/components/global-styles/screen-block.js +34 -21
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +1 -3
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +4 -72
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/style-variations-container.js +3 -5
- package/build/components/global-styles/style-variations-container.js.map +1 -1
- package/build/components/global-styles/typogrphy-elements.js +96 -0
- package/build/components/global-styles/typogrphy-elements.js.map +1 -0
- 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 +56 -20
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +48 -22
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/header.js +3 -7
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/index.js +3 -3
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/patterns-list.js +7 -7
- package/build/components/page-patterns/patterns-list.js.map +1 -1
- package/build/components/page-patterns/rename-menu-item.js +6 -5
- package/build/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build/components/page-patterns/search-items.js +8 -2
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +71 -51
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-patterns/utils.js +1 -20
- package/build/components/page-patterns/utils.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 +53 -26
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +65 -0
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +56 -0
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +91 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- 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/index.js +11 -9
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js +6 -4
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +218 -0
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build/components/sidebar-navigation-screen/index.js +6 -4
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-footer/index.js +32 -4
- package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -31
- package/build/components/sidebar-navigation-screen-global-styles/index.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/index.js +3 -3
- package/build/components/sidebar-navigation-screen-page/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 +20 -9
- 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 +41 -11
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +9 -37
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +44 -5
- 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-patterns/use-theme-patterns.js +2 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.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-template/index.js +2 -2
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates/index.js +5 -4
- 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 +8 -4
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-actions/rename-menu-item.js +9 -3
- package/build/components/template-actions/rename-menu-item.js.map +1 -1
- package/build/components/welcome-guide/styles.js +2 -2
- package/build/components/welcome-guide/styles.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/push-changes-to-global-styles/index.js +5 -37
- package/build/hooks/push-changes-to-global-styles/index.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 +38 -14
- 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 +64 -2
- package/build/utils/constants.js.map +1 -1
- package/build/utils/is-template-removable.js +6 -1
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +6 -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 +69 -8
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/add-new-template/index.js +3 -2
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +6 -1
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/add-new-template/utils.js +6 -1
- package/build-module/components/add-new-template/utils.js.map +1 -1
- package/build-module/components/app/index.js +2 -7
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/back-button.js +3 -2
- package/build-module/components/block-editor/back-button.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/editor-canvas.js +21 -17
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- 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 +5 -7
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +8 -4
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/canvas-loader/index.js +18 -1
- package/build-module/components/canvas-loader/index.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 +7 -9
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +5 -4
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +58 -0
- package/build-module/components/global-styles/font-families.js.map +1 -0
- package/build-module/components/global-styles/font-family-item.js +40 -0
- package/build-module/components/global-styles/font-family-item.js.map +1 -0
- 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/confirm-delete-dialog.js +23 -0
- package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/context.js +300 -0
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js +52 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -0
- 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 +79 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js +42 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js +47 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- 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 +57 -0
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +120 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +31 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js +35 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js +50 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js +135 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js +42 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js +37 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js +21 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- 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/get-intersecting-font-faces.js +52 -0
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js +141 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +16 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- 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/font-library-modal/utils/toggleFont.js +86 -0
- package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build-module/components/global-styles/global-styles-provider.js +7 -12
- package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +34 -21
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +1 -3
- package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +6 -74
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/style-variations-container.js +3 -5
- package/build-module/components/global-styles/style-variations-container.js.map +1 -1
- package/build-module/components/global-styles/typogrphy-elements.js +87 -0
- package/build-module/components/global-styles/typogrphy-elements.js.map +1 -0
- 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 +55 -20
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +49 -23
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/header.js +3 -7
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/index.js +3 -3
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/patterns-list.js +7 -7
- package/build-module/components/page-patterns/patterns-list.js.map +1 -1
- package/build-module/components/page-patterns/rename-menu-item.js +6 -5
- package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +8 -2
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +71 -52
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-patterns/utils.js +0 -11
- package/build-module/components/page-patterns/utils.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 +54 -29
- 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 +55 -0
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +49 -0
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +85 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- 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/index.js +12 -10
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +8 -6
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +209 -0
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen/index.js +6 -4
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js +32 -5
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -33
- package/build-module/components/sidebar-navigation-screen-global-styles/index.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/index.js +3 -3
- package/build-module/components/sidebar-navigation-screen-page/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 +21 -10
- 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 +41 -11
- 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 +12 -40
- 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 +44 -5
- 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-patterns/use-theme-patterns.js +3 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.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-template/index.js +2 -2
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js +5 -4
- 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 +8 -4
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-actions/rename-menu-item.js +9 -3
- package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
- package/build-module/components/welcome-guide/styles.js +2 -2
- package/build-module/components/welcome-guide/styles.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/push-changes-to-global-styles/index.js +5 -37
- package/build-module/hooks/push-changes-to-global-styles/index.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 +39 -16
- 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 +51 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/is-template-removable.js +6 -1
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +6 -1
- 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 +267 -37
- package/build-style/style.css +267 -37
- package/lib/inflate.js +4082 -0
- package/lib/lib-font.browser.js +3831 -0
- package/lib/unbrotli.js +2679 -0
- package/package.json +40 -40
- package/src/components/add-new-pattern/index.js +86 -8
- package/src/components/add-new-template/index.js +3 -2
- package/src/components/add-new-template/new-template.js +6 -1
- package/src/components/add-new-template/utils.js +12 -3
- package/src/components/app/index.js +9 -12
- package/src/components/block-editor/back-button.js +6 -2
- 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/editor-canvas.js +31 -19
- package/src/components/block-editor/index.js +1 -14
- package/src/components/block-editor/site-editor-canvas.js +7 -12
- package/src/components/block-editor/style.scss +88 -1
- package/src/components/block-editor/use-site-editor-settings.js +26 -19
- package/src/components/canvas-loader/index.js +12 -1
- package/src/components/canvas-loader/style.scss +1 -1
- package/src/components/create-template-part-modal/index.js +11 -12
- package/src/components/editor/index.js +9 -10
- package/src/components/global-styles/dimensions-panel.js +8 -4
- package/src/components/global-styles/font-families.js +71 -0
- package/src/components/global-styles/font-family-item.js +44 -0
- 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/confirm-delete-dialog.js +33 -0
- package/src/components/global-styles/font-library-modal/context.js +378 -0
- package/src/components/global-styles/font-library-modal/font-card.js +75 -0
- package/src/components/global-styles/font-library-modal/font-collection.js +257 -0
- package/src/components/global-styles/font-library-modal/font-demo.js +83 -0
- package/src/components/global-styles/font-library-modal/font-variant.js +53 -0
- package/src/components/global-styles/font-library-modal/fonts-grid.js +55 -0
- 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 +67 -0
- package/src/components/global-styles/font-library-modal/installed-fonts.js +174 -0
- package/src/components/global-styles/font-library-modal/library-font-card.js +33 -0
- package/src/components/global-styles/font-library-modal/library-font-details.js +45 -0
- package/src/components/global-styles/font-library-modal/library-font-variant.js +54 -0
- package/src/components/global-styles/font-library-modal/local-fonts.js +160 -0
- package/src/components/global-styles/font-library-modal/resolvers.js +45 -0
- package/src/components/global-styles/font-library-modal/style.scss +139 -0
- package/src/components/global-styles/font-library-modal/tab-layout.js +50 -0
- package/src/components/global-styles/font-library-modal/utils/constants.js +23 -0
- 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/get-intersecting-font-faces.js +58 -0
- package/src/components/global-styles/font-library-modal/utils/index.js +153 -0
- package/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +15 -0
- 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/getDisplaySrcFromFontFace.spec.js +53 -0
- package/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +30 -0
- package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +240 -0
- package/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +31 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +57 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +62 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +56 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +108 -0
- package/src/components/global-styles/font-library-modal/utils/test/preview-styles.spec.js +161 -0
- package/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +41 -0
- package/src/components/global-styles/font-library-modal/utils/test/sort-font-faces.js +74 -0
- package/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +141 -0
- package/src/components/global-styles/font-library-modal/utils/toggleFont.js +90 -0
- package/src/components/global-styles/global-styles-provider.js +2 -7
- package/src/components/global-styles/screen-block.js +42 -20
- package/src/components/global-styles/screen-revisions/index.js +0 -2
- package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/src/components/global-styles/screen-typography.js +9 -95
- package/src/components/global-styles/style-variations-container.js +0 -2
- package/src/components/global-styles/typogrphy-elements.js +110 -0
- 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/list/style.scss +2 -0
- package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -8
- package/src/components/page-patterns/duplicate-menu-item.js +67 -24
- package/src/components/page-patterns/grid-item.js +80 -33
- package/src/components/page-patterns/header.js +3 -12
- package/src/components/page-patterns/index.js +3 -3
- package/src/components/page-patterns/patterns-list.js +7 -7
- package/src/components/page-patterns/rename-menu-item.js +18 -7
- package/src/components/page-patterns/search-items.js +20 -2
- package/src/components/page-patterns/style.scss +1 -5
- package/src/components/page-patterns/use-patterns.js +217 -127
- package/src/components/page-patterns/utils.js +0 -19
- 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 +94 -52
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +88 -0
- package/src/components/sidebar-edit-mode/page-panels/index.js +0 -4
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
- package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +44 -0
- package/src/components/sidebar-edit-mode/page-panels/style.scss +46 -9
- package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +82 -0
- package/src/components/sidebar-edit-mode/settings-header/index.js +4 -7
- package/src/components/sidebar-edit-mode/template-panel/index.js +28 -24
- package/src/components/sidebar-edit-mode/template-panel/last-revision.js +19 -15
- package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +277 -0
- package/src/components/sidebar-navigation-screen/index.js +4 -9
- package/src/components/sidebar-navigation-screen/style.scss +7 -1
- package/src/components/sidebar-navigation-screen-details-footer/index.js +38 -10
- package/src/components/sidebar-navigation-screen-details-footer/style.scss +10 -3
- package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -0
- package/src/components/sidebar-navigation-screen-global-styles/index.js +6 -44
- 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-navigation-menus/style.scss +0 -4
- package/src/components/sidebar-navigation-screen-page/index.js +3 -3
- 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 +22 -8
- package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -3
- 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 +63 -20
- package/src/components/sidebar-navigation-screen-patterns/index.js +20 -51
- package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +61 -6
- package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +12 -2
- package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -5
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/src/components/sidebar-navigation-screen-template/index.js +2 -4
- package/src/components/sidebar-navigation-screen-templates/index.js +5 -4
- 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 +15 -8
- package/src/components/template-actions/rename-menu-item.js +21 -5
- package/src/components/welcome-guide/styles.js +2 -2
- package/src/hooks/commands/use-edit-mode-commands.js +4 -3
- package/src/hooks/navigation-menu-edit.js +2 -1
- package/src/hooks/push-changes-to-global-styles/index.js +6 -49
- package/src/hooks/template-part-edit.js +2 -1
- package/src/store/actions.js +56 -22
- 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/style.scss +1 -1
- package/src/utils/constants.js +54 -3
- package/src/utils/is-template-removable.js +8 -1
- package/src/utils/is-template-revertable.js +8 -1
- 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/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -30
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.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/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -23
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.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
- package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -12
- package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","useDispatch","__","sprintf","isRTL","trash","rotateLeft","rotateRight","layout","page","drawerLeft","drawerRight","blockDefault","code","keyboard","listView","useCommandLoader","decodeEntities","privateApis","routerPrivateApis","store","preferencesStore","interfaceStore","noticesStore","editSiteStore","useEditedEntityRecord","isTemplateRemovable","isTemplateRevertable","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","PREFERENCES_MODAL_NAME","unlock","useHistory","usePageContentFocusCommands","record","template","isPage","canvasMode","hasPageContentFocus","select","getCanvasMode","setHasPageContentFocus","isLoading","commands","push","name","label","title","icon","callback","close","useEditorModeCommands","switchEditorMode","editorMode","getEditorMode","useManipulateDocumentCommands","isLoaded","removeTemplate","revertTemplate","history","type","path","useEditUICommands","openGeneralSidebar","closeGeneralSidebar","toggleDistractionFree","setIsListViewOpened","activeSidebar","showBlockBreadcrumbs","isListViewOpen","isDistractionFree","isListViewOpened","getActiveComplementaryArea","get","openModal","toggle","createInfoNotice","id","useEditModeCommands","hook","context"],"sources":["@wordpress/edit-site/src/hooks/commands/use-edit-mode-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\ttrash,\n\trotateLeft,\n\trotateRight,\n\tlayout,\n\tpage,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tcode,\n\tkeyboard,\n\tlistView,\n} from '@wordpress/icons';\nimport { useCommandLoader } from '@wordpress/commands';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport useEditedEntityRecord from '../../components/use-edited-entity-record';\nimport isTemplateRemovable from '../../utils/is-template-removable';\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction usePageContentFocusCommands() {\n\tconst { record: template } = useEditedEntityRecord();\n\tconst { isPage, canvasMode, hasPageContentFocus } = useSelect(\n\t\t( select ) => ( {\n\t\t\tisPage: select( editSiteStore ).isPage(),\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\thasPageContentFocus: select( editSiteStore ).hasPageContentFocus(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tif ( ! isPage || canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( hasPageContentFocus ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-template-focus',\n\t\t\t/* translators: %1$s: template title */\n\t\t\tlabel: sprintf(\n\t\t\t\t'Edit template: %s',\n\t\t\t\tdecodeEntities( template.title )\n\t\t\t),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( false );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t} else {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-page-focus',\n\t\t\tlabel: __( 'Back to page' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( true );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useEditorModeCommands() {\n\tconst { switchEditorMode } = useDispatch( editSiteStore );\n\tconst { canvasMode, editorMode } = useSelect(\n\t\t( select ) => ( {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: select( editSiteStore ).getEditorMode(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tif ( canvasMode !== 'edit' || editorMode !== 'text' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( editorMode === 'text' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/exit-code-editor',\n\t\t\tlabel: __( 'Exit code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'visual' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useManipulateDocumentCommands() {\n\tconst { isLoaded, record: template } = useEditedEntityRecord();\n\tconst { removeTemplate, revertTemplate } = useDispatch( editSiteStore );\n\tconst history = useHistory();\n\tconst hasPageContentFocus = useSelect(\n\t\t( select ) => select( editSiteStore ).hasPageContentFocus(),\n\t\t[]\n\t);\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( isTemplateRevertable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === 'wp_template'\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tcommands.push( {\n\t\t\tname: 'core/reset-template',\n\t\t\tlabel,\n\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\trevertTemplate( template );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( isTemplateRemovable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === 'wp_template'\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tconst path =\n\t\t\ttemplate.type === 'wp_template'\n\t\t\t\t? '/wp_template'\n\t\t\t\t: '/wp_template_part/all';\n\t\tcommands.push( {\n\t\t\tname: 'core/remove-template',\n\t\t\tlabel,\n\t\t\ticon: trash,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tremoveTemplate( template );\n\t\t\t\t// Navigate to the template list\n\t\t\t\thistory.push( {\n\t\t\t\t\tpath,\n\t\t\t\t} );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn {\n\t\tisLoading: ! isLoaded,\n\t\tcommands,\n\t};\n}\n\nfunction useEditUICommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleDistractionFree,\n\t\tsetIsListViewOpened,\n\t\tswitchEditorMode,\n\t} = useDispatch( editSiteStore );\n\tconst {\n\t\tcanvasMode,\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tshowBlockBreadcrumbs,\n\t\tisListViewOpen,\n\t\tisDistractionFree,\n\t} = useSelect( ( select ) => {\n\t\tconst { isListViewOpened, getEditorMode } = select( editSiteStore );\n\t\treturn {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisDistractionFree: select( preferencesStore ).get(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\n\tif ( canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tcommands.push( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/template' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/template' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/block-inspector' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/block-inspector' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggleDistractionFree();\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'fixedToolbar' );\n\t\t\tif ( isDistractionFree ) {\n\t\t\t\ttoggleDistractionFree();\n\t\t\t}\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tif ( editorMode === 'visual' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/toggle-code-editor',\n\t\t\tlabel: __( 'Open code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'text' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tcommands.push( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-site/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nexport function useEditModeCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/exit-code-editor',\n\t\thook: useEditorModeCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/page-content-focus',\n\t\thook: usePageContentFocusCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/manipulate-document',\n\t\thook: useManipulateDocumentCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/edit-ui',\n\t\thook: useEditUICommands,\n\t} );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useSelect","useDispatch","__","sprintf","isRTL","trash","rotateLeft","rotateRight","layout","page","drawerLeft","drawerRight","blockDefault","code","keyboard","listView","useCommandLoader","decodeEntities","privateApis","routerPrivateApis","store","preferencesStore","interfaceStore","noticesStore","editSiteStore","useEditedEntityRecord","isTemplateRemovable","isTemplateRevertable","KEYBOARD_SHORTCUT_HELP_MODAL_NAME","PREFERENCES_MODAL_NAME","unlock","TEMPLATE_POST_TYPE","useHistory","usePageContentFocusCommands","record","template","isPage","canvasMode","hasPageContentFocus","select","getCanvasMode","setHasPageContentFocus","isLoading","commands","push","name","label","title","icon","callback","close","useEditorModeCommands","switchEditorMode","editorMode","getEditorMode","useManipulateDocumentCommands","isLoaded","removeTemplate","revertTemplate","history","type","path","useEditUICommands","openGeneralSidebar","closeGeneralSidebar","toggleDistractionFree","setIsListViewOpened","activeSidebar","showBlockBreadcrumbs","isListViewOpen","isDistractionFree","isListViewOpened","getActiveComplementaryArea","get","openModal","toggle","createInfoNotice","id","useEditModeCommands","hook","context"],"sources":["@wordpress/edit-site/src/hooks/commands/use-edit-mode-commands.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport {\n\ttrash,\n\trotateLeft,\n\trotateRight,\n\tlayout,\n\tpage,\n\tdrawerLeft,\n\tdrawerRight,\n\tblockDefault,\n\tcode,\n\tkeyboard,\n\tlistView,\n} from '@wordpress/icons';\nimport { useCommandLoader } from '@wordpress/commands';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport useEditedEntityRecord from '../../components/use-edited-entity-record';\nimport isTemplateRemovable from '../../utils/is-template-removable';\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';\nimport { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';\nimport { unlock } from '../../lock-unlock';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nfunction usePageContentFocusCommands() {\n\tconst { record: template } = useEditedEntityRecord();\n\tconst { isPage, canvasMode, hasPageContentFocus } = useSelect(\n\t\t( select ) => ( {\n\t\t\tisPage: select( editSiteStore ).isPage(),\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\thasPageContentFocus: select( editSiteStore ).hasPageContentFocus(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setHasPageContentFocus } = useDispatch( editSiteStore );\n\n\tif ( ! isPage || canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( hasPageContentFocus ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-template-focus',\n\t\t\t/* translators: %1$s: template title */\n\t\t\tlabel: sprintf(\n\t\t\t\t'Edit template: %s',\n\t\t\t\tdecodeEntities( template.title )\n\t\t\t),\n\t\t\ticon: layout,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( false );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t} else {\n\t\tcommands.push( {\n\t\t\tname: 'core/switch-to-page-focus',\n\t\t\tlabel: __( 'Back to page' ),\n\t\t\ticon: page,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tsetHasPageContentFocus( true );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useEditorModeCommands() {\n\tconst { switchEditorMode } = useDispatch( editSiteStore );\n\tconst { canvasMode, editorMode } = useSelect(\n\t\t( select ) => ( {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: select( editSiteStore ).getEditorMode(),\n\t\t} ),\n\t\t[]\n\t);\n\n\tif ( canvasMode !== 'edit' || editorMode !== 'text' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( editorMode === 'text' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/exit-code-editor',\n\t\t\tlabel: __( 'Exit code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'visual' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn { isLoading: false, commands };\n}\n\nfunction useManipulateDocumentCommands() {\n\tconst { isLoaded, record: template } = useEditedEntityRecord();\n\tconst { removeTemplate, revertTemplate } = useDispatch( editSiteStore );\n\tconst history = useHistory();\n\tconst hasPageContentFocus = useSelect(\n\t\t( select ) => select( editSiteStore ).hasPageContentFocus(),\n\t\t[]\n\t);\n\n\tif ( ! isLoaded ) {\n\t\treturn { isLoading: true, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tif ( isTemplateRevertable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Reset template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tcommands.push( {\n\t\t\tname: 'core/reset-template',\n\t\t\tlabel,\n\t\t\ticon: isRTL() ? rotateRight : rotateLeft,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\trevertTemplate( template );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( isTemplateRemovable( template ) && ! hasPageContentFocus ) {\n\t\tconst label =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? /* translators: %1$s: template title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t )\n\t\t\t\t: /* translators: %1$s: template part title */\n\t\t\t\t sprintf(\n\t\t\t\t\t\t'Delete template part: %s',\n\t\t\t\t\t\tdecodeEntities( template.title )\n\t\t\t\t );\n\t\tconst path =\n\t\t\ttemplate.type === TEMPLATE_POST_TYPE\n\t\t\t\t? '/wp_template'\n\t\t\t\t: '/wp_template_part/all';\n\t\tcommands.push( {\n\t\t\tname: 'core/remove-template',\n\t\t\tlabel,\n\t\t\ticon: trash,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tremoveTemplate( template );\n\t\t\t\t// Navigate to the template list\n\t\t\t\thistory.push( {\n\t\t\t\t\tpath,\n\t\t\t\t} );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn {\n\t\tisLoading: ! isLoaded,\n\t\tcommands,\n\t};\n}\n\nfunction useEditUICommands() {\n\tconst {\n\t\topenGeneralSidebar,\n\t\tcloseGeneralSidebar,\n\t\ttoggleDistractionFree,\n\t\tsetIsListViewOpened,\n\t\tswitchEditorMode,\n\t} = useDispatch( editSiteStore );\n\tconst {\n\t\tcanvasMode,\n\t\teditorMode,\n\t\tactiveSidebar,\n\t\tshowBlockBreadcrumbs,\n\t\tisListViewOpen,\n\t\tisDistractionFree,\n\t} = useSelect( ( select ) => {\n\t\tconst { isListViewOpened, getEditorMode } = select( editSiteStore );\n\t\treturn {\n\t\t\tcanvasMode: unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tactiveSidebar: select( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisDistractionFree: select( preferencesStore ).get(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst { openModal } = useDispatch( interfaceStore );\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { createInfoNotice } = useDispatch( noticesStore );\n\n\tif ( canvasMode !== 'edit' ) {\n\t\treturn { isLoading: false, commands: [] };\n\t}\n\n\tconst commands = [];\n\n\tcommands.push( {\n\t\tname: 'core/open-settings-sidebar',\n\t\tlabel: __( 'Toggle settings sidebar' ),\n\t\ticon: isRTL() ? drawerLeft : drawerRight,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/template' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/template' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-block-inspector',\n\t\tlabel: __( 'Toggle block inspector' ),\n\t\ticon: blockDefault,\n\t\tcallback: ( { close } ) => {\n\t\t\tclose();\n\t\t\tif ( activeSidebar === 'edit-site/block-inspector' ) {\n\t\t\t\tcloseGeneralSidebar();\n\t\t\t} else {\n\t\t\t\topenGeneralSidebar( 'edit-site/block-inspector' );\n\t\t\t}\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-spotlight-mode',\n\t\tlabel: __( 'Toggle spotlight mode' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'focusMode' );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-distraction-free',\n\t\tlabel: __( 'Toggle distraction free' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggleDistractionFree();\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-top-toolbar',\n\t\tlabel: __( 'Toggle top toolbar' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'fixedToolbar' );\n\t\t\tif ( isDistractionFree ) {\n\t\t\t\ttoggleDistractionFree();\n\t\t\t}\n\t\t\tclose();\n\t\t},\n\t} );\n\n\tif ( editorMode === 'visual' ) {\n\t\tcommands.push( {\n\t\t\tname: 'core/toggle-code-editor',\n\t\t\tlabel: __( 'Open code editor' ),\n\t\t\ticon: code,\n\t\t\tcallback: ( { close } ) => {\n\t\t\t\tswitchEditorMode( 'text' );\n\t\t\t\tclose();\n\t\t\t},\n\t\t} );\n\t}\n\n\tcommands.push( {\n\t\tname: 'core/open-preferences',\n\t\tlabel: __( 'Editor preferences' ),\n\t\tcallback: () => {\n\t\t\topenModal( PREFERENCES_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/open-shortcut-help',\n\t\tlabel: __( 'Keyboard shortcuts' ),\n\t\ticon: keyboard,\n\t\tcallback: () => {\n\t\t\topenModal( KEYBOARD_SHORTCUT_HELP_MODAL_NAME );\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-breadcrumbs',\n\t\tlabel: showBlockBreadcrumbs\n\t\t\t? __( 'Hide block breadcrumbs' )\n\t\t\t: __( 'Show block breadcrumbs' ),\n\t\tcallback: ( { close } ) => {\n\t\t\ttoggle( 'core/edit-site', 'showBlockBreadcrumbs' );\n\t\t\tclose();\n\t\t\tcreateInfoNotice(\n\t\t\t\tshowBlockBreadcrumbs\n\t\t\t\t\t? __( 'Breadcrumbs hidden.' )\n\t\t\t\t\t: __( 'Breadcrumbs visible.' ),\n\t\t\t\t{\n\t\t\t\t\tid: 'core/edit-site/toggle-breadcrumbs/notice',\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t} );\n\n\tcommands.push( {\n\t\tname: 'core/toggle-list-view',\n\t\tlabel: __( 'Toggle list view' ),\n\t\ticon: listView,\n\t\tcallback: ( { close } ) => {\n\t\t\tsetIsListViewOpened( ! isListViewOpen );\n\t\t\tclose();\n\t\t},\n\t} );\n\n\treturn {\n\t\tisLoading: false,\n\t\tcommands,\n\t};\n}\n\nexport function useEditModeCommands() {\n\tuseCommandLoader( {\n\t\tname: 'core/exit-code-editor',\n\t\thook: useEditorModeCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/page-content-focus',\n\t\thook: usePageContentFocusCommands,\n\t\tcontext: 'site-editor-edit',\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/manipulate-document',\n\t\thook: useManipulateDocumentCommands,\n\t} );\n\n\tuseCommandLoader( {\n\t\tname: 'core/edit-site/edit-ui',\n\t\thook: useEditUICommands,\n\t} );\n}\n"],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
16
16
|
*/
|
|
17
17
|
import { useLink } from '../components/routes/link';
|
|
18
18
|
import { unlock } from '../lock-unlock';
|
|
19
|
+
import { NAVIGATION_POST_TYPE } from '../utils/constants';
|
|
19
20
|
const {
|
|
20
21
|
useLocation
|
|
21
22
|
} = unlock(routerPrivateApis);
|
|
@@ -30,7 +31,7 @@ function NavigationMenuEdit({
|
|
|
30
31
|
} = useLocation();
|
|
31
32
|
const blockEditingMode = useBlockEditingMode();
|
|
32
33
|
const navigationMenu = useSelect(select => {
|
|
33
|
-
return select(coreStore).getEntityRecord('postType',
|
|
34
|
+
return select(coreStore).getEntityRecord('postType', NAVIGATION_POST_TYPE,
|
|
34
35
|
// Ideally this should be an official public API.
|
|
35
36
|
ref);
|
|
36
37
|
}, [ref]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useSelect","BlockControls","useBlockEditingMode","store","coreStore","ToolbarButton","addFilter","createHigherOrderComponent","privateApis","routerPrivateApis","useLink","unlock","useLocation","NavigationMenuEdit","attributes","ref","params","blockEditingMode","navigationMenu","select","getEntityRecord","linkProps","postId","id","postType","type","canvas","fromTemplateId","createElement","group","onClick","event","withEditBlockControls","BlockEdit","props","name","isDisplayed","Fragment"],"sources":["@wordpress/edit-site/src/hooks/navigation-menu-edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { BlockControls, useBlockEditingMode } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ToolbarButton } from '@wordpress/components';\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { useLink } from '../components/routes/link';\nimport { unlock } from '../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction NavigationMenuEdit( { attributes } ) {\n\tconst { ref } = attributes;\n\tconst { params } = useLocation();\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst navigationMenu = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\
|
|
1
|
+
{"version":3,"names":["__","useSelect","BlockControls","useBlockEditingMode","store","coreStore","ToolbarButton","addFilter","createHigherOrderComponent","privateApis","routerPrivateApis","useLink","unlock","NAVIGATION_POST_TYPE","useLocation","NavigationMenuEdit","attributes","ref","params","blockEditingMode","navigationMenu","select","getEntityRecord","linkProps","postId","id","postType","type","canvas","fromTemplateId","createElement","group","onClick","event","withEditBlockControls","BlockEdit","props","name","isDisplayed","Fragment"],"sources":["@wordpress/edit-site/src/hooks/navigation-menu-edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { BlockControls, useBlockEditingMode } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ToolbarButton } from '@wordpress/components';\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { useLink } from '../components/routes/link';\nimport { unlock } from '../lock-unlock';\nimport { NAVIGATION_POST_TYPE } from '../utils/constants';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction NavigationMenuEdit( { attributes } ) {\n\tconst { ref } = attributes;\n\tconst { params } = useLocation();\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst navigationMenu = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tNAVIGATION_POST_TYPE,\n\t\t\t\t// Ideally this should be an official public API.\n\t\t\t\tref\n\t\t\t);\n\t\t},\n\t\t[ ref ]\n\t);\n\n\tconst linkProps = useLink(\n\t\t{\n\t\t\tpostId: navigationMenu?.id,\n\t\t\tpostType: navigationMenu?.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t\t{\n\t\t\t// this applies to Navigation Menus as well.\n\t\t\tfromTemplateId: params.postId,\n\t\t}\n\t);\n\n\t// A non-default setting for block editing mode indicates that the\n\t// editor should restrict \"editing\" actions. Therefore the `Edit` button\n\t// should not be displayed.\n\tif ( ! navigationMenu || blockEditingMode !== 'default' ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\t{ ...linkProps }\n\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\tlinkProps.onClick( event );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Edit' ) }\n\t\t\t</ToolbarButton>\n\t\t</BlockControls>\n\t);\n}\n\nexport const withEditBlockControls = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst { attributes, name } = props;\n\t\tconst isDisplayed = name === 'core/navigation' && attributes.ref;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ isDisplayed && (\n\t\t\t\t\t<NavigationMenuEdit attributes={ attributes } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t},\n\t'withEditBlockControls'\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/navigation-edit-button',\n\twithEditBlockControls\n);\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,aAAa,EAAEC,mBAAmB,QAAQ,yBAAyB;AAC5E,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,SAAS,QAAQ,kBAAkB;AAC5C,SAASC,0BAA0B,QAAQ,oBAAoB;AAC/D,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,SAASC,OAAO,QAAQ,2BAA2B;AACnD,SAASC,MAAM,QAAQ,gBAAgB;AACvC,SAASC,oBAAoB,QAAQ,oBAAoB;AAEzD,MAAM;EAAEC;AAAY,CAAC,GAAGF,MAAM,CAAEF,iBAAkB,CAAC;AAEnD,SAASK,kBAAkBA,CAAE;EAAEC;AAAW,CAAC,EAAG;EAC7C,MAAM;IAAEC;EAAI,CAAC,GAAGD,UAAU;EAC1B,MAAM;IAAEE;EAAO,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAChC,MAAMK,gBAAgB,GAAGhB,mBAAmB,CAAC,CAAC;EAC9C,MAAMiB,cAAc,GAAGnB,SAAS,CAC7BoB,MAAM,IAAM;IACb,OAAOA,MAAM,CAAEhB,SAAU,CAAC,CAACiB,eAAe,CACzC,UAAU,EACVT,oBAAoB;IACpB;IACAI,GACD,CAAC;EACF,CAAC,EACD,CAAEA,GAAG,CACN,CAAC;EAED,MAAMM,SAAS,GAAGZ,OAAO,CACxB;IACCa,MAAM,EAAEJ,cAAc,EAAEK,EAAE;IAC1BC,QAAQ,EAAEN,cAAc,EAAEO,IAAI;IAC9BC,MAAM,EAAE;EACT,CAAC,EACD;IACC;IACAC,cAAc,EAAEX,MAAM,CAACM;EACxB,CACD,CAAC;;EAED;EACA;EACA;EACA,IAAK,CAAEJ,cAAc,IAAID,gBAAgB,KAAK,SAAS,EAAG;IACzD,OAAO,IAAI;EACZ;EAEA,OACCW,aAAA,CAAC5B,aAAa;IAAC6B,KAAK,EAAC;EAAO,GAC3BD,aAAA,CAACxB,aAAa;IAAA,GACRiB,SAAS;IACdS,OAAO,EAAKC,KAAK,IAAM;MACtBV,SAAS,CAACS,OAAO,CAAEC,KAAM,CAAC;IAC3B;EAAG,GAEDjC,EAAE,CAAE,MAAO,CACC,CACD,CAAC;AAElB;AAEA,OAAO,MAAMkC,qBAAqB,GAAG1B,0BAA0B,CAC5D2B,SAAS,IAAQC,KAAK,IAAM;EAC7B,MAAM;IAAEpB,UAAU;IAAEqB;EAAK,CAAC,GAAGD,KAAK;EAClC,MAAME,WAAW,GAAGD,IAAI,KAAK,iBAAiB,IAAIrB,UAAU,CAACC,GAAG;EAEhE,OACCa,aAAA,CAAAS,QAAA,QACCT,aAAA,CAACK,SAAS;IAAA,GAAMC;EAAK,CAAI,CAAC,EACxBE,WAAW,IACZR,aAAA,CAACf,kBAAkB;IAACC,UAAU,EAAGA;EAAY,CAAE,CAE/C,CAAC;AAEL,CAAC,EACD,uBACD,CAAC;AAEDT,SAAS,CACR,kBAAkB,EAClB,uCAAuC,EACvC2B,qBACD,CAAC"}
|
|
@@ -19,9 +19,7 @@ import { useSupportedStyles } from '../../components/global-styles/hooks';
|
|
|
19
19
|
import { unlock } from '../../lock-unlock';
|
|
20
20
|
const {
|
|
21
21
|
cleanEmptyObject,
|
|
22
|
-
GlobalStylesContext
|
|
23
|
-
__experimentalUseGlobalBehaviors: useGlobalBehaviors,
|
|
24
|
-
__experimentalUseHasBehaviorsPanel: useHasBehaviorsPanel
|
|
22
|
+
GlobalStylesContext
|
|
25
23
|
} = unlock(blockEditorPrivateApis);
|
|
26
24
|
|
|
27
25
|
// Block Gap is a special case and isn't defined within the blocks
|
|
@@ -263,9 +261,6 @@ function PushChangesToGlobalStylesControl({
|
|
|
263
261
|
attributes,
|
|
264
262
|
setAttributes
|
|
265
263
|
}) {
|
|
266
|
-
const hasBehaviorsPanel = useHasBehaviorsPanel(attributes, name, {
|
|
267
|
-
blockSupportOnly: true
|
|
268
|
-
});
|
|
269
264
|
const {
|
|
270
265
|
user: userConfig,
|
|
271
266
|
setUserConfig
|
|
@@ -277,13 +272,8 @@ function PushChangesToGlobalStylesControl({
|
|
|
277
272
|
const {
|
|
278
273
|
createSuccessNotice
|
|
279
274
|
} = useDispatch(noticesStore);
|
|
280
|
-
const {
|
|
281
|
-
inheritedBehaviors,
|
|
282
|
-
setBehavior
|
|
283
|
-
} = useGlobalBehaviors(name);
|
|
284
|
-
const userHasEditedBehaviors = attributes.hasOwnProperty('behaviors') && hasBehaviorsPanel;
|
|
285
275
|
const pushChanges = useCallback(() => {
|
|
286
|
-
if (changes.length === 0
|
|
276
|
+
if (changes.length === 0) {
|
|
287
277
|
return;
|
|
288
278
|
}
|
|
289
279
|
if (changes.length > 0) {
|
|
@@ -334,37 +324,15 @@ function PushChangesToGlobalStylesControl({
|
|
|
334
324
|
}]
|
|
335
325
|
});
|
|
336
326
|
}
|
|
337
|
-
|
|
338
|
-
__unstableMarkNextChangeAsNotPersistent();
|
|
339
|
-
setAttributes({
|
|
340
|
-
behaviors: undefined
|
|
341
|
-
});
|
|
342
|
-
setBehavior(attributes.behaviors);
|
|
343
|
-
createSuccessNotice(sprintf(
|
|
344
|
-
// translators: %s: Title of the block e.g. 'Heading'.
|
|
345
|
-
__('%s behaviors applied.'), getBlockType(name).title), {
|
|
346
|
-
type: 'snackbar',
|
|
347
|
-
actions: [{
|
|
348
|
-
label: __('Undo'),
|
|
349
|
-
onClick() {
|
|
350
|
-
__unstableMarkNextChangeAsNotPersistent();
|
|
351
|
-
setBehavior(inheritedBehaviors);
|
|
352
|
-
setUserConfig(() => userConfig, {
|
|
353
|
-
undoIgnore: true
|
|
354
|
-
});
|
|
355
|
-
}
|
|
356
|
-
}]
|
|
357
|
-
});
|
|
358
|
-
}
|
|
359
|
-
}, [__unstableMarkNextChangeAsNotPersistent, attributes, changes, createSuccessNotice, inheritedBehaviors, name, setAttributes, setBehavior, setUserConfig, userConfig, userHasEditedBehaviors]);
|
|
327
|
+
}, [__unstableMarkNextChangeAsNotPersistent, attributes, changes, createSuccessNotice, name, setAttributes, setUserConfig, userConfig]);
|
|
360
328
|
return createElement(BaseControl, {
|
|
361
329
|
className: "edit-site-push-changes-to-global-styles-control",
|
|
362
330
|
help: sprintf(
|
|
363
331
|
// translators: %s: Title of the block e.g. 'Heading'.
|
|
364
|
-
__('Apply this block’s typography, spacing, dimensions, color styles
|
|
332
|
+
__('Apply this block’s typography, spacing, dimensions, and color styles to all %s blocks.'), getBlockType(name).title)
|
|
365
333
|
}, createElement(BaseControl.VisualLabel, null, __('Styles')), createElement(Button, {
|
|
366
334
|
variant: "primary",
|
|
367
|
-
disabled: changes.length === 0
|
|
335
|
+
disabled: changes.length === 0,
|
|
368
336
|
onClick: pushChanges
|
|
369
337
|
}, __('Apply globally')));
|
|
370
338
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["addFilter","createHigherOrderComponent","InspectorAdvancedControls","store","blockEditorStore","privateApis","blockEditorPrivateApis","useBlockEditingMode","BaseControl","Button","__","sprintf","__EXPERIMENTAL_STYLE_PROPERTY","getBlockType","hasBlockSupport","useContext","useMemo","useCallback","useDispatch","noticesStore","useSupportedStyles","unlock","cleanEmptyObject","GlobalStylesContext","__experimentalUseGlobalBehaviors","useGlobalBehaviors","__experimentalUseHasBehaviorsPanel","useHasBehaviorsPanel","STYLE_PROPERTY","blockGap","value","STYLE_PATH_TO_CSS_VAR_INFIX","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","SUPPORTED_STYLES","getValueFromObjectPath","object","path","forEach","fieldName","flatBorderProperties","sides","getBorderStyleChanges","border","presetColor","userStyle","changes","getFallbackBorderStyleChange","color","customColor","style","width","hasColorOrWidth","side","push","globalBorderStyle","useChangesToPush","name","attributes","userConfig","supports","blockUserConfig","styles","blocks","flatMap","key","presetAttributeKey","join","presetAttributeValue","linkChanges","hoverPath","hoverValue","includes","borderChanges","currentPath","splice","borderColor","change","setNestedValue","reduce","acc","idx","undefined","Number","isInteger","length","cloneDeep","JSON","parse","stringify","PushChangesToGlobalStylesControl","setAttributes","hasBehaviorsPanel","blockSupportOnly","user","setUserConfig","__unstableMarkNextChangeAsNotPersistent","createSuccessNotice","inheritedBehaviors","setBehavior","userHasEditedBehaviors","hasOwnProperty","pushChanges","blockStyles","newBlockStyles","newUserConfig","newBlockAttributes","backgroundColor","textColor","gradient","fontSize","fontFamily","undoIgnore","title","type","actions","label","onClick","behaviors","createElement","className","help","VisualLabel","variant","disabled","withPushChangesToGlobalStyles","BlockEdit","props","blockEditingMode","supportsStyles","some","feature","Fragment"],"sources":["@wordpress/edit-site/src/hooks/push-changes-to-global-styles/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport {\n\tInspectorAdvancedControls,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__EXPERIMENTAL_STYLE_PROPERTY,\n\tgetBlockType,\n\thasBlockSupport,\n} from '@wordpress/blocks';\nimport { useContext, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { useSupportedStyles } from '../../components/global-styles/hooks';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tcleanEmptyObject,\n\tGlobalStylesContext,\n\t__experimentalUseGlobalBehaviors: useGlobalBehaviors,\n\t__experimentalUseHasBehaviorsPanel: useHasBehaviorsPanel,\n} = unlock( blockEditorPrivateApis );\n\n// Block Gap is a special case and isn't defined within the blocks\n// style properties config. We'll add it here to allow it to be pushed\n// to global styles as well.\nconst STYLE_PROPERTY = {\n\t...__EXPERIMENTAL_STYLE_PROPERTY,\n\tblockGap: { value: [ 'spacing', 'blockGap' ] },\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'border.color': 'color',\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.caption.color.text': 'color',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tblockGap: 'spacing',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'border.color': 'borderColor',\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nconst SUPPORTED_STYLES = [ 'border', 'color', 'spacing', 'typography' ];\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nconst flatBorderProperties = [ 'borderColor', 'borderWidth', 'borderStyle' ];\nconst sides = [ 'top', 'right', 'bottom', 'left' ];\n\nfunction getBorderStyleChanges( border, presetColor, userStyle ) {\n\tif ( ! border && ! presetColor ) {\n\t\treturn [];\n\t}\n\n\tconst changes = [\n\t\t...getFallbackBorderStyleChange( 'top', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'right', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'bottom', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'left', border, userStyle ),\n\t];\n\n\t// Handle a flat border i.e. all sides the same, CSS shorthand.\n\tconst { color: customColor, style, width } = border || {};\n\tconst hasColorOrWidth = presetColor || customColor || width;\n\n\tif ( hasColorOrWidth && ! style ) {\n\t\t// Global Styles need individual side configurations to overcome\n\t\t// theme.json configurations which are per side as well.\n\t\tsides.forEach( ( side ) => {\n\t\t\t// Only add fallback border-style if global styles don't already\n\t\t\t// have something set.\n\t\t\tif ( ! userStyle?.[ side ]?.style ) {\n\t\t\t\tchanges.push( {\n\t\t\t\t\tpath: [ 'border', side, 'style' ],\n\t\t\t\t\tvalue: 'solid',\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn changes;\n}\n\nfunction getFallbackBorderStyleChange( side, border, globalBorderStyle ) {\n\tif ( ! border?.[ side ] || globalBorderStyle?.[ side ]?.style ) {\n\t\treturn [];\n\t}\n\n\tconst { color, style, width } = border[ side ];\n\tconst hasColorOrWidth = color || width;\n\n\tif ( ! hasColorOrWidth || style ) {\n\t\treturn [];\n\t}\n\n\treturn [ { path: [ 'border', side, 'style' ], value: 'solid' } ];\n}\n\nfunction useChangesToPush( name, attributes, userConfig ) {\n\tconst supports = useSupportedStyles( name );\n\tconst blockUserConfig = userConfig?.styles?.blocks?.[ name ];\n\n\treturn useMemo( () => {\n\t\tconst changes = supports.flatMap( ( key ) => {\n\t\t\tif ( ! STYLE_PROPERTY[ key ] ) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst { value: path } = STYLE_PROPERTY[ key ];\n\t\t\tconst presetAttributeKey = path.join( '.' );\n\t\t\tconst presetAttributeValue =\n\t\t\t\tattributes[\n\t\t\t\t\tSTYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE[ presetAttributeKey ]\n\t\t\t\t];\n\t\t\tconst value = presetAttributeValue\n\t\t\t\t? `var:preset|${ STYLE_PATH_TO_CSS_VAR_INFIX[ presetAttributeKey ] }|${ presetAttributeValue }`\n\t\t\t\t: getValueFromObjectPath( attributes.style, path );\n\n\t\t\t// Links only have a single support entry but have two element\n\t\t\t// style properties, color and hover color. The following check\n\t\t\t// will add the hover color to the changes if required.\n\t\t\tif ( key === 'linkColor' ) {\n\t\t\t\tconst linkChanges = value ? [ { path, value } ] : [];\n\t\t\t\tconst hoverPath = [\n\t\t\t\t\t'elements',\n\t\t\t\t\t'link',\n\t\t\t\t\t':hover',\n\t\t\t\t\t'color',\n\t\t\t\t\t'text',\n\t\t\t\t];\n\t\t\t\tconst hoverValue = getValueFromObjectPath(\n\t\t\t\t\tattributes.style,\n\t\t\t\t\thoverPath\n\t\t\t\t);\n\n\t\t\t\tif ( hoverValue ) {\n\t\t\t\t\tlinkChanges.push( { path: hoverPath, value: hoverValue } );\n\t\t\t\t}\n\n\t\t\t\treturn linkChanges;\n\t\t\t}\n\n\t\t\t// The shorthand border styles can't be mapped directly as global\n\t\t\t// styles requires longhand config.\n\t\t\tif ( flatBorderProperties.includes( key ) && value ) {\n\t\t\t\t// The shorthand config path is included to clear the block attribute.\n\t\t\t\tconst borderChanges = [ { path, value } ];\n\t\t\t\tsides.forEach( ( side ) => {\n\t\t\t\t\tconst currentPath = [ ...path ];\n\t\t\t\t\tcurrentPath.splice( -1, 0, side );\n\t\t\t\t\tborderChanges.push( { path: currentPath, value } );\n\t\t\t\t} );\n\t\t\t\treturn borderChanges;\n\t\t\t}\n\n\t\t\treturn value ? [ { path, value } ] : [];\n\t\t} );\n\n\t\t// To ensure display of a visible border, global styles require a\n\t\t// default border style if a border color or width is present.\n\t\tgetBorderStyleChanges(\n\t\t\tattributes.style?.border,\n\t\t\tattributes.borderColor,\n\t\t\tblockUserConfig?.border\n\t\t).forEach( ( change ) => changes.push( change ) );\n\n\t\treturn changes;\n\t}, [ supports, attributes, blockUserConfig ] );\n}\n\n/**\n * Sets the value at path of object.\n * If a portion of path doesn’t exist, it’s created.\n * Arrays are created for missing index properties while objects are created\n * for all other missing properties.\n *\n * This function intentionally mutates the input object.\n *\n * Inspired by _.set().\n *\n * @see https://lodash.com/docs/4.17.15#set\n *\n * @todo Needs to be deduplicated with its copy in `@wordpress/core-data`.\n *\n * @param {Object} object Object to modify\n * @param {Array} path Path of the property to set.\n * @param {*} value Value to set.\n */\nfunction setNestedValue( object, path, value ) {\n\tif ( ! object || typeof object !== 'object' ) {\n\t\treturn object;\n\t}\n\n\tpath.reduce( ( acc, key, idx ) => {\n\t\tif ( acc[ key ] === undefined ) {\n\t\t\tif ( Number.isInteger( path[ idx + 1 ] ) ) {\n\t\t\t\tacc[ key ] = [];\n\t\t\t} else {\n\t\t\t\tacc[ key ] = {};\n\t\t\t}\n\t\t}\n\t\tif ( idx === path.length - 1 ) {\n\t\t\tacc[ key ] = value;\n\t\t}\n\t\treturn acc[ key ];\n\t}, object );\n\n\treturn object;\n}\n\nfunction cloneDeep( object ) {\n\treturn ! object ? {} : JSON.parse( JSON.stringify( object ) );\n}\n\nfunction PushChangesToGlobalStylesControl( {\n\tname,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst hasBehaviorsPanel = useHasBehaviorsPanel( attributes, name, {\n\t\tblockSupportOnly: true,\n\t} );\n\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\n\tconst changes = useChangesToPush( name, attributes, userConfig );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst { inheritedBehaviors, setBehavior } = useGlobalBehaviors( name );\n\n\tconst userHasEditedBehaviors =\n\t\tattributes.hasOwnProperty( 'behaviors' ) && hasBehaviorsPanel;\n\n\tconst pushChanges = useCallback( () => {\n\t\tif ( changes.length === 0 && ! userHasEditedBehaviors ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( changes.length > 0 ) {\n\t\t\tconst { style: blockStyles } = attributes;\n\n\t\t\tconst newBlockStyles = cloneDeep( blockStyles );\n\t\t\tconst newUserConfig = cloneDeep( userConfig );\n\n\t\t\tfor ( const { path, value } of changes ) {\n\t\t\t\tsetNestedValue( newBlockStyles, path, undefined );\n\t\t\t\tsetNestedValue(\n\t\t\t\t\tnewUserConfig,\n\t\t\t\t\t[ 'styles', 'blocks', name, ...path ],\n\t\t\t\t\tvalue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst newBlockAttributes = {\n\t\t\t\tborderColor: undefined,\n\t\t\t\tbackgroundColor: undefined,\n\t\t\t\ttextColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tfontSize: undefined,\n\t\t\t\tfontFamily: undefined,\n\t\t\t\tstyle: cleanEmptyObject( newBlockStyles ),\n\t\t\t};\n\n\t\t\t// @wordpress/core-data doesn't support editing multiple entity types in\n\t\t\t// a single undo level. So for now, we disable @wordpress/core-data undo\n\t\t\t// tracking and implement our own Undo button in the snackbar\n\t\t\t// notification.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( newBlockAttributes );\n\t\t\tsetUserConfig( () => newUserConfig, { undoIgnore: true } );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t\t__( '%s styles applied.' ),\n\t\t\t\t\tgetBlockType( name ).title\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tsetAttributes( attributes );\n\t\t\t\t\t\t\t\tsetUserConfig( () => userConfig, {\n\t\t\t\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif ( userHasEditedBehaviors ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { behaviors: undefined } );\n\t\t\tsetBehavior( attributes.behaviors );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t\t__( '%s behaviors applied.' ),\n\t\t\t\t\tgetBlockType( name ).title\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tsetBehavior( inheritedBehaviors );\n\t\t\t\t\t\t\t\tsetUserConfig( () => userConfig, {\n\t\t\t\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tattributes,\n\t\tchanges,\n\t\tcreateSuccessNotice,\n\t\tinheritedBehaviors,\n\t\tname,\n\t\tsetAttributes,\n\t\tsetBehavior,\n\t\tsetUserConfig,\n\t\tuserConfig,\n\t\tuserHasEditedBehaviors,\n\t] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName=\"edit-site-push-changes-to-global-styles-control\"\n\t\t\thelp={ sprintf(\n\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t__(\n\t\t\t\t\t'Apply this block’s typography, spacing, dimensions, color styles, and behaviors to all %s blocks.'\n\t\t\t\t),\n\t\t\t\tgetBlockType( name ).title\n\t\t\t) }\n\t\t>\n\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t{ __( 'Styles' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tdisabled={ changes.length === 0 && ! userHasEditedBehaviors }\n\t\t\t\tonClick={ pushChanges }\n\t\t\t>\n\t\t\t\t{ __( 'Apply globally' ) }\n\t\t\t</Button>\n\t\t</BaseControl>\n\t);\n}\n\nconst withPushChangesToGlobalStyles = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst blockEditingMode = useBlockEditingMode();\n\t\tconst supportsStyles = SUPPORTED_STYLES.some( ( feature ) =>\n\t\t\thasBlockSupport( props.name, feature )\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ blockEditingMode === 'default' && supportsStyles && (\n\t\t\t\t\t<InspectorAdvancedControls>\n\t\t\t\t\t\t<PushChangesToGlobalStylesControl { ...props } />\n\t\t\t\t\t</InspectorAdvancedControls>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/push-changes-to-global-styles',\n\twithPushChangesToGlobalStyles\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["addFilter","createHigherOrderComponent","InspectorAdvancedControls","store","blockEditorStore","privateApis","blockEditorPrivateApis","useBlockEditingMode","BaseControl","Button","__","sprintf","__EXPERIMENTAL_STYLE_PROPERTY","getBlockType","hasBlockSupport","useContext","useMemo","useCallback","useDispatch","noticesStore","useSupportedStyles","unlock","cleanEmptyObject","GlobalStylesContext","STYLE_PROPERTY","blockGap","value","STYLE_PATH_TO_CSS_VAR_INFIX","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","SUPPORTED_STYLES","getValueFromObjectPath","object","path","forEach","fieldName","flatBorderProperties","sides","getBorderStyleChanges","border","presetColor","userStyle","changes","getFallbackBorderStyleChange","color","customColor","style","width","hasColorOrWidth","side","push","globalBorderStyle","useChangesToPush","name","attributes","userConfig","supports","blockUserConfig","styles","blocks","flatMap","key","presetAttributeKey","join","presetAttributeValue","linkChanges","hoverPath","hoverValue","includes","borderChanges","currentPath","splice","borderColor","change","setNestedValue","reduce","acc","idx","undefined","Number","isInteger","length","cloneDeep","JSON","parse","stringify","PushChangesToGlobalStylesControl","setAttributes","user","setUserConfig","__unstableMarkNextChangeAsNotPersistent","createSuccessNotice","pushChanges","blockStyles","newBlockStyles","newUserConfig","newBlockAttributes","backgroundColor","textColor","gradient","fontSize","fontFamily","undoIgnore","title","type","actions","label","onClick","createElement","className","help","VisualLabel","variant","disabled","withPushChangesToGlobalStyles","BlockEdit","props","blockEditingMode","supportsStyles","some","feature","Fragment"],"sources":["@wordpress/edit-site/src/hooks/push-changes-to-global-styles/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport {\n\tInspectorAdvancedControls,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__EXPERIMENTAL_STYLE_PROPERTY,\n\tgetBlockType,\n\thasBlockSupport,\n} from '@wordpress/blocks';\nimport { useContext, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { useSupportedStyles } from '../../components/global-styles/hooks';\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject, GlobalStylesContext } = unlock(\n\tblockEditorPrivateApis\n);\n\n// Block Gap is a special case and isn't defined within the blocks\n// style properties config. We'll add it here to allow it to be pushed\n// to global styles as well.\nconst STYLE_PROPERTY = {\n\t...__EXPERIMENTAL_STYLE_PROPERTY,\n\tblockGap: { value: [ 'spacing', 'blockGap' ] },\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'border.color': 'color',\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.caption.color.text': 'color',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tblockGap: 'spacing',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'border.color': 'borderColor',\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nconst SUPPORTED_STYLES = [ 'border', 'color', 'spacing', 'typography' ];\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nconst flatBorderProperties = [ 'borderColor', 'borderWidth', 'borderStyle' ];\nconst sides = [ 'top', 'right', 'bottom', 'left' ];\n\nfunction getBorderStyleChanges( border, presetColor, userStyle ) {\n\tif ( ! border && ! presetColor ) {\n\t\treturn [];\n\t}\n\n\tconst changes = [\n\t\t...getFallbackBorderStyleChange( 'top', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'right', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'bottom', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'left', border, userStyle ),\n\t];\n\n\t// Handle a flat border i.e. all sides the same, CSS shorthand.\n\tconst { color: customColor, style, width } = border || {};\n\tconst hasColorOrWidth = presetColor || customColor || width;\n\n\tif ( hasColorOrWidth && ! style ) {\n\t\t// Global Styles need individual side configurations to overcome\n\t\t// theme.json configurations which are per side as well.\n\t\tsides.forEach( ( side ) => {\n\t\t\t// Only add fallback border-style if global styles don't already\n\t\t\t// have something set.\n\t\t\tif ( ! userStyle?.[ side ]?.style ) {\n\t\t\t\tchanges.push( {\n\t\t\t\t\tpath: [ 'border', side, 'style' ],\n\t\t\t\t\tvalue: 'solid',\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn changes;\n}\n\nfunction getFallbackBorderStyleChange( side, border, globalBorderStyle ) {\n\tif ( ! border?.[ side ] || globalBorderStyle?.[ side ]?.style ) {\n\t\treturn [];\n\t}\n\n\tconst { color, style, width } = border[ side ];\n\tconst hasColorOrWidth = color || width;\n\n\tif ( ! hasColorOrWidth || style ) {\n\t\treturn [];\n\t}\n\n\treturn [ { path: [ 'border', side, 'style' ], value: 'solid' } ];\n}\n\nfunction useChangesToPush( name, attributes, userConfig ) {\n\tconst supports = useSupportedStyles( name );\n\tconst blockUserConfig = userConfig?.styles?.blocks?.[ name ];\n\n\treturn useMemo( () => {\n\t\tconst changes = supports.flatMap( ( key ) => {\n\t\t\tif ( ! STYLE_PROPERTY[ key ] ) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst { value: path } = STYLE_PROPERTY[ key ];\n\t\t\tconst presetAttributeKey = path.join( '.' );\n\t\t\tconst presetAttributeValue =\n\t\t\t\tattributes[\n\t\t\t\t\tSTYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE[ presetAttributeKey ]\n\t\t\t\t];\n\t\t\tconst value = presetAttributeValue\n\t\t\t\t? `var:preset|${ STYLE_PATH_TO_CSS_VAR_INFIX[ presetAttributeKey ] }|${ presetAttributeValue }`\n\t\t\t\t: getValueFromObjectPath( attributes.style, path );\n\n\t\t\t// Links only have a single support entry but have two element\n\t\t\t// style properties, color and hover color. The following check\n\t\t\t// will add the hover color to the changes if required.\n\t\t\tif ( key === 'linkColor' ) {\n\t\t\t\tconst linkChanges = value ? [ { path, value } ] : [];\n\t\t\t\tconst hoverPath = [\n\t\t\t\t\t'elements',\n\t\t\t\t\t'link',\n\t\t\t\t\t':hover',\n\t\t\t\t\t'color',\n\t\t\t\t\t'text',\n\t\t\t\t];\n\t\t\t\tconst hoverValue = getValueFromObjectPath(\n\t\t\t\t\tattributes.style,\n\t\t\t\t\thoverPath\n\t\t\t\t);\n\n\t\t\t\tif ( hoverValue ) {\n\t\t\t\t\tlinkChanges.push( { path: hoverPath, value: hoverValue } );\n\t\t\t\t}\n\n\t\t\t\treturn linkChanges;\n\t\t\t}\n\n\t\t\t// The shorthand border styles can't be mapped directly as global\n\t\t\t// styles requires longhand config.\n\t\t\tif ( flatBorderProperties.includes( key ) && value ) {\n\t\t\t\t// The shorthand config path is included to clear the block attribute.\n\t\t\t\tconst borderChanges = [ { path, value } ];\n\t\t\t\tsides.forEach( ( side ) => {\n\t\t\t\t\tconst currentPath = [ ...path ];\n\t\t\t\t\tcurrentPath.splice( -1, 0, side );\n\t\t\t\t\tborderChanges.push( { path: currentPath, value } );\n\t\t\t\t} );\n\t\t\t\treturn borderChanges;\n\t\t\t}\n\n\t\t\treturn value ? [ { path, value } ] : [];\n\t\t} );\n\n\t\t// To ensure display of a visible border, global styles require a\n\t\t// default border style if a border color or width is present.\n\t\tgetBorderStyleChanges(\n\t\t\tattributes.style?.border,\n\t\t\tattributes.borderColor,\n\t\t\tblockUserConfig?.border\n\t\t).forEach( ( change ) => changes.push( change ) );\n\n\t\treturn changes;\n\t}, [ supports, attributes, blockUserConfig ] );\n}\n\n/**\n * Sets the value at path of object.\n * If a portion of path doesn’t exist, it’s created.\n * Arrays are created for missing index properties while objects are created\n * for all other missing properties.\n *\n * This function intentionally mutates the input object.\n *\n * Inspired by _.set().\n *\n * @see https://lodash.com/docs/4.17.15#set\n *\n * @todo Needs to be deduplicated with its copy in `@wordpress/core-data`.\n *\n * @param {Object} object Object to modify\n * @param {Array} path Path of the property to set.\n * @param {*} value Value to set.\n */\nfunction setNestedValue( object, path, value ) {\n\tif ( ! object || typeof object !== 'object' ) {\n\t\treturn object;\n\t}\n\n\tpath.reduce( ( acc, key, idx ) => {\n\t\tif ( acc[ key ] === undefined ) {\n\t\t\tif ( Number.isInteger( path[ idx + 1 ] ) ) {\n\t\t\t\tacc[ key ] = [];\n\t\t\t} else {\n\t\t\t\tacc[ key ] = {};\n\t\t\t}\n\t\t}\n\t\tif ( idx === path.length - 1 ) {\n\t\t\tacc[ key ] = value;\n\t\t}\n\t\treturn acc[ key ];\n\t}, object );\n\n\treturn object;\n}\n\nfunction cloneDeep( object ) {\n\treturn ! object ? {} : JSON.parse( JSON.stringify( object ) );\n}\n\nfunction PushChangesToGlobalStylesControl( {\n\tname,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\n\tconst changes = useChangesToPush( name, attributes, userConfig );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst pushChanges = useCallback( () => {\n\t\tif ( changes.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( changes.length > 0 ) {\n\t\t\tconst { style: blockStyles } = attributes;\n\n\t\t\tconst newBlockStyles = cloneDeep( blockStyles );\n\t\t\tconst newUserConfig = cloneDeep( userConfig );\n\n\t\t\tfor ( const { path, value } of changes ) {\n\t\t\t\tsetNestedValue( newBlockStyles, path, undefined );\n\t\t\t\tsetNestedValue(\n\t\t\t\t\tnewUserConfig,\n\t\t\t\t\t[ 'styles', 'blocks', name, ...path ],\n\t\t\t\t\tvalue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst newBlockAttributes = {\n\t\t\t\tborderColor: undefined,\n\t\t\t\tbackgroundColor: undefined,\n\t\t\t\ttextColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tfontSize: undefined,\n\t\t\t\tfontFamily: undefined,\n\t\t\t\tstyle: cleanEmptyObject( newBlockStyles ),\n\t\t\t};\n\n\t\t\t// @wordpress/core-data doesn't support editing multiple entity types in\n\t\t\t// a single undo level. So for now, we disable @wordpress/core-data undo\n\t\t\t// tracking and implement our own Undo button in the snackbar\n\t\t\t// notification.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( newBlockAttributes );\n\t\t\tsetUserConfig( () => newUserConfig, { undoIgnore: true } );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t\t__( '%s styles applied.' ),\n\t\t\t\t\tgetBlockType( name ).title\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tsetAttributes( attributes );\n\t\t\t\t\t\t\t\tsetUserConfig( () => userConfig, {\n\t\t\t\t\t\t\t\t\tundoIgnore: true,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tattributes,\n\t\tchanges,\n\t\tcreateSuccessNotice,\n\t\tname,\n\t\tsetAttributes,\n\t\tsetUserConfig,\n\t\tuserConfig,\n\t] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName=\"edit-site-push-changes-to-global-styles-control\"\n\t\t\thelp={ sprintf(\n\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t__(\n\t\t\t\t\t'Apply this block’s typography, spacing, dimensions, and color styles to all %s blocks.'\n\t\t\t\t),\n\t\t\t\tgetBlockType( name ).title\n\t\t\t) }\n\t\t>\n\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t{ __( 'Styles' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tdisabled={ changes.length === 0 }\n\t\t\t\tonClick={ pushChanges }\n\t\t\t>\n\t\t\t\t{ __( 'Apply globally' ) }\n\t\t\t</Button>\n\t\t</BaseControl>\n\t);\n}\n\nconst withPushChangesToGlobalStyles = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst blockEditingMode = useBlockEditingMode();\n\t\tconst supportsStyles = SUPPORTED_STYLES.some( ( feature ) =>\n\t\t\thasBlockSupport( props.name, feature )\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ blockEditingMode === 'default' && supportsStyles && (\n\t\t\t\t\t<InspectorAdvancedControls>\n\t\t\t\t\t\t<PushChangesToGlobalStylesControl { ...props } />\n\t\t\t\t\t</InspectorAdvancedControls>\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t}\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/push-changes-to-global-styles',\n\twithPushChangesToGlobalStyles\n);\n"],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
16
16
|
*/
|
|
17
17
|
import { useLink } from '../components/routes/link';
|
|
18
18
|
import { unlock } from '../lock-unlock';
|
|
19
|
+
import { TEMPLATE_PART_POST_TYPE } from '../utils/constants';
|
|
19
20
|
const {
|
|
20
21
|
useLocation
|
|
21
22
|
} = unlock(routerPrivateApis);
|
|
@@ -30,7 +31,7 @@ function EditTemplatePartMenuItem({
|
|
|
30
31
|
params
|
|
31
32
|
} = useLocation();
|
|
32
33
|
const templatePart = useSelect(select => {
|
|
33
|
-
return select(coreStore).getEntityRecord('postType',
|
|
34
|
+
return select(coreStore).getEntityRecord('postType', TEMPLATE_PART_POST_TYPE,
|
|
34
35
|
// Ideally this should be an official public API.
|
|
35
36
|
`${theme}//${slug}`);
|
|
36
37
|
}, [theme, slug]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useSelect","BlockControls","store","coreStore","ToolbarButton","addFilter","createHigherOrderComponent","privateApis","routerPrivateApis","useLink","unlock","useLocation","EditTemplatePartMenuItem","attributes","theme","slug","params","templatePart","select","getEntityRecord","linkProps","postId","id","postType","type","canvas","fromTemplateId","createElement","group","onClick","event","withEditBlockControls","BlockEdit","props","name","isDisplayed","Fragment"],"sources":["@wordpress/edit-site/src/hooks/template-part-edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { BlockControls } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ToolbarButton } from '@wordpress/components';\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { useLink } from '../components/routes/link';\nimport { unlock } from '../lock-unlock';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction EditTemplatePartMenuItem( { attributes } ) {\n\tconst { theme, slug } = attributes;\n\tconst { params } = useLocation();\n\tconst templatePart = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\
|
|
1
|
+
{"version":3,"names":["__","useSelect","BlockControls","store","coreStore","ToolbarButton","addFilter","createHigherOrderComponent","privateApis","routerPrivateApis","useLink","unlock","TEMPLATE_PART_POST_TYPE","useLocation","EditTemplatePartMenuItem","attributes","theme","slug","params","templatePart","select","getEntityRecord","linkProps","postId","id","postType","type","canvas","fromTemplateId","createElement","group","onClick","event","withEditBlockControls","BlockEdit","props","name","isDisplayed","Fragment"],"sources":["@wordpress/edit-site/src/hooks/template-part-edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { BlockControls } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { ToolbarButton } from '@wordpress/components';\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { useLink } from '../components/routes/link';\nimport { unlock } from '../lock-unlock';\nimport { TEMPLATE_PART_POST_TYPE } from '../utils/constants';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction EditTemplatePartMenuItem( { attributes } ) {\n\tconst { theme, slug } = attributes;\n\tconst { params } = useLocation();\n\tconst templatePart = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t// Ideally this should be an official public API.\n\t\t\t\t`${ theme }//${ slug }`\n\t\t\t);\n\t\t},\n\t\t[ theme, slug ]\n\t);\n\n\tconst linkProps = useLink(\n\t\t{\n\t\t\tpostId: templatePart?.id,\n\t\t\tpostType: templatePart?.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t\t{\n\t\t\tfromTemplateId: params.postId,\n\t\t}\n\t);\n\n\tif ( ! templatePart ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\t{ ...linkProps }\n\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\tlinkProps.onClick( event );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Edit' ) }\n\t\t\t</ToolbarButton>\n\t\t</BlockControls>\n\t);\n}\n\nexport const withEditBlockControls = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => {\n\t\tconst { attributes, name } = props;\n\t\tconst isDisplayed = name === 'core/template-part' && attributes.slug;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t{ isDisplayed && (\n\t\t\t\t\t<EditTemplatePartMenuItem attributes={ attributes } />\n\t\t\t\t) }\n\t\t\t</>\n\t\t);\n\t},\n\t'withEditBlockControls'\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/template-part-edit-button',\n\twithEditBlockControls\n);\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,aAAa,QAAQ,yBAAyB;AACvD,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,SAAS,QAAQ,kBAAkB;AAC5C,SAASC,0BAA0B,QAAQ,oBAAoB;AAC/D,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,SAASC,OAAO,QAAQ,2BAA2B;AACnD,SAASC,MAAM,QAAQ,gBAAgB;AACvC,SAASC,uBAAuB,QAAQ,oBAAoB;AAE5D,MAAM;EAAEC;AAAY,CAAC,GAAGF,MAAM,CAAEF,iBAAkB,CAAC;AAEnD,SAASK,wBAAwBA,CAAE;EAAEC;AAAW,CAAC,EAAG;EACnD,MAAM;IAAEC,KAAK;IAAEC;EAAK,CAAC,GAAGF,UAAU;EAClC,MAAM;IAAEG;EAAO,CAAC,GAAGL,WAAW,CAAC,CAAC;EAChC,MAAMM,YAAY,GAAGlB,SAAS,CAC3BmB,MAAM,IAAM;IACb,OAAOA,MAAM,CAAEhB,SAAU,CAAC,CAACiB,eAAe,CACzC,UAAU,EACVT,uBAAuB;IACvB;IACC,GAAGI,KAAO,KAAKC,IAAM,EACvB,CAAC;EACF,CAAC,EACD,CAAED,KAAK,EAAEC,IAAI,CACd,CAAC;EAED,MAAMK,SAAS,GAAGZ,OAAO,CACxB;IACCa,MAAM,EAAEJ,YAAY,EAAEK,EAAE;IACxBC,QAAQ,EAAEN,YAAY,EAAEO,IAAI;IAC5BC,MAAM,EAAE;EACT,CAAC,EACD;IACCC,cAAc,EAAEV,MAAM,CAACK;EACxB,CACD,CAAC;EAED,IAAK,CAAEJ,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EAEA,OACCU,aAAA,CAAC3B,aAAa;IAAC4B,KAAK,EAAC;EAAO,GAC3BD,aAAA,CAACxB,aAAa;IAAA,GACRiB,SAAS;IACdS,OAAO,EAAKC,KAAK,IAAM;MACtBV,SAAS,CAACS,OAAO,CAAEC,KAAM,CAAC;IAC3B;EAAG,GAEDhC,EAAE,CAAE,MAAO,CACC,CACD,CAAC;AAElB;AAEA,OAAO,MAAMiC,qBAAqB,GAAG1B,0BAA0B,CAC5D2B,SAAS,IAAQC,KAAK,IAAM;EAC7B,MAAM;IAAEpB,UAAU;IAAEqB;EAAK,CAAC,GAAGD,KAAK;EAClC,MAAME,WAAW,GAAGD,IAAI,KAAK,oBAAoB,IAAIrB,UAAU,CAACE,IAAI;EAEpE,OACCY,aAAA,CAAAS,QAAA,QACCT,aAAA,CAACK,SAAS;IAAA,GAAMC;EAAK,CAAI,CAAC,EACxBE,WAAW,IACZR,aAAA,CAACf,wBAAwB;IAACC,UAAU,EAAGA;EAAY,CAAE,CAErD,CAAC;AAEL,CAAC,EACD,uBACD,CAAC;AAEDT,SAAS,CACR,kBAAkB,EAClB,0CAA0C,EAC1C2B,qBACD,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
import apiFetch from '@wordpress/api-fetch';
|
|
5
5
|
import { parse, __unstableSerializeAndClean } from '@wordpress/blocks';
|
|
6
6
|
import deprecated from '@wordpress/deprecated';
|
|
7
|
-
import { addQueryArgs
|
|
7
|
+
import { addQueryArgs } from '@wordpress/url';
|
|
8
8
|
import { __, sprintf } from '@wordpress/i18n';
|
|
9
9
|
import { store as noticesStore } from '@wordpress/notices';
|
|
10
10
|
import { store as coreStore } from '@wordpress/core-data';
|
|
@@ -19,7 +19,7 @@ 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 { TEMPLATE_POST_TYPE, TEMPLATE_PART_POST_TYPE, NAVIGATION_POST_TYPE } from '../utils/constants';
|
|
23
23
|
/**
|
|
24
24
|
* Dispatches an action that toggles a feature flag.
|
|
25
25
|
*
|
|
@@ -64,13 +64,13 @@ export const setTemplate = (templateId, templateSlug) => async ({
|
|
|
64
64
|
}) => {
|
|
65
65
|
if (!templateSlug) {
|
|
66
66
|
try {
|
|
67
|
-
const template = await registry.resolveSelect(coreStore).getEntityRecord('postType',
|
|
67
|
+
const template = await registry.resolveSelect(coreStore).getEntityRecord('postType', TEMPLATE_POST_TYPE, templateId);
|
|
68
68
|
templateSlug = template?.slug;
|
|
69
69
|
} catch (error) {}
|
|
70
70
|
}
|
|
71
71
|
dispatch({
|
|
72
72
|
type: 'SET_EDITED_POST',
|
|
73
|
-
postType:
|
|
73
|
+
postType: TEMPLATE_POST_TYPE,
|
|
74
74
|
id: templateId,
|
|
75
75
|
context: {
|
|
76
76
|
templateSlug
|
|
@@ -89,9 +89,9 @@ export const addTemplate = template => async ({
|
|
|
89
89
|
dispatch,
|
|
90
90
|
registry
|
|
91
91
|
}) => {
|
|
92
|
-
const newTemplate = await registry.dispatch(coreStore).saveEntityRecord('postType',
|
|
92
|
+
const newTemplate = await registry.dispatch(coreStore).saveEntityRecord('postType', TEMPLATE_POST_TYPE, template);
|
|
93
93
|
if (template.content) {
|
|
94
|
-
registry.dispatch(coreStore).editEntityRecord('postType',
|
|
94
|
+
registry.dispatch(coreStore).editEntityRecord('postType', TEMPLATE_POST_TYPE, newTemplate.id, {
|
|
95
95
|
blocks: parse(template.content)
|
|
96
96
|
}, {
|
|
97
97
|
undoIgnore: true
|
|
@@ -99,7 +99,7 @@ export const addTemplate = template => async ({
|
|
|
99
99
|
}
|
|
100
100
|
dispatch({
|
|
101
101
|
type: 'SET_EDITED_POST',
|
|
102
|
-
postType:
|
|
102
|
+
postType: TEMPLATE_POST_TYPE,
|
|
103
103
|
id: newTemplate.id,
|
|
104
104
|
context: {
|
|
105
105
|
templateSlug: newTemplate.slug
|
|
@@ -150,7 +150,7 @@ export const removeTemplate = template => async ({
|
|
|
150
150
|
export function setTemplatePart(templatePartId) {
|
|
151
151
|
return {
|
|
152
152
|
type: 'SET_EDITED_POST',
|
|
153
|
-
postType:
|
|
153
|
+
postType: TEMPLATE_PART_POST_TYPE,
|
|
154
154
|
id: templatePartId
|
|
155
155
|
};
|
|
156
156
|
}
|
|
@@ -165,7 +165,7 @@ export function setTemplatePart(templatePartId) {
|
|
|
165
165
|
export function setNavigationMenu(navigationMenuId) {
|
|
166
166
|
return {
|
|
167
167
|
type: 'SET_EDITED_POST',
|
|
168
|
-
postType:
|
|
168
|
+
postType: NAVIGATION_POST_TYPE,
|
|
169
169
|
id: navigationMenuId
|
|
170
170
|
};
|
|
171
171
|
}
|
|
@@ -204,7 +204,7 @@ export function setHomeTemplateId() {
|
|
|
204
204
|
*
|
|
205
205
|
* @param {Object} context The context object.
|
|
206
206
|
*
|
|
207
|
-
* @return {
|
|
207
|
+
* @return {Object} Action object.
|
|
208
208
|
*/
|
|
209
209
|
export function setEditedPostContext(context) {
|
|
210
210
|
return {
|
|
@@ -229,18 +229,41 @@ export const setPage = page => async ({
|
|
|
229
229
|
dispatch,
|
|
230
230
|
registry
|
|
231
231
|
}) => {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
232
|
+
let template;
|
|
233
|
+
const getDefaultTemplate = async slug => apiFetch({
|
|
234
|
+
path: addQueryArgs('/wp/v2/templates/lookup', {
|
|
235
|
+
slug: `page-${slug}`
|
|
236
|
+
})
|
|
237
|
+
});
|
|
238
|
+
if (page.path) {
|
|
239
|
+
template = await registry.resolveSelect(coreStore).__experimentalGetTemplateForLink(page.path);
|
|
240
|
+
} else {
|
|
241
|
+
const editedEntity = await registry.resolveSelect(coreStore).getEditedEntityRecord('postType', page.context?.postType || 'post', page.context?.postId);
|
|
242
|
+
const currentTemplateSlug = editedEntity?.template;
|
|
243
|
+
if (currentTemplateSlug) {
|
|
244
|
+
const currentTemplate = (await registry.resolveSelect(coreStore).getEntityRecords('postType', TEMPLATE_POST_TYPE, {
|
|
245
|
+
per_page: -1
|
|
246
|
+
}))?.find(({
|
|
247
|
+
slug
|
|
248
|
+
}) => slug === currentTemplateSlug);
|
|
249
|
+
if (currentTemplate) {
|
|
250
|
+
template = currentTemplate;
|
|
251
|
+
} else {
|
|
252
|
+
// If a page has a `template` set and is not included in the list
|
|
253
|
+
// of the current theme's templates, query for current theme's default template.
|
|
254
|
+
template = await getDefaultTemplate(editedEntity?.slug);
|
|
255
|
+
}
|
|
256
|
+
} else {
|
|
257
|
+
// Page's `template` is empty, that indicates we need to use the default template for the page.
|
|
258
|
+
template = await getDefaultTemplate(editedEntity?.slug);
|
|
259
|
+
}
|
|
236
260
|
}
|
|
237
|
-
const template = await registry.resolveSelect(coreStore).__experimentalGetTemplateForLink(page.path);
|
|
238
261
|
if (!template) {
|
|
239
262
|
return;
|
|
240
263
|
}
|
|
241
264
|
dispatch({
|
|
242
265
|
type: 'SET_EDITED_POST',
|
|
243
|
-
postType:
|
|
266
|
+
postType: TEMPLATE_POST_TYPE,
|
|
244
267
|
id: template.id,
|
|
245
268
|
context: {
|
|
246
269
|
...page.context,
|