@wordpress/edit-site 5.27.1 → 5.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/actions/index.js +3 -6
- package/build/components/actions/index.js.map +1 -1
- package/build/components/add-new-template/add-custom-generic-template-modal-content.js +1 -2
- package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
- package/build/components/add-new-template/add-custom-template-modal-content.js +1 -2
- package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +1 -2
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/inserter-media-categories.js +1 -2
- package/build/components/block-editor/inserter-media-categories.js.map +1 -1
- package/build/components/block-editor/resizable-editor.js +1 -2
- package/build/components/block-editor/resizable-editor.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +12 -5
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-navigate-to-entity-record.js +32 -0
- package/build/components/block-editor/use-navigate-to-entity-record.js.map +1 -0
- package/build/components/block-editor/use-site-editor-settings.js +30 -4
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/editor/index.js +13 -10
- package/build/components/editor/index.js.map +1 -1
- package/build/components/editor-canvas-container/index.js +1 -2
- package/build/components/editor-canvas-container/index.js.map +1 -1
- package/build/components/global-styles/block-preview-panel.js +1 -2
- package/build/components/global-styles/block-preview-panel.js.map +1 -1
- package/build/components/global-styles/color-indicator-wrapper.js +1 -2
- package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
- package/build/components/global-styles/font-families.js +9 -5
- package/build/components/global-styles/font-families.js.map +1 -1
- package/build/components/global-styles/font-family-item.js +1 -2
- package/build/components/global-styles/font-family-item.js.map +1 -1
- package/build/components/global-styles/font-library-modal/collection-font-details.js +1 -2
- package/build/components/global-styles/font-library-modal/collection-font-details.js.map +1 -1
- package/build/components/global-styles/font-library-modal/collection-font-variant.js +13 -13
- package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +1 -2
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +16 -4
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-card.js +3 -3
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +26 -40
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-demo.js +6 -12
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- package/build/components/global-styles/font-library-modal/fonts-grid.js +1 -2
- package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -1
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +3 -4
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
- package/build/components/global-styles/font-library-modal/index.js +11 -5
- package/build/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +14 -26
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-card.js +2 -3
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-details.js +1 -2
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-variant.js +15 -15
- package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
- package/build/components/global-styles/font-library-modal/resolvers.js +1 -1
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build/components/global-styles/font-library-modal/tab-panel-layout.js +13 -4
- package/build/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -1
- package/build/components/global-styles/font-library-modal/upload-fonts.js +157 -6
- package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/constants.js +3 -6
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/index.js +37 -32
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build/components/global-styles/header.js +1 -2
- package/build/components/global-styles/header.js.map +1 -1
- package/build/components/global-styles/palette.js +1 -2
- package/build/components/global-styles/palette.js.map +1 -1
- package/build/components/global-styles/preview.js +1 -2
- package/build/components/global-styles/preview.js.map +1 -1
- package/build/components/global-styles/root-menu.js +1 -2
- package/build/components/global-styles/root-menu.js.map +1 -1
- package/build/components/global-styles/screen-block-list.js +1 -2
- package/build/components/global-styles/screen-block-list.js.map +1 -1
- package/build/components/global-styles/screen-block.js +1 -11
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-color-palette.js +1 -2
- package/build/components/global-styles/screen-color-palette.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +1 -2
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-css.js +1 -2
- package/build/components/global-styles/screen-css.js.map +1 -1
- package/build/components/global-styles/screen-layout.js +1 -2
- package/build/components/global-styles/screen-layout.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +1 -2
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -3
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/screen-root.js +1 -2
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/screen-style-variations.js +1 -2
- package/build/components/global-styles/screen-style-variations.js.map +1 -1
- package/build/components/global-styles/screen-typography-element.js +3 -6
- package/build/components/global-styles/screen-typography-element.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +1 -2
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/subtitle.js +1 -2
- package/build/components/global-styles/subtitle.js.map +1 -1
- package/build/components/global-styles/typogrphy-elements.js +1 -2
- package/build/components/global-styles/typogrphy-elements.js.map +1 -1
- package/build/components/global-styles/ui.js +3 -4
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/header-edit-mode/mode-switcher/index.js +1 -2
- package/build/components/header-edit-mode/mode-switcher/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/index.js +12 -21
- package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build/components/header-edit-mode/plugin-more-menu-item/index.js +1 -2
- package/build/components/header-edit-mode/plugin-more-menu-item/index.js.map +1 -1
- package/build/components/header-edit-mode/tools-more-menu-group/index.js +1 -2
- package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/config.js +1 -2
- package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/index.js +1 -3
- package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/edit-mode.js +1 -2
- package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
- package/build/components/keyboard-shortcuts/global.js +1 -2
- package/build/components/keyboard-shortcuts/global.js.map +1 -1
- package/build/components/keyboard-shortcuts/register.js +1 -2
- package/build/components/keyboard-shortcuts/register.js.map +1 -1
- package/build/components/layout/index.js +0 -2
- package/build/components/layout/index.js.map +1 -1
- package/build/components/media/index.js +1 -2
- package/build/components/media/index.js.map +1 -1
- package/build/components/page-pages/index.js +27 -15
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/dataviews-pattern-actions.js +87 -32
- package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +2 -6
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/index.js +2 -1
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/search-items.js +0 -1
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +1 -2
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates-template-parts/actions.js +2 -4
- package/build/components/page-templates-template-parts/actions.js.map +1 -1
- package/build/components/page-templates-template-parts/index.js +8 -5
- package/build/components/page-templates-template-parts/index.js.map +1 -1
- package/build/components/pattern-modal/index.js +1 -2
- package/build/components/pattern-modal/index.js.map +1 -1
- package/build/components/plugin-template-setting-panel/index.js +1 -2
- package/build/components/plugin-template-setting-panel/index.js.map +1 -1
- package/build/components/preferences-modal/index.js +1 -2
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/resizable-frame/index.js +1 -2
- package/build/components/resizable-frame/index.js.map +1 -1
- package/build/components/revisions/index.js +1 -2
- package/build/components/revisions/index.js.map +1 -1
- package/build/components/routes/link.js +3 -7
- package/build/components/routes/link.js.map +1 -1
- package/build/components/sidebar/index.js +3 -4
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +4 -6
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/sidebar-edit-mode/constants.js +2 -4
- package/build/components/sidebar-edit-mode/constants.js.map +1 -1
- package/build/components/sidebar-edit-mode/index.js +97 -19
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +22 -73
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js +1 -2
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/constants.js +1 -2
- package/build/components/sidebar-navigation-screen-navigation-menus/constants.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/site-hub/index.js +1 -2
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/site-icon/index.js +3 -4
- package/build/components/site-icon/index.js.map +1 -1
- package/build/components/style-book/index.js +1 -2
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/template-part-converter/convert-to-template-part.js +0 -1
- package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build/components/welcome-guide/template.js +2 -2
- package/build/components/welcome-guide/template.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +16 -6
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/hooks/navigation-menu-edit.js +1 -2
- package/build/hooks/navigation-menu-edit.js.map +1 -1
- package/build/hooks/template-part-edit.js +1 -2
- package/build/hooks/template-part-edit.js.map +1 -1
- package/build/store/actions.js +7 -2
- package/build/store/actions.js.map +1 -1
- package/build/store/constants.js +1 -2
- package/build/store/constants.js.map +1 -1
- package/build/store/index.js +4 -6
- package/build/store/index.js.map +1 -1
- package/build/store/reducer.js +1 -2
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +9 -18
- package/build/store/selectors.js.map +1 -1
- package/build/store/utils.js +1 -2
- package/build/store/utils.js.map +1 -1
- package/build/utils/constants.js +13 -26
- package/build/utils/constants.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +13 -6
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-navigate-to-entity-record.js +25 -0
- package/build-module/components/block-editor/use-navigate-to-entity-record.js.map +1 -0
- package/build-module/components/block-editor/use-site-editor-settings.js +29 -4
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/editor/index.js +13 -10
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +8 -4
- package/build-module/components/global-styles/font-families.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +12 -11
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +14 -0
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-card.js +3 -2
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +28 -41
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-demo.js +5 -10
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +2 -2
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/index.js +10 -3
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +14 -25
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js +14 -13
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/resolvers.js +1 -1
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js +13 -3
- package/build-module/components/global-styles/font-library-modal/tab-panel-layout.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js +158 -6
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/index.js +36 -31
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +0 -9
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/screen-typography-element.js +3 -5
- package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js +12 -21
- package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +0 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/layout/index.js +0 -2
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +25 -13
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/dataviews-pattern-actions.js +81 -20
- package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +1 -4
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/index.js +2 -1
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +0 -1
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-templates-template-parts/index.js +6 -3
- package/build-module/components/page-templates-template-parts/index.js.map +1 -1
- package/build-module/components/routes/link.js +3 -6
- package/build-module/components/routes/link.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +3 -3
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/index.js +98 -19
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +24 -73
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +2 -2
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/site-icon/index.js +2 -2
- package/build-module/components/site-icon/index.js.map +1 -1
- package/build-module/components/template-part-converter/convert-to-template-part.js +0 -1
- package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
- package/build-module/components/welcome-guide/template.js +2 -2
- package/build-module/components/welcome-guide/template.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +16 -6
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/store/actions.js +7 -2
- package/build-module/store/actions.js.map +1 -1
- package/build-style/style-rtl.css +398 -224
- package/build-style/style.css +398 -224
- package/package.json +42 -42
- package/src/components/add-new-template/style.scss +0 -12
- package/src/components/block-editor/site-editor-canvas.js +23 -15
- package/src/components/block-editor/style.scss +2 -20
- package/src/components/block-editor/use-navigate-to-entity-record.js +25 -0
- package/src/components/block-editor/use-site-editor-settings.js +35 -4
- package/src/components/editor/index.js +11 -10
- package/src/components/global-styles/font-families.js +13 -4
- package/src/components/global-styles/font-library-modal/collection-font-variant.js +10 -8
- package/src/components/global-styles/font-library-modal/context.js +14 -0
- package/src/components/global-styles/font-library-modal/font-card.js +10 -4
- package/src/components/global-styles/font-library-modal/font-collection.js +25 -47
- package/src/components/global-styles/font-library-modal/font-demo.js +9 -10
- package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +2 -2
- package/src/components/global-styles/font-library-modal/index.js +8 -3
- package/src/components/global-styles/font-library-modal/installed-fonts.js +20 -34
- package/src/components/global-styles/font-library-modal/library-font-card.js +1 -1
- package/src/components/global-styles/font-library-modal/library-font-variant.js +12 -10
- package/src/components/global-styles/font-library-modal/resolvers.js +1 -1
- package/src/components/global-styles/font-library-modal/style.scss +13 -27
- package/src/components/global-styles/font-library-modal/tab-panel-layout.js +17 -0
- package/src/components/global-styles/font-library-modal/upload-fonts.js +192 -6
- package/src/components/global-styles/font-library-modal/utils/index.js +46 -39
- package/src/components/global-styles/screen-block.js +0 -12
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
- package/src/components/global-styles/screen-revisions/style.scss +21 -15
- package/src/components/global-styles/screen-typography-element.js +2 -4
- package/src/components/global-styles/style.scss +4 -0
- package/src/components/header-edit-mode/more-menu/index.js +10 -18
- package/src/components/header-edit-mode/style.scss +54 -6
- package/src/components/layout/style.scss +2 -7
- package/src/components/page/style.scss +0 -1
- package/src/components/page-pages/index.js +32 -23
- package/src/components/page-pages/style.scss +28 -27
- package/src/components/page-patterns/dataviews-pattern-actions.js +106 -30
- package/src/components/page-patterns/grid-item.js +0 -2
- package/src/components/page-patterns/index.js +1 -0
- package/src/components/page-patterns/style.scss +4 -9
- package/src/components/page-templates-template-parts/index.js +23 -16
- package/src/components/page-templates-template-parts/style.scss +16 -0
- package/src/components/routes/link.js +3 -12
- package/src/components/sidebar-dataviews/default-views.js +3 -3
- package/src/components/sidebar-edit-mode/index.js +122 -29
- package/src/components/sidebar-edit-mode/settings-header/index.js +28 -88
- package/src/components/sidebar-edit-mode/settings-header/style.scss +0 -87
- package/src/components/sidebar-edit-mode/sidebar-card/style.scss +3 -0
- package/src/components/sidebar-edit-mode/style.scss +4 -0
- package/src/components/sidebar-navigation-screen/style.scss +2 -1
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +9 -3
- package/src/components/site-hub/style.scss +0 -1
- package/src/components/site-icon/index.js +1 -1
- package/src/components/site-icon/style.scss +9 -1
- package/src/components/welcome-guide/template.js +2 -2
- package/src/hooks/commands/use-edit-mode-commands.js +26 -14
- package/src/store/actions.js +20 -3
- package/build/components/block-editor/back-button.js +0 -47
- package/build/components/block-editor/back-button.js.map +0 -1
- package/build/components/block-editor/use-post-link-props.js +0 -27
- package/build/components/block-editor/use-post-link-props.js.map +0 -1
- package/build/components/global-styles/font-library-modal/font-variant.js +0 -51
- package/build/components/global-styles/font-library-modal/font-variant.js.map +0 -1
- package/build/components/global-styles/font-library-modal/local-fonts.js +0 -196
- package/build/components/global-styles/font-library-modal/local-fonts.js.map +0 -1
- package/build-module/components/block-editor/back-button.js +0 -39
- package/build-module/components/block-editor/back-button.js.map +0 -1
- package/build-module/components/block-editor/use-post-link-props.js +0 -20
- package/build-module/components/block-editor/use-post-link-props.js.map +0 -1
- package/build-module/components/global-styles/font-library-modal/font-variant.js +0 -42
- package/build-module/components/global-styles/font-library-modal/font-variant.js.map +0 -1
- package/build-module/components/global-styles/font-library-modal/local-fonts.js +0 -187
- package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +0 -1
- package/src/components/block-editor/back-button.js +0 -48
- package/src/components/block-editor/use-post-link-props.js +0 -20
- package/src/components/global-styles/font-library-modal/font-variant.js +0 -53
- package/src/components/global-styles/font-library-modal/local-fonts.js +0 -239
|
@@ -1,19 +1,205 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import {
|
|
6
|
+
Button,
|
|
7
|
+
DropZone,
|
|
8
|
+
__experimentalSpacer as Spacer,
|
|
9
|
+
__experimentalText as Text,
|
|
10
|
+
__experimentalVStack as VStack,
|
|
11
|
+
FormFileUpload,
|
|
12
|
+
FlexItem,
|
|
13
|
+
privateApis as componentsPrivateApis,
|
|
14
|
+
} from '@wordpress/components';
|
|
15
|
+
import { useContext, useState } from '@wordpress/element';
|
|
5
16
|
|
|
6
17
|
/**
|
|
7
18
|
* Internal dependencies
|
|
8
19
|
*/
|
|
9
|
-
import
|
|
20
|
+
import { ALLOWED_FILE_EXTENSIONS } from './utils/constants';
|
|
21
|
+
import { FontLibraryContext } from './context';
|
|
22
|
+
import { Font } from '../../../../lib/lib-font.browser';
|
|
23
|
+
import makeFamiliesFromFaces from './utils/make-families-from-faces';
|
|
24
|
+
import { loadFontFaceInBrowser } from './utils';
|
|
25
|
+
import TabPanelLayout from './tab-panel-layout';
|
|
26
|
+
import { unlock } from '../../../lock-unlock';
|
|
27
|
+
|
|
28
|
+
const { ProgressBar } = unlock( componentsPrivateApis );
|
|
10
29
|
|
|
11
30
|
function UploadFonts() {
|
|
31
|
+
const { installFont, notice, setNotice } = useContext( FontLibraryContext );
|
|
32
|
+
const [ isUploading, setIsUploading ] = useState( false );
|
|
33
|
+
|
|
34
|
+
const handleDropZone = ( files ) => {
|
|
35
|
+
handleFilesUpload( files );
|
|
36
|
+
};
|
|
37
|
+
const onFilesUpload = ( event ) => {
|
|
38
|
+
handleFilesUpload( event.target.files );
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Filters the selected files to only allow the ones with the allowed extensions
|
|
43
|
+
*
|
|
44
|
+
* @param {Array} files The files to be filtered
|
|
45
|
+
* @return {void}
|
|
46
|
+
*/
|
|
47
|
+
const handleFilesUpload = ( files ) => {
|
|
48
|
+
setNotice( null );
|
|
49
|
+
setIsUploading( true );
|
|
50
|
+
const uniqueFilenames = new Set();
|
|
51
|
+
const selectedFiles = [ ...files ];
|
|
52
|
+
const allowedFiles = selectedFiles.filter( ( file ) => {
|
|
53
|
+
if ( uniqueFilenames.has( file.name ) ) {
|
|
54
|
+
return false; // Discard duplicates
|
|
55
|
+
}
|
|
56
|
+
// Eliminates files that are not allowed
|
|
57
|
+
const fileExtension = file.name.split( '.' ).pop().toLowerCase();
|
|
58
|
+
if ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {
|
|
59
|
+
uniqueFilenames.add( file.name );
|
|
60
|
+
return true; // Keep file if the extension is allowed
|
|
61
|
+
}
|
|
62
|
+
return false; // Discard file extension not allowed
|
|
63
|
+
} );
|
|
64
|
+
if ( allowedFiles.length > 0 ) {
|
|
65
|
+
loadFiles( allowedFiles );
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Loads the selected files and reads the font metadata
|
|
71
|
+
*
|
|
72
|
+
* @param {Array} files The files to be loaded
|
|
73
|
+
* @return {void}
|
|
74
|
+
*/
|
|
75
|
+
const loadFiles = async ( files ) => {
|
|
76
|
+
const fontFacesLoaded = await Promise.all(
|
|
77
|
+
files.map( async ( fontFile ) => {
|
|
78
|
+
const fontFaceData = await getFontFaceMetadata( fontFile );
|
|
79
|
+
await loadFontFaceInBrowser(
|
|
80
|
+
fontFaceData,
|
|
81
|
+
fontFaceData.file,
|
|
82
|
+
'all'
|
|
83
|
+
);
|
|
84
|
+
return fontFaceData;
|
|
85
|
+
} )
|
|
86
|
+
);
|
|
87
|
+
handleInstall( fontFacesLoaded );
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
// Create a function to read the file as array buffer
|
|
91
|
+
async function readFileAsArrayBuffer( file ) {
|
|
92
|
+
return new Promise( ( resolve, reject ) => {
|
|
93
|
+
const reader = new window.FileReader();
|
|
94
|
+
reader.readAsArrayBuffer( file );
|
|
95
|
+
reader.onload = () => resolve( reader.result );
|
|
96
|
+
reader.onerror = reject;
|
|
97
|
+
} );
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const getFontFaceMetadata = async ( fontFile ) => {
|
|
101
|
+
const buffer = await readFileAsArrayBuffer( fontFile );
|
|
102
|
+
const fontObj = new Font( 'Uploaded Font' );
|
|
103
|
+
fontObj.fromDataBuffer( buffer, fontFile.name );
|
|
104
|
+
// Assuming that fromDataBuffer triggers onload event and returning a Promise
|
|
105
|
+
const onloadEvent = await new Promise(
|
|
106
|
+
( resolve ) => ( fontObj.onload = resolve )
|
|
107
|
+
);
|
|
108
|
+
const font = onloadEvent.detail.font;
|
|
109
|
+
const { name } = font.opentype.tables;
|
|
110
|
+
const fontName = name.get( 16 ) || name.get( 1 );
|
|
111
|
+
const isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );
|
|
112
|
+
const fontWeight =
|
|
113
|
+
font.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';
|
|
114
|
+
const isVariable = !! font.opentype.tables.fvar;
|
|
115
|
+
const weightAxis =
|
|
116
|
+
isVariable &&
|
|
117
|
+
font.opentype.tables.fvar.axes.find(
|
|
118
|
+
( { tag } ) => tag === 'wght'
|
|
119
|
+
);
|
|
120
|
+
const weightRange = weightAxis
|
|
121
|
+
? `${ weightAxis.minValue } ${ weightAxis.maxValue }`
|
|
122
|
+
: null;
|
|
123
|
+
return {
|
|
124
|
+
file: fontFile,
|
|
125
|
+
fontFamily: fontName,
|
|
126
|
+
fontStyle: isItalic ? 'italic' : 'normal',
|
|
127
|
+
fontWeight: weightRange || fontWeight,
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Creates the font family definition and sends it to the server
|
|
133
|
+
*
|
|
134
|
+
* @param {Array} fontFaces The font faces to be installed
|
|
135
|
+
* @return {void}
|
|
136
|
+
*/
|
|
137
|
+
const handleInstall = async ( fontFaces ) => {
|
|
138
|
+
const fontFamilies = makeFamiliesFromFaces( fontFaces );
|
|
139
|
+
|
|
140
|
+
if ( fontFamilies.length > 1 ) {
|
|
141
|
+
setNotice( {
|
|
142
|
+
type: 'error',
|
|
143
|
+
message: __(
|
|
144
|
+
'Variants from only one font family can be uploaded at a time.'
|
|
145
|
+
),
|
|
146
|
+
} );
|
|
147
|
+
setIsUploading( false );
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
try {
|
|
152
|
+
await installFont( fontFamilies[ 0 ] );
|
|
153
|
+
setNotice( {
|
|
154
|
+
type: 'success',
|
|
155
|
+
message: __( 'Fonts were installed successfully.' ),
|
|
156
|
+
} );
|
|
157
|
+
} catch ( error ) {
|
|
158
|
+
setNotice( {
|
|
159
|
+
type: 'error',
|
|
160
|
+
message: error.message,
|
|
161
|
+
} );
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
setIsUploading( false );
|
|
165
|
+
};
|
|
166
|
+
|
|
12
167
|
return (
|
|
13
|
-
|
|
14
|
-
<
|
|
15
|
-
<
|
|
16
|
-
|
|
168
|
+
<TabPanelLayout notice={ notice }>
|
|
169
|
+
<DropZone onFilesDrop={ handleDropZone } />
|
|
170
|
+
<VStack className="font-library-modal__local-fonts">
|
|
171
|
+
{ isUploading && (
|
|
172
|
+
<FlexItem>
|
|
173
|
+
<div className="font-library-modal__upload-area">
|
|
174
|
+
<ProgressBar />
|
|
175
|
+
</div>
|
|
176
|
+
</FlexItem>
|
|
177
|
+
) }
|
|
178
|
+
{ ! isUploading && (
|
|
179
|
+
<FormFileUpload
|
|
180
|
+
accept={ ALLOWED_FILE_EXTENSIONS.map(
|
|
181
|
+
( ext ) => `.${ ext }`
|
|
182
|
+
).join( ',' ) }
|
|
183
|
+
multiple={ true }
|
|
184
|
+
onChange={ onFilesUpload }
|
|
185
|
+
render={ ( { openFileDialog } ) => (
|
|
186
|
+
<Button
|
|
187
|
+
className="font-library-modal__upload-area"
|
|
188
|
+
onClick={ openFileDialog }
|
|
189
|
+
>
|
|
190
|
+
{ __( 'Upload font' ) }
|
|
191
|
+
</Button>
|
|
192
|
+
) }
|
|
193
|
+
/>
|
|
194
|
+
) }
|
|
195
|
+
<Spacer margin={ 2 } />
|
|
196
|
+
<Text className="font-library-modal__upload-area__text">
|
|
197
|
+
{ __(
|
|
198
|
+
'Uploaded fonts appear in your library and can be used in your theme. Supported formats: .tff, .otf, .woff, and .woff2.'
|
|
199
|
+
) }
|
|
200
|
+
</Text>
|
|
201
|
+
</VStack>
|
|
202
|
+
</TabPanelLayout>
|
|
17
203
|
);
|
|
18
204
|
}
|
|
19
205
|
|
|
@@ -161,23 +161,28 @@ export function makeFontFamilyFormData( fontFamily ) {
|
|
|
161
161
|
|
|
162
162
|
export function makeFontFacesFormData( font ) {
|
|
163
163
|
if ( font?.fontFace ) {
|
|
164
|
-
const fontFacesFormData = font.fontFace.map( (
|
|
164
|
+
const fontFacesFormData = font.fontFace.map( ( item, faceIndex ) => {
|
|
165
|
+
const face = { ...item };
|
|
165
166
|
const formData = new FormData();
|
|
166
167
|
if ( face.file ) {
|
|
167
|
-
//
|
|
168
|
-
const
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
168
|
+
// Normalize to an array, since face.file may be a single file or an array of files.
|
|
169
|
+
const files = Array.isArray( face.file )
|
|
170
|
+
? face.file
|
|
171
|
+
: [ face.file ];
|
|
172
|
+
const src = [];
|
|
173
|
+
|
|
174
|
+
files.forEach( ( file, key ) => {
|
|
175
|
+
// Slugified file name because the it might contain spaces or characters treated differently on the server.
|
|
176
|
+
const fileId = `file-${ faceIndex }-${ key }`;
|
|
177
|
+
// Add the files to the formData
|
|
178
|
+
formData.append( fileId, file, file.name );
|
|
179
|
+
src.push( fileId );
|
|
180
|
+
} );
|
|
181
|
+
|
|
182
|
+
face.src = src.length === 1 ? src[ 0 ] : src;
|
|
183
|
+
delete face.file;
|
|
184
|
+
|
|
185
|
+
formData.append( 'font_face_settings', JSON.stringify( face ) );
|
|
181
186
|
} else {
|
|
182
187
|
formData.append( 'font_face_settings', JSON.stringify( face ) );
|
|
183
188
|
}
|
|
@@ -225,31 +230,33 @@ export async function batchInstallFontFaces( fontFamilyId, fontFacesData ) {
|
|
|
225
230
|
/*
|
|
226
231
|
* Downloads a font face asset from a URL to the client and returns a File object.
|
|
227
232
|
*/
|
|
228
|
-
export async function
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
233
|
+
export async function downloadFontFaceAssets( src ) {
|
|
234
|
+
// Normalize to an array, since `src` could be a string or array.
|
|
235
|
+
src = Array.isArray( src ) ? src : [ src ];
|
|
236
|
+
|
|
237
|
+
const files = await Promise.all(
|
|
238
|
+
src.map( async ( url ) => {
|
|
239
|
+
return fetch( new Request( url ) )
|
|
240
|
+
.then( ( response ) => {
|
|
241
|
+
if ( ! response.ok ) {
|
|
242
|
+
throw new Error(
|
|
243
|
+
`Error downloading font face asset from ${ url }. Server responded with status: ${ response.status }`
|
|
244
|
+
);
|
|
245
|
+
}
|
|
246
|
+
return response.blob();
|
|
247
|
+
} )
|
|
248
|
+
.then( ( blob ) => {
|
|
249
|
+
const filename = url.split( '/' ).pop();
|
|
250
|
+
const file = new File( [ blob ], filename, {
|
|
251
|
+
type: blob.type,
|
|
252
|
+
} );
|
|
253
|
+
return file;
|
|
254
|
+
} );
|
|
244
255
|
} )
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
error
|
|
250
|
-
);
|
|
251
|
-
throw error;
|
|
252
|
-
} );
|
|
256
|
+
);
|
|
257
|
+
|
|
258
|
+
// If we only have one file return it (not the array). Otherwise return all of them in the array.
|
|
259
|
+
return files.length === 1 ? files[ 0 ] : files;
|
|
253
260
|
}
|
|
254
261
|
|
|
255
262
|
/*
|
|
@@ -64,7 +64,6 @@ const {
|
|
|
64
64
|
useGlobalSetting,
|
|
65
65
|
useSettingsForBlockElement,
|
|
66
66
|
useHasColorPanel,
|
|
67
|
-
useHasEffectsPanel,
|
|
68
67
|
useHasFiltersPanel,
|
|
69
68
|
useHasImageSettingsPanel,
|
|
70
69
|
useGlobalStyle,
|
|
@@ -72,7 +71,6 @@ const {
|
|
|
72
71
|
ColorPanel: StylesColorPanel,
|
|
73
72
|
TypographyPanel: StylesTypographyPanel,
|
|
74
73
|
DimensionsPanel: StylesDimensionsPanel,
|
|
75
|
-
EffectsPanel: StylesEffectsPanel,
|
|
76
74
|
FiltersPanel: StylesFiltersPanel,
|
|
77
75
|
ImageSettingsPanel,
|
|
78
76
|
AdvancedPanel: StylesAdvancedPanel,
|
|
@@ -124,7 +122,6 @@ function ScreenBlock( { name, variation } ) {
|
|
|
124
122
|
const hasColorPanel = useHasColorPanel( settings );
|
|
125
123
|
const hasBorderPanel = useHasBorderPanel( settings );
|
|
126
124
|
const hasDimensionsPanel = useHasDimensionsPanel( settings );
|
|
127
|
-
const hasEffectsPanel = useHasEffectsPanel( settings );
|
|
128
125
|
const hasFiltersPanel = useHasFiltersPanel( settings );
|
|
129
126
|
const hasImageSettingsPanel = useHasImageSettingsPanel(
|
|
130
127
|
name,
|
|
@@ -279,15 +276,6 @@ function ScreenBlock( { name, variation } ) {
|
|
|
279
276
|
settings={ settings }
|
|
280
277
|
/>
|
|
281
278
|
) }
|
|
282
|
-
{ hasEffectsPanel && (
|
|
283
|
-
<StylesEffectsPanel
|
|
284
|
-
inheritedValue={ inheritedStyleWithLayout }
|
|
285
|
-
value={ styleWithLayout }
|
|
286
|
-
onChange={ setStyle }
|
|
287
|
-
settings={ settings }
|
|
288
|
-
includeLayoutControls
|
|
289
|
-
/>
|
|
290
|
-
) }
|
|
291
279
|
{ hasFiltersPanel && (
|
|
292
280
|
<StylesFiltersPanel
|
|
293
281
|
inheritedValue={ inheritedStyleWithLayout }
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
// This border serves as a background color in Windows High Contrast mode.
|
|
42
42
|
border: 4px solid transparent;
|
|
43
43
|
}
|
|
44
|
+
|
|
44
45
|
&.is-selected {
|
|
45
46
|
border-radius: $radius-block-ui;
|
|
46
47
|
|
|
@@ -48,9 +49,26 @@
|
|
|
48
49
|
outline: 3px solid transparent;
|
|
49
50
|
outline-offset: -2px;
|
|
50
51
|
|
|
52
|
+
color: var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));
|
|
53
|
+
background: rgba(var(--wp-admin-theme-color--rgb), 0.04);
|
|
54
|
+
|
|
55
|
+
.edit-site-global-styles-screen-revisions__revision-button {
|
|
56
|
+
opacity: 1;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.edit-site-global-styles-screen-revisions__date {
|
|
60
|
+
color: var(--wp-admin-theme-color);
|
|
61
|
+
}
|
|
62
|
+
|
|
51
63
|
&::before {
|
|
52
64
|
background: var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));
|
|
53
65
|
}
|
|
66
|
+
|
|
67
|
+
.edit-site-global-styles-screen-revisions__changes,
|
|
68
|
+
.edit-site-global-styles-screen-revisions__meta,
|
|
69
|
+
.edit-site-global-styles-screen-revisions__applied-text {
|
|
70
|
+
color: $gray-900;
|
|
71
|
+
}
|
|
54
72
|
}
|
|
55
73
|
|
|
56
74
|
&::after {
|
|
@@ -81,17 +99,6 @@
|
|
|
81
99
|
}
|
|
82
100
|
}
|
|
83
101
|
|
|
84
|
-
.is-selected {
|
|
85
|
-
color: var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));
|
|
86
|
-
background: rgba(var(--wp-admin-theme-color--rgb), 0.04);
|
|
87
|
-
.edit-site-global-styles-screen-revisions__revision-button {
|
|
88
|
-
opacity: 1;
|
|
89
|
-
}
|
|
90
|
-
.edit-site-global-styles-screen-revisions__date {
|
|
91
|
-
color: var(--wp-admin-theme-color);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
|
|
95
102
|
.edit-site-global-styles-screen-revisions__apply-button.is-primary,
|
|
96
103
|
.edit-site-global-styles-screen-revisions__applied-text {
|
|
97
104
|
align-self: flex-start;
|
|
@@ -99,10 +106,11 @@
|
|
|
99
106
|
margin: 0 $grid-unit-15 $grid-unit-15 $grid-unit-50;
|
|
100
107
|
}
|
|
101
108
|
|
|
109
|
+
.edit-site-global-styles-screen-revisions__changes,
|
|
110
|
+
.edit-site-global-styles-screen-revisions__meta,
|
|
102
111
|
.edit-site-global-styles-screen-revisions__applied-text {
|
|
103
|
-
color: $gray-
|
|
112
|
+
color: $gray-700;
|
|
104
113
|
font-size: 12px;
|
|
105
|
-
font-style: italic;
|
|
106
114
|
}
|
|
107
115
|
|
|
108
116
|
.edit-site-global-styles-screen-revisions__description {
|
|
@@ -119,12 +127,10 @@
|
|
|
119
127
|
|
|
120
128
|
.edit-site-global-styles-screen-revisions__changes,
|
|
121
129
|
.edit-site-global-styles-screen-revisions__meta {
|
|
122
|
-
color: $gray-600;
|
|
123
130
|
display: flex;
|
|
124
131
|
justify-content: start;
|
|
125
132
|
width: 100%;
|
|
126
133
|
align-items: flex-start;
|
|
127
|
-
font-size: 12px;
|
|
128
134
|
text-align: left;
|
|
129
135
|
img {
|
|
130
136
|
width: $grid-unit-20;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { __ } from '@wordpress/i18n';
|
|
4
|
+
import { __, _x } from '@wordpress/i18n';
|
|
5
5
|
import {
|
|
6
6
|
__experimentalToggleGroupControl as ToggleGroupControl,
|
|
7
7
|
__experimentalToggleGroupControlOption as ToggleGroupControlOption,
|
|
@@ -67,9 +67,7 @@ function ScreenTypographyElement( { element } ) {
|
|
|
67
67
|
>
|
|
68
68
|
<ToggleGroupControlOption
|
|
69
69
|
value="heading"
|
|
70
|
-
|
|
71
|
-
and applying the same style to h1-h6. */
|
|
72
|
-
label={ __( 'All' ) }
|
|
70
|
+
label={ _x( 'All', 'heading levels' ) }
|
|
73
71
|
/>
|
|
74
72
|
<ToggleGroupControlOption
|
|
75
73
|
value="h1"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { __, _x } from '@wordpress/i18n';
|
|
5
|
-
import {
|
|
5
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
6
6
|
import { displayShortcut } from '@wordpress/keycodes';
|
|
7
7
|
import { external } from '@wordpress/icons';
|
|
8
8
|
import { MenuGroup, MenuItem, VisuallyHidden } from '@wordpress/components';
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
PreferenceToggleMenuItem,
|
|
16
16
|
store as preferencesStore,
|
|
17
17
|
} from '@wordpress/preferences';
|
|
18
|
-
import { store as
|
|
18
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Internal dependencies
|
|
@@ -33,25 +33,16 @@ import SiteExport from './site-export';
|
|
|
33
33
|
import WelcomeGuideMenuItem from './welcome-guide-menu-item';
|
|
34
34
|
import CopyContentMenuItem from './copy-content-menu-item';
|
|
35
35
|
import ModeSwitcher from '../mode-switcher';
|
|
36
|
-
import { store as
|
|
36
|
+
import { store as editSiteStore } from '../../../store';
|
|
37
37
|
|
|
38
38
|
export default function MoreMenu( { showIconLabels } ) {
|
|
39
|
-
const registry = useRegistry();
|
|
40
|
-
|
|
41
|
-
const { closeGeneralSidebar } = useDispatch( siteEditorStore );
|
|
42
|
-
const { setIsInserterOpened, setIsListViewOpened } =
|
|
43
|
-
useDispatch( editorStore );
|
|
44
39
|
const { openModal } = useDispatch( interfaceStore );
|
|
45
40
|
const { set: setPreference } = useDispatch( preferencesStore );
|
|
41
|
+
const isBlockBasedTheme = useSelect( ( select ) => {
|
|
42
|
+
return select( coreStore ).getCurrentTheme().is_block_theme;
|
|
43
|
+
}, [] );
|
|
46
44
|
|
|
47
|
-
const toggleDistractionFree = (
|
|
48
|
-
registry.batch( () => {
|
|
49
|
-
setPreference( 'core', 'fixedToolbar', true );
|
|
50
|
-
setIsInserterOpened( false );
|
|
51
|
-
setIsListViewOpened( false );
|
|
52
|
-
closeGeneralSidebar();
|
|
53
|
-
} );
|
|
54
|
-
};
|
|
45
|
+
const { toggleDistractionFree } = useDispatch( editSiteStore );
|
|
55
46
|
|
|
56
47
|
const turnOffDistractionFree = () => {
|
|
57
48
|
setPreference( 'core', 'distractionFree', false );
|
|
@@ -86,9 +77,10 @@ export default function MoreMenu( { showIconLabels } ) {
|
|
|
86
77
|
<PreferenceToggleMenuItem
|
|
87
78
|
scope="core"
|
|
88
79
|
name="distractionFree"
|
|
89
|
-
onToggle={ toggleDistractionFree }
|
|
90
80
|
label={ __( 'Distraction free' ) }
|
|
91
81
|
info={ __( 'Write with calmness' ) }
|
|
82
|
+
handleToggling={ false }
|
|
83
|
+
onToggle={ toggleDistractionFree }
|
|
92
84
|
messageActivated={ __(
|
|
93
85
|
'Distraction free mode activated'
|
|
94
86
|
) }
|
|
@@ -120,7 +112,7 @@ export default function MoreMenu( { showIconLabels } ) {
|
|
|
120
112
|
fillProps={ { onClick: onClose } }
|
|
121
113
|
/>
|
|
122
114
|
<MenuGroup label={ __( 'Tools' ) }>
|
|
123
|
-
<SiteExport />
|
|
115
|
+
{ isBlockBasedTheme && <SiteExport /> }
|
|
124
116
|
<MenuItem
|
|
125
117
|
onClick={ () =>
|
|
126
118
|
openModal(
|
|
@@ -86,7 +86,13 @@ $header-toolbar-min-width: 335px;
|
|
|
86
86
|
.edit-site-header-edit-mode__actions {
|
|
87
87
|
display: inline-flex;
|
|
88
88
|
align-items: center;
|
|
89
|
-
|
|
89
|
+
flex-wrap: nowrap;
|
|
90
|
+
padding-right: $grid-unit-05;
|
|
91
|
+
|
|
92
|
+
@include break-small () {
|
|
93
|
+
padding-right: $grid-unit-10;
|
|
94
|
+
}
|
|
95
|
+
|
|
90
96
|
gap: $grid-unit-10;
|
|
91
97
|
}
|
|
92
98
|
|
|
@@ -149,9 +155,9 @@ $header-toolbar-min-width: 335px;
|
|
|
149
155
|
&::before {
|
|
150
156
|
content: "";
|
|
151
157
|
width: $border-width;
|
|
152
|
-
|
|
153
|
-
margin-bottom: $grid-unit-15;
|
|
158
|
+
height: $grid-unit-30;
|
|
154
159
|
background-color: $gray-300;
|
|
160
|
+
margin-top: $grid-unit-05;
|
|
155
161
|
margin-left: $grid-unit;
|
|
156
162
|
}
|
|
157
163
|
|
|
@@ -168,10 +174,36 @@ $header-toolbar-min-width: 335px;
|
|
|
168
174
|
|
|
169
175
|
.has-fixed-toolbar {
|
|
170
176
|
.selected-block-tools-wrapper {
|
|
171
|
-
overflow
|
|
177
|
+
overflow: hidden;
|
|
178
|
+
display: flex;
|
|
179
|
+
align-items: center;
|
|
180
|
+
height: $header-height;
|
|
172
181
|
|
|
173
182
|
.block-editor-block-contextual-toolbar {
|
|
174
183
|
border-bottom: 0;
|
|
184
|
+
height: 100%;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
// These rules ensure that icons are always positioned in a way that lines up with the rest of the icons in the toolbar.
|
|
188
|
+
.block-editor-block-toolbar {
|
|
189
|
+
height: 100%;
|
|
190
|
+
// Push down so that buttons are centered vertically.
|
|
191
|
+
// It should be 14px (60px header height - 32px compact button height = 28 / 2),
|
|
192
|
+
// but there is a -1px top-margin down the stack that affects this.
|
|
193
|
+
padding-top: math.div($header-height - $button-size-compact, 2) + 1;
|
|
194
|
+
|
|
195
|
+
// Match the height of other buttons in the header toolbar.
|
|
196
|
+
.components-button:not(.block-editor-block-mover-button) {
|
|
197
|
+
height: $button-size-compact;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
&::after {
|
|
202
|
+
content: "";
|
|
203
|
+
width: $border-width;
|
|
204
|
+
height: $grid-unit-30;
|
|
205
|
+
background-color: $gray-300;
|
|
206
|
+
margin-left: $grid-unit;
|
|
175
207
|
}
|
|
176
208
|
|
|
177
209
|
// Modified group borders.
|
|
@@ -182,9 +214,9 @@ $header-toolbar-min-width: 335px;
|
|
|
182
214
|
&::after {
|
|
183
215
|
content: "";
|
|
184
216
|
width: $border-width;
|
|
185
|
-
|
|
186
|
-
margin-bottom: $grid-unit-15;
|
|
217
|
+
height: $grid-unit-30;
|
|
187
218
|
background-color: $gray-300;
|
|
219
|
+
margin-top: $grid-unit-05;
|
|
188
220
|
margin-left: $grid-unit;
|
|
189
221
|
}
|
|
190
222
|
|
|
@@ -195,6 +227,22 @@ $header-toolbar-min-width: 335px;
|
|
|
195
227
|
}
|
|
196
228
|
}
|
|
197
229
|
|
|
230
|
+
.block-editor-block-mover {
|
|
231
|
+
// Match the height of other buttons in the header toolbar.
|
|
232
|
+
&.is-horizontal .block-editor-block-mover-button {
|
|
233
|
+
height: $button-size-compact;
|
|
234
|
+
overflow: visible;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
// Move up a little to prevent the toolbar shift when focus is on the vertical movers.
|
|
238
|
+
@include break-small() {
|
|
239
|
+
&:not(.is-horizontal) .block-editor-block-mover__move-button-container {
|
|
240
|
+
position: relative;
|
|
241
|
+
top: -10px;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
|
|
198
246
|
&.is-collapsed {
|
|
199
247
|
display: none;
|
|
200
248
|
}
|
|
@@ -19,15 +19,10 @@
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
.edit-site-layout.is-full-canvas & {
|
|
22
|
-
padding-right:
|
|
22
|
+
padding-right: 0;
|
|
23
23
|
border-radius: 0;
|
|
24
|
-
width:
|
|
24
|
+
width: $header-height;
|
|
25
25
|
box-shadow: none;
|
|
26
|
-
|
|
27
|
-
@include break-medium {
|
|
28
|
-
width: $header-height;
|
|
29
|
-
padding-right: 0;
|
|
30
|
-
}
|
|
31
26
|
}
|
|
32
27
|
}
|
|
33
28
|
|