@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 +1 @@
|
|
|
1
|
-
{"version":3,"names":["removeAccents","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","sortByTextFields","getPaginationResults","routerPrivateApis","Page","default","Link","useLink","AddNewTemplate","useAddedBy","AvatarImage","TEMPLATE_POST_TYPE","TEMPLATE_PART_POST_TYPE","ENUMERATION_TYPE","OPERATOR_IN","OPERATOR_NOT_IN","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","useResetTemplateAction","deleteTemplateAction","renameTemplateAction","postRevisionsAction","usePatternSettings","unlock","AddNewTemplatePart","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","SUPPORTED_LAYOUTS","window","__experimentalAdminViews","defaultConfigPerViewType","primaryField","mediaField","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","normalizeSearchInput","input","trim","toLowerCase","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","state","backPath","createElement","AuthorField","text","icon","imageUrl","withIcon","alignment","spacing","className","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","PageTemplatesTemplateParts","activeView","defaultView","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","_fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","description","Fragment","variant","elements","width","data","paginationInfo","totalItems","totalPages","filteredData","normalizedSearch","filter","slug","includes","textFields","resetTemplateAction","actions","onChangeView","newView","templateType","showIcon","toggleProps","isLoading","deferredRendering","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-templates-template-parts/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tDataViews,\n\tsortByTextFields,\n\tgetPaginationResults,\n} from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy, AvatarImage } from '../list/added-by';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tENUMERATION_TYPE,\n\tOPERATOR_IN,\n\tOPERATOR_NOT_IN,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport {\n\tuseResetTemplateAction,\n\tdeleteTemplateAction,\n\trenameTemplateAction,\n} from './actions';\nimport { postRevisionsAction } from '../actions';\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport AddNewTemplatePart from './add-new-template-part';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst SUPPORTED_LAYOUTS = window?.__experimentalAdminViews\n\t? [ LAYOUT_TABLE, LAYOUT_GRID, LAYOUT_LIST ]\n\t: [ LAYOUT_TABLE, LAYOUT_GRID ];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_TABLE,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_TABLE ],\n\tfilters: [],\n};\n\nfunction normalizeSearchInput( input = '' ) {\n\treturn removeAccents( input.trim().toLowerCase() );\n}\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\tif ( item.type === TEMPLATE_PART_POST_TYPE ) {\n\t\tlinkProps.state = {\n\t\t\tbackPath: '/wp_template_part/all',\n\t\t};\n\t}\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && <AvatarImage imageUrl={ imageUrl } /> }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"edit-site-list-added-by__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t>\n\t\t\t\t\t{ isEmpty &&\n\t\t\t\t\t\t( item.type === TEMPLATE_POST_TYPE\n\t\t\t\t\t\t\t? __( 'Empty template' )\n\t\t\t\t\t\t\t: __( 'Empty template part' ) ) }\n\t\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ blocks } /> }\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplatesTemplateParts( { postType } ) {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout } = params;\n\tconst defaultView = useMemo( () => {\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: window?.__experimentalAdminViews\n\t\t\t\t? layout ?? DEFAULT_VIEW.type\n\t\t\t\t: DEFAULT_VIEW.type,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'in',\n\t\t\t\t\t\t\t\tvalue: activeView,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'in',\n\t\t\t\t\t\t\t\tvalue: activeView,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tpostType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader:\n\t\t\t\t\tpostType === TEMPLATE_POST_TYPE\n\t\t\t\t\t\t? __( 'Template' )\n\t\t\t\t\t\t: __( 'Template Part' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\t\tif ( postType === TEMPLATE_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\tgetValue: ( { item } ) => item.description,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t—\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\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\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t}\n\t\t// TODO: The plan is to support fields reordering, which would require an API like `order` or something\n\t\t// similar. With the aforementioned API we wouldn't need to construct the fields array like this.\n\t\t_fields.push( {\n\t\t\theader: __( 'Author' ),\n\t\t\tid: 'author',\n\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\trender: ( { item } ) => {\n\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t},\n\t\t\tenableHiding: false,\n\t\t\ttype: ENUMERATION_TYPE,\n\t\t\telements: authors,\n\t\t\twidth: '1%',\n\t\t} );\n\t\treturn _fields;\n\t}, [ postType, authors, view.type ] );\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn {\n\t\t\t\tdata: EMPTY_ARRAY,\n\t\t\t\tpaginationInfo: { totalItems: 0, totalPages: 0 },\n\t\t\t};\n\t\t}\n\t\tlet filteredData = [ ...records ];\n\t\t// Handle global search.\n\t\tif ( view.search ) {\n\t\t\tconst normalizedSearch = normalizeSearchInput( view.search );\n\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\tconst title = item.title?.rendered || item.slug;\n\t\t\t\treturn (\n\t\t\t\t\tnormalizeSearchInput( title ).includes(\n\t\t\t\t\t\tnormalizedSearch\n\t\t\t\t\t) ||\n\t\t\t\t\tnormalizeSearchInput( item.description ).includes(\n\t\t\t\t\t\tnormalizedSearch\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} );\n\t\t}\n\n\t\t// Handle filters.\n\t\tif ( view.filters.length > 0 ) {\n\t\t\tview.filters.forEach( ( filter ) => {\n\t\t\t\tif (\n\t\t\t\t\tfilter.field === 'author' &&\n\t\t\t\t\tfilter.operator === OPERATOR_IN &&\n\t\t\t\t\t!! filter.value\n\t\t\t\t) {\n\t\t\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\t\t\treturn item.author_text === filter.value;\n\t\t\t\t\t} );\n\t\t\t\t} else if (\n\t\t\t\t\tfilter.field === 'author' &&\n\t\t\t\t\tfilter.operator === OPERATOR_NOT_IN &&\n\t\t\t\t\t!! filter.value\n\t\t\t\t) {\n\t\t\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\t\t\treturn item.author_text !== filter.value;\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Handle sorting.\n\t\tif ( view.sort ) {\n\t\t\tfilteredData = sortByTextFields( {\n\t\t\t\tdata: filteredData,\n\t\t\t\tview,\n\t\t\t\tfields,\n\t\t\t\ttextFields: [ 'title', 'author' ],\n\t\t\t} );\n\t\t}\n\t\t// Handle pagination.\n\t\treturn getPaginationResults( {\n\t\t\tdata: filteredData,\n\t\t\tview,\n\t\t} );\n\t}, [ records, view, fields ] );\n\n\tconst resetTemplateAction = useResetTemplateAction();\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\tresetTemplateAction,\n\t\t\tdeleteTemplateAction,\n\t\t\trenameTemplateAction,\n\t\t\tpostRevisionsAction,\n\t\t],\n\t\t[ resetTemplateAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={\n\t\t\t\tpostType === TEMPLATE_POST_TYPE\n\t\t\t\t\t? __( 'Templates' )\n\t\t\t\t\t: __( 'Template Parts' )\n\t\t\t}\n\t\t\tactions={\n\t\t\t\tpostType === TEMPLATE_POST_TYPE ? (\n\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\ttemplateType={ postType }\n\t\t\t\t\t\tshowIcon={ false }\n\t\t\t\t\t\ttoggleProps={ { variant: 'primary' } }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<AddNewTemplatePart />\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tdeferredRendering={ ! view.hiddenFields?.includes( 'preview' ) }\n\t\t\t\tsupportedLayouts={ SUPPORTED_LAYOUTS }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["removeAccents","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","sortByTextFields","getPaginationResults","routerPrivateApis","Page","default","Link","useLink","AddNewTemplate","useAddedBy","AvatarImage","TEMPLATE_POST_TYPE","TEMPLATE_PART_POST_TYPE","ENUMERATION_TYPE","OPERATOR_IN","OPERATOR_NOT_IN","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","useResetTemplateAction","deleteTemplateAction","renameTemplateAction","postRevisionsAction","usePatternSettings","unlock","AddNewTemplatePart","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","SUPPORTED_LAYOUTS","window","__experimentalAdminViews","defaultConfigPerViewType","primaryField","mediaField","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","normalizeSearchInput","input","trim","toLowerCase","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","state","backPath","createElement","AuthorField","text","icon","imageUrl","withIcon","alignment","spacing","className","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","PageTemplatesTemplateParts","activeView","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","_fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","description","Fragment","variant","elements","width","data","paginationInfo","totalItems","totalPages","filteredData","normalizedSearch","filter","slug","includes","textFields","resetTemplateAction","actions","onChangeView","newView","templateType","showIcon","toggleProps","isLoading","deferredRendering","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-templates-template-parts/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tDataViews,\n\tsortByTextFields,\n\tgetPaginationResults,\n} from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy, AvatarImage } from '../list/added-by';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tTEMPLATE_PART_POST_TYPE,\n\tENUMERATION_TYPE,\n\tOPERATOR_IN,\n\tOPERATOR_NOT_IN,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport {\n\tuseResetTemplateAction,\n\tdeleteTemplateAction,\n\trenameTemplateAction,\n} from './actions';\nimport { postRevisionsAction } from '../actions';\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport AddNewTemplatePart from './add-new-template-part';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst SUPPORTED_LAYOUTS = window?.__experimentalAdminViews\n\t? [ LAYOUT_TABLE, LAYOUT_GRID, LAYOUT_LIST ]\n\t: [ LAYOUT_TABLE, LAYOUT_GRID ];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_TABLE,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_TABLE ],\n\tfilters: [],\n};\n\nfunction normalizeSearchInput( input = '' ) {\n\treturn removeAccents( input.trim().toLowerCase() );\n}\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\tif ( item.type === TEMPLATE_PART_POST_TYPE ) {\n\t\tlinkProps.state = {\n\t\t\tbackPath: '/wp_template_part/all',\n\t\t};\n\t}\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && <AvatarImage imageUrl={ imageUrl } /> }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"edit-site-list-added-by__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span>{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty &&\n\t\t\t\t\t\t\t( item.type === TEMPLATE_POST_TYPE\n\t\t\t\t\t\t\t\t? __( 'Empty template' )\n\t\t\t\t\t\t\t\t: __( 'Empty template part' ) ) }\n\t\t\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ blocks } /> }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplatesTemplateParts( { postType } ) {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout } = params;\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = window?.__experimentalAdminViews\n\t\t\t? layout ?? DEFAULT_VIEW.type\n\t\t\t: DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'in',\n\t\t\t\t\t\t\t\tvalue: activeView,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'in',\n\t\t\t\t\t\t\t\tvalue: activeView,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tpostType,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader:\n\t\t\t\t\tpostType === TEMPLATE_POST_TYPE\n\t\t\t\t\t\t? __( 'Template' )\n\t\t\t\t\t\t: __( 'Template Part' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\t\tif ( postType === TEMPLATE_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\tgetValue: ( { item } ) => item.description,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t—\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\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\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t}\n\t\t// TODO: The plan is to support fields reordering, which would require an API like `order` or something\n\t\t// similar. With the aforementioned API we wouldn't need to construct the fields array like this.\n\t\t_fields.push( {\n\t\t\theader: __( 'Author' ),\n\t\t\tid: 'author',\n\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\trender: ( { item } ) => {\n\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t},\n\t\t\ttype: ENUMERATION_TYPE,\n\t\t\telements: authors,\n\t\t\twidth: '1%',\n\t\t} );\n\t\treturn _fields;\n\t}, [ postType, authors, view.type ] );\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn {\n\t\t\t\tdata: EMPTY_ARRAY,\n\t\t\t\tpaginationInfo: { totalItems: 0, totalPages: 0 },\n\t\t\t};\n\t\t}\n\t\tlet filteredData = [ ...records ];\n\t\t// Handle global search.\n\t\tif ( view.search ) {\n\t\t\tconst normalizedSearch = normalizeSearchInput( view.search );\n\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\tconst title = item.title?.rendered || item.slug;\n\t\t\t\treturn (\n\t\t\t\t\tnormalizeSearchInput( title ).includes(\n\t\t\t\t\t\tnormalizedSearch\n\t\t\t\t\t) ||\n\t\t\t\t\tnormalizeSearchInput( item.description ).includes(\n\t\t\t\t\t\tnormalizedSearch\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} );\n\t\t}\n\n\t\t// Handle filters.\n\t\tif ( view.filters.length > 0 ) {\n\t\t\tview.filters.forEach( ( filter ) => {\n\t\t\t\tif (\n\t\t\t\t\tfilter.field === 'author' &&\n\t\t\t\t\tfilter.operator === OPERATOR_IN &&\n\t\t\t\t\t!! filter.value\n\t\t\t\t) {\n\t\t\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\t\t\treturn item.author_text === filter.value;\n\t\t\t\t\t} );\n\t\t\t\t} else if (\n\t\t\t\t\tfilter.field === 'author' &&\n\t\t\t\t\tfilter.operator === OPERATOR_NOT_IN &&\n\t\t\t\t\t!! filter.value\n\t\t\t\t) {\n\t\t\t\t\tfilteredData = filteredData.filter( ( item ) => {\n\t\t\t\t\t\treturn item.author_text !== filter.value;\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t// Handle sorting.\n\t\tif ( view.sort ) {\n\t\t\tfilteredData = sortByTextFields( {\n\t\t\t\tdata: filteredData,\n\t\t\t\tview,\n\t\t\t\tfields,\n\t\t\t\ttextFields: [ 'title', 'author' ],\n\t\t\t} );\n\t\t}\n\t\t// Handle pagination.\n\t\treturn getPaginationResults( {\n\t\t\tdata: filteredData,\n\t\t\tview,\n\t\t} );\n\t}, [ records, view, fields ] );\n\n\tconst resetTemplateAction = useResetTemplateAction();\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\tresetTemplateAction,\n\t\t\tdeleteTemplateAction,\n\t\t\trenameTemplateAction,\n\t\t\tpostRevisionsAction,\n\t\t],\n\t\t[ resetTemplateAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={\n\t\t\t\tpostType === TEMPLATE_POST_TYPE\n\t\t\t\t\t? __( 'Templates' )\n\t\t\t\t\t: __( 'Template Parts' )\n\t\t\t}\n\t\t\tactions={\n\t\t\t\tpostType === TEMPLATE_POST_TYPE ? (\n\t\t\t\t\t<AddNewTemplate\n\t\t\t\t\t\ttemplateType={ postType }\n\t\t\t\t\t\tshowIcon={ false }\n\t\t\t\t\t\ttoggleProps={ { variant: 'primary' } }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<AddNewTemplatePart />\n\t\t\t\t)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tdeferredRendering={ ! view.hiddenFields?.includes( 'preview' ) }\n\t\t\t\tsupportedLayouts={ SUPPORTED_LAYOUTS }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -13,9 +13,10 @@ import { isPreviewingTheme, currentlyPreviewingTheme } from '../../utils/is-prev
|
|
|
13
13
|
const {
|
|
14
14
|
useHistory
|
|
15
15
|
} = unlock(routerPrivateApis);
|
|
16
|
-
export function
|
|
16
|
+
export function useLink(params, state, shouldReplace = false) {
|
|
17
|
+
const history = useHistory();
|
|
17
18
|
function onClick(event) {
|
|
18
|
-
event
|
|
19
|
+
event?.preventDefault();
|
|
19
20
|
if (shouldReplace) {
|
|
20
21
|
history.replace(params, state);
|
|
21
22
|
} else {
|
|
@@ -36,10 +37,6 @@ export function getPostLinkProps(history, params = {}, state, shouldReplace = fa
|
|
|
36
37
|
onClick
|
|
37
38
|
};
|
|
38
39
|
}
|
|
39
|
-
export function useLink(params, state, shouldReplace) {
|
|
40
|
-
const history = useHistory();
|
|
41
|
-
return getPostLinkProps(history, params, state, shouldReplace);
|
|
42
|
-
}
|
|
43
40
|
export default function Link({
|
|
44
41
|
params = {},
|
|
45
42
|
state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["addQueryArgs","getQueryArgs","removeQueryArgs","privateApis","routerPrivateApis","unlock","isPreviewingTheme","currentlyPreviewingTheme","useHistory","
|
|
1
|
+
{"version":3,"names":["addQueryArgs","getQueryArgs","removeQueryArgs","privateApis","routerPrivateApis","unlock","isPreviewingTheme","currentlyPreviewingTheme","useHistory","useLink","params","state","shouldReplace","history","onClick","event","preventDefault","replace","push","currentArgs","window","location","href","currentUrlWithoutArgs","Object","keys","wp_theme_preview","newUrl","Link","children","props","createElement"],"sources":["@wordpress/edit-site/src/components/routes/link.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addQueryArgs, getQueryArgs, removeQueryArgs } from '@wordpress/url';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport {\n\tisPreviewingTheme,\n\tcurrentlyPreviewingTheme,\n} from '../../utils/is-previewing-theme';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport function useLink( params, state, shouldReplace = false ) {\n\tconst history = useHistory();\n\tfunction onClick( event ) {\n\t\tevent?.preventDefault();\n\n\t\tif ( shouldReplace ) {\n\t\t\thistory.replace( params, state );\n\t\t} else {\n\t\t\thistory.push( params, state );\n\t\t}\n\t}\n\n\tconst currentArgs = getQueryArgs( window.location.href );\n\tconst currentUrlWithoutArgs = removeQueryArgs(\n\t\twindow.location.href,\n\t\t...Object.keys( currentArgs )\n\t);\n\n\tif ( isPreviewingTheme() ) {\n\t\tparams = {\n\t\t\t...params,\n\t\t\twp_theme_preview: currentlyPreviewingTheme(),\n\t\t};\n\t}\n\n\tconst newUrl = addQueryArgs( currentUrlWithoutArgs, params );\n\n\treturn {\n\t\thref: newUrl,\n\t\tonClick,\n\t};\n}\n\nexport default function Link( {\n\tparams = {},\n\tstate,\n\treplace: shouldReplace = false,\n\tchildren,\n\t...props\n} ) {\n\tconst { href, onClick } = useLink( params, state, shouldReplace );\n\n\treturn (\n\t\t<a href={ href } onClick={ onClick } { ...props }>\n\t\t\t{ children }\n\t\t</a>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,YAAY,EAAEC,YAAY,EAAEC,eAAe,QAAQ,gBAAgB;AAC5E,SAASC,WAAW,IAAIC,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SACCC,iBAAiB,EACjBC,wBAAwB,QAClB,iCAAiC;AAExC,MAAM;EAAEC;AAAW,CAAC,GAAGH,MAAM,CAAED,iBAAkB,CAAC;AAElD,OAAO,SAASK,OAAOA,CAAEC,MAAM,EAAEC,KAAK,EAAEC,aAAa,GAAG,KAAK,EAAG;EAC/D,MAAMC,OAAO,GAAGL,UAAU,CAAC,CAAC;EAC5B,SAASM,OAAOA,CAAEC,KAAK,EAAG;IACzBA,KAAK,EAAEC,cAAc,CAAC,CAAC;IAEvB,IAAKJ,aAAa,EAAG;MACpBC,OAAO,CAACI,OAAO,CAAEP,MAAM,EAAEC,KAAM,CAAC;IACjC,CAAC,MAAM;MACNE,OAAO,CAACK,IAAI,CAAER,MAAM,EAAEC,KAAM,CAAC;IAC9B;EACD;EAEA,MAAMQ,WAAW,GAAGlB,YAAY,CAAEmB,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC;EACxD,MAAMC,qBAAqB,GAAGrB,eAAe,CAC5CkB,MAAM,CAACC,QAAQ,CAACC,IAAI,EACpB,GAAGE,MAAM,CAACC,IAAI,CAAEN,WAAY,CAC7B,CAAC;EAED,IAAKb,iBAAiB,CAAC,CAAC,EAAG;IAC1BI,MAAM,GAAG;MACR,GAAGA,MAAM;MACTgB,gBAAgB,EAAEnB,wBAAwB,CAAC;IAC5C,CAAC;EACF;EAEA,MAAMoB,MAAM,GAAG3B,YAAY,CAAEuB,qBAAqB,EAAEb,MAAO,CAAC;EAE5D,OAAO;IACNY,IAAI,EAAEK,MAAM;IACZb;EACD,CAAC;AACF;AAEA,eAAe,SAASc,IAAIA,CAAE;EAC7BlB,MAAM,GAAG,CAAC,CAAC;EACXC,KAAK;EACLM,OAAO,EAAEL,aAAa,GAAG,KAAK;EAC9BiB,QAAQ;EACR,GAAGC;AACJ,CAAC,EAAG;EACH,MAAM;IAAER,IAAI;IAAER;EAAQ,CAAC,GAAGL,OAAO,CAAEC,MAAM,EAAEC,KAAK,EAAEC,aAAc,CAAC;EAEjE,OACCmB,aAAA;IAAGT,IAAI,EAAGA,IAAM;IAACR,OAAO,EAAGA,OAAS;IAAA,GAAMgB;EAAK,GAC5CD,QACA,CAAC;AAEN"}
|
|
@@ -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 { trash } from '@wordpress/icons';
|
|
6
6
|
|
|
7
7
|
/**
|
|
@@ -35,12 +35,12 @@ const DEFAULT_PAGE_BASE = {
|
|
|
35
35
|
// better to keep track of the hidden ones.
|
|
36
36
|
hiddenFields: ['date', 'featured-image'],
|
|
37
37
|
layout: {
|
|
38
|
-
...DEFAULT_CONFIG_PER_VIEW_TYPE[
|
|
38
|
+
...DEFAULT_CONFIG_PER_VIEW_TYPE[LAYOUT_TABLE]
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
export const DEFAULT_VIEWS = {
|
|
42
42
|
page: [{
|
|
43
|
-
title:
|
|
43
|
+
title: _x('All', 'pages'),
|
|
44
44
|
slug: 'all',
|
|
45
45
|
view: DEFAULT_PAGE_BASE
|
|
46
46
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","trash","LAYOUT_LIST","LAYOUT_TABLE","LAYOUT_GRID","OPERATOR_IN","DEFAULT_CONFIG_PER_VIEW_TYPE","primaryField","mediaField","DEFAULT_PAGE_BASE","type","search","filters","page","perPage","sort","field","direction","hiddenFields","layout","DEFAULT_VIEWS","title","slug","view","operator","value","icon"],"sources":["@wordpress/edit-site/src/components/sidebar-dataviews/default-views.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { trash } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLAYOUT_LIST,\n\tLAYOUT_TABLE,\n\tLAYOUT_GRID,\n\tOPERATOR_IN,\n} from '../../utils/constants';\n\nexport const DEFAULT_CONFIG_PER_VIEW_TYPE = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'featured-image',\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'featured-image',\n\t},\n};\n\nconst DEFAULT_PAGE_BASE = {\n\ttype: LAYOUT_TABLE,\n\tsearch: '',\n\tfilters: [],\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'date',\n\t\tdirection: 'desc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'date', 'featured-image' ],\n\tlayout: {\n\t\t...DEFAULT_CONFIG_PER_VIEW_TYPE[
|
|
1
|
+
{"version":3,"names":["__","_x","trash","LAYOUT_LIST","LAYOUT_TABLE","LAYOUT_GRID","OPERATOR_IN","DEFAULT_CONFIG_PER_VIEW_TYPE","primaryField","mediaField","DEFAULT_PAGE_BASE","type","search","filters","page","perPage","sort","field","direction","hiddenFields","layout","DEFAULT_VIEWS","title","slug","view","operator","value","icon"],"sources":["@wordpress/edit-site/src/components/sidebar-dataviews/default-views.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { trash } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLAYOUT_LIST,\n\tLAYOUT_TABLE,\n\tLAYOUT_GRID,\n\tOPERATOR_IN,\n} from '../../utils/constants';\n\nexport const DEFAULT_CONFIG_PER_VIEW_TYPE = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'featured-image',\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'featured-image',\n\t},\n};\n\nconst DEFAULT_PAGE_BASE = {\n\ttype: LAYOUT_TABLE,\n\tsearch: '',\n\tfilters: [],\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'date',\n\t\tdirection: 'desc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'date', 'featured-image' ],\n\tlayout: {\n\t\t...DEFAULT_CONFIG_PER_VIEW_TYPE[ LAYOUT_TABLE ],\n\t},\n};\n\nexport const DEFAULT_VIEWS = {\n\tpage: [\n\t\t{\n\t\t\ttitle: _x( 'All', 'pages' ),\n\t\t\tslug: 'all',\n\t\t\tview: DEFAULT_PAGE_BASE,\n\t\t},\n\t\t{\n\t\t\ttitle: __( 'Drafts' ),\n\t\t\tslug: 'drafts',\n\t\t\tview: {\n\t\t\t\t...DEFAULT_PAGE_BASE,\n\t\t\t\tfilters: [\n\t\t\t\t\t{ field: 'status', operator: OPERATOR_IN, value: 'draft' },\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttitle: __( 'Trash' ),\n\t\t\tslug: 'trash',\n\t\t\ticon: trash,\n\t\t\tview: {\n\t\t\t\t...DEFAULT_PAGE_BASE,\n\t\t\t\tfilters: [\n\t\t\t\t\t{ field: 'status', operator: OPERATOR_IN, value: 'trash' },\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t],\n};\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SAASC,KAAK,QAAQ,kBAAkB;;AAExC;AACA;AACA;AACA,SACCC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,WAAW,QACL,uBAAuB;AAE9B,OAAO,MAAMC,4BAA4B,GAAG;EAC3C,CAAEH,YAAY,GAAI;IACjBI,YAAY,EAAE;EACf,CAAC;EACD,CAAEH,WAAW,GAAI;IAChBI,UAAU,EAAE,gBAAgB;IAC5BD,YAAY,EAAE;EACf,CAAC;EACD,CAAEL,WAAW,GAAI;IAChBK,YAAY,EAAE,OAAO;IACrBC,UAAU,EAAE;EACb;AACD,CAAC;AAED,MAAMC,iBAAiB,GAAG;EACzBC,IAAI,EAAEP,YAAY;EAClBQ,MAAM,EAAE,EAAE;EACVC,OAAO,EAAE,EAAE;EACXC,IAAI,EAAE,CAAC;EACPC,OAAO,EAAE,EAAE;EACXC,IAAI,EAAE;IACLC,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE;EACZ,CAAC;EACD;EACA;EACAC,YAAY,EAAE,CAAE,MAAM,EAAE,gBAAgB,CAAE;EAC1CC,MAAM,EAAE;IACP,GAAGb,4BAA4B,CAAEH,YAAY;EAC9C;AACD,CAAC;AAED,OAAO,MAAMiB,aAAa,GAAG;EAC5BP,IAAI,EAAE,CACL;IACCQ,KAAK,EAAErB,EAAE,CAAE,KAAK,EAAE,OAAQ,CAAC;IAC3BsB,IAAI,EAAE,KAAK;IACXC,IAAI,EAAEd;EACP,CAAC,EACD;IACCY,KAAK,EAAEtB,EAAE,CAAE,QAAS,CAAC;IACrBuB,IAAI,EAAE,QAAQ;IACdC,IAAI,EAAE;MACL,GAAGd,iBAAiB;MACpBG,OAAO,EAAE,CACR;QAAEI,KAAK,EAAE,QAAQ;QAAEQ,QAAQ,EAAEnB,WAAW;QAAEoB,KAAK,EAAE;MAAQ,CAAC;IAE5D;EACD,CAAC,EACD;IACCJ,KAAK,EAAEtB,EAAE,CAAE,OAAQ,CAAC;IACpBuB,IAAI,EAAE,OAAO;IACbI,IAAI,EAAEzB,KAAK;IACXsB,IAAI,EAAE;MACL,GAAGd,iBAAiB;MACpBG,OAAO,EAAE,CACR;QAAEI,KAAK,EAAE,QAAQ;QAAEQ,QAAQ,EAAEnB,WAAW;QAAEoB,KAAK,EAAE;MAAQ,CAAC;IAE5D;EACD,CAAC;AAEH,CAAC"}
|
|
@@ -2,14 +2,14 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
|
-
import { createSlotFill } from '@wordpress/components';
|
|
5
|
+
import { createSlotFill, privateApis as componentsPrivateApis } from '@wordpress/components';
|
|
6
6
|
import { isRTL, __ } from '@wordpress/i18n';
|
|
7
7
|
import { drawerLeft, drawerRight } from '@wordpress/icons';
|
|
8
|
-
import { useEffect } from '@wordpress/element';
|
|
8
|
+
import { useCallback, useContext, useEffect, useRef } from '@wordpress/element';
|
|
9
9
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
10
10
|
import { store as interfaceStore } from '@wordpress/interface';
|
|
11
11
|
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
12
|
-
import { store as
|
|
12
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Internal dependencies
|
|
@@ -23,28 +23,94 @@ import TemplatePanel from './template-panel';
|
|
|
23
23
|
import PluginTemplateSettingPanel from '../plugin-template-setting-panel';
|
|
24
24
|
import { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';
|
|
25
25
|
import { store as editSiteStore } from '../../store';
|
|
26
|
+
import { unlock } from '../../lock-unlock';
|
|
27
|
+
const {
|
|
28
|
+
Tabs
|
|
29
|
+
} = unlock(componentsPrivateApis);
|
|
26
30
|
const {
|
|
27
31
|
Slot: InspectorSlot,
|
|
28
32
|
Fill: InspectorFill
|
|
29
33
|
} = createSlotFill('EditSiteSidebarInspector');
|
|
30
34
|
export const SidebarInspectorFill = InspectorFill;
|
|
35
|
+
const FillContents = ({
|
|
36
|
+
sidebarName,
|
|
37
|
+
isEditingPage,
|
|
38
|
+
supportsGlobalStyles
|
|
39
|
+
}) => {
|
|
40
|
+
const tabListRef = useRef(null);
|
|
41
|
+
// Because `DefaultSidebar` renders a `ComplementaryArea`, we
|
|
42
|
+
// need to forward the `Tabs` context so it can be passed through the
|
|
43
|
+
// underlying slot/fill.
|
|
44
|
+
const tabsContextValue = useContext(Tabs.Context);
|
|
45
|
+
|
|
46
|
+
// This effect addresses a race condition caused by tabbing from the last
|
|
47
|
+
// block in the editor into the settings sidebar. Without this effect, the
|
|
48
|
+
// selected tab and browser focus can become separated in an unexpected way.
|
|
49
|
+
// (e.g the "block" tab is focused, but the "post" tab is selected).
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
const tabsElements = Array.from(tabListRef.current?.querySelectorAll('[role="tab"]') || []);
|
|
52
|
+
const selectedTabElement = tabsElements.find(
|
|
53
|
+
// We are purposefully using a custom `data-tab-id` attribute here
|
|
54
|
+
// because we don't want rely on any assumptions about `Tabs`
|
|
55
|
+
// component internals.
|
|
56
|
+
element => element.getAttribute('data-tab-id') === sidebarName);
|
|
57
|
+
const activeElement = selectedTabElement?.ownerDocument.activeElement;
|
|
58
|
+
const tabsHasFocus = tabsElements.some(element => {
|
|
59
|
+
return activeElement && activeElement.id === element.id;
|
|
60
|
+
});
|
|
61
|
+
if (tabsHasFocus && selectedTabElement && selectedTabElement.id !== activeElement?.id) {
|
|
62
|
+
selectedTabElement?.focus();
|
|
63
|
+
}
|
|
64
|
+
}, [sidebarName]);
|
|
65
|
+
return createElement(Fragment, null, createElement(DefaultSidebar, {
|
|
66
|
+
identifier: sidebarName,
|
|
67
|
+
title: __('Settings'),
|
|
68
|
+
icon: isRTL() ? drawerLeft : drawerRight,
|
|
69
|
+
closeLabel: __('Close Settings'),
|
|
70
|
+
header: createElement(Tabs.Context.Provider, {
|
|
71
|
+
value: tabsContextValue
|
|
72
|
+
}, createElement(SettingsHeader, {
|
|
73
|
+
ref: tabListRef
|
|
74
|
+
})),
|
|
75
|
+
headerClassName: "edit-site-sidebar-edit-mode__panel-tabs"
|
|
76
|
+
// This classname is added so we can apply a corrective negative
|
|
77
|
+
// margin to the panel.
|
|
78
|
+
// see https://github.com/WordPress/gutenberg/pull/55360#pullrequestreview-1737671049
|
|
79
|
+
,
|
|
80
|
+
className: "edit-site-sidebar__panel"
|
|
81
|
+
}, createElement(Tabs.Context.Provider, {
|
|
82
|
+
value: tabsContextValue
|
|
83
|
+
}, createElement(Tabs.TabPanel, {
|
|
84
|
+
tabId: SIDEBAR_TEMPLATE,
|
|
85
|
+
focusable: false
|
|
86
|
+
}, isEditingPage ? createElement(PagePanels, null) : createElement(TemplatePanel, null), createElement(PluginTemplateSettingPanel.Slot, null)), createElement(Tabs.TabPanel, {
|
|
87
|
+
tabId: SIDEBAR_BLOCK,
|
|
88
|
+
focusable: false
|
|
89
|
+
}, createElement(InspectorSlot, {
|
|
90
|
+
bubblesVirtually: true
|
|
91
|
+
})))), supportsGlobalStyles && createElement(GlobalStylesSidebar, null));
|
|
92
|
+
};
|
|
31
93
|
export function SidebarComplementaryAreaFills() {
|
|
32
94
|
const {
|
|
33
95
|
sidebar,
|
|
34
96
|
isEditorSidebarOpened,
|
|
35
97
|
hasBlockSelection,
|
|
36
98
|
supportsGlobalStyles,
|
|
37
|
-
isEditingPage
|
|
99
|
+
isEditingPage,
|
|
100
|
+
isEditorOpen
|
|
38
101
|
} = useSelect(select => {
|
|
39
102
|
const _sidebar = select(interfaceStore).getActiveComplementaryArea(STORE_NAME);
|
|
40
103
|
const _isEditorSidebarOpened = [SIDEBAR_BLOCK, SIDEBAR_TEMPLATE].includes(_sidebar);
|
|
41
|
-
const
|
|
104
|
+
const {
|
|
105
|
+
getCanvasMode
|
|
106
|
+
} = unlock(select(editSiteStore));
|
|
42
107
|
return {
|
|
43
108
|
sidebar: _sidebar,
|
|
44
109
|
isEditorSidebarOpened: _isEditorSidebarOpened,
|
|
45
110
|
hasBlockSelection: !!select(blockEditorStore).getBlockSelectionStart(),
|
|
46
|
-
supportsGlobalStyles:
|
|
47
|
-
isEditingPage: select(editSiteStore).isPage()
|
|
111
|
+
supportsGlobalStyles: select(coreStore).getCurrentTheme()?.is_block_theme,
|
|
112
|
+
isEditingPage: select(editSiteStore).isPage(),
|
|
113
|
+
isEditorOpen: getCanvasMode() === 'edit'
|
|
48
114
|
};
|
|
49
115
|
}, []);
|
|
50
116
|
const {
|
|
@@ -68,17 +134,30 @@ export function SidebarComplementaryAreaFills() {
|
|
|
68
134
|
if (!isEditorSidebarOpened) {
|
|
69
135
|
sidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;
|
|
70
136
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
},
|
|
81
|
-
|
|
82
|
-
|
|
137
|
+
|
|
138
|
+
// `newSelectedTabId` could technically be falsey if no tab is selected (i.e.
|
|
139
|
+
// the initial render) or when we don't want a tab displayed (i.e. the
|
|
140
|
+
// sidebar is closed). These cases should both be covered by the `!!` check
|
|
141
|
+
// below, so we shouldn't need any additional falsey handling.
|
|
142
|
+
const onTabSelect = useCallback(newSelectedTabId => {
|
|
143
|
+
if (!!newSelectedTabId) {
|
|
144
|
+
enableComplementaryArea(STORE_NAME, newSelectedTabId);
|
|
145
|
+
}
|
|
146
|
+
}, [enableComplementaryArea]);
|
|
147
|
+
return createElement(Tabs
|
|
148
|
+
// Due to how this component is controlled (via a value from the
|
|
149
|
+
// edit-site store), when the sidebar closes the currently selected
|
|
150
|
+
// tab can't be found. This causes the component to continuously reset
|
|
151
|
+
// the selection to `null` in an infinite loop. Proactively setting
|
|
152
|
+
// the selected tab to `null` avoids that.
|
|
153
|
+
, {
|
|
154
|
+
selectedTabId: isEditorOpen && isEditorSidebarOpened ? sidebarName : null,
|
|
155
|
+
onSelect: onTabSelect,
|
|
156
|
+
selectOnMove: false
|
|
157
|
+
}, createElement(FillContents, {
|
|
158
|
+
sidebarName: sidebarName,
|
|
159
|
+
isEditingPage: isEditingPage,
|
|
160
|
+
supportsGlobalStyles: supportsGlobalStyles
|
|
161
|
+
}));
|
|
83
162
|
}
|
|
84
163
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSlotFill","isRTL","__","drawerLeft","drawerRight","useEffect","useSelect","useDispatch","store","interfaceStore","blockEditorStore","editorStore","DefaultSidebar","GlobalStylesSidebar","STORE_NAME","SettingsHeader","PagePanels","TemplatePanel","PluginTemplateSettingPanel","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","editSiteStore","Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","supportsGlobalStyles","isEditingPage","select","_sidebar","getActiveComplementaryArea","_isEditorSidebarOpened","includes","settings","getSettings","getBlockSelectionStart","supportsTemplatePartsMode","isPage","getRenderingMode","enableComplementaryArea","sidebarName","createElement","Fragment","identifier","title","icon","closeLabel","header","headerClassName","bubblesVirtually"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport PagePanels from './page-panels';\nimport TemplatePanel from './template-panel';\nimport PluginTemplateSettingPanel from '../plugin-template-setting-panel';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\nimport { store as editSiteStore } from '../../store';\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nexport function SidebarComplementaryAreaFills() {\n\tconst {\n\t\tsidebar,\n\t\tisEditorSidebarOpened,\n\t\thasBlockSelection,\n\t\tsupportsGlobalStyles,\n\t\tisEditingPage,\n\t} = useSelect( ( select ) => {\n\t\tconst _sidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( STORE_NAME );\n\t\tconst _isEditorSidebarOpened = [\n\t\t\tSIDEBAR_BLOCK,\n\t\t\tSIDEBAR_TEMPLATE,\n\t\t].includes( _sidebar );\n\t\tconst settings = select( editSiteStore ).getSettings();\n\t\treturn {\n\t\t\tsidebar: _sidebar,\n\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\thasBlockSelection:\n\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\tsupportsGlobalStyles: ! settings?.supportsTemplatePartsMode,\n\t\t\tisEditingPage:\n\t\t\t\tselect( editSiteStore ).isPage() &&\n\t\t\t\tselect( editorStore ).getRenderingMode() !== 'template-only',\n\t\t};\n\t}, [] );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\t// Don't automatically switch tab when the sidebar is closed or when we\n\t\t// are focused on page content.\n\t\tif ( ! isEditorSidebarOpened ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( hasBlockSelection ) {\n\t\t\tif ( ! isEditingPage ) {\n\t\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t\t}\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [\n\t\thasBlockSelection,\n\t\tisEditorSidebarOpened,\n\t\tisEditingPage,\n\t\tenableComplementaryArea,\n\t] );\n\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\t\theaderClassName=\"edit-site-sidebar-edit-mode__panel-tabs\"\n\t\t\t>\n\t\t\t\t{ sidebarName === SIDEBAR_TEMPLATE && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ isEditingPage ? <PagePanels /> : <TemplatePanel /> }\n\t\t\t\t\t\t<PluginTemplateSettingPanel.Slot />\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ sidebarName === SIDEBAR_BLOCK && (\n\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t) }\n\t\t\t</DefaultSidebar>\n\t\t\t{ supportsGlobalStyles && <GlobalStylesSidebar /> }\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["createSlotFill","privateApis","componentsPrivateApis","isRTL","__","drawerLeft","drawerRight","useCallback","useContext","useEffect","useRef","useSelect","useDispatch","store","interfaceStore","blockEditorStore","coreStore","DefaultSidebar","GlobalStylesSidebar","STORE_NAME","SettingsHeader","PagePanels","TemplatePanel","PluginTemplateSettingPanel","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","editSiteStore","unlock","Tabs","Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","FillContents","sidebarName","isEditingPage","supportsGlobalStyles","tabListRef","tabsContextValue","Context","tabsElements","Array","from","current","querySelectorAll","selectedTabElement","find","element","getAttribute","activeElement","ownerDocument","tabsHasFocus","some","id","focus","createElement","Fragment","identifier","title","icon","closeLabel","header","Provider","value","ref","headerClassName","className","TabPanel","tabId","focusable","bubblesVirtually","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","isEditorOpen","select","_sidebar","getActiveComplementaryArea","_isEditorSidebarOpened","includes","getCanvasMode","getBlockSelectionStart","getCurrentTheme","is_block_theme","isPage","enableComplementaryArea","onTabSelect","newSelectedTabId","selectedTabId","onSelect","selectOnMove"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tcreateSlotFill,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { drawerLeft, drawerRight } from '@wordpress/icons';\nimport { useCallback, useContext, useEffect, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport PagePanels from './page-panels';\nimport TemplatePanel from './template-panel';\nimport PluginTemplateSettingPanel from '../plugin-template-setting-panel';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nconst FillContents = ( {\n\tsidebarName,\n\tisEditingPage,\n\tsupportsGlobalStyles,\n} ) => {\n\tconst tabListRef = useRef( null );\n\t// Because `DefaultSidebar` renders a `ComplementaryArea`, we\n\t// need to forward the `Tabs` context so it can be passed through the\n\t// underlying slot/fill.\n\tconst tabsContextValue = useContext( Tabs.Context );\n\n\t// This effect addresses a race condition caused by tabbing from the last\n\t// block in the editor into the settings sidebar. Without this effect, the\n\t// selected tab and browser focus can become separated in an unexpected way.\n\t// (e.g the \"block\" tab is focused, but the \"post\" tab is selected).\n\tuseEffect( () => {\n\t\tconst tabsElements = Array.from(\n\t\t\ttabListRef.current?.querySelectorAll( '[role=\"tab\"]' ) || []\n\t\t);\n\t\tconst selectedTabElement = tabsElements.find(\n\t\t\t// We are purposefully using a custom `data-tab-id` attribute here\n\t\t\t// because we don't want rely on any assumptions about `Tabs`\n\t\t\t// component internals.\n\t\t\t( element ) => element.getAttribute( 'data-tab-id' ) === sidebarName\n\t\t);\n\t\tconst activeElement = selectedTabElement?.ownerDocument.activeElement;\n\t\tconst tabsHasFocus = tabsElements.some( ( element ) => {\n\t\t\treturn activeElement && activeElement.id === element.id;\n\t\t} );\n\t\tif (\n\t\t\ttabsHasFocus &&\n\t\t\tselectedTabElement &&\n\t\t\tselectedTabElement.id !== activeElement?.id\n\t\t) {\n\t\t\tselectedTabElement?.focus();\n\t\t}\n\t}, [ sidebarName ] );\n\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ isRTL() ? drawerLeft : drawerRight }\n\t\t\t\tcloseLabel={ __( 'Close Settings' ) }\n\t\t\t\theader={\n\t\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t\t<SettingsHeader ref={ tabListRef } />\n\t\t\t\t\t</Tabs.Context.Provider>\n\t\t\t\t}\n\t\t\t\theaderClassName=\"edit-site-sidebar-edit-mode__panel-tabs\"\n\t\t\t\t// This classname is added so we can apply a corrective negative\n\t\t\t\t// margin to the panel.\n\t\t\t\t// see https://github.com/WordPress/gutenberg/pull/55360#pullrequestreview-1737671049\n\t\t\t\tclassName=\"edit-site-sidebar__panel\"\n\t\t\t>\n\t\t\t\t<Tabs.Context.Provider value={ tabsContextValue }>\n\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\ttabId={ SIDEBAR_TEMPLATE }\n\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEditingPage ? <PagePanels /> : <TemplatePanel /> }\n\t\t\t\t\t\t<PluginTemplateSettingPanel.Slot />\n\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t<Tabs.TabPanel tabId={ SIDEBAR_BLOCK } focusable={ false }>\n\t\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t</Tabs.Context.Provider>\n\t\t\t</DefaultSidebar>\n\t\t\t{ supportsGlobalStyles && <GlobalStylesSidebar /> }\n\t\t</>\n\t);\n};\n\nexport function SidebarComplementaryAreaFills() {\n\tconst {\n\t\tsidebar,\n\t\tisEditorSidebarOpened,\n\t\thasBlockSelection,\n\t\tsupportsGlobalStyles,\n\t\tisEditingPage,\n\t\tisEditorOpen,\n\t} = useSelect( ( select ) => {\n\t\tconst _sidebar =\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( STORE_NAME );\n\n\t\tconst _isEditorSidebarOpened = [\n\t\t\tSIDEBAR_BLOCK,\n\t\t\tSIDEBAR_TEMPLATE,\n\t\t].includes( _sidebar );\n\t\tconst { getCanvasMode } = unlock( select( editSiteStore ) );\n\n\t\treturn {\n\t\t\tsidebar: _sidebar,\n\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\thasBlockSelection:\n\t\t\t\t!! select( blockEditorStore ).getBlockSelectionStart(),\n\t\t\tsupportsGlobalStyles:\n\t\t\t\tselect( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t\tisEditingPage: select( editSiteStore ).isPage(),\n\t\t\tisEditorOpen: getCanvasMode() === 'edit',\n\t\t};\n\t}, [] );\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\t// Don't automatically switch tab when the sidebar is closed or when we\n\t\t// are focused on page content.\n\t\tif ( ! isEditorSidebarOpened ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( hasBlockSelection ) {\n\t\t\tif ( ! isEditingPage ) {\n\t\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t\t}\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [\n\t\thasBlockSelection,\n\t\tisEditorSidebarOpened,\n\t\tisEditingPage,\n\t\tenableComplementaryArea,\n\t] );\n\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\n\t// `newSelectedTabId` could technically be falsey if no tab is selected (i.e.\n\t// the initial render) or when we don't want a tab displayed (i.e. the\n\t// sidebar is closed). These cases should both be covered by the `!!` check\n\t// below, so we shouldn't need any additional falsey handling.\n\tconst onTabSelect = useCallback(\n\t\t( newSelectedTabId ) => {\n\t\t\tif ( !! newSelectedTabId ) {\n\t\t\t\tenableComplementaryArea( STORE_NAME, newSelectedTabId );\n\t\t\t}\n\t\t},\n\t\t[ enableComplementaryArea ]\n\t);\n\n\treturn (\n\t\t<Tabs\n\t\t\t// Due to how this component is controlled (via a value from the\n\t\t\t// edit-site store), when the sidebar closes the currently selected\n\t\t\t// tab can't be found. This causes the component to continuously reset\n\t\t\t// the selection to `null` in an infinite loop. Proactively setting\n\t\t\t// the selected tab to `null` avoids that.\n\t\t\tselectedTabId={\n\t\t\t\tisEditorOpen && isEditorSidebarOpened ? sidebarName : null\n\t\t\t}\n\t\t\tonSelect={ onTabSelect }\n\t\t\tselectOnMove={ false }\n\t\t>\n\t\t\t<FillContents\n\t\t\t\tsidebarName={ sidebarName }\n\t\t\t\tisEditingPage={ isEditingPage }\n\t\t\t\tsupportsGlobalStyles={ supportsGlobalStyles }\n\t\t\t/>\n\t\t</Tabs>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -1,85 +1,36 @@
|
|
|
1
1
|
import { createElement } from "react";
|
|
2
|
-
/**
|
|
3
|
-
* External dependencies
|
|
4
|
-
*/
|
|
5
|
-
import classnames from 'classnames';
|
|
6
|
-
|
|
7
2
|
/**
|
|
8
3
|
* WordPress dependencies
|
|
9
4
|
*/
|
|
10
|
-
import {
|
|
11
|
-
import { __
|
|
12
|
-
import { useSelect
|
|
13
|
-
import { store as interfaceStore } from '@wordpress/interface';
|
|
5
|
+
import { privateApis as componentsPrivateApis } from '@wordpress/components';
|
|
6
|
+
import { __ } from '@wordpress/i18n';
|
|
7
|
+
import { useSelect } from '@wordpress/data';
|
|
14
8
|
import { store as editorStore } from '@wordpress/editor';
|
|
9
|
+
import { forwardRef } from '@wordpress/element';
|
|
15
10
|
|
|
16
11
|
/**
|
|
17
12
|
* Internal dependencies
|
|
18
13
|
*/
|
|
19
|
-
import { STORE_NAME } from '../../../store/constants';
|
|
20
14
|
import { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from '../constants';
|
|
21
|
-
import {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
};
|
|
41
|
-
});
|
|
42
|
-
const entityLabel = POST_TYPE_LABELS[entityType] || POST_TYPE_LABELS[TEMPLATE_POST_TYPE];
|
|
43
|
-
const {
|
|
44
|
-
enableComplementaryArea
|
|
45
|
-
} = useDispatch(interfaceStore);
|
|
46
|
-
const openTemplateSettings = () => enableComplementaryArea(STORE_NAME, SIDEBAR_TEMPLATE);
|
|
47
|
-
const openBlockSettings = () => enableComplementaryArea(STORE_NAME, SIDEBAR_BLOCK);
|
|
48
|
-
let templateAriaLabel;
|
|
49
|
-
if (isEditingPage) {
|
|
50
|
-
templateAriaLabel = sidebarName === SIDEBAR_TEMPLATE ?
|
|
51
|
-
// translators: ARIA label for the Template sidebar tab, selected.
|
|
52
|
-
__('Page (selected)') :
|
|
53
|
-
// translators: ARIA label for the Template Settings Sidebar tab, not selected.
|
|
54
|
-
__('Page');
|
|
55
|
-
} else {
|
|
56
|
-
templateAriaLabel = sidebarName === SIDEBAR_TEMPLATE ?
|
|
57
|
-
// translators: ARIA label for the Template sidebar tab, selected.
|
|
58
|
-
sprintf(__('%s (selected)'), entityLabel) :
|
|
59
|
-
// translators: ARIA label for the Template Settings Sidebar tab, not selected.
|
|
60
|
-
entityLabel;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/* Use a list so screen readers will announce how many tabs there are. */
|
|
64
|
-
return createElement("ul", null, createElement("li", null, createElement(Button, {
|
|
65
|
-
onClick: openTemplateSettings,
|
|
66
|
-
className: classnames('edit-site-sidebar-edit-mode__panel-tab', {
|
|
67
|
-
'is-active': sidebarName === SIDEBAR_TEMPLATE
|
|
68
|
-
}),
|
|
69
|
-
"aria-label": templateAriaLabel,
|
|
70
|
-
"data-label": isEditingPage ? __('Page') : entityLabel
|
|
71
|
-
}, isEditingPage ? __('Page') : entityLabel)), createElement("li", null, createElement(Button, {
|
|
72
|
-
onClick: openBlockSettings,
|
|
73
|
-
className: classnames('edit-site-sidebar-edit-mode__panel-tab', {
|
|
74
|
-
'is-active': sidebarName === SIDEBAR_BLOCK
|
|
75
|
-
}),
|
|
76
|
-
"aria-label": sidebarName === SIDEBAR_BLOCK ?
|
|
77
|
-
// translators: ARIA label for the Block Settings Sidebar tab, selected.
|
|
78
|
-
__('Block (selected)') :
|
|
79
|
-
// translators: ARIA label for the Block Settings Sidebar tab, not selected.
|
|
80
|
-
__('Block'),
|
|
81
|
-
"data-label": __('Block')
|
|
82
|
-
}, __('Block'))));
|
|
15
|
+
import { unlock } from '../../../lock-unlock';
|
|
16
|
+
const {
|
|
17
|
+
Tabs
|
|
18
|
+
} = unlock(componentsPrivateApis);
|
|
19
|
+
const SettingsHeader = (_, ref) => {
|
|
20
|
+
const postTypeLabel = useSelect(select => select(editorStore).getPostTypeLabel(), []);
|
|
21
|
+
return createElement(Tabs.TabList, {
|
|
22
|
+
ref: ref
|
|
23
|
+
}, createElement(Tabs.Tab, {
|
|
24
|
+
tabId: SIDEBAR_TEMPLATE
|
|
25
|
+
// Used for focus management in the SettingsSidebar component.
|
|
26
|
+
,
|
|
27
|
+
"data-tab-id": SIDEBAR_TEMPLATE
|
|
28
|
+
}, postTypeLabel), createElement(Tabs.Tab, {
|
|
29
|
+
tabId: SIDEBAR_BLOCK
|
|
30
|
+
// Used for focus management in the SettingsSidebar component.
|
|
31
|
+
,
|
|
32
|
+
"data-tab-id": SIDEBAR_BLOCK
|
|
33
|
+
}, __('Block')));
|
|
83
34
|
};
|
|
84
|
-
export default SettingsHeader;
|
|
35
|
+
export default forwardRef(SettingsHeader);
|
|
85
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["privateApis","componentsPrivateApis","__","useSelect","store","editorStore","forwardRef","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","unlock","Tabs","SettingsHeader","_","ref","postTypeLabel","select","getPostTypeLabel","createElement","TabList","Tab","tabId"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/settings-header/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as componentsPrivateApis } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from '../constants';\nimport { unlock } from '../../../lock-unlock';\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst SettingsHeader = ( _, ref ) => {\n\tconst postTypeLabel = useSelect(\n\t\t( select ) => select( editorStore ).getPostTypeLabel(),\n\t\t[]\n\t);\n\n\treturn (\n\t\t<Tabs.TabList ref={ ref }>\n\t\t\t<Tabs.Tab\n\t\t\t\ttabId={ SIDEBAR_TEMPLATE }\n\t\t\t\t// Used for focus management in the SettingsSidebar component.\n\t\t\t\tdata-tab-id={ SIDEBAR_TEMPLATE }\n\t\t\t>\n\t\t\t\t{ postTypeLabel }\n\t\t\t</Tabs.Tab>\n\t\t\t<Tabs.Tab\n\t\t\t\ttabId={ SIDEBAR_BLOCK }\n\t\t\t\t// Used for focus management in the SettingsSidebar component.\n\t\t\t\tdata-tab-id={ SIDEBAR_BLOCK }\n\t\t\t>\n\t\t\t\t{ __( 'Block' ) }\n\t\t\t</Tabs.Tab>\n\t\t</Tabs.TabList>\n\t);\n};\n\nexport default forwardRef( SettingsHeader );\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,IAAIC,qBAAqB,QAAQ,uBAAuB;AAC5E,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;AACxD,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,SAASC,aAAa,EAAEC,gBAAgB,QAAQ,cAAc;AAC9D,SAASC,MAAM,QAAQ,sBAAsB;AAE7C,MAAM;EAAEC;AAAK,CAAC,GAAGD,MAAM,CAAER,qBAAsB,CAAC;AAEhD,MAAMU,cAAc,GAAGA,CAAEC,CAAC,EAAEC,GAAG,KAAM;EACpC,MAAMC,aAAa,GAAGX,SAAS,CAC5BY,MAAM,IAAMA,MAAM,CAAEV,WAAY,CAAC,CAACW,gBAAgB,CAAC,CAAC,EACtD,EACD,CAAC;EAED,OACCC,aAAA,CAACP,IAAI,CAACQ,OAAO;IAACL,GAAG,EAAGA;EAAK,GACxBI,aAAA,CAACP,IAAI,CAACS,GAAG;IACRC,KAAK,EAAGZ;IACR;IAAA;IACA,eAAcA;EAAkB,GAE9BM,aACO,CAAC,EACXG,aAAA,CAACP,IAAI,CAACS,GAAG;IACRC,KAAK,EAAGb;IACR;IAAA;IACA,eAAcA;EAAe,GAE3BL,EAAE,CAAE,OAAQ,CACL,CACG,CAAC;AAEjB,CAAC;AAED,eAAeI,UAAU,CAAEK,cAAe,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { sentenceCase } from 'change-case';
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
|
-
import { __, sprintf } from '@wordpress/i18n';
|
|
10
|
+
import { __, _x, sprintf } from '@wordpress/i18n';
|
|
11
11
|
import { store as coreStore } from '@wordpress/core-data';
|
|
12
12
|
import { store as editorStore } from '@wordpress/editor';
|
|
13
13
|
import { useSelect } from '@wordpress/data';
|
|
@@ -64,7 +64,7 @@ export default function usePatternDetails(postType, postId) {
|
|
|
64
64
|
if (postType === PATTERN_TYPES.user || postType === TEMPLATE_PART_POST_TYPE) {
|
|
65
65
|
details.push({
|
|
66
66
|
label: __('Syncing'),
|
|
67
|
-
value: record.wp_pattern_sync_status === PATTERN_SYNC_TYPES.unsynced ?
|
|
67
|
+
value: record.wp_pattern_sync_status === PATTERN_SYNC_TYPES.unsynced ? _x('Not synced', 'Text that indicates that the pattern is not synchronized') : _x('Synced', 'Text that indicates that the pattern is synchronized')
|
|
68
68
|
});
|
|
69
69
|
if (record.wp_pattern_category?.length === 0) {
|
|
70
70
|
details.push({
|