@wordpress/edit-site 5.22.0 → 5.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/build/components/actions/index.js +115 -15
- package/build/components/actions/index.js.map +1 -1
- package/build/components/add-new-template/new-template.js +0 -7
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +7 -2
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +54 -63
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/dataviews/add-filter.js +91 -0
- package/build/components/dataviews/add-filter.js.map +1 -0
- package/build/components/dataviews/constants.js +14 -0
- package/build/components/dataviews/constants.js.map +1 -0
- package/build/components/dataviews/dataviews.js +30 -9
- package/build/components/dataviews/dataviews.js.map +1 -1
- package/build/components/dataviews/filter-summary.js +62 -0
- package/build/components/dataviews/filter-summary.js.map +1 -0
- package/build/components/dataviews/filters.js +37 -48
- package/build/components/dataviews/filters.js.map +1 -1
- package/build/components/dataviews/index.js +9 -2
- package/build/components/dataviews/index.js.map +1 -1
- package/build/components/dataviews/item-actions.js +139 -17
- package/build/components/dataviews/item-actions.js.map +1 -1
- package/build/components/dataviews/pagination.js +7 -2
- package/build/components/dataviews/pagination.js.map +1 -1
- package/build/components/dataviews/reset-filters.js +33 -0
- package/build/components/dataviews/reset-filters.js.map +1 -0
- package/build/components/dataviews/search.js +1 -0
- package/build/components/dataviews/search.js.map +1 -1
- package/build/components/dataviews/view-actions.js +49 -32
- package/build/components/dataviews/view-actions.js.map +1 -1
- package/build/components/dataviews/view-grid.js +48 -25
- package/build/components/dataviews/view-grid.js.map +1 -1
- package/build/components/dataviews/view-list.js +130 -14
- package/build/components/dataviews/view-list.js.map +1 -1
- package/build/components/dataviews/view-side-by-side.js +20 -0
- package/build/components/dataviews/view-side-by-side.js.map +1 -0
- package/build/components/editor/index.js +52 -56
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/index.js +15 -2
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build/components/global-styles/header.js +4 -2
- package/build/components/global-styles/header.js.map +1 -1
- package/build/components/global-styles/screen-block-list.js +22 -16
- package/build/components/global-styles/screen-block-list.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +66 -24
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +52 -24
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build/components/global-styles/screen-root.js +3 -3
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/ui.js +31 -39
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles-renderer/index.js +1 -1
- package/build/components/global-styles-renderer/index.js.map +1 -1
- package/build/components/header-edit-mode/document-actions/index.js +21 -16
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/header-edit-mode/document-tools/index.js +160 -0
- package/build/components/header-edit-mode/document-tools/index.js.map +1 -0
- package/build/components/header-edit-mode/index.js +50 -117
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/index.js +1 -1
- package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/site-export.js +2 -6
- package/build/components/header-edit-mode/more-menu/site-export.js.map +1 -1
- package/build/components/layout/index.js +4 -19
- package/build/components/layout/index.js.map +1 -1
- package/build/components/list/added-by.js +44 -54
- package/build/components/list/added-by.js.map +1 -1
- package/build/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +11 -15
- package/build/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
- package/build/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/build/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
- package/build/components/page-content-focus-notifications/index.js +22 -0
- package/build/components/page-content-focus-notifications/index.js.map +1 -0
- package/build/components/page-main/index.js +2 -1
- package/build/components/page-main/index.js.map +1 -1
- package/build/components/page-pages/index.js +137 -88
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-pages/side-editor.js +25 -0
- package/build/components/page-pages/side-editor.js.map +1 -0
- package/build/components/page-patterns/grid-item.js +2 -2
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/patterns-list.js +3 -3
- package/build/components/page-patterns/patterns-list.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +2 -2
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates/dataviews-templates.js +316 -0
- package/build/components/page-templates/dataviews-templates.js.map +1 -0
- package/build/components/page-templates/template-actions.js +168 -0
- package/build/components/page-templates/template-actions.js.map +1 -0
- package/build/components/preferences-modal/index.js +1 -1
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/save-button/index.js +9 -6
- package/build/components/save-button/index.js.map +1 -1
- package/build/components/save-hub/index.js +14 -0
- package/build/components/save-hub/index.js.map +1 -1
- package/build/components/sidebar/index.js +1 -2
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-dataviews/add-new-view.js +124 -0
- package/build/components/sidebar-dataviews/add-new-view.js.map +1 -0
- package/build/components/sidebar-dataviews/custom-dataviews-list.js +191 -0
- package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
- package/build/components/sidebar-dataviews/dataview-item.js +71 -0
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -0
- package/build/components/sidebar-dataviews/default-views.js +65 -0
- package/build/components/sidebar-dataviews/default-views.js.map +1 -0
- package/build/components/sidebar-dataviews/index.js +21 -38
- package/build/components/sidebar-dataviews/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/default-sidebar.js +2 -6
- package/build/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
- package/build/components/sidebar-edit-mode/index.js +6 -5
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js +18 -29
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +22 -8
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-status.js +8 -5
- package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +5 -8
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +6 -14
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +4 -12
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
- package/build/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
- package/build/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +10 -6
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/hooks.js +3 -3
- package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/index.js +23 -4
- package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js +3 -11
- package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build/components/site-hub/index.js +18 -6
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/start-template-options/index.js +12 -16
- package/build/components/start-template-options/index.js.map +1 -1
- package/build/components/style-book/index.js +22 -12
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +150 -55
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/components/template-part-converter/convert-to-regular.js +1 -1
- package/build/components/template-part-converter/convert-to-regular.js.map +1 -1
- package/build/components/welcome-guide/page.js +2 -2
- package/build/components/welcome-guide/page.js.map +1 -1
- package/build/components/welcome-guide/template.js +6 -3
- package/build/components/welcome-guide/template.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +24 -14
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +3 -1
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/hooks/template-part-edit.js +6 -2
- package/build/hooks/template-part-edit.js.map +1 -1
- package/build/index.js +0 -3
- package/build/index.js.map +1 -1
- package/build/store/actions.js +39 -83
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +2 -27
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +0 -23
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +1 -40
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +33 -67
- package/build/store/selectors.js.map +1 -1
- package/build/utils/constants.js +3 -14
- package/build/utils/constants.js.map +1 -1
- package/build-module/components/actions/index.js +113 -14
- package/build-module/components/actions/index.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +0 -7
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +7 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +54 -62
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/dataviews/add-filter.js +84 -0
- package/build-module/components/dataviews/add-filter.js.map +1 -0
- package/build-module/components/dataviews/constants.js +6 -0
- package/build-module/components/dataviews/constants.js.map +1 -0
- package/build-module/components/dataviews/dataviews.js +29 -9
- package/build-module/components/dataviews/dataviews.js.map +1 -1
- package/build-module/components/dataviews/filter-summary.js +55 -0
- package/build-module/components/dataviews/filter-summary.js.map +1 -0
- package/build-module/components/dataviews/filters.js +37 -48
- package/build-module/components/dataviews/filters.js.map +1 -1
- package/build-module/components/dataviews/index.js +1 -1
- package/build-module/components/dataviews/index.js.map +1 -1
- package/build-module/components/dataviews/item-actions.js +142 -20
- package/build-module/components/dataviews/item-actions.js.map +1 -1
- package/build-module/components/dataviews/pagination.js +7 -2
- package/build-module/components/dataviews/pagination.js.map +1 -1
- package/build-module/components/dataviews/reset-filters.js +26 -0
- package/build-module/components/dataviews/reset-filters.js.map +1 -0
- package/build-module/components/dataviews/search.js +1 -0
- package/build-module/components/dataviews/search.js.map +1 -1
- package/build-module/components/dataviews/view-actions.js +50 -33
- package/build-module/components/dataviews/view-actions.js.map +1 -1
- package/build-module/components/dataviews/view-grid.js +49 -26
- package/build-module/components/dataviews/view-grid.js.map +1 -1
- package/build-module/components/dataviews/view-list.js +132 -16
- package/build-module/components/dataviews/view-list.js.map +1 -1
- package/build-module/components/dataviews/view-side-by-side.js +12 -0
- package/build-module/components/dataviews/view-side-by-side.js.map +1 -0
- package/build-module/components/editor/index.js +55 -59
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/index.js +14 -2
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build-module/components/global-styles/header.js +4 -2
- package/build-module/components/global-styles/header.js.map +1 -1
- package/build-module/components/global-styles/screen-block-list.js +23 -17
- package/build-module/components/global-styles/screen-block-list.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +67 -25
- package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +51 -24
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +3 -3
- package/build-module/components/global-styles/screen-root.js.map +1 -1
- package/build-module/components/global-styles/ui.js +31 -39
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles-renderer/index.js +1 -1
- package/build-module/components/global-styles-renderer/index.js.map +1 -1
- package/build-module/components/header-edit-mode/document-actions/index.js +21 -16
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/header-edit-mode/document-tools/index.js +152 -0
- package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -0
- package/build-module/components/header-edit-mode/index.js +54 -121
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/site-export.js +2 -6
- package/build-module/components/header-edit-mode/more-menu/site-export.js.map +1 -1
- package/build-module/components/layout/index.js +5 -20
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/list/added-by.js +45 -56
- package/build-module/components/list/added-by.js.map +1 -1
- package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +11 -15
- package/build-module/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
- package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/build-module/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
- package/build-module/components/page-content-focus-notifications/index.js +14 -0
- package/build-module/components/page-content-focus-notifications/index.js.map +1 -0
- package/build-module/components/page-main/index.js +2 -1
- package/build-module/components/page-main/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +141 -90
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-pages/side-editor.js +17 -0
- package/build-module/components/page-pages/side-editor.js.map +1 -0
- package/build-module/components/page-patterns/grid-item.js +2 -2
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/patterns-list.js +4 -4
- package/build-module/components/page-patterns/patterns-list.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +3 -3
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-templates/dataviews-templates.js +308 -0
- package/build-module/components/page-templates/dataviews-templates.js.map +1 -0
- package/build-module/components/page-templates/template-actions.js +157 -0
- package/build-module/components/page-templates/template-actions.js.map +1 -0
- package/build-module/components/preferences-modal/index.js +1 -1
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/save-button/index.js +11 -8
- package/build-module/components/save-button/index.js.map +1 -1
- package/build-module/components/save-hub/index.js +14 -0
- package/build-module/components/save-hub/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +1 -2
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/add-new-view.js +116 -0
- package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -0
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +182 -0
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -0
- package/build-module/components/sidebar-dataviews/dataview-item.js +63 -0
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -0
- package/build-module/components/sidebar-dataviews/default-views.js +57 -0
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -0
- package/build-module/components/sidebar-dataviews/index.js +22 -39
- package/build-module/components/sidebar-dataviews/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/default-sidebar.js +2 -6
- package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/index.js +6 -5
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +20 -31
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +21 -7
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +9 -6
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +6 -8
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +8 -16
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +5 -13
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js +2 -6
- package/build-module/components/sidebar-edit-mode/plugin-sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +10 -6
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +4 -4
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/index.js +23 -4
- package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js +3 -11
- package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build-module/components/site-hub/index.js +19 -7
- package/build-module/components/site-hub/index.js.map +1 -1
- package/build-module/components/start-template-options/index.js +13 -16
- package/build-module/components/start-template-options/index.js.map +1 -1
- package/build-module/components/style-book/index.js +22 -12
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +150 -56
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/components/template-part-converter/convert-to-regular.js +1 -1
- package/build-module/components/template-part-converter/convert-to-regular.js.map +1 -1
- package/build-module/components/welcome-guide/page.js +2 -2
- package/build-module/components/welcome-guide/page.js.map +1 -1
- package/build-module/components/welcome-guide/template.js +6 -3
- package/build-module/components/welcome-guide/template.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +24 -14
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +4 -2
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/hooks/template-part-edit.js +6 -2
- package/build-module/hooks/template-part-edit.js.map +1 -1
- package/build-module/index.js +0 -3
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +37 -80
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +1 -25
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +0 -22
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +1 -38
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +27 -62
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/constants.js +1 -11
- package/build-module/utils/constants.js.map +1 -1
- package/build-style/style-rtl.css +221 -181
- package/build-style/style.css +221 -181
- package/package.json +41 -41
- package/src/components/actions/index.js +150 -14
- package/src/components/add-new-template/new-template.js +0 -5
- package/src/components/block-editor/site-editor-canvas.js +8 -2
- package/src/components/block-editor/style.scss +0 -87
- package/src/components/block-editor/use-site-editor-settings.js +68 -89
- package/src/components/dataviews/README.md +80 -83
- package/src/components/dataviews/add-filter.js +108 -0
- package/src/components/dataviews/constants.js +5 -0
- package/src/components/dataviews/dataviews.js +28 -10
- package/src/components/dataviews/filter-summary.js +79 -0
- package/src/components/dataviews/filters.js +48 -58
- package/src/components/dataviews/index.js +1 -1
- package/src/components/dataviews/item-actions.js +169 -30
- package/src/components/dataviews/pagination.js +9 -4
- package/src/components/dataviews/reset-filters.js +26 -0
- package/src/components/dataviews/search.js +1 -0
- package/src/components/dataviews/style.scss +89 -9
- package/src/components/dataviews/view-actions.js +77 -49
- package/src/components/dataviews/view-grid.js +63 -38
- package/src/components/dataviews/view-list.js +182 -18
- package/src/components/dataviews/view-side-by-side.js +9 -0
- package/src/components/editor/index.js +135 -123
- package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/src/components/global-styles/font-library-modal/utils/index.js +20 -9
- package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +46 -15
- package/src/components/global-styles/font-library-modal/utils/test/wpKebabCase.spec.js +28 -0
- package/src/components/global-styles/header.js +2 -1
- package/src/components/global-styles/screen-block-list.js +37 -26
- package/src/components/global-styles/screen-revisions/index.js +91 -35
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +65 -45
- package/src/components/global-styles/screen-revisions/style.scss +52 -28
- package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -6
- package/src/components/global-styles/screen-root.js +2 -1
- package/src/components/global-styles/style.scss +0 -11
- package/src/components/global-styles/ui.js +60 -75
- package/src/components/global-styles-renderer/index.js +1 -1
- package/src/components/header-edit-mode/document-actions/index.js +20 -18
- package/src/components/header-edit-mode/document-tools/index.js +201 -0
- package/src/components/header-edit-mode/index.js +87 -184
- package/src/components/header-edit-mode/more-menu/index.js +1 -1
- package/src/components/header-edit-mode/more-menu/site-export.js +2 -6
- package/src/components/header-edit-mode/style.scss +35 -2
- package/src/components/layout/index.js +4 -11
- package/src/components/layout/style.scss +6 -18
- package/src/components/list/added-by.js +24 -64
- package/src/components/list/style.scss +11 -13
- package/src/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +10 -22
- package/src/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/src/components/page-content-focus-notifications/index.js +14 -0
- package/src/components/page-main/index.js +6 -1
- package/src/components/page-pages/index.js +167 -91
- package/src/components/page-pages/side-editor.js +14 -0
- package/src/components/page-patterns/grid-item.js +3 -3
- package/src/components/page-patterns/patterns-list.js +10 -4
- package/src/components/page-patterns/use-patterns.js +4 -3
- package/src/components/page-templates/dataviews-templates.js +345 -0
- package/src/components/page-templates/style.scss +13 -0
- package/src/components/page-templates/template-actions.js +209 -0
- package/src/components/preferences-modal/index.js +1 -1
- package/src/components/save-button/index.js +37 -24
- package/src/components/save-hub/index.js +15 -0
- package/src/components/save-hub/style.scss +7 -0
- package/src/components/sidebar/index.js +1 -2
- package/src/components/sidebar-dataviews/add-new-view.js +141 -0
- package/src/components/sidebar-dataviews/custom-dataviews-list.js +229 -0
- package/src/components/sidebar-dataviews/dataview-item.js +67 -0
- package/src/components/sidebar-dataviews/default-views.js +59 -0
- package/src/components/sidebar-dataviews/index.js +36 -45
- package/src/components/sidebar-dataviews/style.scss +29 -0
- package/src/components/sidebar-edit-mode/default-sidebar.js +6 -6
- package/src/components/sidebar-edit-mode/index.js +13 -9
- package/src/components/sidebar-edit-mode/page-panels/edit-template.js +31 -57
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +20 -9
- package/src/components/sidebar-edit-mode/page-panels/page-status.js +6 -6
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +10 -8
- package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +13 -12
- package/src/components/sidebar-edit-mode/page-panels/style.scss +14 -19
- package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +10 -9
- package/src/components/sidebar-edit-mode/plugin-sidebar/index.js +6 -6
- package/src/components/sidebar-edit-mode/settings-header/index.js +8 -9
- package/src/components/sidebar-edit-mode/template-panel/hooks.js +11 -7
- package/src/components/sidebar-navigation-screen/style.scss +1 -0
- package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/navigation-menu-editor.js +1 -1
- package/src/components/sidebar-navigation-screen-page/index.js +24 -3
- package/src/components/sidebar-navigation-screen-page/page-details.js +4 -17
- package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -2
- package/src/components/sidebar-navigation-screen-template/style.scss +6 -1
- package/src/components/site-hub/index.js +9 -8
- package/src/components/start-template-options/index.js +14 -12
- package/src/components/style-book/index.js +48 -35
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +182 -63
- package/src/components/template-part-converter/convert-to-regular.js +1 -1
- package/src/components/welcome-guide/page.js +2 -2
- package/src/components/welcome-guide/template.js +4 -2
- package/src/hooks/commands/use-edit-mode-commands.js +22 -16
- package/src/hooks/push-changes-to-global-styles/index.js +13 -6
- package/src/hooks/template-part-edit.js +4 -2
- package/src/index.js +0 -8
- package/src/store/actions.js +42 -96
- package/src/store/private-actions.js +1 -24
- package/src/store/private-selectors.js +0 -22
- package/src/store/reducer.js +0 -39
- package/src/store/selectors.js +43 -95
- package/src/store/test/actions.js +14 -169
- package/src/store/test/reducer.js +0 -62
- package/src/store/test/selectors.js +0 -117
- package/src/style.scss +2 -0
- package/src/utils/constants.js +1 -11
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -77
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/block-editor-provider/index.js +0 -31
- package/build/components/block-editor/block-editor-provider/index.js.map +0 -1
- package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -110
- package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -84
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
- package/build/components/block-editor/index.js +0 -30
- package/build/components/block-editor/index.js.map +0 -1
- package/build/components/dataviews/in-filter.js +0 -49
- package/build/components/dataviews/in-filter.js.map +0 -1
- package/build/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -50
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
- package/build/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
- package/build/components/page-content-focus-manager/index.js +0 -61
- package/build/components/page-content-focus-manager/index.js.map +0 -1
- package/build/components/page-pages/default-views.js +0 -62
- package/build/components/page-pages/default-views.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/publish-date.js +0 -87
- package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -69
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/block-editor-provider/index.js +0 -23
- package/build-module/components/block-editor/block-editor-provider/index.js.map +0 -1
- package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -102
- package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -78
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +0 -1
- package/build-module/components/block-editor/index.js +0 -22
- package/build-module/components/block-editor/index.js.map +0 -1
- package/build-module/components/dataviews/in-filter.js +0 -41
- package/build-module/components/dataviews/in-filter.js.map +0 -1
- package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -43
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
- package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
- package/build-module/components/page-content-focus-manager/index.js +0 -52
- package/build-module/components/page-content-focus-manager/index.js.map +0 -1
- package/build-module/components/page-pages/default-views.js +0 -55
- package/build-module/components/page-pages/default-views.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +0 -80
- package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
- package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +0 -75
- package/src/components/block-editor/block-editor-provider/index.js +0 -29
- package/src/components/block-editor/block-editor-provider/navigation-block-editor-provider.js +0 -114
- package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +0 -116
- package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +0 -90
- package/src/components/block-editor/index.js +0 -28
- package/src/components/dataviews/in-filter.js +0 -45
- package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -52
- package/src/components/page-content-focus-manager/index.js +0 -51
- package/src/components/page-pages/default-views.js +0 -60
- package/src/components/sidebar-edit-mode/page-panels/publish-date.js +0 -94
|
@@ -34,10 +34,10 @@ var _lockUnlock = require("../../lock-unlock");
|
|
|
34
34
|
*/
|
|
35
35
|
|
|
36
36
|
const HUB_ANIMATION_DURATION = 0.3;
|
|
37
|
-
const SiteHub = (0, _element.
|
|
37
|
+
const SiteHub = (0, _element.memo)(({
|
|
38
38
|
isTransparent,
|
|
39
|
-
|
|
40
|
-
}
|
|
39
|
+
className
|
|
40
|
+
}) => {
|
|
41
41
|
const {
|
|
42
42
|
canvasMode,
|
|
43
43
|
dashboardLink,
|
|
@@ -89,9 +89,21 @@ const SiteHub = (0, _element.forwardRef)(({
|
|
|
89
89
|
}
|
|
90
90
|
};
|
|
91
91
|
return (0, _react.createElement)(_components.__unstableMotion.div, {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
92
|
+
className: (0, _classnames.default)('edit-site-site-hub', className),
|
|
93
|
+
variants: {
|
|
94
|
+
isDistractionFree: {
|
|
95
|
+
x: '-100%'
|
|
96
|
+
},
|
|
97
|
+
isDistractionFreeHovering: {
|
|
98
|
+
x: 0
|
|
99
|
+
},
|
|
100
|
+
view: {
|
|
101
|
+
x: 0
|
|
102
|
+
},
|
|
103
|
+
edit: {
|
|
104
|
+
x: 0
|
|
105
|
+
}
|
|
106
|
+
},
|
|
95
107
|
initial: false,
|
|
96
108
|
transition: {
|
|
97
109
|
type: 'tween',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_components","_compose","_i18n","_blockEditor","_coreData","_htmlEntities","_element","_icons","_commands","_keycodes","_store","_siteIcon","_lockUnlock","HUB_ANIMATION_DURATION","SiteHub","forwardRef","isTransparent","restProps","ref","canvasMode","dashboardLink","homeUrl","siteTitle","useSelect","select","getCanvasMode","getSettings","unlock","editSiteStore","getSite","getUnstableBase","coreStore","__experimentalDashboardLink","home","title","open","openCommandCenter","useDispatch","commandsStore","disableMotion","useReducedMotion","setCanvasMode","__experimentalSetPreviewDeviceType","setPreviewDeviceType","clearSelectedBlock","blockEditorStore","isBackToDashboardButton","siteIconButtonProps","href","label","__","role","onClick","event","preventDefault","_react","createElement","__unstableMotion","div","className","classnames","initial","transition","type","duration","ease","__experimentalHStack","justify","alignment","spacing","layout","Button","animate","scale","whileHover","default","__unstableAnimatePresence","opacity","exit","delay","decodeEntities","target","icon","external","search","shortcut","displayShortcut","primary","_default","exports"],"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { forwardRef } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { displayShortcut } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = forwardRef( ( { isTransparent, ...restProps }, ref ) => {\n\tconst { canvasMode, dashboardLink, homeUrl, siteTitle } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\n\t\t\tconst {\n\t\t\t\tgetSite,\n\t\t\t\tgetUnstableBase, // Site index.\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\tdashboardLink:\n\t\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\t\tsiteTitle: getSite()?.title,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst {\n\t\tsetCanvasMode,\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t} = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetPreviewDeviceType( 'Desktop' );\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ ref }\n\t\t\t{ ...restProps }\n\t\t\tclassName={ classnames(\n\t\t\t\t'edit-site-site-hub',\n\t\t\t\trestProps.className\n\t\t\t) }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub__view-mode-toggle-container',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'has-transparent-background': isTransparent,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-site-hub__site-title',\n\t\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site (opens in a new tab)' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub_toggle-command-center',\n\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_components","_compose","_i18n","_blockEditor","_coreData","_htmlEntities","_element","_icons","_commands","_keycodes","_store","_siteIcon","_lockUnlock","HUB_ANIMATION_DURATION","SiteHub","memo","isTransparent","className","canvasMode","dashboardLink","homeUrl","siteTitle","useSelect","select","getCanvasMode","getSettings","unlock","editSiteStore","getSite","getUnstableBase","coreStore","__experimentalDashboardLink","home","title","open","openCommandCenter","useDispatch","commandsStore","disableMotion","useReducedMotion","setCanvasMode","__experimentalSetPreviewDeviceType","setPreviewDeviceType","clearSelectedBlock","blockEditorStore","isBackToDashboardButton","siteIconButtonProps","href","label","__","role","onClick","event","preventDefault","_react","createElement","__unstableMotion","div","classnames","variants","isDistractionFree","x","isDistractionFreeHovering","view","edit","initial","transition","type","duration","ease","__experimentalHStack","justify","alignment","spacing","layout","Button","animate","scale","whileHover","default","__unstableAnimatePresence","opacity","exit","delay","decodeEntities","target","icon","external","search","shortcut","displayShortcut","primary","_default","exports"],"sources":["@wordpress/edit-site/src/components/site-hub/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tButton,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { memo } from '@wordpress/element';\nimport { search, external } from '@wordpress/icons';\nimport { store as commandsStore } from '@wordpress/commands';\nimport { displayShortcut } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport SiteIcon from '../site-icon';\nimport { unlock } from '../../lock-unlock';\n\nconst HUB_ANIMATION_DURATION = 0.3;\n\nconst SiteHub = memo( ( { isTransparent, className } ) => {\n\tconst { canvasMode, dashboardLink, homeUrl, siteTitle } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCanvasMode, getSettings } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\n\t\t\tconst {\n\t\t\t\tgetSite,\n\t\t\t\tgetUnstableBase, // Site index.\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\tdashboardLink:\n\t\t\t\t\tgetSettings().__experimentalDashboardLink || 'index.php',\n\t\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\t\tsiteTitle: getSite()?.title,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst { open: openCommandCenter } = useDispatch( commandsStore );\n\n\tconst disableMotion = useReducedMotion();\n\tconst {\n\t\tsetCanvasMode,\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t} = unlock( useDispatch( editSiteStore ) );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst isBackToDashboardButton = canvasMode === 'view';\n\tconst siteIconButtonProps = isBackToDashboardButton\n\t\t? {\n\t\t\t\thref: dashboardLink,\n\t\t\t\tlabel: __( 'Go to the Dashboard' ),\n\t\t }\n\t\t: {\n\t\t\t\thref: dashboardLink, // We need to keep the `href` here so the component doesn't remount as a `<button>` and break the animation.\n\t\t\t\trole: 'button',\n\t\t\t\tlabel: __( 'Open Navigation' ),\n\t\t\t\tonClick: ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tif ( canvasMode === 'edit' ) {\n\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\tsetPreviewDeviceType( 'Desktop' );\n\t\t\t\t\t\tsetCanvasMode( 'view' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t };\n\n\treturn (\n\t\t<motion.div\n\t\t\tclassName={ classnames( 'edit-site-site-hub', className ) }\n\t\t\tvariants={ {\n\t\t\t\tisDistractionFree: { x: '-100%' },\n\t\t\t\tisDistractionFreeHovering: { x: 0 },\n\t\t\t\tview: { x: 0 },\n\t\t\t\tedit: { x: 0 },\n\t\t\t} }\n\t\t\tinitial={ false }\n\t\t\ttransition={ {\n\t\t\t\ttype: 'tween',\n\t\t\t\tduration: disableMotion ? 0 : HUB_ANIMATION_DURATION,\n\t\t\t\tease: 'easeOut',\n\t\t\t} }\n\t\t>\n\t\t\t<HStack\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\talignment=\"center\"\n\t\t\t\tclassName=\"edit-site-site-hub__container\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\tclassName=\"edit-site-site-hub__text-content\"\n\t\t\t\t\tspacing=\"0\"\n\t\t\t\t>\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub__view-mode-toggle-container',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'has-transparent-background': isTransparent,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tlayout\n\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t{ ...siteIconButtonProps }\n\t\t\t\t\t\t\tclassName=\"edit-site-layout__view-mode-toggle\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\tinitial={ false }\n\t\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 1,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\twhileHover={ {\n\t\t\t\t\t\t\t\t\tscale: canvasMode === 'view' ? 0.5 : 0.96,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\t\tduration: disableMotion\n\t\t\t\t\t\t\t\t\t\t? 0\n\t\t\t\t\t\t\t\t\t\t: HUB_ANIMATION_DURATION,\n\t\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SiteIcon className=\"edit-site-layout__view-mode-toggle-icon\" />\n\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</motion.div>\n\n\t\t\t\t\t<AnimatePresence>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tlayout={ canvasMode === 'edit' }\n\t\t\t\t\t\t\tanimate={ {\n\t\t\t\t\t\t\t\topacity: canvasMode === 'view' ? 1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\texit={ {\n\t\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-site-hub__site-title',\n\t\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ttransition={ {\n\t\t\t\t\t\t\t\ttype: 'tween',\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.2,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t\tdelay: canvasMode === 'view' ? 0.1 : 0,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( siteTitle ) }\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\tlabel={ __( 'View site (opens in a new tab)' ) }\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'View site (opens in a new tab)'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\tclassName=\"edit-site-site-hub__site-view-link\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\t\t\t\t{ canvasMode === 'view' && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-site-hub_toggle-command-center',\n\t\t\t\t\t\t\t{ 'is-transparent': isTransparent }\n\t\t\t\t\t\t) }\n\t\t\t\t\t\ticon={ search }\n\t\t\t\t\t\tonClick={ () => openCommandCenter() }\n\t\t\t\t\t\tlabel={ __( 'Open command palette' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t</motion.div>\n\t);\n} );\n\nexport default SiteHub;\n"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
@@ -15,8 +14,6 @@ var _compose = require("@wordpress/compose");
|
|
|
15
14
|
var _preferences = require("@wordpress/preferences");
|
|
16
15
|
var _blocks = require("@wordpress/blocks");
|
|
17
16
|
var _coreData = require("@wordpress/core-data");
|
|
18
|
-
var _apiFetch = _interopRequireDefault(require("@wordpress/api-fetch"));
|
|
19
|
-
var _url = require("@wordpress/url");
|
|
20
17
|
var _store = require("../../store");
|
|
21
18
|
var _constants = require("../../utils/constants");
|
|
22
19
|
/**
|
|
@@ -28,19 +25,18 @@ var _constants = require("../../utils/constants");
|
|
|
28
25
|
*/
|
|
29
26
|
|
|
30
27
|
function useFallbackTemplateContent(slug, isCustom = false) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
}, [
|
|
43
|
-
return templateContent;
|
|
28
|
+
return (0, _data.useSelect)(select => {
|
|
29
|
+
const {
|
|
30
|
+
getEntityRecord,
|
|
31
|
+
getDefaultTemplateId
|
|
32
|
+
} = select(_coreData.store);
|
|
33
|
+
const templateId = getDefaultTemplateId({
|
|
34
|
+
slug,
|
|
35
|
+
is_custom: isCustom,
|
|
36
|
+
ignore_empty: true
|
|
37
|
+
});
|
|
38
|
+
return templateId ? getEntityRecord('postType', _constants.TEMPLATE_POST_TYPE, templateId)?.content?.raw : undefined;
|
|
39
|
+
}, [slug, isCustom]);
|
|
44
40
|
}
|
|
45
41
|
function useStartPatterns(fallbackContent) {
|
|
46
42
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_preferences","_blocks","_coreData","_apiFetch","_interopRequireDefault","_url","_store","_constants","useFallbackTemplateContent","slug","isCustom","templateContent","setTemplateContent","useState","useEffect","apiFetch","path","addQueryArgs","is_custom","ignore_empty","then","content","raw","useStartPatterns","fallbackContent","patterns","useSelect","select","getEditedPostType","getEditedPostId","editSiteStore","getEntityRecord","coreStore","postId","postType","record","getSettings","blockEditorStore","__experimentalBlockPatterns","currentThemeStylesheet","getCurrentTheme","stylesheet","injectThemeAttributeInBlockTemplateContent","block","innerBlocks","find","innerBlock","name","map","attributes","theme","undefined","useMemo","blocks","parse","title","__","filter","pattern","Array","isArray","templateTypes","some","templateType","startsWith","PatternSelection","onChoosePattern","onChange","useEntityBlockEditor","blockPatterns","shownBlockPatterns","useAsyncList","_react","createElement","__experimentalBlockPatternsList","shownPatterns","onClickPattern","selection","StartModal","onClose","Modal","className","closeLabel","focusOnMount","onRequestClose","isFullScreen","Flex","justify","expanded","FlexItem","Button","variant","onClick","START_TEMPLATE_MODAL_STATES","INITIAL","CLOSED","StartTemplateOptions","modalState","setModalState","shouldOpenModal","_postType","getEditedEntityRecord","hasEditsForEntityRecord","templateRecord","hasEdits","TEMPLATE_POST_TYPE","preferencesStore","get"],"sources":["@wordpress/edit-site/src/components/start-template-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal, Flex, FlexItem, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport {\n\t__experimentalBlockPatternsList as BlockPatternsList,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nfunction useFallbackTemplateContent( slug, isCustom = false ) {\n\tconst [ templateContent, setTemplateContent ] = useState( '' );\n\n\tuseEffect( () => {\n\t\tapiFetch( {\n\t\t\tpath: addQueryArgs( '/wp/v2/templates/lookup', {\n\t\t\t\tslug,\n\t\t\t\tis_custom: isCustom,\n\t\t\t\tignore_empty: true,\n\t\t\t} ),\n\t\t} ).then( ( { content } ) => setTemplateContent( content.raw ) );\n\t}, [ isCustom, slug ] );\n\treturn templateContent;\n}\n\nfunction useStartPatterns( fallbackContent ) {\n\tconst { slug, patterns } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postId = getEditedPostId();\n\t\tconst postType = getEditedPostType();\n\t\tconst record = getEntityRecord( 'postType', postType, postId );\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tslug: record.slug,\n\t\t\tpatterns: getSettings().__experimentalBlockPatterns,\n\t\t};\n\t}, [] );\n\n\tconst currentThemeStylesheet = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme().stylesheet\n\t);\n\n\t// Duplicated from packages/block-library/src/pattern/edit.js.\n\tfunction injectThemeAttributeInBlockTemplateContent( block ) {\n\t\tif (\n\t\t\tblock.innerBlocks.find(\n\t\t\t\t( innerBlock ) => innerBlock.name === 'core/template-part'\n\t\t\t)\n\t\t) {\n\t\t\tblock.innerBlocks = block.innerBlocks.map( ( innerBlock ) => {\n\t\t\t\tif (\n\t\t\t\t\tinnerBlock.name === 'core/template-part' &&\n\t\t\t\t\tinnerBlock.attributes.theme === undefined\n\t\t\t\t) {\n\t\t\t\t\tinnerBlock.attributes.theme = currentThemeStylesheet;\n\t\t\t\t}\n\t\t\t\treturn innerBlock;\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tblock.name === 'core/template-part' &&\n\t\t\tblock.attributes.theme === undefined\n\t\t) {\n\t\t\tblock.attributes.theme = currentThemeStylesheet;\n\t\t}\n\t\treturn block;\n\t}\n\n\treturn useMemo( () => {\n\t\t// filter patterns that are supposed to be used in the current template being edited.\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'fallback',\n\t\t\t\tblocks: parse( fallbackContent ),\n\t\t\t\ttitle: __( 'Fallback content' ),\n\t\t\t},\n\t\t\t...patterns\n\t\t\t\t.filter( ( pattern ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tArray.isArray( pattern.templateTypes ) &&\n\t\t\t\t\t\tpattern.templateTypes.some( ( templateType ) =>\n\t\t\t\t\t\t\tslug.startsWith( templateType )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t} )\n\t\t\t\t.map( ( pattern ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...pattern,\n\t\t\t\t\t\tblocks: parse( pattern.content ).map( ( block ) =>\n\t\t\t\t\t\t\tinjectThemeAttributeInBlockTemplateContent( block )\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t} ),\n\t\t];\n\t}, [ fallbackContent, slug, patterns ] );\n}\n\nfunction PatternSelection( { fallbackContent, onChoosePattern, postType } ) {\n\tconst [ , , onChange ] = useEntityBlockEditor( 'postType', postType );\n\tconst blockPatterns = useStartPatterns( fallbackContent );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\tonChange( blocks, { selection: undefined } );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartModal( { slug, isCustom, onClose, postType } ) {\n\tconst fallbackContent = useFallbackTemplateContent( slug, isCustom );\n\tif ( ! fallbackContent ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-site-start-template-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tfocusOnMount=\"firstElement\"\n\t\t\tonRequestClose={ onClose }\n\t\t\tisFullScreen={ true }\n\t\t>\n\t\t\t<div className=\"edit-site-start-template-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tfallbackContent={ fallbackContent }\n\t\t\t\t\tslug={ slug }\n\t\t\t\t\tisCustom={ isCustom }\n\t\t\t\t\tpostType={ postType }\n\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<Flex\n\t\t\t\tclassName=\"edit-site-start-template-options__modal__actions\"\n\t\t\t\tjustify=\"flex-end\"\n\t\t\t\texpanded={ false }\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t{ __( 'Skip' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</Modal>\n\t);\n}\n\nconst START_TEMPLATE_MODAL_STATES = {\n\tINITIAL: 'INITIAL',\n\tCLOSED: 'CLOSED',\n};\n\nexport default function StartTemplateOptions() {\n\tconst [ modalState, setModalState ] = useState(\n\t\tSTART_TEMPLATE_MODAL_STATES.INITIAL\n\t);\n\tconst { shouldOpenModal, slug, isCustom, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedPostType, getEditedPostId } =\n\t\t\t\tselect( editSiteStore );\n\t\t\tconst _postType = getEditedPostType();\n\t\t\tconst postId = getEditedPostId();\n\t\t\tconst { getEditedEntityRecord, hasEditsForEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t\tconst hasEdits = hasEditsForEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\tpostId\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tshouldOpenModal:\n\t\t\t\t\t! hasEdits &&\n\t\t\t\t\t'' === templateRecord.content &&\n\t\t\t\t\tTEMPLATE_POST_TYPE === _postType &&\n\t\t\t\t\t! select( preferencesStore ).get(\n\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t'welcomeGuide'\n\t\t\t\t\t),\n\t\t\t\tslug: templateRecord.slug,\n\t\t\t\tisCustom: templateRecord.is_custom,\n\t\t\t\tpostType: _postType,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tif (\n\t\t( modalState === START_TEMPLATE_MODAL_STATES.INITIAL &&\n\t\t\t! shouldOpenModal ) ||\n\t\tmodalState === START_TEMPLATE_MODAL_STATES.CLOSED\n\t) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StartModal\n\t\t\tslug={ slug }\n\t\t\tisCustom={ isCustom }\n\t\t\tpostType={ postType }\n\t\t\tonClose={ () =>\n\t\t\t\tsetModalState( START_TEMPLATE_MODAL_STATES.CLOSED )\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_element","_blockEditor","_data","_compose","_preferences","_blocks","_coreData","_store","_constants","useFallbackTemplateContent","slug","isCustom","useSelect","select","getEntityRecord","getDefaultTemplateId","coreStore","templateId","is_custom","ignore_empty","TEMPLATE_POST_TYPE","content","raw","undefined","useStartPatterns","fallbackContent","patterns","getEditedPostType","getEditedPostId","editSiteStore","postId","postType","record","getSettings","blockEditorStore","__experimentalBlockPatterns","currentThemeStylesheet","getCurrentTheme","stylesheet","injectThemeAttributeInBlockTemplateContent","block","innerBlocks","find","innerBlock","name","map","attributes","theme","useMemo","blocks","parse","title","__","filter","pattern","Array","isArray","templateTypes","some","templateType","startsWith","PatternSelection","onChoosePattern","onChange","useEntityBlockEditor","blockPatterns","shownBlockPatterns","useAsyncList","_react","createElement","__experimentalBlockPatternsList","shownPatterns","onClickPattern","selection","StartModal","onClose","Modal","className","closeLabel","focusOnMount","onRequestClose","isFullScreen","Flex","justify","expanded","FlexItem","Button","variant","onClick","START_TEMPLATE_MODAL_STATES","INITIAL","CLOSED","StartTemplateOptions","modalState","setModalState","useState","shouldOpenModal","_postType","getEditedEntityRecord","hasEditsForEntityRecord","templateRecord","hasEdits","preferencesStore","get"],"sources":["@wordpress/edit-site/src/components/start-template-options/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Modal, Flex, FlexItem, Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo } from '@wordpress/element';\nimport {\n\t__experimentalBlockPatternsList as BlockPatternsList,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useAsyncList } from '@wordpress/compose';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { parse } from '@wordpress/blocks';\nimport { store as coreStore, useEntityBlockEditor } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nfunction useFallbackTemplateContent( slug, isCustom = false ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getDefaultTemplateId } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateId = getDefaultTemplateId( {\n\t\t\t\tslug,\n\t\t\t\tis_custom: isCustom,\n\t\t\t\tignore_empty: true,\n\t\t\t} );\n\t\t\treturn templateId\n\t\t\t\t? getEntityRecord( 'postType', TEMPLATE_POST_TYPE, templateId )\n\t\t\t\t\t\t?.content?.raw\n\t\t\t\t: undefined;\n\t\t},\n\t\t[ slug, isCustom ]\n\t);\n}\n\nfunction useStartPatterns( fallbackContent ) {\n\tconst { slug, patterns } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEntityRecord } = select( coreStore );\n\t\tconst postId = getEditedPostId();\n\t\tconst postType = getEditedPostType();\n\t\tconst record = getEntityRecord( 'postType', postType, postId );\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tslug: record.slug,\n\t\t\tpatterns: getSettings().__experimentalBlockPatterns,\n\t\t};\n\t}, [] );\n\n\tconst currentThemeStylesheet = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme().stylesheet\n\t);\n\n\t// Duplicated from packages/block-library/src/pattern/edit.js.\n\tfunction injectThemeAttributeInBlockTemplateContent( block ) {\n\t\tif (\n\t\t\tblock.innerBlocks.find(\n\t\t\t\t( innerBlock ) => innerBlock.name === 'core/template-part'\n\t\t\t)\n\t\t) {\n\t\t\tblock.innerBlocks = block.innerBlocks.map( ( innerBlock ) => {\n\t\t\t\tif (\n\t\t\t\t\tinnerBlock.name === 'core/template-part' &&\n\t\t\t\t\tinnerBlock.attributes.theme === undefined\n\t\t\t\t) {\n\t\t\t\t\tinnerBlock.attributes.theme = currentThemeStylesheet;\n\t\t\t\t}\n\t\t\t\treturn innerBlock;\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tblock.name === 'core/template-part' &&\n\t\t\tblock.attributes.theme === undefined\n\t\t) {\n\t\t\tblock.attributes.theme = currentThemeStylesheet;\n\t\t}\n\t\treturn block;\n\t}\n\n\treturn useMemo( () => {\n\t\t// filter patterns that are supposed to be used in the current template being edited.\n\t\treturn [\n\t\t\t{\n\t\t\t\tname: 'fallback',\n\t\t\t\tblocks: parse( fallbackContent ),\n\t\t\t\ttitle: __( 'Fallback content' ),\n\t\t\t},\n\t\t\t...patterns\n\t\t\t\t.filter( ( pattern ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tArray.isArray( pattern.templateTypes ) &&\n\t\t\t\t\t\tpattern.templateTypes.some( ( templateType ) =>\n\t\t\t\t\t\t\tslug.startsWith( templateType )\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t} )\n\t\t\t\t.map( ( pattern ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...pattern,\n\t\t\t\t\t\tblocks: parse( pattern.content ).map( ( block ) =>\n\t\t\t\t\t\t\tinjectThemeAttributeInBlockTemplateContent( block )\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t} ),\n\t\t];\n\t}, [ fallbackContent, slug, patterns ] );\n}\n\nfunction PatternSelection( { fallbackContent, onChoosePattern, postType } ) {\n\tconst [ , , onChange ] = useEntityBlockEditor( 'postType', postType );\n\tconst blockPatterns = useStartPatterns( fallbackContent );\n\tconst shownBlockPatterns = useAsyncList( blockPatterns );\n\treturn (\n\t\t<BlockPatternsList\n\t\t\tblockPatterns={ blockPatterns }\n\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\tonClickPattern={ ( pattern, blocks ) => {\n\t\t\t\tonChange( blocks, { selection: undefined } );\n\t\t\t\tonChoosePattern();\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction StartModal( { slug, isCustom, onClose, postType } ) {\n\tconst fallbackContent = useFallbackTemplateContent( slug, isCustom );\n\tif ( ! fallbackContent ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-site-start-template-options__modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tcloseLabel={ __( 'Cancel' ) }\n\t\t\tfocusOnMount=\"firstElement\"\n\t\t\tonRequestClose={ onClose }\n\t\t\tisFullScreen={ true }\n\t\t>\n\t\t\t<div className=\"edit-site-start-template-options__modal-content\">\n\t\t\t\t<PatternSelection\n\t\t\t\t\tfallbackContent={ fallbackContent }\n\t\t\t\t\tslug={ slug }\n\t\t\t\t\tisCustom={ isCustom }\n\t\t\t\t\tpostType={ postType }\n\t\t\t\t\tonChoosePattern={ () => {\n\t\t\t\t\t\tonClose();\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<Flex\n\t\t\t\tclassName=\"edit-site-start-template-options__modal__actions\"\n\t\t\t\tjustify=\"flex-end\"\n\t\t\t\texpanded={ false }\n\t\t\t>\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ onClose }>\n\t\t\t\t\t\t{ __( 'Skip' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</Modal>\n\t);\n}\n\nconst START_TEMPLATE_MODAL_STATES = {\n\tINITIAL: 'INITIAL',\n\tCLOSED: 'CLOSED',\n};\n\nexport default function StartTemplateOptions() {\n\tconst [ modalState, setModalState ] = useState(\n\t\tSTART_TEMPLATE_MODAL_STATES.INITIAL\n\t);\n\tconst { shouldOpenModal, slug, isCustom, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedPostType, getEditedPostId } =\n\t\t\t\tselect( editSiteStore );\n\t\t\tconst _postType = getEditedPostType();\n\t\t\tconst postId = getEditedPostId();\n\t\t\tconst { getEditedEntityRecord, hasEditsForEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst templateRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t\tconst hasEdits = hasEditsForEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t_postType,\n\t\t\t\tpostId\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tshouldOpenModal:\n\t\t\t\t\t! hasEdits &&\n\t\t\t\t\t'' === templateRecord.content &&\n\t\t\t\t\tTEMPLATE_POST_TYPE === _postType &&\n\t\t\t\t\t! select( preferencesStore ).get(\n\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t'welcomeGuide'\n\t\t\t\t\t),\n\t\t\t\tslug: templateRecord.slug,\n\t\t\t\tisCustom: templateRecord.is_custom,\n\t\t\t\tpostType: _postType,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tif (\n\t\t( modalState === START_TEMPLATE_MODAL_STATES.INITIAL &&\n\t\t\t! shouldOpenModal ) ||\n\t\tmodalState === START_TEMPLATE_MODAL_STATES.CLOSED\n\t) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<StartModal\n\t\t\tslug={ slug }\n\t\t\tisCustom={ isCustom }\n\t\t\tpostType={ postType }\n\t\t\tonClose={ () =>\n\t\t\t\tsetModalState( START_TEMPLATE_MODAL_STATES.CLOSED )\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -33,6 +33,11 @@ const {
|
|
|
33
33
|
ExperimentalBlockEditorProvider,
|
|
34
34
|
useGlobalStyle
|
|
35
35
|
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
36
|
+
const {
|
|
37
|
+
CompositeV2: Composite,
|
|
38
|
+
CompositeItemV2: CompositeItem,
|
|
39
|
+
useCompositeStoreV2: useCompositeStore
|
|
40
|
+
} = (0, _lockUnlock.unlock)(_components.privateApis);
|
|
36
41
|
|
|
37
42
|
// The content area of the Style Book is rendered within an iframe so that global styles
|
|
38
43
|
// are applied to elements within the entire content area. To support elements that are
|
|
@@ -57,6 +62,8 @@ const STYLE_BOOK_IFRAME_STYLES = `
|
|
|
57
62
|
padding: 16px;
|
|
58
63
|
width: 100%;
|
|
59
64
|
box-sizing: border-box;
|
|
65
|
+
scroll-margin-top: 32px;
|
|
66
|
+
scroll-margin-bottom: 32px;
|
|
60
67
|
}
|
|
61
68
|
|
|
62
69
|
.edit-site-style-book__example.is-selected {
|
|
@@ -262,7 +269,8 @@ const StyleBookBody = ({
|
|
|
262
269
|
// translators: %s: Category of blocks, e.g. Text.
|
|
263
270
|
(0, _i18n.__)('Examples of blocks in the %s category'), title) : (0, _i18n.__)('Examples of blocks'),
|
|
264
271
|
isSelected: isSelected,
|
|
265
|
-
onSelect: onSelect
|
|
272
|
+
onSelect: onSelect,
|
|
273
|
+
key: category
|
|
266
274
|
}));
|
|
267
275
|
};
|
|
268
276
|
const Examples = (0, _element.memo)(({
|
|
@@ -273,17 +281,17 @@ const Examples = (0, _element.memo)(({
|
|
|
273
281
|
isSelected,
|
|
274
282
|
onSelect
|
|
275
283
|
}) => {
|
|
276
|
-
const
|
|
284
|
+
const compositeStore = useCompositeStore({
|
|
277
285
|
orientation: 'vertical'
|
|
278
286
|
});
|
|
279
|
-
return (0, _react.createElement)(
|
|
280
|
-
|
|
287
|
+
return (0, _react.createElement)(Composite, {
|
|
288
|
+
store: compositeStore,
|
|
281
289
|
className: className,
|
|
282
|
-
"aria-label": label
|
|
290
|
+
"aria-label": label,
|
|
291
|
+
role: "grid"
|
|
283
292
|
}, examples.filter(example => category ? example.category === category : true).map(example => (0, _react.createElement)(Example, {
|
|
284
293
|
key: example.name,
|
|
285
294
|
id: `example-${example.name}`,
|
|
286
|
-
composite: composite,
|
|
287
295
|
title: example.title,
|
|
288
296
|
blocks: example.blocks,
|
|
289
297
|
isSelected: isSelected(example.name),
|
|
@@ -293,7 +301,6 @@ const Examples = (0, _element.memo)(({
|
|
|
293
301
|
})));
|
|
294
302
|
});
|
|
295
303
|
const Example = ({
|
|
296
|
-
composite,
|
|
297
304
|
id,
|
|
298
305
|
title,
|
|
299
306
|
blocks,
|
|
@@ -308,8 +315,11 @@ const Example = ({
|
|
|
308
315
|
|
|
309
316
|
// Cache the list of blocks to avoid additional processing when the component is re-rendered.
|
|
310
317
|
const renderedBlocks = (0, _element.useMemo)(() => Array.isArray(blocks) ? blocks : [blocks], [blocks]);
|
|
311
|
-
return (0, _react.createElement)(
|
|
312
|
-
|
|
318
|
+
return (0, _react.createElement)("div", {
|
|
319
|
+
role: "row"
|
|
320
|
+
}, (0, _react.createElement)("div", {
|
|
321
|
+
role: "gridcell"
|
|
322
|
+
}, (0, _react.createElement)(CompositeItem, {
|
|
313
323
|
className: (0, _classnames.default)('edit-site-style-book__example', {
|
|
314
324
|
'is-selected': isSelected
|
|
315
325
|
}),
|
|
@@ -317,9 +327,9 @@ const Example = ({
|
|
|
317
327
|
"aria-label": (0, _i18n.sprintf)(
|
|
318
328
|
// translators: %s: Title of a block, e.g. Heading.
|
|
319
329
|
(0, _i18n.__)('Open %s styles in Styles panel'), title),
|
|
320
|
-
|
|
330
|
+
render: (0, _react.createElement)("div", null),
|
|
321
331
|
role: "button",
|
|
322
|
-
|
|
332
|
+
onClick: onClick
|
|
323
333
|
}, (0, _react.createElement)("span", {
|
|
324
334
|
className: "edit-site-style-book__example-title"
|
|
325
335
|
}, title), (0, _react.createElement)("div", {
|
|
@@ -332,7 +342,7 @@ const Example = ({
|
|
|
332
342
|
settings: settings
|
|
333
343
|
}, (0, _react.createElement)(_blockEditor.BlockList, {
|
|
334
344
|
renderAppender: false
|
|
335
|
-
})))));
|
|
345
|
+
})))))));
|
|
336
346
|
};
|
|
337
347
|
var _default = StyleBook;
|
|
338
348
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_components","_i18n","_blocks","_blockEditor","_data","_compose","_element","_keycodes","_lockUnlock","_editorCanvasContainer","ExperimentalBlockEditorProvider","useGlobalStyle","unlock","blockEditorPrivateApis","STYLE_BOOK_IFRAME_STYLES","getExamples","headingsExample","name","title","__","category","blocks","createBlock","content","level","otherExamples","getBlockTypes","filter","blockType","example","supports","inserter","map","getBlockFromExample","StyleBook","enableResizing","isSelected","onClick","onSelect","showCloseButton","showTabs","resizeObserver","sizes","useResizeObserver","textColor","backgroundColor","examples","useMemo","tabs","getCategories","some","slug","icon","originalSettings","useSelect","select","blockEditorStore","getSettings","settings","__unstableIsPreviewMode","_react","createElement","default","closeButtonLabel","className","classnames","width","style","color","background","TabPanel","tab","StyleBookBody","isFocused","setIsFocused","useState","buttonModeProps","role","onFocus","onBlur","onKeyDown","event","defaultPrevented","keyCode","ENTER","SPACE","preventDefault","readonly","buttonModeStyles","__unstableIframe","tabIndex","__unstableEditorStyles","styles","Examples","label","sprintf","memo","composite","useCompositeState","orientation","__unstableComposite","Example","key","id","renderedBlocks","Array","isArray","__unstableCompositeItem","as","Disabled","value","BlockList","renderAppender","_default","exports"],"sources":["@wordpress/edit-site/src/components/style-book/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__unstableComposite as Composite,\n\t__unstableUseCompositeState as useCompositeState,\n\t__unstableCompositeItem as CompositeItem,\n\tDisabled,\n\tTabPanel,\n} from '@wordpress/components';\n\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tgetCategories,\n\tgetBlockTypes,\n\tgetBlockFromExample,\n\tcreateBlock,\n} from '@wordpress/blocks';\nimport {\n\tBlockList,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { useMemo, useState, memo } from '@wordpress/element';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport EditorCanvasContainer from '../editor-canvas-container';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\n\n// The content area of the Style Book is rendered within an iframe so that global styles\n// are applied to elements within the entire content area. To support elements that are\n// not part of the block previews, such as headings and layout for the block previews,\n// additional CSS rules need to be passed into the iframe. These are hard-coded below.\n// Note that button styles are unset, and then focus rules from the `Button` component are\n// applied to the `button` element, targeted via `.edit-site-style-book__example`.\n// This is to ensure that browser default styles for buttons are not applied to the previews.\nconst STYLE_BOOK_IFRAME_STYLES = `\n\t.edit-site-style-book__examples {\n\t\tmax-width: 900px;\n\t\tmargin: 0 auto;\n\t}\n\n\t.edit-site-style-book__example {\n\t\tborder-radius: 2px;\n\t\tcursor: pointer;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: 40px;\n\t\tmargin-bottom: 40px;\n\t\tpadding: 16px;\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.edit-site-style-book__example.is-selected {\n\t\tbox-shadow: 0 0 0 1px var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));\n\t}\n\n\t.edit-site-style-book__example:focus:not(:disabled) {\n\t\tbox-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));\n\t\toutline: 3px solid transparent;\n\t}\n\n\t.edit-site-style-book__examples.is-wide .edit-site-style-book__example {\n\t\tflex-direction: row;\n\t}\n\n\t.edit-site-style-book__example-title {\n\t\tfont-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;\n\t\tfont-size: 11px;\n\t\tfont-weight: 500;\n\t\tline-height: normal;\n\t\tmargin: 0;\n\t\ttext-align: left;\n\t\ttext-transform: uppercase;\n\t}\n\n\t.edit-site-style-book__examples.is-wide .edit-site-style-book__example-title {\n\t\ttext-align: right;\n\t\twidth: 120px;\n\t}\n\n\t.edit-site-style-book__example-preview {\n\t\twidth: 100%;\n\t}\n\n\t.edit-site-style-book__example-preview .block-editor-block-list__insertion-point,\n\t.edit-site-style-book__example-preview .block-list-appender {\n\t\tdisplay: none;\n\t}\n\n\t.edit-site-style-book__example-preview .is-root-container > .wp-block:first-child {\n\t\tmargin-top: 0;\n\t}\n\t.edit-site-style-book__example-preview .is-root-container > .wp-block:last-child {\n\t\tmargin-bottom: 0;\n\t}\n`;\n\nfunction getExamples() {\n\t// Use our own example for the Heading block so that we can show multiple\n\t// heading levels.\n\tconst headingsExample = {\n\t\tname: 'core/heading',\n\t\ttitle: __( 'Headings' ),\n\t\tcategory: 'text',\n\t\tblocks: [\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 1,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 2,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 3,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 4,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 5,\n\t\t\t} ),\n\t\t],\n\t};\n\n\tconst otherExamples = getBlockTypes()\n\t\t.filter( ( blockType ) => {\n\t\t\tconst { name, example, supports } = blockType;\n\t\t\treturn (\n\t\t\t\tname !== 'core/heading' &&\n\t\t\t\t!! example &&\n\t\t\t\tsupports.inserter !== false\n\t\t\t);\n\t\t} )\n\t\t.map( ( blockType ) => ( {\n\t\t\tname: blockType.name,\n\t\t\ttitle: blockType.title,\n\t\t\tcategory: blockType.category,\n\t\t\tblocks: getBlockFromExample( blockType.name, blockType.example ),\n\t\t} ) );\n\n\treturn [ headingsExample, ...otherExamples ];\n}\n\nfunction StyleBook( {\n\tenableResizing = true,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tshowCloseButton = true,\n\tshowTabs = true,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ textColor ] = useGlobalStyle( 'color.text' );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst examples = useMemo( getExamples, [] );\n\tconst tabs = useMemo(\n\t\t() =>\n\t\t\tgetCategories()\n\t\t\t\t.filter( ( category ) =>\n\t\t\t\t\texamples.some(\n\t\t\t\t\t\t( example ) => example.category === category.slug\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t.map( ( category ) => ( {\n\t\t\t\t\tname: category.slug,\n\t\t\t\t\ttitle: category.title,\n\t\t\t\t\ticon: category.icon,\n\t\t\t\t} ) ),\n\t\t[ examples ]\n\t);\n\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( { ...originalSettings, __unstableIsPreviewMode: true } ),\n\t\t[ originalSettings ]\n\t);\n\n\treturn (\n\t\t<EditorCanvasContainer\n\t\t\tenableResizing={ enableResizing }\n\t\t\tcloseButtonLabel={\n\t\t\t\tshowCloseButton ? __( 'Close Style Book' ) : null\n\t\t\t}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'edit-site-style-book', {\n\t\t\t\t\t'is-wide': sizes.width > 600,\n\t\t\t\t\t'is-button': !! onClick,\n\t\t\t\t} ) }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textColor,\n\t\t\t\t\tbackground: backgroundColor,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ resizeObserver }\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<TabPanel\n\t\t\t\t\t\tclassName=\"edit-site-style-book__tab-panel\"\n\t\t\t\t\t\ttabs={ tabs }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( tab ) => (\n\t\t\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\t\t\tcategory={ tab.name }\n\t\t\t\t\t\t\t\texamples={ examples }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tsizes={ sizes }\n\t\t\t\t\t\t\t\ttitle={ tab.title }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</TabPanel>\n\t\t\t\t) : (\n\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\texamples={ examples }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tsizes={ sizes }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorCanvasContainer>\n\t);\n}\n\nconst StyleBookBody = ( {\n\tcategory,\n\texamples,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tsettings,\n\tsizes,\n\ttitle,\n} ) => {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\t// The presence of an `onClick` prop indicates that the Style Book is being used as a button.\n\t// In this case, add additional props to the iframe to make it behave like a button.\n\tconst buttonModeProps = {\n\t\trole: 'button',\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { keyCode } = event;\n\t\t\tif ( onClick && ( keyCode === ENTER || keyCode === SPACE ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\tonClick: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ( onClick ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\tconst buttonModeStyles = onClick\n\t\t? 'body { cursor: pointer; } body * { pointer-events: none; }'\n\t\t: '';\n\n\treturn (\n\t\t<Iframe\n\t\t\tclassName={ classnames( 'edit-site-style-book__iframe', {\n\t\t\t\t'is-focused': isFocused && !! onClick,\n\t\t\t\t'is-button': !! onClick,\n\t\t\t} ) }\n\t\t\tname=\"style-book-canvas\"\n\t\t\ttabIndex={ 0 }\n\t\t\t{ ...( onClick ? buttonModeProps : {} ) }\n\t\t>\n\t\t\t<EditorStyles styles={ settings.styles } />\n\t\t\t<style>\n\t\t\t\t{\n\t\t\t\t\t// Forming a \"block formatting context\" to prevent margin collapsing.\n\t\t\t\t\t// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context\n\t\t\t\t\t`.is-root-container { display: flow-root; }\n\t\t\t\t\t\tbody { position: relative; padding: 32px !important; }` +\n\t\t\t\t\t\tSTYLE_BOOK_IFRAME_STYLES +\n\t\t\t\t\t\tbuttonModeStyles\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<Examples\n\t\t\t\tclassName={ classnames( 'edit-site-style-book__examples', {\n\t\t\t\t\t'is-wide': sizes.width > 600,\n\t\t\t\t} ) }\n\t\t\t\texamples={ examples }\n\t\t\t\tcategory={ category }\n\t\t\t\tlabel={\n\t\t\t\t\ttitle\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Category of blocks, e.g. Text.\n\t\t\t\t\t\t\t\t__( 'Examples of blocks in the %s category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Examples of blocks' )\n\t\t\t\t}\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t/>\n\t\t</Iframe>\n\t);\n};\n\nconst Examples = memo(\n\t( { className, examples, category, label, isSelected, onSelect } ) => {\n\t\tconst composite = useCompositeState( { orientation: 'vertical' } );\n\t\treturn (\n\t\t\t<Composite\n\t\t\t\t{ ...composite }\n\t\t\t\tclassName={ className }\n\t\t\t\taria-label={ label }\n\t\t\t>\n\t\t\t\t{ examples\n\t\t\t\t\t.filter( ( example ) =>\n\t\t\t\t\t\tcategory ? example.category === category : true\n\t\t\t\t\t)\n\t\t\t\t\t.map( ( example ) => (\n\t\t\t\t\t\t<Example\n\t\t\t\t\t\t\tkey={ example.name }\n\t\t\t\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\t\t\t\tcomposite={ composite }\n\t\t\t\t\t\t\ttitle={ example.title }\n\t\t\t\t\t\t\tblocks={ example.blocks }\n\t\t\t\t\t\t\tisSelected={ isSelected( example.name ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonSelect?.( example.name );\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</Composite>\n\t\t);\n\t}\n);\n\nconst Example = ( { composite, id, title, blocks, isSelected, onClick } ) => {\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( { ...originalSettings, __unstableIsPreviewMode: true } ),\n\t\t[ originalSettings ]\n\t);\n\n\t// Cache the list of blocks to avoid additional processing when the component is re-rendered.\n\tconst renderedBlocks = useMemo(\n\t\t() => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),\n\t\t[ blocks ]\n\t);\n\n\treturn (\n\t\t<CompositeItem\n\t\t\t{ ...composite }\n\t\t\tclassName={ classnames( 'edit-site-style-book__example', {\n\t\t\t\t'is-selected': isSelected,\n\t\t\t} ) }\n\t\t\tid={ id }\n\t\t\taria-label={ sprintf(\n\t\t\t\t// translators: %s: Title of a block, e.g. Heading.\n\t\t\t\t__( 'Open %s styles in Styles panel' ),\n\t\t\t\ttitle\n\t\t\t) }\n\t\t\tonClick={ onClick }\n\t\t\trole=\"button\"\n\t\t\tas=\"div\"\n\t\t>\n\t\t\t<span className=\"edit-site-style-book__example-title\">\n\t\t\t\t{ title }\n\t\t\t</span>\n\t\t\t<div className=\"edit-site-style-book__example-preview\" aria-hidden>\n\t\t\t\t<Disabled className=\"edit-site-style-book__example-preview__content\">\n\t\t\t\t\t<ExperimentalBlockEditorProvider\n\t\t\t\t\t\tvalue={ renderedBlocks }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList renderAppender={ false } />\n\t\t\t\t\t</ExperimentalBlockEditorProvider>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</CompositeItem>\n\t);\n};\n\nexport default StyleBook;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AAQA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAMA,IAAAI,YAAA,GAAAJ,OAAA;AAOA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AAKA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,sBAAA,GAAAX,sBAAA,CAAAC,OAAA;AAvCA;AACA;AACA;;AAGA;AACA;AACA;;AA4BA;AACA;AACA;;AAIA,MAAM;EAAEW,+BAA+B;EAAEC;AAAe,CAAC,GAAG,IAAAC,kBAAM,EACjEC,wBACD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,wBAAwB,GAAI;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,SAASC,WAAWA,CAAA,EAAG;EACtB;EACA;EACA,MAAMC,eAAe,GAAG;IACvBC,IAAI,EAAE,cAAc;IACpBC,KAAK,EAAE,IAAAC,QAAE,EAAE,UAAW,CAAC;IACvBC,QAAQ,EAAE,MAAM;IAChBC,MAAM,EAAE,CACP,IAAAC,mBAAW,EAAE,cAAc,EAAE;MAC5BC,OAAO,EAAE,IAAAJ,QAAE,EAAE,gBAAiB,CAAC;MAC/BK,KAAK,EAAE;IACR,CAAE,CAAC,EACH,IAAAF,mBAAW,EAAE,cAAc,EAAE;MAC5BC,OAAO,EAAE,IAAAJ,QAAE,EAAE,gBAAiB,CAAC;MAC/BK,KAAK,EAAE;IACR,CAAE,CAAC,EACH,IAAAF,mBAAW,EAAE,cAAc,EAAE;MAC5BC,OAAO,EAAE,IAAAJ,QAAE,EAAE,gBAAiB,CAAC;MAC/BK,KAAK,EAAE;IACR,CAAE,CAAC,EACH,IAAAF,mBAAW,EAAE,cAAc,EAAE;MAC5BC,OAAO,EAAE,IAAAJ,QAAE,EAAE,gBAAiB,CAAC;MAC/BK,KAAK,EAAE;IACR,CAAE,CAAC,EACH,IAAAF,mBAAW,EAAE,cAAc,EAAE;MAC5BC,OAAO,EAAE,IAAAJ,QAAE,EAAE,gBAAiB,CAAC;MAC/BK,KAAK,EAAE;IACR,CAAE,CAAC;EAEL,CAAC;EAED,MAAMC,aAAa,GAAG,IAAAC,qBAAa,EAAC,CAAC,CACnCC,MAAM,CAAIC,SAAS,IAAM;IACzB,MAAM;MAAEX,IAAI;MAAEY,OAAO;MAAEC;IAAS,CAAC,GAAGF,SAAS;IAC7C,OACCX,IAAI,KAAK,cAAc,IACvB,CAAC,CAAEY,OAAO,IACVC,QAAQ,CAACC,QAAQ,KAAK,KAAK;EAE7B,CAAE,CAAC,CACFC,GAAG,CAAIJ,SAAS,KAAQ;IACxBX,IAAI,EAAEW,SAAS,CAACX,IAAI;IACpBC,KAAK,EAAEU,SAAS,CAACV,KAAK;IACtBE,QAAQ,EAAEQ,SAAS,CAACR,QAAQ;IAC5BC,MAAM,EAAE,IAAAY,2BAAmB,EAAEL,SAAS,CAACX,IAAI,EAAEW,SAAS,CAACC,OAAQ;EAChE,CAAC,CAAG,CAAC;EAEN,OAAO,CAAEb,eAAe,EAAE,GAAGS,aAAa,CAAE;AAC7C;AAEA,SAASS,SAASA,CAAE;EACnBC,cAAc,GAAG,IAAI;EACrBC,UAAU;EACVC,OAAO;EACPC,QAAQ;EACRC,eAAe,GAAG,IAAI;EACtBC,QAAQ,GAAG;AACZ,CAAC,EAAG;EACH,MAAM,CAAEC,cAAc,EAAEC,KAAK,CAAE,GAAG,IAAAC,0BAAiB,EAAC,CAAC;EACrD,MAAM,CAAEC,SAAS,CAAE,GAAGjC,cAAc,CAAE,YAAa,CAAC;EACpD,MAAM,CAAEkC,eAAe,CAAE,GAAGlC,cAAc,CAAE,kBAAmB,CAAC;EAChE,MAAMmC,QAAQ,GAAG,IAAAC,gBAAO,EAAEhC,WAAW,EAAE,EAAG,CAAC;EAC3C,MAAMiC,IAAI,GAAG,IAAAD,gBAAO,EACnB,MACC,IAAAE,qBAAa,EAAC,CAAC,CACbtB,MAAM,CAAIP,QAAQ,IAClB0B,QAAQ,CAACI,IAAI,CACVrB,OAAO,IAAMA,OAAO,CAACT,QAAQ,KAAKA,QAAQ,CAAC+B,IAC9C,CACD,CAAC,CACAnB,GAAG,CAAIZ,QAAQ,KAAQ;IACvBH,IAAI,EAAEG,QAAQ,CAAC+B,IAAI;IACnBjC,KAAK,EAAEE,QAAQ,CAACF,KAAK;IACrBkC,IAAI,EAAEhC,QAAQ,CAACgC;EAChB,CAAC,CAAG,CAAC,EACP,CAAEN,QAAQ,CACX,CAAC;EAED,MAAMO,gBAAgB,GAAG,IAAAC,eAAS,EAC/BC,MAAM,IAAMA,MAAM,CAAEC,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC,EACtD,EACD,CAAC;EACD,MAAMC,QAAQ,GAAG,IAAAX,gBAAO,EACvB,OAAQ;IAAE,GAAGM,gBAAgB;IAAEM,uBAAuB,EAAE;EAAK,CAAC,CAAE,EAChE,CAAEN,gBAAgB,CACnB,CAAC;EAED,OACC,IAAAO,MAAA,CAAAC,aAAA,EAACpD,sBAAA,CAAAqD,OAAqB;IACrB3B,cAAc,EAAGA,cAAgB;IACjC4B,gBAAgB,EACfxB,eAAe,GAAG,IAAApB,QAAE,EAAE,kBAAmB,CAAC,GAAG;EAC7C,GAED,IAAAyC,MAAA,CAAAC,aAAA;IACCG,SAAS,EAAG,IAAAC,mBAAU,EAAE,sBAAsB,EAAE;MAC/C,SAAS,EAAEvB,KAAK,CAACwB,KAAK,GAAG,GAAG;MAC5B,WAAW,EAAE,CAAC,CAAE7B;IACjB,CAAE,CAAG;IACL8B,KAAK,EAAG;MACPC,KAAK,EAAExB,SAAS;MAChByB,UAAU,EAAExB;IACb;EAAG,GAEDJ,cAAc,EACdD,QAAQ,GACT,IAAAoB,MAAA,CAAAC,aAAA,EAAC7D,WAAA,CAAAsE,QAAQ;IACRN,SAAS,EAAC,iCAAiC;IAC3ChB,IAAI,EAAGA;EAAM,GAETuB,GAAG,IACN,IAAAX,MAAA,CAAAC,aAAA,EAACW,aAAa;IACbpD,QAAQ,EAAGmD,GAAG,CAACtD,IAAM;IACrB6B,QAAQ,EAAGA,QAAU;IACrBV,UAAU,EAAGA,UAAY;IACzBE,QAAQ,EAAGA,QAAU;IACrBoB,QAAQ,EAAGA,QAAU;IACrBhB,KAAK,EAAGA,KAAO;IACfxB,KAAK,EAAGqD,GAAG,CAACrD;EAAO,CACnB,CAEO,CAAC,GAEX,IAAA0C,MAAA,CAAAC,aAAA,EAACW,aAAa;IACb1B,QAAQ,EAAGA,QAAU;IACrBV,UAAU,EAAGA,UAAY;IACzBC,OAAO,EAAGA,OAAS;IACnBC,QAAQ,EAAGA,QAAU;IACrBoB,QAAQ,EAAGA,QAAU;IACrBhB,KAAK,EAAGA;EAAO,CACf,CAEE,CACiB,CAAC;AAE1B;AAEA,MAAM8B,aAAa,GAAGA,CAAE;EACvBpD,QAAQ;EACR0B,QAAQ;EACRV,UAAU;EACVC,OAAO;EACPC,QAAQ;EACRoB,QAAQ;EACRhB,KAAK;EACLxB;AACD,CAAC,KAAM;EACN,MAAM,CAAEuD,SAAS,EAAEC,YAAY,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;;EAErD;EACA;EACA,MAAMC,eAAe,GAAG;IACvBC,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAEA,CAAA,KAAMJ,YAAY,CAAE,IAAK,CAAC;IACnCK,MAAM,EAAEA,CAAA,KAAML,YAAY,CAAE,KAAM,CAAC;IACnCM,SAAS,EAAIC,KAAK,IAAM;MACvB,IAAKA,KAAK,CAACC,gBAAgB,EAAG;QAC7B;MACD;MACA,MAAM;QAAEC;MAAQ,CAAC,GAAGF,KAAK;MACzB,IAAK5C,OAAO,KAAM8C,OAAO,KAAKC,eAAK,IAAID,OAAO,KAAKE,eAAK,CAAE,EAAG;QAC5DJ,KAAK,CAACK,cAAc,CAAC,CAAC;QACtBjD,OAAO,CAAE4C,KAAM,CAAC;MACjB;IACD,CAAC;IACD5C,OAAO,EAAI4C,KAAK,IAAM;MACrB,IAAKA,KAAK,CAACC,gBAAgB,EAAG;QAC7B;MACD;MACA,IAAK7C,OAAO,EAAG;QACd4C,KAAK,CAACK,cAAc,CAAC,CAAC;QACtBjD,OAAO,CAAE4C,KAAM,CAAC;MACjB;IACD,CAAC;IACDM,QAAQ,EAAE;EACX,CAAC;EAED,MAAMC,gBAAgB,GAAGnD,OAAO,GAC7B,4DAA4D,GAC5D,EAAE;EAEL,OACC,IAAAuB,MAAA,CAAAC,aAAA,EAAC1D,YAAA,CAAAsF,gBAAM;IACNzB,SAAS,EAAG,IAAAC,mBAAU,EAAE,8BAA8B,EAAE;MACvD,YAAY,EAAEQ,SAAS,IAAI,CAAC,CAAEpC,OAAO;MACrC,WAAW,EAAE,CAAC,CAAEA;IACjB,CAAE,CAAG;IACLpB,IAAI,EAAC,mBAAmB;IACxByE,QAAQ,EAAG,CAAG;IAAA,IACPrD,OAAO,GAAGuC,eAAe,GAAG,CAAC,CAAC;EAAA,GAErC,IAAAhB,MAAA,CAAAC,aAAA,EAAC1D,YAAA,CAAAwF,sBAAY;IAACC,MAAM,EAAGlC,QAAQ,CAACkC;EAAQ,CAAE,CAAC,EAC3C,IAAAhC,MAAA,CAAAC,aAAA;EAEE;EACA;EACC;AACN,6DAA6D,GACvD/C,wBAAwB,GACxB0E,gBAEI,CAAC,EACR,IAAA5B,MAAA,CAAAC,aAAA,EAACgC,QAAQ;IACR7B,SAAS,EAAG,IAAAC,mBAAU,EAAE,gCAAgC,EAAE;MACzD,SAAS,EAAEvB,KAAK,CAACwB,KAAK,GAAG;IAC1B,CAAE,CAAG;IACLpB,QAAQ,EAAGA,QAAU;IACrB1B,QAAQ,EAAGA,QAAU;IACrB0E,KAAK,EACJ5E,KAAK,GACF,IAAA6E,aAAO;IACP;IACA,IAAA5E,QAAE,EAAE,uCAAwC,CAAC,EAC7CD,KACA,CAAC,GACD,IAAAC,QAAE,EAAE,oBAAqB,CAC5B;IACDiB,UAAU,EAAGA,UAAY;IACzBE,QAAQ,EAAGA;EAAU,CACrB,CACM,CAAC;AAEX,CAAC;AAED,MAAMuD,QAAQ,GAAG,IAAAG,aAAI,EACpB,CAAE;EAAEhC,SAAS;EAAElB,QAAQ;EAAE1B,QAAQ;EAAE0E,KAAK;EAAE1D,UAAU;EAAEE;AAAS,CAAC,KAAM;EACrE,MAAM2D,SAAS,GAAG,IAAAC,uCAAiB,EAAE;IAAEC,WAAW,EAAE;EAAW,CAAE,CAAC;EAClE,OACC,IAAAvC,MAAA,CAAAC,aAAA,EAAC7D,WAAA,CAAAoG,mBAAS;IAAA,GACJH,SAAS;IACdjC,SAAS,EAAGA,SAAW;IACvB,cAAa8B;EAAO,GAElBhD,QAAQ,CACRnB,MAAM,CAAIE,OAAO,IACjBT,QAAQ,GAAGS,OAAO,CAACT,QAAQ,KAAKA,QAAQ,GAAG,IAC5C,CAAC,CACAY,GAAG,CAAIH,OAAO,IACd,IAAA+B,MAAA,CAAAC,aAAA,EAACwC,OAAO;IACPC,GAAG,EAAGzE,OAAO,CAACZ,IAAM;IACpBsF,EAAE,EAAI,WAAW1E,OAAO,CAACZ,IAAM,EAAG;IAClCgF,SAAS,EAAGA,SAAW;IACvB/E,KAAK,EAAGW,OAAO,CAACX,KAAO;IACvBG,MAAM,EAAGQ,OAAO,CAACR,MAAQ;IACzBe,UAAU,EAAGA,UAAU,CAAEP,OAAO,CAACZ,IAAK,CAAG;IACzCoB,OAAO,EAAGA,CAAA,KAAM;MACfC,QAAQ,GAAIT,OAAO,CAACZ,IAAK,CAAC;IAC3B;EAAG,CACH,CACA,CACO,CAAC;AAEd,CACD,CAAC;AAED,MAAMoF,OAAO,GAAGA,CAAE;EAAEJ,SAAS;EAAEM,EAAE;EAAErF,KAAK;EAAEG,MAAM;EAAEe,UAAU;EAAEC;AAAQ,CAAC,KAAM;EAC5E,MAAMgB,gBAAgB,GAAG,IAAAC,eAAS,EAC/BC,MAAM,IAAMA,MAAM,CAAEC,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC,EACtD,EACD,CAAC;EACD,MAAMC,QAAQ,GAAG,IAAAX,gBAAO,EACvB,OAAQ;IAAE,GAAGM,gBAAgB;IAAEM,uBAAuB,EAAE;EAAK,CAAC,CAAE,EAChE,CAAEN,gBAAgB,CACnB,CAAC;;EAED;EACA,MAAMmD,cAAc,GAAG,IAAAzD,gBAAO,EAC7B,MAAQ0D,KAAK,CAACC,OAAO,CAAErF,MAAO,CAAC,GAAGA,MAAM,GAAG,CAAEA,MAAM,CAAI,EACvD,CAAEA,MAAM,CACT,CAAC;EAED,OACC,IAAAuC,MAAA,CAAAC,aAAA,EAAC7D,WAAA,CAAA2G,uBAAa;IAAA,GACRV,SAAS;IACdjC,SAAS,EAAG,IAAAC,mBAAU,EAAE,+BAA+B,EAAE;MACxD,aAAa,EAAE7B;IAChB,CAAE,CAAG;IACLmE,EAAE,EAAGA,EAAI;IACT,cAAa,IAAAR,aAAO;IACnB;IACA,IAAA5E,QAAE,EAAE,gCAAiC,CAAC,EACtCD,KACD,CAAG;IACHmB,OAAO,EAAGA,OAAS;IACnBwC,IAAI,EAAC,QAAQ;IACb+B,EAAE,EAAC;EAAK,GAER,IAAAhD,MAAA,CAAAC,aAAA;IAAMG,SAAS,EAAC;EAAqC,GAClD9C,KACG,CAAC,EACP,IAAA0C,MAAA,CAAAC,aAAA;IAAKG,SAAS,EAAC,uCAAuC;IAAC;EAAW,GACjE,IAAAJ,MAAA,CAAAC,aAAA,EAAC7D,WAAA,CAAA6G,QAAQ;IAAC7C,SAAS,EAAC;EAAgD,GACnE,IAAAJ,MAAA,CAAAC,aAAA,EAACnD,+BAA+B;IAC/BoG,KAAK,EAAGN,cAAgB;IACxB9C,QAAQ,EAAGA;EAAU,GAErB,IAAAE,MAAA,CAAAC,aAAA,EAAC1D,YAAA,CAAA4G,SAAS;IAACC,cAAc,EAAG;EAAO,CAAE,CACL,CACxB,CACN,CACS,CAAC;AAElB,CAAC;AAAC,IAAAC,QAAA,GAEa/E,SAAS;AAAAgF,OAAA,CAAApD,OAAA,GAAAmD,QAAA"}
|
|
1
|
+
{"version":3,"names":["_classnames","_interopRequireDefault","require","_components","_i18n","_blocks","_blockEditor","_data","_compose","_element","_keycodes","_lockUnlock","_editorCanvasContainer","ExperimentalBlockEditorProvider","useGlobalStyle","unlock","blockEditorPrivateApis","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","componentsPrivateApis","STYLE_BOOK_IFRAME_STYLES","getExamples","headingsExample","name","title","__","category","blocks","createBlock","content","level","otherExamples","getBlockTypes","filter","blockType","example","supports","inserter","map","getBlockFromExample","StyleBook","enableResizing","isSelected","onClick","onSelect","showCloseButton","showTabs","resizeObserver","sizes","useResizeObserver","textColor","backgroundColor","examples","useMemo","tabs","getCategories","some","slug","icon","originalSettings","useSelect","select","blockEditorStore","getSettings","settings","__unstableIsPreviewMode","_react","createElement","default","closeButtonLabel","className","classnames","width","style","color","background","TabPanel","tab","StyleBookBody","isFocused","setIsFocused","useState","buttonModeProps","role","onFocus","onBlur","onKeyDown","event","defaultPrevented","keyCode","ENTER","SPACE","preventDefault","readonly","buttonModeStyles","__unstableIframe","tabIndex","__unstableEditorStyles","styles","Examples","label","sprintf","key","memo","compositeStore","orientation","store","Example","id","renderedBlocks","Array","isArray","render","Disabled","value","BlockList","renderAppender","_default","exports"],"sources":["@wordpress/edit-site/src/components/style-book/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDisabled,\n\tTabPanel,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tgetCategories,\n\tgetBlockTypes,\n\tgetBlockFromExample,\n\tcreateBlock,\n} from '@wordpress/blocks';\nimport {\n\tBlockList,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { useMemo, useState, memo } from '@wordpress/element';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport EditorCanvasContainer from '../editor-canvas-container';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\n// The content area of the Style Book is rendered within an iframe so that global styles\n// are applied to elements within the entire content area. To support elements that are\n// not part of the block previews, such as headings and layout for the block previews,\n// additional CSS rules need to be passed into the iframe. These are hard-coded below.\n// Note that button styles are unset, and then focus rules from the `Button` component are\n// applied to the `button` element, targeted via `.edit-site-style-book__example`.\n// This is to ensure that browser default styles for buttons are not applied to the previews.\nconst STYLE_BOOK_IFRAME_STYLES = `\n\t.edit-site-style-book__examples {\n\t\tmax-width: 900px;\n\t\tmargin: 0 auto;\n\t}\n\n\t.edit-site-style-book__example {\n\t\tborder-radius: 2px;\n\t\tcursor: pointer;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tgap: 40px;\n\t\tmargin-bottom: 40px;\n\t\tpadding: 16px;\n\t\twidth: 100%;\n\t\tbox-sizing: border-box;\n\t\tscroll-margin-top: 32px;\n\t\tscroll-margin-bottom: 32px;\n\t}\n\n\t.edit-site-style-book__example.is-selected {\n\t\tbox-shadow: 0 0 0 1px var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));\n\t}\n\n\t.edit-site-style-book__example:focus:not(:disabled) {\n\t\tbox-shadow: 0 0 0 var(--wp-admin-border-width-focus) var(--wp-components-color-accent, var(--wp-admin-theme-color, #007cba));\n\t\toutline: 3px solid transparent;\n\t}\n\n\t.edit-site-style-book__examples.is-wide .edit-site-style-book__example {\n\t\tflex-direction: row;\n\t}\n\n\t.edit-site-style-book__example-title {\n\t\tfont-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;\n\t\tfont-size: 11px;\n\t\tfont-weight: 500;\n\t\tline-height: normal;\n\t\tmargin: 0;\n\t\ttext-align: left;\n\t\ttext-transform: uppercase;\n\t}\n\n\t.edit-site-style-book__examples.is-wide .edit-site-style-book__example-title {\n\t\ttext-align: right;\n\t\twidth: 120px;\n\t}\n\n\t.edit-site-style-book__example-preview {\n\t\twidth: 100%;\n\t}\n\n\t.edit-site-style-book__example-preview .block-editor-block-list__insertion-point,\n\t.edit-site-style-book__example-preview .block-list-appender {\n\t\tdisplay: none;\n\t}\n\n\t.edit-site-style-book__example-preview .is-root-container > .wp-block:first-child {\n\t\tmargin-top: 0;\n\t}\n\t.edit-site-style-book__example-preview .is-root-container > .wp-block:last-child {\n\t\tmargin-bottom: 0;\n\t}\n`;\n\nfunction getExamples() {\n\t// Use our own example for the Heading block so that we can show multiple\n\t// heading levels.\n\tconst headingsExample = {\n\t\tname: 'core/heading',\n\t\ttitle: __( 'Headings' ),\n\t\tcategory: 'text',\n\t\tblocks: [\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 1,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 2,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 3,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 4,\n\t\t\t} ),\n\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\tcontent: __( 'Code Is Poetry' ),\n\t\t\t\tlevel: 5,\n\t\t\t} ),\n\t\t],\n\t};\n\n\tconst otherExamples = getBlockTypes()\n\t\t.filter( ( blockType ) => {\n\t\t\tconst { name, example, supports } = blockType;\n\t\t\treturn (\n\t\t\t\tname !== 'core/heading' &&\n\t\t\t\t!! example &&\n\t\t\t\tsupports.inserter !== false\n\t\t\t);\n\t\t} )\n\t\t.map( ( blockType ) => ( {\n\t\t\tname: blockType.name,\n\t\t\ttitle: blockType.title,\n\t\t\tcategory: blockType.category,\n\t\t\tblocks: getBlockFromExample( blockType.name, blockType.example ),\n\t\t} ) );\n\n\treturn [ headingsExample, ...otherExamples ];\n}\n\nfunction StyleBook( {\n\tenableResizing = true,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tshowCloseButton = true,\n\tshowTabs = true,\n} ) {\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\tconst [ textColor ] = useGlobalStyle( 'color.text' );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst examples = useMemo( getExamples, [] );\n\tconst tabs = useMemo(\n\t\t() =>\n\t\t\tgetCategories()\n\t\t\t\t.filter( ( category ) =>\n\t\t\t\t\texamples.some(\n\t\t\t\t\t\t( example ) => example.category === category.slug\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t.map( ( category ) => ( {\n\t\t\t\t\tname: category.slug,\n\t\t\t\t\ttitle: category.title,\n\t\t\t\t\ticon: category.icon,\n\t\t\t\t} ) ),\n\t\t[ examples ]\n\t);\n\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( { ...originalSettings, __unstableIsPreviewMode: true } ),\n\t\t[ originalSettings ]\n\t);\n\n\treturn (\n\t\t<EditorCanvasContainer\n\t\t\tenableResizing={ enableResizing }\n\t\t\tcloseButtonLabel={\n\t\t\t\tshowCloseButton ? __( 'Close Style Book' ) : null\n\t\t\t}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'edit-site-style-book', {\n\t\t\t\t\t'is-wide': sizes.width > 600,\n\t\t\t\t\t'is-button': !! onClick,\n\t\t\t\t} ) }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textColor,\n\t\t\t\t\tbackground: backgroundColor,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ resizeObserver }\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<TabPanel\n\t\t\t\t\t\tclassName=\"edit-site-style-book__tab-panel\"\n\t\t\t\t\t\ttabs={ tabs }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( tab ) => (\n\t\t\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\t\t\tcategory={ tab.name }\n\t\t\t\t\t\t\t\texamples={ examples }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\tsizes={ sizes }\n\t\t\t\t\t\t\t\ttitle={ tab.title }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</TabPanel>\n\t\t\t\t) : (\n\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\texamples={ examples }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tsizes={ sizes }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorCanvasContainer>\n\t);\n}\n\nconst StyleBookBody = ( {\n\tcategory,\n\texamples,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tsettings,\n\tsizes,\n\ttitle,\n} ) => {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\t// The presence of an `onClick` prop indicates that the Style Book is being used as a button.\n\t// In this case, add additional props to the iframe to make it behave like a button.\n\tconst buttonModeProps = {\n\t\trole: 'button',\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { keyCode } = event;\n\t\t\tif ( onClick && ( keyCode === ENTER || keyCode === SPACE ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\tonClick: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ( onClick ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\tconst buttonModeStyles = onClick\n\t\t? 'body { cursor: pointer; } body * { pointer-events: none; }'\n\t\t: '';\n\n\treturn (\n\t\t<Iframe\n\t\t\tclassName={ classnames( 'edit-site-style-book__iframe', {\n\t\t\t\t'is-focused': isFocused && !! onClick,\n\t\t\t\t'is-button': !! onClick,\n\t\t\t} ) }\n\t\t\tname=\"style-book-canvas\"\n\t\t\ttabIndex={ 0 }\n\t\t\t{ ...( onClick ? buttonModeProps : {} ) }\n\t\t>\n\t\t\t<EditorStyles styles={ settings.styles } />\n\t\t\t<style>\n\t\t\t\t{\n\t\t\t\t\t// Forming a \"block formatting context\" to prevent margin collapsing.\n\t\t\t\t\t// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context\n\t\t\t\t\t`.is-root-container { display: flow-root; }\n\t\t\t\t\t\tbody { position: relative; padding: 32px !important; }` +\n\t\t\t\t\t\tSTYLE_BOOK_IFRAME_STYLES +\n\t\t\t\t\t\tbuttonModeStyles\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<Examples\n\t\t\t\tclassName={ classnames( 'edit-site-style-book__examples', {\n\t\t\t\t\t'is-wide': sizes.width > 600,\n\t\t\t\t} ) }\n\t\t\t\texamples={ examples }\n\t\t\t\tcategory={ category }\n\t\t\t\tlabel={\n\t\t\t\t\ttitle\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Category of blocks, e.g. Text.\n\t\t\t\t\t\t\t\t__( 'Examples of blocks in the %s category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Examples of blocks' )\n\t\t\t\t}\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t\tkey={ category }\n\t\t\t/>\n\t\t</Iframe>\n\t);\n};\n\nconst Examples = memo(\n\t( { className, examples, category, label, isSelected, onSelect } ) => {\n\t\tconst compositeStore = useCompositeStore( { orientation: 'vertical' } );\n\n\t\treturn (\n\t\t\t<Composite\n\t\t\t\tstore={ compositeStore }\n\t\t\t\tclassName={ className }\n\t\t\t\taria-label={ label }\n\t\t\t\trole=\"grid\"\n\t\t\t>\n\t\t\t\t{ examples\n\t\t\t\t\t.filter( ( example ) =>\n\t\t\t\t\t\tcategory ? example.category === category : true\n\t\t\t\t\t)\n\t\t\t\t\t.map( ( example ) => (\n\t\t\t\t\t\t<Example\n\t\t\t\t\t\t\tkey={ example.name }\n\t\t\t\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\t\t\t\ttitle={ example.title }\n\t\t\t\t\t\t\tblocks={ example.blocks }\n\t\t\t\t\t\t\tisSelected={ isSelected( example.name ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonSelect?.( example.name );\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</Composite>\n\t\t);\n\t}\n);\n\nconst Example = ( { id, title, blocks, isSelected, onClick } ) => {\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( { ...originalSettings, __unstableIsPreviewMode: true } ),\n\t\t[ originalSettings ]\n\t);\n\n\t// Cache the list of blocks to avoid additional processing when the component is re-rendered.\n\tconst renderedBlocks = useMemo(\n\t\t() => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),\n\t\t[ blocks ]\n\t);\n\n\treturn (\n\t\t<div role=\"row\">\n\t\t\t<div role=\"gridcell\">\n\t\t\t\t<CompositeItem\n\t\t\t\t\tclassName={ classnames( 'edit-site-style-book__example', {\n\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t} ) }\n\t\t\t\t\tid={ id }\n\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t// translators: %s: Title of a block, e.g. Heading.\n\t\t\t\t\t\t__( 'Open %s styles in Styles panel' ),\n\t\t\t\t\t\ttitle\n\t\t\t\t\t) }\n\t\t\t\t\trender={ <div /> }\n\t\t\t\t\trole=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t>\n\t\t\t\t\t<span className=\"edit-site-style-book__example-title\">\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</span>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"edit-site-style-book__example-preview\"\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t<Disabled className=\"edit-site-style-book__example-preview__content\">\n\t\t\t\t\t\t\t<ExperimentalBlockEditorProvider\n\t\t\t\t\t\t\t\tvalue={ renderedBlocks }\n\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BlockList renderAppender={ false } />\n\t\t\t\t\t\t\t</ExperimentalBlockEditorProvider>\n\t\t\t\t\t\t</Disabled>\n\t\t\t\t\t</div>\n\t\t\t\t</CompositeItem>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default StyleBook;\n"],"mappings":"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"}
|